diff --git a/.github/workflows/t37-joint-x54-owners.yml b/.github/workflows/t37-joint-x54-owners.yml new file mode 100644 index 0000000000..80207c6bfe --- /dev/null +++ b/.github/workflows/t37-joint-x54-owners.yml @@ -0,0 +1,57 @@ +name: Joint entrances and X54 with T37 whole-owner composition + +on: + workflow_dispatch: + pull_request: + paths: + - 'research/complex-t37-joint-x54-owners/**' + - '.github/workflows/t37-joint-x54-owners.yml' + push: + branches: [main, codex/joint-x54-t37-20261013] + paths: + - 'research/complex-t37-joint-x54-owners/**' + - '.github/workflows/t37-joint-x54-owners.yml' + +permissions: + contents: read + +jobs: + verify: + runs-on: ubuntu-24.04 + timeout-minutes: 90 + strategy: + fail-fast: false + matrix: + python: ['3.11', '3.14'] + steps: + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7, retained repository pin + with: + persist-credentials: false + - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7, retained repository pin + with: + python-version: ${{ matrix.python }} + - name: Install retained cold-replay dependencies + run: | + sudo apt-get update + sudo apt-get install -y --no-install-recommends g++ libboost-dev + python -m pip install -r research/e8-bit-p111-tuned/requirements.txt + - name: Fresh ancestry, supplier, owner construction and strict admission + env: + CXX: g++ + BOOST_INCLUDE: /usr/include + run: >- + python -B research/complex-t37-joint-x54-owners/verify.py + --work "$RUNNER_TEMP/joint-x54-t37-cold" + - name: Require committed sources unchanged + if: always() + run: git diff --exit-code + - uses: actions/upload-artifact@v4 + if: always() + with: + name: joint-x54-t37-python-${{ matrix.python }} + path: | + ${{ runner.temp }}/joint-x54-t37-cold/*.json + ${{ runner.temp }}/joint-x54-t37-cold/*.log + ${{ runner.temp }}/joint-x54-t37-cold/t37/strict/*.json + ${{ runner.temp }}/joint-x54-t37-cold/t37/strict/*.log + ${{ runner.temp }}/joint-x54-t37-cold/t37/strict/global/audit/*.json diff --git a/research/complex-t37-joint-x54-owners/.gitattributes b/research/complex-t37-joint-x54-owners/.gitattributes new file mode 100644 index 0000000000..941ea5f4f5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/.gitattributes @@ -0,0 +1,2 @@ +# Preserve original vendored bytes and source-manifest identities. +vendor/** -text -whitespace diff --git a/research/complex-t37-joint-x54-owners/CLAIM.json b/research/complex-t37-joint-x54-owners/CLAIM.json new file mode 100644 index 0000000000..9696f82ff0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/CLAIM.json @@ -0,0 +1 @@ +{"T":37,"bit_lower":"1733427039589844234749/1000000000000000000000000","calls":333,"charged_prefix_bits":1024,"comparison":{"four_rank_seven_end_t37":"0.001674583473132219","independently_replayed_pr1050":"0.001672241870811633","joint_entrances_pr1148":"0.001675560947524449","joint_entrances_t37_draft_pr1169":"0.001675568675201533","rank_seven_end_t37_pr1152":"0.001674340686401949","selected_pr1042":"0.001672188119205421","selected_pr1094":"0.001672660197076918","selected_pr942":"0.001661960547713947","seven_slot_t37_predecessor":"0.001674097969905390"},"complex_lower":"1678420962050942454559/1000000000000000000000000","complex_profile":{"1":788046,"2":165834,"3":137862,"4":41958,"48":11374,"5":27972,"8":2664},"deficit":11840,"idle":{"1":834,"48":11374},"kappa":"335121717095377/200000000000000000","kappa_decimal":"0.001675608585476885","live":33152,"local_profile":{"1":2364,"2":498,"3":414,"4":126,"5":84,"8":8},"physical":33642,"physical_row_coefficient":17495,"prefix_bits":775,"rank_mass":2408256,"roles":159840,"scope":"Finite conditional construction under the retained compiler, whole-call hosting, common-label/mutable-source realization, precision/tape, analytic-transfer and bitH1-H5 hypotheses. No unconditional theorem or kappa=1 claim.","width_inventory":{"4":44,"5":44,"7":38,"8":114,"9":240}} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/DEPENDENCY-PINS.json b/research/complex-t37-joint-x54-owners/DEPENDENCY-PINS.json new file mode 100644 index 0000000000..e058b95722 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/DEPENDENCY-PINS.json @@ -0,0 +1,1389 @@ +{ + "research/community-k492-audit/pr622/replay/baseline558/ASSEMBLY-CONTROLS.json": "aca6ddbcd8049e98c2ce36108488f756b08506ca558fa94e64b811774ea96d79", + "research/community-k492-audit/pr622/replay/baseline558/ASSEMBLY.json": "4782793661bf92c9f8281ca7b9ae92f79573a3623af49661fc445147d455dbdb", + "research/community-k492-audit/pr622/replay/baseline558/RECEIPT.json": "dee320a71985660f1ea7715f652fda110fe172a51a1194ac433734ccdce1e14c", + "research/community-k492-audit/pr622/replay/baseline558/RESULT.json": "a979ea3fce856e0826a61dc7fdfebea067f5a97bf118f9f186175c686a22c717", + "research/community-k492-audit/pr622/replay/baseline558/STAGES.json": "820727a3e743fc7aea400e8157b69e3f07af359bf38a763ee6fd77b73172d765", + "research/community-k492-audit/pr622/replay/baseline558/all-columns-native-frames.log": "1dcd4d21c10ec05f273f42334bfa158e1480bcaaa08a9a16873b371806e47fb1", + "research/community-k492-audit/pr622/replay/baseline558/all-phase-recipes.log": "c71de931024cd4f3421547ff3042126302cd62be7b9d0bfb92b66bd4e1eb2dac", + "research/community-k492-audit/pr622/replay/baseline558/assembly-admission-controls.log": "9cc0577eb648247a02f4352eaf5187000a8378657f388e8ffa8cbeb55a43b9ec", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/01-bind.log": "1ba8f0d5a08f617e637347d9c0c3761781b759af38df847306cca392913b01f4", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/02-emit.log": "e628c73c0caa87c49a67a9286a8c8339e5aebc1c2b78b98a8f9099f2a75fa817", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/03-physical.log": "177cfc604cd7085019b615945f33c04197eee181e8c30ec13831cf253c138e23", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/04-invoice.log": "680deb0f83fbc968b5436044dcea693782c6e8519fb49de59fa2ff8124c9a850", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/05-moments.log": "0abfdd96bd6a797c6aa5f6cd358a7e1276820e94de037d0c0a6054883d485953", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/PLAN.json": "8e64bb8a1a8f87998479316f4111801cb3eb1e64f898b7e577eebd72a460f844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/PR510-EXPECTED.json": "19b861f69f7602e47b390d472b487d044bff4230b250520807537c213ad0249f", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/RESULT.json": "847097e0a7e0bcf66245e40481aaa25bad3d8d17232e0ff3a7f3b8a38b269011", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/STAGES.json": "37b5f9f3f47147851af0a0cd8cdd8d14d22a80fa7bdecffe6ea2fc499afdea6b", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/ASYNC-AUDIT.json": "177cfc604cd7085019b615945f33c04197eee181e8c30ec13831cf253c138e23", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/EXACT-ASSEMBLY.json": "a72a55cc90ca9f85a056f6fd62de6b788269ae459f73fb60fb7f486b7945e4d4", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/GLOBAL-PREFIX.json": "bff8fb45c83550daf817dce92815b22adb21384591699813353b8e2a4e1aa60e", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/IDLE-REMAINDER-FRAMES.json": "a142992c82237ef08852af7105f7d466bcccfa9e5da890e8d82559e433a4dda7", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/OWNERS-AND-PROFILE.json": "050da7f024d6db1736315ed1b62772559febf2c71acc7bf17eb9339ffa055d3f", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/audit/PREFIX-AND-INVOICE.json": "680deb0f83fbc968b5436044dcea693782c6e8519fb49de59fa2ff8124c9a850", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/hosted/HOSTED.json": "e628c73c0caa87c49a67a9286a8c8339e5aebc1c2b78b98a8f9099f2a75fa817", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-local/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/emit-both-reflected-ledgers.log": "f382385a67f705b446978a73fc6492ce127cb2ae76011e87e36fdbe9977f4347", + "research/community-k492-audit/pr622/replay/baseline558/independent-local-and-controls.log": "b694b4b22abb9d1de9a70bbbdf9e9b0e030ec00a7eddc264e4c18376dd859cee", + "research/community-k492-audit/pr622/replay/baseline558/literal-owners-full-invoice.log": "61522ff431dfca96293b7f6e13924f11f9004b0eefa1456308a600d053608964", + "research/community-k492-audit/pr622/replay/baseline558/normalized-wrappers.log": "284cce3149354d057b4e2f04163535c0d8b0a924898e5b771ba8af2740314154", + "research/community-k492-audit/pr622/replay/baseline558/reconstruct552-and-promote8.log": "b7b035547780f64e33ea2432fd2cc79ed5795bf88c9791cbb913d9ec2a7c6a2b", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/lifted/PORT.json": "873fe7e8a338738b545f3f34388a4f29f1939b48275f406022212f9ef5ef2b86", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/promoted/CONSTRUCTION.json": "208ea9f6669778a2326357171ca8b2088cb3c1f165c408fd5ee374469f5ddca5", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/promoted/PROMOTED8-SCALAR-AUDIT.json": "4275fc9a309f0ba27562858e434f3fc3bdf501a3625f8ff1a8d8ccf29d72d10f", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/promoted/PROMOTION.json": "9ad34faa8611a6ea7f161d2e1fe331ab1ba5ccec8fca3978e31c3e7bf789bc31", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/promoted/STATIC44-SCALAR-AUDIT.json": "05458940a7e12e90507403c5fb819dcf84ef328a524ecd6ceaf928e0ebd620b2", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/static44/REPLAY.json": "be018b79f66ef3814c2159ba174531ff4ea17762ab104715fe7177246d345322", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/static44/SCALAR-AUDIT.json": "9436f9b92196015e357e4974011cf1d0f960abb7f26b95eedac339a02c919624", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/static44/SELECTION.json": "16ecc4a5c08af6750ee8610b722f74eba82a9eeb9703f0f0e0ace08ce5c82ad3", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/syndrome/SYNDROME-CERTIFICATE.json": "56961ff2c99816751e051f8fe12ce01fc2be017a074917ed58b7004b13d08cf8", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/wave/WAVE-REVIEW.json": "ef97172e5020ce4158f7c8144a0b0b3d16b94d7c0415e2d33a81f02353d3d506", + "research/community-k492-audit/pr622/replay/baseline558/reconstruction/weighted/WEIGHTED-COSET-REPLAY.json": "1661a17a2a7f717fb27bb943f500756edaeff392787d20838264e4aa6d035454", + "research/community-k492-audit/pr622/replay/baseline558/two-engine-exact-assembly.log": "b50e71a1c084e221ca32b43001f5383c8cffb09d72e66b1436f22aa240795a9c", + "research/complex-k492-owner-repair/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/MANIFEST.json": "c9d1bcb0c65de86a7554711212d4bb5e7490b3bc69d918f957b99a68a832144b", + "research/complex-k492-owner-repair/NOTICE.md": "e7e934433919b73f6088a68a444eed4cea029638ae7b0df3fde15099d5369fd1", + "research/complex-k492-owner-repair/PROOF-COMMUTING-PREFIX.md": "59899b2a1a76d88275e57f983c0aea391dc2c7f1d2d66c33b92429be0a1cf5e1", + "research/complex-k492-owner-repair/PROOF-NOTE-R.md": "22312bb347bdf159e6a01a45c47675e6170d33b258e2fd9ed52aee88fb92c0ed", + "research/complex-k492-owner-repair/PROOF-NOTE.md": "337d70fe7abd9afca1d90954c23bde87f4dc27888cc1a6b4bb80506fd6fbf8c5", + "research/complex-k492-owner-repair/README.md": "ee5a1ace4828f7a073be97e95c2d931988774dd3a29a877e65abdf429aeec902", + "research/complex-k492-owner-repair/code/assemble.py": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "research/complex-k492-owner-repair/code/assembly_controls.py": "8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8", + "research/complex-k492-owner-repair/code/audit_allcold.py": "cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a", + "research/complex-k492-owner-repair/code/bind_providers_portable.py": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "research/complex-k492-owner-repair/code/build_cold_end.py": "27d5f540cb7f7e57b12f041196743761a5ecefaa2e04fd808abfffed25027f6e", + "research/complex-k492-owner-repair/code/build_frame_regroup.py": "e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9", + "research/complex-k492-owner-repair/code/build_gate_moves.py": "08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252", + "research/complex-k492-owner-repair/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-k492-owner-repair/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-k492-owner-repair/code/cold_end_controls.py": "f8b770eb3bfe387c9b878a954b0dcb0efd81bc4adb0c97b450b3ab7a66c78585", + "research/complex-k492-owner-repair/code/construct_k_triangle.py": "66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da", + "research/complex-k492-owner-repair/code/emit_allcold.py": "fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746", + "research/complex-k492-owner-repair/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-k492-owner-repair/code/generated_identity_controls.py": "a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de", + "research/complex-k492-owner-repair/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-k492-owner-repair/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-k492-owner-repair/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-k492-owner-repair/code/hpe_controls_atc.py": "63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b", + "research/complex-k492-owner-repair/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-k492-owner-repair/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/complex-k492-owner-repair/code/phase_timing_controls.py": "1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339", + "research/complex-k492-owner-repair/code/witness.py": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "research/complex-k492-owner-repair/comparison/PR622-NATIVE-HASHES.json": "28479a183387bcb608bd9ee0572f617c17f316b79ce4a6fa1277ed8689fb3431", + "research/complex-k492-owner-repair/comparison/PR622-PLAN.json": "442d71a0a41e42503c645892f9fddd5b4d8fa722659974cedc27ae41b60319ac", + "research/complex-k492-owner-repair/comparison/PR622-README.md": "ea231e3836e8a0bc19815b66e2552a6daa452781e871ea4dd7280d3ad15bc9c3", + "research/complex-k492-owner-repair/comparison/PR622-SPEC.json": "a0efd32e51a98809e4312d529ad65e8ecd2f446a82c5eab5166b102b03244989", + "research/complex-k492-owner-repair/comparison/PR623-PLAN.json": "c919c366ef1d3528f1884e47dfce858ab3164b099740e4c17cde6f697b3ec458", + "research/complex-k492-owner-repair/comparison/PR623-README.md": "ccd9783f0557bb9c80f65a31c74914df11531106de8a840e1e1f2da62176cd2c", + "research/complex-k492-owner-repair/comparison/PR623-SPEC.json": "436d3df54e6ce2433d56435afd569708e5fb22bc638571f5134ab12a9f9099f5", + "research/complex-k492-owner-repair/data/EXPECTED.json": "7647bdbebfd33551fdf1a56eae16c9227fa79f7595ccd351d2d8492c2a65a680", + "research/complex-k492-owner-repair/data/OWNERS.json.gz": "251e82cec1f40e6c1289703667f403104b957f1254dc4f6baa6df9a3d0c751de", + "research/complex-k492-owner-repair/data/PLAN.json": "8c48ef6ce079916314126c5c3ff0003b32f24cf0fbfb2a033fc93e1e1949b5d5", + "research/complex-k492-owner-repair/data/SPEC.json": "2a2577ac526535826fed9d5f7f83f6e2e0ec058a146c64f7286720b995fa2323", + "research/complex-k492-owner-repair/data/TRI-SCHEDULE.json": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e", + "research/complex-k492-owner-repair/data/WITNESS.json": "63fb94a452ac8a3485daa3cb52ab4890944afc07e94d1c89db0763f8cc311496", + "research/complex-k492-owner-repair/data/cand.json": "f210d4e4a208de6f110ea756c9c735354e1a8e80ecae4395792df98dd6ef685f", + "research/complex-k492-owner-repair/data/recipes/atm3-step0-promote.json": "9a7cafdf9b600ba43985c83969b75151f665b98f454afc1494b9f9ef3dd3916f", + "research/complex-k492-owner-repair/data/recipes/atm3-step1-greedy_kernels.json": "c4bc67f329fc22e226f26bbbf7e67018a639823d99fccfc5a1e798a7a82db43f", + "research/complex-k492-owner-repair/data/recipes/atm3-step2-frame_coalesce.json": "e6d7ea259a542f2b43a857998f677db4d68f8f36335e98a030bc91ab38ce758c", + "research/complex-k492-owner-repair/data/recipes/atm3-step3-gate_move_coalesce.json": "3a6b8fec6c8b56a45bf8fae683083636fa295a8914ffa68d11b1f78ba3a2eb9d", + "research/complex-k492-owner-repair/data/recipes/ck-step0-greedy_kernels.json": "c839199d0e6f8e976978fe97bc0c5579a65ba69dfb6864585b448cccc1113056", + "research/complex-k492-owner-repair/data/recipes/ck-step1-frame_coalesce.json": "0c8e5991e1338f03b837814dd060d4dd598c324e3538ee510913e0444a384ee3", + "research/complex-k492-owner-repair/data/recipes/ck-step2-gate_move_coalesce.json": "1f5b62c76915b1b8bbcf63b42dcbd87a536c34d3721c4a9b68e651404717bf00", + "research/complex-k492-owner-repair/data/recipes/k492-atm3-cold_end.json.gz": "a25ccab0c024aa9512df822032fca11683def03d0886b58f375c42834264c47c", + "research/complex-k492-owner-repair/data/recipes/k492-atm3-frame_regroup.json": "8d880d3d8e795575a3a3428e0031b2c45831eea512dc32cb99f7eae9e6e49e5e", + "research/complex-k492-owner-repair/data/recipes/k492-atm3-hyperplane_end.json": "30504ae76a2387677f05450d23413c7373c08ae2d9d171b2f4597bb63e294631", + "research/complex-k492-owner-repair/data/recipes/k492-ck-cold_end.json.gz": "d438123ecca120799a0b9835d0e7231ec12f61f10caff3ef466ad9f7c96e51a2", + "research/complex-k492-owner-repair/data/recipes/k492-ck-frame_regroup.json": "9894f9c93e931b61cf34b337c4b257a72bb1d06fbdc4e8b02368e6e29ab2b644", + "research/complex-k492-owner-repair/data/recipes/k492-ck-hyperplane_end.json": "c71c2b05550544c29ebb4696e63cffc44d6daa76f1bc25e9c7c97e994b2c7657", + "research/complex-k492-owner-repair/data/recipes/k492-jp8-cold_end.json.gz": "660d2438c5fd4dd4cc49eefff071ac53f50adb65f292005f182082d27555a6a9", + "research/complex-k492-owner-repair/data/recipes/k492-jp8-frame_regroup.json": "9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a", + "research/complex-k492-owner-repair/data/recipes/k492-jp8-hyperplane_end.json": "e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1", + "research/complex-k492-owner-repair/data/search/DISPATCH.json": "b5f8f5779ebd972665ff7a4e1a454b940610305a867dd28ff61df8124e234dc9", + "research/complex-k492-owner-repair/data/search/LP-PATTERNS-AGG.json": "7e8f162a5d949cb1461c8c3b3bfa0a160b42c27a03bfeb6f09b9aa3c116aa953", + "research/complex-k492-owner-repair/data/search/LP-PATTERNS-EX.json": "1d345febd910eeedaa2dbde4d5856d4a3fe8825a16748374ba76655ff6cb6fdb", + "research/complex-k492-owner-repair/data/search/TEMPLATE-PLAN.json": "1879679a44b373006907cbca8261a9cd187c7b868472afab04e002bf95331d9e", + "research/complex-k492-owner-repair/extras/check_declarations.py": "34122816e616e4de6a0524f7feef9a3ece4be1f9d07e477f319404e08374216d", + "research/complex-k492-owner-repair/extras/check_owner_map.py": "d240458ad39a08c242d136c0f1edbda0cb0b93977897f6543c9f430576c9c7dd", + "research/complex-k492-owner-repair/extras/exact_intervals.py": "aa3c2327c5d3742248b720a87b2de0bbe2e34ed2af89a578e3c8d5bd2656a9cf", + "research/complex-k492-owner-repair/vendor/direct_delivery/MANIFEST.json": "c1997405c5c0ccd9bdb0a30b0eb9a5a2dc7dc7ce7b59c6a83a2152b80f6410d1", + "research/complex-k492-owner-repair/vendor/direct_delivery/code/construct_504.py": "a0d96ede40b957c38dcb64296d5f4a76c23dfb8c8875e01a80b5f1bdf6e8360e", + "research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PACKET-PROGRAMS.json.gz": "d833ae0390d165d7da0c639a3c7aeb77156c2ddb52447087cb49b9d03b19e9b9", + "research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PROTOTYPE.json": "327d2a868043e846381aa58a33053c24425e8cad522ff401b10ec8af1d649a3f", + "research/complex-k492-owner-repair/vendor/frame_coalescing/MANIFEST.json": "f336fd702c54422d79c1b9ba7d8699ae6c99518f66a5b5bbc5f3be331fa1fadd", + "research/complex-k492-owner-repair/vendor/frame_coalescing/NOTICE.md": "2285f8489d1588ea4deaf07a1ceb36fdc56dde5cecf228b82438284aea072050", + "research/complex-k492-owner-repair/vendor/frame_coalescing/README.md": "32b64f7638e6cb9bcd1d0e41779808ac1d5d6897152a00194e82e8c3754fd7b0", + "research/complex-k492-owner-repair/vendor/frame_coalescing/code/build_frames.py": "59f486c52293c76f1f6140c5f12f7a555a956b455e853c79136fc227deefbc3d", + "research/complex-k492-owner-repair/vendor/joint_prefix/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/joint_prefix/MANIFEST.json": "fd30701bd9bd652985db18fa95bee08a34615ef417a2feb2f55efd60a0b5d665", + "research/complex-k492-owner-repair/vendor/joint_prefix/NOTICE.md": "ba2267f17bb2cad9dc706565c359fec98d6ec0feb3b32dcfb8c3277c59cbf8fe", + "research/complex-k492-owner-repair/vendor/joint_prefix/README.md": "1b2679bed02b9563e6f3a9951eef2cc5057444a78bf4aa7ab89d1ad83330e3e4", + "research/complex-k492-owner-repair/vendor/joint_prefix/SOURCE-PINS.json": "240e8ee75336e921663a0057f450b346bac305d2af4ffacef68dec1798d9bb85", + "research/complex-k492-owner-repair/vendor/joint_prefix/code/audit_joint_prefix.py": "c01836709f3650a39c46418ac1771980b4b96288e60b51032b5d31419e484c37", + "research/complex-k492-owner-repair/vendor/joint_prefix/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-k492-owner-repair/vendor/joint_prefix/code/build_joint_prefix.py": "d7804669e528b6fd8d80195a4a2e76efac9bc67440b82c73973f4bc9fe273783", + "research/complex-k492-owner-repair/vendor/joint_prefix/data/EIGHTCOLD-JOINT-KERNELS.json": "0381935d8d162eb48044bdf7e36a42af761f6d4032509b9b397ca02d3134f585", + "research/complex-k492-owner-repair/vendor/joint_prefix/data/JOINT-PREFIX.json": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2", + "research/complex-k492-owner-repair/vendor/larger_gain/MANIFEST.json": "54d67f45ad520f4a134e069336bd0ff639aaeada28d13539298e4f2655c9692d", + "research/complex-k492-owner-repair/vendor/larger_gain/README.md": "545f0138139ec1c5410128678818dfb13fbf374d4063de4f425f11e6a1b74eca", + "research/complex-k492-owner-repair/vendor/larger_gain/providers/build_entrance_promotions.py": "50737e20553b5d44381c58e5b35b5031a6797dfdda1c67a1656069f1f6203cd2", + "research/complex-k492-owner-repair/vendor/larger_gain/providers/coupled_frames_base.py": "b6033cd2959297a624b557f3d04665c8fbb680a4c0987daf0704ef93711700bd", + "research/complex-k492-owner-repair/vendor/larger_gain/providers/search_suffix_kernels.py": "0523c90f036ff01cac9299fe4e47dc40dd04f264f09415985d2c98b4da43371c", + "research/complex-k492-owner-repair/vendor/multicold/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/MANIFEST.json": "328ce8023d33deb308b0f1ae2320424050f836d791cf60a613ae8408e7d6f3ab", + "research/complex-k492-owner-repair/vendor/multicold/NOTICE.md": "d14c070a8e237cb1912e413ce22e98eb41f164b769ebaa97224c121fcc5a0fc5", + "research/complex-k492-owner-repair/vendor/multicold/README.md": "638428654d34f0b72ed4b5fda948c91d01e57f8015813c6d8ab01c06c1da5322", + "research/complex-k492-owner-repair/vendor/multicold/SOURCE-PINS.json": "503764cd70c99a9652ec51a533c31ad7f2a615e6c230156d785daff2835cf028", + "research/complex-k492-owner-repair/vendor/multicold/code/assemble.py": "3fedbccb09d469f8ee366b4302e51448de6d25793a78a12c5f9a8d9667a755eb", + "research/complex-k492-owner-repair/vendor/multicold/code/assembly_controls.py": "a0f2349ba8fe8404b8b76c869f12dd7e250a775b2e05b3c9c00e6889ad4c8a45", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_allcold.py": "7950e5c01488a9146bdbaf19ab4fd0c33cd25a4d63fb56ef995ef2e45ac7ec1a", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_kernel_controls.py": "5100459211f43ba048bf82c3942bbedb8b224272b24722a14f0dcd808a38aafa", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-k492-owner-repair/vendor/multicold/code/bind_providers_portable.py": "01e62fee1f1dcf1b7b34338d555dacd5cd1d7d10d6b9a605d0913d959f8c7ecf", + "research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-k492-owner-repair/vendor/multicold/code/build_four_portable.py": "417b1dc4dca485dfbbaa820e552cae9bf3932bbace6ea16ce93aa0590c3c184e", + "research/complex-k492-owner-repair/vendor/multicold/code/build_multicut_kernels.py": "6ab3d73f81d5b2fb884a93a336ef1940e118d419d425b3356bab3b97f774c9aa", + "research/complex-k492-owner-repair/vendor/multicold/code/emit_allcold.py": "9d6c75af63fa8f53973734ccb1eef983511f4337ce644436a693fd8fb9ef8fe2", + "research/complex-k492-owner-repair/vendor/multicold/code/invoice_allcold.py": "ff8fee775ad97926454f3ad1183f8e05de654e276150e579ce612f3eb2f98d44", + "research/complex-k492-owner-repair/vendor/multicold/code/phase_timing_controls.py": "dcc4adfd139d6f65a88bdc6d183ea3777d4e4f688d2169dd41b54964f05591bb", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-COLD.json": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160", + "research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-MULTICOLD.json": "d18ea59995d384833c95a7a55d8167f83439b6881a524ab03df972ede3e0d7b9", + "research/complex-k492-owner-repair/vendor/multicold/data/FOUR-COLD.json": "643e07c25dac93ce1fe67532e377f9f1cf8c7bb83835abb3fad63c9c51514736", + "research/complex-k492-owner-repair/vendor/multicold/data/FOUR-MULTICOLD.json": "c1b42d7bacf9f31ab35294f7b8430a1164d6bc169a3d68fe2b3ea39cf791b323", + "research/complex-k492-owner-repair/vendor/multicold/data/FROZEN-FOUR-PROMOTION.json": "90417f8d54ea9272bb5041ed9144a58dcbc194a22dd0845e7de89d4b717f1b74", + "research/complex-k492-owner-repair/vendor/multicold/data/OWNERS.json.gz": "93349ec85f21811b5b247980f9fc4d8161100d5ee37bce7fda5ef65d0370240b", + "research/complex-k492-owner-repair/vendor/multicold/data/PLAN.json": "35a95fd9b5e46fdaf8a3929d516fa8c14dd4e3bd9a20eb546e0541a8ef85ff51", + "research/complex-k492-owner-repair/vendor/multicold/data/ZERO-COLD.json": "ea1cda1578464399077bb96e5c3c3d01e88ba5eeaa6c22d3b66ef4380bc3b820", + "research/complex-k492-owner-repair/vendor/multicold/data/ZERO-MULTICOLD.json": "cc09fab61aab468200d72f833ffb9e6572580d54da57bab02c5d63e3b280af1a", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/proof/CONSTRUCTION.md": "27ece5e1c11b90d97a808b56eff897b998c10e61016db95867f84e6e6aef132f", + "research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-EXACT-FRONTIER.json": "55050dbdc1ffa18b3cc1f9b8b94f7de7a04a39f65efbbb890de2e73db837ee38", + "research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-OWNER-RECEIPT.json": "cf9992773c9ae4523dbc7f71753d7ecfa515618d7c2ab414b60d53887f518a30", + "research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-PROVIDERS.json": "59196e2c93f4fb8fdbe74bd16d60242a3534eb5bb8c810fc29635ab0e65bd08f", + "research/complex-k492-owner-repair/vendor/multicold/proof/PR561-NOTICE.md": "180802791d3547d511a7af8bc4f800640abd72636d50631d2e61b35cfa17627d", + "research/complex-k492-owner-repair/vendor/multicold/proof/PR562-NATIVE-TRANSFER.txt": "f4ceeb2a412c9ec3f3bc06a78cf865e5fdb7c1080421ec5285ba02d04418eb37", + "research/complex-k492-owner-repair/vendor/multicold/proof/PR562-NOTICE.md": "a427502077fceaaffc7d44bb8520562160d0d76e4cb08c2b10337e62d8987fae", + "research/complex-k492-owner-repair/vendor/multicold/proof/PROOF-ALLCOLD-NATIVE.txt": "ca7a8b3f3fa6d3610ef9518c71d5186427ccf2b2bdf3511be84a6b2d7bbb1e25", + "research/complex-k492-owner-repair/vendor/multicold/proof/PROOF-REVIEW.txt": "0a807ea2c5fec29cbf994f94bd5a388914fb31de02dba03d18265040044c0dc6", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/MANIFEST.json": "f28c04eecbea7599fa9e0867dd8d0311a463af12cab79f90a43733b162527164", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/NOTICE.md": "fa76079e2566b8d644c4aa36cb1034aa2363d2e97978b26203f122d826918fce", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/README.md": "02181c5ff31cd1c2899608e5ab598b405df92ad5814df35f329d117956f7ee10", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/SOURCE-PINS.json": "b09437400a7f6f0dc86eee0f800aae91cd35a7e5e80eb3d348f87113a0bd0d76", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/assemble.py": "5d4946dcad7636bf2119bb7bc3a52ceb41454c1514d12cb77def2c2e02b17338", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/assembly_controls.py": "f3d703a63404bd655e66a520b3840a4ab72529751664eb634a52736b4bc95a29", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/audit_promoted_scalar.py": "1994e7116065636b53bf740000ff78dce8ea62390e597d293d183f33c67eaa6d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/promote.py": "b69a27d53ec3f64ccbdbbd79f9632419f273b3eb4429f6cdec1315fd8798750c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/reconstruct.py": "e56d57d39cf787b8325de5a97dbc283f89d51c24169efae9ad2227277a6f8243", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/OWNERS.json.gz": "c72892f5b3b36e75ec4db7742b046bd9194f638ff32be9cc8843914af950e6dc", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/PLAN.json": "8e64bb8a1a8f87998479316f4111801cb3eb1e64f898b7e577eebd72a460f844", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/PROMOTION.json": "9ad34faa8611a6ea7f161d2e1fe331ab1ba5ccec8fca3978e31c3e7bf789bc31", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/ASSEMBLY-PROVENANCE.json": "cf1710faaf5d4aa32e6a8a24b0087cdc24e5b680d974e5dd4e0cb4ef4787e395", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/CONSTRUCTION.md": "9b0617dee9c044488b2f72b50059dd8d768f6ee0a29c35fe2cfdde85d25cdbd1", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/EXPLORATORY-SCALAR-8-CONTROLS.json": "c0465364067e6392fa0d7e4cd0481a82afebe3e271b486a4984e7b2826025146", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/RANK5-CAPS.json": "461ebc6c8816a0132c89a54c2ae56b07f31500bcb2c2bebfce783eb41bc29441", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/EXPECTED.json": "00c462828be76f6d65c1311ad9ef102f18f088029e039cffa599eaeb41668fb6", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/MANIFEST.json": "b0f5773b3ffa2c5305dade20ce6159cb8b5961285d2f7bc767c6353838bac4d3", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/README.md": "79cc63fc45ea52c04f32555676704a1664a3eafdd917b25689b1acd390a4636d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/alien-avalanche80.cpp": "0215152bd3ddf0282c8088843c4e8a89e821e747f884e03100fe79238b3061db", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/alien-flags.cpp": "0bd6ac192357ca71f6b84baf50efdc43fccc8394296c35a298b35306db7d88a3", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/assemble.py": "bf878beb64edc6bae4c321d7c964088c4d9aa0ae477597ac1adbe2b1078e3904", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/build_wave.py": "249669d046db49011b84345a14ec05a93270829e5e21f6046576972038da377e", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/README.md": "bd82df5b39c6ff26b93f41ad76471ac50131050a3cc0f84dbc6c57703a721353", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/RESOURCE-TRANSFERS.md": "6fd2bc82714060290f29b218c235c171395cf9be99bea01f8a7fa770dadd68c7", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SAT-OWNERS.json.gz": "b5a5339dd37d90a0adf40d90d6aed52aec2f94073a3b27763575eb069f85a903", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SAT534-PLAN.json": "221a38f18504e00da31a72a7b3a3f0d248e8f886d2b8fa7cae2d73e7ec86905e", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SCREEN-RECEIPT.json": "ed60f7e6b0b86f4401ada159c0d37ee283836a0b5d1967f7b0a236685f64daa3", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SOURCE-TRANSFERS.json": "e49fbbaa4533b6f15b56098c9d16ea3e1bc0cc98b19a2e990c51baad047e7839", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SOURCES.json": "85448ef4fb1d124ef8bd2f0b14451ef522465b14510bba4e53fdd24da0968643", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/TWO-RESOURCE-TECHNIQUES.md": "8cc6b582680ae8565444abc01f1dba729c94a827f1f8e89192190229e52183f4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/WAVE-MAJORISATION.json": "c445afc50e594c46932d8d799b446edc22717e664d828d4afd7810c643576475", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/replay.py": "2e1f11b5702b831622cea8b386bb82043ef9e58b2a0aab56b09c00f30ac73046", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/run_complex44.py": "5533e9e29c66b11f8feb22a2d3d37551787200ea69eb3d04a984c0b1d22c49bc", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/NOTICE.md": "b47da4b840ca9c8d1e2816359a603304ebd7ca442c82b94c049b00f142643f73", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/SOURCES.json": "c265f58b1ab29f9b662e9c5f943147ccc0527fb1f4803b06b48f71d96fa9bc60", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/adapters_local.py": "4e89a5c517cd87ff6a5aa9b7334c0d74821179ae5777d31284da25b9d8abf113", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_and_transport.py": "a4fc272266785e1fffd44775c6fa6df783c4352de4c3f1d925cf953a23b84e7f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_local.py": "69b12c45d0a961175a824c1967353c7f3b94818a7dd6ac7bbcf56a6d1a5ed8e8", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_supplier_hosted.py": "301e9b5c593b6d583065337eb7b3ef207cf039e265f099f89080a4bf25856b43", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/emit_local.py": "eefc76e0bee003015fe21ac685c2cce658033d5444add404d2d509c7d6f39bac", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/emit_supplier_hosted.py": "53c0b653b3a5100756d6a9473c90101b8c3ab72723d7047983906ab997bdf920", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/invoice_final.py": "96b6bed96ca8b60dfc064cd1c7962c45a5cb53c4e52cd90aaea6ccf8d109db97", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/phases_delta.py": "15723107eff03013b2e797fd9fa3635b1b46c5d1c8112d19fada98c178d4acb6", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/local/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/PR523-ANCESTRY.json": "76025ad06d8ac96fc6693092d674729fea2f04b9c1c89ec50dba7488b8e6657a", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/vendor/clifford/clifford_exact.py": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/NOTICE.md": "1547136e6d269fdcef2b68c10a97a786a79a4732a12738363f679bfb282430cd", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/code/assemble_combined.py": "41216e8da3b647fe6eead9079858f25b2592cab090154aca43f3cc73ff36dc9b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/PR510-EXPECTED.json": "19b861f69f7602e47b390d472b487d044bff4230b250520807537c213ad0249f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/README.md": "f69ac71a8df62a5d0bf7ed45ad16642e1102faa9e7b95c03f08cdf264a608948", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/SOURCE-MANIFEST.json": "b91c0d923affac87ce0bad7083d4640758930f82628f042bed7aaccf528973cc", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/apply_syndrome.py": "496a91b9da15ef56e6df28a0459ca8318a4575441c7921e113bf636f31e3c5d8", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/port_frames.py": "8d25abc9c45c58a5b893e67f9abec3a660e8d7f743e86959f2d2fd62037e23d1", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/OPENAI-SOURCES.json": "1a9c08d0c0190f0280c02e74c8a144f802efe2d7d8eb3a0b50b181d6dca686cd", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/SEARCH-RECORD.md": "7b09479215c407e4258ef6af64c34dc865e3b9a60c845040258413a2a960f5b8", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/TWO-SOURCE-PROOF.md": "4d6423f773ec47d2eea984e02f11f2d636e02ad3e6f3eb3e640a3768fa04fe75", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/PR534-WORD.json.gz": "a275792cb9f5729fac295cb04c556afbaa4513945c517190219fd0e44ab90095", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz": "e070ae2c78b4a1b644b418774af62b40d8d16e6ba89602f0474afb557d507c37", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CLIFFORD-RECIPES.json": "577a1be13f5140d9c3997637784b2f812f46b24c61877699430b02de4f662102", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CLIFFORD-REVIEW.json": "cd48fe6882a39c57021c4614747cc5c2c88ec07e806cebb914cf533997b73d9b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/run_local.py": "8326e67400e5ff87580e93e4518efe397f1b29fffbb6d757a37e5f97c14c3695", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/META-SOURCES.json": "c8aeb9313f2c671a9a8766c249ceb6cffa106dfdab3ab761da8e8c534b115090", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/NOTICE-upstream.md": "1547136e6d269fdcef2b68c10a97a786a79a4732a12738363f679bfb282430cd", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/PROOF.md": "abfa6548b223893866094631aed61174575dc1b17bdd60627b2c55e6b9477e4f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/README.md": "51d6ef7ad3e12e72daf29e0260a11cd985a0148fe1efa0574a533dae726c553c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/RECIPE.json": "8735ac9beadff3edcb4a4df8dae174415e0f83d9b4df8556c33ba7fd777505fa", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/SOURCE-MANIFEST.json": "4f5d92b4cd76eff0845a9f14d33131441535a232b5c91f00535aa076d44c45a8", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/audit_scalar.py": "a1cd720d281c7a9db7f17919c637cdcb8558e9f3c96e929706f0c21f317a7943", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/build.py": "b15192ff50fd99f5ca3cb5857b5e129c98a212de60ae76aafb1614139743c35a", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_common.py": "e68d190fd436b2f3955decb590adb53344d5d4ea0a19d62d86df1e4b55ecd198", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_word.py": "f027a9273bcf4e0971258c160b7d3b3c196366b32a529cff6e6a0e666b03826b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/BASE535.json.gz": "edfffb8e8735e0d1f07c81d818022b705ef0889c2bccc193a2f7a661b9f7d390", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/OLD-RECIPE.json": "7e5c179246261edd9e1019e81e6e979537f02559da773b993a318f771cb7d763", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/RAW504.json.gz": "1c6144791dbedf6427e3ee7b4c24fb05b5bf407f6346592f50f8dd8d9638108d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/replay.py": "fd1ce7d1f8974b473aef8c6cec1e0c590e01d0d215b073e5573a771ce42fc74d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/DAG-STRUCTURES.json": "5461d7832386b2f7f3234b6786e148a7c49461d8527be5e76c8fe977783d9053", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-AVALANCHE-INDEPENDENT-REVIEW.json": "f084eaa33ea10fb0fe4d575f2abd503ad5dbdb2c03d2c8b6dd62fc5f387ae31c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-CODIM2.json": "2422fa6db50ca4b2e8226113aa30d608e7c6525990eb1faf370f9fee7718e698", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-ELIMINATION-AND-PATH-TRANSFER.md": "481001470bd22345a0baf652261351e015a2634b2572b0d4f78fa9e147edd0f9", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-SCREEN-REVIEW.json": "555024b7a90f8dbbb3f13623d504d36b3bc92dcf118f6f9ecaeff285ee13f2e5", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-SOURCES.json": "69a578efa22c12688ef442498f8b1d901c7056f5f1948ac921e1dca0d2be305b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/FRAME-SOURCES.json": "e01063a60b24b3b21f9c1d472d890bb387e61d66ab8847cbdab4b92f06e0f91d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/FRAME-TRANSFERS.md": "1756461714ea55bd748d7245af14adf0a6a4e13a9bb7f498a381ec4282a30387", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/PR-LINEAGE.md": "2ec1c9b1f25e2f3d2556bee7369069ec2340cf126b54fa112e0bff9e269ef0e0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/PUBLIC-PINS.json": "273e48abf63a49123f11fb4e56f000c648aaa6d17987378b413469a5976e5ebd", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/COMPLEX-INVOICE.json": "a21fd7e02d3001b1e8065e9eb6084d80e1f64c44035733ed1115a38675a01fd0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/EXACT-ASSEMBLY.json": "4e7e5831683a1af861580a96db1fd717dc2a6fd01a29b220223868fb57d46e83", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/FINAL-RESOURCE.json": "b1463e5f7fe3663080e6021fea5424375538fabef942c7560cfed610f4242ef7", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/WAVE-REVIEW.json": "ef97172e5020ce4158f7c8144a0b0b3d16b94d7c0415e2d33a81f02353d3d506", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/inputs/WAVES.json": "262d0fccc6e8ffb1198436034a26c467ad28b3251823ac25c966f773afc3c3cf", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-PATH-APPLICATION.md": "56eba06ba109c39ab9ce9eb9769c724f532c06d8ffbb2b53706b8294cb4f9711", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-PATH-REVIEW.json": "39e813d3c0f48a1a6317edac9ffb9ba5b534a62948708595e43fc2e790eda168", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-SOURCE-BINDING.json": "b7531fb284ee11e16b875d5f82237e025cfcd95593f3e3eca23cb5d3249eedf2", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/audit_coset_paths.cpp": "47999863b7c5037754bf73cc94757095f45f6da510d7ce96fb7699e9188d89f2", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/coset-path-input.txt": "779b497d52b6896a04f41d6c55424e65030a939945ca80858c369a3a3320a341", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/export_coset_paths.py": "f36c06ecff72e4a2fd83ed44467d528c976d52da3d5bd6e8043084b1568a7fd9", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/CROSS-FIELD-PROOFS.md": "3d0a1b9ac989283400e7c1e3a025080a8f6837755baccdd55f5e51599ac0921e", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/README.md": "cfd349a83f5ab3d5bb4268ef93b46b1e4542038fb76fe5e7123b8e5fae977de1", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/SOURCE-MANIFEST.json": "946e3fb8bbd4efbc771dda183de01a2bd9bc5aacc28dbb86a88edcdec960af2a", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/SOURCES.json": "905c5860d9c920e41138e582c03010b2b03ee8bf071983ad737d2e57868f6857", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/WEIGHTED-COSET-SELECTION.json": "87c15240aaf48810d103ab3234689bb3ad58024d1b1c0b9106719fc18c5d1945", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/build_weighted_coset.py": "5face855c7e4fb8b6b3954bb20f6c0a662550ca7c6263a1a73c40c857816dd6c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/verify.py": "eb4bb8d1c6eaf5327c7d13fc20ebcf2ae2ecebff5b008d44fc1713a7b162084d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/verify.py": "66a20adaaac6850d3c8649f7ccc959cae19ba5bb17ee88a2b41fb1ceff68e431", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/EXPECTED.json": "a79dc7eec1301a69560a2e7fd6ed69634463272696ee96f09e15db1aad8ab0b0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/EXPECTED558.json": "1e922eef350748956f4cd785d7fc5f73297b0ed6f53b130aca2da29d26777c34", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/MANIFEST.json": "32d31fe49c9a4977b1fe83c72320940bff2dececbd8313787fbd81e188b5166a", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/NOTICE.md": "02e74770785e31234d863b36ad2291e04267eaf32a4ba82f67cb1c804da1de44", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/PROOF-REVIEW-STATUS.json": "f54fcf048c5e24f5d3ccf308259b4b1b291b736e014fee81b4518980d358786c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/PROOF.md": "d5d498edc56fdef8c5798af7f5ec66948bd2f66c553b9efe366cdaab01bd3453", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/README.md": "74f5cd377861bdff57a2825b19ac6c2b0bb6aa62f3b0354c7ceec0a76866c61c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/REVIEW.json": "518fd773b1287c9be19563316f55acfa443667946d1f5bc7cc7b884bb9005094", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/SOURCES.json": "32e1466dd29be472e63e11e8ad76b228c0a1e3ec33596ce4319a64b89bd6d912", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-INDEPENDENT-REPLAY.json": "6db0dfeedce73cf9a6eb31bea0a499f06dc4961da40a60d91059bb9ab48fd73c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-PUBLISHED-INVOICE.json": "a21fd7e02d3001b1e8065e9eb6084d80e1f64c44035733ed1115a38675a01fd0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-packaged311.json": "8a06db71ab002a9e080f0d60d22ee32a3a6a848a0cc633f37fc8fde22d21694b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-packaged314.json": "53142566b590fdde9258e36e6fe62991c2f39331fc2822bf0105f812e52d6aa6", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-regression-final.json": "0c8bb51c2234a3190fab3e0e33187dee1bd4f2aab32483a69452366abb3b2567", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-COMPILER-LINEAGE.json": "db1e3390ade85f2299fc1ff0652e12fe1384c35bdcaf5c49e5403e4eb6b255b9", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-INDEPENDENT-RECEIPT.json": "c121cb83baeeb950a42eac4bec73676119dd836386b822e03bf7820fa1bf5262", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-INDEPENDENT-REPLAY.json": "b32113b56745cd5c142c982426ce31f0fe8d4f1a4ba219541e8c8befc69f017c", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-packaged311.json": "fed5ee89ea9f6b3c3ffb150898fc95f9a057a0c598b18de6df59e66908342b2e", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-packaged314.json": "71251eee88024f14982a4e7328377f50eb9d04314f692b891b53b5911498e3c2", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-EXACT-ASSEMBLY.json": "c7495a6787f48a9c5184a00daa841f4a972e37c580c6ff3dacc07bd947914f99", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-EXPECTED.json": "00c462828be76f6d65c1311ad9ef102f18f088029e039cffa599eaeb41668fb6", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-INVOICE.json": "4ac060dbf2ea2624dd1f4bda23bdb81c0a3013dfe49b77c092b631885529947f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-OWNERS.json": "ecac65c65418641abf598db74d588ba8f53b3f358505bd31e215f09562922e3f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-BASELINE-ASSEMBLY.json": "9f5e050486c3c337793d09e4ce96769336a3653de0a3a84a77c39431cf062f16", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-EXPECTED.json": "6c16d41d9c10bc04c65b548ff34422ee2d90d63c37e9bdea4adbdf06fa959f44", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-INVOICE.json": "4b6977a049663ab958bd9a48c2864f7a7bddb26aef03e14f3068aede020ef76f", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-OWNERS.json": "0bcaa62bf4723672113f2acdc3ae30c6faa18e5aefa3992e0ec7dc46b9cdd552", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-RESULT.json": "81618cefc1df42f827d0a7da838b13b9167d3500ca5cd598963c3e09e62ceb4e", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/UPSTREAM-LINEAGE.md": "2ec1c9b1f25e2f3d2556bee7369069ec2340cf126b54fa112e0bff9e269ef0e0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/general-clifford-frames.tex": "c9bb9655b594583c6b4bab8cb485233f1d1e588f83858cf1e4c3530cee8fed54", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-assembly.tex": "ccf34a6d37c4af14bebeab15be50ab204eb1caebe546385520050ec30089441d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-bit.tex": "47123a756f823c83a0d48cca2bf5add6472cd88410b13aed345e70c8834fb511", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-complex.tex": "1c5b638aa9b75365b8addec9c8eeee6bc5e499722901079b94c65fce033fde8a", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/verify.py": "6b444c686891b20b3a92385d025818fc86d9a6ddd2f77504d9223afaa47acd21", + "research/complex-k492-owner-repair/vendor/multicold/verify.py": "1a0e92f610f96a5e642310a2823b152cf573c0d1630b9c174fcc8388d1ffd2a2", + "research/complex-k492-owner-repair/vendor/structural_gain/MANIFEST.json": "eb0499a927665a48a25355075dcb7dc76d0fc43c67ea6d311d9e0242b6d4a25d", + "research/complex-k492-owner-repair/vendor/structural_gain/README.md": "b9132c6bfa65a6a1187ace1f42b938dfeb1d1c7544bdb4c56b0a47409e2822d2", + "research/complex-k492-owner-repair/vendor/structural_gain/frontier-composition/combined-prefix-word/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/complex-k492-owner-repair/verify.py": "dc069c48d1dce31fef2e567fa3ed81780bf07e00b39ac1a0761536e4a5c0b377", + "research/complex-k492-owner-repair/verify.sh": "7fa796bba785a108b681c7c558974c61d5900fbb5e41f2853053faedfb9d3f1f", + "research/complex-sw4-frame8/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/MANIFEST.json": "b9b39c206fcd2613382b0dcbda23a371e8781d1bedaf8e2f8e7df1e79dc1fa89", + "research/complex-sw4-frame8/NOTICE.md": "61b1e1d42b9e589979091cb2d44af2f4e1d9f71075b7bfc9dd7b5b9fb68c2aa5", + "research/complex-sw4-frame8/PROOF.md": "21d8ef267f9ee4c837bcbab0f659e5a8bbf16e0ee1e79e7775342d39c8c8dd7b", + "research/complex-sw4-frame8/PROVENANCE.md": "c7648719b01dd93af2c3a2c6e951a54711d13892dc4bd4339d16edb4c37c9bf0", + "research/complex-sw4-frame8/README.md": "9ae02da50779761637e34b6bc16556de82e97610a339ee9be0eb2e886cf842e9", + "research/complex-sw4-frame8/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/complex-sw4-frame8/code/assemble.py": "bb32035aefe575da3335da4e907553e2e6fdca0a0f997db569cab651c2ddb008", + "research/complex-sw4-frame8/code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "research/complex-sw4-frame8/code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "research/complex-sw4-frame8/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/complex-sw4-frame8/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/complex-sw4-frame8/code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "research/complex-sw4-frame8/code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "research/complex-sw4-frame8/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-sw4-frame8/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/complex-sw4-frame8/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/complex-sw4-frame8/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/complex-sw4-frame8/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/complex-sw4-frame8/comparison/GEOMETRY.json": "2fbd5e24c217cc322fdda14ece627589be1fd6831444838db58901462938c090", + "research/complex-sw4-frame8/comparison/PR699-SPEC.json": "56eb544289c8bc4314bf1bb6cc00883f132f5c46b92c61bcc84488943b48a615", + "research/complex-sw4-frame8/construction/COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "research/complex-sw4-frame8/construction/COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "research/complex-sw4-frame8/construction/INPUTS.json": "edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99", + "research/complex-sw4-frame8/construction/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/construction/NOTICE.md": "defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816", + "research/complex-sw4-frame8/construction/REBUILD-CHECKS.json": "1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91", + "research/complex-sw4-frame8/construction/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/complex-sw4-frame8/construction/build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "research/complex-sw4-frame8/construction/construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "research/complex-sw4-frame8/construction/layers/build_pivot_swap.py": "8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8", + "research/complex-sw4-frame8/construction/layers/layer_end_controls.py": "7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef", + "research/complex-sw4-frame8/construction/layers/reproduce_layers.py": "435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e", + "research/complex-sw4-frame8/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz": "3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0", + "research/complex-sw4-frame8/construction/layers_np/HPE-RECIPE-NP.json": "43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1", + "research/complex-sw4-frame8/construction/layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "research/complex-sw4-frame8/construction/layers_np/reproduce_np.py": "1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c", + "research/complex-sw4-frame8/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz": "17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4", + "research/complex-sw4-frame8/construction/layers_p6n/P6N-SPEC.json": "132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1", + "research/complex-sw4-frame8/construction/layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "research/complex-sw4-frame8/construction/layers_p6n/reproduce_p6n.py": "aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca", + "research/complex-sw4-frame8/construction/notri/PRIO6.json": "de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15", + "research/complex-sw4-frame8/construction/notri/cgx.py": "3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418", + "research/complex-sw4-frame8/construction/notri/cold44x.py": "f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296", + "research/complex-sw4-frame8/construction/notri/port_stage_x.py": "38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7", + "research/complex-sw4-frame8/construction/notri/reproduce_notri.py": "90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8", + "research/complex-sw4-frame8/construction/promo/LOCAL-PINS-p6n-k4.json": "a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f", + "research/complex-sw4-frame8/construction/promo/PROMO-RECIPE-p6n-k4.json": "fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90", + "research/complex-sw4-frame8/construction/promo/build_promotion.py": "9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf", + "research/complex-sw4-frame8/construction/promo/make_recipe.py": "ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122", + "research/complex-sw4-frame8/construction/promo/promo_controls.py": "786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372", + "research/complex-sw4-frame8/construction/promo/reproduce_promo.py": "f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026", + "research/complex-sw4-frame8/construction/reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92", + "research/complex-sw4-frame8/construction/sw4/LOCAL-PINS-sw4-P6k4.json": "3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327", + "research/complex-sw4-frame8/construction/sw4/NOTES.md": "3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446", + "research/complex-sw4-frame8/construction/sw4/SW4-RECIPE-P6k4.json": "fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa", + "research/complex-sw4-frame8/construction/sw4/build_sw4.py": "9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66", + "research/complex-sw4-frame8/construction/sw4/reproduce_sw4.py": "3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac", + "research/complex-sw4-frame8/data/EXPECTED-IDLE.json": "2d382c518e56daf26a41e28dcd169f4e7d3ce64a67bc281b395ce367ffb06e86", + "research/complex-sw4-frame8/data/FRAME-RECIPE.json": "a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473", + "research/complex-sw4-frame8/data/FRONTIER.json": "70f211bb048cf19b7d50868fda830145d4073edb2eeedba89d77367129b3bb9f", + "research/complex-sw4-frame8/data/OWNER-CONSTRUCTION.json.gz": "bd3efa32765b30a2e18d113186d4ac94dfd3d080f6499731826f054246cd8f1e", + "research/complex-sw4-frame8/data/OWNERS.json.gz": "99d1c4caf85855c353d30f122d9efbd9e51562914facded13027f347b18a6082", + "research/complex-sw4-frame8/data/PLAN.json": "b94744674847a9f411a1072521754c605518971a6a96fead1eb3b479eb6455b2", + "research/complex-sw4-frame8/data/SPEC.json": "7fc2bd2e3c0ac13729c1fa1f0f327a4eb7c72373ba58e5ed3954b30e23c803be", + "research/complex-sw4-frame8/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/complex-sw4-frame8/extras/build_frames.py": "a1e6530849499a812d4be2b920f4afe60e55c4a1ecc08f62849d2a3eae882019", + "research/complex-sw4-frame8/extras/check_owner_map.py": "6be8d8bc9ca09a195b25f3ccdfb9ada0d129d4cc7900ad5a26832dd8ae7809a4", + "research/complex-sw4-frame8/extras/exact_intervals.py": "aa3c2327c5d3742248b720a87b2de0bbe2e34ed2af89a578e3c8d5bd2656a9cf", + "research/complex-sw4-frame8/extras/frame_controls.py": "47d2f85df2317290687ee44eeb27526649d17a6cc2dba365695647a3cbc42a98", + "research/complex-sw4-frame8/extras/replay_owner_map.py": "8cab5bb2650e3caf1036aed0197663bf26b41c2fa645f732c3c7bfe3f1e2b481", + "research/complex-sw4-frame8/independent/README.md": "5d7bb5bde9710aa266a581b8d2938202b9302a05b47252faf8b1ca9a1e3bdd6a", + "research/complex-sw4-frame8/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/complex-sw4-frame8/independent/price_profile.py": "d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf", + "research/complex-sw4-frame8/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/complex-sw4-frame8/local/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-sw4-frame8/local/cold_end_controls.py": "6f8cfe711aea1d688c255a1f1c158d94aab8ce4adaa526113d58ca58db87078c", + "research/complex-sw4-frame8/local/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-sw4-frame8/local/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-sw4-frame8/local/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-sw4-frame8/local/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-sw4-frame8/provenance/ADMISSION-DIFF.json": "a16ae3d0757c085212b83600163c9ca2304dbb4c86f489b654d95a66af75509d", + "research/complex-sw4-frame8/provenance/SOURCE-FILES.json": "065a87bcc51c0926666abe981c3a65ddb593fe1e6e315787927523683982dcdd", + "research/complex-sw4-frame8/provenance/upstream-gauge44/CONSTRUCTION.md": "7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea", + "research/complex-sw4-frame8/provenance/upstream-gauge44/NOTICE.md": "54305e39f346f658d49fe5a1e0938402ac0977a72f21c92557d887da592ec047", + "research/complex-sw4-frame8/provenance/upstream-gauge44/PROOF-NOTE-BIT.md": "1e2167a0cb69a7be7a5c98e6e5b270b4676d6c0ac209ff29e06e40507f2c9544", + "research/complex-sw4-frame8/provenance/upstream-gauge44/PROOF-NOTE-LAYERS.md": "92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f", + "research/complex-sw4-frame8/provenance/upstream-gauge44/PROOF-NOTE-NOTRI.md": "774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414", + "research/complex-sw4-frame8/provenance/upstream-gauge44/PROOF-NOTE-PROMO.md": "58bc7e022950dde32252d8dd2cbc90bb44f9b7af1f03551a24d2d3a210e0d39b", + "research/complex-sw4-frame8/provenance/upstream-gauge44/README.md": "51416917014fa57205a86f03aba38619ac10d54f5a07e5015bf13e1c1fc9ae07", + "research/complex-sw4-frame8/provenance/upstream-independent/CENTRE-GUARD-REVIEW.md": "7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897", + "research/complex-sw4-frame8/provenance/upstream-independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json": "9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9", + "research/complex-sw4-frame8/provenance/upstream-independent/GAUGE44-GLOBAL-GUARD-REVIEW.json": "631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b", + "research/complex-sw4-frame8/provenance/upstream-independent/GAUGE44-INDEPENDENT-PRICE.json": "f5d1a19acc6cc5f6676f68ba60378b4a01841e54f015a8d6c18f7439093da268", + "research/complex-sw4-frame8/provenance/upstream-independent/README.md": "25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89", + "research/complex-sw4-frame8/provenance/upstream-independent/review_guards.py": "b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d", + "research/complex-sw4-frame8/provenance/upstream-pr699/CONSTRUCTION.md": "7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea", + "research/complex-sw4-frame8/provenance/upstream-pr699/NOTICE.md": "93f803ee9ae9d2f02801cf79335ff1731b71bd82b6b6d0bfc9a1130c1543b63c", + "research/complex-sw4-frame8/provenance/upstream-pr699/PROOF-NOTE-P6N.md": "cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d", + "research/complex-sw4-frame8/provenance/upstream-pr699/PROOF-NOTE-PROMO.md": "c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae", + "research/complex-sw4-frame8/provenance/upstream-pr699/PROOF-NOTE-SW4.md": "d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d", + "research/complex-sw4-frame8/provenance/upstream-pr699/README.md": "f320dece84ea669dbe25f59ff14fa32b6c4d9c2cbddc0890a7fce9e5da16e2de", + "research/complex-sw4-frame8/provenance/upstream-pr699/SOURCES.json": "12eb983afb500a57c42e8f22f99d47453d39d1128a0b797e3d684fc7e544f5f5", + "research/complex-sw4-frame8/provenance/upstream-pr699/historical-FRONTIER.json": "56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2", + "research/complex-sw4-frame8/provenance/upstream-pr699/historical-PREPARATION.json": "1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/complex-sw4-frame8/vendor/main/research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/direct_delivery/MANIFEST.json": "c1997405c5c0ccd9bdb0a30b0eb9a5a2dc7dc7ce7b59c6a83a2152b80f6410d1", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/direct_delivery/code/construct_504.py": "a0d96ede40b957c38dcb64296d5f4a76c23dfb8c8875e01a80b5f1bdf6e8360e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PACKET-PROGRAMS.json.gz": "d833ae0390d165d7da0c639a3c7aeb77156c2ddb52447087cb49b9d03b19e9b9", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PROTOTYPE.json": "327d2a868043e846381aa58a33053c24425e8cad522ff401b10ec8af1d649a3f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/MANIFEST.json": "fd30701bd9bd652985db18fa95bee08a34615ef417a2feb2f55efd60a0b5d665", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/NOTICE.md": "ba2267f17bb2cad9dc706565c359fec98d6ec0feb3b32dcfb8c3277c59cbf8fe", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/README.md": "1b2679bed02b9563e6f3a9951eef2cc5057444a78bf4aa7ab89d1ad83330e3e4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/SOURCE-PINS.json": "240e8ee75336e921663a0057f450b346bac305d2af4ffacef68dec1798d9bb85", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/code/audit_joint_prefix.py": "c01836709f3650a39c46418ac1771980b4b96288e60b51032b5d31419e484c37", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/code/build_joint_prefix.py": "d7804669e528b6fd8d80195a4a2e76efac9bc67440b82c73973f4bc9fe273783", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/data/EIGHTCOLD-JOINT-KERNELS.json": "0381935d8d162eb48044bdf7e36a42af761f6d4032509b9b397ca02d3134f585", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/joint_prefix/data/JOINT-PREFIX.json": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/MANIFEST.json": "328ce8023d33deb308b0f1ae2320424050f836d791cf60a613ae8408e7d6f3ab", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/NOTICE.md": "d14c070a8e237cb1912e413ce22e98eb41f164b769ebaa97224c121fcc5a0fc5", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/README.md": "638428654d34f0b72ed4b5fda948c91d01e57f8015813c6d8ab01c06c1da5322", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/SOURCE-PINS.json": "503764cd70c99a9652ec51a533c31ad7f2a615e6c230156d785daff2835cf028", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/assemble.py": "3fedbccb09d469f8ee366b4302e51448de6d25793a78a12c5f9a8d9667a755eb", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/assembly_controls.py": "a0f2349ba8fe8404b8b76c869f12dd7e250a775b2e05b3c9c00e6889ad4c8a45", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/audit_allcold.py": "7950e5c01488a9146bdbaf19ab4fd0c33cd25a4d63fb56ef995ef2e45ac7ec1a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/audit_kernel_controls.py": "5100459211f43ba048bf82c3942bbedb8b224272b24722a14f0dcd808a38aafa", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/bind_providers_portable.py": "01e62fee1f1dcf1b7b34338d555dacd5cd1d7d10d6b9a605d0913d959f8c7ecf", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/build_four_portable.py": "417b1dc4dca485dfbbaa820e552cae9bf3932bbace6ea16ce93aa0590c3c184e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/build_multicut_kernels.py": "6ab3d73f81d5b2fb884a93a336ef1940e118d419d425b3356bab3b97f774c9aa", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/emit_allcold.py": "9d6c75af63fa8f53973734ccb1eef983511f4337ce644436a693fd8fb9ef8fe2", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/invoice_allcold.py": "ff8fee775ad97926454f3ad1183f8e05de654e276150e579ce612f3eb2f98d44", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/phase_timing_controls.py": "dcc4adfd139d6f65a88bdc6d183ea3777d4e4f688d2169dd41b54964f05591bb", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-COLD.json": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-MULTICOLD.json": "d18ea59995d384833c95a7a55d8167f83439b6881a524ab03df972ede3e0d7b9", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/FOUR-COLD.json": "643e07c25dac93ce1fe67532e377f9f1cf8c7bb83835abb3fad63c9c51514736", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/FOUR-MULTICOLD.json": "c1b42d7bacf9f31ab35294f7b8430a1164d6bc169a3d68fe2b3ea39cf791b323", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/FROZEN-FOUR-PROMOTION.json": "90417f8d54ea9272bb5041ed9144a58dcbc194a22dd0845e7de89d4b717f1b74", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/OWNERS.json.gz": "93349ec85f21811b5b247980f9fc4d8161100d5ee37bce7fda5ef65d0370240b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/PLAN.json": "35a95fd9b5e46fdaf8a3929d516fa8c14dd4e3bd9a20eb546e0541a8ef85ff51", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/ZERO-COLD.json": "ea1cda1578464399077bb96e5c3c3d01e88ba5eeaa6c22d3b66ef4380bc3b820", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/data/ZERO-MULTICOLD.json": "cc09fab61aab468200d72f833ffb9e6572580d54da57bab02c5d63e3b280af1a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/CONSTRUCTION.md": "27ece5e1c11b90d97a808b56eff897b998c10e61016db95867f84e6e6aef132f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-EXACT-FRONTIER.json": "55050dbdc1ffa18b3cc1f9b8b94f7de7a04a39f65efbbb890de2e73db837ee38", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-OWNER-RECEIPT.json": "cf9992773c9ae4523dbc7f71753d7ecfa515618d7c2ab414b60d53887f518a30", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/EXPLORATORY-PROVIDERS.json": "59196e2c93f4fb8fdbe74bd16d60242a3534eb5bb8c810fc29635ab0e65bd08f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/PR561-NOTICE.md": "180802791d3547d511a7af8bc4f800640abd72636d50631d2e61b35cfa17627d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/PR562-NATIVE-TRANSFER.txt": "f4ceeb2a412c9ec3f3bc06a78cf865e5fdb7c1080421ec5285ba02d04418eb37", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/PR562-NOTICE.md": "a427502077fceaaffc7d44bb8520562160d0d76e4cb08c2b10337e62d8987fae", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/PROOF-ALLCOLD-NATIVE.txt": "ca7a8b3f3fa6d3610ef9518c71d5186427ccf2b2bdf3511be84a6b2d7bbb1e25", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/proof/PROOF-REVIEW.txt": "0a807ea2c5fec29cbf994f94bd5a388914fb31de02dba03d18265040044c0dc6", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/MANIFEST.json": "f28c04eecbea7599fa9e0867dd8d0311a463af12cab79f90a43733b162527164", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/NOTICE.md": "fa76079e2566b8d644c4aa36cb1034aa2363d2e97978b26203f122d826918fce", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/README.md": "02181c5ff31cd1c2899608e5ab598b405df92ad5814df35f329d117956f7ee10", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/SOURCE-PINS.json": "b09437400a7f6f0dc86eee0f800aae91cd35a7e5e80eb3d348f87113a0bd0d76", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/assemble.py": "5d4946dcad7636bf2119bb7bc3a52ceb41454c1514d12cb77def2c2e02b17338", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/assembly_controls.py": "f3d703a63404bd655e66a520b3840a4ab72529751664eb634a52736b4bc95a29", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/audit_promoted_scalar.py": "1994e7116065636b53bf740000ff78dce8ea62390e597d293d183f33c67eaa6d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/promote.py": "b69a27d53ec3f64ccbdbbd79f9632419f273b3eb4429f6cdec1315fd8798750c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/reconstruct.py": "e56d57d39cf787b8325de5a97dbc283f89d51c24169efae9ad2227277a6f8243", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/OWNERS.json.gz": "c72892f5b3b36e75ec4db7742b046bd9194f638ff32be9cc8843914af950e6dc", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/PLAN.json": "8e64bb8a1a8f87998479316f4111801cb3eb1e64f898b7e577eebd72a460f844", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/data/PROMOTION.json": "9ad34faa8611a6ea7f161d2e1fe331ab1ba5ccec8fca3978e31c3e7bf789bc31", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/ASSEMBLY-PROVENANCE.json": "cf1710faaf5d4aa32e6a8a24b0087cdc24e5b680d974e5dd4e0cb4ef4787e395", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/CONSTRUCTION.md": "9b0617dee9c044488b2f72b50059dd8d768f6ee0a29c35fe2cfdde85d25cdbd1", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/EXPLORATORY-SCALAR-8-CONTROLS.json": "c0465364067e6392fa0d7e4cd0481a82afebe3e271b486a4984e7b2826025146", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/proof/RANK5-CAPS.json": "461ebc6c8816a0132c89a54c2ae56b07f31500bcb2c2bebfce783eb41bc29441", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/EXPECTED.json": "00c462828be76f6d65c1311ad9ef102f18f088029e039cffa599eaeb41668fb6", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/MANIFEST.json": "b0f5773b3ffa2c5305dade20ce6159cb8b5961285d2f7bc767c6353838bac4d3", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/README.md": "79cc63fc45ea52c04f32555676704a1664a3eafdd917b25689b1acd390a4636d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/alien-avalanche80.cpp": "0215152bd3ddf0282c8088843c4e8a89e821e747f884e03100fe79238b3061db", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/alien-flags.cpp": "0bd6ac192357ca71f6b84baf50efdc43fccc8394296c35a298b35306db7d88a3", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/assemble.py": "bf878beb64edc6bae4c321d7c964088c4d9aa0ae477597ac1adbe2b1078e3904", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/code/build_wave.py": "249669d046db49011b84345a14ec05a93270829e5e21f6046576972038da377e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/README.md": "bd82df5b39c6ff26b93f41ad76471ac50131050a3cc0f84dbc6c57703a721353", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/RESOURCE-TRANSFERS.md": "6fd2bc82714060290f29b218c235c171395cf9be99bea01f8a7fa770dadd68c7", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SAT-OWNERS.json.gz": "b5a5339dd37d90a0adf40d90d6aed52aec2f94073a3b27763575eb069f85a903", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SAT534-PLAN.json": "221a38f18504e00da31a72a7b3a3f0d248e8f886d2b8fa7cae2d73e7ec86905e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SCREEN-RECEIPT.json": "ed60f7e6b0b86f4401ada159c0d37ee283836a0b5d1967f7b0a236685f64daa3", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SOURCE-TRANSFERS.json": "e49fbbaa4533b6f15b56098c9d16ea3e1bc0cc98b19a2e990c51baad047e7839", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/SOURCES.json": "85448ef4fb1d124ef8bd2f0b14451ef522465b14510bba4e53fdd24da0968643", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/TWO-RESOURCE-TECHNIQUES.md": "8cc6b582680ae8565444abc01f1dba729c94a827f1f8e89192190229e52183f4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/WAVE-MAJORISATION.json": "c445afc50e594c46932d8d799b446edc22717e664d828d4afd7810c643576475", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/replay.py": "2e1f11b5702b831622cea8b386bb82043ef9e58b2a0aab56b09c00f30ac73046", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/run_complex44.py": "5533e9e29c66b11f8feb22a2d3d37551787200ea69eb3d04a984c0b1d22c49bc", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/NOTICE.md": "b47da4b840ca9c8d1e2816359a603304ebd7ca442c82b94c049b00f142643f73", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/SOURCES.json": "c265f58b1ab29f9b662e9c5f943147ccc0527fb1f4803b06b48f71d96fa9bc60", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/adapters_local.py": "4e89a5c517cd87ff6a5aa9b7334c0d74821179ae5777d31284da25b9d8abf113", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_and_transport.py": "a4fc272266785e1fffd44775c6fa6df783c4352de4c3f1d925cf953a23b84e7f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_local.py": "69b12c45d0a961175a824c1967353c7f3b94818a7dd6ac7bbcf56a6d1a5ed8e8", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/audit_supplier_hosted.py": "301e9b5c593b6d583065337eb7b3ef207cf039e265f099f89080a4bf25856b43", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/emit_local.py": "eefc76e0bee003015fe21ac685c2cce658033d5444add404d2d509c7d6f39bac", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/emit_supplier_hosted.py": "53c0b653b3a5100756d6a9473c90101b8c3ab72723d7047983906ab997bdf920", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/invoice_final.py": "96b6bed96ca8b60dfc064cd1c7962c45a5cb53c4e52cd90aaea6ccf8d109db97", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/phases_delta.py": "15723107eff03013b2e797fd9fa3635b1b46c5d1c8112d19fada98c178d4acb6", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/local/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/PR523-ANCESTRY.json": "76025ad06d8ac96fc6693092d674729fea2f04b9c1c89ec50dba7488b8e6657a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/inputs/data-base/work/pr361/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/vendor/clifford/clifford_exact.py": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/NOTICE.md": "1547136e6d269fdcef2b68c10a97a786a79a4732a12738363f679bfb282430cd", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/code/assemble_combined.py": "41216e8da3b647fe6eead9079858f25b2592cab090154aca43f3cc73ff36dc9b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/PR510-EXPECTED.json": "19b861f69f7602e47b390d472b487d044bff4230b250520807537c213ad0249f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/README.md": "f69ac71a8df62a5d0bf7ed45ad16642e1102faa9e7b95c03f08cdf264a608948", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/SOURCE-MANIFEST.json": "b91c0d923affac87ce0bad7083d4640758930f82628f042bed7aaccf528973cc", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/apply_syndrome.py": "496a91b9da15ef56e6df28a0459ca8318a4575441c7921e113bf636f31e3c5d8", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/port_frames.py": "8d25abc9c45c58a5b893e67f9abec3a660e8d7f743e86959f2d2fd62037e23d1", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/OPENAI-SOURCES.json": "1a9c08d0c0190f0280c02e74c8a144f802efe2d7d8eb3a0b50b181d6dca686cd", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/SEARCH-RECORD.md": "7b09479215c407e4258ef6af64c34dc865e3b9a60c845040258413a2a960f5b8", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/docs/TWO-SOURCE-PROOF.md": "4d6423f773ec47d2eea984e02f11f2d636e02ad3e6f3eb3e640a3768fa04fe75", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/PR534-WORD.json.gz": "a275792cb9f5729fac295cb04c556afbaa4513945c517190219fd0e44ab90095", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz": "e070ae2c78b4a1b644b418774af62b40d8d16e6ba89602f0474afb557d507c37", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CLIFFORD-RECIPES.json": "577a1be13f5140d9c3997637784b2f812f46b24c61877699430b02de4f662102", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CLIFFORD-REVIEW.json": "cd48fe6882a39c57021c4614747cc5c2c88ec07e806cebb914cf533997b73d9b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/run_local.py": "8326e67400e5ff87580e93e4518efe397f1b29fffbb6d757a37e5f97c14c3695", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/META-SOURCES.json": "c8aeb9313f2c671a9a8766c249ceb6cffa106dfdab3ab761da8e8c534b115090", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/NOTICE-upstream.md": "1547136e6d269fdcef2b68c10a97a786a79a4732a12738363f679bfb282430cd", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/PROOF.md": "abfa6548b223893866094631aed61174575dc1b17bdd60627b2c55e6b9477e4f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/README.md": "51d6ef7ad3e12e72daf29e0260a11cd985a0148fe1efa0574a533dae726c553c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/RECIPE.json": "8735ac9beadff3edcb4a4df8dae174415e0f83d9b4df8556c33ba7fd777505fa", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/SOURCE-MANIFEST.json": "4f5d92b4cd76eff0845a9f14d33131441535a232b5c91f00535aa076d44c45a8", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/audit_scalar.py": "a1cd720d281c7a9db7f17919c637cdcb8558e9f3c96e929706f0c21f317a7943", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/build.py": "b15192ff50fd99f5ca3cb5857b5e129c98a212de60ae76aafb1614139743c35a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_common.py": "e68d190fd436b2f3955decb590adb53344d5d4ea0a19d62d86df1e4b55ecd198", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_word.py": "f027a9273bcf4e0971258c160b7d3b3c196366b32a529cff6e6a0e666b03826b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/BASE535.json.gz": "edfffb8e8735e0d1f07c81d818022b705ef0889c2bccc193a2f7a661b9f7d390", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/OLD-RECIPE.json": "7e5c179246261edd9e1019e81e6e979537f02559da773b993a318f771cb7d763", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/RAW504.json.gz": "1c6144791dbedf6427e3ee7b4c24fb05b5bf407f6346592f50f8dd8d9638108d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/replay.py": "fd1ce7d1f8974b473aef8c6cec1e0c590e01d0d215b073e5573a771ce42fc74d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/DAG-STRUCTURES.json": "5461d7832386b2f7f3234b6786e148a7c49461d8527be5e76c8fe977783d9053", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-AVALANCHE-INDEPENDENT-REVIEW.json": "f084eaa33ea10fb0fe4d575f2abd503ad5dbdb2c03d2c8b6dd62fc5f387ae31c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-CODIM2.json": "2422fa6db50ca4b2e8226113aa30d608e7c6525990eb1faf370f9fee7718e698", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-ELIMINATION-AND-PATH-TRANSFER.md": "481001470bd22345a0baf652261351e015a2634b2572b0d4f78fa9e147edd0f9", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-SCREEN-REVIEW.json": "555024b7a90f8dbbb3f13623d504d36b3bc92dcf118f6f9ecaeff285ee13f2e5", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/ELIMINATION-SOURCES.json": "69a578efa22c12688ef442498f8b1d901c7056f5f1948ac921e1dca0d2be305b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/FRAME-SOURCES.json": "e01063a60b24b3b21f9c1d472d890bb387e61d66ab8847cbdab4b92f06e0f91d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/FRAME-TRANSFERS.md": "1756461714ea55bd748d7245af14adf0a6a4e13a9bb7f498a381ec4282a30387", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/PR-LINEAGE.md": "2ec1c9b1f25e2f3d2556bee7369069ec2340cf126b54fa112e0bff9e269ef0e0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/docs/PUBLIC-PINS.json": "273e48abf63a49123f11fb4e56f000c648aaa6d17987378b413469a5976e5ebd", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/COMPLEX-INVOICE.json": "a21fd7e02d3001b1e8065e9eb6084d80e1f64c44035733ed1115a38675a01fd0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/EXACT-ASSEMBLY.json": "4e7e5831683a1af861580a96db1fd717dc2a6fd01a29b220223868fb57d46e83", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/FINAL-RESOURCE.json": "b1463e5f7fe3663080e6021fea5424375538fabef942c7560cfed610f4242ef7", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/evidence/WAVE-REVIEW.json": "ef97172e5020ce4158f7c8144a0b0b3d16b94d7c0415e2d33a81f02353d3d506", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/inputs/WAVES.json": "262d0fccc6e8ffb1198436034a26c467ad28b3251823ac25c966f773afc3c3cf", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-PATH-APPLICATION.md": "56eba06ba109c39ab9ce9eb9769c724f532c06d8ffbb2b53706b8294cb4f9711", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-PATH-REVIEW.json": "39e813d3c0f48a1a6317edac9ffb9ba5b534a62948708595e43fc2e790eda168", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/COSET-SOURCE-BINDING.json": "b7531fb284ee11e16b875d5f82237e025cfcd95593f3e3eca23cb5d3249eedf2", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/audit_coset_paths.cpp": "47999863b7c5037754bf73cc94757095f45f6da510d7ce96fb7699e9188d89f2", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/coset-path-input.txt": "779b497d52b6896a04f41d6c55424e65030a939945ca80858c369a3a3320a341", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/optional-audit/export_coset_paths.py": "f36c06ecff72e4a2fd83ed44467d528c976d52da3d5bd6e8043084b1568a7fd9", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/CROSS-FIELD-PROOFS.md": "3d0a1b9ac989283400e7c1e3a025080a8f6837755baccdd55f5e51599ac0921e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/README.md": "cfd349a83f5ab3d5bb4268ef93b46b1e4542038fb76fe5e7123b8e5fae977de1", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/SOURCE-MANIFEST.json": "946e3fb8bbd4efbc771dda183de01a2bd9bc5aacc28dbb86a88edcdec960af2a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/SOURCES.json": "905c5860d9c920e41138e582c03010b2b03ee8bf071983ad737d2e57868f6857", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/WEIGHTED-COSET-SELECTION.json": "87c15240aaf48810d103ab3234689bb3ad58024d1b1c0b9106719fc18c5d1945", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/response/build_weighted_coset.py": "5face855c7e4fb8b6b3954bb20f6c0a662550ca7c6263a1a73c40c857816dd6c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/verify.py": "eb4bb8d1c6eaf5327c7d13fc20ebcf2ae2ecebff5b008d44fc1713a7b162084d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/verify.py": "66a20adaaac6850d3c8649f7ccc959cae19ba5bb17ee88a2b41fb1ceff68e431", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/EXPECTED.json": "a79dc7eec1301a69560a2e7fd6ed69634463272696ee96f09e15db1aad8ab0b0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/EXPECTED558.json": "1e922eef350748956f4cd785d7fc5f73297b0ed6f53b130aca2da29d26777c34", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/MANIFEST.json": "32d31fe49c9a4977b1fe83c72320940bff2dececbd8313787fbd81e188b5166a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/NOTICE.md": "02e74770785e31234d863b36ad2291e04267eaf32a4ba82f67cb1c804da1de44", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/PROOF-REVIEW-STATUS.json": "f54fcf048c5e24f5d3ccf308259b4b1b291b736e014fee81b4518980d358786c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/PROOF.md": "d5d498edc56fdef8c5798af7f5ec66948bd2f66c553b9efe366cdaab01bd3453", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/README.md": "74f5cd377861bdff57a2825b19ac6c2b0bb6aa62f3b0354c7ceec0a76866c61c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/REVIEW.json": "518fd773b1287c9be19563316f55acfa443667946d1f5bc7cc7b884bb9005094", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/SOURCES.json": "32e1466dd29be472e63e11e8ad76b228c0a1e3ec33596ce4319a64b89bd6d912", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-INDEPENDENT-REPLAY.json": "6db0dfeedce73cf9a6eb31bea0a499f06dc4961da40a60d91059bb9ab48fd73c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-PUBLISHED-INVOICE.json": "a21fd7e02d3001b1e8065e9eb6084d80e1f64c44035733ed1115a38675a01fd0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-packaged311.json": "8a06db71ab002a9e080f0d60d22ee32a3a6a848a0cc633f37fc8fde22d21694b", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-packaged314.json": "53142566b590fdde9258e36e6fe62991c2f39331fc2822bf0105f812e52d6aa6", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR552-regression-final.json": "0c8bb51c2234a3190fab3e0e33187dee1bd4f2aab32483a69452366abb3b2567", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-COMPILER-LINEAGE.json": "db1e3390ade85f2299fc1ff0652e12fe1384c35bdcaf5c49e5403e4eb6b255b9", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-INDEPENDENT-RECEIPT.json": "c121cb83baeeb950a42eac4bec73676119dd836386b822e03bf7820fa1bf5262", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-INDEPENDENT-REPLAY.json": "b32113b56745cd5c142c982426ce31f0fe8d4f1a4ba219541e8c8befc69f017c", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-packaged311.json": "fed5ee89ea9f6b3c3ffb150898fc95f9a057a0c598b18de6df59e66908342b2e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/evidence/PR558-packaged314.json": "71251eee88024f14982a4e7328377f50eb9d04314f692b891b53b5911498e3c2", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-EXACT-ASSEMBLY.json": "c7495a6787f48a9c5184a00daa841f4a972e37c580c6ff3dacc07bd947914f99", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-EXPECTED.json": "00c462828be76f6d65c1311ad9ef102f18f088029e039cffa599eaeb41668fb6", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-INVOICE.json": "4ac060dbf2ea2624dd1f4bda23bdb81c0a3013dfe49b77c092b631885529947f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR552-OWNERS.json": "ecac65c65418641abf598db74d588ba8f53b3f358505bd31e215f09562922e3f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-BASELINE-ASSEMBLY.json": "9f5e050486c3c337793d09e4ce96769336a3653de0a3a84a77c39431cf062f16", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-EXPECTED.json": "6c16d41d9c10bc04c65b548ff34422ee2d90d63c37e9bdea4adbdf06fa959f44", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-INVOICE.json": "4b6977a049663ab958bd9a48c2864f7a7bddb26aef03e14f3068aede020ef76f", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-OWNERS.json": "0bcaa62bf4723672113f2acdc3ae30c6faa18e5aefa3992e0ec7dc46b9cdd552", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/PR558-RESULT.json": "81618cefc1df42f827d0a7da838b13b9167d3500ca5cd598963c3e09e62ceb4e", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/inputs/UPSTREAM-LINEAGE.md": "2ec1c9b1f25e2f3d2556bee7369069ec2340cf126b54fa112e0bff9e269ef0e0", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/general-clifford-frames.tex": "c9bb9655b594583c6b4bab8cb485233f1d1e588f83858cf1e4c3530cee8fed54", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-assembly.tex": "ccf34a6d37c4af14bebeab15be50ab204eb1caebe546385520050ec30089441d", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-bit.tex": "47123a756f823c83a0d48cca2bf5add6472cd88410b13aed345e70c8834fb511", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/notes/three-stage-cover-complex.tex": "1c5b638aa9b75365b8addec9c8eeee6bc5e499722901079b94c65fce033fde8a", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/vendor/pr559/verify.py": "6b444c686891b20b3a92385d025818fc86d9a6ddd2f77504d9223afaa47acd21", + "research/complex-sw4-frame8/vendor/main/research/complex-k492-owner-repair/vendor/multicold/verify.py": "1a0e92f610f96a5e642310a2823b152cf573c0d1630b9c174fcc8388d1ffd2a2", + "research/complex-sw4-frame8/vendor/main/research/structural-gain/frontier-composition/global-replay/base/split-centres/FULL-WORD.json.gz": "375bd23001cd805707968005a9342827d5464e3f8e3a754197b31c46fc3f63c2", + "research/complex-sw4-frame8/vendor/main/research/structural-gain/frontier-composition/multicold-eight-word/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/MANIFEST.json": "faa8559bc062cb1813c482580967de2de0669ee59e708908fd24b16b74d6c707", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/PROOF-COMMUTING-PREFIX.md": "59899b2a1a76d88275e57f983c0aea391dc2c7f1d2d66c33b92429be0a1cf5e1", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE-R.md": "22312bb347bdf159e6a01a45c47675e6170d33b258e2fd9ed52aee88fb92c0ed", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE.md": "e79d0920228107083be166a6733186816a38a8fa68d99f2038f07b157ea5690e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/README.md": "d74a9499a23a729d3470bde7b06b85c4cf8602d06d10af9bf9991aea2da8ed7e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py": "8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py": "cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py": "e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py": "08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py": "0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py": "66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/emit_allcold.py": "fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py": "a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_controls_atc.py": "63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/phase_timing_controls.py": "1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/witness.py": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/EXPECTED.json": "9eeb8b149bf7649a47b0d3266436b9bfe0ba155ffb9668fa66cfa21136f9b8ed", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/OWNERS.json.gz": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/PLAN.json": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/SPEC.json": "f5473e3e6d76901bca57616efda78c3e23b3d30aa2c05acb656b6e87c38abbff", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/TRI-SCHEDULE.json": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/WITNESS.json": "05f7127910a846210d8c75d67c58185b7cd15b9861d71d0cfea955ae62414436", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/cand.json": "f1f42cb6f1f272ca3690e65fe604c18427dd9ac51241095c133bf97af21d32e3", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step0-promote.json": "9a7cafdf9b600ba43985c83969b75151f665b98f454afc1494b9f9ef3dd3916f", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step1-greedy_kernels.json": "c4bc67f329fc22e226f26bbbf7e67018a639823d99fccfc5a1e798a7a82db43f", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step2-frame_coalesce.json": "e6d7ea259a542f2b43a857998f677db4d68f8f36335e98a030bc91ab38ce758c", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step3-gate_move_coalesce.json": "3a6b8fec6c8b56a45bf8fae683083636fa295a8914ffa68d11b1f78ba3a2eb9d", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step0-greedy_kernels.json": "c839199d0e6f8e976978fe97bc0c5579a65ba69dfb6864585b448cccc1113056", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step1-frame_coalesce.json": "0c8e5991e1338f03b837814dd060d4dd598c324e3538ee510913e0444a384ee3", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step2-gate_move_coalesce.json": "1f5b62c76915b1b8bbcf63b42dcbd87a536c34d3721c4a9b68e651404717bf00", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-cold_end.json.gz": "a25ccab0c024aa9512df822032fca11683def03d0886b58f375c42834264c47c", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-frame_regroup.json": "8d880d3d8e795575a3a3428e0031b2c45831eea512dc32cb99f7eae9e6e49e5e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-hyperplane_end.json": "30504ae76a2387677f05450d23413c7373c08ae2d9d171b2f4597bb63e294631", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-cold_end.json.gz": "9f487a0c6e89f6f3aec38726c3a4e514ffe1248ce6cda3704676f2c86ad0866c", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-frame_regroup.json": "9894f9c93e931b61cf34b337c4b257a72bb1d06fbdc4e8b02368e6e29ab2b644", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-hyperplane_end.json": "c71c2b05550544c29ebb4696e63cffc44d6daa76f1bc25e9c7c97e994b2c7657", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-cold_end.json.gz": "90952fde4666724f783191d92f132e9f6aa84cdc6163a42974774e9957cd6f35", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json": "9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json": "e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/DISPATCH.json": "34f233d4976e59455c3f0e1fa6edef8091d04bf63e4268aeb4a73810bfd5e338", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-AGG.json": "5a1e2c3f7784cff71d4577e29d7a598a41198dac20aa35d5c87bb345d12f3e03", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-EX.json": "08dd7090b5fda8b0a2c936c12982b279333c5765cfd090361a58e74d68b22e80", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/TEMPLATE-PLAN.json": "1879679a44b373006907cbca8261a9cd187c7b868472afab04e002bf95331d9e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-OWNERS.json.gz": "56aac182713cba7627b7ebfbb497975b5a7c76b9da9f835a1cb63192fc6134a4", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-PLAN.json": "89539c2b5d24225613c0ceb571a03a2165bcaf0a0bea06986e212649cbfef9e1", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/verify.py": "4c8dea601fe9255bd9fbbf7840d3bfacc3dcf0b1deaf7ffab467e3c10648a3b7", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/verify.sh": "18cf93f64fa5b7301f837950df181cf08ee8c3efe1b3fb6803354549a7462618", + "research/complex-sw4-frame8/verify.py": "7706065e3d2934ea493910638b40e6285348d337507e0fb695d8d1e536926637", + "research/complex-sw4-frame8/verify.sh": "51474403117d5ab4d6afe6dada67d9af6654964dc03aeaed8716ec15dfc0b1eb", + "research/complex-sw4-frame8/verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "research/complex-sw4-frame8/verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "research/complex-t21-owners/DEPENDENCY-PINS.json": "7c47d44e8d5c24aa80afc70724e7c0381fec57ef80d085d2ee4611726a0f1254", + "research/complex-t21-owners/MANIFEST.json": "663a4300ec3abe2278ac6c8e49dd13dc58694c33bfadaa278c5406539e113a31", + "research/complex-t21-owners/NOTICE.md": "91fffbebc4bb0f3c1e4e81f239d3e7c44400c1f001a6fd5120572017bfb598f7", + "research/complex-t21-owners/PROOF.md": "78721b32fceb34b21b8e77c95381c38c60276e72e6d9c2e9c6262cb347457def", + "research/complex-t21-owners/README.md": "7d09210953f2fc66efd3bd0af0fdd899ed98c93645f80fc32934c8d19323dfa0", + "research/complex-t21-owners/VENDOR-PINS.json": "578100c9ed4812a161271a1b5c8036673f4b27d6cc1df560715ff2ea9a598f6d", + "research/complex-t21-owners/build_owners.py": "d1e6bbab8ea0de09048fc9737dd4a4713289ca69328efe71855e16fc55abfa57", + "research/complex-t21-owners/build_parent.py": "0b5a66641494e934e3e032982c31aa561b89975d6673e7db257f4efdf5b8c921", + "research/complex-t21-owners/check_parent.py": "0e158551680b06a7a3f4599b4dcb74bcfcb7f1e94fcaf9a46c9b7a95d1200a6e", + "research/complex-t21-owners/common.py": "41a2e8a4cc69251e7e31dd82b4776ccfe46033afa8dca59f45f5d3c377541ea7", + "research/complex-t21-owners/data/ADAPTER-EDITS.json": "507e45b14439c8a19e269ee3c92fe9f28c80bf93375696b51e6618494de2c46a", + "research/complex-t21-owners/data/CLAIM.json": "433d7bc4a371aaffeee35c12a1db6ea974722a85b799233626e1a57dcfdcb121", + "research/complex-t21-owners/data/EDITS.json": "a3bdecb4899af794427458eec0b7b13b404e2c822c1e8e152d4a4eb92cb10638", + "research/complex-t21-owners/data/SPEC.json": "f18777bc770f1c65d17c3fe3c5d04d341e42bec6c5beabc97b1ca599df7bfc5a", + "research/complex-t21-owners/data/T5-OWNERS.json.gz": "676e91f0ab18bdc93b3da067082506b779969dde32a38baacfc8576c327a3c54", + "research/complex-t21-owners/independent_check.py": "9d8c86bf45cdaef37f223c88704055ced503ee295645611e13f3fb9059a00e55", + "research/complex-t21-owners/owner_controls.py": "1b38c922aad0776a52ec47f0db6b0d53e8c556b872b908f1fe93892ff918804c", + "research/complex-t21-owners/package_controls.py": "6676ae2e17f13142e6d5df27367fd0633e0d5f592869b637fbf875e38ce7b642", + "research/complex-t21-owners/price.py": "b4510dd0d86322be627ff500e76a22f53cafa8405a699d04646dc3039167d569", + "research/complex-t21-owners/source_adapters.py": "d77c78189db392855b462b3bd11b690b0d0a066335b7b1ed25568c03bab04c09", + "research/complex-t21-owners/vendor/pr858/baseline_coverage.py": "c0cf6bb2035817a09e1abb5dc492d57af79f584bbd0c1cf5fe73ba0f8f604741", + "research/complex-t21-owners/vendor/pr858/independent_check.py": "dd552d627bbefc05ab3f6abbbd1640ba53b67e607002ebb7dd3d17bf03ae1e65", + "research/complex-t21-owners/vendor/pr870/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/complex-t21-owners/vendor/pr870/NOTICE.md": "e67a7bf357e62c130ed0df184c27d3b439b55c30e1c4c003c97bb1c6d0ab58e1", + "research/complex-t21-owners/vendor/pr870/PROOF-NOTE-BARCH.md": "c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d", + "research/complex-t21-owners/vendor/pr870/PROOF-NOTE-T16.md": "b13621111876dee62367d7ee8e9b46c3707145d5f08914b0932d0960ee700d43", + "research/complex-t21-owners/vendor/pr870/SOURCES.json": "a7c2f2d21d535439b729f4d1245fa6a9bb24a148d877c1298e9bbdbcf251067f", + "research/complex-t21-owners/vendor/pr870/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/complex-t21-owners/vendor/pr870/code/assemble.py": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a", + "research/complex-t21-owners/vendor/pr870/code/assembly_controls.py": "da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d", + "research/complex-t21-owners/vendor/pr870/code/audit_allcold.py": "1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc", + "research/complex-t21-owners/vendor/pr870/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/complex-t21-owners/vendor/pr870/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/complex-t21-owners/vendor/pr870/code/emit_allcold.py": "354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e", + "research/complex-t21-owners/vendor/pr870/code/freeze_spec.py": "5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2", + "research/complex-t21-owners/vendor/pr870/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-t21-owners/vendor/pr870/code/invoice_allcold.py": "71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8", + "research/complex-t21-owners/vendor/pr870/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/complex-t21-owners/vendor/pr870/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/complex-t21-owners/vendor/pr870/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/complex-t21-owners/vendor/pr870/construction/barch/LOCAL-PINS-barch-U8.json": "2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5", + "research/complex-t21-owners/vendor/pr870/construction/barch/RECIPE-U8.json": "292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652", + "research/complex-t21-owners/vendor/pr870/construction/barch/build_tri.py": "0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e", + "research/complex-t21-owners/vendor/pr870/construction/barch/reproduce_barch.py": "19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1", + "research/complex-t21-owners/vendor/pr870/construction/barch/run_controls.py": "42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476", + "research/complex-t21-owners/vendor/pr870/construction/layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "research/complex-t21-owners/vendor/pr870/construction/layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "research/complex-t21-owners/vendor/pr870/data/T8/PLAN.json": "673fd8e812fadcfb757264aba2d7e1abee9199457ed52e678ac65796cd4c1b70", + "research/complex-t21-owners/vendor/pr870/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/complex-t21-owners/vendor/pr870/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/complex-t21-owners/vendor/pr870/independent/price_profile_t16.py": "53f8e62dcf27bee032c1bee0245d126a9c8a12ebcf24f6aaff65ea3122fffe29", + "research/complex-t21-owners/vendor/pr870/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/complex-t21-owners/vendor/pr870/t16/NOTICE.md": "902370e6bfcd39dbea2ece474f15fccbcce3b8e966b2b94066bd03e5174591b5", + "research/complex-t21-owners/vendor/pr870/t16/build_owners.py": "faf14dd99b331a8bc5d35e3497bdb9c26fcea24ce2ee74f0dfeae87883af8db4", + "research/complex-t21-owners/vendor/pr870/t16/build_parent.py": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "research/complex-t21-owners/verify.py": "2ee09291148a81ffead860c2237ebcef47a1f02ca5f0833cf5230532ba61243e", + "research/complex-t37-owners/ALL-T-PROOF.md": "4c0c71ccd0afb850538af1b467e5208b7eb3edd0260fded84e02a8c01dfc868b", + "research/complex-t37-owners/CLAIM.json": "a383da34ee22da831fa436ad3483568ae1fcd62cd76581f2c2dd2b6473b346fb", + "research/complex-t37-owners/DEPENDENCY-PINS.json": "0160ea2677cc9ceeb0f861dc2774d470a27cbaa58b8fd6c064cf0683d18f3e87", + "research/complex-t37-owners/EDITS.json": "cd28d8014fe6576a56a640d9a94b6b3fbd7715ea1a6c2858c1597b3c9fb51576", + "research/complex-t37-owners/MANIFEST.json": "38907d05fddac9be6bf7a7aff47fae43114a055d2259cead5651a08f9b983820", + "research/complex-t37-owners/NOTICE.md": "78887899d460a21fc6bf6e6021fea7f6864a93e079b639e7c92d4dc77ca30c1e", + "research/complex-t37-owners/ORDER.json": "2093ca4050e1ce95621f4702bebe8b01b36773b1ecfa2c0d6275e132bd33d578", + "research/complex-t37-owners/OWNERS.json.gz": "f89e00863c8415d1df1de9c481528f677eeda808ef3cd83bfa5ca3e7d9360f5a", + "research/complex-t37-owners/PREDECESSOR.json": "3639c960052fa67c350ae0fdd7b70e3fff99709fa35a54335cc38dc8a8f41ac4", + "research/complex-t37-owners/PROOF.md": "09b39ad0d5f1f59f54dcff15c16640f7a7acf27e6597660acaf957b95c7e8510", + "research/complex-t37-owners/README.md": "7f7fc22918132a20b4b6248f20e5850586394fe1d3356d49b5ade5df43053b0a", + "research/complex-t37-owners/binding_controls.py": "87216d5efce156e32cea3b9908ef0ace984a6fbe300a8eac5f5750a5171eabb5", + "research/complex-t37-owners/common.py": "b85769c7c29429da7ce9eed55f0ed5f672e2bedc0d894ae02bf9be8c86a638e1", + "research/complex-t37-owners/evidence/ALL-T-BOUND.json": "5101909cf84a2bfce777dcc34075ffcfe5c135debd16fa56ef7273523b434a35", + "research/complex-t37-owners/evidence/ASSEMBLY.json": "63dfe017fe0a955fd6b12aa04c542dc5ae669581811a96214de587440b0b81a7", + "research/complex-t37-owners/evidence/README.md": "859ada21a8f584b9f301758ef477059abf7d5db7dbf5f75f7ff273bd97d7e00b", + "research/complex-t37-owners/final_binding.py": "61e8a8856ebc36feee11cbf6e60f2ace3b9b89195c3282f565a651488cf947f7", + "research/complex-t37-owners/independent/all_t_bound.py": "3f8637a90baaa11ef18eab9e739d17b32fcff18fbc50c355f9ef32727a92e4f6", + "research/complex-t37-owners/independent/check_payload_controls.py": "5b59c6f50c0d79c5857dd4efefdd0fb472ba72fbaafa91596a5a3159500e98cf", + "research/complex-t37-owners/independent/check_t37.py": "af77010b89db12d58030579e19273f960abb301f651361b448e8caf82d8355a9", + "research/complex-t37-owners/independent/verify_construct.py": "094a93a7edd3c63890d0313a0ff8b71e335f570cfa548b9b20d8809e3d05abd2", + "research/complex-t37-owners/package.py": "7022764ffd5abb8c869cf2269cc8fb188f574560c379abb00b40aba671d22278", + "research/complex-t37-owners/package_controls.py": "f152d1cb57dd63af5abdaea88f03090ec7e24b8eb90d30b9b659030cb89c9991", + "research/complex-t37-owners/prepare.py": "8414859fc69885e5698fb3dbe0f7d9ee20d9782102e0abf7da991c904920fe47", + "research/complex-t37-owners/replay.py": "7834f469861df4a8ed82550762e7d1640123f547a715b55a937dea0cb381cedd", + "research/complex-t37-owners/verify.py": "4d880a6237c2f5d4f4e08374e2a4ddbe7bdcc972fe4ee0e879e9a547754f5fd0", + "research/direct-delivery504-global/EXPECTED.json": "0c4c7df98633ace6dd3f1604462dd509945f6b2d463a0b045442b785906101f1", + "research/e8-bit-carrier-skeleton/EXPECTED.json": "3494ba83280cc86548fe0cc6695c50d23e6b6ffca85aeb1a33337c1196e280cb", + "research/e8-bit-carrier-skeleton/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-carrier-skeleton/MANIFEST.sha256": "7f25c41d0400ef5adf763eae6e166003a9b59e5a655b860c04b052f6731c7297", + "research/e8-bit-carrier-skeleton/NOTICE.md": "5f4b7fcbf99f572be28b6da612ce775363908cdfc7810f7aca167be01c86e49a", + "research/e8-bit-carrier-skeleton/README.md": "e5212e8058c92a2b02cc12b4e174a65ce1cef7b4d7977ae770e64f5ff91b7204", + "research/e8-bit-carrier-skeleton/SOURCE-pr370.json": "03de1d341196cfa8cf1d39f3cc8648b25bb5f39c3c602a728cfbd089e8253ac0", + "research/e8-bit-carrier-skeleton/SOURCE-pr381.json": "16b1977240ca9acb58fa64572fb4231a423bc10bbf3e7bb30f1c8201fe369ba5", + "research/e8-bit-carrier-skeleton/SOURCE-pr386.json": "87c659ba932525631a40be14dca28a6a2efade8641f23bb08d6e1567fc991131", + "research/e8-bit-carrier-skeleton/SOURCE-pr436.json": "4a4f99f5bdb7530a0dcf9433f7f02afbf2abf908e718f7c63ffa5503d4f49693", + "research/e8-bit-carrier-skeleton/SOURCE-pr445.json": "e6f4a272442bb71ef68aaa3545b271236f9c99297e444fa01c62b0b5fb6a170f", + "research/e8-bit-carrier-skeleton/SOURCE-pr448.json": "c771fa9be492408a78d6d970c839e68c4dfd1b66f4f4a4748e3d12726a43cf27", + "research/e8-bit-carrier-skeleton/SOURCE-pr451.json": "a639956eec858341987a815b7464ef472505300db754b5f9ac012dd01d18c8df", + "research/e8-bit-carrier-skeleton/SOURCE-pr458.json": "cbdea984a46ab5de354b95e73fd76c1918fdc6676c658398a552772c4dc3dcaf", + "research/e8-bit-carrier-skeleton/SOURCE-pr471.json": "499d861e090c9e646d978dd67890a8e58a9ff6bf08512684e66605179132076b", + "research/e8-bit-carrier-skeleton/SOURCE-pr472.json": "6753bcf50c91806b75dd4dbe3963a79699a614d0dab8ce32b261cc3e76b288b1", + "research/e8-bit-carrier-skeleton/SOURCE-pr473.json": "2515c4f23dfa22a21913d92597669770f7f44c2a5b3ef069ef68a0c89779a656", + "research/e8-bit-carrier-skeleton/SOURCE-pr478.json": "9c7c4ea678865a955b0c89f0952927159976fdf55cadc6a488dec5757f03fe7d", + "research/e8-bit-carrier-skeleton/SOURCE-pr483.json": "24e3eab4a985e115adb7f8665a401423e9636e9f16cc4373ec68cc86950445a8", + "research/e8-bit-carrier-skeleton/SOURCE-pr484.json": "b92f43fbcba3921a1aa37bcb9f05cf5fa612ff708785e05512438a6317bf0867", + "research/e8-bit-carrier-skeleton/code/bit/checkers/columns_h.cpp": "d1297f9052be4f2496e1ff2a77e4db2c0cdbd7d460d489b4c03e50bf317238ce", + "research/e8-bit-carrier-skeleton/code/bit/checkers/columns_k.cpp": "1c344d18fcd494eeca93e259f10cafae7705780e6592f6dcb35b34752dab9bc2", + "research/e8-bit-carrier-skeleton/code/bit/checkers/gram_frames.py": "223a5a07731fc315a90a3e48177796babc155c1d9985c7ae5017eff6af2a0608", + "research/e8-bit-carrier-skeleton/code/bit/checkers/json.hpp": "aaf127c04cb31c406e5b04a63f1ae89369fccde6d8fa7cdda1ed4f32dfc5de63", + "research/e8-bit-carrier-skeleton/code/bit/checkers/legality_h.cpp": "6c1ef2b24e57781d6951c172a1024fc4300e6fd392c9d6672079a7806ab663b3", + "research/e8-bit-carrier-skeleton/code/bit/export_records.py": "8a5999601f917dbb492bb9ae9a344611f18cc7cedc53dc3c76496a369e530eb3", + "research/e8-bit-carrier-skeleton/code/bit/independent/checkword.py": "11bf9620ca9db16d52d9fe806b814fc9ec9a89c4d7645354d1861d96f6e805ad", + "research/e8-bit-carrier-skeleton/code/bit/independent/interface.py": "2c63a039f97e3a11ce5a6b83302d4f5beda160c1db14164a5a9b0855aeb19d3c", + "research/e8-bit-carrier-skeleton/code/bit/independent/mutate.py": "0ff65aace5da4b57d96235bf830f8f11969322e75134d498aeb70e9753ec6b0d", + "research/e8-bit-carrier-skeleton/code/bit/independent/mutate_mut.py": "3b002c19a5dcca76a5594f2a30fac7c01d2b45fc96b3e7cfbfd8b720f5ffb4e8", + "research/e8-bit-carrier-skeleton/code/bit/independent/relax.py": "d6e9f58de3fa41f538516b6227c249d61fb30f0f6843027cc8a07a1a372fa6b6", + "research/e8-bit-carrier-skeleton/code/bit/mutate_records.py": "b0e75d6550412a7be4017695e6b237392b611bb852ad8ff309d6682c9f166a4e", + "research/e8-bit-carrier-skeleton/code/bit/mutate_records_mut.py": "a9e085ec60d5657cd5d77832e3d95004e81b9f4f249d9e0fc95e345366cb2d2e", + "research/e8-bit-carrier-skeleton/code/bit/regression/stage_cohort.py": "6c288f6f234b528c1a7c0a4adfb724e91e0fe6b18c8dffad96af3f973de1829a", + "research/e8-bit-carrier-skeleton/code/cited.py": "a4c2dd4755f2a45ceda327b36d9ee400c2804893000626ca8ff3f6ee296fd842", + "research/e8-bit-carrier-skeleton/code/eleven/adapt.py": "d8a8c13b484d985f0133a5d06de4a78b8477314f922b9f693ba73640b7184d6b", + "research/e8-bit-carrier-skeleton/code/eleven/assemble.py": "c47889a606701ae592374dd82a13cee8c5a4e8449b7facfdad2d90563a30a18c", + "research/e8-bit-carrier-skeleton/code/eleven/audit.py": "5ad832830c19ec6c904d1b64480f6b1e71c5673fdd38d487d17e179b1d197c09", + "research/e8-bit-carrier-skeleton/code/eleven/emit.py": "b0b25955875625ed63f82690f83aef976e3e9a978ae6620b23a23fc1207acd46", + "research/e8-bit-carrier-skeleton/code/eleven/local_audit.py": "95275473d7f9811011bda760dd0f04de5169c2a6922456dc9a5725a5d671f941", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/code/assemble.py": "abb60c35e448e0f94073f38a0352d11249aaf7bb8dbd7352414ae60a1d2b79c3", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/code/audit.py": "d28062127a9b0d3866a3b79aad98a307233b20ebdb94cfb9f197d726b82ffea5", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/code/emit.py": "98d77cefbc3a76f9f10bd7df3a2590ab88b411f6afe77b5f8d73f1602eb2bef3", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/code/local_audit.py": "23eda3fe3d774e7f2dbf4dbdd4ff90d69ae7d1762ff95c8629cdc7667aa3fe71", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/data/hosting.json": "765382d4fefd594e94c8c5826ec6300422ce9f79c816d7f7323ef85e99320f28", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/data/residual-isometries.json": "750221cc66badd0ed0a74e7aad2d59f91f89c107370af21c6d929fbdd4a08a9f", + "research/e8-bit-carrier-skeleton/code/hub/e8-r715-whole-hosted/data/word.json.gz": "b2af02f593cd161bea64e6cd793508386914136be519f80726c071697379d5a9", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/bank_routes.py": "7c6997c455bd55acca3a1603797c34e7733d557c27a7694a1429ff15773a505d", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/e8core.py": "1cb286196c1530d06f50f0997febc5993b388f33464e295611b920ba30a24eeb", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/code/tile_m.py": "d6ae4a556472d403773cd2117c992bfc10e1187112da1b3893f3fae628a131dd", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/data/residual-isometries.json": "e12ed7ddd13cee101ba74a083b54665fd64d0b122b0bad5b83d817dcc8bae9d8", + "research/e8-bit-carrier-skeleton/code/hub/e8-r740-replica32/data/word.json.gz": "d8d6d3d3f336720302bc40b3c1504fe3c3583a7a8d707bb9bd7b21f85e5e69c6", + "research/e8-bit-carrier-skeleton/code/hub/idle-axis-hosting/hosting_core.py": "d8b90cd5d152df3c7c351230863d9e61816ad5e1f21d69bea1a86a5daad559a3", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-eleven/code/emit.py": "ac63ee481f3d75cb9f0658faaa2412db81d55bc44d9f1ff1c0329ce1e75aa0d4", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-eleven/code/geometry.py": "9554182d67e434ea84b4430f909a2c400abc755d8487b51454a8e6968e62859d", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-eleven/code/row_bound.py": "de4a9b9cd797e1a05da56f62cfe725c8728cea3a4aa031b7d1b0a68f869760d6", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-eleven/data/selection.json": "52dbbb68e8c147690d15eaa1d952df05d074b0c121885a4159d9f6732f391872", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-rank149/code/emit.py": "ac63ee481f3d75cb9f0658faaa2412db81d55bc44d9f1ff1c0329ce1e75aa0d4", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-rank149/data/residual-isometries.json": "b23fda74a7979179e8fd83ee9870c1e232442cc90c05077adaabfe31d050d1e4", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-rank149/data/selection.json": "4d9c2cf6a3d31a6faa287731e0721cb16601b0bc5c1a186b9645bfb5760ce8db", + "research/e8-bit-carrier-skeleton/code/hub/r740-hosted-rank149/data/word.json.gz": "41626789888ee070e1b435fa380b10ab9b88e3cf7d8d8e166ecef17269bbcf47", + "research/e8-bit-carrier-skeleton/code/nine/geometry.py": "36eeda3184bd009e89462b65c8725d10860c444f8da8f1f87e5f6e50120011ca", + "research/e8-bit-carrier-skeleton/code/pricing/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/e8-bit-carrier-skeleton/code/pricing/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/e8-bit-carrier-skeleton/code/pricing/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/e8-bit-carrier-skeleton/code/pricing/prime_witnesses.py": "98cd03bc9582e7bd0ab194c191ea8eea940539e510051443ab9fd3e572a364ab", + "research/e8-bit-carrier-skeleton/code/provenance.py": "e28fd87d0e34a6f6f6f1fddb6c4891deac220662c954de855d7aa5a7f9cceca4", + "research/e8-bit-carrier-skeleton/code/skeleton/e8.py": "721d859a6517d665ca84d03ef89668da3aae7433ffb0ee47faf37f2aeb85450e", + "research/e8-bit-carrier-skeleton/code/skeleton/gen.py": "7cdcf48078ed4beacd2e240aa8145e4aa6984558748d07659cb1b252786e073a", + "research/e8-bit-carrier-skeleton/code/skeleton/geom.py": "bb356568fa05e7bfd5fcd9012903611cf742729a99b4dc3a13685355b2678ae3", + "research/e8-bit-carrier-skeleton/code/skeleton/wordkit.py": "2b6c12d96f24a4e81f2c807827c2b74cf80037367fc8034e8c871dd5ce008351", + "research/e8-bit-carrier-skeleton/data/bit/bitE8-r865.json.gz": "1fb726ea3818fe0837cceb0dd22a71a0814f064e5e781628104610d6468e0e55", + "research/e8-bit-carrier-skeleton/data/bit/bitE8mut-r489.json.gz": "835eb96e147740fc7454f8cfb3dbd34ae89524b1dbd89a61e9288eae8ab6a5b9", + "research/e8-bit-carrier-skeleton/data/complex-b.json": "dce3f4b76aa3f6c3ba826ce556ffa61398b33e81e4d1a226dd2a36ce684fb02e", + "research/e8-bit-carrier-skeleton/data/complex/pr448/EXPECTED.json": "18b42250c3faf6f0df76fcab6c3a483582192ad7bb09cb1985f4b0bb91d67024", + "research/e8-bit-carrier-skeleton/data/complex/pr458/EXPECTED.json": "a4312cb0c53c2066a28b683a971a41e7d76c5f6d828a96481c3ae7b3c01bb2f3", + "research/e8-bit-carrier-skeleton/data/complex/pr471/EXPECTED.json": "188f9d1a7450496dbfd8d64381febd20b0597141537eb1a003435297df2d1720", + "research/e8-bit-carrier-skeleton/data/complex/pr473/EXPECTED.json": "70e515f0a5a2f9508cd030d35a99f90981a6eccc027c9ad5a3c77f5860310910", + "research/e8-bit-carrier-skeleton/data/complex/pr478/EXPECTED.json": "07bd05d14c71df8925b0b03510b2b337334b73ac425a94e03b2ec34ed2680164", + "research/e8-bit-carrier-skeleton/data/complex/pr483/EXPECTED.json": "799fa4ab2f785c478c3cdcb6c1c0428a5ce6e3ddbe4a4b2fd88630d811a593f6", + "research/e8-bit-carrier-skeleton/data/complex/pr484/EXPECTED.json": "0c93018a23bc573c7d155d4786e0c3978e95be0fda974076697939a1a1d8e5be", + "research/e8-bit-carrier-skeleton/data/eleven/hosting.json": "61f790657c465d16d3455f48f90f816797b9ea08bf02dbd0c90d2cf41836257e", + "research/e8-bit-carrier-skeleton/data/eleven/residual-isometries.json": "0fa5b353a0321af2ce4e2045db1d4c2d6418a11663894e2afcdb1eaa1984bddc", + "research/e8-bit-carrier-skeleton/data/skeleton/d4part-pairs.json": "d69ffe3326140bc541b8f1639e02db43a5835ab8ca02cc742b5bee2bf2ef1ba9", + "research/e8-bit-carrier-skeleton/data/skeleton/plan-skB.json": "f6162bb4d8092bc233700fa7ebc6a0d79f2893135aee18e998369044abb3f44b", + "research/e8-bit-carrier-skeleton/discovery/README.md": "b09aa45d5651720e10326cde559c863ba3ea45fe2fb6b4aaa3bfaa66a8fcf69f", + "research/e8-bit-carrier-skeleton/discovery/d4part.py": "a64927c340a4772ce0682b349e0c90c80d1a766000ccf397fb41b36a31929179", + "research/e8-bit-carrier-skeleton/discovery/host_select.py": "2aaaac18e083d289d4341e734c32571c89c51fefba04b388d407c7372b906dc7", + "research/e8-bit-carrier-skeleton/discovery/plan.py": "40e8dea1b4b71c5afd5993625f57bcac089dd2f72dfbc4dbc23ce917e5a61010", + "research/e8-bit-carrier-skeleton/portable-include/bits/stdc++.h": "420094be2af295eed03a983dd66debbbe9cfb78d8252859f4498a615a0074b99", + "research/e8-bit-carrier-skeleton/requirements.txt": "6023d480f929cdfa4e2f35e361eea003451cd6695af806935a32038b0115abb5", + "research/e8-bit-carrier-skeleton/verify.sh": "0f9248aa3611dfe2b5d59dbe992c6f7d21a0cc4f1de2b5ed05a6110191191224", + "research/e8-bit-p111-tuned/DEPENDS.json": "fa9253078c444b8f4a57e849048f727c3c8233c3dc3c7f651bef2cf7bb0178c5", + "research/e8-bit-p111-tuned/EXPECTED.json": "7c2675fd49afd7e328606399a4421fd49c43fe8a6c5b57154cc908c00588abe2", + "research/e8-bit-p111-tuned/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/e8-bit-p111-tuned/MANIFEST.sha256": "8d8fc2625b71b835176b666385c69fa4d1e4c5839e8e601924db2c9261761310", + "research/e8-bit-p111-tuned/NOTICE.md": "5b88eb2b7de76aa2a3288ee3c7a08d18a5eadfa82f5e7a99e207d232aed71221", + "research/e8-bit-p111-tuned/README.md": "a054ce8453e2936d45c4edd1c3678993903fcf6705ac241b9f1a4c4f9accda2d", + "research/e8-bit-p111-tuned/SOURCE-pr510.json": "5e84c26ba837ce029acd1b5089e5533d2ebde793deede84215322112e95e06f8", + "research/e8-bit-p111-tuned/SOURCE-pr535.json": "74254fde5cff5580d5c199b139ff3ce31a3defded3f653a3ba83cf0c9204ddc4", + "research/e8-bit-p111-tuned/SOURCE-pr544.json": "9ae1cfa69158f678499510e9cf24396b2bdd9b68979e906cbb8d4ee29b63e0b9", + "research/e8-bit-p111-tuned/SOURCE-pr545.json": "4b868b05c092eb821b257eab0f429f7c502fde946dd6508e8f5161a8758b4904", + "research/e8-bit-p111-tuned/SOURCE-pr548.json": "4480cd4e1dd0dc2bf55c26a1ae4a8bbb8587a96cea3053687e5d4c874148043e", + "research/e8-bit-p111-tuned/code/adapt9p.py": "14365d0eb8f4a7352edd28816196148fd28d5bbcb36044ebeeb15ca051bca9de", + "research/e8-bit-p111-tuned/code/cited.py": "8f7852571a897e131cf964d4b7826dc7bb2b7a42e81892d436f8ea092b26ef7d", + "research/e8-bit-p111-tuned/code/gen_p3.py": "438b83f10d70ceca7cf78049420204b7de2dc61682f913c50a62596106ad84cd", + "research/e8-bit-p111-tuned/code/mutants.py": "e2fd3429e2db4389ae8a5ab47dda89f551b0d0952c42fad5ac8d38a85d670594", + "research/e8-bit-p111-tuned/code/mutants_p.py": "ee2a2cfb44072a214dd29eae5b96a71b258ac886a05456b84d600de94b339591", + "research/e8-bit-p111-tuned/code/mutrec_b.py": "231cbf26bfe5e6824347e4556959941d8b4dea1efa06d7f88d7a73cca8b03158", + "research/e8-bit-p111-tuned/code/nodeopt.py": "6a5896f60b1fe05c41ab28ce822dff782c635e12d0c74fad20b5ce2a4010fa3f", + "research/e8-bit-p111-tuned/code/planio.py": "c0a687f61aed29455cea953d8a3e49a32136edb3cd4213c46880c146a6ca7fa3", + "research/e8-bit-p111-tuned/code/provenance.py": "aade757c1e4e2714207cbc80a9a60793d84b5f009de2cac79ee8d3239986fd2a", + "research/e8-bit-p111-tuned/code/pwordl.py": "6d8fccd44508e4705b6446e0a64482a5221a3efc5663c5ca7ae90d44581ac50a", + "research/e8-bit-p111-tuned/code/receipt_kappa.py": "6ac4cb3c6015bd46f3b0a88dfffce741d8942a703cc68738ad61953fae485e9e", + "research/e8-bit-p111-tuned/code/summary.py": "c7599cafe1a2330a2fc8a956dca457f802dbb8b04e4dc4ffa9d90890e5efb428", + "research/e8-bit-p111-tuned/code/xcheck_p.py": "af3decc877e27c00001cf56f50c6c09566e8e101297ab34c7860aed96a06d80e", + "research/e8-bit-p111-tuned/data/bitE8mut-p111.json.gz": "1bc3c53d4baf4927c6a00c339ea3975516471a48074d4d97c6addaded2a4d858", + "research/e8-bit-p111-tuned/data/complex-b.json": "96943a080f371392381c70676638c7b3281ffc44f96b50d7ab064f59aa9897c0", + "research/e8-bit-p111-tuned/data/complex/pr535/EXACT-ASSEMBLY-PR493.json": "3f4be566309841e00e842d5686f7937a355ae1a6a2eaa3ccb07bdf8a9ca604fb", + "research/e8-bit-p111-tuned/data/complex/pr535/EXPECTED.json": "cb734055c36681d38cf431a6926b7713351a94073cfba37d70a5384a9ef0d178", + "research/e8-bit-p111-tuned/data/complex/pr544/EXACT-ASSEMBLY.json": "eaacbe5a9b971b20f59503a5e948c1ba76c5e082f81a012c9cc7394494bc4db5", + "research/e8-bit-p111-tuned/data/complex/pr544/EXPECTED.json": "8f48531cb1ccc6c1fe7c80ba5990f8aea4278dbe9394bcc4d3f471a3e8d75f1c", + "research/e8-bit-p111-tuned/data/complex/pr548/EXACT-ASSEMBLY.json": "8c40d6a7907c2ba71284d4f29a2d6e6bbe4dfc5da92a6da1bbac13488b916349", + "research/e8-bit-p111-tuned/data/complex/pr548/EXPECTED.json": "2e458dd9880d001b63153e37ef7954c6bcfceae378ab4b225cfa1c94ea8e23ce", + "research/e8-bit-p111-tuned/data/hosting11-p111.json": "1f5a1142e0119483cabf9a4d99094d988014d1adaa29370e93f4b4a63d9bfd7f", + "research/e8-bit-p111-tuned/data/plan-l3.json": "d5c2494b4baae801143049e172db303b3c8e25a002e9d9715a1d79dcb2d74c58", + "research/e8-bit-p111-tuned/data/punct.json": "dd371e1d6fe57602f242920b582ec4c133efc8ede4a849fd701ac90b7f6e1853", + "research/e8-bit-p111-tuned/data/selection9-p111.json": "4ab1ed4529683cd184987f8bc3031fb7408b9cd22c25ab9cf541a8aaf896eaf1", + "research/e8-bit-p111-tuned/discovery/choose.py": "18d77e8f62ffc671b3b3d3e50626c03481a2eaf6fb4abbc131e08226feebc180", + "research/e8-bit-p111-tuned/discovery/search.py": "edd876212edf0db3f6620534dcf50b5d2c23197c2d5f8af8c030ed5bc8447923", + "research/e8-bit-p111-tuned/requirements.txt": "e11a6f5c2a40b77fbf54a31a4c45bac575e9d2f765d35b657406d5f088fd0664", + "research/e8-bit-p111-tuned/tune/EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/e8-bit-p111-tuned/tune/README.md": "46c7917fb252949f38b7bcd88cf568efc282e3ea065b61d11e457e41673d0b2d", + "research/e8-bit-p111-tuned/tune/apply.py": "806ae4cb2648e4f05dcf56bd089891fd3ba33a6ee5fe76d3329e322c6770c1a1", + "research/e8-bit-p111-tuned/tune/bitE8mut-p111-tuned.json.gz": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "research/e8-bit-p111-tuned/tune/fastc.py": "ae51f1fbb22b8c8dac8aab787c798361f6aa5d4e1fefb29e43d0197899d4eab5", + "research/e8-bit-p111-tuned/tune/moves.json": "a113933002239eb2dd32726bd572ba8ca41b5bce0d438327dd770754c8d5e0f4", + "research/e8-bit-p111-tuned/tune/summary.py": "24841f9f5b039f05cfa934295203c982faf181cf28b9b1a71e50d1a35dc723d0", + "research/e8-bit-p111-tuned/tune/tune.py": "bdaf632852c514b257bcb1b81004a942fc022ab876565b4e5f6ff5a038d323c2", + "research/e8-bit-p111-tuned/tune/verify.sh": "efb1051d3e2c6119574a29a8e4efbe316307b5901d05079d029e12fae9ff1fb1", + "research/e8-bit-p111-tuned/tune/wlib.py": "a37fdf3cdf5f62945c2a90193401c0e9edc9dd3cda8d8cb36a3b9c329ebe4dbc", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-dead-totals/data/bitE8mut-r480.json.gz": "92e399e9a486b55229b5624632ac54f800dd9e022f2aee97f1e5f264bbc0ef5c", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/EXPECTED.json": "883f7a1a84f31d9e4430e348bc8d9c1ec10210b206ff602dbe126349056af13d", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/code/adapt.py": "27b6b77cc4ebf439f9019e63a22dedc1ef72ee65fe120aad3d17316b1df06d7b", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/code/assemble9.py": "4bf6768224a3fac81ccda26df24f3763f9a4fbc35ad62bef2888595cdae519fe", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/data/selection9-r480.json": "8176db518bed23ea8121543bfb18085ec6633064142ba40ac5db00f63b06553d", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/audit_hosted_k.py": "57e558c80a2fea6e291587b04afd76dfaee3550729997798b61f33daf90b8ec9", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/audit_parent_k.py": "374e1d983589463bbfa06b6e9f2ffafb9d2c14acf97b1f858593a3cef90e93d2", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/bank_routes_k.py": "ea678a7befda10c6f1b9dd38a36fe1437c6468472bd649f60b9f01522047e0bf", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/emit_k.py": "298b16c3d4f58a468ad1a64564c8500cb281414a3f3c0428fd467908eeb4a4b4", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/global_k.py": "6368196a393ac25bb2918880e4c4bd31ed733b762c27b6873ab391cbc0c5c3c8", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r715-eleven-stage-whole/code/hosting_k.py": "081c3b95b18d900d97ce82af64fb428f085b6adc6d8ca93ea920797dad7eb81e", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/bank_routes.py": "7c6997c455bd55acca3a1603797c34e7733d557c27a7694a1429ff15773a505d", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/config.py": "283d7fad45155ee91e704d63ec947cf4a60aeff5cc43510bc0e835f7da7d8767", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/e8core.py": "1cb286196c1530d06f50f0997febc5993b388f33464e295611b920ba30a24eeb", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/e8-r740-replica32/code/tile_m.py": "d6ae4a556472d403773cd2117c992bfc10e1187112da1b3893f3fae628a131dd", + "research/e8-bit-p111-tuned/vendor/pr510/e8-r480-nine-stage/vendor/idle-axis-hosting/hosting_core.py": "d8b90cd5d152df3c7c351230863d9e61816ad5e1f21d69bea1a86a5daad559a3", + "research/e8-bit-p111-tuned/vendor/pr545/EXPECTED.json": "dd078d075b153ea2ed02a4bbd1fe467315930f4d7dc90f2c34cd2c33e06a5029", + "research/e8-bit-p111-tuned/vendor/pr545/code/adapt.py": "b9a50303147a3003ad94fc4b1a822d4fca7f9b9e917d165e3c45152575302a0e", + "research/e8-bit-p111-tuned/vendor/pr545/code/punct_cfg.py": "7cedd3416d6a8ce2e6393cea32dc1d11032190787a593a0ad964a0b62fc407f3", + "research/e8-bit-p111-tuned/vendor/pr545/data/bitE8mut-v111-r489.json.gz": "c78317ab05ea175dc380f4dce2bafdbcd7e8b46f0c9d6baf350c2f604bb3ae4e", + "research/e8-bit-p111-tuned/vendor/pr545/data/hosting-v111-r489.json": "862155e5c341053668ac1a18db05591417c38b9fe5f395d64a3b0a17a1502042", + "research/e8-bit-p111-tuned/verify.sh": "3bb8abf984e98fccf77914ae56d51eb60aab284db677905c1c4aafeacc44eee0", + "research/gauge44-frames-x/CONSTRUCTION.md": "7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea", + "research/gauge44-frames-x/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/gauge44-frames-x/LOCAL-VALIDATION.json": "f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e", + "research/gauge44-frames-x/MANIFEST.json": "e1b7998c8f7cb24f8674d250d0510f2b5b351b2ed0b35f17a17e6bacf3d9824b", + "research/gauge44-frames-x/NOTICE.md": "ca9031d8f3f91d074055a6675772be343f05ac3bd30d73259ff292fbe3196666", + "research/gauge44-frames-x/PROOF-NOTE-BIT.md": "e5e96ddd1e7b3cb6d30bed8e5979fc1e9233ed9f10d77a943bdaf4e52cce0b9d", + "research/gauge44-frames-x/PROOF-NOTE-FRAMES-X4.md": "39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036", + "research/gauge44-frames-x/PROOF-NOTE-LAYERS.md": "92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f", + "research/gauge44-frames-x/PROOF-NOTE-NOTRI.md": "774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414", + "research/gauge44-frames-x/PROOF-NOTE-P6N.md": "cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d", + "research/gauge44-frames-x/PROOF-NOTE-PROMO.md": "c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae", + "research/gauge44-frames-x/PROOF-NOTE-SW4.md": "d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d", + "research/gauge44-frames-x/README.md": "a086b31dcbfe273006a9a90b56a9703f3679114c9f988f8868f3c5f1ff783f3d", + "research/gauge44-frames-x/RESULT.json": "793ef51c6fc919e092708d24aa1eebf8535d741bb5beb02461b11c9e33d00c8b", + "research/gauge44-frames-x/SOURCES.json": "22af1dcd24763ba391f0c950643a93f5fa83afc396272366518a9953d2942cff", + "research/gauge44-frames-x/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/gauge44-frames-x/code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "research/gauge44-frames-x/code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "research/gauge44-frames-x/code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "research/gauge44-frames-x/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/gauge44-frames-x/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/gauge44-frames-x/code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "research/gauge44-frames-x/code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "research/gauge44-frames-x/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/gauge44-frames-x/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/gauge44-frames-x/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/gauge44-frames-x/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/gauge44-frames-x/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/gauge44-frames-x/construction/COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "research/gauge44-frames-x/construction/COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "research/gauge44-frames-x/construction/INPUTS.json": "edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99", + "research/gauge44-frames-x/construction/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/gauge44-frames-x/construction/NOTICE.md": "defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816", + "research/gauge44-frames-x/construction/REBUILD-CHECKS.json": "1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91", + "research/gauge44-frames-x/construction/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/gauge44-frames-x/construction/build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "research/gauge44-frames-x/construction/construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "research/gauge44-frames-x/construction/frames/FRAME-RECIPE-sw4.json": "a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473", + "research/gauge44-frames-x/construction/frames/LOCAL-PINS-frames-sw4.json": "bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f", + "research/gauge44-frames-x/construction/frames/build_frames.py": "200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb", + "research/gauge44-frames-x/construction/frames/frame_controls.py": "477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77", + "research/gauge44-frames-x/construction/frames/reproduce_frames.py": "dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832", + "research/gauge44-frames-x/construction/jx/LOCAL-PINS-jx-X4.json": "95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974", + "research/gauge44-frames-x/construction/jx/RECIPE-X4.json": "9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd", + "research/gauge44-frames-x/construction/jx/build_jx.py": "3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916", + "research/gauge44-frames-x/construction/jx/reproduce_jx.py": "5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c", + "research/gauge44-frames-x/construction/layers/build_pivot_swap.py": "8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8", + "research/gauge44-frames-x/construction/layers/layer_end_controls.py": "7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef", + "research/gauge44-frames-x/construction/layers/reproduce_layers.py": "435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e", + "research/gauge44-frames-x/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz": "3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0", + "research/gauge44-frames-x/construction/layers_np/HPE-RECIPE-NP.json": "43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1", + "research/gauge44-frames-x/construction/layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "research/gauge44-frames-x/construction/layers_np/reproduce_np.py": "1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c", + "research/gauge44-frames-x/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz": "17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4", + "research/gauge44-frames-x/construction/layers_p6n/P6N-SPEC.json": "132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1", + "research/gauge44-frames-x/construction/layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "research/gauge44-frames-x/construction/layers_p6n/reproduce_p6n.py": "aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca", + "research/gauge44-frames-x/construction/notri/PRIO6.json": "de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15", + "research/gauge44-frames-x/construction/notri/cgx.py": "3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418", + "research/gauge44-frames-x/construction/notri/cold44x.py": "f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296", + "research/gauge44-frames-x/construction/notri/port_stage_x.py": "38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7", + "research/gauge44-frames-x/construction/notri/reproduce_notri.py": "90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8", + "research/gauge44-frames-x/construction/promo/LOCAL-PINS-p6n-k4.json": "a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f", + "research/gauge44-frames-x/construction/promo/PROMO-RECIPE-p6n-k4.json": "fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90", + "research/gauge44-frames-x/construction/promo/build_promotion.py": "9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf", + "research/gauge44-frames-x/construction/promo/make_recipe.py": "ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122", + "research/gauge44-frames-x/construction/promo/promo_controls.py": "786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372", + "research/gauge44-frames-x/construction/promo/reproduce_promo.py": "f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026", + "research/gauge44-frames-x/construction/reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92", + "research/gauge44-frames-x/construction/sw4/LOCAL-PINS-sw4-P6k4.json": "3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327", + "research/gauge44-frames-x/construction/sw4/NOTES.md": "3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446", + "research/gauge44-frames-x/construction/sw4/SW4-RECIPE-P6k4.json": "fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa", + "research/gauge44-frames-x/construction/sw4/build_sw4.py": "9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66", + "research/gauge44-frames-x/construction/sw4/reproduce_sw4.py": "3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac", + "research/gauge44-frames-x/data/FRONTIER.json": "56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2", + "research/gauge44-frames-x/data/OWNERS.json.gz": "99d1c4caf85855c353d30f122d9efbd9e51562914facded13027f347b18a6082", + "research/gauge44-frames-x/data/PLAN.json": "5f40e7ccfca61f298539b4f41286d2a9d62caf947057f9cec82aa53f73f707fd", + "research/gauge44-frames-x/data/PREPARATION.json": "1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9", + "research/gauge44-frames-x/data/SPEC.json": "64817c60a4a2c1839bf12239cb1b7515a40bf8988229d81d4c9faa17b488c7d5", + "research/gauge44-frames-x/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/gauge44-frames-x/evidence/ADMISSION-CONTROLS.json": "5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28", + "research/gauge44-frames-x/evidence/ASSEMBLY.json": "847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f", + "research/gauge44-frames-x/evidence/BINDING.json": "f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b", + "research/gauge44-frames-x/evidence/CENTER-COMPATIBILITY.json": "c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3", + "research/gauge44-frames-x/evidence/LOCAL-STAGES.json": "64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591", + "research/gauge44-frames-x/evidence/REPLAY.json": "45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2", + "research/gauge44-frames-x/evidence/STAGES.json": "09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458", + "research/gauge44-frames-x/evidence/audit/ASYNC-AUDIT.json": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662", + "research/gauge44-frames-x/evidence/audit/GLOBAL-PREFIX.json": "5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671", + "research/gauge44-frames-x/evidence/audit/IDLE-REMAINDER-FRAMES.json": "95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048", + "research/gauge44-frames-x/evidence/audit/OWNERS-AND-PROFILE.json": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "research/gauge44-frames-x/evidence/audit/PREFIX-AND-INVOICE.json": "14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582", + "research/gauge44-frames-x/evidence/global/ACTUAL-SIGMAS.json.gz": "bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f", + "research/gauge44-frames-x/evidence/global/GLOBAL-TEMPLATE.json.gz": "f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b", + "research/gauge44-frames-x/evidence/global/HOSTED.json": "60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e", + "research/gauge44-frames-x/evidence/global/IDLE-REMAINDER-FRAMES.json.gz": "734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784", + "research/gauge44-frames-x/evidence/layers/LOCAL-AUDIT-LAYERED.json": "678a69702a946e6e3ac80ec7b3defda65d0fed63bc5cff1a08ec9c1c8a84bc51", + "research/gauge44-frames-x/evidence/local/CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "research/gauge44-frames-x/evidence/local/CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "research/gauge44-frames-x/evidence/local/CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12", + "research/gauge44-frames-x/evidence/local/FULL-WORD.json.gz": "0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e", + "research/gauge44-frames-x/evidence/local/INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "research/gauge44-frames-x/evidence/local/LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "research/gauge44-frames-x/evidence/local/LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "research/gauge44-frames-x/evidence/local/RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "research/gauge44-frames-x/evidence/local/SCALAR-FRAME-AUDIT.json": "cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb", + "research/gauge44-frames-x/evidence/local/WRAPPER-CHECKS.json": "84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7", + "research/gauge44-frames-x/hosting/PROOF.md": "45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0", + "research/gauge44-frames-x/hosting/README.md": "004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1", + "research/gauge44-frames-x/hosting/audit_frozen.py": "a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659", + "research/gauge44-frames-x/hosting/expand_owners.py": "0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70", + "research/gauge44-frames-x/hosting/frozen/FROZEN-AUDIT.json": "df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b", + "research/gauge44-frames-x/hosting/frozen/MAJORIZATION.json.gz": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "research/gauge44-frames-x/hosting/frozen/MANIFEST.json": "9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967", + "research/gauge44-frames-x/hosting/frozen/MATCHING-RECEIPT.json": "e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2", + "research/gauge44-frames-x/hosting/frozen/OWNERS.json.gz": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "research/gauge44-frames-x/hosting/frozen/REPRODUCTION.json": "8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81", + "research/gauge44-frames-x/hosting/frozen/SEED-OWNERS.json.gz": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "research/gauge44-frames-x/hosting/frozen/SEED-RECEIPT.json": "aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba", + "research/gauge44-frames-x/hosting/frozen/SEED-REPRODUCTION.json": "4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194", + "research/gauge44-frames-x/hosting/reproduce.py": "7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82", + "research/gauge44-frames-x/hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "research/gauge44-frames-x/independent/CENTRE-GUARD-REVIEW.md": "7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897", + "research/gauge44-frames-x/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json": "9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9", + "research/gauge44-frames-x/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json": "631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b", + "research/gauge44-frames-x/independent/GAUGE44-INDEPENDENT-PRICE.json": "e8cecbb4f05ca1a115512b246530278ed86558d0fae1229d09d7d9188f5f330f", + "research/gauge44-frames-x/independent/README.md": "25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89", + "research/gauge44-frames-x/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/gauge44-frames-x/independent/price_profile.py": "d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf", + "research/gauge44-frames-x/independent/review_guards.py": "b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d", + "research/gauge44-frames-x/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/gauge44-frames-x/verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "research/gauge44-frames-x/verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "research/structural-gain/frontier-composition/ADAPTATION.json": "c47b1dfcfb1d78da7b1ab0d7d2c17cdf5947b4ec9ffb508f39dca572a59be3cb", + "research/structural-gain/frontier-composition/ADAPTATION.patch": "85baf9166f5f7fb40bdfa9372cf5eb05f91c9fb6a5df9f9df486b18e914558e9", + "research/structural-gain/frontier-composition/COMBINED-EIGHT-CEILING.json": "45d341b83067b7b71df6463be118dfd02612eacb4f2040c576fd3aa936a9247e", + "research/structural-gain/frontier-composition/COMBINED-PREFIX-CEILING.json": "de86cd880f285c8d3b279fac5056623b75cc52a7fbb2590078d8a6ba64fdc7a4", + "research/structural-gain/frontier-composition/COMBINED-PREFIX-PROSPECTIVE.json": "c6460a16b59868b7e8184f4ac34eec5035e0256428fc8779a16f89f8acceaeb7", + "research/structural-gain/frontier-composition/NOTICE.md": "09d4d08c655b426d83570b0ee6498330835283a9ec930754f4fa57f60c193e3b", + "research/structural-gain/frontier-composition/README.md": "70f0f791cbe3b2603f85d85bb9055aa0ee1df6dc06ba82fc1921356948312887", + "research/structural-gain/frontier-composition/REPRODUCTION-PINS.json": "8c185dfc046c4d0d00b104b4b3e283b8606d3ec6f8415d2cc400e8a8c0ddd1d4", + "research/structural-gain/frontier-composition/RESULT.json": "70ce494d27389933412f2497804489ea881a1572bf00680951b2eceeb422441f", + "research/structural-gain/frontier-composition/SOURCE-PINS.json": "8eda96e9726663a32a39435eacb5f057a76e08e047e95cb205b0552f2f081e5b", + "research/structural-gain/frontier-composition/adapt_global.py": "c61f573a97e67bae4c8c2b9263771d95e566ea9e734f29c41faae3a48d1861b9", + "research/structural-gain/frontier-composition/admission-nomination/NOMINATION.json": "9de86ae70d1162117657e6e9b5d2819cb264dc86e3c4b1b9414382aed5bfca0f", + "research/structural-gain/frontier-composition/admission-nomination/OWNERS.json.gz": "35ce2ebf98907d0fbe1c3759dd58f2fa0e8a1bd3b97f65fb101092df657ce4b8", + "research/structural-gain/frontier-composition/admission-nomination/PLAN.json": "c4c9f4f5db481c982f1d0f9396249ab0593165c1b7ec5d4d2ab850b92c80beac", + "research/structural-gain/frontier-composition/combined-eight-local/CANONICAL-WORD.json.gz": "9670a30e834517612f17942eb564ebad32152d81445ac4b9c0dfb70f69d932ec", + "research/structural-gain/frontier-composition/combined-eight-local/FULL-WORD.json.gz": "ee0fecf86bddcc5f4e675c60fbd5c572bd48269368a37a38c070346eefa3dd4a", + "research/structural-gain/frontier-composition/combined-eight-local/INDEPENDENT-LOCAL-REPLAY.json": "c2da85f4f343ee1a7bd0c191756a2faea5669b4bed10644e678d5778688da97a", + "research/structural-gain/frontier-composition/combined-eight-local/LOCAL-CHECKS.json": "43c49979bcf3f29f575c10022c3052bfb9846860b13227b3d08cf90a37c382a1", + "research/structural-gain/frontier-composition/combined-eight-local/LOCAL-PROGRAMS.json.gz": "3260547acabf80f1856e3de9a1bf47e4a6a522e7b2d4b1f960b475b3637d31b3", + "research/structural-gain/frontier-composition/combined-eight-local/SCALAR-FRAME-AUDIT.json": "02363c4cb5081319b695dee65f1a01e08a40f272b1b212264a5ad12ef240b33f", + "research/structural-gain/frontier-composition/combined-eight-word/CONSTRUCTION.json": "5387ebfcb072bc9e94b74bf16c25153d3513df6a70b378bf354a0fbc7cdbb248", + "research/structural-gain/frontier-composition/combined-eight-word/FULL-WORD.json.gz": "ee0fecf86bddcc5f4e675c60fbd5c572bd48269368a37a38c070346eefa3dd4a", + "research/structural-gain/frontier-composition/combined-eight-word/RECIPES.json": "4ee838e1cb9258cd330d73b4c58333d35156cd29e4d7b70e4f543280a317ba53", + "research/structural-gain/frontier-composition/combined-prefix-local/CANONICAL-WORD.json.gz": "81ef773a4b22b91ac74880c5b8606d93794c0b98b2e7e7291a01580cba79ceac", + "research/structural-gain/frontier-composition/combined-prefix-local/CLIFFORD-RECIPES.json": "3323144380012a59c59e56348dd56d17da0f93e7783415efdaabe6fd5d3edadc", + "research/structural-gain/frontier-composition/combined-prefix-local/CLIFFORD-REVIEW.json": "1689bc0c187686bc547eac22033b5f781dbf71621cb02d134cba0263e45b88b7", + "research/structural-gain/frontier-composition/combined-prefix-local/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/combined-prefix-local/INDEPENDENT-LOCAL-REPLAY.json": "895080ffbe54cf6a7ea148ee902308205ba9fa72248a8f7e4b7b375bf9e38d16", + "research/structural-gain/frontier-composition/combined-prefix-local/LOCAL-CHECKS.json": "66a2f5d82e13179626dec71bb5a4b49bcae32f91e4812fa4056fe1f3c3ecadcb", + "research/structural-gain/frontier-composition/combined-prefix-local/LOCAL-PROGRAMS.json.gz": "4fd7b2ad67b037c17fcc68d12663d0d70c45e66d802e2eb558daa859802f499c", + "research/structural-gain/frontier-composition/combined-prefix-local/RESIDUAL-ADAPTERS.json": "b55f994f7cad5b0be48084362f1461f7587689eb35ad4bb253de138792b1c526", + "research/structural-gain/frontier-composition/combined-prefix-local/SCALAR-FRAME-AUDIT.json": "2acacc4ce6a76de1df817361f619bc2c4dce171601e96003bab7e19375bbf9bd", + "research/structural-gain/frontier-composition/combined-prefix-local/WRAPPER-CHECKS.json": "bdfda50952f2781811a234ed5186ee3a3ce445e2f68ff88a068713981c580506", + "research/structural-gain/frontier-composition/combined-prefix-word/ALL-KERNEL-CONTROLS.json": "8fafe450dc99d5ae5f52c9b943dfd335560db0ce7fa04cecc6079a185c41afd2", + "research/structural-gain/frontier-composition/combined-prefix-word/ALL-KERNEL-OMISSIONS.json": "836d839e744b1cbee5b3a47b4d6f766e9d822161fe3640794f9a0f051d2ad20d", + "research/structural-gain/frontier-composition/combined-prefix-word/CONSTRUCTION.json": "dd4e03987a81cc655885eeadc9ed3aa17e575d6d2568d24878329cc8e98ab3e6", + "research/structural-gain/frontier-composition/combined-prefix-word/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/combined-prefix-word/PROMOTION.json": "9ad34faa8611a6ea7f161d2e1fe331ab1ba5ccec8fca3978e31c3e7bf789bc31", + "research/structural-gain/frontier-composition/combined-prefix-word/RANK5-OMISSION-CONTROLS.json": "449566dc724a285764dbaabc1a448f974f0608c7c68cd0406139c21aa1cf4647", + "research/structural-gain/frontier-composition/compact_owners.py": "0a1745ab326aa4af2ee72d5e6eaf93330b04bb3800a0c7d7747225c09293d2a6", + "research/structural-gain/frontier-composition/compacted-nomination/NOMINATION.json": "545a106d8d76888b916433c36544640602fac6234d8f36fcdab2cc551a7440b6", + "research/structural-gain/frontier-composition/compacted-nomination/OWNERS.json.gz": "92d29bd48582aa87eed2153b2e8f0f41f7d47087d215bebd7dac20fe79c4f8f9", + "research/structural-gain/frontier-composition/compose_prefix.py": "9b76cbe9d5840ba448ac1621fe3dca7ca6c3ea63d4590d595a6ddd8091d22390", + "research/structural-gain/frontier-composition/global-code/assemble.py": "e2e61c092803f9c9c15dc72b8a2cafa57ac8969ec70261b33d390055c911b2b7", + "research/structural-gain/frontier-composition/global-code/assembly_controls.py": "65ac20c51225143b3ec1966e1da8e2405dfd8f0f5e7765c04f07d55e86fba535", + "research/structural-gain/frontier-composition/global-code/audit_allcold.py": "20ed33a1f98240c73a3364d136f28b1e79d9b8cdf03d812f38da850dabf663dd", + "research/structural-gain/frontier-composition/global-code/bind_providers_portable.py": "c914b0161601cd982f0a4700326c505906a3eee5e71529973d5c7ad9caaad3fc", + "research/structural-gain/frontier-composition/global-code/emit_allcold.py": "9e7c53d9760391584ea3c80977fde4337f603a5732b2fe4f0dd36fd96c9c4627", + "research/structural-gain/frontier-composition/global-code/invoice_allcold.py": "6a14639e2849d50978a7821dcda97746b5a66722bb3ca2d6fc8c611d2eaf4e49", + "research/structural-gain/frontier-composition/global-code/phase_timing_controls.py": "edd53ac292132ba894ab17ca783909ffa5140742c45f796e8546383567fa924f", + "research/structural-gain/frontier-composition/global-replay/ASSEMBLY-CONTROLS.json": "5dae5fde9663c497f9d4e545fc8d5dc6d8b99251c4d995a9699c6b03c30e789e", + "research/structural-gain/frontier-composition/global-replay/ASSEMBLY.json": "b8d100f1adcaf818102b38f061cd462479ca37ce0d56d899538a98684f6c099a", + "research/structural-gain/frontier-composition/global-replay/BINDING.json": "6a15b287a04f703e76b6d34c4f092482df8afb3b47c9d4ea606d9c12589224a4", + "research/structural-gain/frontier-composition/global-replay/PHASE-TIMING-CONTROLS.json": "7b286b838470bed5225deabd9f6e70760af3c56d09780753b5c060711045ac7c", + "research/structural-gain/frontier-composition/global-replay/PLAN.json": "46e97c0b6d245d2a471df8e641aeaabc63efc5e5606b16fb6b6efe7e054e9431", + "research/structural-gain/frontier-composition/global-replay/audit/ASYNC-AUDIT.json": "26f1445c0be85a0093ef6e695ef3f34363cd26bfa4dc342440876ca1832175b4", + "research/structural-gain/frontier-composition/global-replay/audit/GLOBAL-PREFIX.json": "c2f8d032275a27c3aceadbda7cfccbe9a4888a2f64f0fc923bf0d536897387a3", + "research/structural-gain/frontier-composition/global-replay/audit/IDLE-REMAINDER-FRAMES.json": "f76c46723a1ded4243aee4f81c441b7eba4798014358a091aba2f50ab79371b6", + "research/structural-gain/frontier-composition/global-replay/audit/OWNERS-AND-PROFILE.json": "7c42b0d506831843ff23a673f0459d41eda2046a3d114d393bccd22920a8ae9e", + "research/structural-gain/frontier-composition/global-replay/audit/PREFIX-AND-INVOICE.json": "15baebfd6c4b3fb1a6b45bf9cffd0b592168af078ddbe898390212173f84ba5c", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/CANONICAL-WORD.json.gz": "9d2467e9200fca9aea31bda6f54aec74ee1d0d41e2c0ec64c081691de8536b31", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/CLIFFORD-RECIPES.json": "9f7b1d5bfcd937fb25778402cda7e71ccc1ae0e0e7f2b65a380dc231ad6f36fa", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/CLIFFORD-REVIEW.json": "093762e2d5e751c26d5e82043773e6d7d77e902dcfadcd38bedc1502241eb455", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/FULL-WORD.json.gz": "4bb27af5d2142114ac59d24c8fc9bb638b932cf1cdffaf17733b5372ee101f3b", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/INDEPENDENT-LOCAL-REPLAY.json": "037ed24855a93ff5104667ceafcbc541dce26dfbccb125933281818e065a2b2c", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/LOCAL-CHECKS.json": "a66926b91a1d383b056e58c9c72024d228e710dae7c28af8514f1a2761e31f2a", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/LOCAL-PROGRAMS.json.gz": "eacd3c25390d7190ae1a54f6899e5e6a66003049665c3dd11648ae91123f4b2a", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/SCALAR-FRAME-AUDIT.json": "8087ceb5539a7a43bf5dc973547dc63ac87a764fff708a11f93c54df2ca711cb", + "research/structural-gain/frontier-composition/global-replay/base/providers/fourcold_eight/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/CANONICAL-WORD.json.gz": "81ef773a4b22b91ac74880c5b8606d93794c0b98b2e7e7291a01580cba79ceac", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/CLIFFORD-RECIPES.json": "3323144380012a59c59e56348dd56d17da0f93e7783415efdaabe6fd5d3edadc", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/CLIFFORD-REVIEW.json": "1689bc0c187686bc547eac22033b5f781dbf71621cb02d134cba0263e45b88b7", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/INDEPENDENT-LOCAL-REPLAY.json": "895080ffbe54cf6a7ea148ee902308205ba9fa72248a8f7e4b7b375bf9e38d16", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/LOCAL-CHECKS.json": "66a2f5d82e13179626dec71bb5a4b49bcae32f91e4812fa4056fe1f3c3ecadcb", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/LOCAL-PROGRAMS.json.gz": "4fd7b2ad67b037c17fcc68d12663d0d70c45e66d802e2eb558daa859802f499c", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/RESIDUAL-ADAPTERS.json": "b55f994f7cad5b0be48084362f1461f7587689eb35ad4bb253de138792b1c526", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/SCALAR-FRAME-AUDIT.json": "2acacc4ce6a76de1df817361f619bc2c4dce171601e96003bab7e19375bbf9bd", + "research/structural-gain/frontier-composition/global-replay/base/providers/width7_eight/WRAPPER-CHECKS.json": "bdfda50952f2781811a234ed5186ee3a3ce445e2f68ff88a068713981c580506", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/CLIFFORD-REVIEW.json": "f9a5d85a91abe1518fd5b9a1f31d191409ad37860390d3bb05cb1f0ce89768b9", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/FULL-WORD.json.gz": "375bd23001cd805707968005a9342827d5464e3f8e3a754197b31c46fc3f63c2", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/GLOBAL-TEMPLATE.json.gz": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/INTEGRATION.json": "2acde3dd247c50737ad42a2468775be1bdb21cb5751f4c156a1dcc5cac9e13bd", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/SCALAR-FRAME-AUDIT.json": "143ced2876c0fe33dadedce49e7e9ab5e458321c752ae1a0dedcec9cc2486406", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/structural-gain/frontier-composition/global-replay/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/structural-gain/frontier-composition/global-replay/base/work/pr361/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/structural-gain/frontier-composition/global-replay/base/work/pr361/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/structural-gain/frontier-composition/global-replay/base/work/pr361/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/structural-gain/frontier-composition/global-replay/hosted/ACTUAL-SIGMAS.json.gz": "936df489d3deb6d6986bec7e31f553535d04e3ad417c600fc700785bc2574d2b", + "research/structural-gain/frontier-composition/global-replay/hosted/GLOBAL-TEMPLATE.json.gz": "d9ffee95dba7d05cfc444e582fa652ab157855e796b5a03969e1ce873803c83b", + "research/structural-gain/frontier-composition/global-replay/hosted/HOSTED.json": "53fd81d8b95f59d56f2ddc0375507d166eeb63bcc6f6e215319843011603ad9f", + "research/structural-gain/frontier-composition/global-replay/hosted/IDLE-REMAINDER-FRAMES.json.gz": "466656a9a6b7270f5b3c5d69539df07555a43f0b14f53fa1740c74d3738c24b3", + "research/structural-gain/frontier-composition/multicold-eight-local/CANONICAL-WORD.json.gz": "94dba75199d70b744be5604386b8eca6767f0b0e1aeee06b2bd0e4e1db858940", + "research/structural-gain/frontier-composition/multicold-eight-local/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77", + "research/structural-gain/frontier-composition/multicold-eight-local/SCALAR-FRAME-AUDIT.json": "2f2f0f18aa3a560b2d274f2a61d1a2e8e93e7b677bdea69f8dd07e5b92f3fbb4", + "research/structural-gain/frontier-composition/multicold-eight-word/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77", + "research/structural-gain/frontier-composition/multicold-eight-word/KERNEL-CONSTRUCTION.json": "6f1fd8e202891558084ac9ee00606bbff0659c869f1bf6414461d87f6b67c53c", + "research/structural-gain/frontier-composition/nominate_combined.py": "ee96ba6b0f57e3a6418b851498a304e2d5f6bbec30c68d39e7bfa589b1cfa4fb", + "research/structural-gain/frontier-composition/portable-replay/RECEIPT.json": "181148f6262f4d38c365e1431424a3c6fdc72e3eb655c8b9e8d229ad74d966f4", + "research/structural-gain/frontier-composition/portable-replay/RESULT.json": "6814b7d49fb28dc7eb7f7a143b62a0e562457b8526c9d6155121a7190cf25636", + "research/structural-gain/frontier-composition/portable-replay/STAGES.json": "5cd026ffaf115c06b6372d66e4a94e7d5a65b1a55601d081a3862f1783dfe00b", + "research/structural-gain/frontier-composition/portable-replay/composed-word/ALL-KERNEL-CONTROLS.json": "8fafe450dc99d5ae5f52c9b943dfd335560db0ce7fa04cecc6079a185c41afd2", + "research/structural-gain/frontier-composition/portable-replay/composed-word/CONSTRUCTION.json": "1b66e7c6de00f0ea5cfb0b064c8d61f7353faad08a9f96153eba1de7df7e4efb", + "research/structural-gain/frontier-composition/portable-replay/composed-word/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/portable-replay/composed-word/PROMOTION.json": "9ad34faa8611a6ea7f161d2e1fe331ab1ba5ccec8fca3978e31c3e7bf789bc31", + "research/structural-gain/frontier-composition/portable-replay/composed-word/RANK5-OMISSION-CONTROLS.json": "449566dc724a285764dbaabc1a448f974f0608c7c68cd0406139c21aa1cf4647", + "research/structural-gain/frontier-composition/portable-replay/global/ASSEMBLY-CONTROLS.json": "4ca8c100c735e46c0aaa54e8222b13f44a8fbd8bc1ecb2e169796dc07b828181", + "research/structural-gain/frontier-composition/portable-replay/global/ASSEMBLY.json": "458bf63f1e5019fef9b1653f68cd0d35de5a8e9183d5cdd0608696f9a80fe20d", + "research/structural-gain/frontier-composition/portable-replay/global/BINDING.json": "b90811aa2011210b603de24e79f45e6f8f5bca7d3687fa6f55fff31694e6d7cb", + "research/structural-gain/frontier-composition/portable-replay/global/PHASE-TIMING-CONTROLS.json": "4fac9ed2d96bcba7fa646045428e931363bbe06cc98283857a6c5d072b6d0a75", + "research/structural-gain/frontier-composition/portable-replay/global/PLAN.json": "528fe700ac5998cc4abb4edd008dcace6ca47db49b431fbf2cc021df885de6a3", + "research/structural-gain/frontier-composition/portable-replay/global/audit/ASYNC-AUDIT.json": "fb374c7f823f5db2162b50801d52a4282b54e36a49df67360d0a26160cdc200f", + "research/structural-gain/frontier-composition/portable-replay/global/audit/GLOBAL-PREFIX.json": "7a4c5d98bc35b2541df3d058292dba3d479b639dd13e6c2db31d9c2dc088e9ef", + "research/structural-gain/frontier-composition/portable-replay/global/audit/IDLE-REMAINDER-FRAMES.json": "7b77927a83f949534d5935579445c4505c3812b7a1403b164c1fa8f9082d33e7", + "research/structural-gain/frontier-composition/portable-replay/global/audit/OWNERS-AND-PROFILE.json": "0246da5a86b87c450db132b875e7dfd1d36b4ea0f388ea02f5d4d77e84751db7", + "research/structural-gain/frontier-composition/portable-replay/global/audit/PREFIX-AND-INVOICE.json": "9f2c2e71ee3a84b1cd65563d038b3a21a2a5de0a0321097c4804b9ae0254f0eb", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/CANONICAL-WORD.json.gz": "9d2467e9200fca9aea31bda6f54aec74ee1d0d41e2c0ec64c081691de8536b31", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/CLIFFORD-RECIPES.json": "9f7b1d5bfcd937fb25778402cda7e71ccc1ae0e0e7f2b65a380dc231ad6f36fa", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/CLIFFORD-REVIEW.json": "093762e2d5e751c26d5e82043773e6d7d77e902dcfadcd38bedc1502241eb455", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/FULL-WORD.json.gz": "4bb27af5d2142114ac59d24c8fc9bb638b932cf1cdffaf17733b5372ee101f3b", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/INDEPENDENT-LOCAL-REPLAY.json": "037ed24855a93ff5104667ceafcbc541dce26dfbccb125933281818e065a2b2c", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/LOCAL-CHECKS.json": "a66926b91a1d383b056e58c9c72024d228e710dae7c28af8514f1a2761e31f2a", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/LOCAL-PROGRAMS.json.gz": "eacd3c25390d7190ae1a54f6899e5e6a66003049665c3dd11648ae91123f4b2a", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/SCALAR-FRAME-AUDIT.json": "8087ceb5539a7a43bf5dc973547dc63ac87a764fff708a11f93c54df2ca711cb", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/fourcold_eight/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/CANONICAL-WORD.json.gz": "81ef773a4b22b91ac74880c5b8606d93794c0b98b2e7e7291a01580cba79ceac", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/CLIFFORD-RECIPES.json": "3323144380012a59c59e56348dd56d17da0f93e7783415efdaabe6fd5d3edadc", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/CLIFFORD-REVIEW.json": "98e70bd3e56f563c1cb51174cc0f3029d20f58a565a4f993d336c24e2f3e53c2", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/INDEPENDENT-LOCAL-REPLAY.json": "895080ffbe54cf6a7ea148ee902308205ba9fa72248a8f7e4b7b375bf9e38d16", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/LOCAL-CHECKS.json": "66a2f5d82e13179626dec71bb5a4b49bcae32f91e4812fa4056fe1f3c3ecadcb", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/LOCAL-PROGRAMS.json.gz": "4fd7b2ad67b037c17fcc68d12663d0d70c45e66d802e2eb558daa859802f499c", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/RESIDUAL-ADAPTERS.json": "b55f994f7cad5b0be48084362f1461f7587689eb35ad4bb253de138792b1c526", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/SCALAR-FRAME-AUDIT.json": "04835172c369aa8a0edd31a5161e86c3474f2bc748bea80a37750d37c66118c6", + "research/structural-gain/frontier-composition/portable-replay/global/base/providers/width7_eight/WRAPPER-CHECKS.json": "bdfda50952f2781811a234ed5186ee3a3ce445e2f68ff88a068713981c580506", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/CLIFFORD-REVIEW.json": "f9a5d85a91abe1518fd5b9a1f31d191409ad37860390d3bb05cb1f0ce89768b9", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/FULL-WORD.json.gz": "375bd23001cd805707968005a9342827d5464e3f8e3a754197b31c46fc3f63c2", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/GLOBAL-TEMPLATE.json.gz": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/INTEGRATION.json": "2acde3dd247c50737ad42a2468775be1bdb21cb5751f4c156a1dcc5cac9e13bd", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/SCALAR-FRAME-AUDIT.json": "143ced2876c0fe33dadedce49e7e9ab5e458321c752ae1a0dedcec9cc2486406", + "research/structural-gain/frontier-composition/portable-replay/global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/structural-gain/frontier-composition/portable-replay/global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/structural-gain/frontier-composition/portable-replay/global/base/work/pr361/code/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/structural-gain/frontier-composition/portable-replay/global/base/work/pr361/code/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/structural-gain/frontier-composition/portable-replay/global/base/work/pr361/code/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/structural-gain/frontier-composition/portable-replay/global/hosted/ACTUAL-SIGMAS.json.gz": "936df489d3deb6d6986bec7e31f553535d04e3ad417c600fc700785bc2574d2b", + "research/structural-gain/frontier-composition/portable-replay/global/hosted/GLOBAL-TEMPLATE.json.gz": "049d649d121b5d9bd1947338413ed3b3a07e2429cd99294c914dd4c20b90d35a", + "research/structural-gain/frontier-composition/portable-replay/global/hosted/HOSTED.json": "8d376143853fccfaac130444641a9cd792b94a9e1f2a8449fc6cc37fa622043a", + "research/structural-gain/frontier-composition/portable-replay/global/hosted/IDLE-REMAINDER-FRAMES.json.gz": "466656a9a6b7270f5b3c5d69539df07555a43f0b14f53fa1740c74d3738c24b3", + "research/structural-gain/frontier-composition/portable-replay/local/CANONICAL-WORD.json.gz": "81ef773a4b22b91ac74880c5b8606d93794c0b98b2e7e7291a01580cba79ceac", + "research/structural-gain/frontier-composition/portable-replay/local/CLIFFORD-RECIPES.json": "3323144380012a59c59e56348dd56d17da0f93e7783415efdaabe6fd5d3edadc", + "research/structural-gain/frontier-composition/portable-replay/local/CLIFFORD-REVIEW.json": "98e70bd3e56f563c1cb51174cc0f3029d20f58a565a4f993d336c24e2f3e53c2", + "research/structural-gain/frontier-composition/portable-replay/local/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42", + "research/structural-gain/frontier-composition/portable-replay/local/INDEPENDENT-LOCAL-REPLAY.json": "895080ffbe54cf6a7ea148ee902308205ba9fa72248a8f7e4b7b375bf9e38d16", + "research/structural-gain/frontier-composition/portable-replay/local/LOCAL-CHECKS.json": "66a2f5d82e13179626dec71bb5a4b49bcae32f91e4812fa4056fe1f3c3ecadcb", + "research/structural-gain/frontier-composition/portable-replay/local/LOCAL-PROGRAMS.json.gz": "4fd7b2ad67b037c17fcc68d12663d0d70c45e66d802e2eb558daa859802f499c", + "research/structural-gain/frontier-composition/portable-replay/local/RESIDUAL-ADAPTERS.json": "b55f994f7cad5b0be48084362f1461f7587689eb35ad4bb253de138792b1c526", + "research/structural-gain/frontier-composition/portable-replay/local/SCALAR-FRAME-AUDIT.json": "04835172c369aa8a0edd31a5161e86c3474f2bc748bea80a37750d37c66118c6", + "research/structural-gain/frontier-composition/portable-replay/local/WRAPPER-CHECKS.json": "bdfda50952f2781811a234ed5186ee3a3ce445e2f68ff88a068713981c580506", + "research/structural-gain/frontier-composition/portable-replay/logs/admission-controls.log": "659e7183284b11bc7f4bc4a54aae250f7a53993720ef9e88906908ba4590ab2e", + "research/structural-gain/frontier-composition/portable-replay/logs/all-columns-native.log": "7e097e0c37a6f961db5ea0a4b6ccfba1c8d336100dc65435cbc97939b5da88a9", + "research/structural-gain/frontier-composition/portable-replay/logs/all-kernel-omissions.log": "13fae47d3799fead98d1c0df5702516c3cbebf27636a35ae3e7d494274fef5cf", + "research/structural-gain/frontier-composition/portable-replay/logs/all-phase-edges.log": "316379dfe5c469e3f5e64545e786e0d501a3d67ee227cad8a957393fdd44213b", + "research/structural-gain/frontier-composition/portable-replay/logs/bind-providers.log": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a", + "research/structural-gain/frontier-composition/portable-replay/logs/compose-prefix.log": "c8233c0c3b0e31aa798896cef089e55c72cd8471f71cd04c1e6a5ecd0067ecdd", + "research/structural-gain/frontier-composition/portable-replay/logs/construct-multicold.log": "6f1fd8e202891558084ac9ee00606bbff0659c869f1bf6414461d87f6b67c53c", + "research/structural-gain/frontier-composition/portable-replay/logs/construct-width7.log": "5387ebfcb072bc9e94b74bf16c25153d3513df6a70b378bf354a0fbc7cdbb248", + "research/structural-gain/frontier-composition/portable-replay/logs/emit-owners.log": "8d376143853fccfaac130444641a9cd792b94a9e1f2a8449fc6cc37fa622043a", + "research/structural-gain/frontier-composition/portable-replay/logs/exact-assembly.log": "9dbe4dfe1a7d8bc255008b3d1a2b00865da6f2e3404bf0a27f318640b8280595", + "research/structural-gain/frontier-composition/portable-replay/logs/fresh-invoice.log": "37caff4657f84fa89c1ac13ec93285ff9fa21f6e9ae8a406b28194e83f3ae079", + "research/structural-gain/frontier-composition/portable-replay/logs/independent-local.log": "b694b4b22abb9d1de9a70bbbdf9e9b0e030ec00a7eddc264e4c18376dd859cee", + "research/structural-gain/frontier-composition/portable-replay/logs/independent-owners.log": "fb374c7f823f5db2162b50801d52a4282b54e36a49df67360d0a26160cdc200f", + "research/structural-gain/frontier-composition/portable-replay/logs/normalized-wrappers.log": "084996d2f72ec61b58fd63cabd85c6d01a82c217a8d3f4639f99c5fb32afe978", + "research/structural-gain/frontier-composition/portable-replay/logs/phase-timing-controls.log": "d4300a182a615922dd73ff2b945ff671086b86d5b80dbc009539e96d9b4dfe82", + "research/structural-gain/frontier-composition/portable-replay/logs/rank5-omissions.log": "bab3028f59a9b024df5f20d2c0f3755933cea161bfd49ab676fa6133f58a05db", + "research/structural-gain/frontier-composition/portable-replay/logs/reflected-ledgers.log": "ec8f89251df20f30f32bf57dc61ef643ed0646e629cbeaf406e0d3cdf448ea5b", + "research/structural-gain/frontier-composition/portable-replay/logs/relabel-owners.log": "100be6d961212fe518657e577b7089401067f845fffa4fee9bdcc3d88850f940", + "research/structural-gain/frontier-composition/portable-replay/multicold-word/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77", + "research/structural-gain/frontier-composition/portable-replay/multicold-word/KERNEL-CONSTRUCTION.json": "6f1fd8e202891558084ac9ee00606bbff0659c869f1bf6414461d87f6b67c53c", + "research/structural-gain/frontier-composition/portable-replay/nomination/NOMINATION.json": "d5d23da576ad2b981287048d01b395fb92a241d1fd9a120da45e280a7e83d5d0", + "research/structural-gain/frontier-composition/portable-replay/nomination/OWNERS.json.gz": "35ce2ebf98907d0fbe1c3759dd58f2fa0e8a1bd3b97f65fb101092df657ce4b8", + "research/structural-gain/frontier-composition/portable-replay/nomination/PLAN.json": "aff99bac638d9707bd894f9241ea0576f5e7e33eaecc070880f450581d37c5c5", + "research/structural-gain/frontier-composition/portable-replay/width7-word/CONSTRUCTION.json": "5387ebfcb072bc9e94b74bf16c25153d3513df6a70b378bf354a0fbc7cdbb248", + "research/structural-gain/frontier-composition/portable-replay/width7-word/FULL-WORD.json.gz": "ee0fecf86bddcc5f4e675c60fbd5c572bd48269368a37a38c070346eefa3dd4a", + "research/structural-gain/frontier-composition/portable-replay/width7-word/RECIPES.json": "4ee838e1cb9258cd330d73b4c58333d35156cd29e4d7b70e4f543280a317ba53", + "research/structural-gain/frontier-composition/prefix-input/CONSTRUCTION.json": "33febf6fd2ec1361d3c378be5d58eb2da495537987bc5326cd1bf89fa41d20a4", + "research/structural-gain/frontier-composition/prefix-input/FULL-WORD.json.gz": "a8d37cddb9c430569271a25b0af1fe7ff78fd23d183f443ec7c1075898094d4c", + "research/structural-gain/frontier-composition/prefix-input/SOURCE.json": "1598d3d7cc9d7b2e0c400896065d2d149166290320556cb598a3923a1dc59c3f", + "research/structural-gain/frontier-composition/relabel_owners.py": "7f273d712fa9917dd220895b59bacdc776d5b9e6cc5dceb72b92036eff0363f4", + "research/structural-gain/frontier-composition/relabeled-nomination/NOMINATION.json": "9de86ae70d1162117657e6e9b5d2819cb264dc86e3c4b1b9414382aed5bfca0f", + "research/structural-gain/frontier-composition/relabeled-nomination/OWNERS.json.gz": "35ce2ebf98907d0fbe1c3759dd58f2fa0e8a1bd3b97f65fb101092df657ce4b8", + "research/structural-gain/frontier-composition/relabeled-nomination/PLAN.json": "c4c9f4f5db481c982f1d0f9396249ab0593165c1b7ec5d4d2ab850b92c80beac", + "research/structural-gain/frontier-composition/repacked-nomination-expanded/WINDOW-SOLUTION.json": "7df5fe77a32eb4dd95b032c522b51f957d1a4b6845ba34b6dfad8d489589cc3b", + "research/structural-gain/frontier-composition/reproduce.py": "8caa2e9d29df773a86a18d6b50b20379a616a22577e8c4fafb926d8c7d24aec7", + "research/structural-gain/frontier-composition/upstream567/data/EIGHT-SECOND.json": "eff4c7cf18a2aca50d4684af5df0fe2d134892354704f65f3d36066200db1cc0", + "research/structural-gain/frontier-composition/upstream567/data/FOUR-SECOND.json": "103afaab0459014cfa67da7cf78d79f9fae41f5f34c002e550b067a7a9ef8ae2", + "research/structural-gain/frontier-composition/upstream567/data/ZERO-SECOND.json": "0dedad089bfa54a0bdf0be77c2aa5e56c098cfb85ccceb9c797a79a13be32357", + "research/structural-gain/frontier-composition/upstream567/proof/CONSTRUCTION.md": "4090072319ae982c2477a6aaa888f204382e80b745b928737cdc1a707547c38b", + "research/structural-gain/frontier-composition/upstream568/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "research/structural-gain/frontier-composition/upstream568/MANIFEST.json": "328ce8023d33deb308b0f1ae2320424050f836d791cf60a613ae8408e7d6f3ab", + "research/structural-gain/frontier-composition/upstream568/NOTICE.md": "d14c070a8e237cb1912e413ce22e98eb41f164b769ebaa97224c121fcc5a0fc5", + "research/structural-gain/frontier-composition/upstream568/README.md": "638428654d34f0b72ed4b5fda948c91d01e57f8015813c6d8ab01c06c1da5322", + "research/structural-gain/frontier-composition/upstream568/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/structural-gain/frontier-composition/upstream568/code/build_multicut_kernels.py": "6ab3d73f81d5b2fb884a93a336ef1940e118d419d425b3356bab3b97f774c9aa", + "research/structural-gain/frontier-composition/upstream568/data/EIGHT-MULTICOLD.json": "d18ea59995d384833c95a7a55d8167f83439b6881a524ab03df972ede3e0d7b9", + "research/structural-gain/frontier-composition/upstream568/data/FOUR-MULTICOLD.json": "c1b42d7bacf9f31ab35294f7b8430a1164d6bc169a3d68fe2b3ea39cf791b323", + "research/structural-gain/frontier-composition/upstream568/data/ZERO-MULTICOLD.json": "cc09fab61aab468200d72f833ffb9e6572580d54da57bab02c5d63e3b280af1a", + "research/structural-gain/frontier-composition/upstream568/proof/CONSTRUCTION.md": "27ece5e1c11b90d97a808b56eff897b998c10e61016db95867f84e6e6aef132f", + "scripts/verify_frontier741.py": "215ee6a12de8dc2392e6811a1b8f2140035f6b2d2a0d2100ff4bd2fdcb8bb39b", + "scripts/verify_frontier741_bindings.py": "eff455167e2fd0bc9a67d35241d0e69d8edc58f3a23e776dcfe8f500ca8e8d67", + "scripts/verify_frontier799.py": "19fe1b32079095160dc00fe2f7df75e0fcbc82cff37f7159b755c8a63bd5ce99", + "scripts/verify_frontier799_bindings.py": "43897b3c99212d6134870898a1840f32898aa1b3679b299e654901568ad7e19b" +} diff --git a/research/complex-t37-joint-x54-owners/MANIFEST.json b/research/complex-t37-joint-x54-owners/MANIFEST.json new file mode 100644 index 0000000000..92f947c4bd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/MANIFEST.json @@ -0,0 +1 @@ +{".gitattributes":"ec490b606626ee06896c5207e4689445a09b0ecb42f24b8b7828994478c9b984","CLAIM.json":"2e26c180b3d7027740f4e0b484c1332ead0ed16605a175b992dbc0f5a6be0b5c","DEPENDENCY-PINS.json":"302d8b98d1a4ab12895ce1a84c06944e9dbde82ca10b023c8e5ebc79b1b47d98","NOTICE.md":"ec763f8d5b511996f32e5b6cb84d85e4c8de26f143f4c1f239eba23356e9cbf1","PROOF.md":"de0083ba10af44438e2727c5b0bfa2e73753459c30553a4ce0ea953da91903ce","README.md":"bbc4d560c391b41d01f1ff9b941929fb50a3f2cd9b68d6b1ca3a8be810c8c8d0","SOURCE-PINS.json":"70c893c62eda0394d58a67ca5c3d800f590a16fdb4028dd16962864d5f9e1826","audit.py":"eaf74d4dd0b060c95242e78dc640598884810b51105eb7b06d58f80dae5c2875","common.py":"274274df31f8ef2a47b801d1f30ec226f94bce674fe15586d814ca754f6b7785","construct.py":"cb919eed964ff9127054c7b0b3da21560ad709bbcf0af5e200a1ebde934362ff","controller.py":"c572ab6d2271e211844989a94949a260b8dba4e750c9c6cd622e2a66fdb5dedc","controls.py":"963fc23e72277fbec0e105917f9cc18595f18a806ac90d9d4a279c1fe1e76033","data/FLOW.json.gz":"55ac4a01e050447b5e092dfe7b6082581effdcd875f5bc9a6b1d5def0a87880f","data/ORDER.json":"7757df3b54ca5e84c6dba9563b10bc6215c5e289313392b5a4b493179a245c29","data/OWNERS.json.gz":"97f12f789b0f5f5ef204d8921f3924073f8e04e8f07a83c97427865f70d0926a","data/SPEC.json":"a83d748585491b1c0e18fb5fcf92bca25a6334c4c89cc2dab61dd0a9d78b4afd","data/SUPPLIER-PLAN.json":"b7d028a4c60bf18eb566474026469c47f18babcb454bb22d0bfe5840304e17fd","data/X54-RECIPE.json":"979030b65344e2c4798e7153ad93c05ba3209829df6fb51c44d8a402e7b989d5","native_x54.py":"dc49fb357f4d0fa21f1f3305df090163cec4298b67b8d0adb1c0a41142ee4766","normalize_flow.py":"71f5f862b1cb7e43e14fe1634b3a3fa9192bcba1bd9d090ab3d0e56f888d4ef7","package.py":"b1cadf7ade4759528dd05513ef0cf146562b448978e0b2a0688d176b953f469a","prepare.py":"e2a2d09642fc0632d1d555be0f19c273d9293222de14cba988813213ff59fc87","price.py":"dfc64ed6eb380dcdb04ec154952007a9c8508e07645b58302b8a89c5908bdf79","vendor/pr1022/research/gauge44-leaver8/CONSTRUCTION.md":"7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea","vendor/pr1022/research/gauge44-leaver8/LICENSE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","vendor/pr1022/research/gauge44-leaver8/LOCAL-VALIDATION.json":"f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e","vendor/pr1022/research/gauge44-leaver8/MANIFEST.json":"7c9637f06798b144274458efa145f701c61282f8b3aab1c0c900b53bdfbe1f0d","vendor/pr1022/research/gauge44-leaver8/NOTICE.md":"7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf","vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BARCH.md":"c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d","vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BIT.md":"dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7","vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-FRAMES-X4.md":"39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036","vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LAYERS.md":"92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f","vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LEAVER.md":"e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3","vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-NOTRI.md":"774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414","vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-P6N.md":"cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d","vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-PROMO.md":"c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae","vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-SW4.md":"d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d","vendor/pr1022/research/gauge44-leaver8/README.md":"0c09f0685e5db77177187c12afea9c45465787c44d6ae0d7d28c0c7de8f1b2a0","vendor/pr1022/research/gauge44-leaver8/RESULT.json":"72bf797ce995ff6108c1609b9d71ca50b6fd3e84eb827e9ca2df6b64710d88b6","vendor/pr1022/research/gauge44-leaver8/SOURCES.json":"abb903d9b46388f99325a3939eb68171ac163c66b4b62b7961ea46daa20a88f0","vendor/pr1022/research/gauge44-leaver8/UPSTREAM-NOTICE.md":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610","vendor/pr1022/research/gauge44-leaver8/code/assemble.py":"4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec","vendor/pr1022/research/gauge44-leaver8/code/assembly_controls.py":"e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162","vendor/pr1022/research/gauge44-leaver8/code/audit_allcold.py":"a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503","vendor/pr1022/research/gauge44-leaver8/code/bind_providers_portable.py":"1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6","vendor/pr1022/research/gauge44-leaver8/code/bit_supplier_controls.py":"e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5","vendor/pr1022/research/gauge44-leaver8/code/emit_allcold.py":"17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa","vendor/pr1022/research/gauge44-leaver8/code/freeze_spec.py":"f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93","vendor/pr1022/research/gauge44-leaver8/code/generated_identity.py":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708","vendor/pr1022/research/gauge44-leaver8/code/invoice_allcold.py":"141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec","vendor/pr1022/research/gauge44-leaver8/code/prepare_global.py":"8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc","vendor/pr1022/research/gauge44-leaver8/code/restore_parent.py":"69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d","vendor/pr1022/research/gauge44-leaver8/code/witness.py":"779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444","vendor/pr1022/research/gauge44-leaver8/construction/COLD44-RECIPE.json.gz":"22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c","vendor/pr1022/research/gauge44-leaver8/construction/COMPLETION-PRIORITY.json":"0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47","vendor/pr1022/research/gauge44-leaver8/construction/INPUTS.json":"edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99","vendor/pr1022/research/gauge44-leaver8/construction/LICENSE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","vendor/pr1022/research/gauge44-leaver8/construction/NOTICE.md":"defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816","vendor/pr1022/research/gauge44-leaver8/construction/REBUILD-CHECKS.json":"1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91","vendor/pr1022/research/gauge44-leaver8/construction/UPSTREAM-NOTICE.md":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610","vendor/pr1022/research/gauge44-leaver8/construction/barch/LOCAL-PINS-barch-U8.json":"2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5","vendor/pr1022/research/gauge44-leaver8/construction/barch/RECIPE-U8.json":"292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652","vendor/pr1022/research/gauge44-leaver8/construction/barch/build_tri.py":"0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e","vendor/pr1022/research/gauge44-leaver8/construction/barch/reproduce_barch.py":"19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1","vendor/pr1022/research/gauge44-leaver8/construction/barch/run_controls.py":"42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476","vendor/pr1022/research/gauge44-leaver8/construction/build_gauge_cold44.py":"ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb","vendor/pr1022/research/gauge44-leaver8/construction/construct_gauge_xcentre.py":"d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217","vendor/pr1022/research/gauge44-leaver8/construction/frames/FRAME-RECIPE-sw4.json":"a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473","vendor/pr1022/research/gauge44-leaver8/construction/frames/LOCAL-PINS-frames-sw4.json":"bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f","vendor/pr1022/research/gauge44-leaver8/construction/frames/build_frames.py":"200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb","vendor/pr1022/research/gauge44-leaver8/construction/frames/frame_controls.py":"477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77","vendor/pr1022/research/gauge44-leaver8/construction/frames/reproduce_frames.py":"dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832","vendor/pr1022/research/gauge44-leaver8/construction/jx/LOCAL-PINS-jx-X4.json":"95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974","vendor/pr1022/research/gauge44-leaver8/construction/jx/RECIPE-X4.json":"9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd","vendor/pr1022/research/gauge44-leaver8/construction/jx/build_jx.py":"3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916","vendor/pr1022/research/gauge44-leaver8/construction/jx/reproduce_jx.py":"5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c","vendor/pr1022/research/gauge44-leaver8/construction/layers/build_pivot_swap.py":"8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8","vendor/pr1022/research/gauge44-leaver8/construction/layers/layer_end_controls.py":"7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef","vendor/pr1022/research/gauge44-leaver8/construction/layers/reproduce_layers.py":"435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e","vendor/pr1022/research/gauge44-leaver8/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz":"3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0","vendor/pr1022/research/gauge44-leaver8/construction/layers_np/HPE-RECIPE-NP.json":"43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1","vendor/pr1022/research/gauge44-leaver8/construction/layers_np/PIVOT-SWAP-NP.json":"d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5","vendor/pr1022/research/gauge44-leaver8/construction/layers_np/reproduce_np.py":"1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c","vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz":"17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4","vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/P6N-SPEC.json":"132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1","vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/layer_end_controls.py":"fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e","vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/reproduce_p6n.py":"aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca","vendor/pr1022/research/gauge44-leaver8/construction/leaver/CHAIN-PINS-k8.json":"9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9","vendor/pr1022/research/gauge44-leaver8/construction/leaver/CODED-CELLS-k8.json":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563","vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz":"6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33","vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz":"24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb","vendor/pr1022/research/gauge44-leaver8/construction/leaver/FRAME-RECIPE-LV-k8.json":"b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065","vendor/pr1022/research/gauge44-leaver8/construction/leaver/HPE-RECIPE-k8.json":"907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9","vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEAVER-PINS-k8.json":"ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6","vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-STACK-k8.json":"d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19","vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-k8.json":"b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914","vendor/pr1022/research/gauge44-leaver8/construction/leaver/PIVOT-SWAP-k8.json":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb","vendor/pr1022/research/gauge44-leaver8/construction/leaver/PROMO-RECIPE-k8.json":"bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83","vendor/pr1022/research/gauge44-leaver8/construction/leaver/RECIPE-U8-k8.json":"51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e","vendor/pr1022/research/gauge44-leaver8/construction/leaver/RECIPE-X4-k8.json":"4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1","vendor/pr1022/research/gauge44-leaver8/construction/leaver/REGROUP-LEAVER-k8.json":"b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e","vendor/pr1022/research/gauge44-leaver8/construction/leaver/TRI-LEAVER-k8.json":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30","vendor/pr1022/research/gauge44-leaver8/construction/leaver/build_frames_lv.py":"2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b","vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01+.json":"3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c","vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01-.json":"8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927","vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23+.json":"53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d","vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23-.json":"e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d","vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45+.json":"ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9","vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45-.json":"302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7","vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67+.json":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05","vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67-.json":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05","vendor/pr1022/research/gauge44-leaver8/construction/leaver/cgx_leaver.py":"3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c","vendor/pr1022/research/gauge44-leaver8/construction/leaver/layer_end_controls_leaver.py":"4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206","vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver.py":"831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30","vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver_chain.py":"2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5","vendor/pr1022/research/gauge44-leaver8/construction/notri/PRIO6.json":"de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15","vendor/pr1022/research/gauge44-leaver8/construction/notri/cgx.py":"3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418","vendor/pr1022/research/gauge44-leaver8/construction/notri/cold44x.py":"f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296","vendor/pr1022/research/gauge44-leaver8/construction/notri/port_stage_x.py":"38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7","vendor/pr1022/research/gauge44-leaver8/construction/notri/reproduce_notri.py":"90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8","vendor/pr1022/research/gauge44-leaver8/construction/promo/LOCAL-PINS-p6n-k4.json":"a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f","vendor/pr1022/research/gauge44-leaver8/construction/promo/PROMO-RECIPE-p6n-k4.json":"fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90","vendor/pr1022/research/gauge44-leaver8/construction/promo/build_promotion.py":"9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf","vendor/pr1022/research/gauge44-leaver8/construction/promo/make_recipe.py":"ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122","vendor/pr1022/research/gauge44-leaver8/construction/promo/promo_controls.py":"786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372","vendor/pr1022/research/gauge44-leaver8/construction/promo/reproduce_promo.py":"f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026","vendor/pr1022/research/gauge44-leaver8/construction/reproduce.py":"047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92","vendor/pr1022/research/gauge44-leaver8/construction/sw4/LOCAL-PINS-sw4-P6k4.json":"3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327","vendor/pr1022/research/gauge44-leaver8/construction/sw4/NOTES.md":"3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446","vendor/pr1022/research/gauge44-leaver8/construction/sw4/SW4-RECIPE-P6k4.json":"fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa","vendor/pr1022/research/gauge44-leaver8/construction/sw4/build_sw4.py":"9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66","vendor/pr1022/research/gauge44-leaver8/construction/sw4/reproduce_sw4.py":"3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac","vendor/pr1022/research/gauge44-leaver8/data/FRONTIER.json":"56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2","vendor/pr1022/research/gauge44-leaver8/data/OWNERS.json.gz":"32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a","vendor/pr1022/research/gauge44-leaver8/data/PLAN.json":"7b3122026e82b9d9e964d2a50c7bffdc976ae3dfea64bb98b2fdad5cfbdbaa20","vendor/pr1022/research/gauge44-leaver8/data/PREPARATION.json":"1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9","vendor/pr1022/research/gauge44-leaver8/data/SPEC.json":"1208c7c3ae84c158c21b80d69f0f448d376680a7d37e15d0abc77541d3cd61d8","vendor/pr1022/research/gauge44-leaver8/data/UPSTREAM-PINS.json":"ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b","vendor/pr1022/research/gauge44-leaver8/evidence/ADMISSION-CONTROLS.json":"5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28","vendor/pr1022/research/gauge44-leaver8/evidence/ASSEMBLY.json":"847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f","vendor/pr1022/research/gauge44-leaver8/evidence/BINDING.json":"f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b","vendor/pr1022/research/gauge44-leaver8/evidence/CENTER-COMPATIBILITY.json":"c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3","vendor/pr1022/research/gauge44-leaver8/evidence/LOCAL-STAGES.json":"64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591","vendor/pr1022/research/gauge44-leaver8/evidence/REPLAY.json":"45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2","vendor/pr1022/research/gauge44-leaver8/evidence/STAGES.json":"09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458","vendor/pr1022/research/gauge44-leaver8/evidence/audit/ASYNC-AUDIT.json":"df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662","vendor/pr1022/research/gauge44-leaver8/evidence/audit/GLOBAL-PREFIX.json":"5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671","vendor/pr1022/research/gauge44-leaver8/evidence/audit/IDLE-REMAINDER-FRAMES.json":"95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048","vendor/pr1022/research/gauge44-leaver8/evidence/audit/OWNERS-AND-PROFILE.json":"a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313","vendor/pr1022/research/gauge44-leaver8/evidence/audit/PREFIX-AND-INVOICE.json":"14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582","vendor/pr1022/research/gauge44-leaver8/evidence/global/ACTUAL-SIGMAS.json.gz":"bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f","vendor/pr1022/research/gauge44-leaver8/evidence/global/GLOBAL-TEMPLATE.json.gz":"f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b","vendor/pr1022/research/gauge44-leaver8/evidence/global/HOSTED.json":"60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e","vendor/pr1022/research/gauge44-leaver8/evidence/global/IDLE-REMAINDER-FRAMES.json.gz":"734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784","vendor/pr1022/research/gauge44-leaver8/evidence/layers/LOCAL-AUDIT-LAYERED.json":"a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff","vendor/pr1022/research/gauge44-leaver8/evidence/leaver/CELL-MUTANTS-LV.json":"308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220","vendor/pr1022/research/gauge44-leaver8/evidence/leaver/FRAME-CONTROLS-LV-k8.json":"9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd","vendor/pr1022/research/gauge44-leaver8/evidence/local/CANONICAL-WORD.json.gz":"92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed","vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-RECIPES.json":"0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771","vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-REVIEW.json":"4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12","vendor/pr1022/research/gauge44-leaver8/evidence/local/FULL-WORD.json.gz":"0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e","vendor/pr1022/research/gauge44-leaver8/evidence/local/INDEPENDENT-LOCAL-REPLAY.json":"18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e","vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-CHECKS.json":"2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c","vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-PROGRAMS.json.gz":"172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2","vendor/pr1022/research/gauge44-leaver8/evidence/local/RESIDUAL-ADAPTERS.json":"bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94","vendor/pr1022/research/gauge44-leaver8/evidence/local/SCALAR-FRAME-AUDIT.json":"cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb","vendor/pr1022/research/gauge44-leaver8/evidence/local/WRAPPER-CHECKS.json":"84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7","vendor/pr1022/research/gauge44-leaver8/hosting/PROOF.md":"45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0","vendor/pr1022/research/gauge44-leaver8/hosting/README.md":"004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1","vendor/pr1022/research/gauge44-leaver8/hosting/audit_frozen.py":"a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659","vendor/pr1022/research/gauge44-leaver8/hosting/expand_owners.py":"0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70","vendor/pr1022/research/gauge44-leaver8/hosting/frozen/FROZEN-AUDIT.json":"df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b","vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MAJORIZATION.json.gz":"ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf","vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MANIFEST.json":"9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967","vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MATCHING-RECEIPT.json":"e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2","vendor/pr1022/research/gauge44-leaver8/hosting/frozen/OWNERS.json.gz":"90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57","vendor/pr1022/research/gauge44-leaver8/hosting/frozen/REPRODUCTION.json":"8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81","vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-OWNERS.json.gz":"eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048","vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-RECEIPT.json":"aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba","vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-REPRODUCTION.json":"4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194","vendor/pr1022/research/gauge44-leaver8/hosting/reproduce.py":"7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82","vendor/pr1022/research/gauge44-leaver8/hosting/reuse_owners.py":"2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402","vendor/pr1022/research/gauge44-leaver8/independent/CENTRE-GUARD-REVIEW.md":"7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897","vendor/pr1022/research/gauge44-leaver8/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json":"9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9","vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json":"631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b","vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-INDEPENDENT-PRICE.json":"6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683","vendor/pr1022/research/gauge44-leaver8/independent/README.md":"25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89","vendor/pr1022/research/gauge44-leaver8/independent/audit_local.py":"03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd","vendor/pr1022/research/gauge44-leaver8/independent/price_profile.py":"d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf","vendor/pr1022/research/gauge44-leaver8/independent/review_guards.py":"b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d","vendor/pr1022/research/gauge44-leaver8/inputs/PR589-EXPECTED.json":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4","vendor/pr1022/research/gauge44-leaver8/verify_global.py":"16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a","vendor/pr1022/research/gauge44-leaver8/verify_manifest.py":"723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b","vendor/pr1022/research/gauge44-slots/CONSTRUCTION.md":"7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea","vendor/pr1022/research/gauge44-slots/LICENSE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","vendor/pr1022/research/gauge44-slots/LOCAL-VALIDATION.json":"f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e","vendor/pr1022/research/gauge44-slots/MANIFEST.json":"9a6f239b1618a43262e56735a99cc59b6f5a6e8816a794a34413e89cc33f4976","vendor/pr1022/research/gauge44-slots/NOTICE.md":"7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf","vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BARCH.md":"c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d","vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BIT.md":"dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7","vendor/pr1022/research/gauge44-slots/PROOF-NOTE-FRAMES-X4.md":"39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036","vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LAYERS.md":"92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f","vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LEAVER.md":"e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3","vendor/pr1022/research/gauge44-slots/PROOF-NOTE-NOTRI.md":"774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414","vendor/pr1022/research/gauge44-slots/PROOF-NOTE-P6N.md":"cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d","vendor/pr1022/research/gauge44-slots/PROOF-NOTE-PROMO.md":"c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae","vendor/pr1022/research/gauge44-slots/PROOF-NOTE-SW4.md":"d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d","vendor/pr1022/research/gauge44-slots/README.md":"bd4248499e577321f17aacba1d7815a5eb0f9cbe88faeb8fef38b71bdf3a684c","vendor/pr1022/research/gauge44-slots/RESULT.json":"6cbc5f16cb2bdc279cf518b8670cedec1869069daa609a6803d4d377f13b813c","vendor/pr1022/research/gauge44-slots/SOURCES.json":"abb903d9b46388f99325a3939eb68171ac163c66b4b62b7961ea46daa20a88f0","vendor/pr1022/research/gauge44-slots/UPSTREAM-NOTICE.md":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610","vendor/pr1022/research/gauge44-slots/code/assemble.py":"4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec","vendor/pr1022/research/gauge44-slots/code/assembly_controls.py":"e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162","vendor/pr1022/research/gauge44-slots/code/audit_allcold.py":"a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503","vendor/pr1022/research/gauge44-slots/code/bind_providers_portable.py":"1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6","vendor/pr1022/research/gauge44-slots/code/bit_supplier_controls.py":"e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5","vendor/pr1022/research/gauge44-slots/code/emit_allcold.py":"17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa","vendor/pr1022/research/gauge44-slots/code/freeze_spec.py":"f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93","vendor/pr1022/research/gauge44-slots/code/generated_identity.py":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708","vendor/pr1022/research/gauge44-slots/code/invoice_allcold.py":"141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec","vendor/pr1022/research/gauge44-slots/code/prepare_global.py":"8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc","vendor/pr1022/research/gauge44-slots/code/restore_parent.py":"69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d","vendor/pr1022/research/gauge44-slots/code/witness.py":"779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444","vendor/pr1022/research/gauge44-slots/construction/COLD44-RECIPE.json.gz":"22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c","vendor/pr1022/research/gauge44-slots/construction/COMPLETION-PRIORITY.json":"0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47","vendor/pr1022/research/gauge44-slots/construction/INPUTS.json":"edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99","vendor/pr1022/research/gauge44-slots/construction/LICENSE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","vendor/pr1022/research/gauge44-slots/construction/NOTICE.md":"defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816","vendor/pr1022/research/gauge44-slots/construction/REBUILD-CHECKS.json":"1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91","vendor/pr1022/research/gauge44-slots/construction/UPSTREAM-NOTICE.md":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610","vendor/pr1022/research/gauge44-slots/construction/barch/LOCAL-PINS-barch-U8.json":"2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5","vendor/pr1022/research/gauge44-slots/construction/barch/RECIPE-U8.json":"292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652","vendor/pr1022/research/gauge44-slots/construction/barch/build_tri.py":"0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e","vendor/pr1022/research/gauge44-slots/construction/barch/reproduce_barch.py":"19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1","vendor/pr1022/research/gauge44-slots/construction/barch/run_controls.py":"42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476","vendor/pr1022/research/gauge44-slots/construction/build_gauge_cold44.py":"ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb","vendor/pr1022/research/gauge44-slots/construction/construct_gauge_xcentre.py":"d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217","vendor/pr1022/research/gauge44-slots/construction/frames/FRAME-RECIPE-sw4.json":"a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473","vendor/pr1022/research/gauge44-slots/construction/frames/LOCAL-PINS-frames-sw4.json":"bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f","vendor/pr1022/research/gauge44-slots/construction/frames/build_frames.py":"200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb","vendor/pr1022/research/gauge44-slots/construction/frames/frame_controls.py":"477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77","vendor/pr1022/research/gauge44-slots/construction/frames/reproduce_frames.py":"dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832","vendor/pr1022/research/gauge44-slots/construction/jx/LOCAL-PINS-jx-X4.json":"95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974","vendor/pr1022/research/gauge44-slots/construction/jx/RECIPE-X4.json":"9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd","vendor/pr1022/research/gauge44-slots/construction/jx/build_jx.py":"3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916","vendor/pr1022/research/gauge44-slots/construction/jx/reproduce_jx.py":"5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c","vendor/pr1022/research/gauge44-slots/construction/layers/build_pivot_swap.py":"8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8","vendor/pr1022/research/gauge44-slots/construction/layers/layer_end_controls.py":"7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef","vendor/pr1022/research/gauge44-slots/construction/layers/reproduce_layers.py":"435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e","vendor/pr1022/research/gauge44-slots/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz":"3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0","vendor/pr1022/research/gauge44-slots/construction/layers_np/HPE-RECIPE-NP.json":"43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1","vendor/pr1022/research/gauge44-slots/construction/layers_np/PIVOT-SWAP-NP.json":"d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5","vendor/pr1022/research/gauge44-slots/construction/layers_np/reproduce_np.py":"1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c","vendor/pr1022/research/gauge44-slots/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz":"17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4","vendor/pr1022/research/gauge44-slots/construction/layers_p6n/P6N-SPEC.json":"132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1","vendor/pr1022/research/gauge44-slots/construction/layers_p6n/layer_end_controls.py":"fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e","vendor/pr1022/research/gauge44-slots/construction/layers_p6n/reproduce_p6n.py":"aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca","vendor/pr1022/research/gauge44-slots/construction/leaver/CHAIN-PINS-k8.json":"9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9","vendor/pr1022/research/gauge44-slots/construction/leaver/CODED-CELLS-k8.json":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563","vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz":"6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33","vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz":"24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb","vendor/pr1022/research/gauge44-slots/construction/leaver/FRAME-RECIPE-LV-k8.json":"b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065","vendor/pr1022/research/gauge44-slots/construction/leaver/HPE-RECIPE-k8.json":"907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9","vendor/pr1022/research/gauge44-slots/construction/leaver/LEAVER-PINS-k8.json":"ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6","vendor/pr1022/research/gauge44-slots/construction/leaver/LEC-REASON-PINS-STACK-k8.json":"d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19","vendor/pr1022/research/gauge44-slots/construction/leaver/LEC-REASON-PINS-k8.json":"b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914","vendor/pr1022/research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb","vendor/pr1022/research/gauge44-slots/construction/leaver/PROMO-RECIPE-k8.json":"bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83","vendor/pr1022/research/gauge44-slots/construction/leaver/RECIPE-U8-k8.json":"51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e","vendor/pr1022/research/gauge44-slots/construction/leaver/RECIPE-X4-k8.json":"4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1","vendor/pr1022/research/gauge44-slots/construction/leaver/REGROUP-LEAVER-k8.json":"b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e","vendor/pr1022/research/gauge44-slots/construction/leaver/TRI-LEAVER-k8.json":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30","vendor/pr1022/research/gauge44-slots/construction/leaver/build_frames_lv.py":"2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b","vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-01+.json":"3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c","vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-01-.json":"8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927","vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-23+.json":"53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d","vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-23-.json":"e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d","vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-45+.json":"ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9","vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-45-.json":"302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7","vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-67+.json":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05","vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-67-.json":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05","vendor/pr1022/research/gauge44-slots/construction/leaver/cgx_leaver.py":"3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c","vendor/pr1022/research/gauge44-slots/construction/leaver/layer_end_controls_leaver.py":"4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206","vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver.py":"831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30","vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver_chain.py":"2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5","vendor/pr1022/research/gauge44-slots/construction/notri/PRIO6.json":"de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15","vendor/pr1022/research/gauge44-slots/construction/notri/cgx.py":"3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418","vendor/pr1022/research/gauge44-slots/construction/notri/cold44x.py":"f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296","vendor/pr1022/research/gauge44-slots/construction/notri/port_stage_x.py":"38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7","vendor/pr1022/research/gauge44-slots/construction/notri/reproduce_notri.py":"90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8","vendor/pr1022/research/gauge44-slots/construction/promo/LOCAL-PINS-p6n-k4.json":"a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f","vendor/pr1022/research/gauge44-slots/construction/promo/PROMO-RECIPE-p6n-k4.json":"fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90","vendor/pr1022/research/gauge44-slots/construction/promo/build_promotion.py":"9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf","vendor/pr1022/research/gauge44-slots/construction/promo/make_recipe.py":"ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122","vendor/pr1022/research/gauge44-slots/construction/promo/promo_controls.py":"786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372","vendor/pr1022/research/gauge44-slots/construction/promo/reproduce_promo.py":"f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026","vendor/pr1022/research/gauge44-slots/construction/reproduce.py":"047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92","vendor/pr1022/research/gauge44-slots/construction/slots/RECIPE-SLOTS-k8.json":"0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b","vendor/pr1022/research/gauge44-slots/construction/slots/SLOT-PINS-k8.json":"55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2","vendor/pr1022/research/gauge44-slots/construction/slots/verify_slots.py":"bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be","vendor/pr1022/research/gauge44-slots/construction/sw4/LOCAL-PINS-sw4-P6k4.json":"3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327","vendor/pr1022/research/gauge44-slots/construction/sw4/NOTES.md":"3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446","vendor/pr1022/research/gauge44-slots/construction/sw4/SW4-RECIPE-P6k4.json":"fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa","vendor/pr1022/research/gauge44-slots/construction/sw4/build_sw4.py":"9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66","vendor/pr1022/research/gauge44-slots/construction/sw4/reproduce_sw4.py":"3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac","vendor/pr1022/research/gauge44-slots/data/FRONTIER.json":"56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2","vendor/pr1022/research/gauge44-slots/data/OWNERS.json.gz":"32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a","vendor/pr1022/research/gauge44-slots/data/PLAN.json":"1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08","vendor/pr1022/research/gauge44-slots/data/PREPARATION.json":"1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9","vendor/pr1022/research/gauge44-slots/data/SPEC.json":"8e95ae8087124189cbd366d0e9d1c5ebededff536ff3501927b4b2a2e8dac70e","vendor/pr1022/research/gauge44-slots/data/UPSTREAM-PINS.json":"ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b","vendor/pr1022/research/gauge44-slots/evidence/ADMISSION-CONTROLS.json":"5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28","vendor/pr1022/research/gauge44-slots/evidence/ASSEMBLY.json":"847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f","vendor/pr1022/research/gauge44-slots/evidence/BINDING.json":"f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b","vendor/pr1022/research/gauge44-slots/evidence/CENTER-COMPATIBILITY.json":"c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3","vendor/pr1022/research/gauge44-slots/evidence/LOCAL-STAGES.json":"64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591","vendor/pr1022/research/gauge44-slots/evidence/REPLAY.json":"45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2","vendor/pr1022/research/gauge44-slots/evidence/STAGES.json":"09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458","vendor/pr1022/research/gauge44-slots/evidence/audit/ASYNC-AUDIT.json":"df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662","vendor/pr1022/research/gauge44-slots/evidence/audit/GLOBAL-PREFIX.json":"5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671","vendor/pr1022/research/gauge44-slots/evidence/audit/IDLE-REMAINDER-FRAMES.json":"95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048","vendor/pr1022/research/gauge44-slots/evidence/audit/OWNERS-AND-PROFILE.json":"a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313","vendor/pr1022/research/gauge44-slots/evidence/audit/PREFIX-AND-INVOICE.json":"14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582","vendor/pr1022/research/gauge44-slots/evidence/global/ACTUAL-SIGMAS.json.gz":"bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f","vendor/pr1022/research/gauge44-slots/evidence/global/GLOBAL-TEMPLATE.json.gz":"f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b","vendor/pr1022/research/gauge44-slots/evidence/global/HOSTED.json":"60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e","vendor/pr1022/research/gauge44-slots/evidence/global/IDLE-REMAINDER-FRAMES.json.gz":"734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784","vendor/pr1022/research/gauge44-slots/evidence/layers/LOCAL-AUDIT-LAYERED.json":"a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff","vendor/pr1022/research/gauge44-slots/evidence/leaver/CELL-MUTANTS-LV.json":"308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220","vendor/pr1022/research/gauge44-slots/evidence/leaver/FRAME-CONTROLS-LV-k8.json":"9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd","vendor/pr1022/research/gauge44-slots/evidence/local/CANONICAL-WORD.json.gz":"92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed","vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-RECIPES.json":"0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771","vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-REVIEW.json":"4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12","vendor/pr1022/research/gauge44-slots/evidence/local/FULL-WORD.json.gz":"0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e","vendor/pr1022/research/gauge44-slots/evidence/local/INDEPENDENT-LOCAL-REPLAY.json":"18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e","vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-CHECKS.json":"2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c","vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-PROGRAMS.json.gz":"172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2","vendor/pr1022/research/gauge44-slots/evidence/local/RESIDUAL-ADAPTERS.json":"bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94","vendor/pr1022/research/gauge44-slots/evidence/local/SCALAR-FRAME-AUDIT.json":"cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb","vendor/pr1022/research/gauge44-slots/evidence/local/WRAPPER-CHECKS.json":"84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7","vendor/pr1022/research/gauge44-slots/hosting/PROOF.md":"45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0","vendor/pr1022/research/gauge44-slots/hosting/README.md":"004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1","vendor/pr1022/research/gauge44-slots/hosting/audit_frozen.py":"a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659","vendor/pr1022/research/gauge44-slots/hosting/expand_owners.py":"0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70","vendor/pr1022/research/gauge44-slots/hosting/frozen/FROZEN-AUDIT.json":"df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b","vendor/pr1022/research/gauge44-slots/hosting/frozen/MAJORIZATION.json.gz":"ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf","vendor/pr1022/research/gauge44-slots/hosting/frozen/MANIFEST.json":"9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967","vendor/pr1022/research/gauge44-slots/hosting/frozen/MATCHING-RECEIPT.json":"e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2","vendor/pr1022/research/gauge44-slots/hosting/frozen/OWNERS.json.gz":"90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57","vendor/pr1022/research/gauge44-slots/hosting/frozen/REPRODUCTION.json":"8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81","vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-OWNERS.json.gz":"eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048","vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-RECEIPT.json":"aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba","vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-REPRODUCTION.json":"4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194","vendor/pr1022/research/gauge44-slots/hosting/reproduce.py":"7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82","vendor/pr1022/research/gauge44-slots/hosting/reuse_owners.py":"2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402","vendor/pr1022/research/gauge44-slots/independent/CENTRE-GUARD-REVIEW.md":"7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897","vendor/pr1022/research/gauge44-slots/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json":"9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9","vendor/pr1022/research/gauge44-slots/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json":"631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b","vendor/pr1022/research/gauge44-slots/independent/GAUGE44-INDEPENDENT-PRICE.json":"6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683","vendor/pr1022/research/gauge44-slots/independent/README.md":"25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89","vendor/pr1022/research/gauge44-slots/independent/audit_local.py":"03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd","vendor/pr1022/research/gauge44-slots/independent/price_profile.py":"d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf","vendor/pr1022/research/gauge44-slots/independent/review_guards.py":"b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d","vendor/pr1022/research/gauge44-slots/inputs/PR589-EXPECTED.json":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4","vendor/pr1022/research/gauge44-slots/verify_global.py":"16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a","vendor/pr1022/research/gauge44-slots/verify_manifest.py":"723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b","vendor/pr1130/research/gauge44-ends7-x54-t16/CONSTRUCTION.md":"29ff356276e2f5d09071d1e1a22d3364d7c4bba0c9c0d01f448baadb75721f51","vendor/pr1130/research/gauge44-ends7-x54-t16/LICENSE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","vendor/pr1130/research/gauge44-ends7-x54-t16/LOCAL-VALIDATION.json":"f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e","vendor/pr1130/research/gauge44-ends7-x54-t16/MANIFEST.json":"7d28c881741f1cb683fabab3e3db8f87ede4d0161394363631084f744a0f6841","vendor/pr1130/research/gauge44-ends7-x54-t16/NOTICE.md":"7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf","vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-BARCH.md":"c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d","vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-BIT.md":"dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7","vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-FRAMES-X4.md":"39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036","vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-LAYERS.md":"92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f","vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-LEAVER.md":"e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3","vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-NOTRI.md":"774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414","vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-P6N.md":"cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d","vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-PROMO.md":"c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae","vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-SW4.md":"d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d","vendor/pr1130/research/gauge44-ends7-x54-t16/README.md":"4da874b54a0ba5618e420d0849620fe518e14cade39b26ffba1b3914e97085f9","vendor/pr1130/research/gauge44-ends7-x54-t16/RESULT.json":"e84145a136dce8483034ed536795568dfc15ede3e44f5e07ff86620eec4dbd98","vendor/pr1130/research/gauge44-ends7-x54-t16/SOURCES.json":"15e351f394964140a7e8841df44185e7cdc5bdeef3042cb9d1302e10b39c1d49","vendor/pr1130/research/gauge44-ends7-x54-t16/UPSTREAM-NOTICE.md":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610","vendor/pr1130/research/gauge44-ends7-x54-t16/code/assemble.py":"15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a","vendor/pr1130/research/gauge44-ends7-x54-t16/code/assembly_controls.py":"da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d","vendor/pr1130/research/gauge44-ends7-x54-t16/code/audit_allcold.py":"1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc","vendor/pr1130/research/gauge44-ends7-x54-t16/code/bind_providers_portable.py":"1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6","vendor/pr1130/research/gauge44-ends7-x54-t16/code/bit_supplier_controls.py":"e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5","vendor/pr1130/research/gauge44-ends7-x54-t16/code/emit_allcold.py":"354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e","vendor/pr1130/research/gauge44-ends7-x54-t16/code/freeze_spec.py":"5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2","vendor/pr1130/research/gauge44-ends7-x54-t16/code/generated_identity.py":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708","vendor/pr1130/research/gauge44-ends7-x54-t16/code/invoice_allcold.py":"71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8","vendor/pr1130/research/gauge44-ends7-x54-t16/code/prepare_global.py":"8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc","vendor/pr1130/research/gauge44-ends7-x54-t16/code/restore_parent.py":"69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d","vendor/pr1130/research/gauge44-ends7-x54-t16/code/witness.py":"779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/COLD44-RECIPE.json.gz":"22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/COMPLETION-PRIORITY.json":"0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/INPUTS.json":"edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/LICENSE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/NOTICE.md":"defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/REBUILD-CHECKS.json":"1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/UPSTREAM-NOTICE.md":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/LOCAL-PINS-barch-U8.json":"2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/RECIPE-U8.json":"292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/build_tri.py":"0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/reproduce_barch.py":"19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/run_controls.py":"42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/build_gauge_cold44.py":"ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/construct_gauge_xcentre.py":"d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/ENDS7-PINS-k8.json":"88b276bb95c5cc8b93fd7aaa935ee6ae3544cf704952ba797d929ee8a18d6044","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/README.md":"3190ed220438c4c611ab2dd4f695991c3ed2ed90cc9e9dfaed9b8cee5da28cfd","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/RECIPE-ENDS7-k8.json":"18b8563294b9052a33dd7eafc4ca35f4feec3871bfdec4b00153966fa87e24b3","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/build_ends7.py":"4f575f1e73b2ea5f051b3defdf2013310fa462cc120e44d26a3b1ab6a3ef2148","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/end7_controls.py":"c7edf1d6ee059d6c9e73921179154f1c8556b2a6b738246c4ea9021ccc0fe067","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/NOTICE.md":"3da80a5155c625bff907a42a82c65bfcf92854d2c960bcea4537c19c99efd4f2","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/PROOF.md":"d73e4522602404caba8e7f247005a45c8a8cd26ffd2a70d65f4f9556a391d053","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/lowering.py":"ba42903b841722b872f98f3afa77d47976ca66a0cb4c0dd6b8de04462d4baa2b","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/phases_fast.py":"122c671f5bf49a1696b5edc91d76d7c16b1837513dd6c54ace4add747cd3c657","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/sparse_state.py":"e91210ecd5085cf9add872f40bb434806838da488e12152c63c86e51fb5a7a37","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/inputs/CODED-CELLS-k8.json":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/inputs/TRI-LEAVER-k8.json":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/premise_check.py":"28a7f881a988b29b8ed3c927dd142ac3d4ee273dedab3a65bb02c01a64eb2639","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/verify_1049.py":"a1736324c6db161733d8e11f608defd87b7f97cacd611203d22499e4c7de5545","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/verify_ends7.py":"23e1408149ee4a23de1e77d989fc4fba43bd3978663c846c9147334db5368764","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/RECIPE-X54-ends7.json":"5704c7d1ad8be05f51b7c8ff39c6f2430bf787bc1ac5919e6f1ae293df369748","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/X54-PINS.json":"a3cd63bcbe77c5e42efeac5234b8b9d5bc2e0234838020622fe1dda717d8020d","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/build_tri.py":"2432372f148a4d34d2909ff8a7e2a239d6ee51837892380963de6efd45c8f2d6","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/run_controls.py":"51454916979eabf8f69a130a558216cb02df18626b8dd4cddd77a2fb745f2a86","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/FRAME-RECIPE-sw4.json":"a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/LOCAL-PINS-frames-sw4.json":"bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/build_frames.py":"200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/frame_controls.py":"477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/reproduce_frames.py":"dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/LOCAL-PINS-jx-X4.json":"95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/RECIPE-X4.json":"9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/build_jx.py":"3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/reproduce_jx.py":"5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/build_pivot_swap.py":"8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/layer_end_controls.py":"7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/reproduce_layers.py":"435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz":"3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/HPE-RECIPE-NP.json":"43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/PIVOT-SWAP-K8.json":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/PIVOT-SWAP-NP.json":"d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/reproduce_np.py":"1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz":"17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/P6N-SPEC.json":"132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/layer_end_controls.py":"fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/reproduce_p6n.py":"aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/CHAIN-PINS-k8.json":"9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/CODED-CELLS-k8.json":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz":"6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz":"24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/FRAME-RECIPE-LV-k8.json":"b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/HPE-RECIPE-k8.json":"907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEAVER-PINS-k8.json":"ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEC-REASON-PINS-STACK-k8.json":"d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEC-REASON-PINS-k8.json":"b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/PIVOT-SWAP-k8.json":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/PROMO-RECIPE-k8.json":"bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/RECIPE-U8-k8.json":"51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/RECIPE-X4-k8.json":"4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/REGROUP-LEAVER-k8.json":"b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/TRI-LEAVER-k8.json":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/build_frames_lv.py":"2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-01+.json":"3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-01-.json":"8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-23+.json":"53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-23-.json":"e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-45+.json":"ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-45-.json":"302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-67+.json":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-67-.json":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cgx_leaver.py":"3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/layer_end_controls_leaver.py":"4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/reproduce_leaver.py":"831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/reproduce_leaver_chain.py":"2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/PRIO6.json":"de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/cgx.py":"3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/cold44x.py":"f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/port_stage_x.py":"38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/reproduce_notri.py":"90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/LOCAL-PINS-p6n-k4.json":"a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/PROMO-RECIPE-p6n-k4.json":"fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/build_promotion.py":"9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/make_recipe.py":"ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/promo_controls.py":"786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/reproduce_promo.py":"f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/reproduce.py":"047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/RECIPE-SLOTS-k8.json":"0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/SLOT-PINS-k8.json":"55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/verify_slots.py":"bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/LOCAL-PINS-sw4-P6k4.json":"3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/NOTES.md":"3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/SW4-RECIPE-P6k4.json":"fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/build_sw4.py":"9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66","vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/reproduce_sw4.py":"3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac","vendor/pr1130/research/gauge44-ends7-x54-t16/data/FRONTIER.json":"56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2","vendor/pr1130/research/gauge44-ends7-x54-t16/data/OWNERS.json.gz":"d275e6c0ef501fdc9cb6fba883d65666d10391ad35ed5e66b2f4d7689ec75d4b","vendor/pr1130/research/gauge44-ends7-x54-t16/data/PLAN.json":"e104d46a767dd0e223902d6f965aca2485d303499c019cc0d29e1b270da68e5f","vendor/pr1130/research/gauge44-ends7-x54-t16/data/PREPARATION.json":"1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9","vendor/pr1130/research/gauge44-ends7-x54-t16/data/SPEC-T8.json":"4823f39d0d89ab148bbbbe42bdbc2a27755d921424041887c8614d0bacb293f9","vendor/pr1130/research/gauge44-ends7-x54-t16/data/SPEC.json":"8d7f0576d4aeca183c6e3b23a56897ff668cd0b943b75886fb1ea922091bd3e1","vendor/pr1130/research/gauge44-ends7-x54-t16/data/T8/OWNERS.json.gz":"93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045","vendor/pr1130/research/gauge44-ends7-x54-t16/data/T8/PLAN.json":"0214279f43204f9334aef8c3f6f691e8b81a715628c45fc8341c21a19d26d4a5","vendor/pr1130/research/gauge44-ends7-x54-t16/data/UPSTREAM-PINS.json":"ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ADMISSION-CONTROLS.json":"a433ec1f6bb62f2190e9abb70af8066b5264296d3c8c72de0bd7dcd034486f7d","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ASSEMBLY.json":"1b2779a637ec4b6e52df11000f58beef5298be7e20ccdb1cc2260c3688d547eb","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/AUDIT-LOCAL-COMPOSITE.json":"7a4910a23f38e2f1f2b4cac8fe39ef535cf19a5c8a0f339ba8391749f38862f3","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/BINDING.json":"3c8b3f3c7aae4b604ff6cd6f40bd9e6b6ca0507624892b5266e86523ec5fa5f6","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/BIT-SUPPLIER-CONTROLS.json":"23d0ef02c2bf4daeba56aba2660a7284f84a9bacacfc63d5b6b987717cca1e13","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/CENTER-COMPATIBILITY.json":"c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ENDS7-X54-T16-STANDALONE.json":"bf2c45dc34ceb397f7a6a7df709100fbdfc14b31592a3ee01ea889cab4c11e17","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/INDEPENDENT-T16.json":"1a1631047d00b241f2869473894621a6f364f317454f3548055db19919570def","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/INTERMEDIATE-ENDS7-T16-PROVENANCE.json":"43bf3476c9d5583ccd2567b0278365244e259eeeeda7cf155e4276eb58f99263","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/LOCAL-STAGES.json":"8627a02402bae24dbb79c3e7945b5ae2fc3c71384530fdba8b011424ac004de5","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/REPLAY.json":"0cabd7661da0d91e9141f6d4bfe8530e4c29cb30add3c67aecb71e2b5ffb9120","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/STAGES.json":"f12cc135a68a12555db77345c18c14f61c459b5a7eee5c0b42ecd91248318751","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/ASYNC-AUDIT.json":"a63a9378f1d3c901317334822ac8e286ef29ebcf50337cf6386214b9b5e651b8","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/GLOBAL-PREFIX.json":"1c4ca6a87f565623e1ea4a477cb18c25fee4e312053b79d0c2762010ae7dd157","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/IDLE-REMAINDER-FRAMES.json":"c5f200950fda60416c657903d85ffbf270013de23165a6a401a40b9b7f2a6e10","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/OWNERS-AND-PROFILE.json":"1fa9c9acbd54f9bec183a070f99eb9803395d35e847ab6e37d2489b2d41d2e40","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/PREFIX-AND-INVOICE.json":"17749a944bbeb7980a56aeb8ad929d522480869f4c9760e6103a606a58b5b034","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/ACTUAL-SIGMAS.json.gz":"86a34c81c1c85e9fcf57ce7dec1c29669377c1d3fb734de9f9c6e031a8f5ef1d","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/GLOBAL-TEMPLATE.json.gz":"e845c64551b8db5782dd2544e2feeb8245e6f66766ef824e5668938fca5133ca","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/HOSTED.json":"24c04f2da0ee6334d806f71e461e2d6ce46aa363be98f06dd256199d840bad8e","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/IDLE-REMAINDER-FRAMES.json.gz":"9caadc6bd699825eca1458b51d3fcc78d31463b53d7b6001477e24f082a10350","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/layers/LOCAL-AUDIT-LAYERED.json":"a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/leaver/CELL-MUTANTS-LV.json":"308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/leaver/FRAME-CONTROLS-LV-k8.json":"9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CANONICAL-WORD.json.gz":"ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CLIFFORD-RECIPES.json":"8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CLIFFORD-REVIEW.json":"1f71895a8511e536684feac71ab250941634cdfb59141ac0b831c358c021ef7f","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/FULL-WORD.json.gz":"34d708aa590b16b54094fbaaa804fe2ea00690e0d863525c85db7b0213861c4b","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/INDEPENDENT-LOCAL-REPLAY.json":"0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/LOCAL-CHECKS.json":"b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/LOCAL-PROGRAMS.json.gz":"94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/RESIDUAL-ADAPTERS.json":"05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/SCALAR-FRAME-AUDIT.json":"512a8d52cf28fd249eceb4557428327430e81b2b236ca2b60812b5ba5a544513","vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/WRAPPER-CHECKS.json":"4b5ebb62b23dae93fc1fe9174c8145654a8452f4b07645c285aa41c961adb1a3","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/PROOF.md":"45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/README.md":"004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/audit_frozen.py":"a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/expand_owners.py":"0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/FROZEN-AUDIT.json":"df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MAJORIZATION.json.gz":"ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MANIFEST.json":"9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MATCHING-RECEIPT.json":"e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/OWNERS.json.gz":"90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/REPRODUCTION.json":"8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-OWNERS.json.gz":"eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-RECEIPT.json":"aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-REPRODUCTION.json":"4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/reproduce.py":"7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82","vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/reuse_owners.py":"2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402","vendor/pr1130/research/gauge44-ends7-x54-t16/independent/CENTRE-GUARD-REVIEW.md":"7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897","vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json":"9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9","vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json":"631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b","vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE44-INDEPENDENT-PRICE.json":"6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683","vendor/pr1130/research/gauge44-ends7-x54-t16/independent/README.md":"25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89","vendor/pr1130/research/gauge44-ends7-x54-t16/independent/audit_local.py":"03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd","vendor/pr1130/research/gauge44-ends7-x54-t16/independent/price_profile.py":"d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf","vendor/pr1130/research/gauge44-ends7-x54-t16/independent/review_guards.py":"b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d","vendor/pr1130/research/gauge44-ends7-x54-t16/inputs/PR589-EXPECTED.json":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4","vendor/pr1130/research/gauge44-ends7-x54-t16/t16/NOTICE.md":"902370e6bfcd39dbea2ece474f15fccbcce3b8e966b2b94066bd03e5174591b5","vendor/pr1130/research/gauge44-ends7-x54-t16/t16/build_parent.py":"82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e","vendor/pr1130/research/gauge44-ends7-x54-t16/t16/indep16.py":"1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7","vendor/pr1130/research/gauge44-ends7-x54-t16/t16/lift16.py":"072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689","vendor/pr1130/research/gauge44-ends7-x54-t16/verify_manifest.py":"723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b","vendor/pr1130/research/gauge44-ends7-x54-t16/verify_t16.py":"050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46","vendor/pr1148/research/k8-coordinated-owners/CLAIM.json":"721457ddf32e3a418bf7e23e5e3009626d49eb0108c9f617263d8f5028a8e180","vendor/pr1148/research/k8-coordinated-owners/MANIFEST.json":"5b14fd65809d66123d96ca7276d1013b4d23bb54ae53d98b0fbb164e3ffbe942","vendor/pr1148/research/k8-coordinated-owners/NOTICE.md":"442756fc1c5ecfd7b7b7694b53b1ecc70aa525004cd80f7d748ccd7270555189","vendor/pr1148/research/k8-coordinated-owners/OWNERS.json.gz":"681670248da5ffe1504fab103855b6d0b8e91d176f31963fe88efa1d9d8bc2bd","vendor/pr1148/research/k8-coordinated-owners/README.md":"7df766fd7fe3e7f0435eb2190e4a199ab6698b509499e3c0004168a66d78184f","vendor/pr1148/research/k8-coordinated-owners/SOURCE-PINS.json":"80b0357d714181f36476c34f9242ae21d72839c4afad9318b4228b78889fd676","vendor/pr1148/research/k8-coordinated-owners/SPEC.json":"21d605679db7c2e2801ee0d3ef9c262e71319fc49cb98a01b2d05c8a491aa569","vendor/pr1148/research/k8-coordinated-owners/discovery/SEARCH-LOG.json":"a7b4082ce270d84fcdea6dfcc7ae0836610f41d67183156fcd5f81bffb2ef096","vendor/pr1148/research/k8-coordinated-owners/discovery/SEARCH-TRACE.json.gz":"04be238ac938f38f77327e6e83efe0ea6e2cb29ee3d95a5b783bcdf7bda3b861","vendor/pr1148/research/k8-coordinated-owners/discovery/STAGES-RELAXATION.json":"165bf9204534944b44762109bbf35ba4bdedbc867fa1dde63a90bdf593cecaa2","vendor/pr1148/research/k8-coordinated-owners/discovery/screen_stages.py":"e78a0ee907b4ee97f90b7b66a8f8da7a0044474dab7c27845b24ffbf01dede14","vendor/pr1148/research/k8-coordinated-owners/discovery/search_calls.py":"5df48ab7775bfee767d71dd8c47585977922568b532c29f4528f2c8ca5ab364d","vendor/pr1148/research/k8-coordinated-owners/evidence/ADMISSION-CONTROLS.json":"31218c75b7a28d4f5397195bad9ba7e5750366ae7b73d010a749f358ce4adda4","vendor/pr1148/research/k8-coordinated-owners/evidence/ALL-T-BOUND.json":"07cc98bd055bc3f351de2c460364dc9fae25c1b728b90d6dc3ce9b5d9da32381","vendor/pr1148/research/k8-coordinated-owners/evidence/ASSEMBLY.json":"8634e3ce597619d6da631dcd1e40bd82f327a2b500bf6963b5961c945ab810b9","vendor/pr1148/research/k8-coordinated-owners/evidence/ASYNC-AUDIT.json":"abc1e11e3184371a41e4d73d56033e8e7ff608443085926a4e0037f7e335300b","vendor/pr1148/research/k8-coordinated-owners/evidence/BASELINE-CHAIN-STEPS.json":"9f5d3b0e72c92a4f5fda023685aab2e5f23dda6e079410824126c0802bc1710a","vendor/pr1148/research/k8-coordinated-owners/evidence/BASELINE-RESULT.json":"1d43f5f4a6d77f096182d9482eecb5313a0b79c4d3e12f4f70846c6f935287be","vendor/pr1148/research/k8-coordinated-owners/evidence/BIT-SUPPLIER-CONTROLS.json":"4f996bdd4802b0eea6187f01734d4e3f482b281952d6a923dac395a27bf93eb0","vendor/pr1148/research/k8-coordinated-owners/evidence/NATIVE-BINDING.json":"6059b4f78e63c818d52b72615e42d9b80269a3d69769a14a424af6fe19f22870","vendor/pr1148/research/k8-coordinated-owners/evidence/OWNERS-AND-PROFILE.json":"ee31a5ae84bcc6344b18c67ae828693ba92ec0328223c9b6af29b04d90c80b40","vendor/pr1148/research/k8-coordinated-owners/evidence/PREFIX-AND-INVOICE.json":"22cf5aa33d7c26708d1c8b5a5f88df9b330516e6ab9e5e8e10da5857c58e7961","vendor/pr1148/research/k8-coordinated-owners/evidence/PREPARATION.json":"23105d9e89bbf7e2a64e8ce391c6b3fc7a900e4e2d7351bbd0120d05ab52a2eb","vendor/pr1148/research/k8-coordinated-owners/evidence/REPLAY.json":"842986705a5ee84c969d5b58e831dd6cd8ddf549f2ee3bebbd9c6a5dcf566857","vendor/pr1148/research/k8-coordinated-owners/evidence/RESULT.json":"7bf23e92f06971315168cfe167a0ba923f8ba0c58a5f35d93ba53f58fcdb828e","vendor/pr1148/research/k8-coordinated-owners/independent/UPSTREAM.json":"46079c0178181f97b0d35cf2fb3a05e9d33a267bef31230a56dd5c84a7b3b385","vendor/pr1148/research/k8-coordinated-owners/independent/all_t_bound.py":"0ac15a2b2eaf72060924fcd33a43b2170a5c14ecfe4345ff5da041b81bd402df","vendor/pr1148/research/k8-coordinated-owners/prepare.py":"2a92b1a55cad73c0a5168f49f432a436db86111328228e300d3e8b72e9e994e6","vendor/pr1148/research/k8-coordinated-owners/verify.py":"960ad27c57416e061d907cb5f0de7acb4901b5232c29ca88224cc6284e60b496","vendor/pr1148/research/k8-coordinated-owners/verify_manifest.py":"723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b","vendor/pr1148/research/k8-eight-ends-t16/CLAIM.json":"4ba568cb88f86a87a6c35df444b44b6f8c006ece6351279934ede873f5d61eab","vendor/pr1148/research/k8-eight-ends-t16/MANIFEST.json":"f1f5c145121485f644a134873069fc465f312e9144ab43975fa95f599ce06f59","vendor/pr1148/research/k8-eight-ends-t16/NOTICE.md":"a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0","vendor/pr1148/research/k8-eight-ends-t16/OWNERS.json.gz":"a4c79743dcc93c4260fae00b3324b97983fcd56af8bff5414243d7258a4bc97b","vendor/pr1148/research/k8-eight-ends-t16/PLAN.json.gz":"6561ecb8db5e24dd534d0f940f91830691ab375f925b20665ca0f019718e2b7a","vendor/pr1148/research/k8-eight-ends-t16/PROOF.md":"7084e8a9fedd0d5902e95500da70982343fa725d8b68c2c3210a7b0a7bb2e664","vendor/pr1148/research/k8-eight-ends-t16/README.md":"7aa1a4f5348ed9408cdebb2525eaabe50776259b939d7d49f6845503f3c585c3","vendor/pr1148/research/k8-eight-ends-t16/SEARCH.json":"bf8efc27b2ca95f4bd15ebc719d2794a0e5d2edf26fc5b4cffc8c18dcb7f6d4a","vendor/pr1148/research/k8-eight-ends-t16/SOURCE-PINS.json":"07515a4634303b85a54b570079f0efb373b36d586c72f7b023df3d2f495ad5a3","vendor/pr1148/research/k8-eight-ends-t16/SPEC.json":"30d4dcc96f1361fcee1562681291763f6ee8c08fb1f93da1ea4fd2a42a1d0b5d","vendor/pr1148/research/k8-eight-ends-t16/UPSTREAM.json":"23493f74fc09ac50442d9d83b7626d4760cfa24c785ca1d96fde8175bdd39fa6","vendor/pr1148/research/k8-eight-ends-t16/discovery/ALIASES-REFRAMED.json":"a65d322ee757815e0de08e1f3c5796b5add8c744e1c3df292af917966b09adf0","vendor/pr1148/research/k8-eight-ends-t16/discovery/BANK-STAGES.json":"ad8a80986982b67481ed4785663d83f56516542a79dc02c9ff50c991173c2771","vendor/pr1148/research/k8-eight-ends-t16/discovery/FINAL-SEARCH.json":"ed936c49a0c15d69388b03f7c71bee50b2726be353f8dd52c6dcc56b1c12e1bd","vendor/pr1148/research/k8-eight-ends-t16/discovery/HELPER-ALIASES.json":"ad1e0ffa923ce6632b2b86ad00ab004b5fc28ecd1d186e3c55727d1d6e834d73","vendor/pr1148/research/k8-eight-ends-t16/discovery/PROMOTION-GROUPS.json":"221e05ae8c2b32594490b98ca12a96fc301789d1d80752c1d5f168469f8f8c07","vendor/pr1148/research/k8-eight-ends-t16/discovery/PROMOTION-SCREEN.json":"6b5799744b7abbf4182ad594ede3984123ec559dfed1c1f50ad4f005ce713390","vendor/pr1148/research/k8-eight-ends-t16/discovery/RETIRABLE-HELPERS.json":"3670ce299d538c4215fab08e88e7553903dfc595b756bcbc157178b0dc913159","vendor/pr1148/research/k8-eight-ends-t16/discovery/SWAP-SEARCH.json":"70901cb74e475b35e0cffe99fbdae6ed74e5d315b92fdf900ef3a6ef7e542258","vendor/pr1148/research/k8-eight-ends-t16/discovery/bank_screen.py":"b6c208ab449a9371bc812a19ed13edd8121f3f042769739fab9f964959a30b78","vendor/pr1148/research/k8-eight-ends-t16/discovery/columns12-SEARCH.json.gz":"ee6f2925af9fc0dae9c2c511a35e34fe3d9983fb2df6b14de144d1166bba495a","vendor/pr1148/research/k8-eight-ends-t16/discovery/columns12.log.gz":"7056db81c9131f484f1b09931bd3a722fa78e03e8e5898645da2eea3df75638b","vendor/pr1148/research/k8-eight-ends-t16/discovery/columns144-SEARCH.json.gz":"b07b6a6dd29ec3cb03fa3827767e674b4ea06b3f2a555ba332f2dcb88ff918f9","vendor/pr1148/research/k8-eight-ends-t16/discovery/columns144.log.gz":"bcf0b3ca6bd12a9032bfd27231e5a4efe2dd3b0edf874c9a01d0ba9dc8a3889d","vendor/pr1148/research/k8-eight-ends-t16/discovery/columns24-SEARCH.json.gz":"9049ac77892a20aeeb30ccbf2a703c2b89cdbacf4f8f68a391cae10552c948b1","vendor/pr1148/research/k8-eight-ends-t16/discovery/columns24.log.gz":"6aedcc3e39ee3ee8d2f9d4f33fd0107a1dec002323a6bf5e7e29308beafd3f91","vendor/pr1148/research/k8-eight-ends-t16/discovery/columns48-SEARCH.json.gz":"adafcb5f6a7169a01a71220ea7ac94b389884112d00b1e9083961d69e4bbe467","vendor/pr1148/research/k8-eight-ends-t16/discovery/columns48.log.gz":"0d69973436734bdce8399377f617dc728f099c1da237bdb829bf1ddf20ca4c4e","vendor/pr1148/research/k8-eight-ends-t16/discovery/columns48b-SEARCH.json.gz":"fffcdb5b4f3679ab726a3abf9a8ed97559eec7975ca39ece8a140231efaad130","vendor/pr1148/research/k8-eight-ends-t16/discovery/columns48b.log.gz":"c811f9ea49dd8ddf80f54556c7e387172b5ecbd8998ed4bea795e7c2b12121e9","vendor/pr1148/research/k8-eight-ends-t16/discovery/double-calls-SEARCH.json.gz":"69df67741eae2afdd3f683f4021f478000dded1322c5820023faa77067ef6a9e","vendor/pr1148/research/k8-eight-ends-t16/discovery/double-six-SEARCH.json.gz":"0364f028731baeccbf07953a98fabbf152b3685c5dfdf309d65398946ade9883","vendor/pr1148/research/k8-eight-ends-t16/discovery/double-triples-SEARCH.json.gz":"f0040bb71eac1612bf730791a6d32bf13c7a065f0a2772a1149ced7aa71ffc77","vendor/pr1148/research/k8-eight-ends-t16/discovery/helper_aliases.py":"3b996c21bf97e950e785c2f7f3ce025ce59c754c3679f97023ababfc5ac0b295","vendor/pr1148/research/k8-eight-ends-t16/discovery/make_start.py":"3ba975c7947a3b74959a7e83a580a6f7b36e90d075157bac304a097d20e2cafd","vendor/pr1148/research/k8-eight-ends-t16/discovery/promotion_groups.py":"5244da8cffc5f56698c134ca36230bcddbbdea935bc633e4975de50b47d785d2","vendor/pr1148/research/k8-eight-ends-t16/discovery/reframe_aliases.py":"5e6342d583a7f3b99c940b6382527a000803eb728267fb4c101371b2b2128d89","vendor/pr1148/research/k8-eight-ends-t16/discovery/search_calls.py":"273d3b3e1de5644af5a13a2c7cb18a34a3689b80830b614d7d2ed1da998a90ee","vendor/pr1148/research/k8-eight-ends-t16/discovery/search_columns.py":"edbb093207e21ee4301382f00198c6eccb197949068e96c76e46a2e61dc90f82","vendor/pr1148/research/k8-eight-ends-t16/discovery/search_uniform_blocks.py":"ab6308d536b37b14996e06b857a4f11433b3cb551444e836eb12ec560b452bb8","vendor/pr1148/research/k8-eight-ends-t16/discovery/swap_frames.py":"cd89dd461142788817ac53c041808077d162a4d3bcfebee240307199aebadcc5","vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-calls-SEARCH.json.gz":"44df70fe291f3c0ec9ecd01791c02b9b52b29807c576353476542aaf76bbff40","vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-pairs-SEARCH.json.gz":"d32f9facc6b68c8dad2c9e4ead26aec913b076d4eb10214d18fa0c4c0b4762fa","vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-triples-SEARCH.json.gz":"57dd34fea35dee80e72a007e4cd044c50f00c1c794f03df6b0cbf292f54d8e0e","vendor/pr1148/research/k8-eight-ends-t16/discovery/uniform-blocks-SEARCH.json.gz":"9c0a86f5befe738ebcf39badda84314150b060a911e0708d83d29a22423f149c","vendor/pr1148/research/k8-eight-ends-t16/evidence/ADMISSION-CONTROLS.json":"6bdc8957237a01c0c5f667e2be2e889b02714fc6bc7a209672d09d5222073059","vendor/pr1148/research/k8-eight-ends-t16/evidence/ALL-T-BOUND.json":"dde30a7151248cb9f316fe3816554dc165d050f5216e13797ceb30fe681a3a04","vendor/pr1148/research/k8-eight-ends-t16/evidence/ASSEMBLY.json":"52c6af2fc860f7459f0fe3397639caecd5a8edf35ad76d4b22e99d19a79a2831","vendor/pr1148/research/k8-eight-ends-t16/evidence/ASYNC-AUDIT.json":"644c15a99e207161a50eca01ddf1c7852e67504517fa4710d5490c3f65a4665a","vendor/pr1148/research/k8-eight-ends-t16/evidence/AUDIT-LOCAL.json":"9fd252469f82b5ce5fc2f42b674445dfcac08d769768d00bede6cb5c99e9aa63","vendor/pr1148/research/k8-eight-ends-t16/evidence/BIT-SUPPLIER-CONTROLS.json":"17939b88da6b6ad8a8220ed04ddf325679fc2f096c7d197938f10893a87383b4","vendor/pr1148/research/k8-eight-ends-t16/evidence/END-CONTROLS.json":"e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135","vendor/pr1148/research/k8-eight-ends-t16/evidence/GLOBAL-PREFIX.json":"a6820bfad6fd665c08755fdff98d64069cb94dce337b0881e035a61bcb981cd2","vendor/pr1148/research/k8-eight-ends-t16/evidence/IDLE-REMAINDER-FRAMES.json":"2d8b44b6bfe85df299bef25602529867b3316a20e41991786c2063b4c203d34c","vendor/pr1148/research/k8-eight-ends-t16/evidence/INDEPENDENT-T16.json":"8311da24ffd4314b7d0857f7669de063fa76679af7fb67009513c513e47da5b3","vendor/pr1148/research/k8-eight-ends-t16/evidence/NATIVE-STEPS.json":"782098b0ae9b7a87c75c47edc2e072c25a2c44d3e5417f44bf5f81ecf3d04a6e","vendor/pr1148/research/k8-eight-ends-t16/evidence/OWNERS-AND-PROFILE.json":"f20ff5901bfe41cddf5c62d59f8c5361323f7e49b78c17d97173e9db5b3baf0f","vendor/pr1148/research/k8-eight-ends-t16/evidence/PARENT-LIFT-RECEIPT.json":"d4705df4d65289e9ced31f625e34559fb26c1a4ca6f74559dd2e31a366b20a74","vendor/pr1148/research/k8-eight-ends-t16/evidence/PREFIX-AND-INVOICE.json":"ef4775a3cd6bb1d52b9f43924b9bb1b378d52662c67e373fed20c1d5728caeb5","vendor/pr1148/research/k8-eight-ends-t16/evidence/REPLAY-LOGS.json.gz":"81d8a6d5968f206177a4a1bd51baa530f1f9881867ce9925d341066dc1b33f21","vendor/pr1148/research/k8-eight-ends-t16/evidence/REPLAY.json":"fa8db7880863b26de2999eab873f9d9b4661da651e17ac2f3b24a888efb1a341","vendor/pr1148/research/k8-eight-ends-t16/evidence/RESULT.json":"33708ffb914369d4e25f34824bad32f2962d94027c2710df70fff83def7ec19f","vendor/pr1148/research/k8-eight-ends-t16/evidence/STAGES.json":"b46df79356639d66a30fd50ca9d62b067037fb6072865d7399273ab20ccd3b23","vendor/pr1148/research/k8-eight-ends-t16/independent/all_t_bound.py":"0cf8498903ef9e2a210886aa8360643b43a41f5bce33e187528835c325e3a059","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/UPSTREAM-NOTICE.md":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/assemble.py":"15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/assembly_controls.py":"da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/audit_allcold.py":"1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/bind_providers_portable.py":"1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/bit_supplier_controls.py":"e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/emit_allcold.py":"354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/freeze_spec.py":"5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/generated_identity.py":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/invoice_allcold.py":"71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/prepare_global.py":"8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/restore_parent.py":"69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/witness.py":"779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/construction/leaver/PIVOT-SWAP-k8.json":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/data/UPSTREAM-PINS.json":"ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/inputs/PR589-EXPECTED.json":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/build_parent.py":"82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/indep16.py":"1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/lift16.py":"072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689","vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/verify_t16.py":"050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46","vendor/pr1148/research/k8-eight-ends-t16/verify.py":"e910ca38941209be9b32c3fa6d784e84a824bef9767d2bf492f298d4889cfe92","vendor/pr1148/research/k8-eight-ends/CLAIM.json":"65f620750f2a438316684b74cdf7cd990d59626b5c073e7dde0fd735ff3e158d","vendor/pr1148/research/k8-eight-ends/FULL-WORD.json.gz":"d28c607df2bc4a82684d3fe47cfb3dba04e3bd14b247c7d4a62a03dff7b2836c","vendor/pr1148/research/k8-eight-ends/MANIFEST.json":"bbdfe8589b21557ee0e0625cc485e7afef1f55fd31609bc5f4f9b30de4f6cbf9","vendor/pr1148/research/k8-eight-ends/NOTICE.md":"820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5","vendor/pr1148/research/k8-eight-ends/OWNERS.json.gz":"c41fdf51541ecc91af914f264967f3633570500994f8866daf642440a5d843dd","vendor/pr1148/research/k8-eight-ends/PLAN.json.gz":"a3e9e390da3136655606ac919ec60696e2f704457ff01ef9e4d07e90534ab2d4","vendor/pr1148/research/k8-eight-ends/PROOF.md":"1ee3b7d22a39ccb0877ca32f176786b2545dd2b86bbe986eec833b96cd17ba6b","vendor/pr1148/research/k8-eight-ends/README.md":"0f2bc8afeff4054cb8fb62819563a6214d53af916ebf6f28bb2fcd972814362c","vendor/pr1148/research/k8-eight-ends/RECIPE.json":"6a5d91b95bdba641ab4cc0e3c9b7f0f2adcc5ef22bef7f732d5d76cb0b6fab6c","vendor/pr1148/research/k8-eight-ends/SEARCH.json":"f1816698aa4d7deb48ef7e98a711fdc0c74d67bd336d4b8f48b46fe191d7d1b1","vendor/pr1148/research/k8-eight-ends/SOURCE-PINS.json":"6b85ed22262e23db1ff0518d874d4e3ee1b4317d642fabdc9747cecbd04ef420","vendor/pr1148/research/k8-eight-ends/SPEC.json":"555cf868f29c8173b2faf8243aea30ee29f3e12f694c6cb3865a06981592af24","vendor/pr1148/research/k8-eight-ends/build_word.py":"18691b1fad3bc798b7ad58b39b433f405e9bb4ec266af0303b563f11b07d956f","vendor/pr1148/research/k8-eight-ends/discovery/END-COMBINATIONS.json":"db6353685f6f344a6e3a4b8476dde4858fa2fad65fe4e74abcecab93eb07a79f","vendor/pr1148/research/k8-eight-ends/discovery/END-GROUP-SCREEN.json":"b197a014997ec869cc2768b68070e9ad3cd6d19633b366085a8061a3523fe3ef","vendor/pr1148/research/k8-eight-ends/discovery/END-GROUPS.json":"19b456b91852df5ee2aec79a16ab454c5772bd5160d1cee42e4df6f0cb211bd4","vendor/pr1148/research/k8-eight-ends/discovery/RETIME-CENSUS.json":"40ea9706b94cd23a6c37ab01afb6e945ab59ac43d1a61433583cf1d297cf57dd","vendor/pr1148/research/k8-eight-ends/discovery/SEARCH-TRACES.json.gz":"eaa157000003e807fb466d6c7bfc032dc74857ae4afc5de2ca6d1bf1a631c37f","vendor/pr1148/research/k8-eight-ends/discovery/SOURCE-CENSUS.json":"aeadcc466b01fd5a2498037f3a83dcecdde91d30327a15c684d77645489e6f69","vendor/pr1148/research/k8-eight-ends/discovery/SOURCE-REFRAME.json":"d69170ce6443ffaf890a5e3e2b8cecdb74ba4e7b75273738ed367be5643b01a1","vendor/pr1148/research/k8-eight-ends/discovery/combine_ends.py":"ea0e79e0bf4ea7d44cadd179fb5bb6ff13cf6cd960362a1e2e07c63c1969b7f8","vendor/pr1148/research/k8-eight-ends/discovery/end_groups.py":"190a44e768daf0d9076158da9f00e4aa7e682e7df90749d18fbd55f1a04b9b09","vendor/pr1148/research/k8-eight-ends/discovery/frame_model.py":"dee9899272846ee954f8daf6e9f60c9e073c86489b2a594d4d9a4a9899cbd0e9","vendor/pr1148/research/k8-eight-ends/discovery/minimize_recipe.py":"8fa2216d1228c12a08b5e93b084ce1426ebe99b5abb7f6e614173b56bedb459d","vendor/pr1148/research/k8-eight-ends/discovery/prepare_new.py":"b2995d74b63010aa3bd5e4cdc59666a0ca0d9d4244340c694e8eed6171231c0d","vendor/pr1148/research/k8-eight-ends/discovery/resize_owners.py":"af9b632d51f6b4beddd87bf75d6e36eb3f58b7e467e711208f304a774f8b26f0","vendor/pr1148/research/k8-eight-ends/discovery/retime_sources.py":"35600042b16447b24289c73a41462d4eeb6600117529df5baf4fed5aa389d898","vendor/pr1148/research/k8-eight-ends/discovery/screen_end_groups.py":"a29814cfc5f3f86dc62272fd3cceb2fb0456a3aa25c8b183980291b744e9ab54","vendor/pr1148/research/k8-eight-ends/discovery/search_calls.py":"5df48ab7775bfee767d71dd8c47585977922568b532c29f4528f2c8ca5ab364d","vendor/pr1148/research/k8-eight-ends/discovery/source_census.py":"9808b026a8a7556fbf171f57ca46b32c2e33b36eeb2924e7eee24abb2a7b3853","vendor/pr1148/research/k8-eight-ends/discovery/test_structures.py":"7c550f1c00d58fa1df668179e09c0fd9fe61c35029f548f973727f0b36706e31","vendor/pr1148/research/k8-eight-ends/end_controls.py":"9f4a2ad05a3602be3bd89bb1a1e3fc40bb78eb3ad8de3f66aa19e44e53e30e2a","vendor/pr1148/research/k8-eight-ends/evidence/ADMISSION-CONTROLS.json":"b7df5cb7695f8de70c674a03c10a36682d85b958340d392c8d61e9b969111179","vendor/pr1148/research/k8-eight-ends/evidence/ASSEMBLY.json":"1cf819f87c1e550c78de98206a52e9aff04ec47022e5a63987bcd1dd5d2e51f6","vendor/pr1148/research/k8-eight-ends/evidence/ASYNC-AUDIT.json":"2b056ae65d212cfdf4d83778b9be47dc7a9ded6626feb3a20ae2de6ead8dbb79","vendor/pr1148/research/k8-eight-ends/evidence/AUDIT-LOCAL.json":"4ebd818fe459c8b729aaf385d6b2946e58316414a9c29c5ba6a2335d63af7ecf","vendor/pr1148/research/k8-eight-ends/evidence/BIT-SUPPLIER-CONTROLS.json":"4fbf09922859926ed79eb4874a0c3414a13991de2ffc64d30a382e7eecb2c2a4","vendor/pr1148/research/k8-eight-ends/evidence/CLIFFORD-REVIEW.json":"2bfc112221995431c25a7257fdda5a2e9b2631c1712a48ab428f946849cbac91","vendor/pr1148/research/k8-eight-ends/evidence/END-CONTROLS.json":"e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135","vendor/pr1148/research/k8-eight-ends/evidence/ENDS-8-AUDIT.json":"5381c41fa10fdccbc5c5bdc7059ad839e508d7b8bc3a139bc8ad6b45c20b01c3","vendor/pr1148/research/k8-eight-ends/evidence/INDEPENDENT-LOCAL-REPLAY.json":"00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99","vendor/pr1148/research/k8-eight-ends/evidence/LOCAL-CHECKS.json":"3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba","vendor/pr1148/research/k8-eight-ends/evidence/NATIVE-STEPS.json":"02f6ea9122362ba1e408e72c331ffc850a2fbd1593afb06554aa0ab5c7aee0f6","vendor/pr1148/research/k8-eight-ends/evidence/OWNERS-AND-PROFILE.json":"a04d3db0d157b197d9395967163e155f0d8775a06db2ca4318258830e2abdaa9","vendor/pr1148/research/k8-eight-ends/evidence/PREFIX-AND-INVOICE.json":"66650384488db73bf3d5c7742abaa9c116877845bbb4ef46d6fffe235ae7d1c0","vendor/pr1148/research/k8-eight-ends/evidence/PREPARATION.json":"cd980d9b80de65d1bd9358d590a479fb85d75fc4e468a12539cd5a0388190e8d","vendor/pr1148/research/k8-eight-ends/evidence/REPLAY.json":"fa6b65403a28ce8c717412b0d90dd4c702bcba7e3c530bca932f921f0dba75e2","vendor/pr1148/research/k8-eight-ends/evidence/RESULT.json":"904b0cb2082f6f109845d30f6ee4bb6f766ea493c4cee6a637634362a30785b0","vendor/pr1148/research/k8-eight-ends/evidence/STEPS.json":"5577123fa4422fb80f412dc3713bbd7eea5c4c50b63db635f01585457c9d2960","vendor/pr1148/research/k8-eight-ends/evidence/WRAPPER-CHECKS.json":"b6c7fdef5893b117434f39b6561b80504482fa748e23b840f77a07b137e1d1ea","vendor/pr1148/research/k8-eight-ends/replay_native.py":"1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6","vendor/pr1148/research/k8-eight-ends/verify.py":"d57061431e087fb755382e3b362ea7421e5ee3dfae5b3ed81ce5228278ba58b6","vendor/pr1148/research/k8-joint-entrances/CLAIM.json":"bb8356c6f8c9e3f3b1a4b02c1be6bbd73e9c4fabbef02a0ed0c9cd897607c825","vendor/pr1148/research/k8-joint-entrances/FULL-WORD.json.gz":"a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718","vendor/pr1148/research/k8-joint-entrances/MANIFEST.json":"a6142beb7c9729690f9980cb84a241dc52b82f7e760fec82a810c5cab7e78f6f","vendor/pr1148/research/k8-joint-entrances/NOTICE.md":"afbd38d6c8a232ea566c296424a86420f204e6cfaac565c0a147340bda3d3da6","vendor/pr1148/research/k8-joint-entrances/OWNERS.json.gz":"7755af4108f066cf1eb13dbaac0a0fbb97a2852ffa7403588d2b5218c81101bf","vendor/pr1148/research/k8-joint-entrances/PARENT-PINS.json":"ae43954e4cee8951e9bff82efd728fe18e12f44e62ccc4d0177e31108ec6c5f0","vendor/pr1148/research/k8-joint-entrances/PLAN.json.gz":"e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310","vendor/pr1148/research/k8-joint-entrances/PROOF.md":"7b856d7f73d506b7ee2d6f5f4e87a63ce984596b869d05d39172aff6ab460ad0","vendor/pr1148/research/k8-joint-entrances/README.md":"4eab75d721c9ee7e52785a2fa2c056bfde3d8a1936a5e99378f0951debdd6ca1","vendor/pr1148/research/k8-joint-entrances/RECIPE.json":"2257aa6b16f2650a4213c5a14b44dfff967954d376e72ca04e089069aeb11aa1","vendor/pr1148/research/k8-joint-entrances/SEARCH.json":"bd5ccaa57dae85b61c8489977188cbc7e88cf005d561a7475fb3b06b6f172517","vendor/pr1148/research/k8-joint-entrances/SOURCE-PINS.json":"e222854342bd87dd68488b8a90d83764029852e8e99a168c677a3206393ccb94","vendor/pr1148/research/k8-joint-entrances/SPEC.json":"55bdb68d5d126c6be0e0acc419bd62301a978afd514f9834ed1e08b1aa4f563e","vendor/pr1148/research/k8-joint-entrances/build_word.py":"317ef4a9fb9fe9fcf59b98f28aeacd6211fc960768f316c54bec9bb55985de9e","vendor/pr1148/research/k8-joint-entrances/controls.py":"1af761754245287b5158fe23465d3e290ae0b421e3ca51e4bc1d4d6219004673","vendor/pr1148/research/k8-joint-entrances/discovery/COMPOSITIONS.json.gz":"17e1ea1bc3a363be6a060a073a829d958b2a2e2aaeb3ba6ac5da43e94fc40ba2","vendor/pr1148/research/k8-joint-entrances/discovery/INTERFACE-CENSUS.json.gz":"cbd8b16e6fca3aa3aa553d39541950db42282c9d38e87d5fa89f5acdd3be568b","vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-FRAME-SOLVES.json.gz":"0bbc11d747ce59399c6b479d0e9586ce745e88c641afcbf8f94d0a5b94713afd","vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-FRAMES.json.gz":"e39a93b938bc04d04be0195b5389bfc22100f31351747cf4cc16e27b5f23cd5e","vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-GLOBAL-RESTRICTED.json.gz":"f01db57b9d6565222ae7cf416f272efc7d983b90ac24077cff5c4dfde623f6fe","vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-ROTATIONS.json.gz":"bb50f051f7fd4ef31044aef3c2d00044ce12fc00775641ce08c6dcb095f98276","vendor/pr1148/research/k8-joint-entrances/discovery/ROTATION-WINNERS.json.gz":"c5a41d7ea306751f1e447839dbb90f15ee27cb51d30061c3f65660a34ff6f1ee","vendor/pr1148/research/k8-joint-entrances/discovery/ROTATIONS.json.gz":"3b2f6222964d7921dc3d82871d7396850811c7dde66703671e46c33474c0e03b","vendor/pr1148/research/k8-joint-entrances/discovery/compositions.log.gz":"55af64fbcc020d7f3e9c0cf9f68b88b1ee09639f0f42cc91f737f7312fa40a51","vendor/pr1148/research/k8-joint-entrances/discovery/interface_census.py":"8e0911c2f344bdd7df14ecb40d295f2aee58206b3e98eec329d3442e09561e0b","vendor/pr1148/research/k8-joint-entrances/discovery/joint-frames-rerun.log.gz":"97d74a5bfd9035f73474a2015db242731ff841c8f2785ca4dada61cdce6f8dcc","vendor/pr1148/research/k8-joint-entrances/discovery/joint-frames.log.gz":"93c850e3f8645416e034ebc6485a6a85e08e2628fcb08546e92d84105d8948ac","vendor/pr1148/research/k8-joint-entrances/discovery/joint-global-ipm.log.gz":"a3a1753c93a5aeb4d08ce043a90ad15c7affb40132dcc39e73350bcdf701bbc5","vendor/pr1148/research/k8-joint-entrances/discovery/joint-global-restricted.log.gz":"c0da6470ea6a6483ac52345541fc54573154f49727b6515627a211db705aa20c","vendor/pr1148/research/k8-joint-entrances/discovery/joint-global.log.gz":"03571dbffc0be03d6565e151de624a854bb843f43633496e49a089d92a86fe34","vendor/pr1148/research/k8-joint-entrances/discovery/prepare_equal_inventory.py":"4d24b34fb9a3b92dda936b4c40f412f7f814c8e8bc4c563d58f39e32a5ccdcd8","vendor/pr1148/research/k8-joint-entrances/discovery/rotations.log.gz":"e7d8d01b7a7c7d2b5c7f4e3dda3e137c62926bb18203f37509645d5b0b3c6372","vendor/pr1148/research/k8-joint-entrances/discovery/search_compositions.py":"42447958e16ce97c7a6e06787345a67b6d1a0c5d977fbce9a29ba95dea4cdb8a","vendor/pr1148/research/k8-joint-entrances/discovery/search_global_interfaces.py":"c5be35e81982219d58d5452a4084434c01a5ca1767f3dcc06733e4b5ff9caf09","vendor/pr1148/research/k8-joint-entrances/discovery/search_global_ipm.py":"d8f2b9fbd185ae14bd29ec67a837375c081da656c2984f563f1938fdb3760760","vendor/pr1148/research/k8-joint-entrances/discovery/search_joint_frames.py":"9361a5cf23234c7ca08755e76f5e7f6812571ac54e8c7f4ecbc68689446478fc","vendor/pr1148/research/k8-joint-entrances/discovery/search_restricted_global.py":"4daf6ccdf45a73dbc8d4b8c5ebf6bd8792b012c87ccf2247f24ba9af5ec77c8e","vendor/pr1148/research/k8-joint-entrances/discovery/search_rotations.py":"1e92811a3f84819f9fae940b303fa08decf3e2377208fb854a2604fd9e2f7aeb","vendor/pr1148/research/k8-joint-entrances/evidence/ADMISSION-CONTROLS.json":"f278fa3de05390c2a282d8f5858167a41940d8cf027200e373bca0b180b4324c","vendor/pr1148/research/k8-joint-entrances/evidence/ALL-T-BOUND.json":"12c0e54abcd1044d28b94b2dacf309c1fbc14afc9ac299cc2dacec30c38ffddb","vendor/pr1148/research/k8-joint-entrances/evidence/ASSEMBLY.json":"ebac2870cf0f52d6ac0e8213bb766f4b980a253d6d9d207a0e29bafca8121b4b","vendor/pr1148/research/k8-joint-entrances/evidence/ASYNC-AUDIT.json":"e9914607d9f7409a23c6e7ad94b5c3d46f384622d4968efd67c9dd3d7cdd3855","vendor/pr1148/research/k8-joint-entrances/evidence/AUDIT-LOCAL.json":"ad7562a9b58a4ea4ab5398f82d4274d99a3969865bdd30e135e80bac3ceb5b84","vendor/pr1148/research/k8-joint-entrances/evidence/BIT-SUPPLIER-CONTROLS.json":"549c240835fe910d23d17ebceadbeb5cb4c898c07bb51e1b122ff24ce227519c","vendor/pr1148/research/k8-joint-entrances/evidence/CLIFFORD-REVIEW.json":"570f97a375f2acf7d133f563c61c0a8080e8b0dc67cb0299597609029b81906e","vendor/pr1148/research/k8-joint-entrances/evidence/ENTRANCE-CONTROLS.json":"8ab757a8c7224d99f0626b551f8d55167e2f22c43e6f58c0b02a9ab43d5f2c65","vendor/pr1148/research/k8-joint-entrances/evidence/GLOBAL-PREFIX.json":"ac3b569ec9013ba8ae24a3a5d97e902249f3d579c045a3b9c4867cabd44c70fc","vendor/pr1148/research/k8-joint-entrances/evidence/IDLE-REMAINDER-FRAMES.json":"dca4eac71c7b5d5fa89f743b37d364c6c2d2097b4187d8c719f29922e10aac9c","vendor/pr1148/research/k8-joint-entrances/evidence/INDEPENDENT-LOCAL-REPLAY.json":"2bcb926b433bfc223997efd5d7212899c850a1ddb204269589b1f3a7151d82c6","vendor/pr1148/research/k8-joint-entrances/evidence/INDEPENDENT-T16.json":"c9bf9894254223863056f6588176774d9dfc68e7654e454d31340a74c0270341","vendor/pr1148/research/k8-joint-entrances/evidence/LOCAL-CHECKS.json":"654ca95a7f9af260d088f29c1791686f54f66cbbe735b9ea2fd5114b377727aa","vendor/pr1148/research/k8-joint-entrances/evidence/NATIVE-STEPS.json":"b31c5847a9fb317c09bf9ea2e4b40d0613a0dc7aa3441441105ad8aad6c7e437","vendor/pr1148/research/k8-joint-entrances/evidence/OWNERS-AND-PROFILE.json":"2e2889604e2d944dcd6b42d3006cd6ff35feef779405d58568bab081ae9ebadc","vendor/pr1148/research/k8-joint-entrances/evidence/PORTABLE-STEPS.json":"a9ce78fde0db630557305bbd1f629649d8bbe0df65c390ae0a9a08279cb69623","vendor/pr1148/research/k8-joint-entrances/evidence/PREFIX-AND-INVOICE.json":"8215609ea123187eae656d92cca1afeebceceb286b6d3474d1688ba1952a0681","vendor/pr1148/research/k8-joint-entrances/evidence/PREPARATION.json":"4a6f3ee54f0296e2dcfef6349c5d1c7a748bd82a28a9df21d063ee1d1bd52a45","vendor/pr1148/research/k8-joint-entrances/evidence/REPLAY-LOGS.json.gz":"24ba73b37f9cf8a9ff99479ad8b64d0a11298aaf892399769f5790a881a0c1b2","vendor/pr1148/research/k8-joint-entrances/evidence/REPLAY.json":"247ecc5482230bb60433b595a822431d3400de41f6a34a7d3d29e940ffdc64ef","vendor/pr1148/research/k8-joint-entrances/evidence/RESULT.json":"ca2230332afe446ee95d7803167ff9f373d1041b182e4de9f4f02e31fd3177f0","vendor/pr1148/research/k8-joint-entrances/evidence/STAGES.json":"b9b423babdd1d44abf014af323770f810ffdfee62760aa147bb77a4987f63979","vendor/pr1148/research/k8-joint-entrances/evidence/UPSTREAM-COMPATIBILITY.json":"849a7a5955f230c97c1538f7d81a7b18da53f3ee82997137d18f7fc8cc869333","vendor/pr1148/research/k8-joint-entrances/evidence/WRAPPER-CHECKS.json":"f2a005b54bea64d66633d8a82d0454348172da3b88361081a72126bf1d51744d","vendor/pr1148/research/k8-joint-entrances/independent/all_t_bound.py":"a536866350b343ee0ece96f97021ea38d9164c6d6d557e54cf060935b9e129af","vendor/pr1148/research/k8-joint-entrances/verify.py":"4359c9c828714887c026aefc42ab93ee89d8aa8b1553e4d66b90c11ddc677647","vendor/pr1148/research/k8-three-demotions/CLAIM.json":"5d2d7f3a0c57373942d588303f9736db01d4dc69fc8b35b6e2945b10627905db","vendor/pr1148/research/k8-three-demotions/FULL-WORD.json.gz":"a8a1362e1cf3bb4d5a43e077bbc842d140eb8a4420c16673757c486ca001f1a8","vendor/pr1148/research/k8-three-demotions/MANIFEST.json":"26d4340ad73221973f4619cf3a4f43cdd6978132955b316919b533099b3a4408","vendor/pr1148/research/k8-three-demotions/NOTICE.md":"a0fe85fb2207f0e6831a96deaeefb65afa379c1377a29f0b586f1db4bb4b2137","vendor/pr1148/research/k8-three-demotions/OWNERS.json.gz":"93cb570c9496725ed5204d9f890ddf337ed8c3fb1a1b980de3e905f65e71b2dd","vendor/pr1148/research/k8-three-demotions/PARENT-PINS.json":"ae43954e4cee8951e9bff82efd728fe18e12f44e62ccc4d0177e31108ec6c5f0","vendor/pr1148/research/k8-three-demotions/PLAN.json.gz":"c56ac6b25f119107c8470e01582a8be3d78421553b684c113582c6078f998e36","vendor/pr1148/research/k8-three-demotions/PROOF.md":"072c10a2380c9434758f59f410cebeee620efa355e434a3f3a341896a7650514","vendor/pr1148/research/k8-three-demotions/README.md":"6d8ea5173ee09fb104c28780812f9f4a9d0e30fb85f09f567e2d9d63f4378381","vendor/pr1148/research/k8-three-demotions/RECIPE.json":"0417fdf34130a389aad1ab50c7fd1a9bdf825fd6722ec7db408f65811fd7a363","vendor/pr1148/research/k8-three-demotions/SEARCH.json":"728e09e77969828cdd1ff187476c6c4d668190535f8b77efc4013f6565dcf9c0","vendor/pr1148/research/k8-three-demotions/SOURCE-PINS.json":"d23f4c3e6c68a1090b2d9fb92fbbc075a2c125b60fcae1fba7091c1778d893c0","vendor/pr1148/research/k8-three-demotions/SPEC.json":"448141cbeeb6747f742360b72b5561c3c398decf0a308a559f4c0acd93db800c","vendor/pr1148/research/k8-three-demotions/build_word.py":"5264e1c0c25f9414a0b24863e1e98dc67bb08a4fdb94a7ca2aa27c337ec634e6","vendor/pr1148/research/k8-three-demotions/controls.py":"0514ba8c1854ef49abad5d0c8cf436f68d1146de89fc3dca86ed9392bc48c62c","vendor/pr1148/research/k8-three-demotions/discovery/COMBINED-DEMOTIONS.json.gz":"d90e835aca3df28ab2b995d068e8fba8d73b861e1a740c8768b5719720e79ded","vendor/pr1148/research/k8-three-demotions/discovery/DEMOTION-4.json.gz":"663ec933b38c01543d341ec92e2258c322a1fa121fe9b58d9e9f4e997f03605b","vendor/pr1148/research/k8-three-demotions/discovery/DEMOTION-5.json.gz":"064d397af864a9289c557022b52b4c00fcf036c2bc028efb9ac1b13121a935c9","vendor/pr1148/research/k8-three-demotions/discovery/OWNER-SEARCH.json.gz":"cba4ed8516f54abecd679111044c7c62759ba73289aad0695daf386815036b71","vendor/pr1148/research/k8-three-demotions/discovery/OWNER-SEARCH.log.gz":"5aac089fd94aedf417278e06a1585394e1a1da5cbd851d5d861a55cc1313a404","vendor/pr1148/research/k8-three-demotions/discovery/PRODUCER-ELIMINATION.json.gz":"697210c6b26c506be9f1226e1ca19f12fd6f5ced67e2591cb3d9d22fff6c698e","vendor/pr1148/research/k8-three-demotions/discovery/SCHEDULED-ELIMINATION.json.gz":"d84ad020fdb8d4a1209e4a872485bfd03998e60d6afdd66977b6263ea1e50da4","vendor/pr1148/research/k8-three-demotions/discovery/demote_entrances.py":"9ef34ab2969ebd796fd5295c8d336d6731420db9c5a8e33c76a851ebd0c885c0","vendor/pr1148/research/k8-three-demotions/discovery/eliminate_helpers.py":"6fd840a849e85eb9e2de857b4e3f8591fe0b11ab5bcf5059a0868768e711b065","vendor/pr1148/research/k8-three-demotions/discovery/pack_demotions.py":"b831d8a76eff7f342329f7025848207d48bd2031054f4664fd39415a94ec57c8","vendor/pr1148/research/k8-three-demotions/discovery/repair_pack.py":"08d23d527a5ca8269cab478ae372ea754406ae1efe329d427d6d720da4b0a32b","vendor/pr1148/research/k8-three-demotions/discovery/schedule_elimination.py":"9a4cde722068902eda94c8896994345542e9586491daf2a48804b3882e9e46b4","vendor/pr1148/research/k8-three-demotions/discovery/search_columns.py":"edbb093207e21ee4301382f00198c6eccb197949068e96c76e46a2e61dc90f82","vendor/pr1148/research/k8-three-demotions/evidence/ADMISSION-CONTROLS.json":"8d4d311c8a598045aca089f0962d9606abf1749a5acc80bd4221b79fe055534a","vendor/pr1148/research/k8-three-demotions/evidence/ALL-T-BOUND.json":"d4fee201f6863bdb3acd26948f45087c308e36e3db2db713d67e6ea98f5de92a","vendor/pr1148/research/k8-three-demotions/evidence/ASSEMBLY.json":"e2f32c70ce02ca072f91c5df33db8f27a0d084d83f220d64ac746d4b8d68fd03","vendor/pr1148/research/k8-three-demotions/evidence/ASYNC-AUDIT.json":"502132cf61ec75f772c335440778d5e682a117bed6f282ecbb63e87b4c92da1a","vendor/pr1148/research/k8-three-demotions/evidence/AUDIT-LOCAL.json":"9f171f1dd3e6077b877717bead4c48bceba7b1b2122fe3a35e1f84d2bc2844b2","vendor/pr1148/research/k8-three-demotions/evidence/BIT-SUPPLIER-CONTROLS.json":"29a0fbffa42ab44a53d9b1b70749d385e7d22d23e163269b4db580078a313992","vendor/pr1148/research/k8-three-demotions/evidence/DEMOTION-CONTROLS.json":"1f79ea173ae9c199e1130c4c47b1e8535aa1c59b265d774c26e9ac8adb4906f3","vendor/pr1148/research/k8-three-demotions/evidence/INDEPENDENT-T16.json":"76bef93797c561eb2e343e91bd825ea2463b0e1bb29961e7c1ffb6436b303d59","vendor/pr1148/research/k8-three-demotions/evidence/NATIVE-STEPS.json":"da092696ceef4cc48d0dad324528ca46e18ee2e892e9a1d669f626cd51bd13c2","vendor/pr1148/research/k8-three-demotions/evidence/OWNERS-AND-PROFILE.json":"edf9f49f4aa302e2cdf8197fdae43efc648efd511810b9c7a1820cfa7cab2914","vendor/pr1148/research/k8-three-demotions/evidence/PREFIX-AND-INVOICE.json":"92a64fa8f6f6109ad7fec10646690f012a3836e83c4920fd271a1278a7981068","vendor/pr1148/research/k8-three-demotions/evidence/REPLAY-LOGS.json.gz":"87306aff46a5026c6f62425ed6f45265d96cfdbc12f61eb47bbd6d98db9772c6","vendor/pr1148/research/k8-three-demotions/evidence/REPLAY.json":"2c9204175b51a9a2fdf4ee99ae85ba6a30c9fd848489968637d192de274e91f1","vendor/pr1148/research/k8-three-demotions/evidence/RESULT.json":"878e1c99b02cb0b53cd12c1cc266fe9399adb56169d85bf7bc258f74ecc2dc5b","vendor/pr1148/research/k8-three-demotions/evidence/STAGES.json":"c2c9c1d9d121f01a572e42c606c18b1e76911a07dd999deb102c14e7a518897b","vendor/pr1148/research/k8-three-demotions/independent/all_t_bound.py":"2f7f23424c8bf470161a116cb0be7ef024ca685b1b7e1fe88dcec90186c7f2fd","vendor/pr1148/research/k8-three-demotions/run_global.py":"04ead24a91d11234e04f79753e3c2d435d9e4dd96c7c3fe21a0652921af85c83","vendor/pr1148/research/k8-three-demotions/verify.py":"8a15ed2a8bb102f0edbe2d43e31e187c677b569072d9517e81682892a9883ceb","vendor/pr1169/research/three-demotions-t37-composition/CANDIDATE.json":"43cc85370e98160f870484754240cd08a70cbdbc5ee3f75f705b7725693ff6c0","vendor/pr1169/research/three-demotions-t37-composition/GEOMETRY-CHECK.json":"497c71976c01378b84552a245c1359fc53a6b6474b0c46c00546a419710ca826","vendor/pr1169/research/three-demotions-t37-composition/MANIFEST.json":"d7c3db76d3151638d95a47d0f8cddd6ca6b8d4500f6c1be1fe6ae3fbd0c8ab95","vendor/pr1169/research/three-demotions-t37-composition/OWNERS.json.gz":"449d230ae8ea9b5adf2f4a06da0dd89473e6e259b986e46ebf7407e169ac1d4b","vendor/pr1169/research/three-demotions-t37-composition/PATTERN-FLOW.json":"d7accd36895a218d0db8e1434ea013c18d924059e4b32f25a21e3529539d7352","vendor/pr1169/research/three-demotions-t37-composition/PLAN.json":"2c5e493cfdc4c424ebf20c91be089408dc04f183c979a9b76efb867b6f357424","vendor/pr1169/research/three-demotions-t37-composition/PRICE.json":"dae64ef8026dd50ffce655f3094ca263e680a25db29669ab70a40fabf5db11d2","vendor/pr1169/research/three-demotions-t37-composition/PROFILE.json":"440912ba08baa19af76194a7bcd8640b73926f5182c97bc6b73c3587b0256858","vendor/pr1169/research/three-demotions-t37-composition/README.md":"b895d31ff6ebfec43b94a37981c9249f922999cbfc1ca1a50b05756e34ec2d3d","vendor/pr1169/research/three-demotions-t37-composition/SEARCH.json":"c42084bbadd361f90dc21ffbd300c03b3739a57e9bf978e4272e0c822bca27bd","vendor/pr1169/research/three-demotions-t37-composition/UPSTREAM-NOTICE.md":"b97fb4731e84aef736c58a9c126334eb5b8d3a057a8d9d45b4ffff24af65c38b","vendor/pr1169/research/three-demotions-t37-composition/construct.py":"eee2edff41871b929e4c85289a2bd80842f5a5ae6130b8c7b0574178d4de9562","vendor/pr635/research/complex-571-cold14-st2/LICENSE":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4","vendor/pr635/research/complex-571-cold14-st2/MANIFEST.json":"faa8559bc062cb1813c482580967de2de0669ee59e708908fd24b16b74d6c707","vendor/pr635/research/complex-571-cold14-st2/NOTICE.md":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610","vendor/pr635/research/complex-571-cold14-st2/PROOF-COMMUTING-PREFIX.md":"59899b2a1a76d88275e57f983c0aea391dc2c7f1d2d66c33b92429be0a1cf5e1","vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE-R.md":"22312bb347bdf159e6a01a45c47675e6170d33b258e2fd9ed52aee88fb92c0ed","vendor/pr635/research/complex-571-cold14-st2/PROOF-NOTE.md":"e79d0920228107083be166a6733186816a38a8fa68d99f2038f07b157ea5690e","vendor/pr635/research/complex-571-cold14-st2/README.md":"d74a9499a23a729d3470bde7b06b85c4cf8602d06d10af9bf9991aea2da8ed7e","vendor/pr635/research/complex-571-cold14-st2/code/assemble.py":"1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd","vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py":"8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8","vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py":"cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a","vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py":"2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea","vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py":"864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668","vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py":"e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9","vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py":"08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252","vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py":"ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e","vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py":"beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72","vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py":"0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84","vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py":"66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da","vendor/pr635/research/complex-571-cold14-st2/code/emit_allcold.py":"fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746","vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708","vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py":"a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de","vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py":"eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf","vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py":"c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3","vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py":"6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810","vendor/pr635/research/complex-571-cold14-st2/code/hpe_controls_atc.py":"63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b","vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py":"7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805","vendor/pr635/research/complex-571-cold14-st2/code/invoice_allcold.py":"141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec","vendor/pr635/research/complex-571-cold14-st2/code/phase_timing_controls.py":"1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339","vendor/pr635/research/complex-571-cold14-st2/code/witness.py":"00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d","vendor/pr635/research/complex-571-cold14-st2/data/EXPECTED.json":"9eeb8b149bf7649a47b0d3266436b9bfe0ba155ffb9668fa66cfa21136f9b8ed","vendor/pr635/research/complex-571-cold14-st2/data/OWNERS.json.gz":"935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add","vendor/pr635/research/complex-571-cold14-st2/data/PLAN.json":"258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda","vendor/pr635/research/complex-571-cold14-st2/data/SPEC.json":"f5473e3e6d76901bca57616efda78c3e23b3d30aa2c05acb656b6e87c38abbff","vendor/pr635/research/complex-571-cold14-st2/data/TRI-SCHEDULE.json":"94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e","vendor/pr635/research/complex-571-cold14-st2/data/WITNESS.json":"05f7127910a846210d8c75d67c58185b7cd15b9861d71d0cfea955ae62414436","vendor/pr635/research/complex-571-cold14-st2/data/cand.json":"f1f42cb6f1f272ca3690e65fe604c18427dd9ac51241095c133bf97af21d32e3","vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step0-promote.json":"9a7cafdf9b600ba43985c83969b75151f665b98f454afc1494b9f9ef3dd3916f","vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step1-greedy_kernels.json":"c4bc67f329fc22e226f26bbbf7e67018a639823d99fccfc5a1e798a7a82db43f","vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step2-frame_coalesce.json":"e6d7ea259a542f2b43a857998f677db4d68f8f36335e98a030bc91ab38ce758c","vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step3-gate_move_coalesce.json":"3a6b8fec6c8b56a45bf8fae683083636fa295a8914ffa68d11b1f78ba3a2eb9d","vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step0-greedy_kernels.json":"c839199d0e6f8e976978fe97bc0c5579a65ba69dfb6864585b448cccc1113056","vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step1-frame_coalesce.json":"0c8e5991e1338f03b837814dd060d4dd598c324e3538ee510913e0444a384ee3","vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step2-gate_move_coalesce.json":"1f5b62c76915b1b8bbcf63b42dcbd87a536c34d3721c4a9b68e651404717bf00","vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-cold_end.json.gz":"a25ccab0c024aa9512df822032fca11683def03d0886b58f375c42834264c47c","vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-frame_regroup.json":"8d880d3d8e795575a3a3428e0031b2c45831eea512dc32cb99f7eae9e6e49e5e","vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-hyperplane_end.json":"30504ae76a2387677f05450d23413c7373c08ae2d9d171b2f4597bb63e294631","vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-cold_end.json.gz":"9f487a0c6e89f6f3aec38726c3a4e514ffe1248ce6cda3704676f2c86ad0866c","vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-frame_regroup.json":"9894f9c93e931b61cf34b337c4b257a72bb1d06fbdc4e8b02368e6e29ab2b644","vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-hyperplane_end.json":"c71c2b05550544c29ebb4696e63cffc44d6daa76f1bc25e9c7c97e994b2c7657","vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-cold_end.json.gz":"90952fde4666724f783191d92f132e9f6aa84cdc6163a42974774e9957cd6f35","vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json":"9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a","vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json":"e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1","vendor/pr635/research/complex-571-cold14-st2/data/search/DISPATCH.json":"34f233d4976e59455c3f0e1fa6edef8091d04bf63e4268aeb4a73810bfd5e338","vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-AGG.json":"5a1e2c3f7784cff71d4577e29d7a598a41198dac20aa35d5c87bb345d12f3e03","vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-EX.json":"08dd7090b5fda8b0a2c936c12982b279333c5765cfd090361a58e74d68b22e80","vendor/pr635/research/complex-571-cold14-st2/data/search/TEMPLATE-PLAN.json":"1879679a44b373006907cbca8261a9cd187c7b868472afab04e002bf95331d9e","vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-OWNERS.json.gz":"56aac182713cba7627b7ebfbb497975b5a7c76b9da9f835a1cb63192fc6134a4","vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-PLAN.json":"89539c2b5d24225613c0ceb571a03a2165bcaf0a0bea06986e212649cbfef9e1","vendor/pr635/research/complex-571-cold14-st2/verify.py":"4c8dea601fe9255bd9fbbf7840d3bfacc3dcf0b1deaf7ffab467e3c10648a3b7","vendor/pr635/research/complex-571-cold14-st2/verify.sh":"18cf93f64fa5b7301f837950df181cf08ee8c3efe1b3fb6803354549a7462618","verify.py":"703141fb5dd4d678274caecf25b66d3b68970eb3f17690cf393f2e62963a7316"} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/NOTICE.md b/research/complex-t37-joint-x54-owners/NOTICE.md new file mode 100644 index 0000000000..f0be740487 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/NOTICE.md @@ -0,0 +1,48 @@ +# Attribution and source boundary + +Prepared for Chafik Boukhalfa with substantial OpenAI Codex assistance. Apache-2.0. + +The new contribution is the checked composition of PR1148's joint-entrance +word with PR1130's X54 operation, and its full T37 admission using PR1169's +integer flow. The X54 scalar/frame operation and builder are unchanged; +the input/output identities and paid profile are rebound to the stronger word. +The helper-width vector is checked unchanged. PR1169's integer entries are +normalized without alteration, then reconstructed with our retained PR1131/1152 +matching code for the final helper labels. Fresh native, independent and strict +admission checks bind the final construction. + +- Thomas DiFiore: PR1148's eight-endpoint and joint-entrance construction, + literal recipes, native replay, local controls and T16 admission chain. + All 277 files in its five new packages are copied unchanged from the pinned + head. Its notices credit PR664's promotion mechanism, PR1018/987 word lineage, + PR1030's endpoint lead, PR864's frame model and their earlier sources. +- `seslly/shipstuff`: PR1111's group-635 entrance-demotion lead, as credited + by PR1148. This package consumes the attributed PR1148 implementation. +- Jeremy Kothe (`jeremykothe2`): PR1130's X54 eighth triangle slot, literal + builder, positive/negative controls and independent audits. Its 205 files + are copied unchanged. Its notices retain the rank-seven-end mechanism of + Alexander Schwartzman (`AlexS-scale`) in PR1030 and the independent + leaver-premise checker of `thakrarsagar` in PR1049. +- Rohan Arun: PR1169's exact integer-flow certificate, frozen at the commit + in SOURCE-PINS.json. All twelve package files and their attribution are + retained, including Ali Romman's PR1129 flow/matching work and the PR1131 + wave order. This composition uses the pinned integer certificate, with a + fresh reconstruction and independent geometric audit of the final roles. +- Jeremy Kothe: PR1005 mutable-leaver k8, PR1018 seven-slot (following + Rohan Arun's PR987), PR1022's standalone supplier, and PR799's + paired-read-exchange construction. PR1022's leaver and slot source trees + are copied unchanged, with their complete notices and ancestry. +- `jon314159`: PR942's T37 bank envelope, prefix reserve, explicit source + adapters and all-replica signed-price proof. +- Chafik Boukhalfa: PR795/890 signed prices and independent geometry, + the retained earlier gauge/owner work, and PR1131/1152 matching reconstruction. +- Hao Yan (`FanPUYen`): PR858's parent construction, strict physical-event + windows and independent owner audit; PR870/1074 retain the admission engines. +- `DreamingOfClouds`: PR589's tuned P111 bit supplier, with its full notices. + +The original notices retain the PR514/484/507 controller lineage, PR558/552/531 +phase machinery, exact moment engines and outer reduction. PR635's required +source subtree is retained at its constructor-pinned commit. +SOURCE-PINS.json records original Git blobs and SHA-256 for every vendored file; +DEPENDENCY-PINS.json binds retained repository dependencies. No optimizer is +needed to reconstruct the submitted owner map. diff --git a/research/complex-t37-joint-x54-owners/PROOF.md b/research/complex-t37-joint-x54-owners/PROOF.md new file mode 100644 index 0000000000..2e95a86d9b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/PROOF.md @@ -0,0 +1,84 @@ +# Finite construction and fixed-family ceiling + +The unchanged PR1148 verifier freshly constructs and admits its eight-endpoint +T16 parent and joint-entrance supplier. Its 32 endpoint and 27 joint-entrance +controls, complete native phase replays and global admissions are retained. +The literal X54 recipe in `data/X54-RECIPE.json` then applies PR1130's unchanged +scalar/frame operation to the freshly rebuilt joint word. Its two positive and +eight negative controls are checked, followed by full native scalar, wrapper, +phase, independent frame/cone and leaver-premise replays. + +The final local paid profile is `(2364,498,414,126,84,8)` at ranks +`(1,2,3,4,5,8)`. Its 480 helper widths have multiplicities +`(44,44,38,114,240)` at `(4,5,7,8,9)`. The driver compares every helper width +before and after X54. Its paid profile is recounted from the final word; +the strict invoice binds all fresh supplier artifacts. + +`normalize_flow.py` translates PR1169's pinned integer-flow certificate into +literal width values and explicit physical-window labels. Every positive +integer entry is consumed once, with no new optimization or rounding. The +normalized data are compared exactly with `data/FLOW.json.gz` before the +retained matching constructor independently checks all conservation equations. +The final helper-label assignments are reconstructed from the final native word. + +For `0 ≤ s < 9`, `0 ≤ r < 37`, order calls by `(37s+8r,s,r)`. +Each replica retains the original stage order and hence all thirty original +physical source events, including its nine bridges. PR858's event expansion +reconstructs strict idle intervals. The independent PR890 checker reconstructs +them separately from the original event stream. + +The frozen flow groups together only identical capacity/interval pairs. Each +group retains the complete list of physical `(replica,child)` windows, with +112 distinct port families per window. A pattern with multiplicity `N` has +`N` bins. For every width `w`, its integer time flow totals `N` times the +pattern multiplicity of `w`; at each invocation the total flow is at most `N`. + +Split each width's flow among that many left vertices of degree `N`. Add +dummy left vertices to fill the unused capacity of the time vertices. This +gives a regular bipartite multigraph of degree `N`. Successive perfect +matchings decompose it into `N` bins. Every matching is checked to be a +permutation using positive edges, and every used edge is removed. Consequently +each bin has its exact pattern and receives at most one helper per invocation. +`construct.py` performs the entire decomposition with exact integers and +checks its reconstructed flow against the frozen one. + +Assign bins to their listed physical windows and port numbers in order; lay +their helper slices consecutively. The independent audit checks all 159,840 +roles for strict bridge-aware timing, whole widths, complete per-call helper +coverage, distinct physical families, disjoint prefix slices, and literal +orthogonal 73-axis charts. These checks also detect aliasing between different +idle children of the same physical family. The residual idle profile is +`{1:834,48:11374}`. Adding 333 local profiles gives the profile in CLAIM.json. + +The retained PR942 parent lift has bank groups `(8,8,8,8,5)` and shared restored +private workspace. Its independent parent checker is unchanged. The emitted +controller removes the dedicated banks and uses the frozen whole-owner map. +The strict invoice charges the enlarged 1,024-bit prefix reserve. It derives +prefix 775 and row coefficient 17,495, and binds every provider artifact to +the fresh native replay. Both moment engines certify the same root bracket: + +``` +0.001678420962050942454559 < b < 0.001678420962050942454560. +``` + +The retained bit endpoint is `1733427039589844234749 / 10^24`. All 47 strict +outer constraints hold at `κ = 1675608585476885 / 10^18`. + +For the fixed-family ceiling, retain PR795/890/942's signed helper prices +`(-1,-20,-8,-2,4)` and bin bonuses `(2,4,8,-13)` for capacities +`(8,16,32,48)`. There are `(672,448,448,448)` bins per replica. The new word +leaves idle mass 14,778 and signed budget −3,568 per replica. The retained +supporting-inequality proof therefore gives rank-one credit +`48*(-3568)+13*14778 = 20850`. At 37 replicas, the attained rank-one count +is `37*20850/925 = 834`, with the remaining mass in rank 48. + +`price.py` re-enumerates all 1,163 bin patterns by two methods, checks the +supporting inequalities with both exact arithmetic engines, and evaluates +the outer reduction at both ends of the root bracket. Both yield the same +`10^-18` grid tick. Thus this construction attains that fixed-family grid +ceiling, even when other call orders and replica counts are admitted in the +relaxation. This statement does not bound different local words, capacity +families, helper interfaces or bit suppliers. + +All retained all-size and realization hypotheses are unchanged; this proof +and its executable evidence establish the finite conditional composition. diff --git a/research/complex-t37-joint-x54-owners/README.md b/research/complex-t37-joint-x54-owners/README.md new file mode 100644 index 0000000000..086f4e9404 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/README.md @@ -0,0 +1,61 @@ +# Joint entrances and X54 with 37-replica whole-owner packing + +Conditional **κ = 0.001675608585476885**. This combines Thomas DiFiore's +PR1148 joint-entrance supplier, Jeremy Kothe's PR1130 X54 operation and +Rohan Arun's PR1169 integer-flow certificate on the retained PR1131 wave order. +It improves PR1148's admitted `0.001675560947524449` and PR1169's draft +joint-entrance T37 target `0.001675568675201533` at the preparation snapshot. + +The X54 operation changes the local paid profile by `+2 H3 - 4 H4 + 2 H5` +while preserving all 480 helper widths. The final local profile is +`{1:2364,2:498,3:414,4:126,5:84,8:8}`. The normalized flow is expanded by +exact deterministic bipartite matching into **159,840 whole-helper owners** +for 333 calls. It leaves 834 rank-one and 11,374 rank-48 idle children. +Both exact moment engines and all 47 outer inequalities certify the claim. + +## Reproduce + +Python 3.11+, a C++17 compiler, Boost headers and the retained baseline's +NumPy/SymPy/SciPy requirements are needed. The owner constructor uses only +the standard library; verification does not run an owner optimizer. + +```sh +python -m pip install -r research/e8-bit-p111-tuned/requirements.txt +CXX=g++ BOOST_INCLUDE=/usr/include python -B \ + research/complex-t37-joint-x54-owners/verify.py \ + --work /tmp/t37-joint-x54-fresh +``` + +Choose a new output directory outside the checkout. On Homebrew macOS use +`CXX=clang++ BOOST_INCLUDE=/opt/homebrew/include`. The driver freshly rebuilds +the retained PR589/741/799 ancestry, the k8 and seven-slot suppliers, the +complete PR1148 eight-end/T16 and joint-entrance admissions, and the final X54 +supplier. It then normalizes the pinned flow, reconstructs owners, checks the +independent geometry and five-bank parent, and runs strict controller admission. +All source staging and input-package bytes are checked before and after. + +The driver includes 32 eight-end and 27 joint-entrance rejection controls, +eight X54 negative controls, eight flow controls, six owner controls, eight +parent-lift controls, fifteen controller controls, 69 admission controls and +twelve bit-supplier controls, alongside the retained ancestral/supplier tests. +`RESULT.json` binds completed stages and manifests; `MATH.json` is the portable +mathematical receipt. `PRICE.json` records the two-engine signs, all outer +inequalities and the attained fixed-family ceiling over all positive replica counts. + +## Result and scope + +The complex profile is +`{1:788046,2:165834,3:137862,4:41958,5:27972,8:2664,48:11374}`. +There are 33,152 live families, 33,642 physical families and deficit 11,840. +The prefix is 775 bits within the charged 1,024-bit reserve; the physical-row +coefficient is 17,495, below the retained 20,161 limit. + +This is a finite conditional construction. All-size compiler, +common-label/mutable-source realization, whole-call hosting, precision/tape, +analytic transfer, the PR559 recurrence correction and bit H1–H5 hypotheses remain. +The fixed-family ceiling holds for this local paid profile, helper inventory, +source capacity stock and retained bit endpoint. It does not bound different +words, mixed providers, capacity families or recursion geometries. + +See [PROOF.md](PROOF.md), [NOTICE.md](NOTICE.md), [SOURCE-PINS.json](SOURCE-PINS.json) +and [CLAIM.json](CLAIM.json). All package sources and data are manifest-bound. diff --git a/research/complex-t37-joint-x54-owners/SOURCE-PINS.json b/research/complex-t37-joint-x54-owners/SOURCE-PINS.json new file mode 100644 index 0000000000..42fe18c1cb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/SOURCE-PINS.json @@ -0,0 +1 @@ +{"pr1022":{"commit":"58618bcbfe88a252467755fc283c04c3db5ca4fd","files":{"research/gauge44-leaver8/CONSTRUCTION.md":{"git_blob":"fa156763668d1c761968b6dfaecbb55199904415","sha256":"7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea"},"research/gauge44-leaver8/LICENSE":{"git_blob":"261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"},"research/gauge44-leaver8/LOCAL-VALIDATION.json":{"git_blob":"5973645e1a8338e168ae0eb10836f99a62333635","sha256":"f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e"},"research/gauge44-leaver8/MANIFEST.json":{"git_blob":"8161f0e77d2b76ae419c03d53404030bc6f386d6","sha256":"7c9637f06798b144274458efa145f701c61282f8b3aab1c0c900b53bdfbe1f0d"},"research/gauge44-leaver8/NOTICE.md":{"git_blob":"30d0c8cd3ca119c2eb8765908f44e483dda4caea","sha256":"7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf"},"research/gauge44-leaver8/PROOF-NOTE-BARCH.md":{"git_blob":"8cea5a6846a254a25136f8a53e24bb0ef665a44b","sha256":"c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d"},"research/gauge44-leaver8/PROOF-NOTE-BIT.md":{"git_blob":"da06360da046bbcb66192264ec389c96ba61ca41","sha256":"dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7"},"research/gauge44-leaver8/PROOF-NOTE-FRAMES-X4.md":{"git_blob":"a456a8127badf654c6b2ac64e54818bfa6ec0837","sha256":"39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036"},"research/gauge44-leaver8/PROOF-NOTE-LAYERS.md":{"git_blob":"c4b4e85b6aedbc04a4b1a1d900755e85c619850f","sha256":"92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f"},"research/gauge44-leaver8/PROOF-NOTE-LEAVER.md":{"git_blob":"b34a289c48364b816f782816d13debcfedb243fa","sha256":"e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3"},"research/gauge44-leaver8/PROOF-NOTE-NOTRI.md":{"git_blob":"54bd84e01dbf49655c259f97a0481541911e2bb2","sha256":"774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414"},"research/gauge44-leaver8/PROOF-NOTE-P6N.md":{"git_blob":"bef9ad2de04fdefc0a318051fe781d811c4106de","sha256":"cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d"},"research/gauge44-leaver8/PROOF-NOTE-PROMO.md":{"git_blob":"8233bbd6b86677298ee71463c24487e063bb6f72","sha256":"c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae"},"research/gauge44-leaver8/PROOF-NOTE-SW4.md":{"git_blob":"a064cc54ccdb90e077f88821f082864a2b83be35","sha256":"d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d"},"research/gauge44-leaver8/README.md":{"git_blob":"48f987a99f42a24a6e7e2e98c4a6d170a745af04","sha256":"0c09f0685e5db77177187c12afea9c45465787c44d6ae0d7d28c0c7de8f1b2a0"},"research/gauge44-leaver8/RESULT.json":{"git_blob":"0fcf6741735048a3d1dd51a870355d2f98a424dc","sha256":"72bf797ce995ff6108c1609b9d71ca50b6fd3e84eb827e9ca2df6b64710d88b6"},"research/gauge44-leaver8/SOURCES.json":{"git_blob":"0d69845db9d41f4714c63544f34270936af715e7","sha256":"abb903d9b46388f99325a3939eb68171ac163c66b4b62b7961ea46daa20a88f0"},"research/gauge44-leaver8/UPSTREAM-NOTICE.md":{"git_blob":"ebc24a0168c65c48c771dcf4e89359afc418e848","sha256":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610"},"research/gauge44-leaver8/code/assemble.py":{"git_blob":"8cee90b50e238bd1519a7aeb7395f62d277b8ae4","sha256":"4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec"},"research/gauge44-leaver8/code/assembly_controls.py":{"git_blob":"93bca1ce6fa5eb19bcf00ce3e79f8002ea3b9894","sha256":"e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162"},"research/gauge44-leaver8/code/audit_allcold.py":{"git_blob":"c86f7b0235f738b4325c04c51abaf1aa5f015aaa","sha256":"a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503"},"research/gauge44-leaver8/code/bind_providers_portable.py":{"git_blob":"97e28da17ed75cd4add54394f6178dba8c9b257f","sha256":"1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6"},"research/gauge44-leaver8/code/bit_supplier_controls.py":{"git_blob":"e86b8527b464277a926a788f2493e8f2e091fff1","sha256":"e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5"},"research/gauge44-leaver8/code/emit_allcold.py":{"git_blob":"8e147f80a67a6095d33764117d761eeb1b799460","sha256":"17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa"},"research/gauge44-leaver8/code/freeze_spec.py":{"git_blob":"dd0358d396cdf2bbc9302d41212f912954f673c7","sha256":"f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93"},"research/gauge44-leaver8/code/generated_identity.py":{"git_blob":"74a9b604793f21a9f064c78874341e287ded7a68","sha256":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708"},"research/gauge44-leaver8/code/invoice_allcold.py":{"git_blob":"b244cd59940659465c07b013ebe3225077496f45","sha256":"141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec"},"research/gauge44-leaver8/code/prepare_global.py":{"git_blob":"655c9470f666138918afbaff077ad2ec5663c6bd","sha256":"8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc"},"research/gauge44-leaver8/code/restore_parent.py":{"git_blob":"21135f898a43e35b55e522c2d0b81a5e32033097","sha256":"69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d"},"research/gauge44-leaver8/code/witness.py":{"git_blob":"c5c7fbc1142220ce854907de4e439420ac12d30c","sha256":"779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444"},"research/gauge44-leaver8/construction/COLD44-RECIPE.json.gz":{"git_blob":"6f59d889202eee8d97ba32329273a3b7cf2389b2","sha256":"22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c"},"research/gauge44-leaver8/construction/COMPLETION-PRIORITY.json":{"git_blob":"e0df30aeefc4063ccf203347889e18a621ff6b2a","sha256":"0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47"},"research/gauge44-leaver8/construction/INPUTS.json":{"git_blob":"2b12294b58686a906d350de5b6f13c157bdecf5b","sha256":"edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99"},"research/gauge44-leaver8/construction/LICENSE":{"git_blob":"261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"},"research/gauge44-leaver8/construction/NOTICE.md":{"git_blob":"16b0507070427fb5bb20e7783c05768b8cdb3265","sha256":"defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816"},"research/gauge44-leaver8/construction/REBUILD-CHECKS.json":{"git_blob":"0801f35da7881ed675c943c1ff2bfd83b0a102b1","sha256":"1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91"},"research/gauge44-leaver8/construction/UPSTREAM-NOTICE.md":{"git_blob":"ebc24a0168c65c48c771dcf4e89359afc418e848","sha256":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610"},"research/gauge44-leaver8/construction/barch/LOCAL-PINS-barch-U8.json":{"git_blob":"4028b95c0ee2d6575ff1d40a25e789af6083ab2b","sha256":"2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5"},"research/gauge44-leaver8/construction/barch/RECIPE-U8.json":{"git_blob":"ee215a805a7487c300fe1e2b117bd4b5720d4d24","sha256":"292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652"},"research/gauge44-leaver8/construction/barch/build_tri.py":{"git_blob":"11c43711144a98224d0bc166f217e9ae996ffeb2","sha256":"0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e"},"research/gauge44-leaver8/construction/barch/reproduce_barch.py":{"git_blob":"22f15b491de212027334bf20ef2937322136c4dc","sha256":"19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1"},"research/gauge44-leaver8/construction/barch/run_controls.py":{"git_blob":"f1ce999bfb6cbc39e10d3c113d0306e0dc1989c4","sha256":"42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476"},"research/gauge44-leaver8/construction/build_gauge_cold44.py":{"git_blob":"72d2945f6ba7f33e84f5d8938c635e20592890a2","sha256":"ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb"},"research/gauge44-leaver8/construction/construct_gauge_xcentre.py":{"git_blob":"1010d86746ed9d0ca2059d7fc81fb3282ec743b3","sha256":"d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217"},"research/gauge44-leaver8/construction/frames/FRAME-RECIPE-sw4.json":{"git_blob":"7394064c5e6ed5fc7e99f042a5229fb03f51cea6","sha256":"a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473"},"research/gauge44-leaver8/construction/frames/LOCAL-PINS-frames-sw4.json":{"git_blob":"834ae13a2f1844002ca8dba0abc486d1cc6a884c","sha256":"bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f"},"research/gauge44-leaver8/construction/frames/build_frames.py":{"git_blob":"22021549e6991dceee823191cedc8a892db8c3f8","sha256":"200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb"},"research/gauge44-leaver8/construction/frames/frame_controls.py":{"git_blob":"cd951a9f0e05586b5e616b2cb1977f87c5249f36","sha256":"477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77"},"research/gauge44-leaver8/construction/frames/reproduce_frames.py":{"git_blob":"eaf9b47cac5324d713994f96e83ea16bca7cf3ac","sha256":"dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832"},"research/gauge44-leaver8/construction/jx/LOCAL-PINS-jx-X4.json":{"git_blob":"417e4ba7a1d731f56b24ae68563a963703e33a0b","sha256":"95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974"},"research/gauge44-leaver8/construction/jx/RECIPE-X4.json":{"git_blob":"30f7fa5948539b888969935b03e848cc1f3289c0","sha256":"9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd"},"research/gauge44-leaver8/construction/jx/build_jx.py":{"git_blob":"f8d74a6324515b3d55bb49b399dedf9ed58a3ae2","sha256":"3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916"},"research/gauge44-leaver8/construction/jx/reproduce_jx.py":{"git_blob":"6829a1b25d4ff473dfd1ea315cf6e363aecfd139","sha256":"5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c"},"research/gauge44-leaver8/construction/layers/build_pivot_swap.py":{"git_blob":"b225601c017bc9773ba11b94a0e875f542dc863f","sha256":"8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8"},"research/gauge44-leaver8/construction/layers/layer_end_controls.py":{"git_blob":"317da36d95aee13edfd93d5b314bb61bd0ccad2a","sha256":"7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef"},"research/gauge44-leaver8/construction/layers/reproduce_layers.py":{"git_blob":"ed517ba1dd8d6f1235d88525320f139dde4b50c0","sha256":"435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e"},"research/gauge44-leaver8/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz":{"git_blob":"f9155e307940fcd10dcb75c20e996c3b439b92fa","sha256":"3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0"},"research/gauge44-leaver8/construction/layers_np/HPE-RECIPE-NP.json":{"git_blob":"2605d199ed73ddac439c242b2e1d655c07cfc5b8","sha256":"43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1"},"research/gauge44-leaver8/construction/layers_np/PIVOT-SWAP-NP.json":{"git_blob":"4e0d8464269a2835aa93d76f28785cbbbd51636c","sha256":"d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5"},"research/gauge44-leaver8/construction/layers_np/reproduce_np.py":{"git_blob":"79cb6fa9121d3b6c79b10af95ca01610efc3fcd2","sha256":"1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c"},"research/gauge44-leaver8/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz":{"git_blob":"a408c95816d0a92e962ec5e7e083e8ba1900a396","sha256":"17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4"},"research/gauge44-leaver8/construction/layers_p6n/P6N-SPEC.json":{"git_blob":"43c3ec265c1b4a95f20b203d3339b19a3caf4d8f","sha256":"132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1"},"research/gauge44-leaver8/construction/layers_p6n/layer_end_controls.py":{"git_blob":"dd321fe2558c6138b57ae123b229d1f7d6137824","sha256":"fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e"},"research/gauge44-leaver8/construction/layers_p6n/reproduce_p6n.py":{"git_blob":"f9eb173bc115486971a16b49839b61786379096b","sha256":"aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca"},"research/gauge44-leaver8/construction/leaver/CHAIN-PINS-k8.json":{"git_blob":"afd0467911a2994c1d1df7bff61d9bed2ddfca36","sha256":"9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9"},"research/gauge44-leaver8/construction/leaver/CODED-CELLS-k8.json":{"git_blob":"cd23561e0be5bd060e6e0b94643e550374ecd7d8","sha256":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563"},"research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz":{"git_blob":"6850696b19a96dea7c2415998ff8b7873f92c1c6","sha256":"6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33"},"research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz":{"git_blob":"dc0275695d22db133a1d49324645796036878264","sha256":"24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb"},"research/gauge44-leaver8/construction/leaver/FRAME-RECIPE-LV-k8.json":{"git_blob":"982bd357daac8d593c97eb5f00f7e9d9af3e0394","sha256":"b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065"},"research/gauge44-leaver8/construction/leaver/HPE-RECIPE-k8.json":{"git_blob":"94d36f227999496c5977e87f515f033e91d8fb61","sha256":"907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9"},"research/gauge44-leaver8/construction/leaver/LEAVER-PINS-k8.json":{"git_blob":"b22678629c226d523b37d0157f941ba616b32164","sha256":"ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6"},"research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-STACK-k8.json":{"git_blob":"820ee8d63a2cba44bbcd68c4d5cd161eb9ea2609","sha256":"d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19"},"research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-k8.json":{"git_blob":"5218a5f09615f4770982bd48f4bb45f44eaa2bca","sha256":"b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914"},"research/gauge44-leaver8/construction/leaver/PIVOT-SWAP-k8.json":{"git_blob":"7a8edeb1e404c441577427e72557e26b06c945f1","sha256":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb"},"research/gauge44-leaver8/construction/leaver/PROMO-RECIPE-k8.json":{"git_blob":"1952580fc814b0e8b598531c02681a2b6920a10c","sha256":"bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83"},"research/gauge44-leaver8/construction/leaver/RECIPE-U8-k8.json":{"git_blob":"98ea6e3d231622a726edb22e85919e744c81775f","sha256":"51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e"},"research/gauge44-leaver8/construction/leaver/RECIPE-X4-k8.json":{"git_blob":"3483acd5a51c987f7029e10785717f189e986b36","sha256":"4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1"},"research/gauge44-leaver8/construction/leaver/REGROUP-LEAVER-k8.json":{"git_blob":"d482da23a8252583a8d95132c231232ccdff7880","sha256":"b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e"},"research/gauge44-leaver8/construction/leaver/TRI-LEAVER-k8.json":{"git_blob":"e3bb24cc49812a90a82e8e77ee8588f3d00d81e4","sha256":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30"},"research/gauge44-leaver8/construction/leaver/build_frames_lv.py":{"git_blob":"5f8aa7a24bd075fbdd1b0c824cf74881db060674","sha256":"2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b"},"research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01+.json":{"git_blob":"bfef820f29a7e19bff618d165185197b72be3328","sha256":"3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c"},"research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01-.json":{"git_blob":"3afa894b20a24e20dc3dabf019d5c9c0d104d9de","sha256":"8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927"},"research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23+.json":{"git_blob":"98ff8050e7d76607fb74dd82934931b3c05cc3ac","sha256":"53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d"},"research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23-.json":{"git_blob":"517b89d38270440a1a007e09168350aa2751a051","sha256":"e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d"},"research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45+.json":{"git_blob":"2bc89e1de1957ca9d6a30dd3715eef1331ee7fad","sha256":"ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9"},"research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45-.json":{"git_blob":"b9c1904b83c904726a558a34950090cd0672b902","sha256":"302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7"},"research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67+.json":{"git_blob":"7d756cb19d67e2df44bae7810a50e6742f24e590","sha256":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05"},"research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67-.json":{"git_blob":"7d756cb19d67e2df44bae7810a50e6742f24e590","sha256":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05"},"research/gauge44-leaver8/construction/leaver/cgx_leaver.py":{"git_blob":"e686c66306456e2c6cac9c05d01448765322836c","sha256":"3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c"},"research/gauge44-leaver8/construction/leaver/layer_end_controls_leaver.py":{"git_blob":"84b1c52ed250b30a8a675949714cf4625e22f6dc","sha256":"4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206"},"research/gauge44-leaver8/construction/leaver/reproduce_leaver.py":{"git_blob":"bc4360ef93ceea8fe2da33afbbaa100feaf0731a","sha256":"831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30"},"research/gauge44-leaver8/construction/leaver/reproduce_leaver_chain.py":{"git_blob":"19fcd28f4d41db8590ae71f6b98dd7c0655bce32","sha256":"2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5"},"research/gauge44-leaver8/construction/notri/PRIO6.json":{"git_blob":"069a7bf5a5f4db53068480acd57cb9e2e62eac2f","sha256":"de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15"},"research/gauge44-leaver8/construction/notri/cgx.py":{"git_blob":"08e80804eb6858be9d6ce6458a936cea1e76dc76","sha256":"3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418"},"research/gauge44-leaver8/construction/notri/cold44x.py":{"git_blob":"8fa6f3a6a6641f093eff1d467df20af0f8a21278","sha256":"f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296"},"research/gauge44-leaver8/construction/notri/port_stage_x.py":{"git_blob":"81ac65ceff60123daaf87edb621df4194622c9ca","sha256":"38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7"},"research/gauge44-leaver8/construction/notri/reproduce_notri.py":{"git_blob":"a85f2acf1537253512f8a00928415e64532639cf","sha256":"90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8"},"research/gauge44-leaver8/construction/promo/LOCAL-PINS-p6n-k4.json":{"git_blob":"c43b391a43b4443a5fa12d4899d97b8e5fcc1979","sha256":"a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f"},"research/gauge44-leaver8/construction/promo/PROMO-RECIPE-p6n-k4.json":{"git_blob":"3f336c07eaec6ee0e8b350b3f3acb8e011a09453","sha256":"fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90"},"research/gauge44-leaver8/construction/promo/build_promotion.py":{"git_blob":"f1daad34c22efdd97a11b1e16384962b8af1d704","sha256":"9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf"},"research/gauge44-leaver8/construction/promo/make_recipe.py":{"git_blob":"618d609453ea9718b8c74c5d2a26cd5b9e985309","sha256":"ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122"},"research/gauge44-leaver8/construction/promo/promo_controls.py":{"git_blob":"20ee51f7dbabd401e125ad948e96c38f36cde6cb","sha256":"786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372"},"research/gauge44-leaver8/construction/promo/reproduce_promo.py":{"git_blob":"6e04aa71b163a80c2f7ca2f5000976bd98fb8557","sha256":"f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026"},"research/gauge44-leaver8/construction/reproduce.py":{"git_blob":"8b51efa64638c849ad329757b807ef1f68a6cb8c","sha256":"047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92"},"research/gauge44-leaver8/construction/sw4/LOCAL-PINS-sw4-P6k4.json":{"git_blob":"ae26a0f2f144b0ac863dd868f570270cb4c75d32","sha256":"3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327"},"research/gauge44-leaver8/construction/sw4/NOTES.md":{"git_blob":"2a53ffb3b82af7b283bf79efc81089dc6ab37dd3","sha256":"3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446"},"research/gauge44-leaver8/construction/sw4/SW4-RECIPE-P6k4.json":{"git_blob":"b9dea4152a099782d48d533523a50f3464351677","sha256":"fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa"},"research/gauge44-leaver8/construction/sw4/build_sw4.py":{"git_blob":"617e0ed06d133e8820ac5c29f8e9397f6c3cbec9","sha256":"9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66"},"research/gauge44-leaver8/construction/sw4/reproduce_sw4.py":{"git_blob":"cb038e064b4acd1c4bf454ee76102fc923e8f284","sha256":"3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac"},"research/gauge44-leaver8/data/FRONTIER.json":{"git_blob":"70285d4d85f0a901de07f9613538825dcd36a848","sha256":"56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2"},"research/gauge44-leaver8/data/OWNERS.json.gz":{"git_blob":"8eda84ea0c0f57ca4c14ecb11426874ec2e42886","sha256":"32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a"},"research/gauge44-leaver8/data/PLAN.json":{"git_blob":"4f17b4ccf339ae346cdaf7851bb81f87ee37bdcf","sha256":"7b3122026e82b9d9e964d2a50c7bffdc976ae3dfea64bb98b2fdad5cfbdbaa20"},"research/gauge44-leaver8/data/PREPARATION.json":{"git_blob":"8c7796820f47f790733741613cd61af350465f5c","sha256":"1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9"},"research/gauge44-leaver8/data/SPEC.json":{"git_blob":"db24c49da468c91eff1d3339c487287a771272d3","sha256":"1208c7c3ae84c158c21b80d69f0f448d376680a7d37e15d0abc77541d3cd61d8"},"research/gauge44-leaver8/data/UPSTREAM-PINS.json":{"git_blob":"68486b84e3ae599d776b9613adc901fd8874718d","sha256":"ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b"},"research/gauge44-leaver8/evidence/ADMISSION-CONTROLS.json":{"git_blob":"2e15a1006563e996c90376c24ce4df297205b99d","sha256":"5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28"},"research/gauge44-leaver8/evidence/ASSEMBLY.json":{"git_blob":"6feaaf28f534f8315428f1ed849b61d2131269b6","sha256":"847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f"},"research/gauge44-leaver8/evidence/BINDING.json":{"git_blob":"b03160c67acab5beb4d2c035224f1135d4fa7824","sha256":"f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b"},"research/gauge44-leaver8/evidence/CENTER-COMPATIBILITY.json":{"git_blob":"5a3ae374226298bdc93d17a84e08d4040223a5f6","sha256":"c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3"},"research/gauge44-leaver8/evidence/LOCAL-STAGES.json":{"git_blob":"b2753eb57a8d163ce4226de982d16fe7eec7f2c3","sha256":"64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591"},"research/gauge44-leaver8/evidence/REPLAY.json":{"git_blob":"c6f4e0f983aed66e80f7875f2b78bdc9a479189e","sha256":"45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2"},"research/gauge44-leaver8/evidence/STAGES.json":{"git_blob":"9464e2dfea4ac299955ae2c4f1de34e1eb8a2e03","sha256":"09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458"},"research/gauge44-leaver8/evidence/audit/ASYNC-AUDIT.json":{"git_blob":"05975382b5e8e457d0ebc0c9aec19f9344464591","sha256":"df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662"},"research/gauge44-leaver8/evidence/audit/GLOBAL-PREFIX.json":{"git_blob":"a557ebbe60a67823094fcb616500099fdd9c95be","sha256":"5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671"},"research/gauge44-leaver8/evidence/audit/IDLE-REMAINDER-FRAMES.json":{"git_blob":"1c86a8a01d1d133a87cdc1928e9119edc634ec0e","sha256":"95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048"},"research/gauge44-leaver8/evidence/audit/OWNERS-AND-PROFILE.json":{"git_blob":"bdb9441b7efc06b56585502ed0856d8dec8e1591","sha256":"a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313"},"research/gauge44-leaver8/evidence/audit/PREFIX-AND-INVOICE.json":{"git_blob":"6c96ec67062b536f40ecdedba96b497f58d5270e","sha256":"14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582"},"research/gauge44-leaver8/evidence/global/ACTUAL-SIGMAS.json.gz":{"git_blob":"dbb57066e2f71a5d11096a6c73c7ba448f278419","sha256":"bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f"},"research/gauge44-leaver8/evidence/global/GLOBAL-TEMPLATE.json.gz":{"git_blob":"424c2df489364ea5b29e0df9841e6fe91a517df4","sha256":"f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b"},"research/gauge44-leaver8/evidence/global/HOSTED.json":{"git_blob":"498e849ab782c095bd6bffa884fb0a41eac4c844","sha256":"60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e"},"research/gauge44-leaver8/evidence/global/IDLE-REMAINDER-FRAMES.json.gz":{"git_blob":"3562e60f057d4ee0bb20b1d0ba3d759d08c83d1d","sha256":"734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784"},"research/gauge44-leaver8/evidence/layers/LOCAL-AUDIT-LAYERED.json":{"git_blob":"078078767410495313abd3b2c24203d7ec80328b","sha256":"a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff"},"research/gauge44-leaver8/evidence/leaver/CELL-MUTANTS-LV.json":{"git_blob":"4d4ef7403c06e17b7b6c519f7a2bc10c88793fbf","sha256":"308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220"},"research/gauge44-leaver8/evidence/leaver/FRAME-CONTROLS-LV-k8.json":{"git_blob":"9f56e21000ef55584d14dc828f5601f3ae3717cc","sha256":"9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd"},"research/gauge44-leaver8/evidence/local/CANONICAL-WORD.json.gz":{"git_blob":"5062a1f62fd19777ac4a3d32bf0973a3ed71658d","sha256":"92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed"},"research/gauge44-leaver8/evidence/local/CLIFFORD-RECIPES.json":{"git_blob":"3ba8326d3acdb61e7a40507cee7b84f9689738e1","sha256":"0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771"},"research/gauge44-leaver8/evidence/local/CLIFFORD-REVIEW.json":{"git_blob":"6b12ae0e4b4b9d4f188e10dae041ecc146babdcf","sha256":"4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12"},"research/gauge44-leaver8/evidence/local/FULL-WORD.json.gz":{"git_blob":"447d45d08bf4b054d2fa76a0dc00a3b0f168fe91","sha256":"0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e"},"research/gauge44-leaver8/evidence/local/INDEPENDENT-LOCAL-REPLAY.json":{"git_blob":"aa15edfba5d132afbe6b3be5efe883dddd92af5e","sha256":"18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e"},"research/gauge44-leaver8/evidence/local/LOCAL-CHECKS.json":{"git_blob":"3872f0e59618ccc4fd6f00daeb7c9164957b7ea2","sha256":"2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c"},"research/gauge44-leaver8/evidence/local/LOCAL-PROGRAMS.json.gz":{"git_blob":"d511f2afa49f9eed010e91eed590a15252506470","sha256":"172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2"},"research/gauge44-leaver8/evidence/local/RESIDUAL-ADAPTERS.json":{"git_blob":"9c66f92ffb350d32286025c0b60b3b9a70b773c9","sha256":"bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94"},"research/gauge44-leaver8/evidence/local/SCALAR-FRAME-AUDIT.json":{"git_blob":"23bf3d263ed961be2d60ab79d89ec79c50a2a3ff","sha256":"cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb"},"research/gauge44-leaver8/evidence/local/WRAPPER-CHECKS.json":{"git_blob":"a18afd4fad769aa0422b7d534510f14a937870ae","sha256":"84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7"},"research/gauge44-leaver8/hosting/PROOF.md":{"git_blob":"b551b6d3e5535c5486c96dd93bd04262ba5a71f9","sha256":"45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0"},"research/gauge44-leaver8/hosting/README.md":{"git_blob":"b9505ebbea39c3b4dd3efd45fb0472aab8331096","sha256":"004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1"},"research/gauge44-leaver8/hosting/audit_frozen.py":{"git_blob":"26a07408ea56e5bebb3d03d9938655ba9f74bac7","sha256":"a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659"},"research/gauge44-leaver8/hosting/expand_owners.py":{"git_blob":"ee6c4c24e63aa0555638f8d11be3f6367f7d2e62","sha256":"0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70"},"research/gauge44-leaver8/hosting/frozen/FROZEN-AUDIT.json":{"git_blob":"5f95552366147690dd3cccd141a14d7613132a97","sha256":"df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b"},"research/gauge44-leaver8/hosting/frozen/MAJORIZATION.json.gz":{"git_blob":"047b1cfb678fac19f80a29cf512770505f126d28","sha256":"ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf"},"research/gauge44-leaver8/hosting/frozen/MANIFEST.json":{"git_blob":"291005722ccdc7d7a78a5c13f592f25038d838e6","sha256":"9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967"},"research/gauge44-leaver8/hosting/frozen/MATCHING-RECEIPT.json":{"git_blob":"993331090c85923d2f9e4a4eabe35f098c91d968","sha256":"e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2"},"research/gauge44-leaver8/hosting/frozen/OWNERS.json.gz":{"git_blob":"e9c7cfc72db0f8825070ea8f0ab4c45dae89baef","sha256":"90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57"},"research/gauge44-leaver8/hosting/frozen/REPRODUCTION.json":{"git_blob":"8ad59712b276961b0bff5df309d60c09c68851b0","sha256":"8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81"},"research/gauge44-leaver8/hosting/frozen/SEED-OWNERS.json.gz":{"git_blob":"d61916a1564d7072c8de69e3757d35e5cbec24d1","sha256":"eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048"},"research/gauge44-leaver8/hosting/frozen/SEED-RECEIPT.json":{"git_blob":"82911f647b44c6efec6bf7689d57202c690d9b6c","sha256":"aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba"},"research/gauge44-leaver8/hosting/frozen/SEED-REPRODUCTION.json":{"git_blob":"91ee98cf7046e1408ce4c0a78896db661b0d8138","sha256":"4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194"},"research/gauge44-leaver8/hosting/reproduce.py":{"git_blob":"2f29a5ff13a06d7734ea4482bd18a74698f6217f","sha256":"7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82"},"research/gauge44-leaver8/hosting/reuse_owners.py":{"git_blob":"234b831790d7839d4c2e43357ae277b7bf254a2b","sha256":"2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402"},"research/gauge44-leaver8/independent/CENTRE-GUARD-REVIEW.md":{"git_blob":"6c62bd070ef90cda02355b7ad87dd67dc92e7184","sha256":"7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897"},"research/gauge44-leaver8/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json":{"git_blob":"771faa86a7432c0b2652a1ab0b2d849a11462b94","sha256":"9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9"},"research/gauge44-leaver8/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json":{"git_blob":"e2df1dcca8fec4d74662718841ad7fe86ba2af9e","sha256":"631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b"},"research/gauge44-leaver8/independent/GAUGE44-INDEPENDENT-PRICE.json":{"git_blob":"7aa86180dd71ed15d4180efa682ae7c4c5f41d9f","sha256":"6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683"},"research/gauge44-leaver8/independent/README.md":{"git_blob":"f97dcf81b134238cf11dae9704ca8574d027b72c","sha256":"25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89"},"research/gauge44-leaver8/independent/audit_local.py":{"git_blob":"4744d8783c25bf7bf5076886169077ca3808309a","sha256":"03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd"},"research/gauge44-leaver8/independent/price_profile.py":{"git_blob":"0e36ebd4687374e3ca14f233c77fafbdc1e5cfcd","sha256":"d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf"},"research/gauge44-leaver8/independent/review_guards.py":{"git_blob":"086dcf3d11897b73dfb2730bbfacd690fa3f0c41","sha256":"b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d"},"research/gauge44-leaver8/inputs/PR589-EXPECTED.json":{"git_blob":"e293ddc557742637f9f679f083a1a282d87b1b13","sha256":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4"},"research/gauge44-leaver8/verify_global.py":{"git_blob":"7ab79e3062e23e3ebfadecddb7851c65799f2f9a","sha256":"16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a"},"research/gauge44-leaver8/verify_manifest.py":{"git_blob":"8c2441d39202409ffe1c2cb42f197946f7bfa7c0","sha256":"723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b"},"research/gauge44-slots/CONSTRUCTION.md":{"git_blob":"fa156763668d1c761968b6dfaecbb55199904415","sha256":"7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea"},"research/gauge44-slots/LICENSE":{"git_blob":"261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"},"research/gauge44-slots/LOCAL-VALIDATION.json":{"git_blob":"5973645e1a8338e168ae0eb10836f99a62333635","sha256":"f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e"},"research/gauge44-slots/MANIFEST.json":{"git_blob":"6daa9abfd671a16a819a1946cbc97f2965216cac","sha256":"9a6f239b1618a43262e56735a99cc59b6f5a6e8816a794a34413e89cc33f4976"},"research/gauge44-slots/NOTICE.md":{"git_blob":"30d0c8cd3ca119c2eb8765908f44e483dda4caea","sha256":"7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf"},"research/gauge44-slots/PROOF-NOTE-BARCH.md":{"git_blob":"8cea5a6846a254a25136f8a53e24bb0ef665a44b","sha256":"c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d"},"research/gauge44-slots/PROOF-NOTE-BIT.md":{"git_blob":"da06360da046bbcb66192264ec389c96ba61ca41","sha256":"dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7"},"research/gauge44-slots/PROOF-NOTE-FRAMES-X4.md":{"git_blob":"a456a8127badf654c6b2ac64e54818bfa6ec0837","sha256":"39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036"},"research/gauge44-slots/PROOF-NOTE-LAYERS.md":{"git_blob":"c4b4e85b6aedbc04a4b1a1d900755e85c619850f","sha256":"92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f"},"research/gauge44-slots/PROOF-NOTE-LEAVER.md":{"git_blob":"b34a289c48364b816f782816d13debcfedb243fa","sha256":"e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3"},"research/gauge44-slots/PROOF-NOTE-NOTRI.md":{"git_blob":"54bd84e01dbf49655c259f97a0481541911e2bb2","sha256":"774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414"},"research/gauge44-slots/PROOF-NOTE-P6N.md":{"git_blob":"bef9ad2de04fdefc0a318051fe781d811c4106de","sha256":"cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d"},"research/gauge44-slots/PROOF-NOTE-PROMO.md":{"git_blob":"8233bbd6b86677298ee71463c24487e063bb6f72","sha256":"c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae"},"research/gauge44-slots/PROOF-NOTE-SW4.md":{"git_blob":"a064cc54ccdb90e077f88821f082864a2b83be35","sha256":"d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d"},"research/gauge44-slots/README.md":{"git_blob":"8b485109396f32bfe3422f18023def2b14c57237","sha256":"bd4248499e577321f17aacba1d7815a5eb0f9cbe88faeb8fef38b71bdf3a684c"},"research/gauge44-slots/RESULT.json":{"git_blob":"89be708d9c344718a5e108af04febd1513c977a7","sha256":"6cbc5f16cb2bdc279cf518b8670cedec1869069daa609a6803d4d377f13b813c"},"research/gauge44-slots/SOURCES.json":{"git_blob":"0d69845db9d41f4714c63544f34270936af715e7","sha256":"abb903d9b46388f99325a3939eb68171ac163c66b4b62b7961ea46daa20a88f0"},"research/gauge44-slots/UPSTREAM-NOTICE.md":{"git_blob":"ebc24a0168c65c48c771dcf4e89359afc418e848","sha256":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610"},"research/gauge44-slots/code/assemble.py":{"git_blob":"8cee90b50e238bd1519a7aeb7395f62d277b8ae4","sha256":"4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec"},"research/gauge44-slots/code/assembly_controls.py":{"git_blob":"93bca1ce6fa5eb19bcf00ce3e79f8002ea3b9894","sha256":"e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162"},"research/gauge44-slots/code/audit_allcold.py":{"git_blob":"c86f7b0235f738b4325c04c51abaf1aa5f015aaa","sha256":"a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503"},"research/gauge44-slots/code/bind_providers_portable.py":{"git_blob":"97e28da17ed75cd4add54394f6178dba8c9b257f","sha256":"1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6"},"research/gauge44-slots/code/bit_supplier_controls.py":{"git_blob":"e86b8527b464277a926a788f2493e8f2e091fff1","sha256":"e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5"},"research/gauge44-slots/code/emit_allcold.py":{"git_blob":"8e147f80a67a6095d33764117d761eeb1b799460","sha256":"17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa"},"research/gauge44-slots/code/freeze_spec.py":{"git_blob":"dd0358d396cdf2bbc9302d41212f912954f673c7","sha256":"f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93"},"research/gauge44-slots/code/generated_identity.py":{"git_blob":"74a9b604793f21a9f064c78874341e287ded7a68","sha256":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708"},"research/gauge44-slots/code/invoice_allcold.py":{"git_blob":"b244cd59940659465c07b013ebe3225077496f45","sha256":"141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec"},"research/gauge44-slots/code/prepare_global.py":{"git_blob":"655c9470f666138918afbaff077ad2ec5663c6bd","sha256":"8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc"},"research/gauge44-slots/code/restore_parent.py":{"git_blob":"21135f898a43e35b55e522c2d0b81a5e32033097","sha256":"69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d"},"research/gauge44-slots/code/witness.py":{"git_blob":"c5c7fbc1142220ce854907de4e439420ac12d30c","sha256":"779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444"},"research/gauge44-slots/construction/COLD44-RECIPE.json.gz":{"git_blob":"6f59d889202eee8d97ba32329273a3b7cf2389b2","sha256":"22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c"},"research/gauge44-slots/construction/COMPLETION-PRIORITY.json":{"git_blob":"e0df30aeefc4063ccf203347889e18a621ff6b2a","sha256":"0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47"},"research/gauge44-slots/construction/INPUTS.json":{"git_blob":"2b12294b58686a906d350de5b6f13c157bdecf5b","sha256":"edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99"},"research/gauge44-slots/construction/LICENSE":{"git_blob":"261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"},"research/gauge44-slots/construction/NOTICE.md":{"git_blob":"16b0507070427fb5bb20e7783c05768b8cdb3265","sha256":"defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816"},"research/gauge44-slots/construction/REBUILD-CHECKS.json":{"git_blob":"0801f35da7881ed675c943c1ff2bfd83b0a102b1","sha256":"1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91"},"research/gauge44-slots/construction/UPSTREAM-NOTICE.md":{"git_blob":"ebc24a0168c65c48c771dcf4e89359afc418e848","sha256":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610"},"research/gauge44-slots/construction/barch/LOCAL-PINS-barch-U8.json":{"git_blob":"4028b95c0ee2d6575ff1d40a25e789af6083ab2b","sha256":"2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5"},"research/gauge44-slots/construction/barch/RECIPE-U8.json":{"git_blob":"ee215a805a7487c300fe1e2b117bd4b5720d4d24","sha256":"292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652"},"research/gauge44-slots/construction/barch/build_tri.py":{"git_blob":"11c43711144a98224d0bc166f217e9ae996ffeb2","sha256":"0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e"},"research/gauge44-slots/construction/barch/reproduce_barch.py":{"git_blob":"22f15b491de212027334bf20ef2937322136c4dc","sha256":"19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1"},"research/gauge44-slots/construction/barch/run_controls.py":{"git_blob":"f1ce999bfb6cbc39e10d3c113d0306e0dc1989c4","sha256":"42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476"},"research/gauge44-slots/construction/build_gauge_cold44.py":{"git_blob":"72d2945f6ba7f33e84f5d8938c635e20592890a2","sha256":"ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb"},"research/gauge44-slots/construction/construct_gauge_xcentre.py":{"git_blob":"1010d86746ed9d0ca2059d7fc81fb3282ec743b3","sha256":"d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217"},"research/gauge44-slots/construction/frames/FRAME-RECIPE-sw4.json":{"git_blob":"7394064c5e6ed5fc7e99f042a5229fb03f51cea6","sha256":"a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473"},"research/gauge44-slots/construction/frames/LOCAL-PINS-frames-sw4.json":{"git_blob":"834ae13a2f1844002ca8dba0abc486d1cc6a884c","sha256":"bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f"},"research/gauge44-slots/construction/frames/build_frames.py":{"git_blob":"22021549e6991dceee823191cedc8a892db8c3f8","sha256":"200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb"},"research/gauge44-slots/construction/frames/frame_controls.py":{"git_blob":"cd951a9f0e05586b5e616b2cb1977f87c5249f36","sha256":"477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77"},"research/gauge44-slots/construction/frames/reproduce_frames.py":{"git_blob":"eaf9b47cac5324d713994f96e83ea16bca7cf3ac","sha256":"dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832"},"research/gauge44-slots/construction/jx/LOCAL-PINS-jx-X4.json":{"git_blob":"417e4ba7a1d731f56b24ae68563a963703e33a0b","sha256":"95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974"},"research/gauge44-slots/construction/jx/RECIPE-X4.json":{"git_blob":"30f7fa5948539b888969935b03e848cc1f3289c0","sha256":"9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd"},"research/gauge44-slots/construction/jx/build_jx.py":{"git_blob":"f8d74a6324515b3d55bb49b399dedf9ed58a3ae2","sha256":"3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916"},"research/gauge44-slots/construction/jx/reproduce_jx.py":{"git_blob":"6829a1b25d4ff473dfd1ea315cf6e363aecfd139","sha256":"5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c"},"research/gauge44-slots/construction/layers/build_pivot_swap.py":{"git_blob":"b225601c017bc9773ba11b94a0e875f542dc863f","sha256":"8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8"},"research/gauge44-slots/construction/layers/layer_end_controls.py":{"git_blob":"317da36d95aee13edfd93d5b314bb61bd0ccad2a","sha256":"7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef"},"research/gauge44-slots/construction/layers/reproduce_layers.py":{"git_blob":"ed517ba1dd8d6f1235d88525320f139dde4b50c0","sha256":"435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e"},"research/gauge44-slots/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz":{"git_blob":"f9155e307940fcd10dcb75c20e996c3b439b92fa","sha256":"3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0"},"research/gauge44-slots/construction/layers_np/HPE-RECIPE-NP.json":{"git_blob":"2605d199ed73ddac439c242b2e1d655c07cfc5b8","sha256":"43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1"},"research/gauge44-slots/construction/layers_np/PIVOT-SWAP-NP.json":{"git_blob":"4e0d8464269a2835aa93d76f28785cbbbd51636c","sha256":"d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5"},"research/gauge44-slots/construction/layers_np/reproduce_np.py":{"git_blob":"79cb6fa9121d3b6c79b10af95ca01610efc3fcd2","sha256":"1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c"},"research/gauge44-slots/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz":{"git_blob":"a408c95816d0a92e962ec5e7e083e8ba1900a396","sha256":"17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4"},"research/gauge44-slots/construction/layers_p6n/P6N-SPEC.json":{"git_blob":"43c3ec265c1b4a95f20b203d3339b19a3caf4d8f","sha256":"132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1"},"research/gauge44-slots/construction/layers_p6n/layer_end_controls.py":{"git_blob":"dd321fe2558c6138b57ae123b229d1f7d6137824","sha256":"fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e"},"research/gauge44-slots/construction/layers_p6n/reproduce_p6n.py":{"git_blob":"f9eb173bc115486971a16b49839b61786379096b","sha256":"aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca"},"research/gauge44-slots/construction/leaver/CHAIN-PINS-k8.json":{"git_blob":"afd0467911a2994c1d1df7bff61d9bed2ddfca36","sha256":"9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9"},"research/gauge44-slots/construction/leaver/CODED-CELLS-k8.json":{"git_blob":"cd23561e0be5bd060e6e0b94643e550374ecd7d8","sha256":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563"},"research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz":{"git_blob":"6850696b19a96dea7c2415998ff8b7873f92c1c6","sha256":"6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33"},"research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz":{"git_blob":"dc0275695d22db133a1d49324645796036878264","sha256":"24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb"},"research/gauge44-slots/construction/leaver/FRAME-RECIPE-LV-k8.json":{"git_blob":"982bd357daac8d593c97eb5f00f7e9d9af3e0394","sha256":"b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065"},"research/gauge44-slots/construction/leaver/HPE-RECIPE-k8.json":{"git_blob":"94d36f227999496c5977e87f515f033e91d8fb61","sha256":"907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9"},"research/gauge44-slots/construction/leaver/LEAVER-PINS-k8.json":{"git_blob":"b22678629c226d523b37d0157f941ba616b32164","sha256":"ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6"},"research/gauge44-slots/construction/leaver/LEC-REASON-PINS-STACK-k8.json":{"git_blob":"820ee8d63a2cba44bbcd68c4d5cd161eb9ea2609","sha256":"d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19"},"research/gauge44-slots/construction/leaver/LEC-REASON-PINS-k8.json":{"git_blob":"5218a5f09615f4770982bd48f4bb45f44eaa2bca","sha256":"b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914"},"research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json":{"git_blob":"7a8edeb1e404c441577427e72557e26b06c945f1","sha256":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb"},"research/gauge44-slots/construction/leaver/PROMO-RECIPE-k8.json":{"git_blob":"1952580fc814b0e8b598531c02681a2b6920a10c","sha256":"bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83"},"research/gauge44-slots/construction/leaver/RECIPE-U8-k8.json":{"git_blob":"98ea6e3d231622a726edb22e85919e744c81775f","sha256":"51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e"},"research/gauge44-slots/construction/leaver/RECIPE-X4-k8.json":{"git_blob":"3483acd5a51c987f7029e10785717f189e986b36","sha256":"4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1"},"research/gauge44-slots/construction/leaver/REGROUP-LEAVER-k8.json":{"git_blob":"d482da23a8252583a8d95132c231232ccdff7880","sha256":"b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e"},"research/gauge44-slots/construction/leaver/TRI-LEAVER-k8.json":{"git_blob":"e3bb24cc49812a90a82e8e77ee8588f3d00d81e4","sha256":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30"},"research/gauge44-slots/construction/leaver/build_frames_lv.py":{"git_blob":"5f8aa7a24bd075fbdd1b0c824cf74881db060674","sha256":"2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b"},"research/gauge44-slots/construction/leaver/cells-k8/CORE-01+.json":{"git_blob":"bfef820f29a7e19bff618d165185197b72be3328","sha256":"3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c"},"research/gauge44-slots/construction/leaver/cells-k8/CORE-01-.json":{"git_blob":"3afa894b20a24e20dc3dabf019d5c9c0d104d9de","sha256":"8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927"},"research/gauge44-slots/construction/leaver/cells-k8/CORE-23+.json":{"git_blob":"98ff8050e7d76607fb74dd82934931b3c05cc3ac","sha256":"53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d"},"research/gauge44-slots/construction/leaver/cells-k8/CORE-23-.json":{"git_blob":"517b89d38270440a1a007e09168350aa2751a051","sha256":"e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d"},"research/gauge44-slots/construction/leaver/cells-k8/CORE-45+.json":{"git_blob":"2bc89e1de1957ca9d6a30dd3715eef1331ee7fad","sha256":"ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9"},"research/gauge44-slots/construction/leaver/cells-k8/CORE-45-.json":{"git_blob":"b9c1904b83c904726a558a34950090cd0672b902","sha256":"302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7"},"research/gauge44-slots/construction/leaver/cells-k8/CORE-67+.json":{"git_blob":"7d756cb19d67e2df44bae7810a50e6742f24e590","sha256":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05"},"research/gauge44-slots/construction/leaver/cells-k8/CORE-67-.json":{"git_blob":"7d756cb19d67e2df44bae7810a50e6742f24e590","sha256":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05"},"research/gauge44-slots/construction/leaver/cgx_leaver.py":{"git_blob":"e686c66306456e2c6cac9c05d01448765322836c","sha256":"3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c"},"research/gauge44-slots/construction/leaver/layer_end_controls_leaver.py":{"git_blob":"84b1c52ed250b30a8a675949714cf4625e22f6dc","sha256":"4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206"},"research/gauge44-slots/construction/leaver/reproduce_leaver.py":{"git_blob":"bc4360ef93ceea8fe2da33afbbaa100feaf0731a","sha256":"831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30"},"research/gauge44-slots/construction/leaver/reproduce_leaver_chain.py":{"git_blob":"19fcd28f4d41db8590ae71f6b98dd7c0655bce32","sha256":"2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5"},"research/gauge44-slots/construction/notri/PRIO6.json":{"git_blob":"069a7bf5a5f4db53068480acd57cb9e2e62eac2f","sha256":"de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15"},"research/gauge44-slots/construction/notri/cgx.py":{"git_blob":"08e80804eb6858be9d6ce6458a936cea1e76dc76","sha256":"3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418"},"research/gauge44-slots/construction/notri/cold44x.py":{"git_blob":"8fa6f3a6a6641f093eff1d467df20af0f8a21278","sha256":"f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296"},"research/gauge44-slots/construction/notri/port_stage_x.py":{"git_blob":"81ac65ceff60123daaf87edb621df4194622c9ca","sha256":"38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7"},"research/gauge44-slots/construction/notri/reproduce_notri.py":{"git_blob":"a85f2acf1537253512f8a00928415e64532639cf","sha256":"90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8"},"research/gauge44-slots/construction/promo/LOCAL-PINS-p6n-k4.json":{"git_blob":"c43b391a43b4443a5fa12d4899d97b8e5fcc1979","sha256":"a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f"},"research/gauge44-slots/construction/promo/PROMO-RECIPE-p6n-k4.json":{"git_blob":"3f336c07eaec6ee0e8b350b3f3acb8e011a09453","sha256":"fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90"},"research/gauge44-slots/construction/promo/build_promotion.py":{"git_blob":"f1daad34c22efdd97a11b1e16384962b8af1d704","sha256":"9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf"},"research/gauge44-slots/construction/promo/make_recipe.py":{"git_blob":"618d609453ea9718b8c74c5d2a26cd5b9e985309","sha256":"ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122"},"research/gauge44-slots/construction/promo/promo_controls.py":{"git_blob":"20ee51f7dbabd401e125ad948e96c38f36cde6cb","sha256":"786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372"},"research/gauge44-slots/construction/promo/reproduce_promo.py":{"git_blob":"6e04aa71b163a80c2f7ca2f5000976bd98fb8557","sha256":"f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026"},"research/gauge44-slots/construction/reproduce.py":{"git_blob":"8b51efa64638c849ad329757b807ef1f68a6cb8c","sha256":"047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92"},"research/gauge44-slots/construction/slots/RECIPE-SLOTS-k8.json":{"git_blob":"acc1a733d6e52354b3a300136c106aa18e3de030","sha256":"0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b"},"research/gauge44-slots/construction/slots/SLOT-PINS-k8.json":{"git_blob":"2702c368f4de0b671577aee9a0e2df41c1b27658","sha256":"55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2"},"research/gauge44-slots/construction/slots/verify_slots.py":{"git_blob":"fd06b654afb1f3a98b28d5cbac50f3ba4a967883","sha256":"bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be"},"research/gauge44-slots/construction/sw4/LOCAL-PINS-sw4-P6k4.json":{"git_blob":"ae26a0f2f144b0ac863dd868f570270cb4c75d32","sha256":"3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327"},"research/gauge44-slots/construction/sw4/NOTES.md":{"git_blob":"2a53ffb3b82af7b283bf79efc81089dc6ab37dd3","sha256":"3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446"},"research/gauge44-slots/construction/sw4/SW4-RECIPE-P6k4.json":{"git_blob":"b9dea4152a099782d48d533523a50f3464351677","sha256":"fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa"},"research/gauge44-slots/construction/sw4/build_sw4.py":{"git_blob":"617e0ed06d133e8820ac5c29f8e9397f6c3cbec9","sha256":"9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66"},"research/gauge44-slots/construction/sw4/reproduce_sw4.py":{"git_blob":"cb038e064b4acd1c4bf454ee76102fc923e8f284","sha256":"3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac"},"research/gauge44-slots/data/FRONTIER.json":{"git_blob":"70285d4d85f0a901de07f9613538825dcd36a848","sha256":"56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2"},"research/gauge44-slots/data/OWNERS.json.gz":{"git_blob":"8eda84ea0c0f57ca4c14ecb11426874ec2e42886","sha256":"32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a"},"research/gauge44-slots/data/PLAN.json":{"git_blob":"0465492a1f0a3c489a4cab13af9c78a0048a927a","sha256":"1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08"},"research/gauge44-slots/data/PREPARATION.json":{"git_blob":"8c7796820f47f790733741613cd61af350465f5c","sha256":"1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9"},"research/gauge44-slots/data/SPEC.json":{"git_blob":"6ac06e4b75800605270d7ec06fef3eab438e06e0","sha256":"8e95ae8087124189cbd366d0e9d1c5ebededff536ff3501927b4b2a2e8dac70e"},"research/gauge44-slots/data/UPSTREAM-PINS.json":{"git_blob":"68486b84e3ae599d776b9613adc901fd8874718d","sha256":"ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b"},"research/gauge44-slots/evidence/ADMISSION-CONTROLS.json":{"git_blob":"2e15a1006563e996c90376c24ce4df297205b99d","sha256":"5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28"},"research/gauge44-slots/evidence/ASSEMBLY.json":{"git_blob":"6feaaf28f534f8315428f1ed849b61d2131269b6","sha256":"847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f"},"research/gauge44-slots/evidence/BINDING.json":{"git_blob":"b03160c67acab5beb4d2c035224f1135d4fa7824","sha256":"f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b"},"research/gauge44-slots/evidence/CENTER-COMPATIBILITY.json":{"git_blob":"5a3ae374226298bdc93d17a84e08d4040223a5f6","sha256":"c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3"},"research/gauge44-slots/evidence/LOCAL-STAGES.json":{"git_blob":"b2753eb57a8d163ce4226de982d16fe7eec7f2c3","sha256":"64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591"},"research/gauge44-slots/evidence/REPLAY.json":{"git_blob":"c6f4e0f983aed66e80f7875f2b78bdc9a479189e","sha256":"45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2"},"research/gauge44-slots/evidence/STAGES.json":{"git_blob":"9464e2dfea4ac299955ae2c4f1de34e1eb8a2e03","sha256":"09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458"},"research/gauge44-slots/evidence/audit/ASYNC-AUDIT.json":{"git_blob":"05975382b5e8e457d0ebc0c9aec19f9344464591","sha256":"df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662"},"research/gauge44-slots/evidence/audit/GLOBAL-PREFIX.json":{"git_blob":"a557ebbe60a67823094fcb616500099fdd9c95be","sha256":"5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671"},"research/gauge44-slots/evidence/audit/IDLE-REMAINDER-FRAMES.json":{"git_blob":"1c86a8a01d1d133a87cdc1928e9119edc634ec0e","sha256":"95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048"},"research/gauge44-slots/evidence/audit/OWNERS-AND-PROFILE.json":{"git_blob":"bdb9441b7efc06b56585502ed0856d8dec8e1591","sha256":"a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313"},"research/gauge44-slots/evidence/audit/PREFIX-AND-INVOICE.json":{"git_blob":"6c96ec67062b536f40ecdedba96b497f58d5270e","sha256":"14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582"},"research/gauge44-slots/evidence/global/ACTUAL-SIGMAS.json.gz":{"git_blob":"dbb57066e2f71a5d11096a6c73c7ba448f278419","sha256":"bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f"},"research/gauge44-slots/evidence/global/GLOBAL-TEMPLATE.json.gz":{"git_blob":"424c2df489364ea5b29e0df9841e6fe91a517df4","sha256":"f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b"},"research/gauge44-slots/evidence/global/HOSTED.json":{"git_blob":"498e849ab782c095bd6bffa884fb0a41eac4c844","sha256":"60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e"},"research/gauge44-slots/evidence/global/IDLE-REMAINDER-FRAMES.json.gz":{"git_blob":"3562e60f057d4ee0bb20b1d0ba3d759d08c83d1d","sha256":"734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784"},"research/gauge44-slots/evidence/layers/LOCAL-AUDIT-LAYERED.json":{"git_blob":"078078767410495313abd3b2c24203d7ec80328b","sha256":"a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff"},"research/gauge44-slots/evidence/leaver/CELL-MUTANTS-LV.json":{"git_blob":"4d4ef7403c06e17b7b6c519f7a2bc10c88793fbf","sha256":"308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220"},"research/gauge44-slots/evidence/leaver/FRAME-CONTROLS-LV-k8.json":{"git_blob":"9f56e21000ef55584d14dc828f5601f3ae3717cc","sha256":"9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd"},"research/gauge44-slots/evidence/local/CANONICAL-WORD.json.gz":{"git_blob":"5062a1f62fd19777ac4a3d32bf0973a3ed71658d","sha256":"92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed"},"research/gauge44-slots/evidence/local/CLIFFORD-RECIPES.json":{"git_blob":"3ba8326d3acdb61e7a40507cee7b84f9689738e1","sha256":"0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771"},"research/gauge44-slots/evidence/local/CLIFFORD-REVIEW.json":{"git_blob":"6b12ae0e4b4b9d4f188e10dae041ecc146babdcf","sha256":"4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12"},"research/gauge44-slots/evidence/local/FULL-WORD.json.gz":{"git_blob":"447d45d08bf4b054d2fa76a0dc00a3b0f168fe91","sha256":"0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e"},"research/gauge44-slots/evidence/local/INDEPENDENT-LOCAL-REPLAY.json":{"git_blob":"aa15edfba5d132afbe6b3be5efe883dddd92af5e","sha256":"18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e"},"research/gauge44-slots/evidence/local/LOCAL-CHECKS.json":{"git_blob":"3872f0e59618ccc4fd6f00daeb7c9164957b7ea2","sha256":"2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c"},"research/gauge44-slots/evidence/local/LOCAL-PROGRAMS.json.gz":{"git_blob":"d511f2afa49f9eed010e91eed590a15252506470","sha256":"172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2"},"research/gauge44-slots/evidence/local/RESIDUAL-ADAPTERS.json":{"git_blob":"9c66f92ffb350d32286025c0b60b3b9a70b773c9","sha256":"bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94"},"research/gauge44-slots/evidence/local/SCALAR-FRAME-AUDIT.json":{"git_blob":"23bf3d263ed961be2d60ab79d89ec79c50a2a3ff","sha256":"cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb"},"research/gauge44-slots/evidence/local/WRAPPER-CHECKS.json":{"git_blob":"a18afd4fad769aa0422b7d534510f14a937870ae","sha256":"84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7"},"research/gauge44-slots/hosting/PROOF.md":{"git_blob":"b551b6d3e5535c5486c96dd93bd04262ba5a71f9","sha256":"45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0"},"research/gauge44-slots/hosting/README.md":{"git_blob":"b9505ebbea39c3b4dd3efd45fb0472aab8331096","sha256":"004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1"},"research/gauge44-slots/hosting/audit_frozen.py":{"git_blob":"26a07408ea56e5bebb3d03d9938655ba9f74bac7","sha256":"a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659"},"research/gauge44-slots/hosting/expand_owners.py":{"git_blob":"ee6c4c24e63aa0555638f8d11be3f6367f7d2e62","sha256":"0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70"},"research/gauge44-slots/hosting/frozen/FROZEN-AUDIT.json":{"git_blob":"5f95552366147690dd3cccd141a14d7613132a97","sha256":"df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b"},"research/gauge44-slots/hosting/frozen/MAJORIZATION.json.gz":{"git_blob":"047b1cfb678fac19f80a29cf512770505f126d28","sha256":"ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf"},"research/gauge44-slots/hosting/frozen/MANIFEST.json":{"git_blob":"291005722ccdc7d7a78a5c13f592f25038d838e6","sha256":"9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967"},"research/gauge44-slots/hosting/frozen/MATCHING-RECEIPT.json":{"git_blob":"993331090c85923d2f9e4a4eabe35f098c91d968","sha256":"e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2"},"research/gauge44-slots/hosting/frozen/OWNERS.json.gz":{"git_blob":"e9c7cfc72db0f8825070ea8f0ab4c45dae89baef","sha256":"90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57"},"research/gauge44-slots/hosting/frozen/REPRODUCTION.json":{"git_blob":"8ad59712b276961b0bff5df309d60c09c68851b0","sha256":"8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81"},"research/gauge44-slots/hosting/frozen/SEED-OWNERS.json.gz":{"git_blob":"d61916a1564d7072c8de69e3757d35e5cbec24d1","sha256":"eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048"},"research/gauge44-slots/hosting/frozen/SEED-RECEIPT.json":{"git_blob":"82911f647b44c6efec6bf7689d57202c690d9b6c","sha256":"aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba"},"research/gauge44-slots/hosting/frozen/SEED-REPRODUCTION.json":{"git_blob":"91ee98cf7046e1408ce4c0a78896db661b0d8138","sha256":"4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194"},"research/gauge44-slots/hosting/reproduce.py":{"git_blob":"2f29a5ff13a06d7734ea4482bd18a74698f6217f","sha256":"7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82"},"research/gauge44-slots/hosting/reuse_owners.py":{"git_blob":"234b831790d7839d4c2e43357ae277b7bf254a2b","sha256":"2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402"},"research/gauge44-slots/independent/CENTRE-GUARD-REVIEW.md":{"git_blob":"6c62bd070ef90cda02355b7ad87dd67dc92e7184","sha256":"7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897"},"research/gauge44-slots/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json":{"git_blob":"771faa86a7432c0b2652a1ab0b2d849a11462b94","sha256":"9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9"},"research/gauge44-slots/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json":{"git_blob":"e2df1dcca8fec4d74662718841ad7fe86ba2af9e","sha256":"631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b"},"research/gauge44-slots/independent/GAUGE44-INDEPENDENT-PRICE.json":{"git_blob":"7aa86180dd71ed15d4180efa682ae7c4c5f41d9f","sha256":"6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683"},"research/gauge44-slots/independent/README.md":{"git_blob":"f97dcf81b134238cf11dae9704ca8574d027b72c","sha256":"25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89"},"research/gauge44-slots/independent/audit_local.py":{"git_blob":"4744d8783c25bf7bf5076886169077ca3808309a","sha256":"03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd"},"research/gauge44-slots/independent/price_profile.py":{"git_blob":"0e36ebd4687374e3ca14f233c77fafbdc1e5cfcd","sha256":"d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf"},"research/gauge44-slots/independent/review_guards.py":{"git_blob":"086dcf3d11897b73dfb2730bbfacd690fa3f0c41","sha256":"b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d"},"research/gauge44-slots/inputs/PR589-EXPECTED.json":{"git_blob":"e293ddc557742637f9f679f083a1a282d87b1b13","sha256":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4"},"research/gauge44-slots/verify_global.py":{"git_blob":"7ab79e3062e23e3ebfadecddb7851c65799f2f9a","sha256":"16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a"},"research/gauge44-slots/verify_manifest.py":{"git_blob":"8c2441d39202409ffe1c2cb42f197946f7bfa7c0","sha256":"723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b"}},"repository":"https://github.com/CrocSwap/integer-mult-bounds"},"pr1130":{"commit":"1558508e5cbff0b7c534d1c4cc7a0fb1b7145c1c","files":{"research/gauge44-ends7-x54-t16/CONSTRUCTION.md":{"git_blob":"4fb25c1f09c54b3766ddf72a150d066f0f5c6f7e","sha256":"29ff356276e2f5d09071d1e1a22d3364d7c4bba0c9c0d01f448baadb75721f51"},"research/gauge44-ends7-x54-t16/LICENSE":{"git_blob":"261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"},"research/gauge44-ends7-x54-t16/LOCAL-VALIDATION.json":{"git_blob":"5973645e1a8338e168ae0eb10836f99a62333635","sha256":"f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e"},"research/gauge44-ends7-x54-t16/MANIFEST.json":{"git_blob":"81f6b2ef3aceda89e553f969458663e3cfb6885d","sha256":"7d28c881741f1cb683fabab3e3db8f87ede4d0161394363631084f744a0f6841"},"research/gauge44-ends7-x54-t16/NOTICE.md":{"git_blob":"30d0c8cd3ca119c2eb8765908f44e483dda4caea","sha256":"7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf"},"research/gauge44-ends7-x54-t16/PROOF-NOTE-BARCH.md":{"git_blob":"8cea5a6846a254a25136f8a53e24bb0ef665a44b","sha256":"c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d"},"research/gauge44-ends7-x54-t16/PROOF-NOTE-BIT.md":{"git_blob":"da06360da046bbcb66192264ec389c96ba61ca41","sha256":"dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7"},"research/gauge44-ends7-x54-t16/PROOF-NOTE-FRAMES-X4.md":{"git_blob":"a456a8127badf654c6b2ac64e54818bfa6ec0837","sha256":"39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036"},"research/gauge44-ends7-x54-t16/PROOF-NOTE-LAYERS.md":{"git_blob":"c4b4e85b6aedbc04a4b1a1d900755e85c619850f","sha256":"92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f"},"research/gauge44-ends7-x54-t16/PROOF-NOTE-LEAVER.md":{"git_blob":"b34a289c48364b816f782816d13debcfedb243fa","sha256":"e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3"},"research/gauge44-ends7-x54-t16/PROOF-NOTE-NOTRI.md":{"git_blob":"54bd84e01dbf49655c259f97a0481541911e2bb2","sha256":"774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414"},"research/gauge44-ends7-x54-t16/PROOF-NOTE-P6N.md":{"git_blob":"bef9ad2de04fdefc0a318051fe781d811c4106de","sha256":"cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d"},"research/gauge44-ends7-x54-t16/PROOF-NOTE-PROMO.md":{"git_blob":"8233bbd6b86677298ee71463c24487e063bb6f72","sha256":"c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae"},"research/gauge44-ends7-x54-t16/PROOF-NOTE-SW4.md":{"git_blob":"a064cc54ccdb90e077f88821f082864a2b83be35","sha256":"d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d"},"research/gauge44-ends7-x54-t16/README.md":{"git_blob":"912eaedee5dcb87de4f0cbc30061c00afdc5b98b","sha256":"4da874b54a0ba5618e420d0849620fe518e14cade39b26ffba1b3914e97085f9"},"research/gauge44-ends7-x54-t16/RESULT.json":{"git_blob":"b59a7802f700b5b91eef5e8b13829b05897051c0","sha256":"e84145a136dce8483034ed536795568dfc15ede3e44f5e07ff86620eec4dbd98"},"research/gauge44-ends7-x54-t16/SOURCES.json":{"git_blob":"0ffc164bc7f350186b4b03ec139df424445e2c5a","sha256":"15e351f394964140a7e8841df44185e7cdc5bdeef3042cb9d1302e10b39c1d49"},"research/gauge44-ends7-x54-t16/UPSTREAM-NOTICE.md":{"git_blob":"ebc24a0168c65c48c771dcf4e89359afc418e848","sha256":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610"},"research/gauge44-ends7-x54-t16/code/assemble.py":{"git_blob":"581dd9cb29a45bd68cc651538311b63f6966ad68","sha256":"15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a"},"research/gauge44-ends7-x54-t16/code/assembly_controls.py":{"git_blob":"096ba9cdfe9b5188b54768b845161014c5fb9a76","sha256":"da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d"},"research/gauge44-ends7-x54-t16/code/audit_allcold.py":{"git_blob":"923bf7b675ca09f4d2633e7e53f16a1b23b6d5bc","sha256":"1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc"},"research/gauge44-ends7-x54-t16/code/bind_providers_portable.py":{"git_blob":"97e28da17ed75cd4add54394f6178dba8c9b257f","sha256":"1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6"},"research/gauge44-ends7-x54-t16/code/bit_supplier_controls.py":{"git_blob":"e86b8527b464277a926a788f2493e8f2e091fff1","sha256":"e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5"},"research/gauge44-ends7-x54-t16/code/emit_allcold.py":{"git_blob":"28a08a79da911d8f0e16f4bf8df47c580fb6b255","sha256":"354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e"},"research/gauge44-ends7-x54-t16/code/freeze_spec.py":{"git_blob":"4fe3b8891565ce658f6c05a4f4e8c15751103b85","sha256":"5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2"},"research/gauge44-ends7-x54-t16/code/generated_identity.py":{"git_blob":"74a9b604793f21a9f064c78874341e287ded7a68","sha256":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708"},"research/gauge44-ends7-x54-t16/code/invoice_allcold.py":{"git_blob":"d1dd2212917ad1e7f099287a141f741fd52bdcf6","sha256":"71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8"},"research/gauge44-ends7-x54-t16/code/prepare_global.py":{"git_blob":"655c9470f666138918afbaff077ad2ec5663c6bd","sha256":"8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc"},"research/gauge44-ends7-x54-t16/code/restore_parent.py":{"git_blob":"21135f898a43e35b55e522c2d0b81a5e32033097","sha256":"69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d"},"research/gauge44-ends7-x54-t16/code/witness.py":{"git_blob":"c5c7fbc1142220ce854907de4e439420ac12d30c","sha256":"779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444"},"research/gauge44-ends7-x54-t16/construction/COLD44-RECIPE.json.gz":{"git_blob":"6f59d889202eee8d97ba32329273a3b7cf2389b2","sha256":"22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c"},"research/gauge44-ends7-x54-t16/construction/COMPLETION-PRIORITY.json":{"git_blob":"e0df30aeefc4063ccf203347889e18a621ff6b2a","sha256":"0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47"},"research/gauge44-ends7-x54-t16/construction/INPUTS.json":{"git_blob":"2b12294b58686a906d350de5b6f13c157bdecf5b","sha256":"edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99"},"research/gauge44-ends7-x54-t16/construction/LICENSE":{"git_blob":"261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"},"research/gauge44-ends7-x54-t16/construction/NOTICE.md":{"git_blob":"16b0507070427fb5bb20e7783c05768b8cdb3265","sha256":"defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816"},"research/gauge44-ends7-x54-t16/construction/REBUILD-CHECKS.json":{"git_blob":"0801f35da7881ed675c943c1ff2bfd83b0a102b1","sha256":"1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91"},"research/gauge44-ends7-x54-t16/construction/UPSTREAM-NOTICE.md":{"git_blob":"ebc24a0168c65c48c771dcf4e89359afc418e848","sha256":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610"},"research/gauge44-ends7-x54-t16/construction/barch/LOCAL-PINS-barch-U8.json":{"git_blob":"4028b95c0ee2d6575ff1d40a25e789af6083ab2b","sha256":"2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5"},"research/gauge44-ends7-x54-t16/construction/barch/RECIPE-U8.json":{"git_blob":"ee215a805a7487c300fe1e2b117bd4b5720d4d24","sha256":"292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652"},"research/gauge44-ends7-x54-t16/construction/barch/build_tri.py":{"git_blob":"11c43711144a98224d0bc166f217e9ae996ffeb2","sha256":"0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e"},"research/gauge44-ends7-x54-t16/construction/barch/reproduce_barch.py":{"git_blob":"22f15b491de212027334bf20ef2937322136c4dc","sha256":"19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1"},"research/gauge44-ends7-x54-t16/construction/barch/run_controls.py":{"git_blob":"f1ce999bfb6cbc39e10d3c113d0306e0dc1989c4","sha256":"42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476"},"research/gauge44-ends7-x54-t16/construction/build_gauge_cold44.py":{"git_blob":"72d2945f6ba7f33e84f5d8938c635e20592890a2","sha256":"ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb"},"research/gauge44-ends7-x54-t16/construction/construct_gauge_xcentre.py":{"git_blob":"1010d86746ed9d0ca2059d7fc81fb3282ec743b3","sha256":"d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217"},"research/gauge44-ends7-x54-t16/construction/ends7/ENDS7-PINS-k8.json":{"git_blob":"8a0cfa7caedb55ece53480e7bfaa44fb6601bcbf","sha256":"88b276bb95c5cc8b93fd7aaa935ee6ae3544cf704952ba797d929ee8a18d6044"},"research/gauge44-ends7-x54-t16/construction/ends7/README.md":{"git_blob":"7a013932542b41c0566a6f53f0914f0a3baa6ba5","sha256":"3190ed220438c4c611ab2dd4f695991c3ed2ed90cc9e9dfaed9b8cee5da28cfd"},"research/gauge44-ends7-x54-t16/construction/ends7/RECIPE-ENDS7-k8.json":{"git_blob":"64c025dc5a5107f619e13640e898c601d05cb800","sha256":"18b8563294b9052a33dd7eafc4ca35f4feec3871bfdec4b00153966fa87e24b3"},"research/gauge44-ends7-x54-t16/construction/ends7/build_ends7.py":{"git_blob":"9270bab3ae33547543f50134e631d98df4e4b4fc","sha256":"4f575f1e73b2ea5f051b3defdf2013310fa462cc120e44d26a3b1ab6a3ef2148"},"research/gauge44-ends7-x54-t16/construction/ends7/end7_controls.py":{"git_blob":"a888c1eae5dc445ac764a9eeb668a795cb7a7c85","sha256":"c7edf1d6ee059d6c9e73921179154f1c8556b2a6b738246c4ea9021ccc0fe067"},"research/gauge44-ends7-x54-t16/construction/ends7/fastpath/NOTICE.md":{"git_blob":"a3b31e157fcb9f8978040535a98d30a640509424","sha256":"3da80a5155c625bff907a42a82c65bfcf92854d2c960bcea4537c19c99efd4f2"},"research/gauge44-ends7-x54-t16/construction/ends7/fastpath/PROOF.md":{"git_blob":"bbd59904396b5978c15e38720d0c0ad7a9ac5398","sha256":"d73e4522602404caba8e7f247005a45c8a8cd26ffd2a70d65f4f9556a391d053"},"research/gauge44-ends7-x54-t16/construction/ends7/fastpath/lowering.py":{"git_blob":"75232da3800f97562e933d6cfb81553e5555854a","sha256":"ba42903b841722b872f98f3afa77d47976ca66a0cb4c0dd6b8de04462d4baa2b"},"research/gauge44-ends7-x54-t16/construction/ends7/fastpath/phases_fast.py":{"git_blob":"ce73f874bdc184189fb100649252f519305ba316","sha256":"122c671f5bf49a1696b5edc91d76d7c16b1837513dd6c54ace4add747cd3c657"},"research/gauge44-ends7-x54-t16/construction/ends7/fastpath/sparse_state.py":{"git_blob":"ca39f73494e11bf0a860c51b8d711bec48ec0842","sha256":"e91210ecd5085cf9add872f40bb434806838da488e12152c63c86e51fb5a7a37"},"research/gauge44-ends7-x54-t16/construction/ends7/premise/inputs/CODED-CELLS-k8.json":{"git_blob":"cd23561e0be5bd060e6e0b94643e550374ecd7d8","sha256":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563"},"research/gauge44-ends7-x54-t16/construction/ends7/premise/inputs/TRI-LEAVER-k8.json":{"git_blob":"e3bb24cc49812a90a82e8e77ee8588f3d00d81e4","sha256":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30"},"research/gauge44-ends7-x54-t16/construction/ends7/premise/premise_check.py":{"git_blob":"98efec187df79832e4db56d8250ccb711b4062f1","sha256":"28a7f881a988b29b8ed3c927dd142ac3d4ee273dedab3a65bb02c01a64eb2639"},"research/gauge44-ends7-x54-t16/construction/ends7/premise/verify_1049.py":{"git_blob":"3e34e2c5a69ac01025ecd0eb2da17af488711dee","sha256":"a1736324c6db161733d8e11f608defd87b7f97cacd611203d22499e4c7de5545"},"research/gauge44-ends7-x54-t16/construction/ends7/verify_ends7.py":{"git_blob":"594a843b15856c198a206840e05fd0ff6378b357","sha256":"23e1408149ee4a23de1e77d989fc4fba43bd3978663c846c9147334db5368764"},"research/gauge44-ends7-x54-t16/construction/ends7/x54/RECIPE-X54-ends7.json":{"git_blob":"af03c4606e248745b55c042221c1164bcf41e19b","sha256":"5704c7d1ad8be05f51b7c8ff39c6f2430bf787bc1ac5919e6f1ae293df369748"},"research/gauge44-ends7-x54-t16/construction/ends7/x54/X54-PINS.json":{"git_blob":"b654ea4bde19ba45ed7117db5f065d2f3533f856","sha256":"a3cd63bcbe77c5e42efeac5234b8b9d5bc2e0234838020622fe1dda717d8020d"},"research/gauge44-ends7-x54-t16/construction/ends7/x54/build_tri.py":{"git_blob":"a4d3c74914ec6b32fdf389f00a04e6d7fcaeb179","sha256":"2432372f148a4d34d2909ff8a7e2a239d6ee51837892380963de6efd45c8f2d6"},"research/gauge44-ends7-x54-t16/construction/ends7/x54/run_controls.py":{"git_blob":"471d1514514be54177d0e3cd71234718b96e5998","sha256":"51454916979eabf8f69a130a558216cb02df18626b8dd4cddd77a2fb745f2a86"},"research/gauge44-ends7-x54-t16/construction/frames/FRAME-RECIPE-sw4.json":{"git_blob":"7394064c5e6ed5fc7e99f042a5229fb03f51cea6","sha256":"a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473"},"research/gauge44-ends7-x54-t16/construction/frames/LOCAL-PINS-frames-sw4.json":{"git_blob":"834ae13a2f1844002ca8dba0abc486d1cc6a884c","sha256":"bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f"},"research/gauge44-ends7-x54-t16/construction/frames/build_frames.py":{"git_blob":"22021549e6991dceee823191cedc8a892db8c3f8","sha256":"200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb"},"research/gauge44-ends7-x54-t16/construction/frames/frame_controls.py":{"git_blob":"cd951a9f0e05586b5e616b2cb1977f87c5249f36","sha256":"477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77"},"research/gauge44-ends7-x54-t16/construction/frames/reproduce_frames.py":{"git_blob":"eaf9b47cac5324d713994f96e83ea16bca7cf3ac","sha256":"dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832"},"research/gauge44-ends7-x54-t16/construction/jx/LOCAL-PINS-jx-X4.json":{"git_blob":"417e4ba7a1d731f56b24ae68563a963703e33a0b","sha256":"95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974"},"research/gauge44-ends7-x54-t16/construction/jx/RECIPE-X4.json":{"git_blob":"30f7fa5948539b888969935b03e848cc1f3289c0","sha256":"9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd"},"research/gauge44-ends7-x54-t16/construction/jx/build_jx.py":{"git_blob":"f8d74a6324515b3d55bb49b399dedf9ed58a3ae2","sha256":"3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916"},"research/gauge44-ends7-x54-t16/construction/jx/reproduce_jx.py":{"git_blob":"6829a1b25d4ff473dfd1ea315cf6e363aecfd139","sha256":"5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c"},"research/gauge44-ends7-x54-t16/construction/layers/build_pivot_swap.py":{"git_blob":"b225601c017bc9773ba11b94a0e875f542dc863f","sha256":"8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8"},"research/gauge44-ends7-x54-t16/construction/layers/layer_end_controls.py":{"git_blob":"317da36d95aee13edfd93d5b314bb61bd0ccad2a","sha256":"7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef"},"research/gauge44-ends7-x54-t16/construction/layers/reproduce_layers.py":{"git_blob":"ed517ba1dd8d6f1235d88525320f139dde4b50c0","sha256":"435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e"},"research/gauge44-ends7-x54-t16/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz":{"git_blob":"f9155e307940fcd10dcb75c20e996c3b439b92fa","sha256":"3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0"},"research/gauge44-ends7-x54-t16/construction/layers_np/HPE-RECIPE-NP.json":{"git_blob":"2605d199ed73ddac439c242b2e1d655c07cfc5b8","sha256":"43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1"},"research/gauge44-ends7-x54-t16/construction/layers_np/PIVOT-SWAP-K8.json":{"git_blob":"7a8edeb1e404c441577427e72557e26b06c945f1","sha256":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb"},"research/gauge44-ends7-x54-t16/construction/layers_np/PIVOT-SWAP-NP.json":{"git_blob":"4e0d8464269a2835aa93d76f28785cbbbd51636c","sha256":"d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5"},"research/gauge44-ends7-x54-t16/construction/layers_np/reproduce_np.py":{"git_blob":"79cb6fa9121d3b6c79b10af95ca01610efc3fcd2","sha256":"1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c"},"research/gauge44-ends7-x54-t16/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz":{"git_blob":"a408c95816d0a92e962ec5e7e083e8ba1900a396","sha256":"17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4"},"research/gauge44-ends7-x54-t16/construction/layers_p6n/P6N-SPEC.json":{"git_blob":"43c3ec265c1b4a95f20b203d3339b19a3caf4d8f","sha256":"132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1"},"research/gauge44-ends7-x54-t16/construction/layers_p6n/layer_end_controls.py":{"git_blob":"dd321fe2558c6138b57ae123b229d1f7d6137824","sha256":"fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e"},"research/gauge44-ends7-x54-t16/construction/layers_p6n/reproduce_p6n.py":{"git_blob":"f9eb173bc115486971a16b49839b61786379096b","sha256":"aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca"},"research/gauge44-ends7-x54-t16/construction/leaver/CHAIN-PINS-k8.json":{"git_blob":"afd0467911a2994c1d1df7bff61d9bed2ddfca36","sha256":"9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9"},"research/gauge44-ends7-x54-t16/construction/leaver/CODED-CELLS-k8.json":{"git_blob":"cd23561e0be5bd060e6e0b94643e550374ecd7d8","sha256":"7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563"},"research/gauge44-ends7-x54-t16/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz":{"git_blob":"6850696b19a96dea7c2415998ff8b7873f92c1c6","sha256":"6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33"},"research/gauge44-ends7-x54-t16/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz":{"git_blob":"dc0275695d22db133a1d49324645796036878264","sha256":"24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb"},"research/gauge44-ends7-x54-t16/construction/leaver/FRAME-RECIPE-LV-k8.json":{"git_blob":"982bd357daac8d593c97eb5f00f7e9d9af3e0394","sha256":"b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065"},"research/gauge44-ends7-x54-t16/construction/leaver/HPE-RECIPE-k8.json":{"git_blob":"94d36f227999496c5977e87f515f033e91d8fb61","sha256":"907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9"},"research/gauge44-ends7-x54-t16/construction/leaver/LEAVER-PINS-k8.json":{"git_blob":"b22678629c226d523b37d0157f941ba616b32164","sha256":"ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6"},"research/gauge44-ends7-x54-t16/construction/leaver/LEC-REASON-PINS-STACK-k8.json":{"git_blob":"820ee8d63a2cba44bbcd68c4d5cd161eb9ea2609","sha256":"d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19"},"research/gauge44-ends7-x54-t16/construction/leaver/LEC-REASON-PINS-k8.json":{"git_blob":"5218a5f09615f4770982bd48f4bb45f44eaa2bca","sha256":"b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914"},"research/gauge44-ends7-x54-t16/construction/leaver/PIVOT-SWAP-k8.json":{"git_blob":"7a8edeb1e404c441577427e72557e26b06c945f1","sha256":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb"},"research/gauge44-ends7-x54-t16/construction/leaver/PROMO-RECIPE-k8.json":{"git_blob":"1952580fc814b0e8b598531c02681a2b6920a10c","sha256":"bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83"},"research/gauge44-ends7-x54-t16/construction/leaver/RECIPE-U8-k8.json":{"git_blob":"98ea6e3d231622a726edb22e85919e744c81775f","sha256":"51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e"},"research/gauge44-ends7-x54-t16/construction/leaver/RECIPE-X4-k8.json":{"git_blob":"3483acd5a51c987f7029e10785717f189e986b36","sha256":"4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1"},"research/gauge44-ends7-x54-t16/construction/leaver/REGROUP-LEAVER-k8.json":{"git_blob":"d482da23a8252583a8d95132c231232ccdff7880","sha256":"b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e"},"research/gauge44-ends7-x54-t16/construction/leaver/TRI-LEAVER-k8.json":{"git_blob":"e3bb24cc49812a90a82e8e77ee8588f3d00d81e4","sha256":"b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30"},"research/gauge44-ends7-x54-t16/construction/leaver/build_frames_lv.py":{"git_blob":"5f8aa7a24bd075fbdd1b0c824cf74881db060674","sha256":"2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b"},"research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-01+.json":{"git_blob":"bfef820f29a7e19bff618d165185197b72be3328","sha256":"3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c"},"research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-01-.json":{"git_blob":"3afa894b20a24e20dc3dabf019d5c9c0d104d9de","sha256":"8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927"},"research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-23+.json":{"git_blob":"98ff8050e7d76607fb74dd82934931b3c05cc3ac","sha256":"53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d"},"research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-23-.json":{"git_blob":"517b89d38270440a1a007e09168350aa2751a051","sha256":"e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d"},"research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-45+.json":{"git_blob":"2bc89e1de1957ca9d6a30dd3715eef1331ee7fad","sha256":"ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9"},"research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-45-.json":{"git_blob":"b9c1904b83c904726a558a34950090cd0672b902","sha256":"302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7"},"research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-67+.json":{"git_blob":"7d756cb19d67e2df44bae7810a50e6742f24e590","sha256":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05"},"research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-67-.json":{"git_blob":"7d756cb19d67e2df44bae7810a50e6742f24e590","sha256":"0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05"},"research/gauge44-ends7-x54-t16/construction/leaver/cgx_leaver.py":{"git_blob":"e686c66306456e2c6cac9c05d01448765322836c","sha256":"3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c"},"research/gauge44-ends7-x54-t16/construction/leaver/layer_end_controls_leaver.py":{"git_blob":"84b1c52ed250b30a8a675949714cf4625e22f6dc","sha256":"4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206"},"research/gauge44-ends7-x54-t16/construction/leaver/reproduce_leaver.py":{"git_blob":"bc4360ef93ceea8fe2da33afbbaa100feaf0731a","sha256":"831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30"},"research/gauge44-ends7-x54-t16/construction/leaver/reproduce_leaver_chain.py":{"git_blob":"19fcd28f4d41db8590ae71f6b98dd7c0655bce32","sha256":"2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5"},"research/gauge44-ends7-x54-t16/construction/notri/PRIO6.json":{"git_blob":"069a7bf5a5f4db53068480acd57cb9e2e62eac2f","sha256":"de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15"},"research/gauge44-ends7-x54-t16/construction/notri/cgx.py":{"git_blob":"08e80804eb6858be9d6ce6458a936cea1e76dc76","sha256":"3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418"},"research/gauge44-ends7-x54-t16/construction/notri/cold44x.py":{"git_blob":"8fa6f3a6a6641f093eff1d467df20af0f8a21278","sha256":"f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296"},"research/gauge44-ends7-x54-t16/construction/notri/port_stage_x.py":{"git_blob":"81ac65ceff60123daaf87edb621df4194622c9ca","sha256":"38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7"},"research/gauge44-ends7-x54-t16/construction/notri/reproduce_notri.py":{"git_blob":"a85f2acf1537253512f8a00928415e64532639cf","sha256":"90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8"},"research/gauge44-ends7-x54-t16/construction/promo/LOCAL-PINS-p6n-k4.json":{"git_blob":"c43b391a43b4443a5fa12d4899d97b8e5fcc1979","sha256":"a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f"},"research/gauge44-ends7-x54-t16/construction/promo/PROMO-RECIPE-p6n-k4.json":{"git_blob":"3f336c07eaec6ee0e8b350b3f3acb8e011a09453","sha256":"fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90"},"research/gauge44-ends7-x54-t16/construction/promo/build_promotion.py":{"git_blob":"f1daad34c22efdd97a11b1e16384962b8af1d704","sha256":"9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf"},"research/gauge44-ends7-x54-t16/construction/promo/make_recipe.py":{"git_blob":"618d609453ea9718b8c74c5d2a26cd5b9e985309","sha256":"ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122"},"research/gauge44-ends7-x54-t16/construction/promo/promo_controls.py":{"git_blob":"20ee51f7dbabd401e125ad948e96c38f36cde6cb","sha256":"786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372"},"research/gauge44-ends7-x54-t16/construction/promo/reproduce_promo.py":{"git_blob":"6e04aa71b163a80c2f7ca2f5000976bd98fb8557","sha256":"f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026"},"research/gauge44-ends7-x54-t16/construction/reproduce.py":{"git_blob":"8b51efa64638c849ad329757b807ef1f68a6cb8c","sha256":"047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92"},"research/gauge44-ends7-x54-t16/construction/slots/RECIPE-SLOTS-k8.json":{"git_blob":"acc1a733d6e52354b3a300136c106aa18e3de030","sha256":"0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b"},"research/gauge44-ends7-x54-t16/construction/slots/SLOT-PINS-k8.json":{"git_blob":"2702c368f4de0b671577aee9a0e2df41c1b27658","sha256":"55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2"},"research/gauge44-ends7-x54-t16/construction/slots/verify_slots.py":{"git_blob":"fd06b654afb1f3a98b28d5cbac50f3ba4a967883","sha256":"bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be"},"research/gauge44-ends7-x54-t16/construction/sw4/LOCAL-PINS-sw4-P6k4.json":{"git_blob":"ae26a0f2f144b0ac863dd868f570270cb4c75d32","sha256":"3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327"},"research/gauge44-ends7-x54-t16/construction/sw4/NOTES.md":{"git_blob":"2a53ffb3b82af7b283bf79efc81089dc6ab37dd3","sha256":"3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446"},"research/gauge44-ends7-x54-t16/construction/sw4/SW4-RECIPE-P6k4.json":{"git_blob":"b9dea4152a099782d48d533523a50f3464351677","sha256":"fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa"},"research/gauge44-ends7-x54-t16/construction/sw4/build_sw4.py":{"git_blob":"617e0ed06d133e8820ac5c29f8e9397f6c3cbec9","sha256":"9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66"},"research/gauge44-ends7-x54-t16/construction/sw4/reproduce_sw4.py":{"git_blob":"cb038e064b4acd1c4bf454ee76102fc923e8f284","sha256":"3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac"},"research/gauge44-ends7-x54-t16/data/FRONTIER.json":{"git_blob":"70285d4d85f0a901de07f9613538825dcd36a848","sha256":"56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2"},"research/gauge44-ends7-x54-t16/data/OWNERS.json.gz":{"git_blob":"d95e0ae3834215826a8071489fed559980204ab6","sha256":"d275e6c0ef501fdc9cb6fba883d65666d10391ad35ed5e66b2f4d7689ec75d4b"},"research/gauge44-ends7-x54-t16/data/PLAN.json":{"git_blob":"532c26dcc849e78ad360f6aeb1f29cc6ce11e206","sha256":"e104d46a767dd0e223902d6f965aca2485d303499c019cc0d29e1b270da68e5f"},"research/gauge44-ends7-x54-t16/data/PREPARATION.json":{"git_blob":"8c7796820f47f790733741613cd61af350465f5c","sha256":"1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9"},"research/gauge44-ends7-x54-t16/data/SPEC-T8.json":{"git_blob":"2888977d0c02231172ed5c34ec9af01dcad76ce2","sha256":"4823f39d0d89ab148bbbbe42bdbc2a27755d921424041887c8614d0bacb293f9"},"research/gauge44-ends7-x54-t16/data/SPEC.json":{"git_blob":"597f7d8a9dea57a21635fde47f3b263d2376fc00","sha256":"8d7f0576d4aeca183c6e3b23a56897ff668cd0b943b75886fb1ea922091bd3e1"},"research/gauge44-ends7-x54-t16/data/T8/OWNERS.json.gz":{"git_blob":"bd1cec69f0b4be3dd088118295c10bec94442f5d","sha256":"93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045"},"research/gauge44-ends7-x54-t16/data/T8/PLAN.json":{"git_blob":"a773528fd4cdd6ddaa85e1d93ccbe130937ef890","sha256":"0214279f43204f9334aef8c3f6f691e8b81a715628c45fc8341c21a19d26d4a5"},"research/gauge44-ends7-x54-t16/data/UPSTREAM-PINS.json":{"git_blob":"68486b84e3ae599d776b9613adc901fd8874718d","sha256":"ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b"},"research/gauge44-ends7-x54-t16/evidence/ADMISSION-CONTROLS.json":{"git_blob":"583bf5dbf4f367e86ac72da9efcd4a62cdb42e55","sha256":"a433ec1f6bb62f2190e9abb70af8066b5264296d3c8c72de0bd7dcd034486f7d"},"research/gauge44-ends7-x54-t16/evidence/ASSEMBLY.json":{"git_blob":"5b181fe3a26c932469516ba1de3fd9e6ec12f0c5","sha256":"1b2779a637ec4b6e52df11000f58beef5298be7e20ccdb1cc2260c3688d547eb"},"research/gauge44-ends7-x54-t16/evidence/AUDIT-LOCAL-COMPOSITE.json":{"git_blob":"7d35b90b6b0d4c6169d9a7925ab186a462b0b7de","sha256":"7a4910a23f38e2f1f2b4cac8fe39ef535cf19a5c8a0f339ba8391749f38862f3"},"research/gauge44-ends7-x54-t16/evidence/BINDING.json":{"git_blob":"b7f661cb68d8711cc840eeda03ac8e7f2c34c2ba","sha256":"3c8b3f3c7aae4b604ff6cd6f40bd9e6b6ca0507624892b5266e86523ec5fa5f6"},"research/gauge44-ends7-x54-t16/evidence/BIT-SUPPLIER-CONTROLS.json":{"git_blob":"8bc71c7cda1474f031dac3264a4c2da19cd22f8e","sha256":"23d0ef02c2bf4daeba56aba2660a7284f84a9bacacfc63d5b6b987717cca1e13"},"research/gauge44-ends7-x54-t16/evidence/CENTER-COMPATIBILITY.json":{"git_blob":"5a3ae374226298bdc93d17a84e08d4040223a5f6","sha256":"c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3"},"research/gauge44-ends7-x54-t16/evidence/ENDS7-X54-T16-STANDALONE.json":{"git_blob":"96642260622c231a9b9702ad9983d9d817d90006","sha256":"bf2c45dc34ceb397f7a6a7df709100fbdfc14b31592a3ee01ea889cab4c11e17"},"research/gauge44-ends7-x54-t16/evidence/INDEPENDENT-T16.json":{"git_blob":"ce9d1e1de7f98b429763cdea82535c87b826470f","sha256":"1a1631047d00b241f2869473894621a6f364f317454f3548055db19919570def"},"research/gauge44-ends7-x54-t16/evidence/INTERMEDIATE-ENDS7-T16-PROVENANCE.json":{"git_blob":"ef2a1dc71051ed9d303c97395e72ab358497c1a1","sha256":"43bf3476c9d5583ccd2567b0278365244e259eeeeda7cf155e4276eb58f99263"},"research/gauge44-ends7-x54-t16/evidence/LOCAL-STAGES.json":{"git_blob":"23e6036057b2db58883185c9ca746195d168d7cd","sha256":"8627a02402bae24dbb79c3e7945b5ae2fc3c71384530fdba8b011424ac004de5"},"research/gauge44-ends7-x54-t16/evidence/REPLAY.json":{"git_blob":"087f35df23bd847ec4437decb4796486d231f33a","sha256":"0cabd7661da0d91e9141f6d4bfe8530e4c29cb30add3c67aecb71e2b5ffb9120"},"research/gauge44-ends7-x54-t16/evidence/STAGES.json":{"git_blob":"ad091c857d410c7c776cb4eaeba8d681d2ce8eeb","sha256":"f12cc135a68a12555db77345c18c14f61c459b5a7eee5c0b42ecd91248318751"},"research/gauge44-ends7-x54-t16/evidence/audit/ASYNC-AUDIT.json":{"git_blob":"0617aaca01007488df103110cd3a306e1a59641f","sha256":"a63a9378f1d3c901317334822ac8e286ef29ebcf50337cf6386214b9b5e651b8"},"research/gauge44-ends7-x54-t16/evidence/audit/GLOBAL-PREFIX.json":{"git_blob":"98b45c375e898e7ead061a56a2728f23d6b827d0","sha256":"1c4ca6a87f565623e1ea4a477cb18c25fee4e312053b79d0c2762010ae7dd157"},"research/gauge44-ends7-x54-t16/evidence/audit/IDLE-REMAINDER-FRAMES.json":{"git_blob":"26b92931098ba4ca4a204636cfc8253091f61af2","sha256":"c5f200950fda60416c657903d85ffbf270013de23165a6a401a40b9b7f2a6e10"},"research/gauge44-ends7-x54-t16/evidence/audit/OWNERS-AND-PROFILE.json":{"git_blob":"4957e22db7db6c459b7c624c228676edb50e6658","sha256":"1fa9c9acbd54f9bec183a070f99eb9803395d35e847ab6e37d2489b2d41d2e40"},"research/gauge44-ends7-x54-t16/evidence/audit/PREFIX-AND-INVOICE.json":{"git_blob":"be9658be1d92987b14dcd39093a3babb52c97ad5","sha256":"17749a944bbeb7980a56aeb8ad929d522480869f4c9760e6103a606a58b5b034"},"research/gauge44-ends7-x54-t16/evidence/global/ACTUAL-SIGMAS.json.gz":{"git_blob":"b744408ed90cbd9ffc47772bb5061deee5399b01","sha256":"86a34c81c1c85e9fcf57ce7dec1c29669377c1d3fb734de9f9c6e031a8f5ef1d"},"research/gauge44-ends7-x54-t16/evidence/global/GLOBAL-TEMPLATE.json.gz":{"git_blob":"03ebd051b7c2fa90b33a02f5b37bd719016cce61","sha256":"e845c64551b8db5782dd2544e2feeb8245e6f66766ef824e5668938fca5133ca"},"research/gauge44-ends7-x54-t16/evidence/global/HOSTED.json":{"git_blob":"2641e7f26b5d6cff4acbbe111a51a55d98889b69","sha256":"24c04f2da0ee6334d806f71e461e2d6ce46aa363be98f06dd256199d840bad8e"},"research/gauge44-ends7-x54-t16/evidence/global/IDLE-REMAINDER-FRAMES.json.gz":{"git_blob":"9762119a03c98fbc2e81f50ec7ad06bafbffa2cf","sha256":"9caadc6bd699825eca1458b51d3fcc78d31463b53d7b6001477e24f082a10350"},"research/gauge44-ends7-x54-t16/evidence/layers/LOCAL-AUDIT-LAYERED.json":{"git_blob":"078078767410495313abd3b2c24203d7ec80328b","sha256":"a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff"},"research/gauge44-ends7-x54-t16/evidence/leaver/CELL-MUTANTS-LV.json":{"git_blob":"4d4ef7403c06e17b7b6c519f7a2bc10c88793fbf","sha256":"308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220"},"research/gauge44-ends7-x54-t16/evidence/leaver/FRAME-CONTROLS-LV-k8.json":{"git_blob":"9f56e21000ef55584d14dc828f5601f3ae3717cc","sha256":"9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd"},"research/gauge44-ends7-x54-t16/evidence/local/CANONICAL-WORD.json.gz":{"git_blob":"3de220fb8258238f1bdf4add468a7258e17ffed3","sha256":"ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2"},"research/gauge44-ends7-x54-t16/evidence/local/CLIFFORD-RECIPES.json":{"git_blob":"34cd616fb678cc2247c349c24be3651a645dc76c","sha256":"8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a"},"research/gauge44-ends7-x54-t16/evidence/local/CLIFFORD-REVIEW.json":{"git_blob":"5c454881e3f7ac7ac7de06b0c3b8db85f94561db","sha256":"1f71895a8511e536684feac71ab250941634cdfb59141ac0b831c358c021ef7f"},"research/gauge44-ends7-x54-t16/evidence/local/FULL-WORD.json.gz":{"git_blob":"f52aa2ad93d4aaa6f95adbf9a0dde7a2b39b003e","sha256":"34d708aa590b16b54094fbaaa804fe2ea00690e0d863525c85db7b0213861c4b"},"research/gauge44-ends7-x54-t16/evidence/local/INDEPENDENT-LOCAL-REPLAY.json":{"git_blob":"8475099c248192c5da35c5afab8a424f260f7570","sha256":"0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2"},"research/gauge44-ends7-x54-t16/evidence/local/LOCAL-CHECKS.json":{"git_blob":"82cf0daf20369c059685af5164ea23d6d4e14389","sha256":"b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b"},"research/gauge44-ends7-x54-t16/evidence/local/LOCAL-PROGRAMS.json.gz":{"git_blob":"2cdc70cc8f25245f97a542ea2f4fee677a20303e","sha256":"94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac"},"research/gauge44-ends7-x54-t16/evidence/local/RESIDUAL-ADAPTERS.json":{"git_blob":"0da99c9630361c7d294e411b5efc5d88ebf2e014","sha256":"05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108"},"research/gauge44-ends7-x54-t16/evidence/local/SCALAR-FRAME-AUDIT.json":{"git_blob":"2473c3caa20db613ec0eaa65907a9dca4569c6bb","sha256":"512a8d52cf28fd249eceb4557428327430e81b2b236ca2b60812b5ba5a544513"},"research/gauge44-ends7-x54-t16/evidence/local/WRAPPER-CHECKS.json":{"git_blob":"d5d4f192c8fbcc2ea0634b847a2fdf53ee49c133","sha256":"4b5ebb62b23dae93fc1fe9174c8145654a8452f4b07645c285aa41c961adb1a3"},"research/gauge44-ends7-x54-t16/hosting/PROOF.md":{"git_blob":"b551b6d3e5535c5486c96dd93bd04262ba5a71f9","sha256":"45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0"},"research/gauge44-ends7-x54-t16/hosting/README.md":{"git_blob":"b9505ebbea39c3b4dd3efd45fb0472aab8331096","sha256":"004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1"},"research/gauge44-ends7-x54-t16/hosting/audit_frozen.py":{"git_blob":"26a07408ea56e5bebb3d03d9938655ba9f74bac7","sha256":"a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659"},"research/gauge44-ends7-x54-t16/hosting/expand_owners.py":{"git_blob":"ee6c4c24e63aa0555638f8d11be3f6367f7d2e62","sha256":"0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70"},"research/gauge44-ends7-x54-t16/hosting/frozen/FROZEN-AUDIT.json":{"git_blob":"5f95552366147690dd3cccd141a14d7613132a97","sha256":"df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b"},"research/gauge44-ends7-x54-t16/hosting/frozen/MAJORIZATION.json.gz":{"git_blob":"047b1cfb678fac19f80a29cf512770505f126d28","sha256":"ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf"},"research/gauge44-ends7-x54-t16/hosting/frozen/MANIFEST.json":{"git_blob":"291005722ccdc7d7a78a5c13f592f25038d838e6","sha256":"9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967"},"research/gauge44-ends7-x54-t16/hosting/frozen/MATCHING-RECEIPT.json":{"git_blob":"993331090c85923d2f9e4a4eabe35f098c91d968","sha256":"e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2"},"research/gauge44-ends7-x54-t16/hosting/frozen/OWNERS.json.gz":{"git_blob":"e9c7cfc72db0f8825070ea8f0ab4c45dae89baef","sha256":"90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57"},"research/gauge44-ends7-x54-t16/hosting/frozen/REPRODUCTION.json":{"git_blob":"8ad59712b276961b0bff5df309d60c09c68851b0","sha256":"8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81"},"research/gauge44-ends7-x54-t16/hosting/frozen/SEED-OWNERS.json.gz":{"git_blob":"d61916a1564d7072c8de69e3757d35e5cbec24d1","sha256":"eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048"},"research/gauge44-ends7-x54-t16/hosting/frozen/SEED-RECEIPT.json":{"git_blob":"82911f647b44c6efec6bf7689d57202c690d9b6c","sha256":"aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba"},"research/gauge44-ends7-x54-t16/hosting/frozen/SEED-REPRODUCTION.json":{"git_blob":"91ee98cf7046e1408ce4c0a78896db661b0d8138","sha256":"4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194"},"research/gauge44-ends7-x54-t16/hosting/reproduce.py":{"git_blob":"2f29a5ff13a06d7734ea4482bd18a74698f6217f","sha256":"7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82"},"research/gauge44-ends7-x54-t16/hosting/reuse_owners.py":{"git_blob":"234b831790d7839d4c2e43357ae277b7bf254a2b","sha256":"2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402"},"research/gauge44-ends7-x54-t16/independent/CENTRE-GUARD-REVIEW.md":{"git_blob":"6c62bd070ef90cda02355b7ad87dd67dc92e7184","sha256":"7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897"},"research/gauge44-ends7-x54-t16/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json":{"git_blob":"771faa86a7432c0b2652a1ab0b2d849a11462b94","sha256":"9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9"},"research/gauge44-ends7-x54-t16/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json":{"git_blob":"e2df1dcca8fec4d74662718841ad7fe86ba2af9e","sha256":"631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b"},"research/gauge44-ends7-x54-t16/independent/GAUGE44-INDEPENDENT-PRICE.json":{"git_blob":"7aa86180dd71ed15d4180efa682ae7c4c5f41d9f","sha256":"6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683"},"research/gauge44-ends7-x54-t16/independent/README.md":{"git_blob":"f97dcf81b134238cf11dae9704ca8574d027b72c","sha256":"25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89"},"research/gauge44-ends7-x54-t16/independent/audit_local.py":{"git_blob":"4744d8783c25bf7bf5076886169077ca3808309a","sha256":"03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd"},"research/gauge44-ends7-x54-t16/independent/price_profile.py":{"git_blob":"0e36ebd4687374e3ca14f233c77fafbdc1e5cfcd","sha256":"d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf"},"research/gauge44-ends7-x54-t16/independent/review_guards.py":{"git_blob":"086dcf3d11897b73dfb2730bbfacd690fa3f0c41","sha256":"b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d"},"research/gauge44-ends7-x54-t16/inputs/PR589-EXPECTED.json":{"git_blob":"e293ddc557742637f9f679f083a1a282d87b1b13","sha256":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4"},"research/gauge44-ends7-x54-t16/t16/NOTICE.md":{"git_blob":"403f4afffb49ef96a3ec1a8053b95cb9346da3ea","sha256":"902370e6bfcd39dbea2ece474f15fccbcce3b8e966b2b94066bd03e5174591b5"},"research/gauge44-ends7-x54-t16/t16/build_parent.py":{"git_blob":"bd9e28bd2dc091dcec90a09fa3e556c71579e528","sha256":"82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e"},"research/gauge44-ends7-x54-t16/t16/indep16.py":{"git_blob":"81e1e9fe1554c38865e9d149fb8f4196aad91b4a","sha256":"1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7"},"research/gauge44-ends7-x54-t16/t16/lift16.py":{"git_blob":"613c4bdb3c8ab9cb5f069a52488a673e3ce77702","sha256":"072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689"},"research/gauge44-ends7-x54-t16/verify_manifest.py":{"git_blob":"8c2441d39202409ffe1c2cb42f197946f7bfa7c0","sha256":"723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b"},"research/gauge44-ends7-x54-t16/verify_t16.py":{"git_blob":"4794150c4cf96cf1c445e2650800e636809fa06c","sha256":"050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46"}}},"pr1148":{"commit":"3ba07f190e64bf7748f669d40fc5c37f77ce5dc4","files":{"research/k8-coordinated-owners/CLAIM.json":{"git_blob":"49271e6bce6851c2d3d75b4c2ba97666893958ec","sha256":"721457ddf32e3a418bf7e23e5e3009626d49eb0108c9f617263d8f5028a8e180"},"research/k8-coordinated-owners/MANIFEST.json":{"git_blob":"4600c7120d590498ebe53f7ff82d2a0f6bec5455","sha256":"5b14fd65809d66123d96ca7276d1013b4d23bb54ae53d98b0fbb164e3ffbe942"},"research/k8-coordinated-owners/NOTICE.md":{"git_blob":"281e6404ca84bb24370e8807315d59d42e79d232","sha256":"442756fc1c5ecfd7b7b7694b53b1ecc70aa525004cd80f7d748ccd7270555189"},"research/k8-coordinated-owners/OWNERS.json.gz":{"git_blob":"d4182e19487f2e12c1ae1a549507cec077a22312","sha256":"681670248da5ffe1504fab103855b6d0b8e91d176f31963fe88efa1d9d8bc2bd"},"research/k8-coordinated-owners/README.md":{"git_blob":"79e2103240b76cc9fe79ad1fdbbd4b479679e475","sha256":"7df766fd7fe3e7f0435eb2190e4a199ab6698b509499e3c0004168a66d78184f"},"research/k8-coordinated-owners/SOURCE-PINS.json":{"git_blob":"740de3ceb7014045218f9d8e0976699c486300a7","sha256":"80b0357d714181f36476c34f9242ae21d72839c4afad9318b4228b78889fd676"},"research/k8-coordinated-owners/SPEC.json":{"git_blob":"cf015eae1b4f2c5348648af150ed352ff21c8287","sha256":"21d605679db7c2e2801ee0d3ef9c262e71319fc49cb98a01b2d05c8a491aa569"},"research/k8-coordinated-owners/discovery/SEARCH-LOG.json":{"git_blob":"d2af99be3c132d6e3e86ac17297d81baf179cb7a","sha256":"a7b4082ce270d84fcdea6dfcc7ae0836610f41d67183156fcd5f81bffb2ef096"},"research/k8-coordinated-owners/discovery/SEARCH-TRACE.json.gz":{"git_blob":"5df63b0f3914fe3d94e0f60a5df51b014ab96067","sha256":"04be238ac938f38f77327e6e83efe0ea6e2cb29ee3d95a5b783bcdf7bda3b861"},"research/k8-coordinated-owners/discovery/STAGES-RELAXATION.json":{"git_blob":"c11163d70c80e61ccd5b310845dddc00cbf925ba","sha256":"165bf9204534944b44762109bbf35ba4bdedbc867fa1dde63a90bdf593cecaa2"},"research/k8-coordinated-owners/discovery/screen_stages.py":{"git_blob":"d933cc0a13b0d872607fbfb1cfab4065cbaf5491","sha256":"e78a0ee907b4ee97f90b7b66a8f8da7a0044474dab7c27845b24ffbf01dede14"},"research/k8-coordinated-owners/discovery/search_calls.py":{"git_blob":"27682bb609954847bb62f408617cf8aa753912f7","sha256":"5df48ab7775bfee767d71dd8c47585977922568b532c29f4528f2c8ca5ab364d"},"research/k8-coordinated-owners/evidence/ADMISSION-CONTROLS.json":{"git_blob":"f29f6477637e9587417bdfb4546e92de25fbcb01","sha256":"31218c75b7a28d4f5397195bad9ba7e5750366ae7b73d010a749f358ce4adda4"},"research/k8-coordinated-owners/evidence/ALL-T-BOUND.json":{"git_blob":"786cf02909570c2156f343b76b55c4060fb7361c","sha256":"07cc98bd055bc3f351de2c460364dc9fae25c1b728b90d6dc3ce9b5d9da32381"},"research/k8-coordinated-owners/evidence/ASSEMBLY.json":{"git_blob":"f2c5fac237ecb04e5ff913150f24cc551d97d556","sha256":"8634e3ce597619d6da631dcd1e40bd82f327a2b500bf6963b5961c945ab810b9"},"research/k8-coordinated-owners/evidence/ASYNC-AUDIT.json":{"git_blob":"0b3b93fccd0e935eeb3da6000fcfafb0eb76f883","sha256":"abc1e11e3184371a41e4d73d56033e8e7ff608443085926a4e0037f7e335300b"},"research/k8-coordinated-owners/evidence/BASELINE-CHAIN-STEPS.json":{"git_blob":"2fe4aed171d27b0f491bf8988ca5d2ed3023f3a3","sha256":"9f5d3b0e72c92a4f5fda023685aab2e5f23dda6e079410824126c0802bc1710a"},"research/k8-coordinated-owners/evidence/BASELINE-RESULT.json":{"git_blob":"3f5fb56787a6f39d2ea7b8588bc4e31771dc13d0","sha256":"1d43f5f4a6d77f096182d9482eecb5313a0b79c4d3e12f4f70846c6f935287be"},"research/k8-coordinated-owners/evidence/BIT-SUPPLIER-CONTROLS.json":{"git_blob":"28ae343185046ea2ad1d90a3ae67e21985e13770","sha256":"4f996bdd4802b0eea6187f01734d4e3f482b281952d6a923dac395a27bf93eb0"},"research/k8-coordinated-owners/evidence/NATIVE-BINDING.json":{"git_blob":"25d00524e053804f2ff00d122edf6d5ce96e80d5","sha256":"6059b4f78e63c818d52b72615e42d9b80269a3d69769a14a424af6fe19f22870"},"research/k8-coordinated-owners/evidence/OWNERS-AND-PROFILE.json":{"git_blob":"9d99e0792fce9791ff0272efb3c11b8ce9aae0b5","sha256":"ee31a5ae84bcc6344b18c67ae828693ba92ec0328223c9b6af29b04d90c80b40"},"research/k8-coordinated-owners/evidence/PREFIX-AND-INVOICE.json":{"git_blob":"e4a8fdac5ad6e47606bfb3c67a9c683afe648aee","sha256":"22cf5aa33d7c26708d1c8b5a5f88df9b330516e6ab9e5e8e10da5857c58e7961"},"research/k8-coordinated-owners/evidence/PREPARATION.json":{"git_blob":"e4a2037ee9e3fc13df0b748e0f111bba02c1efb3","sha256":"23105d9e89bbf7e2a64e8ce391c6b3fc7a900e4e2d7351bbd0120d05ab52a2eb"},"research/k8-coordinated-owners/evidence/REPLAY.json":{"git_blob":"bae0b4210694514dce1fdec3534f313bf848c707","sha256":"842986705a5ee84c969d5b58e831dd6cd8ddf549f2ee3bebbd9c6a5dcf566857"},"research/k8-coordinated-owners/evidence/RESULT.json":{"git_blob":"11cf8878886aa049cfb2a94db41c477cea332334","sha256":"7bf23e92f06971315168cfe167a0ba923f8ba0c58a5f35d93ba53f58fcdb828e"},"research/k8-coordinated-owners/independent/UPSTREAM.json":{"git_blob":"b488548ca2841254cb257fbbe1c69b2db2bed89d","sha256":"46079c0178181f97b0d35cf2fb3a05e9d33a267bef31230a56dd5c84a7b3b385"},"research/k8-coordinated-owners/independent/all_t_bound.py":{"git_blob":"1b51e277d0a251014455b1e42696751f87093457","sha256":"0ac15a2b2eaf72060924fcd33a43b2170a5c14ecfe4345ff5da041b81bd402df"},"research/k8-coordinated-owners/prepare.py":{"git_blob":"bdf06ddbc233e3cc79dc4d9abb77028b20db93cb","sha256":"2a92b1a55cad73c0a5168f49f432a436db86111328228e300d3e8b72e9e994e6"},"research/k8-coordinated-owners/verify.py":{"git_blob":"4e45748ff4bc3516ab29cfe5dacfc0d4ec1622e3","sha256":"960ad27c57416e061d907cb5f0de7acb4901b5232c29ca88224cc6284e60b496"},"research/k8-coordinated-owners/verify_manifest.py":{"git_blob":"8c2441d39202409ffe1c2cb42f197946f7bfa7c0","sha256":"723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b"},"research/k8-eight-ends-t16/CLAIM.json":{"git_blob":"1162be40d5f58b52fd677abe37c14b8cef15d810","sha256":"4ba568cb88f86a87a6c35df444b44b6f8c006ece6351279934ede873f5d61eab"},"research/k8-eight-ends-t16/MANIFEST.json":{"git_blob":"65477df4ba9c05da7d0ff7b0042d6fd43df152bc","sha256":"f1f5c145121485f644a134873069fc465f312e9144ab43975fa95f599ce06f59"},"research/k8-eight-ends-t16/NOTICE.md":{"git_blob":"d0359f2e08e6a0f2a1b6df0b058231996949c3a7","sha256":"a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0"},"research/k8-eight-ends-t16/OWNERS.json.gz":{"git_blob":"552924ef0dfd3328159c5ba83d2992f4e939ecc3","sha256":"a4c79743dcc93c4260fae00b3324b97983fcd56af8bff5414243d7258a4bc97b"},"research/k8-eight-ends-t16/PLAN.json.gz":{"git_blob":"ff24b37525a1ef4f7a7731d0837c7165af9637ed","sha256":"6561ecb8db5e24dd534d0f940f91830691ab375f925b20665ca0f019718e2b7a"},"research/k8-eight-ends-t16/PROOF.md":{"git_blob":"f230cad6a41fda07d0b131d27407ec2b09b47a0e","sha256":"7084e8a9fedd0d5902e95500da70982343fa725d8b68c2c3210a7b0a7bb2e664"},"research/k8-eight-ends-t16/README.md":{"git_blob":"b274d59bd019f29dab90e3e28ce3c03ca9f66f8e","sha256":"7aa1a4f5348ed9408cdebb2525eaabe50776259b939d7d49f6845503f3c585c3"},"research/k8-eight-ends-t16/SEARCH.json":{"git_blob":"6aa91df171931b43c04de5966b3f506a240e5f1a","sha256":"bf8efc27b2ca95f4bd15ebc719d2794a0e5d2edf26fc5b4cffc8c18dcb7f6d4a"},"research/k8-eight-ends-t16/SOURCE-PINS.json":{"git_blob":"d019988cd4b52b2318060dd6d474988c19fd8285","sha256":"07515a4634303b85a54b570079f0efb373b36d586c72f7b023df3d2f495ad5a3"},"research/k8-eight-ends-t16/SPEC.json":{"git_blob":"7dd4f9780a10cda6ce8232df2e4736d14fe5715b","sha256":"30d4dcc96f1361fcee1562681291763f6ee8c08fb1f93da1ea4fd2a42a1d0b5d"},"research/k8-eight-ends-t16/UPSTREAM.json":{"git_blob":"ec665901b38ce322b2055622d6f2c22dfcb7e80b","sha256":"23493f74fc09ac50442d9d83b7626d4760cfa24c785ca1d96fde8175bdd39fa6"},"research/k8-eight-ends-t16/discovery/ALIASES-REFRAMED.json":{"git_blob":"29084e93cd50788f9e38b43af2bc635cf8b711b2","sha256":"a65d322ee757815e0de08e1f3c5796b5add8c744e1c3df292af917966b09adf0"},"research/k8-eight-ends-t16/discovery/BANK-STAGES.json":{"git_blob":"4ab6d8ca4564db2b31001cafc3bf28e09f1d46bf","sha256":"ad8a80986982b67481ed4785663d83f56516542a79dc02c9ff50c991173c2771"},"research/k8-eight-ends-t16/discovery/FINAL-SEARCH.json":{"git_blob":"aacb21f3eb9701153112cc2791c4f29d16c6a44c","sha256":"ed936c49a0c15d69388b03f7c71bee50b2726be353f8dd52c6dcc56b1c12e1bd"},"research/k8-eight-ends-t16/discovery/HELPER-ALIASES.json":{"git_blob":"c9ec91a92b8e82f905a4fef4d1abe8cf17e12301","sha256":"ad1e0ffa923ce6632b2b86ad00ab004b5fc28ecd1d186e3c55727d1d6e834d73"},"research/k8-eight-ends-t16/discovery/PROMOTION-GROUPS.json":{"git_blob":"1aa1fe4e4efba206f54866c56708465a1337ec23","sha256":"221e05ae8c2b32594490b98ca12a96fc301789d1d80752c1d5f168469f8f8c07"},"research/k8-eight-ends-t16/discovery/PROMOTION-SCREEN.json":{"git_blob":"e80217ccb1dc261c7e8d388c53e9199c982d28e3","sha256":"6b5799744b7abbf4182ad594ede3984123ec559dfed1c1f50ad4f005ce713390"},"research/k8-eight-ends-t16/discovery/RETIRABLE-HELPERS.json":{"git_blob":"185d6309bfb660e717b35558e3df80fe73d6fa89","sha256":"3670ce299d538c4215fab08e88e7553903dfc595b756bcbc157178b0dc913159"},"research/k8-eight-ends-t16/discovery/SWAP-SEARCH.json":{"git_blob":"42b9fe009195a3c0c7df513f0b9783b57ab1c08c","sha256":"70901cb74e475b35e0cffe99fbdae6ed74e5d315b92fdf900ef3a6ef7e542258"},"research/k8-eight-ends-t16/discovery/bank_screen.py":{"git_blob":"45e1060e8077f2e9d02bae02686cb443b6dea5a7","sha256":"b6c208ab449a9371bc812a19ed13edd8121f3f042769739fab9f964959a30b78"},"research/k8-eight-ends-t16/discovery/columns12-SEARCH.json.gz":{"git_blob":"5de2e66bc752efa9a308c50e40cde387a9953475","sha256":"ee6f2925af9fc0dae9c2c511a35e34fe3d9983fb2df6b14de144d1166bba495a"},"research/k8-eight-ends-t16/discovery/columns12.log.gz":{"git_blob":"6b360de094e044c073de8cdf741116d568808479","sha256":"7056db81c9131f484f1b09931bd3a722fa78e03e8e5898645da2eea3df75638b"},"research/k8-eight-ends-t16/discovery/columns144-SEARCH.json.gz":{"git_blob":"5319161b61c85c35a62f7bcfc4abb4ee830dd868","sha256":"b07b6a6dd29ec3cb03fa3827767e674b4ea06b3f2a555ba332f2dcb88ff918f9"},"research/k8-eight-ends-t16/discovery/columns144.log.gz":{"git_blob":"0f38b8cb007488b934333aa6f78f873a99da3314","sha256":"bcf0b3ca6bd12a9032bfd27231e5a4efe2dd3b0edf874c9a01d0ba9dc8a3889d"},"research/k8-eight-ends-t16/discovery/columns24-SEARCH.json.gz":{"git_blob":"d074d338bb218af7afa102758d9a90e667d54490","sha256":"9049ac77892a20aeeb30ccbf2a703c2b89cdbacf4f8f68a391cae10552c948b1"},"research/k8-eight-ends-t16/discovery/columns24.log.gz":{"git_blob":"385ee0805371b379b609d9c1dae6a4e6b7d2292d","sha256":"6aedcc3e39ee3ee8d2f9d4f33fd0107a1dec002323a6bf5e7e29308beafd3f91"},"research/k8-eight-ends-t16/discovery/columns48-SEARCH.json.gz":{"git_blob":"9c6c9d67725be2c7b9318ff54a2f15eadd36ed43","sha256":"adafcb5f6a7169a01a71220ea7ac94b389884112d00b1e9083961d69e4bbe467"},"research/k8-eight-ends-t16/discovery/columns48.log.gz":{"git_blob":"d7698b0bf5ea0839975d125d1a17f8413dd1f4d9","sha256":"0d69973436734bdce8399377f617dc728f099c1da237bdb829bf1ddf20ca4c4e"},"research/k8-eight-ends-t16/discovery/columns48b-SEARCH.json.gz":{"git_blob":"76d196e78817a1c6976a1689cd3fab01da820a7c","sha256":"fffcdb5b4f3679ab726a3abf9a8ed97559eec7975ca39ece8a140231efaad130"},"research/k8-eight-ends-t16/discovery/columns48b.log.gz":{"git_blob":"ae04bbb79339348ed3aab05f808448e641faecab","sha256":"c811f9ea49dd8ddf80f54556c7e387172b5ecbd8998ed4bea795e7c2b12121e9"},"research/k8-eight-ends-t16/discovery/double-calls-SEARCH.json.gz":{"git_blob":"2d5c6c35a3c23533418303738403d330057f2d97","sha256":"69df67741eae2afdd3f683f4021f478000dded1322c5820023faa77067ef6a9e"},"research/k8-eight-ends-t16/discovery/double-six-SEARCH.json.gz":{"git_blob":"4d303e649d448533f9acf03c29b4db3132663ec4","sha256":"0364f028731baeccbf07953a98fabbf152b3685c5dfdf309d65398946ade9883"},"research/k8-eight-ends-t16/discovery/double-triples-SEARCH.json.gz":{"git_blob":"b3125e97d45c1263a8d0e362dc2b9757b197f24f","sha256":"f0040bb71eac1612bf730791a6d32bf13c7a065f0a2772a1149ced7aa71ffc77"},"research/k8-eight-ends-t16/discovery/helper_aliases.py":{"git_blob":"8b8422fd88418b4dc7123339488db4243e1148a1","sha256":"3b996c21bf97e950e785c2f7f3ce025ce59c754c3679f97023ababfc5ac0b295"},"research/k8-eight-ends-t16/discovery/make_start.py":{"git_blob":"fba416ab984f0d5170746879aa10100497018494","sha256":"3ba975c7947a3b74959a7e83a580a6f7b36e90d075157bac304a097d20e2cafd"},"research/k8-eight-ends-t16/discovery/promotion_groups.py":{"git_blob":"ace03f012d74224be64ebbe15b4cbb985b49959d","sha256":"5244da8cffc5f56698c134ca36230bcddbbdea935bc633e4975de50b47d785d2"},"research/k8-eight-ends-t16/discovery/reframe_aliases.py":{"git_blob":"5b4e5a4ece87ed21914b865ba07c284d2b4af990","sha256":"5e6342d583a7f3b99c940b6382527a000803eb728267fb4c101371b2b2128d89"},"research/k8-eight-ends-t16/discovery/search_calls.py":{"git_blob":"c1da48c35fd65fb511937d0e548e24a8bef1a774","sha256":"273d3b3e1de5644af5a13a2c7cb18a34a3689b80830b614d7d2ed1da998a90ee"},"research/k8-eight-ends-t16/discovery/search_columns.py":{"git_blob":"c7957718636c0f17d024828b9dba4262c75eef3e","sha256":"edbb093207e21ee4301382f00198c6eccb197949068e96c76e46a2e61dc90f82"},"research/k8-eight-ends-t16/discovery/search_uniform_blocks.py":{"git_blob":"463f32bd1146a783e7134ebd46c609951b7a90d8","sha256":"ab6308d536b37b14996e06b857a4f11433b3cb551444e836eb12ec560b452bb8"},"research/k8-eight-ends-t16/discovery/swap_frames.py":{"git_blob":"f220554ecf4b695db5692e636f10e29791baae85","sha256":"cd89dd461142788817ac53c041808077d162a4d3bcfebee240307199aebadcc5"},"research/k8-eight-ends-t16/discovery/t16-calls-SEARCH.json.gz":{"git_blob":"1558e0af06c87e8f94cb1cde2eee7f9c39e96a81","sha256":"44df70fe291f3c0ec9ecd01791c02b9b52b29807c576353476542aaf76bbff40"},"research/k8-eight-ends-t16/discovery/t16-pairs-SEARCH.json.gz":{"git_blob":"b4174193a3d28f10fd40abf18a34daa7c2b2080e","sha256":"d32f9facc6b68c8dad2c9e4ead26aec913b076d4eb10214d18fa0c4c0b4762fa"},"research/k8-eight-ends-t16/discovery/t16-triples-SEARCH.json.gz":{"git_blob":"620bfc974d7d568d72e2e2bc40cd89f1151fa1e1","sha256":"57dd34fea35dee80e72a007e4cd044c50f00c1c794f03df6b0cbf292f54d8e0e"},"research/k8-eight-ends-t16/discovery/uniform-blocks-SEARCH.json.gz":{"git_blob":"91898cdf723ce7be842b57e3b3a9737e4c4a4e23","sha256":"9c0a86f5befe738ebcf39badda84314150b060a911e0708d83d29a22423f149c"},"research/k8-eight-ends-t16/evidence/ADMISSION-CONTROLS.json":{"git_blob":"5e425431ee4296196a81367c509915e2e3f3905c","sha256":"6bdc8957237a01c0c5f667e2be2e889b02714fc6bc7a209672d09d5222073059"},"research/k8-eight-ends-t16/evidence/ALL-T-BOUND.json":{"git_blob":"9f090c044c66f16ad318ac12c35a97c1ef212ac2","sha256":"dde30a7151248cb9f316fe3816554dc165d050f5216e13797ceb30fe681a3a04"},"research/k8-eight-ends-t16/evidence/ASSEMBLY.json":{"git_blob":"ef1b6046d067caf40ea02cb3f1a58b61470736ea","sha256":"52c6af2fc860f7459f0fe3397639caecd5a8edf35ad76d4b22e99d19a79a2831"},"research/k8-eight-ends-t16/evidence/ASYNC-AUDIT.json":{"git_blob":"6c3980a6766a00d0b357c6cf53119a1d7e3cef69","sha256":"644c15a99e207161a50eca01ddf1c7852e67504517fa4710d5490c3f65a4665a"},"research/k8-eight-ends-t16/evidence/AUDIT-LOCAL.json":{"git_blob":"a22e133f16fe3528959f4932187aee3f38f65b5f","sha256":"9fd252469f82b5ce5fc2f42b674445dfcac08d769768d00bede6cb5c99e9aa63"},"research/k8-eight-ends-t16/evidence/BIT-SUPPLIER-CONTROLS.json":{"git_blob":"0d68c7e1361e2377ae088f6188e4d37e90b8a9c8","sha256":"17939b88da6b6ad8a8220ed04ddf325679fc2f096c7d197938f10893a87383b4"},"research/k8-eight-ends-t16/evidence/END-CONTROLS.json":{"git_blob":"0ca420e48a7045f13187077b494e33d20311dfc3","sha256":"e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135"},"research/k8-eight-ends-t16/evidence/GLOBAL-PREFIX.json":{"git_blob":"1d734d8530bd5a52e8ea5114246415900efeb08c","sha256":"a6820bfad6fd665c08755fdff98d64069cb94dce337b0881e035a61bcb981cd2"},"research/k8-eight-ends-t16/evidence/IDLE-REMAINDER-FRAMES.json":{"git_blob":"5f37baa75ca8da485281a7b0fb7f57fe8fe55968","sha256":"2d8b44b6bfe85df299bef25602529867b3316a20e41991786c2063b4c203d34c"},"research/k8-eight-ends-t16/evidence/INDEPENDENT-T16.json":{"git_blob":"cc6d2311674d4b8533e9aa0dc4f4eb4d103f447f","sha256":"8311da24ffd4314b7d0857f7669de063fa76679af7fb67009513c513e47da5b3"},"research/k8-eight-ends-t16/evidence/NATIVE-STEPS.json":{"git_blob":"5998487e22ef5ceb01b26366d2428c02008d12ba","sha256":"782098b0ae9b7a87c75c47edc2e072c25a2c44d3e5417f44bf5f81ecf3d04a6e"},"research/k8-eight-ends-t16/evidence/OWNERS-AND-PROFILE.json":{"git_blob":"1edbefdee5955951b3e0a2dac2b0c291952f6ca9","sha256":"f20ff5901bfe41cddf5c62d59f8c5361323f7e49b78c17d97173e9db5b3baf0f"},"research/k8-eight-ends-t16/evidence/PARENT-LIFT-RECEIPT.json":{"git_blob":"7a05310317a113b848f2fdb6910b83d70771ce29","sha256":"d4705df4d65289e9ced31f625e34559fb26c1a4ca6f74559dd2e31a366b20a74"},"research/k8-eight-ends-t16/evidence/PREFIX-AND-INVOICE.json":{"git_blob":"e6c38b8c65fc7252c1b9e1e706916beac270d16f","sha256":"ef4775a3cd6bb1d52b9f43924b9bb1b378d52662c67e373fed20c1d5728caeb5"},"research/k8-eight-ends-t16/evidence/REPLAY-LOGS.json.gz":{"git_blob":"d52a58630d90fde03dedae215e07843f8f94ceb4","sha256":"81d8a6d5968f206177a4a1bd51baa530f1f9881867ce9925d341066dc1b33f21"},"research/k8-eight-ends-t16/evidence/REPLAY.json":{"git_blob":"03023f7735b6e3e4543bb304665f188a61066e52","sha256":"fa8db7880863b26de2999eab873f9d9b4661da651e17ac2f3b24a888efb1a341"},"research/k8-eight-ends-t16/evidence/RESULT.json":{"git_blob":"968b41d03c4b20f71defbeadaf18fb8fa37ea8e6","sha256":"33708ffb914369d4e25f34824bad32f2962d94027c2710df70fff83def7ec19f"},"research/k8-eight-ends-t16/evidence/STAGES.json":{"git_blob":"3d45be4961e25391662347fb7e233975d7afb3ca","sha256":"b46df79356639d66a30fd50ca9d62b067037fb6072865d7399273ab20ccd3b23"},"research/k8-eight-ends-t16/independent/all_t_bound.py":{"git_blob":"a107fb0903b7c0a67b5c64644b75bd4d6522f430","sha256":"0cf8498903ef9e2a210886aa8360643b43a41f5bce33e187528835c325e3a059"},"research/k8-eight-ends-t16/vendor/pr1074/UPSTREAM-NOTICE.md":{"git_blob":"ebc24a0168c65c48c771dcf4e89359afc418e848","sha256":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610"},"research/k8-eight-ends-t16/vendor/pr1074/code/assemble.py":{"git_blob":"581dd9cb29a45bd68cc651538311b63f6966ad68","sha256":"15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a"},"research/k8-eight-ends-t16/vendor/pr1074/code/assembly_controls.py":{"git_blob":"096ba9cdfe9b5188b54768b845161014c5fb9a76","sha256":"da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d"},"research/k8-eight-ends-t16/vendor/pr1074/code/audit_allcold.py":{"git_blob":"923bf7b675ca09f4d2633e7e53f16a1b23b6d5bc","sha256":"1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc"},"research/k8-eight-ends-t16/vendor/pr1074/code/bind_providers_portable.py":{"git_blob":"97e28da17ed75cd4add54394f6178dba8c9b257f","sha256":"1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6"},"research/k8-eight-ends-t16/vendor/pr1074/code/bit_supplier_controls.py":{"git_blob":"e86b8527b464277a926a788f2493e8f2e091fff1","sha256":"e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5"},"research/k8-eight-ends-t16/vendor/pr1074/code/emit_allcold.py":{"git_blob":"28a08a79da911d8f0e16f4bf8df47c580fb6b255","sha256":"354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e"},"research/k8-eight-ends-t16/vendor/pr1074/code/freeze_spec.py":{"git_blob":"4fe3b8891565ce658f6c05a4f4e8c15751103b85","sha256":"5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2"},"research/k8-eight-ends-t16/vendor/pr1074/code/generated_identity.py":{"git_blob":"74a9b604793f21a9f064c78874341e287ded7a68","sha256":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708"},"research/k8-eight-ends-t16/vendor/pr1074/code/invoice_allcold.py":{"git_blob":"d1dd2212917ad1e7f099287a141f741fd52bdcf6","sha256":"71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8"},"research/k8-eight-ends-t16/vendor/pr1074/code/prepare_global.py":{"git_blob":"655c9470f666138918afbaff077ad2ec5663c6bd","sha256":"8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc"},"research/k8-eight-ends-t16/vendor/pr1074/code/restore_parent.py":{"git_blob":"21135f898a43e35b55e522c2d0b81a5e32033097","sha256":"69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d"},"research/k8-eight-ends-t16/vendor/pr1074/code/witness.py":{"git_blob":"c5c7fbc1142220ce854907de4e439420ac12d30c","sha256":"779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444"},"research/k8-eight-ends-t16/vendor/pr1074/construction/leaver/PIVOT-SWAP-k8.json":{"git_blob":"7a8edeb1e404c441577427e72557e26b06c945f1","sha256":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb"},"research/k8-eight-ends-t16/vendor/pr1074/data/UPSTREAM-PINS.json":{"git_blob":"68486b84e3ae599d776b9613adc901fd8874718d","sha256":"ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b"},"research/k8-eight-ends-t16/vendor/pr1074/inputs/PR589-EXPECTED.json":{"git_blob":"e293ddc557742637f9f679f083a1a282d87b1b13","sha256":"b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4"},"research/k8-eight-ends-t16/vendor/pr1074/t16/build_parent.py":{"git_blob":"bd9e28bd2dc091dcec90a09fa3e556c71579e528","sha256":"82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e"},"research/k8-eight-ends-t16/vendor/pr1074/t16/indep16.py":{"git_blob":"81e1e9fe1554c38865e9d149fb8f4196aad91b4a","sha256":"1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7"},"research/k8-eight-ends-t16/vendor/pr1074/t16/lift16.py":{"git_blob":"613c4bdb3c8ab9cb5f069a52488a673e3ce77702","sha256":"072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689"},"research/k8-eight-ends-t16/vendor/pr1074/verify_t16.py":{"git_blob":"4794150c4cf96cf1c445e2650800e636809fa06c","sha256":"050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46"},"research/k8-eight-ends-t16/verify.py":{"git_blob":"00a5c8197e1fd9eeb25ca4fc686494d3b53fa443","sha256":"e910ca38941209be9b32c3fa6d784e84a824bef9767d2bf492f298d4889cfe92"},"research/k8-eight-ends/CLAIM.json":{"git_blob":"b3bb920f38225a61672758a1954a5a4e34fa994b","sha256":"65f620750f2a438316684b74cdf7cd990d59626b5c073e7dde0fd735ff3e158d"},"research/k8-eight-ends/FULL-WORD.json.gz":{"git_blob":"b2dc6cdce2c062147e05d3162997efb7df84cb4c","sha256":"d28c607df2bc4a82684d3fe47cfb3dba04e3bd14b247c7d4a62a03dff7b2836c"},"research/k8-eight-ends/MANIFEST.json":{"git_blob":"3427028b2a7de1d5d9b0ca7aea694a565498813b","sha256":"bbdfe8589b21557ee0e0625cc485e7afef1f55fd31609bc5f4f9b30de4f6cbf9"},"research/k8-eight-ends/NOTICE.md":{"git_blob":"a756f9da585be2ae9054038812cfcafa31e625a4","sha256":"820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5"},"research/k8-eight-ends/OWNERS.json.gz":{"git_blob":"7a6a9951c33537efa9359441e025b22c03eeaa4a","sha256":"c41fdf51541ecc91af914f264967f3633570500994f8866daf642440a5d843dd"},"research/k8-eight-ends/PLAN.json.gz":{"git_blob":"034f1848ffa454abce5bcf89d09697d84f4befba","sha256":"a3e9e390da3136655606ac919ec60696e2f704457ff01ef9e4d07e90534ab2d4"},"research/k8-eight-ends/PROOF.md":{"git_blob":"2845bae67af876198fd228063aac237a3c8cd5b1","sha256":"1ee3b7d22a39ccb0877ca32f176786b2545dd2b86bbe986eec833b96cd17ba6b"},"research/k8-eight-ends/README.md":{"git_blob":"66e86d3d096b225e1665098d148286e97694d980","sha256":"0f2bc8afeff4054cb8fb62819563a6214d53af916ebf6f28bb2fcd972814362c"},"research/k8-eight-ends/RECIPE.json":{"git_blob":"f0a78535f786108d3b649b642919a23f84999df8","sha256":"6a5d91b95bdba641ab4cc0e3c9b7f0f2adcc5ef22bef7f732d5d76cb0b6fab6c"},"research/k8-eight-ends/SEARCH.json":{"git_blob":"5bc5198e43e2a17e7adeecf758d23cce0b10c1f2","sha256":"f1816698aa4d7deb48ef7e98a711fdc0c74d67bd336d4b8f48b46fe191d7d1b1"},"research/k8-eight-ends/SOURCE-PINS.json":{"git_blob":"7cfe1eabafe607f7de907b4c6395e625c5268c31","sha256":"6b85ed22262e23db1ff0518d874d4e3ee1b4317d642fabdc9747cecbd04ef420"},"research/k8-eight-ends/SPEC.json":{"git_blob":"d7bbe22542e4162cfea0a973f677e7639ab2d5c8","sha256":"555cf868f29c8173b2faf8243aea30ee29f3e12f694c6cb3865a06981592af24"},"research/k8-eight-ends/build_word.py":{"git_blob":"064d2c57538bb49b96ed332f26c166118eee5568","sha256":"18691b1fad3bc798b7ad58b39b433f405e9bb4ec266af0303b563f11b07d956f"},"research/k8-eight-ends/discovery/END-COMBINATIONS.json":{"git_blob":"d24314134c3e79a9abf72b3ce947de3324fb9531","sha256":"db6353685f6f344a6e3a4b8476dde4858fa2fad65fe4e74abcecab93eb07a79f"},"research/k8-eight-ends/discovery/END-GROUP-SCREEN.json":{"git_blob":"968f7525aa58e72ae2bc395c7a986db92b32af80","sha256":"b197a014997ec869cc2768b68070e9ad3cd6d19633b366085a8061a3523fe3ef"},"research/k8-eight-ends/discovery/END-GROUPS.json":{"git_blob":"a4ba0353c1120eaa7fce54fb1750ea5004dab184","sha256":"19b456b91852df5ee2aec79a16ab454c5772bd5160d1cee42e4df6f0cb211bd4"},"research/k8-eight-ends/discovery/RETIME-CENSUS.json":{"git_blob":"32ca3720986c61286dc083802a732a712ef93e19","sha256":"40ea9706b94cd23a6c37ab01afb6e945ab59ac43d1a61433583cf1d297cf57dd"},"research/k8-eight-ends/discovery/SEARCH-TRACES.json.gz":{"git_blob":"bfad65c588d2fe1312a3a983f2b2804c701b629f","sha256":"eaa157000003e807fb466d6c7bfc032dc74857ae4afc5de2ca6d1bf1a631c37f"},"research/k8-eight-ends/discovery/SOURCE-CENSUS.json":{"git_blob":"06eec4c8b5365a8dbedaaa8e4f8f80c372668713","sha256":"aeadcc466b01fd5a2498037f3a83dcecdde91d30327a15c684d77645489e6f69"},"research/k8-eight-ends/discovery/SOURCE-REFRAME.json":{"git_blob":"b6d88563188cc809cb984ab1ce1d289fb13cd6cf","sha256":"d69170ce6443ffaf890a5e3e2b8cecdb74ba4e7b75273738ed367be5643b01a1"},"research/k8-eight-ends/discovery/combine_ends.py":{"git_blob":"c8287b4985e6a907465ccaf9cc9e072dea5acd52","sha256":"ea0e79e0bf4ea7d44cadd179fb5bb6ff13cf6cd960362a1e2e07c63c1969b7f8"},"research/k8-eight-ends/discovery/end_groups.py":{"git_blob":"1d8daeee51100b125661720c381acf266b6ba7a1","sha256":"190a44e768daf0d9076158da9f00e4aa7e682e7df90749d18fbd55f1a04b9b09"},"research/k8-eight-ends/discovery/frame_model.py":{"git_blob":"96ae65853171cae7fa85a103928181479d2ef0e9","sha256":"dee9899272846ee954f8daf6e9f60c9e073c86489b2a594d4d9a4a9899cbd0e9"},"research/k8-eight-ends/discovery/minimize_recipe.py":{"git_blob":"96d2a8587e69c910edbee59f4ad6b7c25f692ee4","sha256":"8fa2216d1228c12a08b5e93b084ce1426ebe99b5abb7f6e614173b56bedb459d"},"research/k8-eight-ends/discovery/prepare_new.py":{"git_blob":"6bb5f63fdfd37475c50fe2e24ddc0fb523cc0ac7","sha256":"b2995d74b63010aa3bd5e4cdc59666a0ca0d9d4244340c694e8eed6171231c0d"},"research/k8-eight-ends/discovery/resize_owners.py":{"git_blob":"c0b5bf16ead4bdab08324f9f228c09a1fde05a89","sha256":"af9b632d51f6b4beddd87bf75d6e36eb3f58b7e467e711208f304a774f8b26f0"},"research/k8-eight-ends/discovery/retime_sources.py":{"git_blob":"ff28bf94a5a72f1dbee2d601bc83c01dbadfde22","sha256":"35600042b16447b24289c73a41462d4eeb6600117529df5baf4fed5aa389d898"},"research/k8-eight-ends/discovery/screen_end_groups.py":{"git_blob":"f61615318d8c7c59e35e68dd6c5a6a1140f2795b","sha256":"a29814cfc5f3f86dc62272fd3cceb2fb0456a3aa25c8b183980291b744e9ab54"},"research/k8-eight-ends/discovery/search_calls.py":{"git_blob":"27682bb609954847bb62f408617cf8aa753912f7","sha256":"5df48ab7775bfee767d71dd8c47585977922568b532c29f4528f2c8ca5ab364d"},"research/k8-eight-ends/discovery/source_census.py":{"git_blob":"d32ef2ce912fce8a7555f9f993c20993520a4a47","sha256":"9808b026a8a7556fbf171f57ca46b32c2e33b36eeb2924e7eee24abb2a7b3853"},"research/k8-eight-ends/discovery/test_structures.py":{"git_blob":"ae086293f63b512928c00fef26315bc305f66551","sha256":"7c550f1c00d58fa1df668179e09c0fd9fe61c35029f548f973727f0b36706e31"},"research/k8-eight-ends/end_controls.py":{"git_blob":"b31ca4e608da58ad4122536d9a532d1afa5193a8","sha256":"9f4a2ad05a3602be3bd89bb1a1e3fc40bb78eb3ad8de3f66aa19e44e53e30e2a"},"research/k8-eight-ends/evidence/ADMISSION-CONTROLS.json":{"git_blob":"ebb2de19b0009478ae8c8dc70e571b5233a2f64a","sha256":"b7df5cb7695f8de70c674a03c10a36682d85b958340d392c8d61e9b969111179"},"research/k8-eight-ends/evidence/ASSEMBLY.json":{"git_blob":"57ce5ba7e5f98a96f465b2da29d75aa62e1f94ce","sha256":"1cf819f87c1e550c78de98206a52e9aff04ec47022e5a63987bcd1dd5d2e51f6"},"research/k8-eight-ends/evidence/ASYNC-AUDIT.json":{"git_blob":"f5980d5df7e152c56e8bb95a5a2e07edfc810cb1","sha256":"2b056ae65d212cfdf4d83778b9be47dc7a9ded6626feb3a20ae2de6ead8dbb79"},"research/k8-eight-ends/evidence/AUDIT-LOCAL.json":{"git_blob":"44b1c126324c0871e447a3d297f6ca259da47210","sha256":"4ebd818fe459c8b729aaf385d6b2946e58316414a9c29c5ba6a2335d63af7ecf"},"research/k8-eight-ends/evidence/BIT-SUPPLIER-CONTROLS.json":{"git_blob":"ab2a5b51a47c03431222a8de742f8bcf6eaa8c21","sha256":"4fbf09922859926ed79eb4874a0c3414a13991de2ffc64d30a382e7eecb2c2a4"},"research/k8-eight-ends/evidence/CLIFFORD-REVIEW.json":{"git_blob":"cf3b26515077c21a382b7e46c52d4b826742fb36","sha256":"2bfc112221995431c25a7257fdda5a2e9b2631c1712a48ab428f946849cbac91"},"research/k8-eight-ends/evidence/END-CONTROLS.json":{"git_blob":"0ca420e48a7045f13187077b494e33d20311dfc3","sha256":"e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135"},"research/k8-eight-ends/evidence/ENDS-8-AUDIT.json":{"git_blob":"2fd5548b287b54aad42df35fc329714837f355a8","sha256":"5381c41fa10fdccbc5c5bdc7059ad839e508d7b8bc3a139bc8ad6b45c20b01c3"},"research/k8-eight-ends/evidence/INDEPENDENT-LOCAL-REPLAY.json":{"git_blob":"bea87a94e52fb892f740ce1ae67bcd85e6236265","sha256":"00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99"},"research/k8-eight-ends/evidence/LOCAL-CHECKS.json":{"git_blob":"1e00dcd2fd36613c0eac206e0d1c6f04732cd568","sha256":"3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba"},"research/k8-eight-ends/evidence/NATIVE-STEPS.json":{"git_blob":"150075a56bab717bcb8c487d177bc2d42d390083","sha256":"02f6ea9122362ba1e408e72c331ffc850a2fbd1593afb06554aa0ab5c7aee0f6"},"research/k8-eight-ends/evidence/OWNERS-AND-PROFILE.json":{"git_blob":"a3f72feddc55bdcaaf5ee6c1396a0778b4fc6c3f","sha256":"a04d3db0d157b197d9395967163e155f0d8775a06db2ca4318258830e2abdaa9"},"research/k8-eight-ends/evidence/PREFIX-AND-INVOICE.json":{"git_blob":"511218976e3b80f9934b64eb3108979dbb8076ee","sha256":"66650384488db73bf3d5c7742abaa9c116877845bbb4ef46d6fffe235ae7d1c0"},"research/k8-eight-ends/evidence/PREPARATION.json":{"git_blob":"4dda6ee9244244cac144fd8f47ca1ab6dea0cda8","sha256":"cd980d9b80de65d1bd9358d590a479fb85d75fc4e468a12539cd5a0388190e8d"},"research/k8-eight-ends/evidence/REPLAY.json":{"git_blob":"89fe036ffef3b4a737bdc47dd5d57146629d3cda","sha256":"fa6b65403a28ce8c717412b0d90dd4c702bcba7e3c530bca932f921f0dba75e2"},"research/k8-eight-ends/evidence/RESULT.json":{"git_blob":"41e69636ea850185644abebed831bcfa9097ff03","sha256":"904b0cb2082f6f109845d30f6ee4bb6f766ea493c4cee6a637634362a30785b0"},"research/k8-eight-ends/evidence/STEPS.json":{"git_blob":"c033f7bfecb10df81a5c48216cc1d41cf42cbebc","sha256":"5577123fa4422fb80f412dc3713bbd7eea5c4c50b63db635f01585457c9d2960"},"research/k8-eight-ends/evidence/WRAPPER-CHECKS.json":{"git_blob":"c46655af0008003a734927a6aaa84ae40826616c","sha256":"b6c7fdef5893b117434f39b6561b80504482fa748e23b840f77a07b137e1d1ea"},"research/k8-eight-ends/replay_native.py":{"git_blob":"fb9f676e5d2aa62d1a14a0d1358aab6ca0d5cd59","sha256":"1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6"},"research/k8-eight-ends/verify.py":{"git_blob":"257c8fbb8c8f9bbae5d304acebd489c4a24a33fd","sha256":"d57061431e087fb755382e3b362ea7421e5ee3dfae5b3ed81ce5228278ba58b6"},"research/k8-joint-entrances/CLAIM.json":{"git_blob":"567f50d670720c0e8aad436db70b2d6a214e85a1","sha256":"bb8356c6f8c9e3f3b1a4b02c1be6bbd73e9c4fabbef02a0ed0c9cd897607c825"},"research/k8-joint-entrances/FULL-WORD.json.gz":{"git_blob":"3dab3a16bb32b27c6d957586cca04d70d091db47","sha256":"a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718"},"research/k8-joint-entrances/MANIFEST.json":{"git_blob":"740e035cdb0cb135d3d3bacc6fa093da6010d6e6","sha256":"a6142beb7c9729690f9980cb84a241dc52b82f7e760fec82a810c5cab7e78f6f"},"research/k8-joint-entrances/NOTICE.md":{"git_blob":"af0170afc225c1a6a5e7ad4ba62cf7897af6ca24","sha256":"afbd38d6c8a232ea566c296424a86420f204e6cfaac565c0a147340bda3d3da6"},"research/k8-joint-entrances/OWNERS.json.gz":{"git_blob":"e1ae9826d43ac58287e89a93fcea43b6037fb815","sha256":"7755af4108f066cf1eb13dbaac0a0fbb97a2852ffa7403588d2b5218c81101bf"},"research/k8-joint-entrances/PARENT-PINS.json":{"git_blob":"bd7ca6bbf524620bc24768dcf9345543f16ee909","sha256":"ae43954e4cee8951e9bff82efd728fe18e12f44e62ccc4d0177e31108ec6c5f0"},"research/k8-joint-entrances/PLAN.json.gz":{"git_blob":"c7d39df72ea24e732800923ce699ca977f16d0b9","sha256":"e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310"},"research/k8-joint-entrances/PROOF.md":{"git_blob":"bffbec574eb4f59ec167c7bcb4b40011b62d105c","sha256":"7b856d7f73d506b7ee2d6f5f4e87a63ce984596b869d05d39172aff6ab460ad0"},"research/k8-joint-entrances/README.md":{"git_blob":"9f122d8223182789433b1444734485451a7a2e02","sha256":"4eab75d721c9ee7e52785a2fa2c056bfde3d8a1936a5e99378f0951debdd6ca1"},"research/k8-joint-entrances/RECIPE.json":{"git_blob":"592f32405d846ec5b61a626a896c26b9e9aea418","sha256":"2257aa6b16f2650a4213c5a14b44dfff967954d376e72ca04e089069aeb11aa1"},"research/k8-joint-entrances/SEARCH.json":{"git_blob":"d97c030823e9badf303e34f1aa1c76ed5bc9b45f","sha256":"bd5ccaa57dae85b61c8489977188cbc7e88cf005d561a7475fb3b06b6f172517"},"research/k8-joint-entrances/SOURCE-PINS.json":{"git_blob":"140e9a1846376000a1882d8726fea832a5f2c281","sha256":"e222854342bd87dd68488b8a90d83764029852e8e99a168c677a3206393ccb94"},"research/k8-joint-entrances/SPEC.json":{"git_blob":"9aeea5c043aafa9ce0cd5f05fe6b404de5d5454f","sha256":"55bdb68d5d126c6be0e0acc419bd62301a978afd514f9834ed1e08b1aa4f563e"},"research/k8-joint-entrances/build_word.py":{"git_blob":"60fb3754c9e997b5152fd626f067c8d500fd80c7","sha256":"317ef4a9fb9fe9fcf59b98f28aeacd6211fc960768f316c54bec9bb55985de9e"},"research/k8-joint-entrances/controls.py":{"git_blob":"f3733898289777a70bad0e143d29adc144462943","sha256":"1af761754245287b5158fe23465d3e290ae0b421e3ca51e4bc1d4d6219004673"},"research/k8-joint-entrances/discovery/COMPOSITIONS.json.gz":{"git_blob":"b6478f96aa2f6f6bf8e16d42ca1567207110d459","sha256":"17e1ea1bc3a363be6a060a073a829d958b2a2e2aaeb3ba6ac5da43e94fc40ba2"},"research/k8-joint-entrances/discovery/INTERFACE-CENSUS.json.gz":{"git_blob":"1ce49d8d8968a5592b070b80a8bfdba4ceb9faac","sha256":"cbd8b16e6fca3aa3aa553d39541950db42282c9d38e87d5fa89f5acdd3be568b"},"research/k8-joint-entrances/discovery/JOINT-FRAME-SOLVES.json.gz":{"git_blob":"2c787d45b7dd30edb9c7d6663e2379b7e16234b6","sha256":"0bbc11d747ce59399c6b479d0e9586ce745e88c641afcbf8f94d0a5b94713afd"},"research/k8-joint-entrances/discovery/JOINT-FRAMES.json.gz":{"git_blob":"ceca6e817834b1e7928432d81b6a95196c1c20d9","sha256":"e39a93b938bc04d04be0195b5389bfc22100f31351747cf4cc16e27b5f23cd5e"},"research/k8-joint-entrances/discovery/JOINT-GLOBAL-RESTRICTED.json.gz":{"git_blob":"6e731e1408d7a24b554b15a91e4ce9a58821f013","sha256":"f01db57b9d6565222ae7cf416f272efc7d983b90ac24077cff5c4dfde623f6fe"},"research/k8-joint-entrances/discovery/JOINT-ROTATIONS.json.gz":{"git_blob":"d29acee4422e29fe4d3231b329376a9b35d77f95","sha256":"bb50f051f7fd4ef31044aef3c2d00044ce12fc00775641ce08c6dcb095f98276"},"research/k8-joint-entrances/discovery/ROTATION-WINNERS.json.gz":{"git_blob":"29848c06316b30d057de5b74717137000ad0055e","sha256":"c5a41d7ea306751f1e447839dbb90f15ee27cb51d30061c3f65660a34ff6f1ee"},"research/k8-joint-entrances/discovery/ROTATIONS.json.gz":{"git_blob":"bb2cbe544f1c7b89d3fe04a3c5d08266300a3598","sha256":"3b2f6222964d7921dc3d82871d7396850811c7dde66703671e46c33474c0e03b"},"research/k8-joint-entrances/discovery/compositions.log.gz":{"git_blob":"c24837f3689bbdda4549a7a50bb9eacec5aa08ed","sha256":"55af64fbcc020d7f3e9c0cf9f68b88b1ee09639f0f42cc91f737f7312fa40a51"},"research/k8-joint-entrances/discovery/interface_census.py":{"git_blob":"b520e62c5b27e58a72e4a5929656d9dd95c4d580","sha256":"8e0911c2f344bdd7df14ecb40d295f2aee58206b3e98eec329d3442e09561e0b"},"research/k8-joint-entrances/discovery/joint-frames-rerun.log.gz":{"git_blob":"55d872dc473de34617a854176a2421f0e9d10882","sha256":"97d74a5bfd9035f73474a2015db242731ff841c8f2785ca4dada61cdce6f8dcc"},"research/k8-joint-entrances/discovery/joint-frames.log.gz":{"git_blob":"7364e414ddb4e4e4b3d72915d25349b81500840d","sha256":"93c850e3f8645416e034ebc6485a6a85e08e2628fcb08546e92d84105d8948ac"},"research/k8-joint-entrances/discovery/joint-global-ipm.log.gz":{"git_blob":"7b68d49a3d2284dcc28767bc7c267b7dff5b7612","sha256":"a3a1753c93a5aeb4d08ce043a90ad15c7affb40132dcc39e73350bcdf701bbc5"},"research/k8-joint-entrances/discovery/joint-global-restricted.log.gz":{"git_blob":"27827eb4f2950d09503cfb8944060362fa095d43","sha256":"c0da6470ea6a6483ac52345541fc54573154f49727b6515627a211db705aa20c"},"research/k8-joint-entrances/discovery/joint-global.log.gz":{"git_blob":"65906406dd73f2ca206752e13ce7a8fcf7c45cc6","sha256":"03571dbffc0be03d6565e151de624a854bb843f43633496e49a089d92a86fe34"},"research/k8-joint-entrances/discovery/prepare_equal_inventory.py":{"git_blob":"99871c5c0870fea159a47a77af054790222d1a44","sha256":"4d24b34fb9a3b92dda936b4c40f412f7f814c8e8bc4c563d58f39e32a5ccdcd8"},"research/k8-joint-entrances/discovery/rotations.log.gz":{"git_blob":"69e9a78ca0e5157ea93a8582836eff5ac3ecc605","sha256":"e7d8d01b7a7c7d2b5c7f4e3dda3e137c62926bb18203f37509645d5b0b3c6372"},"research/k8-joint-entrances/discovery/search_compositions.py":{"git_blob":"8a8967f14b95a02180b1d71f748f60a9c099244a","sha256":"42447958e16ce97c7a6e06787345a67b6d1a0c5d977fbce9a29ba95dea4cdb8a"},"research/k8-joint-entrances/discovery/search_global_interfaces.py":{"git_blob":"5c708e1b826a955f407f0255d5228c60cedd2cfe","sha256":"c5be35e81982219d58d5452a4084434c01a5ca1767f3dcc06733e4b5ff9caf09"},"research/k8-joint-entrances/discovery/search_global_ipm.py":{"git_blob":"ec8ce03bff80e6e43b3f8aac296d2108e74b039b","sha256":"d8f2b9fbd185ae14bd29ec67a837375c081da656c2984f563f1938fdb3760760"},"research/k8-joint-entrances/discovery/search_joint_frames.py":{"git_blob":"ba1dd146aa9b67c6fcfaea3cba35111c2ce8e91b","sha256":"9361a5cf23234c7ca08755e76f5e7f6812571ac54e8c7f4ecbc68689446478fc"},"research/k8-joint-entrances/discovery/search_restricted_global.py":{"git_blob":"7c737946852b6cbf3048298795e8ece7ff1a6c5e","sha256":"4daf6ccdf45a73dbc8d4b8c5ebf6bd8792b012c87ccf2247f24ba9af5ec77c8e"},"research/k8-joint-entrances/discovery/search_rotations.py":{"git_blob":"d9a447acde999397094ddb92cc118b4f5f1cc0ec","sha256":"1e92811a3f84819f9fae940b303fa08decf3e2377208fb854a2604fd9e2f7aeb"},"research/k8-joint-entrances/evidence/ADMISSION-CONTROLS.json":{"git_blob":"d4b713501be87972f3a3435796fad42bf6f4d8f1","sha256":"f278fa3de05390c2a282d8f5858167a41940d8cf027200e373bca0b180b4324c"},"research/k8-joint-entrances/evidence/ALL-T-BOUND.json":{"git_blob":"aa877e99dbcc58ec9efe90e2a200e9db6434e89f","sha256":"12c0e54abcd1044d28b94b2dacf309c1fbc14afc9ac299cc2dacec30c38ffddb"},"research/k8-joint-entrances/evidence/ASSEMBLY.json":{"git_blob":"2a7f39918bd9ed4a01543e2de65343fe53cbcea3","sha256":"ebac2870cf0f52d6ac0e8213bb766f4b980a253d6d9d207a0e29bafca8121b4b"},"research/k8-joint-entrances/evidence/ASYNC-AUDIT.json":{"git_blob":"49cae6a085a8b3044a65519ef2e559cdd4ca4dbe","sha256":"e9914607d9f7409a23c6e7ad94b5c3d46f384622d4968efd67c9dd3d7cdd3855"},"research/k8-joint-entrances/evidence/AUDIT-LOCAL.json":{"git_blob":"7d34380be998f601126429d45a6b779793e7009a","sha256":"ad7562a9b58a4ea4ab5398f82d4274d99a3969865bdd30e135e80bac3ceb5b84"},"research/k8-joint-entrances/evidence/BIT-SUPPLIER-CONTROLS.json":{"git_blob":"bc4aa46a436299d52a8156fe8f3d4f0196c03bd4","sha256":"549c240835fe910d23d17ebceadbeb5cb4c898c07bb51e1b122ff24ce227519c"},"research/k8-joint-entrances/evidence/CLIFFORD-REVIEW.json":{"git_blob":"20324822e2ca9747f15d41e753c5c5835be624d0","sha256":"570f97a375f2acf7d133f563c61c0a8080e8b0dc67cb0299597609029b81906e"},"research/k8-joint-entrances/evidence/ENTRANCE-CONTROLS.json":{"git_blob":"721c9b0dd51824ca105470eadae37b6a03483b4c","sha256":"8ab757a8c7224d99f0626b551f8d55167e2f22c43e6f58c0b02a9ab43d5f2c65"},"research/k8-joint-entrances/evidence/GLOBAL-PREFIX.json":{"git_blob":"8aafa48418c3cde6638ecd1f70e6cd0fd6d60cdc","sha256":"ac3b569ec9013ba8ae24a3a5d97e902249f3d579c045a3b9c4867cabd44c70fc"},"research/k8-joint-entrances/evidence/IDLE-REMAINDER-FRAMES.json":{"git_blob":"ef63299279038bfce08842741a9728e37d0e3d3b","sha256":"dca4eac71c7b5d5fa89f743b37d364c6c2d2097b4187d8c719f29922e10aac9c"},"research/k8-joint-entrances/evidence/INDEPENDENT-LOCAL-REPLAY.json":{"git_blob":"6c6d8d5188a93e0a6fefee92231e2db5a96fd866","sha256":"2bcb926b433bfc223997efd5d7212899c850a1ddb204269589b1f3a7151d82c6"},"research/k8-joint-entrances/evidence/INDEPENDENT-T16.json":{"git_blob":"d0d0bb88fd459c5382e68aebafa3955577dd68d9","sha256":"c9bf9894254223863056f6588176774d9dfc68e7654e454d31340a74c0270341"},"research/k8-joint-entrances/evidence/LOCAL-CHECKS.json":{"git_blob":"17cb61022eaf88433185cb31682e751a0cf463e3","sha256":"654ca95a7f9af260d088f29c1791686f54f66cbbe735b9ea2fd5114b377727aa"},"research/k8-joint-entrances/evidence/NATIVE-STEPS.json":{"git_blob":"f3c06ffd8d6ab763ac7334e79983ff773d9f1e0c","sha256":"b31c5847a9fb317c09bf9ea2e4b40d0613a0dc7aa3441441105ad8aad6c7e437"},"research/k8-joint-entrances/evidence/OWNERS-AND-PROFILE.json":{"git_blob":"5637e44807a22b74030b3275274535a47acd3d48","sha256":"2e2889604e2d944dcd6b42d3006cd6ff35feef779405d58568bab081ae9ebadc"},"research/k8-joint-entrances/evidence/PORTABLE-STEPS.json":{"git_blob":"30a88871d329c76a59c880ec12e33f778f5053c4","sha256":"a9ce78fde0db630557305bbd1f629649d8bbe0df65c390ae0a9a08279cb69623"},"research/k8-joint-entrances/evidence/PREFIX-AND-INVOICE.json":{"git_blob":"3ca8cfa35c6344a6d70132f5f3dd78dabe53aeaa","sha256":"8215609ea123187eae656d92cca1afeebceceb286b6d3474d1688ba1952a0681"},"research/k8-joint-entrances/evidence/PREPARATION.json":{"git_blob":"5e50d74454dff6058eb107d99a1b6c37752e8866","sha256":"4a6f3ee54f0296e2dcfef6349c5d1c7a748bd82a28a9df21d063ee1d1bd52a45"},"research/k8-joint-entrances/evidence/REPLAY-LOGS.json.gz":{"git_blob":"f06cf3f33e0de5851efa36a35dca5f8609fb760f","sha256":"24ba73b37f9cf8a9ff99479ad8b64d0a11298aaf892399769f5790a881a0c1b2"},"research/k8-joint-entrances/evidence/REPLAY.json":{"git_blob":"d4ddb8c4dd92b5ad2178a06f98da662801ed3d68","sha256":"247ecc5482230bb60433b595a822431d3400de41f6a34a7d3d29e940ffdc64ef"},"research/k8-joint-entrances/evidence/RESULT.json":{"git_blob":"b014ed625e90aee9cde3be71dd10ada6d2c48dc4","sha256":"ca2230332afe446ee95d7803167ff9f373d1041b182e4de9f4f02e31fd3177f0"},"research/k8-joint-entrances/evidence/STAGES.json":{"git_blob":"8df006759f7ed2dc05207e74807b6b806314d85d","sha256":"b9b423babdd1d44abf014af323770f810ffdfee62760aa147bb77a4987f63979"},"research/k8-joint-entrances/evidence/UPSTREAM-COMPATIBILITY.json":{"git_blob":"e13d511d333bf3198a63e799c3e67fcfa251c577","sha256":"849a7a5955f230c97c1538f7d81a7b18da53f3ee82997137d18f7fc8cc869333"},"research/k8-joint-entrances/evidence/WRAPPER-CHECKS.json":{"git_blob":"31af707df8969398d50bb5a92c2d0f4e951dfdfd","sha256":"f2a005b54bea64d66633d8a82d0454348172da3b88361081a72126bf1d51744d"},"research/k8-joint-entrances/independent/all_t_bound.py":{"git_blob":"3350fde2965818b42899e54bcfc4cb616ae1919b","sha256":"a536866350b343ee0ece96f97021ea38d9164c6d6d557e54cf060935b9e129af"},"research/k8-joint-entrances/verify.py":{"git_blob":"0da87fc2294d749843674ebcf1e6fc9213874c2b","sha256":"4359c9c828714887c026aefc42ab93ee89d8aa8b1553e4d66b90c11ddc677647"},"research/k8-three-demotions/CLAIM.json":{"git_blob":"a49532ec86b4f46689d9c96a32665128239b8ab1","sha256":"5d2d7f3a0c57373942d588303f9736db01d4dc69fc8b35b6e2945b10627905db"},"research/k8-three-demotions/FULL-WORD.json.gz":{"git_blob":"25a6773a4b88bf90b040fb21dc43e55eb7e66069","sha256":"a8a1362e1cf3bb4d5a43e077bbc842d140eb8a4420c16673757c486ca001f1a8"},"research/k8-three-demotions/MANIFEST.json":{"git_blob":"642d1a497938679fc717bbc6da31241b387f3baf","sha256":"26d4340ad73221973f4619cf3a4f43cdd6978132955b316919b533099b3a4408"},"research/k8-three-demotions/NOTICE.md":{"git_blob":"9f759cfade4eb3645b1db7374d4ddfa3f2bc3b30","sha256":"a0fe85fb2207f0e6831a96deaeefb65afa379c1377a29f0b586f1db4bb4b2137"},"research/k8-three-demotions/OWNERS.json.gz":{"git_blob":"7bd0fecafede88f8d65ae4d4a296dce38546416a","sha256":"93cb570c9496725ed5204d9f890ddf337ed8c3fb1a1b980de3e905f65e71b2dd"},"research/k8-three-demotions/PARENT-PINS.json":{"git_blob":"bd7ca6bbf524620bc24768dcf9345543f16ee909","sha256":"ae43954e4cee8951e9bff82efd728fe18e12f44e62ccc4d0177e31108ec6c5f0"},"research/k8-three-demotions/PLAN.json.gz":{"git_blob":"864cdd212fd1607b6b7d0a16077571ce9f8d4545","sha256":"c56ac6b25f119107c8470e01582a8be3d78421553b684c113582c6078f998e36"},"research/k8-three-demotions/PROOF.md":{"git_blob":"2cf325e8d5f9caf42185179ff07b17fd63710078","sha256":"072c10a2380c9434758f59f410cebeee620efa355e434a3f3a341896a7650514"},"research/k8-three-demotions/README.md":{"git_blob":"3666a40d13e55eab951f80a4b5e47fff246c1e29","sha256":"6d8ea5173ee09fb104c28780812f9f4a9d0e30fb85f09f567e2d9d63f4378381"},"research/k8-three-demotions/RECIPE.json":{"git_blob":"ff2ad80f71cc54f1127083ab473518cd68746860","sha256":"0417fdf34130a389aad1ab50c7fd1a9bdf825fd6722ec7db408f65811fd7a363"},"research/k8-three-demotions/SEARCH.json":{"git_blob":"d763543a3e6d34337316a33215c6b74090fb3d80","sha256":"728e09e77969828cdd1ff187476c6c4d668190535f8b77efc4013f6565dcf9c0"},"research/k8-three-demotions/SOURCE-PINS.json":{"git_blob":"57ce7f32fce401c8a022675ad6d72a1d2802fca6","sha256":"d23f4c3e6c68a1090b2d9fb92fbbc075a2c125b60fcae1fba7091c1778d893c0"},"research/k8-three-demotions/SPEC.json":{"git_blob":"a30b18a06ab4d93d7fa8ae754131fd7d240e02e5","sha256":"448141cbeeb6747f742360b72b5561c3c398decf0a308a559f4c0acd93db800c"},"research/k8-three-demotions/build_word.py":{"git_blob":"643da2958481adba54eb9cb70b0262a86593d19b","sha256":"5264e1c0c25f9414a0b24863e1e98dc67bb08a4fdb94a7ca2aa27c337ec634e6"},"research/k8-three-demotions/controls.py":{"git_blob":"cc255455697e906b87543e5b8a41096a1ec36b16","sha256":"0514ba8c1854ef49abad5d0c8cf436f68d1146de89fc3dca86ed9392bc48c62c"},"research/k8-three-demotions/discovery/COMBINED-DEMOTIONS.json.gz":{"git_blob":"d31438742954511078be8f40b16cf6a3772ff681","sha256":"d90e835aca3df28ab2b995d068e8fba8d73b861e1a740c8768b5719720e79ded"},"research/k8-three-demotions/discovery/DEMOTION-4.json.gz":{"git_blob":"9479a0c05ae52c7a86bd3f4096badcc5da4c4a35","sha256":"663ec933b38c01543d341ec92e2258c322a1fa121fe9b58d9e9f4e997f03605b"},"research/k8-three-demotions/discovery/DEMOTION-5.json.gz":{"git_blob":"5fa7da6010a8b22ca7daa99289c38dd6468b2a21","sha256":"064d397af864a9289c557022b52b4c00fcf036c2bc028efb9ac1b13121a935c9"},"research/k8-three-demotions/discovery/OWNER-SEARCH.json.gz":{"git_blob":"b7f3d16b94434c85a373baaeb90f536d0f5eccd4","sha256":"cba4ed8516f54abecd679111044c7c62759ba73289aad0695daf386815036b71"},"research/k8-three-demotions/discovery/OWNER-SEARCH.log.gz":{"git_blob":"10226f7225e32703630e363f7d18c5117358ff2d","sha256":"5aac089fd94aedf417278e06a1585394e1a1da5cbd851d5d861a55cc1313a404"},"research/k8-three-demotions/discovery/PRODUCER-ELIMINATION.json.gz":{"git_blob":"66e123f05e1fce705621f7960ccbe084c57be04c","sha256":"697210c6b26c506be9f1226e1ca19f12fd6f5ced67e2591cb3d9d22fff6c698e"},"research/k8-three-demotions/discovery/SCHEDULED-ELIMINATION.json.gz":{"git_blob":"c8945791d75c861aa6db6d3fb072f69b273b3c1a","sha256":"d84ad020fdb8d4a1209e4a872485bfd03998e60d6afdd66977b6263ea1e50da4"},"research/k8-three-demotions/discovery/demote_entrances.py":{"git_blob":"b8cdeab469b194f6b5bd813b93860cb715d970fc","sha256":"9ef34ab2969ebd796fd5295c8d336d6731420db9c5a8e33c76a851ebd0c885c0"},"research/k8-three-demotions/discovery/eliminate_helpers.py":{"git_blob":"3da04596da07e797176a5a717ca50447de6000a9","sha256":"6fd840a849e85eb9e2de857b4e3f8591fe0b11ab5bcf5059a0868768e711b065"},"research/k8-three-demotions/discovery/pack_demotions.py":{"git_blob":"3a0dcf2e91779530a930d5e5ceaba6cf25315de4","sha256":"b831d8a76eff7f342329f7025848207d48bd2031054f4664fd39415a94ec57c8"},"research/k8-three-demotions/discovery/repair_pack.py":{"git_blob":"adf5c2d7af2abdf779ef6b973b80d140a6dd6e2e","sha256":"08d23d527a5ca8269cab478ae372ea754406ae1efe329d427d6d720da4b0a32b"},"research/k8-three-demotions/discovery/schedule_elimination.py":{"git_blob":"a682791a05bd5c3287fd4ba8000e39fa5572e6d7","sha256":"9a4cde722068902eda94c8896994345542e9586491daf2a48804b3882e9e46b4"},"research/k8-three-demotions/discovery/search_columns.py":{"git_blob":"c7957718636c0f17d024828b9dba4262c75eef3e","sha256":"edbb093207e21ee4301382f00198c6eccb197949068e96c76e46a2e61dc90f82"},"research/k8-three-demotions/evidence/ADMISSION-CONTROLS.json":{"git_blob":"f139b75e8202b9ddcb7aca86159f5a114c38177c","sha256":"8d4d311c8a598045aca089f0962d9606abf1749a5acc80bd4221b79fe055534a"},"research/k8-three-demotions/evidence/ALL-T-BOUND.json":{"git_blob":"79bda64061ba9e7d821a88355d390439fd51df75","sha256":"d4fee201f6863bdb3acd26948f45087c308e36e3db2db713d67e6ea98f5de92a"},"research/k8-three-demotions/evidence/ASSEMBLY.json":{"git_blob":"84063fb2cfa94092c32f99849d351d9a24b082e8","sha256":"e2f32c70ce02ca072f91c5df33db8f27a0d084d83f220d64ac746d4b8d68fd03"},"research/k8-three-demotions/evidence/ASYNC-AUDIT.json":{"git_blob":"bf9e7b5f30fa3e21836f508d8bab66e452f7b602","sha256":"502132cf61ec75f772c335440778d5e682a117bed6f282ecbb63e87b4c92da1a"},"research/k8-three-demotions/evidence/AUDIT-LOCAL.json":{"git_blob":"134b2d66c0c3e6649aba5065161db7fe2cbf7da6","sha256":"9f171f1dd3e6077b877717bead4c48bceba7b1b2122fe3a35e1f84d2bc2844b2"},"research/k8-three-demotions/evidence/BIT-SUPPLIER-CONTROLS.json":{"git_blob":"8a8378ed2fe30aa2297a7d8d35c841db65275370","sha256":"29a0fbffa42ab44a53d9b1b70749d385e7d22d23e163269b4db580078a313992"},"research/k8-three-demotions/evidence/DEMOTION-CONTROLS.json":{"git_blob":"ae800b2c3382814a720c6e9bcbe7b8ba5cf5594a","sha256":"1f79ea173ae9c199e1130c4c47b1e8535aa1c59b265d774c26e9ac8adb4906f3"},"research/k8-three-demotions/evidence/INDEPENDENT-T16.json":{"git_blob":"308e126bc1b71a5379c399bd9858883a96352e73","sha256":"76bef93797c561eb2e343e91bd825ea2463b0e1bb29961e7c1ffb6436b303d59"},"research/k8-three-demotions/evidence/NATIVE-STEPS.json":{"git_blob":"67d561864371cf04bba658341c0bd4af1bbb8d0f","sha256":"da092696ceef4cc48d0dad324528ca46e18ee2e892e9a1d669f626cd51bd13c2"},"research/k8-three-demotions/evidence/OWNERS-AND-PROFILE.json":{"git_blob":"9fc2ed258be0a50f69aa5097c0bf5edc8e8061fc","sha256":"edf9f49f4aa302e2cdf8197fdae43efc648efd511810b9c7a1820cfa7cab2914"},"research/k8-three-demotions/evidence/PREFIX-AND-INVOICE.json":{"git_blob":"9db24239ba70eaff8bcc2c000947bb905d63d2a1","sha256":"92a64fa8f6f6109ad7fec10646690f012a3836e83c4920fd271a1278a7981068"},"research/k8-three-demotions/evidence/REPLAY-LOGS.json.gz":{"git_blob":"6af6ef6577359d507b1da903391c1ab4ee22ea06","sha256":"87306aff46a5026c6f62425ed6f45265d96cfdbc12f61eb47bbd6d98db9772c6"},"research/k8-three-demotions/evidence/REPLAY.json":{"git_blob":"ed7604b67353af1a9d79c25f6edaac71f592e042","sha256":"2c9204175b51a9a2fdf4ee99ae85ba6a30c9fd848489968637d192de274e91f1"},"research/k8-three-demotions/evidence/RESULT.json":{"git_blob":"dadf595357b2f8def2c644a39b5362761db37295","sha256":"878e1c99b02cb0b53cd12c1cc266fe9399adb56169d85bf7bc258f74ecc2dc5b"},"research/k8-three-demotions/evidence/STAGES.json":{"git_blob":"4b90d90796af7317e2351d93868dbaa7c81d9c19","sha256":"c2c9c1d9d121f01a572e42c606c18b1e76911a07dd999deb102c14e7a518897b"},"research/k8-three-demotions/independent/all_t_bound.py":{"git_blob":"36486c25bc34ff42cdb3cbd5ddaed9f07d50e57a","sha256":"2f7f23424c8bf470161a116cb0be7ef024ca685b1b7e1fe88dcec90186c7f2fd"},"research/k8-three-demotions/run_global.py":{"git_blob":"4ba10b2e8437a0aacd79b7275216b5e58c9fa730","sha256":"04ead24a91d11234e04f79753e3c2d435d9e4dd96c7c3fe21a0652921af85c83"},"research/k8-three-demotions/verify.py":{"git_blob":"87a797d338c1ba6b988842d20518e97c94e70987","sha256":"8a15ed2a8bb102f0edbe2d43e31e187c677b569072d9517e81682892a9883ceb"}}},"pr1169":{"commit":"c79df8e3c61676445f8e1782814450199d8221e6","files":{"research/three-demotions-t37-composition/CANDIDATE.json":{"git_blob":"62bf49bbceb34cb3a92a8d15280cbc00dacc5d9e","sha256":"43cc85370e98160f870484754240cd08a70cbdbc5ee3f75f705b7725693ff6c0"},"research/three-demotions-t37-composition/GEOMETRY-CHECK.json":{"git_blob":"2b1bd1cbcf96effdf8ec721258e0a9c7ea369d6c","sha256":"497c71976c01378b84552a245c1359fc53a6b6474b0c46c00546a419710ca826"},"research/three-demotions-t37-composition/MANIFEST.json":{"git_blob":"f1ea5b41ca5c16445b690bec9b962731650cf28f","sha256":"d7c3db76d3151638d95a47d0f8cddd6ca6b8d4500f6c1be1fe6ae3fbd0c8ab95"},"research/three-demotions-t37-composition/OWNERS.json.gz":{"git_blob":"a49281b64f6f963bc217db8b2af04a1d40f6dad2","sha256":"449d230ae8ea9b5adf2f4a06da0dd89473e6e259b986e46ebf7407e169ac1d4b"},"research/three-demotions-t37-composition/PATTERN-FLOW.json":{"git_blob":"63e8408b051cb2f816133f2263511b105e714573","sha256":"d7accd36895a218d0db8e1434ea013c18d924059e4b32f25a21e3529539d7352"},"research/three-demotions-t37-composition/PLAN.json":{"git_blob":"518ea50eae94eb1bc00c7e94c9ee1ac8fed6ba5d","sha256":"2c5e493cfdc4c424ebf20c91be089408dc04f183c979a9b76efb867b6f357424"},"research/three-demotions-t37-composition/PRICE.json":{"git_blob":"38c4a28b5f41bb8587b46aceb578329b5cce7dd6","sha256":"dae64ef8026dd50ffce655f3094ca263e680a25db29669ab70a40fabf5db11d2"},"research/three-demotions-t37-composition/PROFILE.json":{"git_blob":"7c35d9f51fa234bc9906d1c010b918f7194e6723","sha256":"440912ba08baa19af76194a7bcd8640b73926f5182c97bc6b73c3587b0256858"},"research/three-demotions-t37-composition/README.md":{"git_blob":"4d9b74ce1325fbc30aae90292e42dabdc0b93ffc","sha256":"b895d31ff6ebfec43b94a37981c9249f922999cbfc1ca1a50b05756e34ec2d3d"},"research/three-demotions-t37-composition/SEARCH.json":{"git_blob":"0747d3f3a6f73d7c6946180679d07517c68fb31f","sha256":"c42084bbadd361f90dc21ffbd300c03b3739a57e9bf978e4272e0c822bca27bd"},"research/three-demotions-t37-composition/UPSTREAM-NOTICE.md":{"git_blob":"1e3b40de3258a81f0eee09ce0948bcb03dfb594b","sha256":"b97fb4731e84aef736c58a9c126334eb5b8d3a057a8d9d45b4ffff24af65c38b"},"research/three-demotions-t37-composition/construct.py":{"git_blob":"de52d3383167fe45e72ef193a5f917067f061891","sha256":"eee2edff41871b929e4c85289a2bd80842f5a5ae6130b8c7b0574178d4de9562"}}},"pr635":{"commit":"a6895a69f8ad98ab45777b03e9e6f48888c39f6f","files":{"research/complex-571-cold14-st2/LICENSE":{"git_blob":"261eeb9e9f8b2b4b0d119366dda99c6fd7d35c64","sha256":"c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4"},"research/complex-571-cold14-st2/MANIFEST.json":{"git_blob":"1aba78802aceb5dd4ae7fee5727c9a3aad6649c6","sha256":"faa8559bc062cb1813c482580967de2de0669ee59e708908fd24b16b74d6c707"},"research/complex-571-cold14-st2/NOTICE.md":{"git_blob":"ebc24a0168c65c48c771dcf4e89359afc418e848","sha256":"a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610"},"research/complex-571-cold14-st2/PROOF-COMMUTING-PREFIX.md":{"git_blob":"f3ab78dba0609e8866e40101e87f1dd7890ae005","sha256":"59899b2a1a76d88275e57f983c0aea391dc2c7f1d2d66c33b92429be0a1cf5e1"},"research/complex-571-cold14-st2/PROOF-NOTE-R.md":{"git_blob":"a403cbeb77ea8b8187de6942ea5f74ca10e9c159","sha256":"22312bb347bdf159e6a01a45c47675e6170d33b258e2fd9ed52aee88fb92c0ed"},"research/complex-571-cold14-st2/PROOF-NOTE.md":{"git_blob":"4d3964dd173061f81431ca4e51c1c801cf5498ac","sha256":"e79d0920228107083be166a6733186816a38a8fa68d99f2038f07b157ea5690e"},"research/complex-571-cold14-st2/README.md":{"git_blob":"6ee54bcf64a3c5ff39bacc6d6a7ed6ffe23d25cb","sha256":"d74a9499a23a729d3470bde7b06b85c4cf8602d06d10af9bf9991aea2da8ed7e"},"research/complex-571-cold14-st2/code/assemble.py":{"git_blob":"d1674e657ff046f9d55c917723002f270e05c42a","sha256":"1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd"},"research/complex-571-cold14-st2/code/assembly_controls.py":{"git_blob":"d3f0e8c03e1c3f9ba161ee3cd08257cb1d2799af","sha256":"8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8"},"research/complex-571-cold14-st2/code/audit_allcold.py":{"git_blob":"e29d90e89af9d7535c96de6ebf7c4d03616f7c48","sha256":"cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a"},"research/complex-571-cold14-st2/code/bind_providers_portable.py":{"git_blob":"e758a0679a8de1391a0ed1b06113b14cf3980578","sha256":"2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea"},"research/complex-571-cold14-st2/code/build_cold_end.py":{"git_blob":"b39d7a6771c1494fb487f95605088437055551f5","sha256":"864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668"},"research/complex-571-cold14-st2/code/build_frame_regroup.py":{"git_blob":"c5321f56716d4b51c78a8d04466c734323453178","sha256":"e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9"},"research/complex-571-cold14-st2/code/build_gate_moves.py":{"git_blob":"03114099c6d8188ecf80b8a6657f68de0834fea5","sha256":"08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252"},"research/complex-571-cold14-st2/code/build_hpe.py":{"git_blob":"830906acf271084c2471add4ed55388587dad1f2","sha256":"ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e"},"research/complex-571-cold14-st2/code/build_port_stage.py":{"git_blob":"259fd26feb55ab763d45a3fa4fa5063ba2b31429","sha256":"beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72"},"research/complex-571-cold14-st2/code/cold_end_controls.py":{"git_blob":"cf843b5f48397c05d104edae9e31e27621c28f3b","sha256":"0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84"},"research/complex-571-cold14-st2/code/construct_k_triangle.py":{"git_blob":"763a2b3f5fca283fdb713ff02fc1d1a0a887a26d","sha256":"66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da"},"research/complex-571-cold14-st2/code/emit_allcold.py":{"git_blob":"984b0be8333691e18c3a6f1ea5fedebdc7a914bc","sha256":"fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746"},"research/complex-571-cold14-st2/code/generated_identity.py":{"git_blob":"74a9b604793f21a9f064c78874341e287ded7a68","sha256":"c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708"},"research/complex-571-cold14-st2/code/generated_identity_controls.py":{"git_blob":"b4c133c107e23a6ccf34143b2518f4d2e1cbcc64","sha256":"a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de"},"research/complex-571-cold14-st2/code/hpe_adapters_local.py":{"git_blob":"8f77ccf02d01330a197e1c8127ac62b13923c57c","sha256":"eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf"},"research/complex-571-cold14-st2/code/hpe_audit_and_transport.py":{"git_blob":"d5d3509d90c01fd91dd00b78743287614b532e48","sha256":"c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3"},"research/complex-571-cold14-st2/code/hpe_audit_local.py":{"git_blob":"17bccb64fdca54f329a3ce16e369449cb76c2802","sha256":"6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810"},"research/complex-571-cold14-st2/code/hpe_controls_atc.py":{"git_blob":"ca6b2b24d1a266aaec66ead779df7fdc135dfb70","sha256":"63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b"},"research/complex-571-cold14-st2/code/hpe_emit_local.py":{"git_blob":"534fdc71f7641c704575efc038363d7eb206b2df","sha256":"7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805"},"research/complex-571-cold14-st2/code/invoice_allcold.py":{"git_blob":"b244cd59940659465c07b013ebe3225077496f45","sha256":"141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec"},"research/complex-571-cold14-st2/code/phase_timing_controls.py":{"git_blob":"da7fb08deec295f2d35c9b9b87d45f380225e5b6","sha256":"1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339"},"research/complex-571-cold14-st2/code/witness.py":{"git_blob":"70c3510b566070c66040658920fff9f9738d5f31","sha256":"00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d"},"research/complex-571-cold14-st2/data/EXPECTED.json":{"git_blob":"3e11cb431e1d7d1a925c18a407ec5eae0078f1a9","sha256":"9eeb8b149bf7649a47b0d3266436b9bfe0ba155ffb9668fa66cfa21136f9b8ed"},"research/complex-571-cold14-st2/data/OWNERS.json.gz":{"git_blob":"a5996341b37c359867dff7624483a1049acc856d","sha256":"935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add"},"research/complex-571-cold14-st2/data/PLAN.json":{"git_blob":"d7794713ddf9c1325d4a2142ad130b2395d27ae7","sha256":"258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda"},"research/complex-571-cold14-st2/data/SPEC.json":{"git_blob":"9832064f28606f8e5ea1729212d5812f674730b1","sha256":"f5473e3e6d76901bca57616efda78c3e23b3d30aa2c05acb656b6e87c38abbff"},"research/complex-571-cold14-st2/data/TRI-SCHEDULE.json":{"git_blob":"53c8a9944411f39e210c52b1bf12c87b8a7f4e53","sha256":"94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e"},"research/complex-571-cold14-st2/data/WITNESS.json":{"git_blob":"46ed52dab8248b13156312202b9af4fd61b26cb1","sha256":"05f7127910a846210d8c75d67c58185b7cd15b9861d71d0cfea955ae62414436"},"research/complex-571-cold14-st2/data/cand.json":{"git_blob":"b0e7db15fd7ef0664831b492038ad09b8c8cf157","sha256":"f1f42cb6f1f272ca3690e65fe604c18427dd9ac51241095c133bf97af21d32e3"},"research/complex-571-cold14-st2/data/recipes/atm3-step0-promote.json":{"git_blob":"1f078bea4f96883efa0ac76ad5dbaa70c58565f2","sha256":"9a7cafdf9b600ba43985c83969b75151f665b98f454afc1494b9f9ef3dd3916f"},"research/complex-571-cold14-st2/data/recipes/atm3-step1-greedy_kernels.json":{"git_blob":"db3a406ee237f709b4febb0199721ecaf2760f41","sha256":"c4bc67f329fc22e226f26bbbf7e67018a639823d99fccfc5a1e798a7a82db43f"},"research/complex-571-cold14-st2/data/recipes/atm3-step2-frame_coalesce.json":{"git_blob":"fb5e59269a19d7e973dd763f9c141b76ee969b45","sha256":"e6d7ea259a542f2b43a857998f677db4d68f8f36335e98a030bc91ab38ce758c"},"research/complex-571-cold14-st2/data/recipes/atm3-step3-gate_move_coalesce.json":{"git_blob":"ac941259cb69389a3465028d69258a8bd431e575","sha256":"3a6b8fec6c8b56a45bf8fae683083636fa295a8914ffa68d11b1f78ba3a2eb9d"},"research/complex-571-cold14-st2/data/recipes/ck-step0-greedy_kernels.json":{"git_blob":"89a4677766af35fa6779a475d635420256f5038e","sha256":"c839199d0e6f8e976978fe97bc0c5579a65ba69dfb6864585b448cccc1113056"},"research/complex-571-cold14-st2/data/recipes/ck-step1-frame_coalesce.json":{"git_blob":"fa80dd680dd35fa175296a0110c95ce1b55a0df5","sha256":"0c8e5991e1338f03b837814dd060d4dd598c324e3538ee510913e0444a384ee3"},"research/complex-571-cold14-st2/data/recipes/ck-step2-gate_move_coalesce.json":{"git_blob":"c718de4430e1f4b50c25ee0cf89f4e0b81a0a4aa","sha256":"1f5b62c76915b1b8bbcf63b42dcbd87a536c34d3721c4a9b68e651404717bf00"},"research/complex-571-cold14-st2/data/recipes/k492-atm3-cold_end.json.gz":{"git_blob":"7dec81801747a11da6968a9c03ee50aacba0885f","sha256":"a25ccab0c024aa9512df822032fca11683def03d0886b58f375c42834264c47c"},"research/complex-571-cold14-st2/data/recipes/k492-atm3-frame_regroup.json":{"git_blob":"909fdcbfefa069b0a587235dbb41055f7c7a2d3b","sha256":"8d880d3d8e795575a3a3428e0031b2c45831eea512dc32cb99f7eae9e6e49e5e"},"research/complex-571-cold14-st2/data/recipes/k492-atm3-hyperplane_end.json":{"git_blob":"069d4be65e79a58dd79f57b34b4ae77b952e3bf3","sha256":"30504ae76a2387677f05450d23413c7373c08ae2d9d171b2f4597bb63e294631"},"research/complex-571-cold14-st2/data/recipes/k492-ck-cold_end.json.gz":{"git_blob":"cbfc5e267b868f0969626e14ae63ef05329f4639","sha256":"9f487a0c6e89f6f3aec38726c3a4e514ffe1248ce6cda3704676f2c86ad0866c"},"research/complex-571-cold14-st2/data/recipes/k492-ck-frame_regroup.json":{"git_blob":"c17c1dc06f6305527d703312e32262b4a210dd32","sha256":"9894f9c93e931b61cf34b337c4b257a72bb1d06fbdc4e8b02368e6e29ab2b644"},"research/complex-571-cold14-st2/data/recipes/k492-ck-hyperplane_end.json":{"git_blob":"337c5f3f92b75be7d6f8131f6126013b929011a3","sha256":"c71c2b05550544c29ebb4696e63cffc44d6daa76f1bc25e9c7c97e994b2c7657"},"research/complex-571-cold14-st2/data/recipes/k492-jp8-cold_end.json.gz":{"git_blob":"19d1d85688e4627f564285002e21576c0533fa4a","sha256":"90952fde4666724f783191d92f132e9f6aa84cdc6163a42974774e9957cd6f35"},"research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json":{"git_blob":"4c7dc2c31036114fed5860bebc7405a2c70d48aa","sha256":"9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a"},"research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json":{"git_blob":"a80f662396bf984c6469024d7c38fb07f324fc93","sha256":"e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1"},"research/complex-571-cold14-st2/data/search/DISPATCH.json":{"git_blob":"e525ddc844a8087a91c7893f1c2467c73707dfe9","sha256":"34f233d4976e59455c3f0e1fa6edef8091d04bf63e4268aeb4a73810bfd5e338"},"research/complex-571-cold14-st2/data/search/LP-PATTERNS-AGG.json":{"git_blob":"73d5296bffb3560dd89e53e7110a07bce3d4c400","sha256":"5a1e2c3f7784cff71d4577e29d7a598a41198dac20aa35d5c87bb345d12f3e03"},"research/complex-571-cold14-st2/data/search/LP-PATTERNS-EX.json":{"git_blob":"d4ad442b43b007e01161d2f8cdf598e901664bb1","sha256":"08dd7090b5fda8b0a2c936c12982b279333c5765cfd090361a58e74d68b22e80"},"research/complex-571-cold14-st2/data/search/TEMPLATE-PLAN.json":{"git_blob":"12e2f187d922be09614a40662e25241630c65abb","sha256":"1879679a44b373006907cbca8261a9cd187c7b868472afab04e002bf95331d9e"},"research/complex-571-cold14-st2/data/search/WARM-OWNERS.json.gz":{"git_blob":"70613ab9c44ea980a3951904f2a2723a031f27fc","sha256":"56aac182713cba7627b7ebfbb497975b5a7c76b9da9f835a1cb63192fc6134a4"},"research/complex-571-cold14-st2/data/search/WARM-PLAN.json":{"git_blob":"eb7333e5b718d7713163b71717d2cb21920e69e4","sha256":"89539c2b5d24225613c0ceb571a03a2165bcaf0a0bea06986e212649cbfef9e1"},"research/complex-571-cold14-st2/verify.py":{"git_blob":"1be6686ac9fe91ce338e4d3eeff99d3ab217ee17","sha256":"4c8dea601fe9255bd9fbbf7840d3bfacc3dcf0b1deaf7ffab467e3c10648a3b7"},"research/complex-571-cold14-st2/verify.sh":{"git_blob":"a36218d768a100ab0bb28ed26a4aa05f038794bf","sha256":"18cf93f64fa5b7301f837950df181cf08ee8c3efe1b3fb6803354549a7462618"}},"repository":"https://github.com/CrocSwap/integer-mult-bounds"},"retained_base":{"commit":"4ae5c82b933e96a62427c69335d71c1d5bdb87c5","dependencies":"DEPENDENCY-PINS.json","repository":"https://github.com/CrocSwap/integer-mult-bounds"}} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/audit.py b/research/complex-t37-joint-x54-owners/audit.py new file mode 100644 index 0000000000..9153960333 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/audit.py @@ -0,0 +1,39 @@ +"""Independent PR890 owner audit, with exact T37/480-helper parameter edits.""" +import argparse +from pathlib import Path +from common import P,ROOT,read,dump,load,sha + +def check(base,local,owners_path,out): + source=ROOT/'research/complex-t21-owners/independent_check.py' + text=source.read_text() + edits=[('2 * 512','2 * 1024'),('prefix < 512','prefix < 1024'), + ('charged_prefix_bits=512','charged_prefix_bits=1024'), + ('{4: 80, 5: 32, 7: 54, 8: 122, 9: 216}','{4: 44, 5: 44, 7: 38, 8: 114, 9: 240}')] + for before,after in edits: + assert text.count(before)==1,(before,text.count(before));text=text.replace(before,after) + adapter=out.parent/'independent_owner_adapter.py';assert not adapter.exists();adapter.write_text(text) + ck=load(adapter,'independent_seven_slot_owner_checker');ck.T=37;ck.R=480;ck.EXPECTED_IDLE={1:834,48:11374} + refs=[base/'split-centres/GLOBAL-TEMPLATE.json.gz',base/'work/complex-nine-native/DATA-PHASES.json', + base/'split-centres/CANONICAL-WORD.json.gz',local/'CANONICAL-WORD.json.gz', + local/'INDEPENDENT-LOCAL-REPLAY.json',owners_path] + parent,phases,canonical,word,receipt,owners=map(read,refs) + assert receipt['canonical_word_sha256']==sha(refs[3]) + assert receipt['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert word['ports']==canonical['ports'] + assert [ck.basis(word['frames'][f])for f in word['center_frames']]==[ck.basis(canonical['frames'][f])for f in canonical['center_frames']] + context=ck.make_context(parent,phases,word['ports'],word,receipt,owners) + result=ck.check_roles(context,owners);result['controls_rejected']=ck.controls(context,owners) + result.update(edits=edits,source_sha256=sha(source),adapter_sha256=sha(adapter),inputs={str(p):sha(p)for p in refs}) + claim=read(P/'CLAIM.json') + for field in ('roles','calls','live','physical','rank_mass','deficit','prefix_bits','physical_row_coefficient'): + assert result[field]==claim[field],field + assert {str(r):n for r,n in result['profile'].items()}==claim['complex_profile'] + dump(out,result);return result + +def main(): + ap=argparse.ArgumentParser(description=__doc__) + for k in ('base','local','owners','out'):ap.add_argument('--'+k,type=Path,required=True) + a=ap.parse_args();out=a.out.resolve();assert not out.exists() and not out.is_relative_to(ROOT) + out.parent.mkdir(parents=True,exist_ok=True) + r=check(a.base,a.local,a.owners,out);print(r['status'],r['roles'],flush=True) +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/common.py b/research/complex-t37-joint-x54-owners/common.py new file mode 100644 index 0000000000..4af6dc3374 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/common.py @@ -0,0 +1,26 @@ +"""Strict shared I/O; construction and independent audit remain separate.""" +import gzip, hashlib, importlib.util, json, sys +from pathlib import Path +P=Path(__file__).resolve().parent +ROOT=P.parents[1] +if not __debug__:raise RuntimeError('Assertions must remain enabled') +def read(path): + path=Path(path);raw=path.read_bytes() + return json.loads(gzip.decompress(raw)if path.suffix=='.gz'else raw) +def canonical(value):return json.dumps(value,sort_keys=True,separators=(',',':')).encode() +def sha(path):return hashlib.sha256(Path(path).read_bytes()).hexdigest() +def identity(value):return hashlib.sha256(canonical(value)).hexdigest() +def dump(path,value): + raw=canonical(value) + if path.suffix=='.gz': + raw=bytearray(gzip.compress(raw,mtime=0));raw[9]=255 + path.write_bytes(raw) +def load(path,name): + previous=sys.modules.pop('common',None);sys.path.insert(0,str(path.parent)) + try: + spec=importlib.util.spec_from_file_location(name,path) + module=importlib.util.module_from_spec(spec);sys.modules[name]=module;spec.loader.exec_module(module) + return module + finally: + sys.path.pop(0);sys.modules.pop('common',None) + if previous is not None:sys.modules['common']=previous diff --git a/research/complex-t37-joint-x54-owners/construct.py b/research/complex-t37-joint-x54-owners/construct.py new file mode 100644 index 0000000000..07fa8de28a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/construct.py @@ -0,0 +1,111 @@ +"""Expand the frozen integer pattern flows without a solver or third-party library. + +Credit: PR858 physical windows; local promo4 pattern-flow formulation; standard +regular bipartite multigraph decomposition by successive perfect matchings. +Every matching and every integer conservation equation is checked explicitly. +""" +import argparse +from collections import Counter,defaultdict,deque +from common import P,ROOT,read,dump,load,identity,sha + +def matching(A): + n=len(A);left=[-1]*n;right=[-1]*n + while True: + distance=[-1]*n;q=deque() + for u in range(n): + if left[u]<0:distance[u]=0;q.append(u) + while q: + u=q.popleft() + for v in sorted(A[u]): + z=right[v] + if z>=0 and distance[z]<0:distance[z]=distance[u]+1;q.append(z) + def augment(u): + for v in sorted(A[u]): + z=right[v] + if z<0 or(distance[z]==distance[u]+1 and augment(z)): + left[u]=v;right[v]=u;return True + distance[u]=-1;return False + count=sum(augment(u) for u in range(n)if left[u]<0) + if all(v>=0 for v in left):break + assert count,'Regular bipartite graph has no perfect matching' + assert sorted(left)==list(range(n)) and all(A[u][v]>0 for u,v in enumerate(left)) + return left + +def construct(parent,word,flow,order): + expected_order=sorted([[s,r]for s in range(9)for r in range(37)],key=lambda k:(37*k[0]+8*k[1],k[0],k[1])) + assert order==expected_order,'Frozen wave order' + mod=load(ROOT/'research/complex-t21-owners/vendor/pr870/t16/build_parent.py','original_actual_windows') + windows,schedule=mod.actual_windows(parent,order) + original=read(P/'data/SUPPLIER-PLAN.json') + widths=[len(word['frames'][word['final'][h]])-len(word['frames'][word['start'][h]])for h in range(224,224+word['R'])] + assert Counter(widths)=={4:44,5:44,7:38,8:114,9:240} + pools=defaultdict(list) + for t in range(333): + for h,w in enumerate(widths):pools[t,w].append(h) + roles=[];seen=set();flow_edges=0;bin_count=0 + for group in flow: + keys=group['physical_windows'];assert keys and len(keys)==len(set(keys)) + assert not seen.intersection(keys);seen.update(keys) + cap,times=windows[keys[0]] + assert all(windows[key]==[cap,times]for key in keys) + n=len(times);portbase=0 + for pattern in group['patterns']: + widths_p=pattern['widths'];N=pattern['count'];flows={} + assert type(N)is int and 0=0 + for row in range(K,n): + need=N + while need: + while deficit[ti]==0:ti+=1 + take=min(need,deficit[ti]);A[row][ti]+=take;deficit[ti]-=take;need-=take + assert not any(deficit) and all(sum(row.values())==N for row in A) + actual=Counter() + for color in range(N): + match=matching(A);slots=sorted((times[match[i]],row_widths[i])for i in range(K)) + for i,t in enumerate(match): + A[i][t]-=1 + if not A[i][t]:del A[i][t] + index,port=divmod(portbase+color,112);owner,child=map(int,keys[index].split(','));offset=0 + for t,w in slots: + actual[t,w]+=1;assert pools[t,w];helper=pools[t,w].pop();stage,replica=order[t] + roles.append(dict(stage=stage,replica=replica,time=t,helper=helper,width=w,owner_replica=owner,child=child,port=port,offset=offset,copy=112*owner+port,family=896*owner+112*(2*original['pairs'][str(child)]+original['sides'][str(child)])+port)) + offset+=w + assert offset==sum(widths_p) + assert not any(A) and actual==flows + portbase+=N;bin_count+=N + assert portbase==112*len(keys) + assert seen==set(windows) and not any(pools.values()) and len(roles)==159840 + roles.sort(key=lambda z:(z['time'],z['helper'])) + return roles,dict(status='PASS_FROZEN_INTEGER_FLOW_AND_REGULAR_MATCHING',roles=len(roles),bins=bin_count,windows=len(windows),flow_edges=flow_edges,owner_content_sha256=identity(roles),schedule_content_sha256=identity(schedule)) + +def main(): + ap=argparse.ArgumentParser(description=__doc__) + for k in ('parent','word','out'):ap.add_argument('--'+k,type=__import__('pathlib').Path,required=True) + a=ap.parse_args();out=a.out.resolve();assert not out.exists() and not out.is_relative_to(ROOT);out.mkdir(parents=True) + roles,receipt=construct(read(a.parent),read(a.word),read(P/'data/FLOW.json.gz'),read(P/'data/ORDER.json')) + dump(out/'OWNERS.json.gz',roles) + receipt['inputs']={str(p):sha(p)for p in (a.parent,a.word,P/'data/FLOW.json.gz',P/'data/ORDER.json')} + dump(out/'CONSTRUCTION.json',receipt);print(receipt['status'],len(roles),flush=True) +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/controller.py b/research/complex-t37-joint-x54-owners/controller.py new file mode 100644 index 0000000000..3b7ca0133e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/controller.py @@ -0,0 +1,53 @@ +"""Run the retained emitted-controller checks and bind their final receipts.""" +from fractions import Fraction +import os,subprocess,sys,time +from common import P,ROOT,read,dump,sha + +def replay(work,local,discovery=False): + source=ROOT/'research/complex-k492-owner-repair/vendor/multicold' + code=work/'runtime/code';spec=work/'runtime/data/SPEC.json' + mode='discovery'if discovery else'strict';out=work/mode;out.mkdir();g=out/'global' + env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(source),GAIN_PR564_SOURCE=str(source),WITNESS_SPEC=str(spec)) + for k in ('PYTHONOPTIMIZE','WITNESS_DISCOVER','WITNESS_RECORD'):env.pop(k,None) + if discovery:env.update(WITNESS_DISCOVER='1',WITNESS_RECORD=str(out/'WITNESS-RECORD.jsonl')) + stages=[] + def run(name,script,*args): + start=time.monotonic();log=out/(name+'.log') + with log.open('w')as f:r=subprocess.run([sys.executable,'-B',str(source/'code/run_portable.py'),str(code/script),*map(str,args)],env=env,cwd=ROOT,stdout=f,stderr=subprocess.STDOUT) + stages.append(dict(name=name,exit_code=r.returncode,seconds=round(time.monotonic()-start,3),log_sha256=sha(log))) + dump(out/'STAGES.json',stages) + if r.returncode:raise RuntimeError(name+'\n'+log.read_text()[-6000:]) + print('PASS',mode,name,flush=True) + run('bind','bind_providers_portable.py','--baseline',work/'parent','--provider','gauge44='+str(local),'--plan',work/'lift/PLAN.json','--out',g) + run('emit','emit_allcold.py','--base',g/'base','--owners',P/'data/OWNERS.json.gz','--plan',g/'PLAN.json','--out',g/'hosted') + run('audit','audit_allcold.py',g/'base',g/'hosted',g/'audit/ASYNC-AUDIT.json','--mutation-controls') + run('invoice','invoice_allcold.py','--base',g/'base','--hosted',g/'hosted','--audit',g/'audit','--out',g/'audit','--retained-invoice',source/'vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json') + run('assembly','assemble.py',source,g,out/'ASSEMBLY.json') + if discovery: + run('freeze','freeze_spec.py','--spec',spec,'--discovery',out) + return read(out/'ASSEMBLY.json') + for name,script,target in [('admission-controls','assembly_controls.py','ADMISSION-CONTROLS.json'),('bit-controls','bit_supplier_controls.py','BIT-CONTROLS.json')]: + run(name,script,'--source-package',source,'--owner',g/'audit/OWNERS-AND-PROFILE.json','--invoice',g/'audit/PREFIX-AND-INVOICE.json','--out',out/target) + asm=read(out/'ASSEMBLY.json');owner=read(g/'audit/OWNERS-AND-PROFILE.json') + invoice=read(g/'audit/PREFIX-AND-INVOICE.json');audit=read(g/'audit/ASYNC-AUDIT.json') + ac=read(out/'ADMISSION-CONTROLS.json');bc=read(out/'BIT-CONTROLS.json');claim=read(P/'CLAIM.json') + for k in ('kappa','kappa_decimal','complex_lower','bit_lower','complex_profile'):assert asm[k]==claim[k],k + for k in ('live','physical','rank_mass','deficit'):assert owner[k]==claim[k],k + assert owner['hosted_residuals']==audit['complex_hosted_residuals']==claim['roles']==159840 + assert audit['complete_invocations']==invoice['complete_invocation_sweeps']==333 + assert invoice['global_prefix_bits']==775 and invoice['charged_prefix_bits']==1024 + assert invoice['finite']['physical_row_coefficient']==174950 for v in asm['outer'].values()) + assert not ac['discovery_accepted_controls'] and len(ac['rejected_controls'])==69 + assert len(bc['rejected_controls'])==12 and bc['derived_deficit']==10272 + assert audit['mutation_controls_run'] and len(audit['mutations_rejected'])==15 + assert asm['template_sha256']==owner['template_sha256']==invoice['template_sha256'] + assert invoice['owner_audit_sha256']==sha(g/'audit/OWNERS-AND-PROFILE.json') + assert invoice['controller_audit_sha256']==sha(g/'audit/ASYNC-AUDIT.json') + for name in ('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json'): + assert read(g/'base/providers/gauge44'/name)==read(local/name),'Fresh provider binding: '+name + return dict(status='PASS_T37_JOINT_X54_STRICT_CONTROLLER',kappa=asm['kappa'],kappa_decimal=asm['kappa_decimal'], + complex_profile=asm['complex_profile'],roles=159840,calls=333,prefix_bits=775,row_coefficient=17495, + controls=dict(admission=69,bit_supplier=12,controller=15),scope=claim['scope'],stages=stages) diff --git a/research/complex-t37-joint-x54-owners/controls.py b/research/complex-t37-joint-x54-owners/controls.py new file mode 100644 index 0000000000..cf713edd8a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/controls.py @@ -0,0 +1,25 @@ +"""Reject malformed frozen flow inputs before accepting any reconstructed map.""" +import copy +from construct import construct +from common import P,read,dump + +def check(parent,word,out): + flow=read(P/'data/FLOW.json.gz');order=read(P/'data/ORDER.json') + result=[] + for name in ('boolean_bin_count','negative_bin_count','duplicate_window','duplicate_flow', + 'out_of_window_time','invalid_width','overfull_call','reordered_wave'): + bad=copy.deepcopy(flow);badorder=copy.deepcopy(order) + group=bad[0];pattern=next(p for p in group['patterns']if p['flow']) + if name=='boolean_bin_count':group['patterns'][0]['count']=True + elif name=='negative_bin_count':group['patterns'][0]['count']=-1 + elif name=='duplicate_window':group['physical_windows'].append(group['physical_windows'][0]) + elif name=='duplicate_flow':pattern['flow'].append(pattern['flow'][0].copy()) + elif name=='out_of_window_time':pattern['flow'][0][0]=333 + elif name=='invalid_width':pattern['flow'][0][1]=6 + elif name=='overfull_call':pattern['flow'][0][2]=pattern['count']+1 + else:badorder[0],badorder[1]=badorder[1],badorder[0] + try:construct(parent,word,bad,badorder) + except AssertionError:result.append(name) + else:raise AssertionError('Accepted malformed flow: '+name) + receipt=dict(status='PASS_FROZEN_FLOW_NEGATIVE_CONTROLS',rejected=result) + dump(out,receipt);return receipt diff --git a/research/complex-t37-joint-x54-owners/data/FLOW.json.gz b/research/complex-t37-joint-x54-owners/data/FLOW.json.gz new file mode 100644 index 0000000000..b1e8d68b86 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/data/FLOW.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/data/ORDER.json b/research/complex-t37-joint-x54-owners/data/ORDER.json new file mode 100644 index 0000000000..b32f07b09b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/data/ORDER.json @@ -0,0 +1 @@ +[[0,0],[0,1],[0,2],[0,3],[0,4],[1,0],[0,5],[1,1],[0,6],[1,2],[0,7],[1,3],[0,8],[1,4],[0,9],[2,0],[1,5],[0,10],[2,1],[1,6],[0,11],[2,2],[1,7],[0,12],[2,3],[1,8],[0,13],[2,4],[1,9],[3,0],[0,14],[2,5],[1,10],[3,1],[0,15],[2,6],[1,11],[3,2],[0,16],[2,7],[1,12],[3,3],[0,17],[2,8],[1,13],[3,4],[0,18],[2,9],[4,0],[1,14],[3,5],[0,19],[2,10],[4,1],[1,15],[3,6],[0,20],[2,11],[4,2],[1,16],[3,7],[0,21],[2,12],[4,3],[1,17],[3,8],[0,22],[2,13],[4,4],[1,18],[3,9],[0,23],[5,0],[2,14],[4,5],[1,19],[3,10],[0,24],[5,1],[2,15],[4,6],[1,20],[3,11],[0,25],[5,2],[2,16],[4,7],[1,21],[3,12],[0,26],[5,3],[2,17],[4,8],[1,22],[3,13],[0,27],[5,4],[2,18],[4,9],[1,23],[6,0],[3,14],[0,28],[5,5],[2,19],[4,10],[1,24],[6,1],[3,15],[0,29],[5,6],[2,20],[4,11],[1,25],[6,2],[3,16],[0,30],[5,7],[2,21],[4,12],[1,26],[6,3],[3,17],[0,31],[5,8],[2,22],[4,13],[1,27],[6,4],[3,18],[0,32],[5,9],[2,23],[7,0],[4,14],[1,28],[6,5],[3,19],[0,33],[5,10],[2,24],[7,1],[4,15],[1,29],[6,6],[3,20],[0,34],[5,11],[2,25],[7,2],[4,16],[1,30],[6,7],[3,21],[0,35],[5,12],[2,26],[7,3],[4,17],[1,31],[6,8],[3,22],[0,36],[5,13],[2,27],[7,4],[4,18],[1,32],[6,9],[3,23],[8,0],[5,14],[2,28],[7,5],[4,19],[1,33],[6,10],[3,24],[8,1],[5,15],[2,29],[7,6],[4,20],[1,34],[6,11],[3,25],[8,2],[5,16],[2,30],[7,7],[4,21],[1,35],[6,12],[3,26],[8,3],[5,17],[2,31],[7,8],[4,22],[1,36],[6,13],[3,27],[8,4],[5,18],[2,32],[7,9],[4,23],[6,14],[3,28],[8,5],[5,19],[2,33],[7,10],[4,24],[6,15],[3,29],[8,6],[5,20],[2,34],[7,11],[4,25],[6,16],[3,30],[8,7],[5,21],[2,35],[7,12],[4,26],[6,17],[3,31],[8,8],[5,22],[2,36],[7,13],[4,27],[6,18],[3,32],[8,9],[5,23],[7,14],[4,28],[6,19],[3,33],[8,10],[5,24],[7,15],[4,29],[6,20],[3,34],[8,11],[5,25],[7,16],[4,30],[6,21],[3,35],[8,12],[5,26],[7,17],[4,31],[6,22],[3,36],[8,13],[5,27],[7,18],[4,32],[6,23],[8,14],[5,28],[7,19],[4,33],[6,24],[8,15],[5,29],[7,20],[4,34],[6,25],[8,16],[5,30],[7,21],[4,35],[6,26],[8,17],[5,31],[7,22],[4,36],[6,27],[8,18],[5,32],[7,23],[6,28],[8,19],[5,33],[7,24],[6,29],[8,20],[5,34],[7,25],[6,30],[8,21],[5,35],[7,26],[6,31],[8,22],[5,36],[7,27],[6,32],[8,23],[7,28],[6,33],[8,24],[7,29],[6,34],[8,25],[7,30],[6,35],[8,26],[7,31],[6,36],[8,27],[7,32],[8,28],[7,33],[8,29],[7,34],[8,30],[7,35],[8,31],[7,36],[8,32],[8,33],[8,34],[8,35],[8,36]] diff --git a/research/complex-t37-joint-x54-owners/data/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/data/OWNERS.json.gz new file mode 100644 index 0000000000..0470876858 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/data/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/data/SPEC.json b/research/complex-t37-joint-x54-owners/data/SPEC.json new file mode 100644 index 0000000000..7316b4f454 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/data/SPEC.json @@ -0,0 +1 @@ +{"call_order":[[0,0],[0,1],[0,2],[0,3],[0,4],[1,0],[0,5],[1,1],[0,6],[1,2],[0,7],[1,3],[0,8],[1,4],[0,9],[2,0],[1,5],[0,10],[2,1],[1,6],[0,11],[2,2],[1,7],[0,12],[2,3],[1,8],[0,13],[2,4],[1,9],[3,0],[0,14],[2,5],[1,10],[3,1],[0,15],[2,6],[1,11],[3,2],[0,16],[2,7],[1,12],[3,3],[0,17],[2,8],[1,13],[3,4],[0,18],[2,9],[4,0],[1,14],[3,5],[0,19],[2,10],[4,1],[1,15],[3,6],[0,20],[2,11],[4,2],[1,16],[3,7],[0,21],[2,12],[4,3],[1,17],[3,8],[0,22],[2,13],[4,4],[1,18],[3,9],[0,23],[5,0],[2,14],[4,5],[1,19],[3,10],[0,24],[5,1],[2,15],[4,6],[1,20],[3,11],[0,25],[5,2],[2,16],[4,7],[1,21],[3,12],[0,26],[5,3],[2,17],[4,8],[1,22],[3,13],[0,27],[5,4],[2,18],[4,9],[1,23],[6,0],[3,14],[0,28],[5,5],[2,19],[4,10],[1,24],[6,1],[3,15],[0,29],[5,6],[2,20],[4,11],[1,25],[6,2],[3,16],[0,30],[5,7],[2,21],[4,12],[1,26],[6,3],[3,17],[0,31],[5,8],[2,22],[4,13],[1,27],[6,4],[3,18],[0,32],[5,9],[2,23],[7,0],[4,14],[1,28],[6,5],[3,19],[0,33],[5,10],[2,24],[7,1],[4,15],[1,29],[6,6],[3,20],[0,34],[5,11],[2,25],[7,2],[4,16],[1,30],[6,7],[3,21],[0,35],[5,12],[2,26],[7,3],[4,17],[1,31],[6,8],[3,22],[0,36],[5,13],[2,27],[7,4],[4,18],[1,32],[6,9],[3,23],[8,0],[5,14],[2,28],[7,5],[4,19],[1,33],[6,10],[3,24],[8,1],[5,15],[2,29],[7,6],[4,20],[1,34],[6,11],[3,25],[8,2],[5,16],[2,30],[7,7],[4,21],[1,35],[6,12],[3,26],[8,3],[5,17],[2,31],[7,8],[4,22],[1,36],[6,13],[3,27],[8,4],[5,18],[2,32],[7,9],[4,23],[6,14],[3,28],[8,5],[5,19],[2,33],[7,10],[4,24],[6,15],[3,29],[8,6],[5,20],[2,34],[7,11],[4,25],[6,16],[3,30],[8,7],[5,21],[2,35],[7,12],[4,26],[6,17],[3,31],[8,8],[5,22],[2,36],[7,13],[4,27],[6,18],[3,32],[8,9],[5,23],[7,14],[4,28],[6,19],[3,33],[8,10],[5,24],[7,15],[4,29],[6,20],[3,34],[8,11],[5,25],[7,16],[4,30],[6,21],[3,35],[8,12],[5,26],[7,17],[4,31],[6,22],[3,36],[8,13],[5,27],[7,18],[4,32],[6,23],[8,14],[5,28],[7,19],[4,33],[6,24],[8,15],[5,29],[7,20],[4,34],[6,25],[8,16],[5,30],[7,21],[4,35],[6,26],[8,17],[5,31],[7,22],[4,36],[6,27],[8,18],[5,32],[7,23],[6,28],[8,19],[5,33],[7,24],[6,29],[8,20],[5,34],[7,25],[6,30],[8,21],[5,35],[7,26],[6,31],[8,22],[5,36],[7,27],[6,32],[8,23],[7,28],[6,33],[8,24],[7,29],[6,34],[8,25],[7,30],[6,35],[8,26],[7,31],[6,36],[8,27],[7,32],[8,28],[7,33],[8,29],[7,34],[8,30],[7,35],[8,31],[7,36],[8,32],[8,33],[8,34],[8,35],[8,36]],"data":{"owners_sha256":"97f12f789b0f5f5ef204d8921f3924073f8e04e8f07a83c97427865f70d0926a","plan_sha256":"5b2cbbd3fa5aedd720f327d742721ba427b4478f046f70bf2efbf46aa7211abd"},"dispatch":[[0,0,"gauge44"],[0,1,"gauge44"],[0,2,"gauge44"],[0,3,"gauge44"],[0,4,"gauge44"],[1,0,"gauge44"],[0,5,"gauge44"],[1,1,"gauge44"],[0,6,"gauge44"],[1,2,"gauge44"],[0,7,"gauge44"],[1,3,"gauge44"],[0,8,"gauge44"],[1,4,"gauge44"],[0,9,"gauge44"],[2,0,"gauge44"],[1,5,"gauge44"],[0,10,"gauge44"],[2,1,"gauge44"],[1,6,"gauge44"],[0,11,"gauge44"],[2,2,"gauge44"],[1,7,"gauge44"],[0,12,"gauge44"],[2,3,"gauge44"],[1,8,"gauge44"],[0,13,"gauge44"],[2,4,"gauge44"],[1,9,"gauge44"],[3,0,"gauge44"],[0,14,"gauge44"],[2,5,"gauge44"],[1,10,"gauge44"],[3,1,"gauge44"],[0,15,"gauge44"],[2,6,"gauge44"],[1,11,"gauge44"],[3,2,"gauge44"],[0,16,"gauge44"],[2,7,"gauge44"],[1,12,"gauge44"],[3,3,"gauge44"],[0,17,"gauge44"],[2,8,"gauge44"],[1,13,"gauge44"],[3,4,"gauge44"],[0,18,"gauge44"],[2,9,"gauge44"],[4,0,"gauge44"],[1,14,"gauge44"],[3,5,"gauge44"],[0,19,"gauge44"],[2,10,"gauge44"],[4,1,"gauge44"],[1,15,"gauge44"],[3,6,"gauge44"],[0,20,"gauge44"],[2,11,"gauge44"],[4,2,"gauge44"],[1,16,"gauge44"],[3,7,"gauge44"],[0,21,"gauge44"],[2,12,"gauge44"],[4,3,"gauge44"],[1,17,"gauge44"],[3,8,"gauge44"],[0,22,"gauge44"],[2,13,"gauge44"],[4,4,"gauge44"],[1,18,"gauge44"],[3,9,"gauge44"],[0,23,"gauge44"],[5,0,"gauge44"],[2,14,"gauge44"],[4,5,"gauge44"],[1,19,"gauge44"],[3,10,"gauge44"],[0,24,"gauge44"],[5,1,"gauge44"],[2,15,"gauge44"],[4,6,"gauge44"],[1,20,"gauge44"],[3,11,"gauge44"],[0,25,"gauge44"],[5,2,"gauge44"],[2,16,"gauge44"],[4,7,"gauge44"],[1,21,"gauge44"],[3,12,"gauge44"],[0,26,"gauge44"],[5,3,"gauge44"],[2,17,"gauge44"],[4,8,"gauge44"],[1,22,"gauge44"],[3,13,"gauge44"],[0,27,"gauge44"],[5,4,"gauge44"],[2,18,"gauge44"],[4,9,"gauge44"],[1,23,"gauge44"],[6,0,"gauge44"],[3,14,"gauge44"],[0,28,"gauge44"],[5,5,"gauge44"],[2,19,"gauge44"],[4,10,"gauge44"],[1,24,"gauge44"],[6,1,"gauge44"],[3,15,"gauge44"],[0,29,"gauge44"],[5,6,"gauge44"],[2,20,"gauge44"],[4,11,"gauge44"],[1,25,"gauge44"],[6,2,"gauge44"],[3,16,"gauge44"],[0,30,"gauge44"],[5,7,"gauge44"],[2,21,"gauge44"],[4,12,"gauge44"],[1,26,"gauge44"],[6,3,"gauge44"],[3,17,"gauge44"],[0,31,"gauge44"],[5,8,"gauge44"],[2,22,"gauge44"],[4,13,"gauge44"],[1,27,"gauge44"],[6,4,"gauge44"],[3,18,"gauge44"],[0,32,"gauge44"],[5,9,"gauge44"],[2,23,"gauge44"],[7,0,"gauge44"],[4,14,"gauge44"],[1,28,"gauge44"],[6,5,"gauge44"],[3,19,"gauge44"],[0,33,"gauge44"],[5,10,"gauge44"],[2,24,"gauge44"],[7,1,"gauge44"],[4,15,"gauge44"],[1,29,"gauge44"],[6,6,"gauge44"],[3,20,"gauge44"],[0,34,"gauge44"],[5,11,"gauge44"],[2,25,"gauge44"],[7,2,"gauge44"],[4,16,"gauge44"],[1,30,"gauge44"],[6,7,"gauge44"],[3,21,"gauge44"],[0,35,"gauge44"],[5,12,"gauge44"],[2,26,"gauge44"],[7,3,"gauge44"],[4,17,"gauge44"],[1,31,"gauge44"],[6,8,"gauge44"],[3,22,"gauge44"],[0,36,"gauge44"],[5,13,"gauge44"],[2,27,"gauge44"],[7,4,"gauge44"],[4,18,"gauge44"],[1,32,"gauge44"],[6,9,"gauge44"],[3,23,"gauge44"],[8,0,"gauge44"],[5,14,"gauge44"],[2,28,"gauge44"],[7,5,"gauge44"],[4,19,"gauge44"],[1,33,"gauge44"],[6,10,"gauge44"],[3,24,"gauge44"],[8,1,"gauge44"],[5,15,"gauge44"],[2,29,"gauge44"],[7,6,"gauge44"],[4,20,"gauge44"],[1,34,"gauge44"],[6,11,"gauge44"],[3,25,"gauge44"],[8,2,"gauge44"],[5,16,"gauge44"],[2,30,"gauge44"],[7,7,"gauge44"],[4,21,"gauge44"],[1,35,"gauge44"],[6,12,"gauge44"],[3,26,"gauge44"],[8,3,"gauge44"],[5,17,"gauge44"],[2,31,"gauge44"],[7,8,"gauge44"],[4,22,"gauge44"],[1,36,"gauge44"],[6,13,"gauge44"],[3,27,"gauge44"],[8,4,"gauge44"],[5,18,"gauge44"],[2,32,"gauge44"],[7,9,"gauge44"],[4,23,"gauge44"],[6,14,"gauge44"],[3,28,"gauge44"],[8,5,"gauge44"],[5,19,"gauge44"],[2,33,"gauge44"],[7,10,"gauge44"],[4,24,"gauge44"],[6,15,"gauge44"],[3,29,"gauge44"],[8,6,"gauge44"],[5,20,"gauge44"],[2,34,"gauge44"],[7,11,"gauge44"],[4,25,"gauge44"],[6,16,"gauge44"],[3,30,"gauge44"],[8,7,"gauge44"],[5,21,"gauge44"],[2,35,"gauge44"],[7,12,"gauge44"],[4,26,"gauge44"],[6,17,"gauge44"],[3,31,"gauge44"],[8,8,"gauge44"],[5,22,"gauge44"],[2,36,"gauge44"],[7,13,"gauge44"],[4,27,"gauge44"],[6,18,"gauge44"],[3,32,"gauge44"],[8,9,"gauge44"],[5,23,"gauge44"],[7,14,"gauge44"],[4,28,"gauge44"],[6,19,"gauge44"],[3,33,"gauge44"],[8,10,"gauge44"],[5,24,"gauge44"],[7,15,"gauge44"],[4,29,"gauge44"],[6,20,"gauge44"],[3,34,"gauge44"],[8,11,"gauge44"],[5,25,"gauge44"],[7,16,"gauge44"],[4,30,"gauge44"],[6,21,"gauge44"],[3,35,"gauge44"],[8,12,"gauge44"],[5,26,"gauge44"],[7,17,"gauge44"],[4,31,"gauge44"],[6,22,"gauge44"],[3,36,"gauge44"],[8,13,"gauge44"],[5,27,"gauge44"],[7,18,"gauge44"],[4,32,"gauge44"],[6,23,"gauge44"],[8,14,"gauge44"],[5,28,"gauge44"],[7,19,"gauge44"],[4,33,"gauge44"],[6,24,"gauge44"],[8,15,"gauge44"],[5,29,"gauge44"],[7,20,"gauge44"],[4,34,"gauge44"],[6,25,"gauge44"],[8,16,"gauge44"],[5,30,"gauge44"],[7,21,"gauge44"],[4,35,"gauge44"],[6,26,"gauge44"],[8,17,"gauge44"],[5,31,"gauge44"],[7,22,"gauge44"],[4,36,"gauge44"],[6,27,"gauge44"],[8,18,"gauge44"],[5,32,"gauge44"],[7,23,"gauge44"],[6,28,"gauge44"],[8,19,"gauge44"],[5,33,"gauge44"],[7,24,"gauge44"],[6,29,"gauge44"],[8,20,"gauge44"],[5,34,"gauge44"],[7,25,"gauge44"],[6,30,"gauge44"],[8,21,"gauge44"],[5,35,"gauge44"],[7,26,"gauge44"],[6,31,"gauge44"],[8,22,"gauge44"],[5,36,"gauge44"],[7,27,"gauge44"],[6,32,"gauge44"],[8,23,"gauge44"],[7,28,"gauge44"],[6,33,"gauge44"],[8,24,"gauge44"],[7,29,"gauge44"],[6,34,"gauge44"],[8,25,"gauge44"],[7,30,"gauge44"],[6,35,"gauge44"],[8,26,"gauge44"],[7,31,"gauge44"],[6,36,"gauge44"],[8,27,"gauge44"],[7,32,"gauge44"],[8,28,"gauge44"],[7,33,"gauge44"],[8,29,"gauge44"],[7,34,"gauge44"],[8,30,"gauge44"],[7,35,"gauge44"],[8,31,"gauge44"],[7,36,"gauge44"],[8,32,"gauge44"],[8,33,"gauge44"],[8,34,"gauge44"],[8,35,"gauge44"],[8,36,"gauge44"]],"expected":{"actual_73column_sigmas":11072,"assembly_controls_rejected":69,"complex_lower":"1678420962050942454559/1000000000000000000000000","conservative_complex_lower":"839210479598502224499/500000000000000000000000","conservative_kappa_decimal":"0.001675608582632503","cross_replica_helper_roles":149072,"gain_baseline_kappa":"0.001636241501576388","global_profile":{"1":788046,"2":165834,"3":137862,"4":41958,"48":11374,"5":27972,"8":2664},"hosted_residuals":159840,"idle_remainder_profile":{"1":834,"48":11374},"idle_remainders":12208,"kappa":"335121717095377/200000000000000000","kappa_decimal":"0.001675608585476885","live":33152,"mutations_rejected":15,"physical":33642,"provider_counts":{"gauge44":333},"rank_mass":2408256},"name":"seven-slot-k8-t37-wave","pivot_swap":{"recipe":"vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/PIVOT-SWAP-k8.json","sha256":"3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb"},"providers":{"gauge44":{"artifact_semantic_sha256":{"CANONICAL-WORD.json.gz":"2b34a781ec6a0b6249bc116afbf60c926474a84c7ef613e76f17dca1f26178af","CLIFFORD-RECIPES.json":"40520ee10efd4ed228b0105e76541f288fa9b1b027740b77cafc50b3ae5f6a7c","CLIFFORD-REVIEW.json":"5cc8cecb1562863e7105564eb15b13f7d0d1b180a83bf05237b2301f1895ae5d","INDEPENDENT-LOCAL-REPLAY.json":"41ed1ee4c0842c9da8bc1c88ad3f16feea9d83392341687361c26943c4d662ff","LOCAL-CHECKS.json":"5d843a435c5dd0e8276d637ec29ed99f3e601cbc50e26ed7c0f80795ccb71aec","LOCAL-PROGRAMS.json.gz":"b6e6d496eefc02532f91e833561b8cb676062c57d3943afc2ae0932810a5a36b","RESIDUAL-ADAPTERS.json":"d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69"},"artifacts":{"CLIFFORD-RECIPES.json":"40520ee10efd4ed228b0105e76541f288fa9b1b027740b77cafc50b3ae5f6a7c","LOCAL-CHECKS.json":"658c80d13dc992e18186740f71e88aa4d9a76010bf8da2de77722970d83710e9","RESIDUAL-ADAPTERS.json":"c099207d60ab49392bcadcaf7e9cbcfe01178e732f14e2591a8c3463162460d7"},"complete_contract":{"centres":8,"children":3494,"cold_hyperplane_ended_helpers":48,"compiler":25934336,"entering_helpers":192,"entrance_rank":372,"h":9,"helpers":480,"hyperplane_ended_helpers":78,"local":{"backward":{"all_dirty_helper_columns_restored":true,"all_exact_columns":704,"coefficient_work_primitive_count":98373,"dirty_helper_columns":480,"endpoint_evidence":"Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json","events":24769,"macros":19695,"post_wrappers":240,"pre_wrappers":240,"prefix_bits":68,"prefix_l1":"14824960514781440791821/64","private_centres_and_coefficient_work_cleared":true,"real_component_primitives":198830},"forward":{"all_dirty_helper_columns_restored":true,"all_exact_columns":704,"coefficient_work_primitive_count":98341,"dirty_helper_columns":480,"endpoint_evidence":"Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json","events":24769,"macros":19695,"post_wrappers":240,"pre_wrappers":240,"prefix_bits":52,"prefix_l1":"2765345371136269591/1024","private_centres_and_coefficient_work_cleared":true,"real_component_primitives":198782}},"local_adapters":387088,"local_primitive_bound":10038870452398,"n":704,"paid_profile":{"1":2364,"2":498,"3":414,"4":126,"5":84,"8":8},"program_hashes":{"backward":"1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb","forward":"12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e"},"semantic_artifact_sha256":{"CANONICAL-WORD.json.gz":"2b34a781ec6a0b6249bc116afbf60c926474a84c7ef613e76f17dca1f26178af","CLIFFORD-RECIPES.json":"40520ee10efd4ed228b0105e76541f288fa9b1b027740b77cafc50b3ae5f6a7c","CLIFFORD-REVIEW.json":"5cc8cecb1562863e7105564eb15b13f7d0d1b180a83bf05237b2301f1895ae5d","INDEPENDENT-LOCAL-REPLAY.json":"41ed1ee4c0842c9da8bc1c88ad3f16feea9d83392341687361c26943c4d662ff","LOCAL-CHECKS.json":"5d843a435c5dd0e8276d637ec29ed99f3e601cbc50e26ed7c0f80795ccb71aec","LOCAL-PROGRAMS.json.gz":"b6e6d496eefc02532f91e833561b8cb676062c57d3943afc2ae0932810a5a36b","RESIDUAL-ADAPTERS.json":"d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69"},"terminal_codimension":214,"v":112,"width_inventory":{"4":44,"5":44,"7":38,"8":114,"9":240},"widths":[9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,8,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,4,9,4,9,4,9,9,9,9,4,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,7,7,7,7,7,7,7,7,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,8,8,8,8,8,8,9,9,9,9,9,9,7,7,8,8,8,8,9,9,9,9,9,9,8,8,8,9,8,8,9,9,9,9,8,9,7,7,8,9,8,8,9,9,9,9,8,9,8,8,8,8,8,8,8,8,8,8,9,7,7,7,8,8,8,8,8,8,8,8,9,7,8,8,9,9,9,9,8,8,8,8,7,7,7,7,9,8,9,8,8,8,8,8,7,7,9,8,9,8,7,7,7,7,8,8,8,8,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,4,8,4,4,4,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5,8,8,8,5,8,5,5,5]},"entering":192,"entrance":372,"expected_local":{"backward":{"coefficient_work_primitive_count":98373,"events":24769,"macros":19695,"prefix_l1":"14824960514781440791821/64","real_component_primitives":198830},"forward":{"coefficient_work_primitive_count":98341,"events":24769,"macros":19695,"prefix_l1":"2765345371136269591/1024","real_component_primitives":198782}},"expected_profile":{"1":2364,"2":498,"3":414,"4":126,"5":84,"8":8},"inventory":{"4":44,"5":44,"7":38,"8":114,"9":240},"native_negative_controls":25,"phase_edges":2900,"program_hashes":{"backward":"1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb","forward":"12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e"},"semantic_phase_sha256":"5cc8cecb1562863e7105564eb15b13f7d0d1b180a83bf05237b2301f1895ae5d","width_digest":"3e2624964db4f881ad1404d94ec595b3d1baba07bef90cf9037d802cc6299d11","wrappers":240}},"schema":"witness-spec/1","width_spot_helpers":[258,270,282,294]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/data/SUPPLIER-PLAN.json b/research/complex-t37-joint-x54-owners/data/SUPPLIER-PLAN.json new file mode 100644 index 0000000000..6fb4ca480a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/data/SUPPLIER-PLAN.json @@ -0,0 +1,40249 @@ +{ + "status": "FROZEN_EXPLICIT_GAUGE44_WHOLE_OWNER_NOMINATION", + "mode": "gauge44-all72", + "K": 4, + "T": 8, + "M": 73, + "L": 9, + "live": 7168, + "deficit": 2560, + "profile": { + "1": 174471, + "2": 31115, + "3": 30851, + "4": 9936, + "5": 6048, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "windows": { + "0,0": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,2": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,1": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,3": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,5": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,7": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,9": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,11": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,12": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,13": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,14": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,15": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,16": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,17": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "1,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,1": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,3": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,5": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,7": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,9": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,11": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,12": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,13": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,14": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,15": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,16": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,17": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "2,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,1": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,3": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,5": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,7": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,9": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,11": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,12": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,13": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,14": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,15": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,16": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,17": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "3,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,1": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,3": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,5": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,7": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,9": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,11": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,12": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,13": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,14": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,15": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,16": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,17": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "4,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,1": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,3": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,5": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,7": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,9": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,11": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,12": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,13": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,14": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,15": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,16": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,17": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "5,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,1": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,3": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,5": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,7": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,9": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,11": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,12": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,13": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,14": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,15": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,16": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,17": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "6,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,1": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,3": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,5": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,7": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,9": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,11": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,12": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,13": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,14": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,15": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,16": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,17": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "7,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,1": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,3": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,5": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,7": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,9": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,11": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,12": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,13": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,14": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,15": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,16": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,17": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ] + }, + "sides": { + "0": 0, + "2": 1, + "1": 0, + "3": 1, + "4": 0, + "6": 1, + "5": 0, + "7": 1, + "8": 0, + "10": 1, + "9": 0, + "11": 1, + "12": 0, + "13": 1, + "14": 0, + "15": 1, + "16": 0, + "17": 1 + }, + "pairs": { + "0": 1, + "2": 1, + "1": 1, + "3": 1, + "4": 2, + "6": 2, + "5": 2, + "7": 2, + "8": 3, + "10": 3, + "9": 3, + "11": 3, + "12": 0, + "13": 0, + "14": 1, + "15": 1, + "16": 2, + "17": 2 + }, + "solver_status": "g44pack_early_lns_of_deterministic-capacity-matching", + "gap": null, + "provider_calls": [ + { + "time": 0, + "stage": 0, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 1, + "stage": 0, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 2, + "stage": 1, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 3, + "stage": 0, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 4, + "stage": 1, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 5, + "stage": 2, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 6, + "stage": 0, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 7, + "stage": 1, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 8, + "stage": 2, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 9, + "stage": 3, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 10, + "stage": 0, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 11, + "stage": 1, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 12, + "stage": 2, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 13, + "stage": 3, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 14, + "stage": 4, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 15, + "stage": 0, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 16, + "stage": 1, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 17, + "stage": 2, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 18, + "stage": 3, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 19, + "stage": 4, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 20, + "stage": 5, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 21, + "stage": 0, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 22, + "stage": 1, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 23, + "stage": 2, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 24, + "stage": 3, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 25, + "stage": 4, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 26, + "stage": 5, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 27, + "stage": 0, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 28, + "stage": 6, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 29, + "stage": 1, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 30, + "stage": 2, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 31, + "stage": 3, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 32, + "stage": 4, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 33, + "stage": 5, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 34, + "stage": 6, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 35, + "stage": 1, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 36, + "stage": 7, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 37, + "stage": 2, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 38, + "stage": 3, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 39, + "stage": 4, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 40, + "stage": 5, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 41, + "stage": 6, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 42, + "stage": 7, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 43, + "stage": 2, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 44, + "stage": 8, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 45, + "stage": 3, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 46, + "stage": 4, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 47, + "stage": 5, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 48, + "stage": 6, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 49, + "stage": 7, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 50, + "stage": 8, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 51, + "stage": 3, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 52, + "stage": 4, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 53, + "stage": 5, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 54, + "stage": 6, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 55, + "stage": 7, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 56, + "stage": 8, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 57, + "stage": 4, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 58, + "stage": 5, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 59, + "stage": 6, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 60, + "stage": 7, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 61, + "stage": 8, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 62, + "stage": 5, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 63, + "stage": 6, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 64, + "stage": 7, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 65, + "stage": 8, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 66, + "stage": 6, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 67, + "stage": 7, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 68, + "stage": 8, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 69, + "stage": 7, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + { + "time": 70, + "stage": 8, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + }, + { + "time": 71, + "stage": 8, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e" + } + ], + "per_call_widths": [ + { + "stage": 0, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + } + ], + "provider_registry": { + "gauge44": { + "directory": "providers/gauge44", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "cec996f812022db4a6bc6f95d778b04b85938b82e1de0d2dca0825dc395e03cf", + "LOCAL-PROGRAMS.json.gz": "cf20b3bfdfc2c92fabfbec492ae441d4fbf670ed5d2fc42e4f89d6011695f315", + "LOCAL-CHECKS.json": "658c80d13dc992e18186740f71e88aa4d9a76010bf8da2de77722970d83710e9", + "INDEPENDENT-LOCAL-REPLAY.json": "29831c94af90faa41efbb81c1e276535109821c34378acb2b252e396b96ed590", + "CLIFFORD-RECIPES.json": "40520ee10efd4ed228b0105e76541f288fa9b1b027740b77cafc50b3ae5f6a7c", + "CLIFFORD-REVIEW.json": "505b1acdb2b3ff9ab00b45d54bef58e5210768f7d3d11bd4aff6719fcc968895", + "RESIDUAL-ADAPTERS.json": "c099207d60ab49392bcadcaf7e9cbcfe01178e732f14e2591a8c3463162460d7" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2364, + "2": 498, + "3": 414, + "4": 126, + "5": 84, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "12960a48d39ca4e4187dbcafa0cd8ecfc43fd7a9479c1a2fb3ba8438c3ddfb5e", + "backward": "1e1f4ada65568b65479452e89569a7c9ec1c1900a10684ebfe3ec835800dfddb" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "2b34a781ec6a0b6249bc116afbf60c926474a84c7ef613e76f17dca1f26178af", + "LOCAL-PROGRAMS.json.gz": "b6e6d496eefc02532f91e833561b8cb676062c57d3943afc2ae0932810a5a36b", + "LOCAL-CHECKS.json": "5d843a435c5dd0e8276d637ec29ed99f3e601cbc50e26ed7c0f80795ccb71aec", + "INDEPENDENT-LOCAL-REPLAY.json": "41ed1ee4c0842c9da8bc1c88ad3f16feea9d83392341687361c26943c4d662ff", + "CLIFFORD-RECIPES.json": "40520ee10efd4ed228b0105e76541f288fa9b1b027740b77cafc50b3ae5f6a7c", + "CLIFFORD-REVIEW.json": "5cc8cecb1562863e7105564eb15b13f7d0d1b180a83bf05237b2301f1895ae5d", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + } + } + }, + "source_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "assignment_sha256": "93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045", + "source_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add" +} diff --git a/research/complex-t37-joint-x54-owners/data/X54-RECIPE.json b/research/complex-t37-joint-x54-owners/data/X54-RECIPE.json new file mode 100644 index 0000000000..e8303a9a96 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/data/X54-RECIPE.json @@ -0,0 +1,163 @@ +{ + "base_sha256": "1f66640293bde6c7e1df2d4ee0004c2de2327887a98575c5d975d6a14a8b7e74", + "B_delete": [ + 44, + 922, + 933, + 1196, + 1212 + ], + "B_insert": [ + [ + 44, + [ + "add", + 219, + 589, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 898, + [ + "add", + 367, + 589, + 1, + 1, + [ + 288, + 166, + 96, + 20, + 10, + 1 + ] + ] + ], + [ + 898, + [ + "add", + 335, + 54, + 1, + 1, + [ + 267, + 138, + 75, + 42, + 25, + 7 + ] + ] + ], + [ + 1196, + [ + "add", + 219, + 589, + 1, + 1, + [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1212, + [ + "add", + 155, + 54, + 1, + 1, + [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ] + ] + ] + ], + "B_frames": {}, + "tail_insert": [ + [ + 0, + [ + "add", + 367, + 589, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ] + ], + "cleanup_prepend": [ + [ + "add", + 335, + 54, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ] + ], + "local_profile": { + "1": 2364, + "2": 498, + "3": 414, + "4": 126, + "5": 84, + "8": 8 + }, + "expect_sha256": "ac95ff95d5b1360e040e50f480dd7edc80f50f76160c30e73d6f0b04276ace20", + "variants": [ + { + "X": 54, + "E": 589, + "hold": [ + 335, + 367 + ] + } + ], + "source": "PR1130 X54 operation on PR1148 joint entrance word; unchanged scalar operation recipe", + "note": "early-cleanup gate frames in cleanup are kept as in base (package T-frame convention)" +} diff --git a/research/complex-t37-joint-x54-owners/native_x54.py b/research/complex-t37-joint-x54-owners/native_x54.py new file mode 100644 index 0000000000..b980093f88 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/native_x54.py @@ -0,0 +1,54 @@ +"""Apply PR1130's X54 slot recipe after PR1148 joint entrances.""" +import argparse,gzip,hashlib,os,subprocess,sys,time +from pathlib import Path +from common import P,read,dump,sha + +def main(): + ap=argparse.ArgumentParser(description=__doc__) + for name in ('main','pr635','baseline','work'):ap.add_argument('--'+name,type=Path,required=True) + a=ap.parse_args();root=a.main.resolve();base=a.baseline.resolve();work=a.work.resolve() + assert not work.exists() and not work.is_relative_to(root);work.mkdir(parents=True) + prior=read(base/'RESULT.json') + assert prior['status']=='PASS_JOINT_ENTRANCES_COMPLETE_ADMISSION' + assert not prior['native_reuse'] and not prior['parent_reuse'] + assert prior['kappa_decimal']==read(P/'vendor/pr1148/research/k8-joint-entrances/CLAIM.json')['kappa_decimal'] + expected=['parent','build','independent-local','entrance-controls','native','strict-global','all-replica-bound'] + assert [s['step']for s in prior['steps']]==expected and all(s['exit_code']==0 for s in prior['steps']) + pkg=P/'vendor/pr1130/research/gauge44-ends7-x54-t16';x54=pkg/'construction/ends7/x54' + source=root/'research/complex-k492-owner-repair/vendor/multicold';ancestor=source/'vendor/pr558';parent=ancestor/'vendor/pr552' + up=a.pr635.resolve()/'research/complex-571-cold14-st2';input_word=base/'FULL-WORD.json.gz' + recipe=P/'data/X54-RECIPE.json';rec=read(recipe) + assert hashlib.sha256(gzip.decompress(input_word.read_bytes())).hexdigest()==rec['base_sha256'] + env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONINTMAXSTRDIGITS='0',MULTICOLD_SOURCE=str(source),GAIN_PR564_SOURCE=str(source)) + env.pop('PYTHONOPTIMIZE',None);steps=[] + def run(name,script,*args,portable=False): + begin=time.monotonic();cmd=[sys.executable,'-B']+([str(source/'code/run_portable.py')]if portable else[])+[str(script),*map(str,args)] + log=work/(name+'.log') + with log.open('w')as f:r=subprocess.run(cmd,env=env,cwd=root,stdout=f,stderr=subprocess.STDOUT) + steps.append(dict(name=name,exit_code=r.returncode,seconds=round(time.monotonic()-begin,3),log_sha256=sha(log)));dump(work/'STAGES.json',steps) + if r.returncode:raise RuntimeError(name+'\n'+log.read_text()[-5000:]) + print('PASS',name,flush=True) + raw=work/'FULL-WORD.json.gz';local=work/'local';routing=parent/'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + run('construct',x54/'build_tri.py',input_word,recipe,raw) + assert hashlib.sha256(gzip.decompress(raw.read_bytes())).hexdigest()==rec['expect_sha256'] + run('x54-controls',x54/'run_controls.py',input_word,recipe,pkg/'independent/audit_local.py',work/'controls') + controls=read(work/'controls/controls.json');assert len(controls)==10 and all(c['ok']for c in controls.values()) + run('native',up/'code/hpe_audit_and_transport.py','--raw',raw,'--routing',routing,'--out',local,portable=True) + run('ledgers',up/'code/hpe_emit_local.py',local,portable=True) + run('local-replay',up/'code/hpe_audit_local.py',local,portable=True) + run('wrappers',up/'code/hpe_adapters_local.py',local/'CANONICAL-WORD.json.gz',local/'RESIDUAL-ADAPTERS.json',local/'WRAPPER-CHECKS.json',portable=True) + run('phases',ancestor/'code/phases_full.py',local,parent/'complex-global/vendor531/vendor/clifford',portable=True) + run('independent',pkg/'independent/audit_local.py','--main',root,'--word',raw,'--output',work/'INDEPENDENT-LOCAL.json') + run('leaver-premise',pkg/'construction/ends7/premise/premise_check.py',raw) + independent=read(work/'INDEPENDENT-LOCAL.json');claim=read(P/'CLAIM.json') + assert independent['status']=='PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES' + assert independent['local_profile']==claim['local_profile']and independent['width_inventory']==claim['width_inventory'] + premise=__import__('json').loads((work/'leaver-premise.log').read_text().strip().splitlines()[-1]) + assert premise['status']=='PASS_LEAVER_PREMISE'and premise['cells']==8 and premise['paid_profile']==claim['local_profile'] + old=read(base/'native/local/CANONICAL-WORD.json.gz');new=read(local/'CANONICAL-WORD.json.gz') + widths=lambda w:[len(w['frames'][w['final'][q]])-len(w['frames'][w['start'][q]])for q in range(224,704)] + assert widths(old)==widths(new)==read(P/'data/SUPPLIER-PLAN.json')['provider_registry']['gauge44']['widths'] + result=dict(status='PASS_JOINT_ENTRANCE_X54_LOCAL_RECIPE_CONTROLS_NATIVE_PHASES_INDEPENDENT_AND_LEAVER',steps=steps, + recipe_sha256=sha(recipe),word_content_sha256=rec['expect_sha256'],canonical_sha256=sha(local/'CANONICAL-WORD.json.gz'),x54_negative_controls=8,unchanged_helper_width_vector=True) + dump(work/'RESULT.json',result);print(result['status'],flush=True) +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/normalize_flow.py b/research/complex-t37-joint-x54-owners/normalize_flow.py new file mode 100644 index 0000000000..de24851031 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/normalize_flow.py @@ -0,0 +1,42 @@ +"""Normalize PR1169's exact flow certificate for the retained T37 constructor. + +The integer entries are unchanged. Width indices become literal widths; +physical window groups become explicit replica/child labels. +Credit Rohan Arun's PR1169, Ali Romman's PR1129 and the retained source notices. +""" +from common import P,read,dump + +def normalize(): + d=read(P/'vendor/pr1169/research/three-demotions-t37-composition/PATTERN-FLOW.json') + assert d['T']==37 and d['order']==read(P/'data/ORDER.json') + ws=(4,5,7,8,9);xs={};ys={} + for entry,n in d['entries']: + assert type(n)is int and n>0 + if entry[0]=='x': + _,g,p=entry;assert(g,p)not in xs;xs[g,p]=n + else: + assert entry[0]=='y';_,g,p,t,w=entry + assert(g,p,t,w)not in ys and 0<=w<5;ys[g,p,t,w]=n + result=[];used_x=set();used_y=set() + for gi,(r,cap,ts,children)in enumerate(d['groups']): + group=dict(physical_windows=[f'{r},{c}'for c in children],patterns=[]) + for pi,pat in enumerate(d['patterns'][str(cap)]): + n=xs.get((gi,pi),0) + if not n:continue + used_x.add((gi,pi));assert len(pat)==5 and all(type(z)is int and z>=0 for z in pat) + widths=[w for w,z in zip(ws,pat)for _ in range(z)] + flows=[] + for key,count in sorted(ys.items()): + g,p,t,w=key + if(g,p)==(gi,pi):flows.append([t,ws[w],count]);used_y.add(key) + group['patterns'].append(dict(count=n,widths=widths,flow=flows)) + result.append(group) + assert used_x==set(xs) and used_y==set(ys) + return result + +if __name__=='__main__': + import argparse + ap=argparse.ArgumentParser();ap.add_argument('--out',type=__import__('pathlib').Path,required=True);a=ap.parse_args() + assert not a.out.exists();flow=normalize();assert flow==read(P/'data/FLOW.json.gz') + dump(a.out,dict(status='PASS_PR1169_LITERAL_INTEGER_FLOW_NORMALIZATION',groups=len(flow))) + print('PASS_PR1169_LITERAL_INTEGER_FLOW_NORMALIZATION') diff --git a/research/complex-t37-joint-x54-owners/package.py b/research/complex-t37-joint-x54-owners/package.py new file mode 100644 index 0000000000..1164d5f92e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/package.py @@ -0,0 +1,28 @@ +"""Pin the complete package and the retained repository source closure.""" +from common import P,ROOT,read,sha,load +COPY_TREES=('research/complex-k492-owner-repair', + 'research/structural-gain/frontier-composition', + 'research/community-k492-audit/pr622/replay/baseline558', + 'research/e8-bit-p111-tuned','research/e8-bit-carrier-skeleton', + 'research/complex-sw4-frame8','research/gauge44-frames-x','scripts') +COPY_FILES=('research/direct-delivery504-global/EXPECTED.json',) + +def manifest(package=P): + expected=read(package/'MANIFEST.json') + actual={p.relative_to(package).as_posix():sha(p)for p in package.rglob('*') + if p.is_file() and p!=package/'MANIFEST.json' and '__pycache__'not in p.parts} + if actual!=expected:raise ValueError('Package manifest mismatch') + return sha(package/'MANIFEST.json') + +def validate(): + digest=manifest() + dependencies=read(P/'DEPENDENCY-PINS.json') + for relative,expected in dependencies.items(): + path=(ROOT/relative).resolve() + assert path.is_relative_to(ROOT.resolve()) and not __import__('pathlib').Path(relative).is_absolute() + assert sha(path)==expected,'Changed retained source: '+relative + predecessor=load(ROOT/'research/complex-t37-owners/package.py','retained_t37_package').validate() + return dict(manifest_sha256=digest,dependency_manifest_sha256=sha(P/'DEPENDENCY-PINS.json'), + dependencies=len(dependencies),retained_t37=predecessor) + +if __name__=='__main__':print(validate()) diff --git a/research/complex-t37-joint-x54-owners/prepare.py b/research/complex-t37-joint-x54-owners/prepare.py new file mode 100644 index 0000000000..ae8e3e7eb2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/prepare.py @@ -0,0 +1,60 @@ +"""Reuse PR942's explicit source adapters and build the five-bank parent. + +Only the frozen order, owner map, and joint-entrance X54 supplier metadata are replaced. +The PR942 finite invoice still charges its 1024-bit prefix reserve. +""" +import copy,os,shutil +from common import P,ROOT,read,dump,load,sha,identity + +def prepare(work,baseline): + t37=ROOT/'research/complex-t37-owners' + t21=ROOT/'research/complex-t21-owners' + os.environ.update(T37_WORK=str(work),T37_BASELINE=str(baseline)) + old=load(t37/'prepare.py','retained_t37_preparation') + runtime=work/'runtime';adapted=work/'adapted';adapted.mkdir() + load(t21/'source_adapters.py','retained_t21_adapters').materialize(runtime) + (runtime/'ADAPTERS.json').rename(runtime/'T21-INTERMEDIATE-ADAPTERS.json') + receipts={} + for name,record in old.expected_adaptations().items(): + target=runtime/'code'/name.split('/',1)[1]if name.startswith('runtime/')else adapted/name + text=record['text'];extra=[] + if name=='runtime/assemble.py': + for before,after in [ + ('the gauge44-barch U8 local word and all 72 cold helper ends','the joint-entrance X54 k8 local word'), + ('explicit all333 whole-owner dispatch with a T21 plus T16 eight-role trade','explicit 333-call wave dispatch with frozen integer pattern flows'), + ('This is a new T37 composition of the PR870 U8 and PR589 suppliers.','This is a new T37 composition of the joint-entrance X54 k8 and PR589 suppliers.')]: + assert text.count(before)==1,(before,text.count(before));text=text.replace(before,after);extra.append([before,after,1]) + target.write_text(text,encoding='utf-8',newline='\n') + receipts[name]=dict(source_sha256=sha(record['source']),generated_sha256=sha(target),edits=record.get('edits',[]),description_edits=extra) + dump(work/'ADAPTATIONS.json',receipts) + source=read(baseline/'global/base/split-centres/GLOBAL-TEMPLATE.json.gz') + builder=load(adapted/'build_parent.py','retained_t37_parent_lift');parent=builder.lift(source) + plan=read(P/'data/SUPPLIER-PLAN.json');order=read(P/'data/ORDER.json');owners=read(P/'data/OWNERS.json.gz') + windows_mod=load(t21/'vendor/pr870/t16/build_parent.py','retained_physical_windows') + windows,schedule=windows_mod.actual_windows(parent,order) + for field in ('provider_calls','per_call_widths'): + lookup={(c['stage'],c['replica']):c for c in plan[field]};plan[field]=[] + for time,(stage,replica)in enumerate(order): + call=copy.deepcopy(lookup[stage,replica%8]);call['replica']=replica + if 'time'in call:call['time']=time + plan[field].append(call) + claim=read(P/'CLAIM.json') + plan.update(T=37,live=33152,deficit=11840,order=order,windows=windows,profile=claim['complex_profile'], + status='FROZEN_T37_SEVEN_SLOT_WHOLE_OWNER_NOMINATION',mode='gauge44-seven-slot-k8-t37-wave', + solver_status='Frozen integer pattern flow, reconstructed by regular bipartite matching; no optimizer runs', + assignment_sha256=sha(P/'data/OWNERS.json.gz'),assignment_content_sha256=identity(owners), + replica_lift=dict(groups=[8,8,8,8,5],source_replicas=8,replicas=37,parent_template_content_sha256=identity(parent), + owners_file_sha256=sha(P/'data/OWNERS.json.gz'),schedule_content_sha256=identity(schedule),window_semantics='Strict physical source-event intervals, including bridges')) + assert len(owners)==159840 and sum(int(r)*n for r,n in plan['profile'].items())==73*33152-11840 + for z in owners: + assert order[z['time']]==[z['stage'],z['replica']] + assert z['time']in windows[f"{z['owner_replica']},{z['child']}"][1] + lift=work/'lift';lift.mkdir();dump(lift/'GLOBAL-TEMPLATE.json.gz',parent);dump(lift/'PLAN.json',plan) + parentdir=work/'parent';shutil.copytree(baseline/'parent558',parentdir) + shutil.copyfile(lift/'GLOBAL-TEMPLATE.json.gz',parentdir/'complex-global/base/split-centres/GLOBAL-TEMPLATE.json.gz') + (runtime/'data').mkdir(exist_ok=True) + spec=read(P/'data/SPEC.json') + assert spec['data']=={'owners_sha256':sha(P/'data/OWNERS.json.gz'),'plan_sha256':sha(lift/'PLAN.json')},'Frozen owner/plan bindings differ' + spec['pivot_swap']['recipe']=str((P/spec['pivot_swap']['recipe']).resolve()) + dump(runtime/'data/SPEC.json',spec) + return plan diff --git a/research/complex-t37-joint-x54-owners/price.py b/research/complex-t37-joint-x54-owners/price.py new file mode 100644 index 0000000000..2c3ddcc98b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/price.py @@ -0,0 +1,56 @@ +"""Two exact moment engines, strict outer assembly, and the fixed-family ceiling. + +Reuses the signed prices and all-replica supporting inequality of PR795/890/942. +The changed inventory is recounted from the frozen seven-slot supplier plan. +""" +import argparse +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path +from common import P,ROOT,read,dump,load,sha + +def price(out): + d=load(ROOT/'research/complex-t37-owners/independent/all_t_bound.py','retained_all_t_bound') + for path,pin in d.PINS.items():assert sha(ROOT/path)==pin,'Retained arithmetic pin' + plan=read(P/'data/SUPPLIER-PLAN.json');claim=read(P/'CLAIM.json') + provider=plan['provider_registry']['gauge44'];inventory=Counter(provider['widths']) + local={int(r):n for r,n in provider['actual_paid_profile'].items()} + assert {str(r):n for r,n in inventory.items()}==claim['width_inventory'] + assert {str(r):n for r,n in local.items()}==claim['local_profile'] + mass=sum(c*n for c,(n,_)in d.CAPACITIES.items())-9*sum(r*n for r,n in inventory.items()) + signed=sum(n*p for n,p in d.CAPACITIES.values())+9*sum(inventory[r]*p for r,p in zip(d.WIDTHS,d.PRICES)) + credit=48*signed+13*mass;assert(mass,signed,credit)==(14778,-3568,20850) + upper,patterns=d.dual_tables();idle={int(r):n for r,n in claim['idle'].items()} + assert sum(r*n for r,n in idle.items())==37*mass + assert sum(upper[r]*n for r,n in idle.items())==37*signed + assert Q(credit,925)==Q(834,37) + profile=Counter({r:333*n for r,n in local.items()});profile.update(idle) + assert {str(r):n for r,n in profile.items()}==claim['complex_profile'] + assert 73*33152-sum(r*n for r,n in profile.items())==11840 + M=d.load(d.ENGINE+'moment.py','t37_slots_mercator') + B=d.load(d.ENGINE+'base_two_moment.py','t37_slots_atanh') + A=d.load(d.ENGINE+'outer.py','t37_slots_outer') + O=d.load('research/complex-t21-owners/vendor/pr870/independent/price_profile_t16.py','t37_slots_outer_driver') + root=M.certify(profile,73,33152);lo,hi=Q(root['lower']),Q(root['upper']) + assert lo==Q(claim['complex_lower']) + signs={} + for name,z in [('lower',lo),('upper',hi)]: + first=M.moment(profile,73,33152,z);second=B.moment(73,33152,list(profile.items()),z) + assert(first[1]<1 and second[1]<1)if name=='lower'else(first[0]>1 and second[0]>1) + signs[name]={'point':str(z),'mercator':[str(v-1)for v in first],'atanh':[str(v-1)for v in second]} + supporting={kind:d.ratio_certificate(engine,kind,upper,hi)for kind,engine in [('mercator',M),('atanh',B)]} + bit=Q(claim['bit_lower']) + assert bit==Q(read(ROOT/'research/complex-t21-owners/data/CLAIM.json')['bit_lower']) + outer=[O.outer47(bit,z,A)for z in (lo,hi)] + assert outer[0]['kappa']==outer[1]['kappa']==claim['kappa'] + result=dict(status='PASS_TWO_ENGINE_MOMENTS_OUTER47_AND_FIXED_FAMILY_ALL_T_CEILING', + kappa=claim['kappa'],kappa_decimal=claim['kappa_decimal'],profile=claim['complex_profile'], + root=root,signs=signs,outer=outer,patterns=patterns,signed_per_replica=signed, + idle_mass_per_replica=mass,rank_one_credit_per_replica=credit,supporting_inequalities=supporting, + scope='Attained outer-grid ceiling for this fixed local paid profile, whole-helper inventory, source capacity stock and retained bit supplier. It is not a ceiling for other constructions.') + dump(out,result);return result + +if __name__=='__main__': + ap=argparse.ArgumentParser(description=__doc__);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args() + assert not a.out.exists() and not a.out.resolve().is_relative_to(ROOT);a.out.parent.mkdir(parents=True,exist_ok=True) + r=price(a.out);print(r['status'],r['kappa_decimal']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/CONSTRUCTION.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/CONSTRUCTION.md new file mode 100644 index 0000000000..fa15676366 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/CONSTRUCTION.md @@ -0,0 +1,210 @@ +# Gauge44: a changed factory forward map with 44 rank-four cold ends + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. This note describes the new complex local construction. The package's global evidence supplies the resulting global bound and retains the upstream conditional assumptions. + +## 1. Exact result and comparison + +The final word has 112 source ports, 112 target ports and 492 helper registers. It implements the same arbitrary-dirt scalar endpoint as the upstream word, + +$$ +(X,Y,H)\longmapsto(X,Y+X,H), +$$ + +and its inverse-transpose orientation is checked separately. All 204 nonzero entrance frames remain valid. The new ending set consists of **44 cold helpers at rank-four frames**, together with the 34 entering-helper ends inherited from the JP8 HPE stage. + +The precise comparison is with the JP8 provider reconstructed from PR635, commit `a6895a69f8ad98ab45777b03e9e6f48888c39f6f`: + +| Local quantity | PR635 JP8 | Gauge44 | +|---|---:|---:| +| Helpers | 492 | 492 | +| Nonzero entrance frames | 204 | 204 | +| Rank-four cold ends | 22 | 44 | +| Rank-seven cold ends | 2 | 0 | +| Rank-eight cold ends | 4 | 0 | +| Entering helpers ending below FULL | 36 | 34 | +| Total residual helper width | 3894 | **3794** | +| Local paid rank mass | 5750 | **5650** | + +Thus the new word saves **100 units of residual width per invocation** against the complete PR635 provider. It replaces that provider's cold-end construction; the old six higher-rank cold ends and two additional entering ends are not added to the new count. + +The exact paid-child profiles are: + +| Child rank | PR635 count | Gauge44 count | +|---:|---:|---:| +| 1 | 2518 | 2514 | +| 2 | 402 | 404 | +| 3 | 448 | 448 | +| 4 | 164 | 160 | +| 5 | 68 | 56 | +| 6 | 4 | 0 | +| 8 | 8 | 8 | + +The final residual-width inventory is `{4:52, 5:48, 7:34, 8:114, 9:244}`. Both the profile and the inventory are recomputed from the literal native frame chains. They are not inferred from the nominal number of ended helpers. + +## 2. What changes in the forward factory + +The inherited K-triangle schedule and its 492-helper allocation remain the starting construction. Within each of the fourteen eight-source packet factories, three changes alter the arbitrary-dirt forward map while retaining the required clean packet values. + +### A. Exchange a source with an equal clean copy + +After the sixteen initial copy gates, local source position `j` and its two helper copies have clean values `(x_j,x_j,x_j)`. For positions `j = 4,5,6,7`, exchange the original source register with its second helper copy. The exact register pair in the constructor is `mp[j]` and `mp[2*j+9]`. + +For arbitrary helper dirt the triple is instead + +$$ +(x_j,\;x_j+h_{j,1},\;x_j+h_{j,2}). +$$ + +The exchange changes where the second dirty direction enters the subsequent factory. It does not change any clean operand. Both exchanged registers already have the same rank-one frame, so the exchange adds no frame climb. Each exchange is emitted as three additions and one sign change; these scalar operations remain part of the finite implementation invoice. + +This is a change of the forward map, not an output relabeling. In particular, the inverse recovery functional for the original source changes from the original branch to a different combination of the three equal-clean branches. That changes which cold input directions can have their entire final support inside a low frame. + +### B. Change the complement to the four coordinate totals + +Eight retired factory rows already span the eight source coordinates. The first four rows of their replacement basis are the four required coordinate totals. The remaining four rows are chosen by exact row-rank extension, first using the ordered clean linear forms recorded in `construction/COMPLETION-PRIORITY.json`, then using coordinate rows if an extension is still needed. + +These candidate forms are the future low-frame leaver forms used during discovery. The frozen priority data are the complete input to the final constructor: no discovery search is run in reproduction. Every accepted row must increase the rational rank; the resulting eight-by-eight basis is explicitly applied by elementary operations. + +All eight retired registers are already at the block's rank-four frame. Consequently this basis replacement also adds no frame climb. It gives the low final rows more independent linear combinations that annihilate the original source data. + +### C. Place coordinate totals on the available source carriers + +The retired registers are ordered with source registers first. Three available source carriers and one helper carry the four coordinate totals, leaving the four complementary rows on physical helper registers. This lets the new cold directions end on helper wires under the unchanged native endpoint interface. + +A carrier permutation alone does not increase the available cold space. Its role here is to realize the independent directions created jointly by the source-copy exchange and the new complementary basis. + +## 3. Exact cold-space calculation + +Let `P` be the non-target forward matrix after parts A and B and the 34 inherited HPE tail gates. It has 604 rows and columns: 112 original sources and 492 helpers. Let `J` be the 316 protected initial columns consisting of the 112 original sources and all 204 entering helpers. + +For a block frame `F`, let `I` be every non-target output register whose current frame is contained in `F`. Source output rows are included in this set. Define + +$$ +L=\operatorname{leftker} P[I,J],\qquad +K=\ker P^{-1}[J,I]. +$$ + +Rows of `L` are low output linear forms with no protected initial dependence. Columns of `K` are low-supported output directions whose inverse images have no protected component. The rank of the pairing `LK` counts the simultaneously usable cold directions in this fixed forward word. + +The changed forward map has the following exact block data: + +| Block indices | Number of blocks | Low registers `|I|` | `dim L` | `dim K` | `rank(LK)` | +|---|---:|---:|---:|---:|---:| +| 0, 1, 2, 11, 12, 13 | 6 | 6 | 2 | 4 | **2** | +| 3 through 10 | 8 | 8 | 4 | 4 | **4** | + +The count is therefore `6*2 + 8*4 = 44`. The fixed upstream rank-four cold construction supplied one and two directions respectively, for `6*1 + 8*2 = 22`. + +The complement change by itself improves the available low annihilating rows but leaves the inverse-support obstruction. The source-copy exchanges remove that obstruction: `K` has dimension four in every block and pairs with all the available rows of `L`. + +## 4. Realizing the directions with legal dyadic operations + +`construction/build_gauge_cold44.py` recomputes these spaces over exact rational numbers. It selects columns of `K` and normalizes them to a matrix `U` satisfying + +$$ +LU=I_r, +\qquad q=P^{-1}[:,I]U. +$$ + +The constructor checks that `q` is supported entirely on that block's sixteen initially cold factory helpers, denoted `H_b`. Put + +$$ +R_b=LP[I,H_b]. +$$ + +Then `R_b q[H_b,:] = I_r`. A sixteen-by-sixteen input basis `Q_b` places the columns `q[H_b,:]` at the designated ended-helper positions and fills the other columns with a basis of `ker R_b`. The resulting input basis is explicitly invertible. + +For the low-frame output transformation, the ended-helper rows are replaced by the rows of `L`; each remaining low row `i` becomes + +$$ +e_i-U_iL. +$$ + +The actual chosen helper positions give an invertible tail matrix. Its nonsingularity and dyadic implementation are checked by exact elimination, rather than assumed from a dimension count. The construction receipt records every `Q_b`, tail matrix and selected endpoint. + +Every `Q_b` is emitted at frame zero, at the head of A **after** the entry normalization wrappers. Every low tail is emitted at its block frame. The remaining cleanup is rebuilt as an exact dyadic Gauss-Jordan inverse on the non-ended registers at FULL. It is not obtained by blindly reversing a changed partial schedule. + +Before forming the FULL inverse, the constructor verifies both the row and the column identity of each of the 78 ended helpers. Thus no protected data or other helper dirt remains in an ended helper, and its initial dirt remains nowhere else. The FULL inverse skips these isolated rows and columns entirely. + +The realized word has: + +| Construction component | Scalar gates | +|---|---:| +| Frame-zero helper premix | 1489 | +| New rank-four tail | 60 | +| Inherited HPE tail | 34 | +| Refactored FULL inverse | 28056 | +| Additional target compensation after wrappers | **0** | + +All selected new cold directions have zero target response. The independent scalar auditor nevertheless recomputes the complete existing dirty-response compensation, obtaining 7348 additions, and checks both orientations on all 716 input columns. + +Relative to the HPE-stage word before any cold-end construction, the aggregate chain delta is `N_1 += 44, N_6 -= 44`, reducing rank mass and residual width by 220. PR635 had already saved 120 units through its complete cold/extra-HPE construction. The net new saving is therefore 100. There is no omitted cost for lifting the low tails: their rank-one increments are included explicitly. + +## 5. Native interface and validation + +The transport preserves the exact ordered list of 112 ports and the exact ordered eight center frames. The center carriers change because some totals now reside on sources. In native coordinates they are + +``` +[92, 57, 81, 224, 11, 240, 9, 256] +``` + +A global interface check must compare the ordered center frames and port geometry, and use the provider's actual center carriers. Equality of carrier numbers with an old provider is not a mathematical requirement. The local event ledgers explicitly clear all private center channels in both orientations. + +Completed checks for the frozen word include exact forward and inverse-transpose scalar replay on all 716 columns; every literal native frame chain; the 204 zero-response entrance conditions; the 44 cold and 34 entering endpoint cones; wrapper placement and normalized wrapper identities; both emitted local ledgers; and exact phase lowering for 3019 directed edges and 224 endpoint adapters. The independent audit does not import the new constructor. + +This local result does not by itself certify a global exponent. Physical whole-family owners, actual residual/spectator routing, idle remainders, global scalar assembly and the complete finite invoice are the separate global checks reported elsewhere in the package. + +## 6. Compact reproduction + +Only Python's standard library is needed for this construction and the retained local pipeline. Do not use `python -O`. The reproduction driver checks byte hashes of every named upstream input and the changed code, then checks the content hash after each construction step. Its two source checkouts are: + +| Argument | Repository commit | +|---|---| +| `--main` | `17ce0c79b7b51c2634b439ea5a2b754f09909693` | +| `--pr635` | `a6895a69f8ad98ab45777b03e9e6f48888c39f6f` | + +Starting from a clone of `https://github.com/CrocSwap/integer-mult-bounds` containing those commits, prepare detached worktrees: + +```bash +git -C integer-mult-bounds fetch origin main refs/pull/635/head +git -C integer-mult-bounds worktree add --detach ../integer-main 17ce0c79b7b51c2634b439ea5a2b754f09909693 +git -C integer-mult-bounds worktree add --detach ../integer-pr635 a6895a69f8ad98ab45777b03e9e6f48888c39f6f +``` + +From the directory containing those worktrees and this delta package, run: + +```bash +python -B research/gauge44-global/construction/reproduce.py \ + --main integer-main \ + --pr635 integer-pr635 \ + --out gauge44-reproduction +``` + +The default stops after regenerating the exact final scalar word and comparing the newly derived cold recipe with the frozen recipe. It rebuilds only the two short shadow steps needed by the four port transfers. It does not rerun the ancestor admission stack, search for a basis, optimize owners, or replay global assembly. + +Use `--frozen-cold` to splice the included recipe instead of re-deriving its small exact linear systems. Use `--until local` to add native transport, emitted ledgers, independent local replay and wrappers. Use `--until phases` to add the complete phase lowering. Every invocation needs a fresh output directory; these are alternatives, not resumable increments. On the research machine, exact cold derivation took about 2.6 seconds, native transport/ledgers/replay/wrappers about 41 seconds, and complete phase lowering about 198 seconds. + +The exact dependency chain is: + +1. Construct the changed raw R492 factory from the pinned Hamming inputs, frozen priority and pinned K-triangle schedule. +2. Apply the four inherited port stages. +3. Apply the inherited B-frame regroup and 34-HPE construction. +4. Derive the exact block premixes, cold44 tails and FULL inverse. +5. Optionally emit and check the native ledgers, wrappers and complete phase lowering. + +`construction/INPUTS.json` gives the input hashes and every intermediate content hash. The key decompressed content identities are: + +| Word | SHA-256 | +|---|---| +| Changed raw factory | `0ac47f92fc2e3f5aa457d78f7b8a5c785bf140c546932b9dfcd9e610ad319180` | +| Changed HPE forward | `42fb8b3aa314593fe976820cf65824f5fce0ee4f95281796992d4809709864cc` | +| Final cold44 word | `78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290` | +| Native canonical word | `e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f` | + +## 7. Attribution + +The original 504-helper factory and borrowed-register construction are icekylinx's PR531 lineage, prepared with OpenAI Codex/GPT assistance and retaining the earlier PR425/PR514 credits. The inherited K-triangle atom and frozen read schedule are credited in PR635 to AtomScout, a Claude Code research agent. The porting routine is credited there to Port480. This package does not claim those as new work. + +The reused JP8 ancestry includes the PR558/PR552 supplier, the earlier-cut and multicold kernels, and the joint prefix adapted from Dominik Scholz's PR571 work. Native HPE and cold-end transport, frame and wrapper machinery come from the credited PR635 lineage, including DreamingOfClouds, jeremykothe2, chafreaky and their disclosed assistants. The retained `construction/UPSTREAM-NOTICE.md` and `construction/LICENSE` preserve the upstream notice and Apache-2.0 license. + +The new contribution here is the combination of source-copy exchange, changed retired-row completion, source-carried coordinate totals, and the explicit exact cold44 realization. Those changes were developed for icekylinx with OpenAI GPT-6 Astra assistance. The upstream notices, proof scope and conditional assumptions continue to apply. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/LICENSE b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/LOCAL-VALIDATION.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/LOCAL-VALIDATION.json new file mode 100644 index 0000000000..5973645e1a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/LOCAL-VALIDATION.json @@ -0,0 +1,356 @@ +{ + "status": "PASS_LOCAL_INCREMENTAL_GAUGE44", + "python": "3.14.8", + "upstream_main": "17ce0c79b7b51c2634b439ea5a2b754f09909693", + "pr635": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f", + "construction_steps": [ + { + "step": "shadow-early", + "exit_code": 0, + "seconds": 0.322 + }, + { + "step": "shadow-prefix", + "exit_code": 0, + "seconds": 0.429 + }, + { + "step": "gauge-forward", + "exit_code": 0, + "seconds": 0.474 + }, + { + "step": "port0", + "exit_code": 0, + "seconds": 0.388 + }, + { + "step": "port1", + "exit_code": 0, + "seconds": 0.407 + }, + { + "step": "port2", + "exit_code": 0, + "seconds": 0.403 + }, + { + "step": "port3", + "exit_code": 0, + "seconds": 0.389 + }, + { + "step": "cold44-exact", + "exit_code": 0, + "seconds": 2.544 + }, + { + "step": "native", + "exit_code": 0, + "seconds": 3.63 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 2.759 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 15.924 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 2.706 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 186.772 + } + ], + "five_mathematical_local_artifacts_match_frozen_evidence": true, + "phase_edges": 3019, + "endpoint_adapters": 224, + "independent_scalar_audit": { + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "compressed_sha256": "0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 492, + "entering": 204, + "lowends": 78, + "coldends": 44, + "compensation_gates": 7348, + "local_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "checked_columns": 716, + "elapsed_seconds": 2.443164045999765, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." + }, + "independent_guard_review": { + "status": "PASS_PR635_ADMISSION_ASSERTION_PRESERVATION", + "files": [ + { + "file": "code/assemble.py", + "baseline_sha256": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "new_sha256": "7ac28118d69416e4fb67b61216285fb0823310b7635ce1b9025aa3f10119ef6a", + "byte_identical": false, + "assert_count": 91, + "all_assertions_identical_in_order": true + }, + { + "file": "code/invoice_allcold.py", + "baseline_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "new_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "byte_identical": true, + "assert_count": 67, + "all_assertions_identical_in_order": true + }, + { + "file": "code/bind_providers_portable.py", + "baseline_sha256": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "new_sha256": "7c9aba6c7f138d270852d859d902f905a15598b6263567700b5b08a153823cb6", + "byte_identical": false, + "assert_count": 22, + "all_assertions_identical_in_order": true + }, + { + "file": "code/generated_identity.py", + "baseline_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "new_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "byte_identical": true, + "assert_count": 4, + "all_assertions_identical_in_order": true + }, + { + "file": "code/witness.py", + "baseline_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "new_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "byte_identical": true, + "assert_count": 3, + "all_assertions_identical_in_order": true + } + ], + "centre_interface_review": "CENTRE-GUARD-REVIEW.md", + "scope": "Exact syntax preservation for all admission assertions in these five files. The changed emitter/controller centre boundary and single-provider controls require the separate semantic review; assertion counts alone do not prove them." + }, + "owner_replay": { + "status": "PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY", + "seed_mode": "included_frozen_seed", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "owners_gzip_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "scope": "Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate." + }, + "global_replay": { + "status": "PASS_GAUGE44_STRICT_GLOBAL_REPLAY", + "kappa": "1649483702558979/1000000000000000000", + "kappa_decimal": "0.001649483702558979", + "complex_lower": "1652208994368411824947/1000000000000000000000000", + "bit_lower": "413456747036699736067/250000000000000000000000", + "gain_over_pr635_percent": "0.8093060205252829126484020359439672024956960385078942889840023844750830", + "spec_sha256": "fee57674a7f36b30b1e7eb96a8f567a90a522217bc644c1a6a1f8bff85196fbf", + "stages": [ + { + "name": "restore-parent", + "seconds": 2.089, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind", + "seconds": 0.962, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 4.817, + "exit_code": 0, + "log_sha256": "90ce07d06a8eaffdb66201e8346021183e5a803395fb9f6d8ceb0e5ff068ef2c" + }, + { + "name": "audit", + "seconds": 19.625, + "exit_code": 0, + "log_sha256": "66b4abb2a88a4eaba8a8baa3585ef4aa819be5f8acb7947bae734b3478280456" + }, + { + "name": "invoice", + "seconds": 1.804, + "exit_code": 0, + "log_sha256": "5d10712d494304287749dd7a6c3369f9b707bba30e9f567b68230669dcf5418a" + }, + { + "name": "assembly", + "seconds": 0.808, + "exit_code": 0, + "log_sha256": "768d3215f1918117dc6c33b4cfeaf0b5f5da9ba5c77178db4bb1d08d000e226f" + }, + { + "name": "admission-controls", + "seconds": 0.885, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the same cited unchanged PR543 bit supplier as PR635. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." + }, + "admission_mutations_rejected": 69, + "controller_mutations_rejected": 15, + "frozen_template_content_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "fresh_template_content_sha256": "a1692259fb5a06bbebdc1049a7f757c6d2fc79ff8c31ed0c25b38fe9f98ed051", + "template_comparison": { + "sole_changed_field": "async_schedule.source_plan_sha256", + "frozen_plan_sha256": "609adb126d7d3de2abdd9275f9015589c0b137d0d19821c2c3e7c1a8541c18d2", + "fresh_plan_sha256": "b2e4b1f063250c40e0087f77e896882c60f36ed8764e86ba1610dec9bdff7394", + "explanation": "Fresh phase review differs only in its measured seconds. Runtime provider binding consequently changes the plan byte hash. All remaining serialized template fields match exactly; each runtime hash is checked against its own file." + }, + "assembly_matches_frozen_rates_and_profile": true, + "post_replay_packaging": "Four files received trailing-whitespace cleanup only; complete parsed ASTs were checked unchanged. Constructor input pin refreshed. Admission assertion comparison rerun.", + "scope": "Changed construction and exact recipe, fresh native ledgers/wrappers/phases, independent scalar and guard audits, integer owner reproduction, strict global admission and independent pricing. No predecessor full replay, seed-discovery optimizer or PDF generation. Local Python 3.14; Python 3.11 is covered by CI." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/MANIFEST.json new file mode 100644 index 0000000000..8161f0e77d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/MANIFEST.json @@ -0,0 +1,171 @@ +{ + "CONSTRUCTION.md": "7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea", + "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "LOCAL-VALIDATION.json": "f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e", + "NOTICE.md": "7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf", + "PROOF-NOTE-BARCH.md": "c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d", + "PROOF-NOTE-BIT.md": "dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7", + "PROOF-NOTE-FRAMES-X4.md": "39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036", + "PROOF-NOTE-LAYERS.md": "92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f", + "PROOF-NOTE-LEAVER.md": "e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3", + "PROOF-NOTE-NOTRI.md": "774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414", + "PROOF-NOTE-P6N.md": "cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d", + "PROOF-NOTE-PROMO.md": "c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae", + "PROOF-NOTE-SW4.md": "d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d", + "README.md": "0c09f0685e5db77177187c12afea9c45465787c44d6ae0d7d28c0c7de8f1b2a0", + "RESULT.json": "72bf797ce995ff6108c1609b9d71ca50b6fd3e84eb827e9ca2df6b64710d88b6", + "SOURCES.json": "abb903d9b46388f99325a3939eb68171ac163c66b4b62b7961ea46daa20a88f0", + "UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "construction/COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "construction/COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "construction/INPUTS.json": "edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99", + "construction/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "construction/NOTICE.md": "defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816", + "construction/REBUILD-CHECKS.json": "1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91", + "construction/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "construction/barch/LOCAL-PINS-barch-U8.json": "2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5", + "construction/barch/RECIPE-U8.json": "292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652", + "construction/barch/build_tri.py": "0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e", + "construction/barch/reproduce_barch.py": "19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1", + "construction/barch/run_controls.py": "42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476", + "construction/build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "construction/construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "construction/frames/FRAME-RECIPE-sw4.json": "a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473", + "construction/frames/LOCAL-PINS-frames-sw4.json": "bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f", + "construction/frames/build_frames.py": "200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb", + "construction/frames/frame_controls.py": "477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77", + "construction/frames/reproduce_frames.py": "dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832", + "construction/jx/LOCAL-PINS-jx-X4.json": "95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974", + "construction/jx/RECIPE-X4.json": "9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd", + "construction/jx/build_jx.py": "3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916", + "construction/jx/reproduce_jx.py": "5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c", + "construction/layers/build_pivot_swap.py": "8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8", + "construction/layers/layer_end_controls.py": "7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef", + "construction/layers/reproduce_layers.py": "435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e", + "construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz": "3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0", + "construction/layers_np/HPE-RECIPE-NP.json": "43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1", + "construction/layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "construction/layers_np/reproduce_np.py": "1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c", + "construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz": "17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4", + "construction/layers_p6n/P6N-SPEC.json": "132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1", + "construction/layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "construction/layers_p6n/reproduce_p6n.py": "aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca", + "construction/leaver/CHAIN-PINS-k8.json": "9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9", + "construction/leaver/CODED-CELLS-k8.json": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz": "6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33", + "construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz": "24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb", + "construction/leaver/FRAME-RECIPE-LV-k8.json": "b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065", + "construction/leaver/HPE-RECIPE-k8.json": "907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9", + "construction/leaver/LEAVER-PINS-k8.json": "ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6", + "construction/leaver/LEC-REASON-PINS-STACK-k8.json": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "construction/leaver/LEC-REASON-PINS-k8.json": "b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914", + "construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "construction/leaver/PROMO-RECIPE-k8.json": "bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83", + "construction/leaver/RECIPE-U8-k8.json": "51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e", + "construction/leaver/RECIPE-X4-k8.json": "4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1", + "construction/leaver/REGROUP-LEAVER-k8.json": "b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e", + "construction/leaver/TRI-LEAVER-k8.json": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "construction/leaver/build_frames_lv.py": "2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b", + "construction/leaver/cells-k8/CORE-01+.json": "3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c", + "construction/leaver/cells-k8/CORE-01-.json": "8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927", + "construction/leaver/cells-k8/CORE-23+.json": "53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d", + "construction/leaver/cells-k8/CORE-23-.json": "e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d", + "construction/leaver/cells-k8/CORE-45+.json": "ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9", + "construction/leaver/cells-k8/CORE-45-.json": "302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7", + "construction/leaver/cells-k8/CORE-67+.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "construction/leaver/cells-k8/CORE-67-.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "construction/leaver/cgx_leaver.py": "3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c", + "construction/leaver/layer_end_controls_leaver.py": "4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206", + "construction/leaver/reproduce_leaver.py": "831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30", + "construction/leaver/reproduce_leaver_chain.py": "2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5", + "construction/notri/PRIO6.json": "de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15", + "construction/notri/cgx.py": "3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418", + "construction/notri/cold44x.py": "f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296", + "construction/notri/port_stage_x.py": "38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7", + "construction/notri/reproduce_notri.py": "90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8", + "construction/promo/LOCAL-PINS-p6n-k4.json": "a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f", + "construction/promo/PROMO-RECIPE-p6n-k4.json": "fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90", + "construction/promo/build_promotion.py": "9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf", + "construction/promo/make_recipe.py": "ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122", + "construction/promo/promo_controls.py": "786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372", + "construction/promo/reproduce_promo.py": "f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026", + "construction/reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92", + "construction/sw4/LOCAL-PINS-sw4-P6k4.json": "3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327", + "construction/sw4/NOTES.md": "3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446", + "construction/sw4/SW4-RECIPE-P6k4.json": "fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa", + "construction/sw4/build_sw4.py": "9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66", + "construction/sw4/reproduce_sw4.py": "3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac", + "data/FRONTIER.json": "56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2", + "data/OWNERS.json.gz": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a", + "data/PLAN.json": "7b3122026e82b9d9e964d2a50c7bffdc976ae3dfea64bb98b2fdad5cfbdbaa20", + "data/PREPARATION.json": "1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9", + "data/SPEC.json": "1208c7c3ae84c158c21b80d69f0f448d376680a7d37e15d0abc77541d3cd61d8", + "data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "evidence/ADMISSION-CONTROLS.json": "5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28", + "evidence/ASSEMBLY.json": "847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f", + "evidence/BINDING.json": "f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b", + "evidence/CENTER-COMPATIBILITY.json": "c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3", + "evidence/LOCAL-STAGES.json": "64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591", + "evidence/REPLAY.json": "45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2", + "evidence/STAGES.json": "09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458", + "evidence/audit/ASYNC-AUDIT.json": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662", + "evidence/audit/GLOBAL-PREFIX.json": "5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671", + "evidence/audit/IDLE-REMAINDER-FRAMES.json": "95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048", + "evidence/audit/OWNERS-AND-PROFILE.json": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "evidence/audit/PREFIX-AND-INVOICE.json": "14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582", + "evidence/global/ACTUAL-SIGMAS.json.gz": "bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f", + "evidence/global/GLOBAL-TEMPLATE.json.gz": "f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b", + "evidence/global/HOSTED.json": "60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e", + "evidence/global/IDLE-REMAINDER-FRAMES.json.gz": "734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784", + "evidence/layers/LOCAL-AUDIT-LAYERED.json": "a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff", + "evidence/leaver/CELL-MUTANTS-LV.json": "308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220", + "evidence/leaver/FRAME-CONTROLS-LV-k8.json": "9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd", + "evidence/local/CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "evidence/local/CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "evidence/local/CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12", + "evidence/local/FULL-WORD.json.gz": "0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e", + "evidence/local/INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "evidence/local/LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "evidence/local/LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "evidence/local/RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "evidence/local/SCALAR-FRAME-AUDIT.json": "cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb", + "evidence/local/WRAPPER-CHECKS.json": "84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7", + "hosting/PROOF.md": "45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0", + "hosting/README.md": "004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1", + "hosting/audit_frozen.py": "a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659", + "hosting/expand_owners.py": "0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70", + "hosting/frozen/FROZEN-AUDIT.json": "df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b", + "hosting/frozen/MAJORIZATION.json.gz": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "hosting/frozen/MANIFEST.json": "9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967", + "hosting/frozen/MATCHING-RECEIPT.json": "e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2", + "hosting/frozen/OWNERS.json.gz": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "hosting/frozen/REPRODUCTION.json": "8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81", + "hosting/frozen/SEED-OWNERS.json.gz": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "hosting/frozen/SEED-RECEIPT.json": "aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba", + "hosting/frozen/SEED-REPRODUCTION.json": "4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194", + "hosting/reproduce.py": "7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82", + "hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "independent/CENTRE-GUARD-REVIEW.md": "7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897", + "independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json": "9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9", + "independent/GAUGE44-GLOBAL-GUARD-REVIEW.json": "631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b", + "independent/GAUGE44-INDEPENDENT-PRICE.json": "6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683", + "independent/README.md": "25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89", + "independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "independent/price_profile.py": "d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf", + "independent/review_guards.py": "b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d", + "inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/NOTICE.md new file mode 100644 index 0000000000..30d0c8cd3c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/NOTICE.md @@ -0,0 +1,24 @@ +# Gauge44 attribution and scope + +New contributions by icekylinx, with OpenAI GPT-6 Astra assistance. +Local review and packaging used OpenAI Codex. Apache-2.0 applies; +the license is included. The full original PR635 notice is preserved as +UPSTREAM-NOTICE.md and construction/UPSTREAM-NOTICE.md. + +The new contribution is the changed source-branch gauge and retired-row +completion, source-carried coordinate totals, exact 44-cold-end realization, +and explicit all72 whole-family assignment using concave capacity matching +with integer majorization certificates. The center-carrier generalization +retains the exact ordered common frames and complete native local contract. +Independent local, price, interface and owner fixed-point checks are included. + +The construction retains the credited PR635 K-triangle and porting machinery, +earlier joint-prefix/HPE/frame ancestry and icekylinx's prior factory work. +#645 used the same cited PR543 bit supplier as PR635. This package (research/gauge44-leaver8) cites the merged PR589 bit supplier instead, with a derived rank-mass deficit (PROOF-NOTE-BIT.md); #645's retained PR543-based evidence is historical. It builds #645's word without K-triangles (PartialK) and stacks earlier community jp8 layers on it (G44Stack), adds the p6n ends (NoTriReopen), entrance promotions (BlockInvert) a read-set exchange (BRoute), chafreaky's #741 frames, JointXF's joint exchange, NewBArch's triangle-hybrid B rewrite and LeaverSAT's eight k8 leaver cells (with LeaverSAT2's frame re-optimisation); see README. All-size, realization, +hosting, precision/tape, analytic-transfer and bit H1-H5 assumptions remain +conditional. No upstream license, credit, source pin or AI disclosure is +replaced by this notice. + +PR641 and PR642 were checked as concurrent reported frontier comparisons. +Their endpoints and owner maps are not included here. See CONSTRUCTION.md, +hosting/PROOF.md, independent/ and README.md for the exact contribution scope. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BARCH.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BARCH.md new file mode 100644 index 0000000000..8cea5a6846 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BARCH.md @@ -0,0 +1,43 @@ +# PROOF-NOTE-BARCH: width-neutral triangle-hybrid B-delivery rewrite (U8) + +Construction by NewBArch (`construction/barch/`, builder `build_tri.py`, controls `run_controls.py`, recipe +`RECIPE-U8.json`). Driver: `construction/barch/reproduce_barch.py`, chained after `construction/jx`. + +## The move +On research/gauge44-frames-x's X4 word (`1e1d99ba…`), eight disjoint slots are rewritten. In each slot X an entering +copy E donates into a halves-copy X: 231 (E 450), 230 (E 452), 232 (E 454), 236 (E 456), 226 (E 451), 228 (E 453), 62 (E 455), 238 (E 457). That way, so that one target +read takes X + H in a single gate. A holder pair (for example 496/484) carries the value. Each holder is restored by a +low-end tail at its frame (early cleanup) and a FULL-cleanup restore. Entrance pre-reads keep the entering helper's +start value away from every target. + +The recipe is explicit, with every index referring to the X4 word: +- 40 B deletions; +- 40 B insertions, each with its frame; +- 32 explicit re-chosen B frames; +- 8 early-cleanup tails; +- 8 FULL-cleanup restores. + +The A section and X4's tail frames are untouched. The width is unchanged at 3778. The profile goes +{1:2548, 2:338, 3:430, 4:194, 5:56, 8:8} → {1:2548, 2:338, 3:446, 4:162, 5:72, 8:8}, a delta of {3:+16, 4:−32, 5:+16}. +The eight slots are additive (8 × 3.925e-8 ideal = 3.140e-7). Output word `090fd574…`. U8 contains B0's four slots +(231, 230, 226, 228) plus 232, 236, 62 and 238. + +## Checks rerun on every rebuild +- `build_tri.py` (standard library only) checks the base sha (`1e1d99ba…`) and the result sha (`090fd574…`). +- `run_controls.py` produces 38 outcomes, all required. The control set is pinned in `LOCAL-PINS-barch-U8.json`. + - C0 identity reproduces the input. + - The recipe word PASSes #645's independent `audit_local.py`. + - Four mutants must each FAIL `audit_local` with a pinned message, both globally and for each of the eight slots + (NAME@X): + - drop_restore: the holder is not restored, giving "all-column endpoint failure"; + - restore_full: the low-end restore is moved into the FULL cleanup, giving "all-column endpoint failure"; + - drop_preread: the inserted entrance pre-reads are omitted, giving "nonzero entrance response"; + - donation_after: the donation is placed after the target read, giving "nonzero entrance response". +- The per-end layer-end controls (`../layers_p6n/layer_end_controls.py`) reject 95. +- PR635's native chain runs, with the canonical word, local programs and Clifford recipes pinned. + +## Strict +NewBArch's strict replay: the #741 map (`G44Pack/m741`, byte-identical OWNERS) is rebound to the U8 locals with +`rewidth.py` and admitted with this package's own code (NEWWORD `admit645.py` on research/gauge44-frames-x's tree). +The result is κ 0.001661948695165034, +3.1404e-7 over research/gauge44-frames-x. The four-slot subset B0 strict-passes +at 0.001661791659578416 and the single slot V1 at 0.001661673902364948. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BIT.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BIT.md new file mode 100644 index 0000000000..da06360da0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-BIT.md @@ -0,0 +1,112 @@ +# PROOF-NOTE-BIT: citing the PR589 bit supplier with a derived rank-mass deficit (gauge44) + +This note is BitCap's `PROOF-NOTE-BIT.md` from `complex-571-cold14-k492-bit589`, adapted to the gauge44 package. It +covers the only verifier change relative to #645's package (`research/gauge44-global`): the bit supplier changes from +PR543 to PR589. The complex side is #645's construction, unchanged: supplier word, recipes and every complex check in +`code/assemble.py`. The only complex-side change is the repacked owner map (`data/PLAN.json`, `data/OWNERS.json.gz`), +with expected values re-derived in `data/SPEC.json`. + +## Changed sites + +The changes are in `code/assemble.py`, plus one new stage in `verify_global.py` and a new file +`code/bit_supplier_controls.py`. The independent (non-verifier) `independent/price_profile.py` is ported to PR589 as well. Every other `.py` file equals #645's. + +| # | site | before (#645) | after | +|---|---|---|---| +| S1 | bit input | `inputs/PR543-EXPECTED.json` from the multicold source, blob pin `b61d8598…` | `inputs/PR589-EXPECTED.json`, shipped in this package, blob pin `e293ddc5…`, through `load_bit` | +| S2 | bit deficit | literal `9984` | `bit_deficit(word, live)` = T(2Kv − L·cst), with L = 9, T = 32, K = (L−1)/2 = 4 | +| S3 | profile binding | (none) | Σ r·n of the bit profile = `bit.rank_mass`; moment width `BIT_M = 1 + 7L` asserted = 64 | +| S4 | pipeline binding | (none) | the record's `nine.pipeline` names the nine-stage template with 32 replicas | +| S5 | citation / receipt | input hash names the PR543 file | `bit_supplier` cites PR589 (head `a5afc8c6`, merged as `b3eb785a`, path `research/e8-bit-p111-tuned/tune/EXPECTED.json`) and records v = 111, cst = 63, COPY ranks [7×9] and the derived deficit 10272 | +| S6 | `verify_global.py` | (none) | stage `bit-supplier-controls` runs `code/bit_supplier_controls.py`; it requires status `PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS`, exactly 12 rejected controls and derived deficit 10272 | + +The shipped `inputs/PR589-EXPECTED.json` has git blob `e293ddc557742637f9f679f083a1a282d87b1b13`, which equals +`origin/main:research/e8-bit-p111-tuned/tune/EXPECTED.json`. + +## Why the derived deficit is correct + +**The identity.** The rank-mass identity of #545 and #555 is M·live − mass = T(2Kv − L·cst). Its source is +#555's README, "Rank-mass identity", and `code/adapt9p.py`, whose audit carries `DEFICIT=T*(2*K*V-L*CST)`. + +**The parameters.** The bit word has v live ports and decoder constant cst, the sum of the nine retained totals' COPY +ranks. The nine-stage chain is #463/#510 with 32 replicas, so L = 9, T = 32, K = 4 and M = 1 + 7L = 64. The live data +wires number 2KvT. + +**The constraints checked.** The verifier asserts all of: +1. cst = Σ copy_ranks, with exactly `retained_totals` = 9 entries, each in (0, 8]. +2. live = 2KvT. For #589: 2·4·111·32 = 28416. +3. Σ r·n over the priced profile = the record's `rank_mass` = 1808352. +4. M·live − Σ r·n = T(2Kv − L·cst). For #589: 64·28416 − 1808352 = 10272 = 32·(888 − 567). + +Check (4) is #645's `check_moment` guard, unchanged. So v, cst, the profile and live must all agree. + +**PR543 consistency.** The same formula reproduces #645's constant: PR543 has live = 30720, so v = 120; its nine +totals have COPY rank 8, so cst = 72; 32·(960 − 648) = 9984. + +**The deficit does not raise c.** `check_moment` uses the deficit only as an equality guard. The moment engines +compute from (profile, m = 64, live, z) and never read it. The bit value c is established only by the unchanged +acceptance tests at the same exact endpoints, with the bit bad-residue surcharge retained: accept at c and reject at +c + 10⁻²⁴, by both engines. + +## Effect on the outer chain (differs from the k492 package) + +In the k492 package the complex side bound under either supplier, so κ did not move. Here it does. With the +gm3 map the complex side certifies b = 0.001654663299688920102557, with research/gauge44-bit589's dz1 map +b = 0.00165526410310589140991, and with research/gauge44-bit589b's L1g4 map b = 0.001655496738330440231813. PR543's c = 0.001653826988146798944268 is +below b, so under PR543 the bit side would bind. BitCap's table gives the PR543 bit-side κ cap as +0.001651096360425895, which is exactly the κ of `research/gauge44-repack`. PR589's c = 0.001733427039589844234749 +exceeds b, so the complex side binds again (`binding = complex` in `ASSEMBLY.json`): κ = 0.001651929911890057 for gm3 +(conservative 0.001651929909011672) κ = 0.001652528731617094 for dz1 (conservative 0.001652528728737236), and +κ = 0.001652760598550299 for L1g4 (conservative 0.001652760595670246). +Bit589Reviewer recomputed both suppliers with the outer engine and confirmed this. The gain over gauge44-repack therefore depends on this change and on the +assumptions below. + +## Negative controls (all must be rejected; the verifier requires exactly these 12) + +Each control runs the real `assemble()` on the fresh owner/invoice receipts with one input mutated. The strict run's +`BIT-SUPPLIER-CONTROLS.json` lists all 12 as rejected. + +| control | site | rejected at | +|---|---|---| +| `revert_hardcoded_9984` | S2 | `check_moment` deficit guard (10272 ≠ 9984) | +| `ports_112` | S2 | `bit_deficit`: live ≠ 2KvT | +| `decoder_constant_64_copy_ranks_unchanged` | S2 | `bit_deficit`: cst ≠ Σ COPY ranks | +| `decoder_constant_64_with_one_copy_rank_8` (derives exactly 9984) | S2 | `check_moment` deficit guard | +| `eight_retained_totals` | S2 | `bit_deficit`: totals count ≠ 9 | +| `live_minus_one` | S2 | `bit_deficit`: live ≠ 2KvT | +| `profile_rank_mass_plus_one` | S2/S3 | `check_moment` deficit guard | +| `profile_rank_mass_receipt_mismatch` | S3 | profile mass ≠ `rank_mass` | +| `bit_lower_next_grid` | endpoint | `check_moment` reject-side moment test | +| `not_nine_stage_record` | S4 | pipeline binding | +| `tampered_bytes_next_grid` | S1 | blob pin | +| `pr543_file_under_pr589_pin` | S1 | blob pin | + +Bit589Reviewer re-traced all 12 rejection sites on the gauge44 word (b589gm3), and they match the table: `code/assemble.py` L191 (`revert_hardcoded_9984`, `decoder_constant_64_with_one_copy_rank_8`, `profile_rank_mass_plus_one`), L48 (`ports_112`, `live_minus_one`), L47 (`decoder_constant_64_copy_ranks_unchanged`, `eight_retained_totals`), L201 (`profile_rank_mass_receipt_mismatch`), L197 (`bit_lower_next_grid`), L179 (`not_nine_stage_record`) and L39 (both blob controls). dz1 and L1g4 run the same code. + +The ported `independent/price_profile.py` re-derives the deficit separately (`pr589_deficit`) and checks the same blob pin. Its regenerated receipt on this package's PLAN gives the same κ. + +## Inherited assumptions + +**PR merge status (`gh pr view`, 2026-10-13):** #589 MERGED 2026-10-12T17:00:38Z. #555 was merged 2026-10-12. #645 +is OPEN. Main's review replayed #589 freshly as "supplier-only headroom", and main's *selected* composition still +cites #543. + +**Unmerged assumptions:** +1. **#645 itself (open):** the gauge44 factory, its construction steps and all of its retained interfaces and notes. + These are unchanged here. +2. **This verifier change (S1–S6):** under review (Bit589Reviewer). The PR589 record replaces PR543 as an *input of + the gauge44 assembly*, a composition main has not selected. + +**Assumptions carried by #555/#589 (merged, stated there as review points, not theorems):** +3. #545's punctured unit: a 111-port unit with decoder constant 63 is an admissible bit supplier on the same hypotheses + as v = 120. +4. #510's nine-stage chain as re-parameterised for v ≤ 120 by #555's `code/adapt9p.py`, including the rank-mass + identity used in S2. +5. #543's interleaved scalar-interface lemma (H1–H5) for phase-B source rewrites. This is not new: #645 already + inherits it through PR543. +6. #589's two A-section transports. +7. The same bit bad-residue surcharge model as PR543 (`surcharge_model = {'complex': False, 'bit': True}`). + +## Result + +The bit-supplier change is the same as in research/gauge44-bit589 and gauge44-bit589b: the code is byte-identical and was signed by Bit589Reviewer. For this package (k8 leaver word db2c7cfb, K8c8 map), the complex side certifies b = 0.001674185476674086429846 and binds under PR589. Under PR543 the bit side would cap κ at 0.001651096360425895. κ is given in the README and `RESULT.json`. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-FRAMES-X4.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-FRAMES-X4.md new file mode 100644 index 0000000000..a456a8127b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-FRAMES-X4.md @@ -0,0 +1,58 @@ +# PROOF-NOTE-FRAMES-X4: chafreaky's #741 frames and JointXF's joint exchange (X4) + +Two construction steps on top of research/gauge44-promo-p6k4sw's SW4 word P6k4sw4 (`d232183f…`). + +## 1. #741's eight B frames (`construction/frames/`) +The eight B-gate frame raises are by **chafreaky**, [#741](https://github.com/CrocSwap/integer-mult-bounds/pull/741) +(`research/complex-sw4-frame8`, commit e516b146). `FRAME-RECIPE-sw4.json` is byte-identical to #741's +`data/FRAME-RECIPE.json` (a2c7ca4d…). CompetitorMine ported #741's builder and controls; only package paths are adapted. +The step applies the frames with BlockInvert's `build_promotion.apply` and checks: +- the scalar program of A, cut, B, precondition and cleanup is unchanged; +- start and end frames are unchanged; +- the profile, the widths and the output word `e7804702…` are pinned; +- 3 pin controls are rejected; +- #741's 10 focused native controls are rejected (8 frames emptied, a changed read coefficient, paid-profile tampering); +- the per-end layer-end controls reject 95; +- the native chain matches its pins. + +The rebuilt locals equal G44Pack's F741 locals except the `seconds` field in CLIFFORD-REVIEW. +This step reproduces #741's word. The final word is built by step 2, which contains these frames. + +## 2. Joint exchange X4 (`construction/jx/`, JointXF) +There are four disjoint instances of BRoute's sw4 read-set exchange rule. Each one exchanges *two* copy pairs that +share targets: (448, 472), (458, 592), (470, 604) and (482, 614), with face registers 235, 267, 58, 427, 26, 443, 18 +and 50. #741's eight frames sit on top. The 16 moved reads keep their original stored dim-6 frames: they are +monotone-repaired rather than refitted to the plain join. The recipe `RECIPE-X4.json` is explicit: +- 32 replaced gates, 16 deleted gates and 16 inserted gates, each with its old gate asserted; +- #741's 8 frames, listed with their source; +- 16 explicit frames at the moved reads, each asserted equal to the recomputed frame. + +The builder `build_jx.py` uses only the standard library. It checks: +- target frames lie inside u_t^⊥; +- tails and ends; +- exactness of the whole B segment's rational linear map against the input (a Fraction replay); +- the recomputed paid profile and the output sha `1e1d99ba…`. + +Effect against #741's word: the profile goes {1:2556, 2:334, 3:430, 4:194, 5:56, 8:8} → {1:2548, 2:338, 3:430, +4:194, 5:56, 8:8}. The width inventory is unchanged, and each instance gives +1.0798e-7 at ideal, exactly additive. + +**Controls**, each pinned in the recipe and rerun by `reproduce_jx.py`: + +| control | outcome | +|---|---| +| C0 identity | returns the input `d232183f` | +| C1 #741 only | `e7804702`, #741's word (ties step 1 to step 2) | +| M1 one pair (448) with frames retained | `5fb6fb2e`, neutral (profile = #741) | +| N1 pre-read dropped | rejected: exactness rows [132, 135] | +| N2 pre-read with wrong sign | rejected: exactness rows [132, 135] | +| N3 plain-join refit of the moved reads | `7241cd59`, strictly worse | +| N4 a raise made dim-7 at B855 | rejected: cap at (1302, 174) | + +N3 and M1 are pinned-outcome controls (a specific different word), not rejections. They show the gain needs both the +target-sharing pair and the retained frames. + +**Other checks (JointXF):** +- `audit_local` PASS; +- native chain PASS; +- FrameCoal's global frame optimiser reaches the same profile on this move set, so X4 is frame-optimal for these moves; +- SW4Extend found the same word independently. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LAYERS.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LAYERS.md new file mode 100644 index 0000000000..c4b4e85b6a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LAYERS.md @@ -0,0 +1,129 @@ +# PROOF-NOTE-LAYERS: earlier jp8 layers, here stacked on the no-triangle gauge44 word + +> In this package the layers sit on the no-triangle word (R = 504), not on #645's 492-helper word. The mapping, the +> NP chain (regroup `864ff4a1` → swap `beb3579f` → layered `a9de804f`), the per-layer status on this base and the +> checks are in `PROOF-NOTE-NOTRI.md` ("Layers on this word"). The text below is research/gauge44-layered's note. It +> describes the same layers and controls on the 492-helper word; its word shas, helper numbers, counts and result +> table refer to that word. + + +This note covers the second change of research/gauge44-layered relative to research/gauge44-bit589. The first change, +the PR589 bit supplier, is covered unchanged by `PROOF-NOTE-BIT.md`. Here the community jp8 layers that were reviewed +on the k492 words (#629/#637/#641 lineage) are re-applied to #645's gauge44 provider word. The layers, their +construction code and their recipes were all reviewed earlier, on k492 words. This note says what carries over +unchanged, what is re-checked on the gauge44 word, and what is new. Sources: G44Stack's report (porting and checks on +gauge44); PivotReviewer's report (sections 1-4, Addenda 3-5); H4aReviewer's report (Addenda 7-8); JP8Ends' report. + +## What the layered word is + +`construction/layers/reproduce_layers.py` builds the layered word from a fresh `construction/reproduce.py --until word` +output. Each step is checked exactly: + +1. **Pivot swaps** (`build_pivot_swap.py`, PR641's constructor, LF sha256 `8e8bced8…`, the file PivotReviewer signed for + st2s4). It reads `PIVOT-SWAP-S6.json` and runs on #645's `regroup/FULL-WORD`. There are six pivot-role swaps: 488→560, + 489→561, 500→572, 501→573 (s4) and 513→537, 525→549 (s6). The `swaps` list is identical, gate for gate, to S6Ship's + s6/s6j3 recipe (`k492-jp8-pivot_swap.json`); only `input_content_sha256` differs, because the base word is #645's + regroup word. The constructor replays the zero response exactly, keeps the profile and width multiset unchanged, and + rejects its 30 negative controls. +2. **HPE.** PR635's `build_hpe.apply` applies the inherited jp8 hyperplane-end changes (`HYPERPLANE-END-S6.json`). Its + LF sha256 `23c9d7ce…` equals the k492 jp8 hyperplane_end recipe committed in s6j3 and earlier. +3. **cold44, exactly.** #645's `build_gauge_cold44.py` runs on the swapped HPE word. Its 44 rank-four cold ends, premix + and low tails must equal the unswapped (pinned) cold44 construction; only the FULL inverse differs. Consequently the + swaps touch no factory block. +4. **Layers.** PR635's unchanged `build_cold_end.apply(HPE, COLD-LAYERS-RECIPE)` applies the cold44 recipe plus: + - 8 entering ends: 560/561/572/573 at U24 (s4) and 597/599/537/549 at U30 (x30: #629's E1 pair, which #645 dropped, + plus s6's two ends); + - 10 factored dim-8 cold ends: p123 (310/506, 311/504, 516/327) and q4 (579, 592, 589, 518). + The output word's sha256 is pinned (`0be48b1d…`), as are its local profile `{1:2542, 2:414, 3:434, 4:154, 5:56, + 8:8}` and width inventory `{4:52, 5:48, 7:42, 8:116, 9:234}`. The recipe's `refactored_cleanup` meta lists the 8 + entering ends in `entering_low_frame_ended_helpers` (LayerReviewer's fix). That meta is copied into the word, which + is why the pinned word sha moved from `b25f0ed9…` to `0be48b1d…`; gates, frames and report are unchanged. +5. **Layer-end controls** (`layer_end_controls.py`, LayerReviewer's adaptation of PR635's `cold_end_controls.py` + d966e29a). These are raw-word negative controls on the layered word, judged by PR635's unchanged + `hpe_audit_and_transport.py`. Each mutant must be rejected at its pinned reason. The adaptation has three parts: the + lower→FULL mutant is pinned at "cleanup on non-FULL end", where gauge44 rejects it; entering ends come from the + recipe meta; and the premix-gate controls are skipped for entering ends that have no premix gate. `reproduce_layers.py` + requires exactly 59 rejections. +6. **Native locals.** PR635's native audit and transport, ledgers, local replay (the 192-bit payload bound), wrappers and + phases all pass. The result is the `--local` that `verify_global.py` consumes. + +G44Stack's run of this driver (`rlayers2`, all steps exit 0, 59 controls rejected) reproduces `locs/pq/local`, the +local G44Pack's strict runs used. Every SPEC-pinned artifact is byte-identical: CANONICAL-WORD, LOCAL-PROGRAMS, +LOCAL-CHECKS, INDEPENDENT-LOCAL-REPLAY, CLIFFORD-RECIPES, RESIDUAL-ADAPTERS and WRAPPER-CHECKS. CLIFFORD-REVIEW differs +only in a seconds field; its semantic hash is what SPEC pins. The two unpinned files that embed the word, +FULL-WORD and SCALAR-FRAME-AUDIT, differ because of the meta. + +## Per-layer status on gauge44 (G44Stack, ideal Δκ at ×72) + +| layer | prior review (k492 words) | on gauge44 | per-call Δ profile | ideal Δκ | +|---|---|---|---|---| +| pivot swaps (6) | PivotReviewer §1-2 (s4), Addenda 4-5 (s6): exact; omitting any rewritten gate is rejected; cost-neutral | all 6 recipe `before` gates match the regroup word; 30 controls rejected; cold44 rebuilds the same 44 ends | neutral | 0 | +| s4 ends 560/561/572/573 @U24 | PivotReviewer §3: (N) exact for ([24], U24) and its canonical pair; climbs paid | positive | {1:+8, 2:−4, 3:+4, 4:−4}, w −4 | +7.0e-8 | +| x30: E1 597/599 + 537/549 @U30 | #629 (E1); PivotReviewer Addenda 4-5 (537/549 end monotonically at the E1 hyperplane, whose (N) is exact) | positive | {1:+10, 2:−6, 3:+2, 4:−2}, w −4 | +2.0e-7 | +| p123 | H4aReviewer Addendum 7: 0 bad rows, dyadic, exact in all 3 orientations; (N) for (0,1039)-(0,1041); Δ recomputed | positive | {1:+6, 2:+12, 3:−12}, w −6 | +2.0e-8 | +| q4 (after p123) | H4aReviewer Addendum 8 (n_q4): exact; (N) for the 310/311/327 frames and 518's (0,1042); independent of u4 | positive | {1:+4, 2:+8, 3:−8}, w −4 | +1.4e-8 | +| **stack T_pq** | — | built and audited | {1:+28, 2:+10, 3:−14, 4:−6}, w 3794→3776 | **+3.08e-7** | + +These layers were left out because they are negative or dead on gauge44: u4 (−1.2e-6), the 249 end (−3.2e-7), a joint +p123+q4 (−2.6e-7, worse than sequential), and #627's dim-7 ends 581/590 (no dyadic basis). j3 is dead: its st2 partner +403 is one of #645's 44 ends, and cold44's block premix uses up the row space. + +**Payload.** H4aReviewer's Addendum 8 correction found that the k492 word n_q4 broke the 192-bit local payload bound +(backward prefix 280 bits). On gauge44 the layered word passes PR635's `hpe_audit_local.py` local-replay stage +(`prefix < 2**192`), both in G44Stack's `localchain.py` and as step 5 of `reproduce_layers.py`. So the q4 layer here +does not repeat that failure. + +## Verifier changes (spot widths) + +A swapped-out pivot p becomes an ordinary cold helper, and its width goes from 8 to 9. #645's global code checks the +spot helpers' widths as all 8, so the five global files gain the spot-width rule PivotReviewer signed as SOUND for +S4Ship (Addendum 3), ported to gauge44: + +- `code/witness.py`: `spot_widths(v)` gives 9 at a spot helper h with 2v+h among the swapped-out pivots and 8 + elsewhere. The swapped-out pivots are read from the recipe that SPEC key `pivot_swap` names (path and sha256; the + sha256 is asserted). Without `pivot_swap` the tuple is all 8, the same as #645. +- `code/bind_providers_portable.py`, `code/audit_allcold.py`, `code/assemble.py`: the `all(... == 8)` spot checks become + tuple equality with `spot_widths()`, which pins every spot width exactly. +- `code/assembly_controls.py`: the `cold_swap` control picks a swap partner whose width differs, so the mutant can + never be the identity. + +Here the spot helpers 264 and 276 (pivots 488 and 500) expect width 9 and the other spot helpers expect 8. The k492 +spot-width review (PivotReviewer Addendum 3) covered the same rule on k492 code. Its gauge44 port is part of this +package's review (LayerReviewer). + +## Controls and what is not re-run + +- The pivot-swap constructor's 30 controls run inside `reproduce_layers.py` (step 1). +- `verify_global.py`'s strict controls are unchanged, including the 12 bit-supplier controls and #645's admission + controls. They run on the layered locals. +- Layer-end controls: 59 raw-word mutants, all rejected at pinned reasons, run as step 5 of `reproduce_layers.py` + (see above). They cover the cold low-frame ends, the refactored cleanup, every entering end (its lower-frame gate, + profile pin and hyperplane, plus its premix gate where it has one) and each distinct dim-8 frame. LayerReviewer ran + them on the layered word (59 rejected). The k492 version (d966e29a) rejected 103-112 on the p123/q4 words; the + k492-only primitives (absorptions, factored accumulators, target writes) are absent from this word. +- #645's independent audit `independent/audit_local.py` on the layered word: PASS, with 204 entering helpers, 96 low ends, + 54 cold ends and 716 columns. Its receipt is `evidence/layers/LOCAL-AUDIT-LAYERED.json` (word `0be48b1d…`, run with + `--main`). The README's clean-clone command reruns it; only `elapsed_seconds` varies. The other `independent/` + receipts are #645's own. +- The prior (N), exactness and pricing checks for each layer were done on k492 words. On gauge44 they are covered by + the native chain (native audit, local replay, wrappers, phases) on the layered word, together with the pinned + profile and width inventory. + +## Inherited assumptions + +These are the same as `PROOF-NOTE-BIT.md` (#645 open; PR589 citation; #545/#555/#589 review points; H1-H5). In +addition: + +1. **(N) for the entering-end pairs outside #599's three Lean-covered pairs** (U24, U30, the dim-8 frames). As on + k492, these are covered by the tool check (clifford_exact / `nchk.py`) and by the native wrappers, not by a Lean + proof (PivotReviewer §3). +2. **The reviews of PR641's pivot-swap constructor and PR635's `build_cold_end.apply` / `build_hpe.apply`**, which this + package uses unchanged. + +## Result + +| | gauge44-bit589b (L1g4 map) | this package (layered, LN5c map) | +|---|---|---| +| κ | 0.001652760598550299 | 0.00165395497190225 | +| per-call width | 3794 | 3776 | +| local profile | #645's {1:2514, 2:404, 3:448, 4:160, 5:56, 8:8} | {1:2542, 2:414, 3:434, 4:154, 5:56, 8:8} | diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LEAVER.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LEAVER.md new file mode 100644 index 0000000000..b34a289c48 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-LEAVER.md @@ -0,0 +1,82 @@ +# PROOF-NOTE-LEAVER: no-helper mutable-leaver all-K cells, re-stacked layers, hybrids and a frame re-optimisation (k8) + +Construction: LeaverSAT (cells, layer re-indexing, frozen recipes) and LeaverSAT2 (frame re-optimisation). +Drivers: `construction/leaver/reproduce_leaver.py` (cell word) and `construction/leaver/reproduce_leaver_chain.py` +(everything after it). Reviews: PromoReviewer (leaver chain, k8 cells and frames, k8 clean rebuild), SW4Reviewer (hybrid structure), Q6Reviewer +(`layer_end_controls_leaver.py` v2, `LEC-REASON-PINS-k8.json`), LecReviewer (`LEC-REASON-PINS-STACK-k8.json`). + +## 1. The cell (set model, LeaverSAT) +In #781's all-K cell, a pair p with sign e replaces three face events and three packet copies. Direct delivery uses +15 reads y_i += c x_j. LeaverSAT's 21-gate circuit uses the six leaver sources x_j (face-event operands with no later +reads, restored at FULL by the inherited cleanup) as mutable intermediates. It has 3 leaver gates x_k += c x_m, +3 target gates y_a += c y_b (inverted at frame zero in the precondition and scatter, #781's recipe) and 15 reads. +Coefficients are rescaled exactly per cell, C_ij = r_i c_j. The driver re-derives the scaled gates from the unit +circuit and checks the clean map Y_i = Σ_j C_ij X_j in exact rationals. + +Native legality needs one relabelling: the plain circuit fails the native audit, because a y += y source carries +port-stage entering-helper dirt. Each cell is therefore relabelled by S6 so that y–y sources avoid targets carrying +entering dirt at that time. + +**Set k8:** all eight cells (01±, 23±, 45±, 67±), R = 480. The cores are in `construction/leaver/cells-k8/` (documentary; +the driver re-derives every scaled gate from `CODED-CELLS-k8.json`). The regroup word is `00aeefe0…` and the cell word is +cold44 `58e14a02…`. Its pairing ranks are pinned to [0,0,0,4,4,4,4,4,4,4,4,0,0,0] in `cold44x.py` and checked again in +the driver. + +## 2. Re-stacked layers (LeaverSAT; signed builders unchanged, recipes re-indexed) +| step | recipe (data) | word | +|---|---|---| +| pivot swaps (6), mapped through the leaver helper map | `PIVOT-SWAP-k8.json` | `377ab10c…` | +| HPE, greedy (22) | `HPE-RECIPE-k8.json` | `598543fa…` | +| cold44, exact (same ends, premix and tails as the unswapped cell word) | — | — | +| NP layers (s4, x30, b6, q4) | `COLD-LAYERS-RECIPE-NP-k8` | `2c1740f6…` | +| p6n ends | `COLD-LAYERS-RECIPE-P6N-k8` | `25c40614…` | +| promotions (16, minimal) | `PROMO-RECIPE-k8.json` | `84d4da2e…` | +| joint exchange (re-indexed X4) | `RECIPE-X4-k8.json` | `84d4da2e…` (identity) | +| U8-style hybrids ×6 (NewBArch's builder; instances 62, 226, 228, 230, 231, 232) | `RECIPE-U8-k8.json` | `c836d892…` | +| frame re-optimisation (exact global frame optimum, gopt2; 137 B and 2 T frames) | `FRAME-RECIPE-LV-k8.json` | **`db2c7cfb…`** | + +Three steps don't apply to k8. The sw4 exchanges use copy helpers 461, 581, 591 and 603, which the cells drop. Of +#741's eight frames, none survives. All four X4 exchange groups use dropped helpers, so the joint exchange is the +identity (0 raises, 0 frames); it is still run, with its three remaining controls (C0, C1, N3) at their pins. + +The two cold-layer recipes are LeaverSAT's frozen k8 recipes (`fea82fb8…`, `76aedf23…` as .gz) with one key added, +`input_content_sha256` = the swapped HPE word `598543fa…`, as in the k5 package. Removing the key gives the frozen +recipe content exactly. + +## 3. Controls rerun on every rebuild +- **Cell stage:** the exact clean-map check; native audit, ledgers, local replay, wrappers and phases on the cell word. +- **Pivot swaps:** the swap constructor's 30 controls. +- **Promotions:** BlockInvert's `promo_controls.py`, 11 mutants rejected at pinned sites. +- **Joint exchange:** the 3 `RECIPE-X4-k8` controls reproduce their pinned outcomes. +- **Hybrids:** `run_controls.py` gives 30 outcomes, all required. These are C0, the recipe word passing audit_local, + and 4 mutants, each run both globally and per instance. +- **Frames:** `build_frames_lv.py`'s 3 pin controls. LeaverSAT2's 6 frame-recipe mutants are rejected by the builder; + that receipt was reviewed by PromoReviewer and is not rerun. +- **Layer-end controls:** `layer_end_controls_leaver.py` v2 (`4ba676f1…`), Q6Reviewer-signed. It is the signed + per-end controls with per-word reason re-pins and **declared not-applicable sites**. A vacuous mutant site is never + skipped silently: the pins file must declare it, the declared set must equal the detected set, an identity is proven by + sha equality of the mutated and honest words, and a same-class substitute mutant is built and must be rejected at the + class's pinned reason. The count stays 95 on every word. The controls run on all five words: + - p6n, promoted, jx and hybrid words, with `LEC-REASON-PINS-STACK-k8.json`: `extra_end` only. h0 273's first + premixed partner 282 is already cold-ended at h0's frame, so the mutant is the identity (sha-proven per word); the + substitute is partner 281, cold-ended at h0's frame. + - the re-framed final word, with `LEC-REASON-PINS-k8.json`: `extra_end` as above, and `other_hp:554`. The frame + re-optimisation lowers entering end 554's tail frame to dimension 5, and no helper_final frame has dimension 5, so + the 'end at another hyperplane' mutant cannot be built; the substitute moves 554's end to another dim-8 frame and + must be rejected at the cone pre-check. This replaces the interim skip of research/gauge44-leaver. + No reason re-pins are needed on the k8 words. The receipts (`COLD-END-CONTROLS.json`) carry the not-applicable list; + the counts, the not-applicable sites with their reasons and the sha256 of each pins file (`LEC-REASON-PINS-STACK-k8.json` + d87ed7b5…, signed by LecReviewer; `LEC-REASON-PINS-k8.json` b07279e4…, signed by Q6Reviewer) are pinned in + `CHAIN-PINS-k8.json`. +- **Native chain on the final word:** the canonical word, local programs and Clifford recipes are pinned in + `CHAIN-PINS-k8.json`, which also pins every count above. + +## 4. Cell mutants (evidence, not rerun) +LeaverSAT2's `CELL-MUTANTS-LV.json` (in `evidence/leaver/`) records PromoReviewer's cell mutants M1–M6, generalised +to every cell sign. All 42 are rejected by both audit_local and the native audit, on single-cell builds. + +## 5. Strict +The owner map is G44Pack3's K8c8: its pattern-flow LNS on the R = 480 k8 word. Admitted on this package's own code, +with SPEC `width_spot_helpers` [258,270,282,294] and `pivot_swap` → `construction/leaver/PIVOT-SWAP-k8.json` (NEWWORD +discovery, freeze, strict), it gives κ 0.001671387264390146. That is +7.154e-6 over research/gauge44-leaver (k5, +0.001664233607446043). diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-NOTRI.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-NOTRI.md new file mode 100644 index 0000000000..54bd84e01d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-NOTRI.md @@ -0,0 +1,53 @@ +# PROOF-NOTE-NOTRI: #645's gauge44 word without K-triangles (R = 504) + +Construction by PartialK; review by NotriReviewer (scratch/NotriReviewer/FINAL-REPORT.md). Drivers: +`construction/notri/reproduce_notri.py` (this word) and `construction/layers_np/reproduce_np.py` (layers on it). + +## Why the triangles were the blocker +- In #645's gauge44, a K-block has I = 6 low registers with rank C = 4, so L = 2. Only the 2-row priority completion + fits there. The (p,−) triangle reads climb copies loc17/19/21 and source loc2. +- Without the triangles, I = 8. With the 2-row completion, rank C stays 6 (L = 2), which is why the plain removal sweep + restored nothing. With the 6-row completion (`PRIO6.json`, the list blocks 3–10 already use), rank C = 4, so L = 4, + the cap. All 14 blocks then pair at rank 4: 56 rank-four cold ends, R = 504, width 3818, profile + {1:2506, 2:336, 3:472, 4:184, 5:56, 8:8}, rank mass 5674. + +## Constructor changes (NotriReviewer §1) +- **`cgx.py`** is #645's `construct_gauge_xcentre.py`, parameterised by XPARAM. On this path the only change that takes + effect is the K-block priority: `PRIO[c]` is placed in front of the inherited rows. The prepended rows equal the + shared 6-row list of blocks 3–10 (all 8 lists identical). Every completion assert is kept (`qr_rank(M)==4`, + `len(M)==8`, the exact block-total rows). An empty TRI schedule is an input #645 already supports (`NH = 504 − 3·0`). + `HELPER-MAP` is the identity on 728. The `exch`, `COPYL` and `hyb` branches are inert here (defaults, empty, not + reached). +- **`port_stage_x.py`** is PR635's `build_port_stage.py`. The helper map only has to be injective rather than onto; + with no triangles it is onto again. +- **`cold44x.py`** is #645's `build_gauge_cold44.py`. Its per-block pin `r == len(L) == (2 if K-block else 4)` is + replaced by `r == len(L)` together with the explicit per-block pin `PAIRING_RANKS` (set by the driver to [4]*14, + and to #645's pattern in `--control-g44`). Helpers outside the 224+16b ranges join their blocks (EXTRAH, empty here). + Every other assert is kept (U, nonlocal premix, `rank(Qmat) == NB`). +- **Control.** `reproduce_notri.py --control-g44` runs the same scripts with #645's four triangles and no XPARAM. It + reproduces #645's gauge44 word `78c7aada…` exactly, with ranks [2,2,2,4,4,4,4,4,4,4,4,2,2,2]. + +## Exactness and locals (NotriReviewer §2) +- Replay: 0 bad rows over 27,932 gates, all dyadic; forward, inverse and adjoint are exact. None of the 6,448 + compensation additions reads an ended helper, and the precondition never touches one. +- 0 FULL-remainder gates touch an ended helper; E⊂U holds for every entering end. The delta against gauge44 + ({1:−8, 2:−68, 3:+24, 4:+24}, width +24) matches the reported profiles. +- (N): all 17 pairs pass (14 cold dim-4 pairs with 4 helpers each, plus 3 dim-8 entering pairs). +- `audit_local.py --main`: PASS. Payload: prefix bits 66 forward and 72 backward, against 192. +- Native locals: 25 controls rejected, Lemma A on 22 frames, 17 wrapper mutants rejected. The rebuilt locals equal + the strict locals (`PartialK/runs/none_p6/local`): byte-identical except CLIFFORD-REVIEW and SCALAR-FRAME-AUDIT, + which differ only in their `seconds` field. + +## Layers on this word (G44Stack) +The layers are research/gauge44-layered's (see `PROOF-NOTE-LAYERS.md`), mapped to the 504 numbering: +- the 6 pivot swaps 494→566, 495→567, 506→578, 507→579, 519→543, 531→555, which are neutral (same 46 HPE helpers, + same 56 cold ends); +- s4 566/567/578/579 at U24; +- x30 608/610/543/555 at U30; +- BlockCombine's b6; +- q4. + +p123 is negative on this base and dropped; j3 is dead (L = 0 at U24 and U30). The chain is regroup `864ff4a1` → swap +`beb3579f` → layered `a9de804f`, with profile {1:2534, 2:346, 3:458, 4:178, 5:56, 8:8} and width 3800. On that word +the signed `layer_end_controls.py` rejects 59/59 and `audit_local.py` passes with 216 entering helpers, 120 low ends, +66 cold ends and 728 columns. NotriReviewer independently reproduced a9de804f from the packaged recipes. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-P6N.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-P6N.md new file mode 100644 index 0000000000..bef9ad2de0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-P6N.md @@ -0,0 +1,34 @@ +# PROOF-NOTE-P6N: six b-type dim-8 cold ends on the layered no-triangle word (p6n) + +Construction by NoTriReopen. Driver: `construction/layers_p6n/reproduce_p6n.py`. Review: Q6Reviewer. + +## What p6n adds +On research/gauge44-notri-layered's word NP (`a9de804f…`), p123's lane is rebuilt as three factored dim-8 pairs +(`P6N-SPEC.json`): +- [512, 513] at U = (256,128,66,34,16,8,6,1). The old pair [310,512] split a rank-3 end; [512,513] replaces it; +- [311, 510] at U = (256,128,72,40,24,4,2,1); +- [522, 327] at U = (256,128,66,34,18,10,6,1). + +They are built with the same premix-only factored construction as p123/q4/b6 (JP8Ends' stackJ/stackE, CarrierBypass +pattern; PR635's unchanged `build_cold_end.apply`). The cold-layer recipe `COLD-LAYERS-RECIPE-P6N.json.gz` is NP's +recipe plus these six ends; its meta lists 72 cold ends and the 8 entering ends. Applied to NP's swapped HPE word, it +gives p6n `34b683fa…`: +- profile {1:2540, 2:358, 3:446, 4:178, 5:56, 8:8}; +- widths {4:64, 5:48, 7:54, 8:122, 9:216}; +- width 3794 (NP 3800); +- Δ per call {1:+6, 2:+12, 3:−12}, w −6, every end b-type. + +## Checks +- **NoTriReopen:** native chain including phases PASS; audit_local PASS; 95/95 layer-end controls rejected. +- **Q6Reviewer:** + - exact; + - (N) passes on all 21 pairs; + - payload 55/72 bits, against 192; + - the per-end control variant `layer_end_controls.py` (fc58c569…, which Q6Reviewer signed for research/gauge44-pq6) rejects 95/95; + - 165 further mutants on the six ends are all rejected. + The LayerReviewer-signed `../layers/layer_end_controls.py` controls one end per dim-8 frame family, so it would not + control each new end. This package therefore uses the per-end variant for p6n and for the promoted word built on it. +- **Rebuild:** `reproduce_p6n.py` pins the input NP word, the output sha, profile and widths, and 95 controls. + +## Remaining capacity (NoTriReopen) +After p6n, the only residual cold capacity on the word is 2 a-type units, and every end there prices about −9e-7. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-PROMO.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-PROMO.md new file mode 100644 index 0000000000..8233bbd6b8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-PROMO.md @@ -0,0 +1,46 @@ +# PROOF-NOTE-PROMO: entrance promotions E4 → E5 on the p6n word + +Construction by BlockInvert (`construction/promo/`); driver `construction/promo/reproduce_promo.py`. + +## What a promotion is +An entering helper h starts at an entrance frame E (its `start_extra`) and climbs to its final frame. Promotion +enlarges E to E′ ⊃ E (here dim 4 → dim 5). That removes one paid climb from h's chain (width −1 per helper) at the +cost of re-choosing the frames of the gates on h's early chain. It is the time-reverse dual of end deepening. Two +conditions make it legal: +1. **Zero target response for h's dirt.** This condition does not depend on E, so it is inherited unchanged from the + input word. +2. **Monotone frames.** Every gate's frame must contain its registers' current frames. +Only frame annotations and start frames change. The scalar program (every gate's registers and coefficients) is +untouched, so the endpoint, every cone and the compensation are those of the input word. + +## The recipe (`PROMO-RECIPE-p6n-k4.json`, data only, minimal) +- Input: the p6n word `34b683fa…` (`PROOF-NOTE-P6N.md`), pinned. +- `entrances`: the 16 entering helpers 627, 629–631, 635, 637–639, 651, 653–655, 659 and 661–663 (four E4 kernel groups) go E4 → E5. +- `gate_frames`: 48 frame re-choices, the promotion's own entry-gate raises (12 per group); each records the old frame, + which must equal the input's exactly. This is BlockInvert's **minimal** recipe: the deterministic rule + E′ = E + ⟨smallest x⟩ on each group's entry gates (PromoReviewer). Unlike research/gauge44-promo's k3 recipe, it + carries none of the 72 price-neutral CP-SAT re-choices. +- `expected`: output `0390ec65…`, profile {1:2572, 2:326, 3:430, 4:194, 5:56, 8:8}, widths + {4:80, 5:32, 7:54, 8:122, 9:216} (width 3778). Against p6n the delta is {1:+32, 2:−32, 3:−16, 4:+16}, width −16. + +## Checks rerun on every rebuild (`reproduce_promo.py`) +- `build_promotion.py`: input pin; each old frame matches; each new entrance strictly contains the old one; the + profile and widths are recomputed from the chains, including target end climbs; output pins. +- `promo_controls.py`: the honest word passes #645's independent `audit_local.py` (exact forward and dual endpoint + frames, entrances, cones). For p6n-k4, 11 mutants are rejected at pinned sites (the count is pinned in `LOCAL-PINS-p6n-k4.json`): + - entrance outside the first gate frame; + - raised gate missing, once per promoted group; + - entrance reverted, so the profile does not match; + - ungrouped promotion; + - a recipe gate whose old frame is wrong; + - a recipe entry that is not a promotion; + - a tampered input word (the constructor's own `__main__` must refuse it at the input pin); + - a scalar tamper on a raised gate. +- The per-end layer-end controls (`../layers_p6n/layer_end_controls.py`, Q6Reviewer-signed): 95 rejected. +- PR635's native chain: transport audit (all columns, native frames), ledgers, local replay (192-bit payload), + wrappers and phases, with the canonical word, local programs and Clifford recipes pinned (`LOCAL-PINS-p6n-k4.json`). + +## Search (not run by the rebuild) +`make_recipe.py` writes the recipe from BlockInvert's CP-SAT solution (`prom.py` with `exactframe2.py`, using MinCutSel's +chain model). These promotions were priced negative before (MinCutSel #3, under a fixed-window arc-flow packer). Under +near-ideal packing (G44Pack's dissolve/gapmerge) they price positive; the strict replay confirms the gain. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-SW4.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-SW4.md new file mode 100644 index 0000000000..a064cc54cc --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/PROOF-NOTE-SW4.md @@ -0,0 +1,44 @@ +# PROOF-NOTE-SW4: read-set exchange on four entering-copy pairs + +Construction by BRoute (`construction/sw4/`, with the author's notes in `construction/sw4/NOTES.md`). Driver: +`construction/sw4/reproduce_sw4.py`. + +## The move +In P6k4 (`0390ec65…`; research/gauge44-promo-p6sw applied the same exchange to P6k3 `a38bb414…`), each of four entering packet copies h is written first as h = E_h + r: copy gate add(h, r, 1) +from a non-target face register r, with E_h being h's entering content. The pairs are (h, r) = +(461, 25), (581, 89), (591, 415), (603, 431). For each pair the read sets of h and r are exchanged in phase B: +- every post-copy target read add(t, h, c) becomes add(t, r, c), and t's entrance pre-read add(t, h, −c) (taken + while h = E_h) is deleted; +- every target read add(t, r, c) becomes add(t, h, c), with a pre-read add(t, h, −c) inserted after h's last existing + pre-read and before h's copy gate. + +Since h − r = E_h after the copy, each target's value is unchanged at the end of B. The builder checks this for every +register mod p (p = 2147483629). Moved and inserted gates take the plain join of their operands' current frames. +Every other B gate and every early-cleanup tail keeps span(old frame + current operand frames). Targets must stay +inside u_t^⊥, and tails and ends must contain the current frame. start_extra, helper_final, cleanup and the helper +numbering are unchanged. + +## Effect +Output `d232183f…`. Width 3778 is unchanged. The profile goes from {1:2572, 2:326, 3:430, 4:194, 5:56, 8:8} to +{1:2548, 2:342, 3:438, 4:186, 5:56, 8:8}, a delta of {1:−24, 2:+16, 3:+8, 4:−8}, the same as on P6k3. The four +exchanges are additive. The fourth promotion group (659, 661–663; gates B420–431) commutes exactly with the exchange: +there is no index or register overlap, and SW4Reviewer checked that applying the k3→k4 frame and start differences +to f35a852b gives d232183f. Ideal κ +3.271e-7 over P6k4. + +## Checks rerun on every rebuild +- `build_sw4.py` (standard library only): the input sha pin; the 16 explicit moves of `SW4-RECIPE-P6k4.json`; B-end + state exactness mod p; frame caps, tails and ends; the output sha, profile and W. It also runs 4 controls, all of + which must hold, each at the exact site pinned in the recipe's `rejection_expected` (all three keys N1, N2 and N3 are required): + - C0: the identity recipe reproduces the input B and early_cleanup byte for byte; + - N1: h2r without deleting the pre-read is rejected by exactness, with changed B-end rows exactly {168, 171}; + - N2: a partial exchange (one read only) is rejected by the frame cap, first at ('cap', B1192, register 169), 10 violations; + - N3: an inserted pre-read with the wrong sign is rejected by exactness, with changed rows exactly {129, 130, 169, 170}. +- The per-end layer-end controls (`../layers_p6n/layer_end_controls.py`, Q6Reviewer-signed): 95 rejected. +- PR635's native chain, with the canonical word, local programs and Clifford recipes pinned (`LOCAL-PINS-sw4-P6k4.json`). + The native transport audit re-checks every column and native frame of the exchanged word. + +## Scope of the search (BRoute) +The search was exhaustive within the single-pair family only. NP has 107 copy pairs, and 54 of them have movable +reads. Over those, every nonempty subset of one pair's movable reads gives 602 candidates: 564 are frame-illegal, and +the 38 legal ones are all full single-pair exchanges, of which exactly these 4 are positive. Cross-pair combinations +of partial moves were not enumerated. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/README.md new file mode 100644 index 0000000000..48f987a99f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/README.md @@ -0,0 +1,225 @@ +# Gauge44 without K-triangles, with earlier jp8 layers, the p6n ends, entrance promotions, a read-set exchange, #741's frames, a joint exchange, a triangle-hybrid B rewrite, no-helper mutable-leaver cells and PR589's bit supplier: conditional κ = 0.001671387264390146 + +Under the retained all-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape, exact-recovery, analytic-transfer and bit H1–H5 interfaces (as in #645), and the PR589 bit supplier, + +$$ +T(n)=O\!\left(n(\log n)^{1-\kappa}\right),\qquad +\kappa=\frac{1671387264390146}{10^{18}}=0.001671387264390146. +$$ + +**The construction is icekylinx's [#645](https://github.com/CrocSwap/integer-mult-bounds/pull/645) (`research/gauge44-global`).** This package builds the research/gauge44-barch construction (items 1–8) and then rebuilds its word around **no-helper mutable-leaver cells** (item 9): +1. **No-triangle word (PartialK).** #645's gauge44 chain is run with **none** of the four (p,−1) K-triangles, so there are R = 504 helpers. In the six K-blocks {0,1,2,11,12,13}, the completion priority is extended by the 6-row list `construction/notri/PRIO6.json`. Every block then pairs at rank 4, giving **56** rank-four cold ends instead of 44. `construction/notri/reproduce_notri.py` rebuilds this word from a #645 `reproduce.py --until word` output. It uses PartialK's generalisations of #645's and PR635's constructors (`cgx.py`, `port_stage_x.py`, `cold44x.py`; each differs from its original only in the documented parameters). It pins: + - the pairing ranks [4]*14, inside `cold44x.py` and again in the driver; + - the word (`3e99ba77…`); + - the canonical word, the local programs and the Clifford recipes. + `--control-g44` instead rebuilds #645's own gauge44 word (`78c7aada…`) with the same scripts. +2. **Layers on the no-triangle word (G44Stack).** `construction/layers_np/reproduce_np.py` applies to the no-triangle regroup word (`864ff4a1…`): + - research/gauge44-layered's six pivot swaps, mapped to the 504-helper numbering (`PIVOT-SWAP-NP.json`, swap word `beb3579f…`); + - the greedy HPE (46, `HPE-RECIPE-NP.json`); + - the exact cold44 (same 56 ends); + - the entering ends s4 (566/567/578/579 at U24) and x30 (608/610/543/555 at U30), plus BlockCombine's b6 and q4 dim-8 cold ends (`COLD-LAYERS-RECIPE-NP.json.gz`). p123 is negative on this base and dropped; j3 is dead. + The layered word is pinned (`a9de804f…`): profile `{1:2534, 2:346, 3:458, 4:178, 5:56, 8:8}`, width 3800. The signed research/gauge44-layered files `construction/layers/build_pivot_swap.py` and `construction/layers/layer_end_controls.py` are used unchanged, and the latter must reject exactly 59 controls. The global code is research/gauge44-layered's (spot-width rule): SPEC `width_spot_helpers` [270,282,294,306] and `pivot_swap` → `construction/layers_np/PIVOT-SWAP-NP.json`, giving spot widths [9,9,8,8]. +3. **p6n ends (NoTriReopen).** `construction/layers_p6n/reproduce_p6n.py` applies `COLD-LAYERS-RECIPE-P6N.json.gz` to the NP swapped HPE word with PR635's unchanged `build_cold_end.apply`. That is NP's cold-layer recipe plus six b-type dim-8 cold ends: [512,513], [311,510] and [522,327], which rebuild p123's lane as clean pairs. The result is the p6n word (`34b683fa…`): profile `{1:2540, 2:358, 3:446, 4:178, 5:56, 8:8}`, width 3794. The per-end layer-end controls (`construction/layers_p6n/layer_end_controls.py`, the variant Q6Reviewer signed for research/gauge44-pq6) must reject exactly 95 mutants. See `PROOF-NOTE-P6N.md`. +4. **Entrance promotions (BlockInvert).** `construction/promo/reproduce_promo.py --base p6n --k p6n-k4` applies the minimal recipe `PROMO-RECIPE-p6n-k4.json` to the p6n word with BlockInvert's deterministic constructor `build_promotion.py`. The recipe promotes the 16 entering helpers 627, 629–631, 635, 637–639, 651, 653–655, 659 and 661–663 (four E4 kernel groups) from E4 to E5, the time-reverse dual of end deepening. It re-chooses the frames of the gates affected. Only frame annotations and start frames move; the scalar program is unchanged. The promoted word is pinned (`0390ec65…`): profile `{1:2572, 2:326, 3:430, 4:194, 5:56, 8:8}`, widths `{4:80, 5:32, 7:54, 8:122, 9:216}`, width 3778. BlockInvert's `promo_controls.py` runs #645's independent `audit_local.py` on the honest word and must reject 11 recipe- and word-level mutants at pinned sites. The per-end layer-end controls (95) and the native chain then run with pins. The recipe is minimal: 48 entry-gate frame raises and no other frame re-choices. See `PROOF-NOTE-PROMO.md`. +5. **Read-set exchange (BRoute).** `construction/sw4/reproduce_sw4.py` runs BRoute's standard-library builder `build_sw4.py` with `SW4-RECIPE-P6k4.json`, 16 explicit moves, on the promoted word (`0390ec65…`). For the entering-copy pairs (h, r) = (461,25), (581,89), (591,415) and (603,431), the phase-B target read sets of h and its face register r are exchanged. The entrance pre-reads are deleted or inserted so that every register's value at the end of B is unchanged; the builder checks this mod p. Frames are repaired monotonically, and the width is unchanged. The SW4 word is pinned (`d232183f…`): profile `{1:2548, 2:342, 3:438, 4:186, 5:56, 8:8}`, width 3778. Four controls (C0 identity, N1 kept pre-read, N2 partial exchange, N3 wrong sign) must all hold, each at its exact rejection site pinned in the recipe. The per-end layer-end controls (95) and the native chain then run with pins. See `PROOF-NOTE-SW4.md` and `construction/sw4/NOTES.md`. +6. **#741's eight B frames (chafreaky).** `construction/frames/reproduce_frames.py` applies chafreaky's [#741](https://github.com/CrocSwap/integer-mult-bounds/pull/741) frame recipe, `FRAME-RECIPE-sw4.json`, byte-identical to #741's. Ported by CompetitorMine, it raises eight B-gate frames with the scalar program unchanged, giving #741's word `e7804702…`. It runs 3 pin controls, #741's 10 focused native controls, 95 layer-end controls and the native chain with pins. +7. **Joint exchange X4 (JointXF).** `construction/jx/reproduce_jx.py` runs JointXF's standard-library builder `build_jx.py` with `RECIPE-X4.json` on #741's word (step 6's output). It makes four disjoint instances of the read-set exchange, each over two target-sharing copy pairs: (448,472), (458,592), (470,604) and (482,614). The moved reads keep their stored frames, and #741's frames are included. All edits are explicit, and B-segment exactness is checked by Fraction replay. The final word is pinned (`1e1d99ba…`): profile `{1:2548, 2:338, 3:430, 4:194, 5:56, 8:8}`, width 3778. All seven pinned controls are rerun; C1 reproduces #741's word. See `PROOF-NOTE-FRAMES-X4.md`. +8. **Triangle-hybrid B rewrite (NewBArch).** `construction/barch/reproduce_barch.py` runs NewBArch's standard-library builder `build_tri.py` with `RECIPE-U8.json` on the X4 word (step 7's output). Eight disjoint slots receive a width-neutral B-delivery rewrite: an entering copy donates into a halves-copy so that one target read gets X+H, with holder restores and entrance pre-reads. The U8 word is pinned (`090fd574…`): profile `{1:2548, 2:338, 3:446, 4:162, 5:72, 8:8}`, width 3778. All 38 pinned controls are rerun (identity, the recipe word passing audit_local, and four audit_local-rejected mutants, globally and per slot). See `PROOF-NOTE-BARCH.md`. +9. **Leaver cells, re-stacked (LeaverSAT, LeaverSAT2).** `construction/leaver/reproduce_leaver.py --id k8` replaces the no-triangle word's construction with all eight all-K cells (01±, 23±, 45±, 67±). Each cell is LeaverSAT's 21-gate circuit, which uses the face-event leaver sources as mutable intermediates (R = 480, cell word `58e14a02…`). `construction/leaver/reproduce_leaver_chain.py --id k8` then re-applies items 2–8 with the signed builders unchanged and LeaverSAT's re-indexed recipes: swap, HPE, cold44, NP, p6n, 16 promotions, the re-indexed X4 exchange (the identity on this word) and 6 U8-style hybrids (`c836d892…`). It adds LeaverSAT2's exact global frame re-optimisation (`FRAME-RECIPE-LV-k8.json`), which gives the final word **`db2c7cfb…`**. Every intermediate word, control count and native pin is pinned (`LEAVER-PINS-k8.json`, `CHAIN-PINS-k8.json`). The per-word layer-end controls are the Q6Reviewer-signed `layer_end_controls_leaver.py` v2 (95 each), on the p6n, promoted, jx and hybrid words (`LEC-REASON-PINS-STACK-k8.json`) and on the re-framed final word (`LEC-REASON-PINS-k8.json`); its declared not-applicable sites are sha-proven identities or unbuildable mutants, each replaced by a same-class substitute that must be rejected. Items 5 and 6 don't apply on this word: the sw4 copies are dropped, and none of #741's frames survive. Items 1–8 remain in the package as the construction record of research/gauge44-barch. See `PROOF-NOTE-LEAVER.md`. +10. **Owner map (chafreaky's [#685](https://github.com/CrocSwap/integer-mult-bounds/pull/685), adapted by G44Pack).** The map is G44Pack3's K8c8, from its pattern-flow LNS (`pflns`) on the R = 480 k8 word. Its lineage is the #685/#741 map (chafreaky) via G44Pack's relabel and rewidth, followed by G44Pack3's LNS. It was admitted with this package's own code (NEWWORD discovery, `freeze_spec.py`, strict) at κ 0.001671387264390146. Only PLAN and OWNERS change. These are search inputs only; no verifier reads them. +11. **Expected values.** `data/SPEC.json` is re-derived by #645's discovery → `code/freeze_spec.py` → strict chain. + +- **κ = 0.001671387264390146** (conservative 0.001671387261540186). That is +0.4298% over research/gauge44-leaver (k5 cells, κ 0.001664233607446043; same chain on five cells, FO_c1 map) and +0.5672% over [#942](https://github.com/CrocSwap/integer-mult-bounds/pull/942) (κ 0.001661960547713947) and +1.3279% over #645, +0.9174% over research/gauge44-notri-layered (0.001656193765416678) and +0.7701% over research/gauge44-promo (0.00165861362787227) and +0.7273% over research/gauge44-promo-p6 (0.001659319032684569) and +0.7075% over research/gauge44-promo-p6sw (0.001659645685315104) and +0.5869% over research/gauge44-frames-x (0.001661634653669567) and +0.5679% over research/gauge44-barch (0.001661948695165034) and +0.6131% over [#741](https://github.com/CrocSwap/integer-mult-bounds/pull/741) (chafreaky, κ 0.001661202643272239) and +0.6654% over [#685](https://github.com/CrocSwap/integer-mult-bounds/pull/685) (chafreaky, κ 0.001660339298410333). The complex side certifies 0.001674185476674086429846 and PR589's bit supplier gives 0.001733427039589844234749, so **the complex side binds**. Under PR543 the bit side would cap κ at 0.001651096360425895 (`PROOF-NOTE-BIT.md`). +- **Evidence.** This package's own code admitted G44Pack3's K8c8 map (NEWWORD discovery → `freeze_spec.py` → strict): `verify_global.py` passes (`PASS_GAUGE44_STRICT_GLOBAL_REPLAY`, κ 0.001671387264390146) against G44Pack3's k8 locals, with SPEC `width_spot_helpers` [258,270,282,294] and `pivot_swap` → `construction/leaver/PIVOT-SWAP-k8.json`. It equals G44Pack3's own strict κ for K8c8. `RESULT.json` is that replay's `REPLAY.json`, converted to LF. The locals rebuilt by `reproduce_leaver_chain.py --id k8` match G44Pack3's strict locals byte for byte in every file except CLIFFORD-REVIEW and SCALAR-FRAME-AUDIT. Those two differ only in their `seconds` field, and the comparison normalises only that field (canonical `d1bf3c6f…`, programs `683f8323…`/`2d184e4d…`, Clifford `e3bfdfa2…`, pinned in `CHAIN-PINS-k8.json`). For this package, `data/SPEC.json` and a fresh `verify_global.py` replay on locals rebuilt by the two drivers are the binding record. +- **Independent price.** `independent/GAUGE44-INDEPENDENT-PRICE.json` is regenerated on this package's `data/PLAN.json` with the ported `independent/price_profile.py`: `PASS_FROZEN_PROFILE_TWO_EXACT_ENGINE_AND_OUTER47_CROSSCHECK`, κ equal to the strict replay. +- **Independent local audit.** `evidence/layers/LOCAL-AUDIT-LAYERED.json` is #645's `independent/audit_local.py`, run with `--main` on the final leaver word (content `db2c7cfb…`): `PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES`, 192 entering helpers, 78 low ends, 48 cold ends, 704 checked columns. Rerunning it reproduces the receipt except `elapsed_seconds` and, across zlib versions, `compressed_sha256`. +- **Historical #645 files (PR543-based, 492 helpers).** These are #645's files, retained unchanged and **not** updated for this package: `LOCAL-VALIDATION.json`, `CONSTRUCTION.md`, `hosting/`, `evidence/` (except `evidence/layers/`), the rest of `independent/`, `construction/reproduce.py` and its inputs, and `code/prepare_global.py`. They describe #645's word, owner map, PR543 supplier and κ 0.001649483702558979. `code/prepare_global.py` is #645's one-shot owner-map preparer, hard-wired to #645's parent plan and R = 492. No verifier imports it. This package's PLAN/OWNERS are frozen search output, and the strict replay checks them. `construction/reproduce.py` is still used for its `--until word` shadow and hamming inputs; its 492-word output is then superseded by `construction/notri/`. `construction/layers/reproduce_layers.py` is research/gauge44-layered's driver for the 492-helper layered word, shipped unchanged as signed; it is not used here. +- **Construction and code files** by committed LF SHA-256: + - `construction/notri/reproduce_notri.py` 90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8 (no-triangle driver) + - `construction/notri/cgx.py` 3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418 (PartialK's generalised construct_gauge_xcentre.py) + - `construction/notri/port_stage_x.py` 38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7 (PartialK's generalised build_port_stage.py) + - `construction/notri/cold44x.py` f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296 (PartialK's generalised build_gauge_cold44.py plus the PAIRING_RANKS pin) + - `construction/notri/PRIO6.json` de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15 (completion priority) + - `construction/layers_np/reproduce_np.py` 1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c (NP layer driver) + - `construction/layers_np/PIVOT-SWAP-NP.json` d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5 (layer input) + - `construction/layers_np/HPE-RECIPE-NP.json` 43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1 (layer input) + - `construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz` 3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0 (layer input) + - `construction/layers/build_pivot_swap.py` 8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8 (signed, unchanged) + - `construction/layers/layer_end_controls.py` 7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef (signed, unchanged) + - `construction/layers/reproduce_layers.py` 435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e (signed, unchanged, unused here) + - `construction/promo/reproduce_promo.py` f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026 (promotion driver) + - `construction/promo/build_promotion.py` 9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf (BlockInvert's constructor) + - `construction/promo/promo_controls.py` 786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372 (BlockInvert's controls) + - `construction/promo/make_recipe.py` ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122 (discovery-side recipe writer (search, not run)) + - `construction/promo/PROMO-RECIPE-p6n-k4.json` fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90 (minimal recipe) + - `construction/promo/LOCAL-PINS-p6n-k4.json` a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f (native pins) + - `construction/layers_p6n/reproduce_p6n.py` aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca (p6n driver) + - `construction/layers_p6n/layer_end_controls.py` fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e (per-end controls (Q6Reviewer-signed variant)) + - `construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz` 17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4 (p6n recipe) + - `construction/layers_p6n/P6N-SPEC.json` 132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1 (p6n end spec) + - `construction/sw4/reproduce_sw4.py` 3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac (SW4 driver) + - `construction/sw4/build_sw4.py` 9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66 (BRoute's builder (stdlib)) + - `construction/sw4/SW4-RECIPE-P6k4.json` fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa (16-move recipe with pinned rejection sites) + - `construction/sw4/LOCAL-PINS-sw4-P6k4.json` 3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327 (native pins) + - `construction/frames/reproduce_frames.py` dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832 (#741 frames driver) + - `construction/frames/build_frames.py` 200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb (#741's builder (chafreaky; ported)) + - `construction/frames/frame_controls.py` 477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77 (#741's controls (chafreaky; ported)) + - `construction/frames/FRAME-RECIPE-sw4.json` a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473 (#741's recipe, byte-identical) + - `construction/frames/LOCAL-PINS-frames-sw4.json` bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f (native pins) + - `construction/jx/reproduce_jx.py` 5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c (X4 driver) + - `construction/jx/build_jx.py` 3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916 (JointXF's builder (stdlib)) + - `construction/jx/RECIPE-X4.json` 9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd (explicit recipe with pinned controls) + - `construction/jx/LOCAL-PINS-jx-X4.json` 95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974 (native pins) + - `construction/barch/reproduce_barch.py` 19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1 (U8 driver) + - `construction/barch/build_tri.py` 0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e (NewBArch's builder (stdlib)) + - `construction/barch/run_controls.py` 42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476 (NewBArch's controls (38 outcomes)) + - `construction/barch/RECIPE-U8.json` 292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652 (explicit recipe) + - `construction/barch/LOCAL-PINS-barch-U8.json` 2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5 (control set and native pins) + - `construction/leaver/reproduce_leaver.py` 831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30 (cell driver) + - `construction/leaver/cgx_leaver.py` 3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c (cell constructor) + - `construction/leaver/reproduce_leaver_chain.py` 2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5 (chain driver) + - `construction/leaver/layer_end_controls_leaver.py` 4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206 (per-word reason re-pins and declared not-applicable sites, v2 (Q6Reviewer-signed)) + - `construction/leaver/build_frames_lv.py` 2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b (LeaverSAT2's frame builder) + The global code is research/gauge44-layered's, unchanged: assemble 4c270a99, assembly_controls e4c0f782, audit_allcold a87d7f48, bind 1d39bcc7, witness 779c5172. The bit-supplier code is research/gauge44-bit589's, unchanged: verify_global 16bd5e54, bit_supplier_controls e6d33fb6, price_profile d2f548ad. +- **Line endings.** These files had CRLF in the admitted trees and are committed as LF only (`crlf.replace(b'\r\n', b'\n') == lf`, no lone `\r`): + - `construction/jx/build_jx.py`: CRLF 775c2ae60eec9abc…, committed (LF) 3cc7550b0c24bb54… + - `construction/jx/RECIPE-X4.json`: CRLF 228079b304358500…, committed (LF) 9d42c6b38e8124f5… + - `construction/barch/build_tri.py`: CRLF 2432372f148a4d34…, committed (LF) 0fba65b31c2fd718… + - `construction/barch/run_controls.py`: CRLF 18e1f5953403784f…, committed (LF) 42639bf62bf57795… + - `construction/barch/RECIPE-U8.json`: CRLF 3e97088ad641eb6e…, committed (LF) 292f0e9f82824c41… + - `data/SPEC.json`: CRLF b2515d29d54e5027…, committed (LF) 1208c7c3ae84c158… + - `RESULT.json`: CRLF 454c25d5b0cd7df7…, committed (LF) 72bf797ce995ff61… + - `independent/GAUGE44-INDEPENDENT-PRICE.json`: CRLF 0b8482888e64327f…, committed (LF) 6e222b252f345344… + - `evidence/layers/LOCAL-AUDIT-LAYERED.json`: CRLF 6b63fc2bbea96cb5…, committed (LF) a596d7262374a023… + + +Clean-clone verification, from the repository root (Python 3.11+, assertions on; prepare the pinned #635 supplier as in the #645 section below): + +```sh +python -B research/gauge44-leaver8/verify_manifest.py +python -B research/gauge44-leaver8/construction/reproduce.py \ + --main . --pr635 /tmp/gauge44-pr635 --out /tmp/notri-base --until word +python -B research/gauge44-leaver8/construction/notri/reproduce_notri.py \ + --main . --pr635 /tmp/gauge44-pr635 --word-dir /tmp/notri-base --out /tmp/notri-word --word-only +python -B research/gauge44-leaver8/construction/layers_np/reproduce_np.py \ + --main . --pr635 /tmp/gauge44-pr635 --notri-dir /tmp/notri-word --hamming /tmp/notri-base/hamming --out /tmp/notri-np +python -B research/gauge44-leaver8/construction/layers_p6n/reproduce_p6n.py \ + --main . --pr635 /tmp/gauge44-pr635 --np-dir /tmp/notri-np --out /tmp/p6n +python -B research/gauge44-leaver8/construction/promo/reproduce_promo.py \ + --main . --pr635 /tmp/gauge44-pr635 --base p6n --base-dir /tmp/p6n --k p6n-k4 --out /tmp/promo +python -B research/gauge44-leaver8/construction/sw4/reproduce_sw4.py \ + --main . --pr635 /tmp/gauge44-pr635 --promo-dir /tmp/promo --recipe P6k4 --out /tmp/sw4 +python -B research/gauge44-leaver8/construction/frames/reproduce_frames.py \ + --main . --pr635 /tmp/gauge44-pr635 --sw4-dir /tmp/sw4 --out /tmp/frames +python -B research/gauge44-leaver8/construction/jx/reproduce_jx.py \ + --main . --pr635 /tmp/gauge44-pr635 --frames-dir /tmp/frames --out /tmp/x4 +python -B research/gauge44-leaver8/construction/leaver/reproduce_leaver.py \ + --main . --pr635 /tmp/gauge44-pr635 --word-dir /tmp/notri-base --id k8 --out /tmp/lv --word-only +python -B research/gauge44-leaver8/construction/leaver/reproduce_leaver_chain.py \ + --main . --pr635 /tmp/gauge44-pr635 --leaver-dir /tmp/lv --hamming /tmp/notri-base/hamming --id k8 --out /tmp/lvc +python -B research/gauge44-leaver8/independent/audit_local.py \ + --word /tmp/lvc/frames/FULL-WORD.json.gz --main . --output /tmp/lvc-audit.json +python -B research/gauge44-leaver8/verify_global.py \ + --main . --local /tmp/lvc/local --work /tmp/lvc-global +# kappa 0.001671387264390146 +``` + +Optional control: `reproduce_notri.py ... --control-g44 --out /tmp/notri-ctl` rebuilds #645's gauge44 word `78c7aada…`. + +## Predecessor: #645's README (unchanged below; paths read `research/gauge44-global`) + +### Gauge44: conditional κ = 0.001649483702558979 + +New contributions by **icekylinx**, with **OpenAI GPT-6 Astra** assistance. +Local review and packaging used OpenAI Codex. Original notices and Apache-2.0 licenses are retained. + +Under the retained all-size compiler, common-label/mutable-source realization, +whole-call hosting, precision/tape, exact-recovery, analytic-transfer and bit +H1–H5 interfaces, + +$$ +T(n)=O\!\left(n(\log n)^{1-\kappa_{645}}\right),\qquad +\kappa_{645}=\frac{1649483702558979}{10^{18}}=0.001649483702558979 +$$ + +(This is #645's own κ. **This package's κ is the one at the top of this README.**) + +The certified complex saving is `0.001652208994368411824947`. The unchanged +[#543](https://github.com/CrocSwap/integer-mult-bounds/pull/543) bit supplier gives +`0.001653826988146798944268`, so the complex side binds. The conservative complex +model separately certifies κ `0.001649483699681650`. + +### Construction + +This replaces the local supplier and all 72 owner assignments of pinned +[#635](https://github.com/CrocSwap/integer-mult-bounds/pull/635). Source/copy exchanges +at equal rank-one frames alter the factory's arbitrary-helper-input propagation. +An invertible completion of the retired rows and source-carried coordinate totals +then expose 44 rank-four cold endpoints. Exact input premixes, low-frame tails +and a recomputed full inverse realize them. + +| Per-invocation quantity | Complete #635 JP8 | Gauge44 | +| --- | ---: | ---: | +| Source / target ports | 112 / 112 | 112 / 112 | +| Helpers | 492 | 492 | +| Rank-four cold endpoints | 22 | 44 | +| Helper residual width | 3,894 | 3,794 | +| Paid local rank mass | 5,750 | 5,650 | + +The new paid local profile is `{1:2514, 2:404, 3:448, 4:160, 5:56, 8:8}`. +The explicit whole-family assignment covers 35,424 helper roles on 7,168 live +and 7,670 physical families. It retains the rank deficit 2,560 and charges every +idle remainder. Exact integer majorization certificates justify the owner +updates; the resulting map is a coordinate fixed point, with no claim of joint +optimality. + +The assembled κ is 0.809306% above #635. `data/FRONTIER.json` records Pro's dated +comparison snapshot; it is not a live ranking of community results. + +### Proof and evidence + +- `CONSTRUCTION.md`: exact cold-space calculation, dyadic realization and attribution. +- `hosting/PROOF.md`: capacity, exchange and majorization arguments. +- `independent/CENTRE-GUARD-REVIEW.md`: ordered center-frame interface and source carriers. +- `data/SPEC.json`, `evidence/ASSEMBLY.json`: strict component moments and outer parameters. +- `evidence/audit/`: actual controller, physical charts and finite invoice. +- `construction/INPUTS.json`, `data/UPSTREAM-PINS.json`: inherited input hashes. +- `MANIFEST.json`, `SOURCES.json`, `LOCAL-VALIDATION.json`: submitted bytes, provenance and local checks. + +Original Pro run receipts are retained as evidence; their raw logs remain in +the original archive outside the submission. Fresh replay writes new logs to +the selected output directory. + +### Incremental reproduction + +Use Python 3.11 or newer with assertions enabled. The required replay uses only +the standard library. The optional historical seed-discovery optimizer is not +part of admission. + +Prepare the pinned #635 supplier in a separate directory (the main dependencies +are already present in this repository): + +```sh +git fetch https://github.com/CrocSwap/integer-mult-bounds.git a6895a69f8ad98ab45777b03e9e6f48888c39f6f +mkdir -p /tmp/gauge44-pr635 +git archive FETCH_HEAD research/complex-571-cold14-st2 | tar -x -C /tmp/gauge44-pr635 +``` + +From the repository root, with fresh output directories: + +```sh +python -B research/gauge44-global/verify_manifest.py +python -B research/gauge44-global/construction/reproduce.py \ + --main . --pr635 /tmp/gauge44-pr635 \ + --out /tmp/gauge44-local --until phases +python -B research/gauge44-global/verify_global.py \ + --main . --local /tmp/gauge44-local/local --work /tmp/gauge44-global +``` + +The dedicated workflow also runs the independent literal-word audit, exact owner +reproduction, preserved-assertion comparison and independent pricing on Python +3.11 and 3.14. `hosting/README.md` and `independent/README.md` give those commands. +No ancestral full replay, optimizer search or PDF generation is required. + +The result remains a finite conditional witness. It does not establish an +unconditional multiplication theorem or a complete Lean formalization. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/RESULT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/RESULT.json new file mode 100644 index 0000000000..0fcf674173 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/RESULT.json @@ -0,0 +1,86 @@ +{ + "status": "PASS_GAUGE44_STRICT_GLOBAL_REPLAY", + "kappa": "835693632195073/500000000000000000", + "kappa_decimal": "0.001671387264390146", + "complex_lower": "837092738337043214923/500000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "gain_over_pr635_percent": "2.147956935446134609375167880411478290542019964980136631080981857753585", + "spec_sha256": "b2515d29d54e5027ee225a93c338894eca6827d192d4841b95d35a280dcfd3e1", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.094, + "exit_code": 0, + "log_sha256": "3aea2a4b68e7aaeadd9ffef649be0d25e2dff1535d9a61bffeaf6d92e55ba6a8" + }, + { + "name": "bind", + "seconds": 0.313, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "emit", + "seconds": 2.39, + "exit_code": 0, + "log_sha256": "29618e94d8e948fa870924e3c3aa0a9caa969a8229cc355982eef5b78ee04320" + }, + { + "name": "audit", + "seconds": 11.922, + "exit_code": 0, + "log_sha256": "e38ba1bd8f371365952700a803b9abd81714b521eed22512b914384f8d8f4a94" + }, + { + "name": "invoice", + "seconds": 0.75, + "exit_code": 0, + "log_sha256": "96d5d16d99625e0c33e67255b1351233cb14b032b67642c080ee1a65581ce6a9" + }, + { + "name": "assembly", + "seconds": 0.297, + "exit_code": 0, + "log_sha256": "d0ea37c7097b628ef7d466a7851d7a4c62f5eb10e86bb678ca9e50a17039d352" + }, + { + "name": "admission-controls", + "seconds": 0.344, + "exit_code": 0, + "log_sha256": "34527ddfe1e53bec71dc5759eb9a26417be6d4e93e76cbf80575d9bafebd876b" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.547, + "exit_code": 0, + "log_sha256": "c648542cd6dddbb154af7d02a41aaed1025603d9a4ab54f7c249d2b683e22249" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/SOURCES.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/SOURCES.json new file mode 100644 index 0000000000..0d69845db9 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/SOURCES.json @@ -0,0 +1,36 @@ +{ + "contributor": "icekylinx", + "research_assistance": "OpenAI GPT-6 Astra", + "local_review_and_packaging": "OpenAI Codex", + "original_archive": { + "filename": "integer_mult_round23_gauge44_delta.zip", + "sha256": "40a20a120f51cbed3c9ae4017603be74a9e9332ad4068bd914bf3e81bf8be6b4", + "manifest_sha256": "ffa23eb668ad558ebb5601470fc1997a9fb8cea0e188aa3c5d61318be9000603" + }, + "upstream_main": "17ce0c79b7b51c2634b439ea5a2b754f09909693", + "construction_parent": { + "pr": 635, + "commit": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f" + }, + "bit_supplier_pr": 589, + "packaging_changes": [ + "Omit original run logs; retain their original receipts as historical evidence.", + "Use repository paths and dollar-delimited Markdown mathematics.", + "Add manifest verification, incremental CI and local validation record.", + "Trim trailing whitespace in four Python files; complete ASTs are unchanged. Refresh the corresponding constructor input hash.", + "research/gauge44-bit589: PR589 bit supplier (G44Stack port, Bit589Reviewer SOUND-WITH-FIXES), G44Pack dz1 owner map, re-derived SPEC, LF line endings, regenerated MANIFEST.", + "research/gauge44-leaver: research/gauge44-barch tree plus construction/leaver (k5 cells, chain, frames); G44Pack3 FO_c1 owner map, re-derived SPEC, regenerated independent price receipt, RESULT.json = strict REPLAY, LF, regenerated MANIFEST.", + "research/gauge44-leaver8: research/gauge44-leaver tree with the k8 cell set (all eight cells, R = 480) and its chain recipes (LeaverSAT/LeaverSAT2 pkg_k8), layer_end_controls_leaver v2 with declared not-applicable sites on all five stack words (replacing the final-word interim skip), CHAIN-PINS-k8; G44Pack3 K8c8 owner map, re-derived SPEC, regenerated independent price receipt and local audit, RESULT.json = strict REPLAY, LF, regenerated MANIFEST." + ], + "attribution": "Original notices and licenses retained. See NOTICE.md, UPSTREAM-NOTICE.md and CONSTRUCTION.md.", + "whitespace_only_python_files": [ + "code/audit_allcold.py", + "code/bind_providers_portable.py", + "construction/construct_gauge_xcentre.py", + "independent/audit_local.py" + ], + "historical_bit_supplier_pr": 543, + "bit_supplier_note": "This package cites PR589 (inputs/PR589-EXPECTED.json, git blob e293ddc5…). PR543 is the supplier of #645's retained historical evidence (LOCAL-VALIDATION.json, independent/ audit files, hosting/, evidence/). RESULT.json is this package's strict replay.", + "owner_map": "G44Pack/G44Pack3: The map is G44Pack3's K8c8, from its pattern-flow LNS (`pflns`) on the R = 480 k8 word. Its lineage is the #685/#741 map (chafreaky) via G44Pack's relabel and rewidth, followed by G44Pack3's LNS. It was admitted with this package's own code (NEWWORD discovery, `freeze_spec.py`, strict) at κ 0.001671387264390146.", + "construction_changes": "PartialK: no-triangle gauge44 word (R=504, PRIO6, ranks [4]*14); G44Stack: layers on it (pivot swaps, s4, x30, b6, q4); LeaverSAT: no-helper mutable-leaver cells and re-stacked recipes, LeaverSAT2: frame re-optimisation (construction/leaver); NewBArch: triangle-hybrid B rewrite U8 (construction/barch); chafreaky #741: eight B frames (construction/frames, ported by CompetitorMine) and the owner map; JointXF: joint exchange X4 (construction/jx); BRoute: read-set exchange SW4 (construction/sw4); NoTriReopen: p6n ends (construction/layers_p6n); BlockInvert: entrance promotions E4->E5 (construction/promo, minimal recipe p6n-k4); drivers construction/notri/reproduce_notri.py, construction/layers_np/reproduce_np.py, construction/promo/reproduce_promo.py" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/UPSTREAM-NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/UPSTREAM-NOTICE.md @@ -0,0 +1,34 @@ +# Attribution and scope + +Four verified provider types are offered to every call: PR571's prefix word with twelve multi-cut cold kernels (PR568's unchanged constructor), the same word with forty width-five entrance promotions (PR569's unchanged frame constructor) before those kernels, PR575's plain joint-prefix provider, and PR568's eight-cold provider. A window MILP with an exact per-pattern model chooses the dispatch and a literal owner map. PR583's six source-bound kernel frame coalescences (its unchanged constructor and negative controls) are applied to every PR571-prefix provider word (ck and atm3), followed by two further coalescences that each first move one addition past two commuting additions (package code/build_gate_moves.py, extending PR583's constructor); a final hyperplane_end step (package code/build_hpe.py) then runs 46 single-gate cleanups h -= p right after part B at the dim-8 join U of their registers, so 46 width-8 entering helpers per call end at U with width 7; each such gate commutes with every earlier cleanup gate on its registers (for 8 of them the partner's one earlier gate x -= p only reads p), and the reordered program is replayed exactly. A window MILP (exact windows, RINS around an LP vertex) gives the dispatch ck 45 / atm3 21 / jp8 6 and the literal owner map. + +Pinned external sources (unchanged; `verify.py` checks their manifests and every file it uses): +- PR568 (`research/complex-multicold`, commit `71c99ac935a33bb7b59a1b4a7af8725a939b0b90`). +- PR571 (`research/structural-gain`, commit `b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3`). +- PR569 (`research/larger-gain`, commit `897213a855b7fb8a1b8b0e552a2f5c42e6c1b326`). +- PR575 (`research/complex-joint-prefix`, commit `eac6f7e378ab622dac50a2fd4b7ef6eab014de44`). +- PR583 (`research/kernel-frame-coalescing`, commit `89be768f0157f5a3d8e4db69cf1748768605eac9`). + +Provider construction is described as typed steps in `data/SPEC.json` (`build`); `verify.py` runs only allowlisted step types with their paired omission audits and checks every input and output content hash. `code/` holds the spec-driven global admission scripts adapted from PR571's `frontier-composition/global-code/` (OpenAI Codex assisted, Apache-2.0): every expected value is read from `data/SPEC.json` and compared only after independent recomputation. `code/generated_identity.py` and `code/generated_identity_controls.py`, and the decompressed-content artifact identities in the bind, audit, invoice, assembly and phase-timing scripts, are taken unchanged from PR586 by chafreaky (`research/promoted-kernel-coalescing`, commit `4846fee5b06af770e9b3a10c36200f673d656725`, OpenAI Codex assisted, Apache-2.0), including its proof-content and reference/metadata mutation controls; the normalization of descriptive width metadata after frame changes follows the same PR. + +In PR601, the owner map was nominated by a HiGHS window MILP (adapted from PR569's `global/nominate_width7.py`) with lazy cross-time Hall cuts; this package's re-solved map is described below. Neither is an admission dependency. + +DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. (The PR601 package this one starts from states: "Prepared by Claude Code (Anthropic) research agents.") Apache-2.0 applies; LICENSE is included. All notices, licenses, source pins and AI disclosures of the pinned sources and their ancestry are retained in those packages and are not replaced by this notice. All inherited conditional assumptions remain conditional. + +**This package (complex-571-cold14, DreamingOfClouds).** It starts from PR601 (jeremykothe2, `research/complex-571-hpem46`, commit `529ab7dcb59d5ea7a5798e9e06cf5b3aee8a1550`). Everything above is kept unchanged except the following: +- every provider chain (ck, atm3, jp8) gains the typed step `cold_end` (`code/build_cold_end.py`, `code/cold_end_controls.py`; recipes `data/recipes/*-cold_end.json.gz`); +- the generalised native chain and the global admission scripts accept cold helpers that end below FULL (with `0:U` wrappers), a refactored exact cleanup, and check the wrapper order; +- `data/PLAN.json` / `data/OWNERS.json.gz` (dispatch and literal owner map) come from a relocate/swap/ejection-chain/provider-flip annealing search started from PR601's map, refined by an exact pattern-restricted owner model (CP-SAT) with a literal edge-colouring expansion (not an admission dependency); +- `data/SPEC.json` holds the expected values, recorded by a discovery run and then checked by a strict run. + +The cold-end construction (a row-plus-column cone condition for low-frame ends, a rank-0 dirt-spread premix and multi-gate lower-frame cleanup) builds on PR591 / PR592 / PR593 / PR601 (jeremykothe2) and our PR599 (Lean: multi-gate and cold hyperplane-end tails). DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. Build on this at your own risk. + +**This package (complex-571-cold14-b3, jeremykothe2).** It is PR604's `complex-571-cold14` (DreamingOfClouds) with ColdBeyond's second cold end per block (two new `cold_end` A-gate primitives, `PROOF-NOTE.md`), ColdSupply's E1 entering pair and reviewed controls, a free dispatch (jp8 ×60, atm3 ×12) and a literal owner map from an exact per-time-Hall window MIP. All other construction, code, controls and proofs are PR604's and earlier contributors', unchanged. + +**This package (complex-571-cold14-k492).** It is complex-571-cold14-b3 with these changes: +- **K-triangle base words.** The leaver-read K-triangle skeleton atom and its read schedule (`data/TRI-SCHEDULE.json`) are by AtomScout, a Claude Code research agent. `code/construct_k_triangle.py` is PR531's `code/construct_504.py` (icekylinx, OpenAI Codex / GPT assisted, Apache-2.0; pinned source `direct_delivery`) extended with that atom. +- **Ported chains.** The PR604/B3 chains are ported stage by stage onto the K-triangle words by `code/build_port_stage.py` (Port480, a Claude Code research agent). `code/build_frame_regroup.py` extends PR583's `build_frames.py` (chafreaky). +- **Helper count R.** The generalisation of the global scripts to the provider helper count R is by GlobalR (a Claude Code research agent), with AtomReviewer's fixes (PROOF-NOTE-R.md). +- **Owner map.** The owner map, the cold_end recipes on the K-triangle words and the package assembly are by Stack492, Port480 and ColdBeyond (Claude Code research agents). + +Build on this at your own risk. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/assemble.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/assemble.py new file mode 100644 index 0000000000..8cee90b50e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/assemble.py @@ -0,0 +1,241 @@ +"""Gauge44 complete global admission with the retained native exact-complex moment. + +Prepared with OpenAI Codex assistance. The rational engines and outer +constraints are retained from PR547/PR548 and their preserved ancestry. +The bit operator is the cited unchanged PR589 supplier (PR555's punctured +R439 word, v = 111, decoder constant 63, two A-section transports), shipped +as inputs/PR589-EXPECTED.json and pinned by git blob id. Its rank-mass +deficit is derived from the word's parameters, T(2Kv - L*cst) at nine +stages (PR545/PR555 rank-mass identity), not hard-coded. The complex owner +and invoice inputs must be freshly emitted by the packaged physical replay. +All conservative admission guards and conservative moment/outer witnesses run +before the PR559 native-complex correction. The bit surcharge is retained. +""" +from pathlib import Path +from fractions import Fraction as Q +from decimal import Decimal, localcontext +import argparse,json,hashlib,importlib.util,os,sys +from collections import Counter +assert __debug__, 'Assertions required' +P=Path(sys.argv[1] if __name__=='__main__' else os.environ['GAIN_PR564_SOURCE']).resolve() +read=lambda p:json.loads(p.read_text()) +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +hash_ok=lambda x:isinstance(x,str) and len(x)==64 and all(t in '0123456789abcdef'for t in x) +digest=lambda x:hashlib.sha256(json.dumps(x,separators=(',',':')).encode()).hexdigest() +def load(n): + s=importlib.util.spec_from_file_location(n,P/'engines'/(n+'.py'));m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m +M,B,A=[load(n)for n in ('moment','base_two_moment','outer')] +def dec(x): + with localcontext()as ctx:ctx.prec=70;return str(Decimal(x.numerator)/Decimal(x.denominator)) +from witness import DISPATCH,CALL_ORDER,COUNTS,PIDS,X,DISCOVER,pin,SPOT,spot_widths +# Cited bit supplier: PR589's tune/EXPECTED.json (merged on main as research/e8-bit-p111-tuned/tune/EXPECTED.json). +BIT_PATH=Path(__file__).resolve().parents[1]/'inputs/PR589-EXPECTED.json' +BIT_BLOB='e293ddc557742637f9f679f083a1a282d87b1b13' +# Nine-stage bit template (PR463/PR510 chain, 32 replicas): L stages, T replicas, K=(L-1)//2 pairs, moment width M=1+7L. +BIT_L,BIT_T=9,32;BIT_K=(BIT_L-1)//2;BIT_M=1+7*BIT_L +def git_blob(data):return hashlib.sha1(b'blob '+str(len(data)).encode()+b'\0'+data).hexdigest() +def load_bit(data): + """The pinned supplier record: its full record (word parameters) and its nine-stage price.""" + assert git_blob(data)==BIT_BLOB,'bit supplier blob pin' + return json.loads(data) +def bit_deficit(word,live): + """Rank-mass deficit M*live - mass = T(2Kv - L*cst) of a v-port bit word with decoder constant cst (PR545/PR555). + cst is the sum of the retained totals' COPY ranks and live = 2KvT data wires; both are cross-checked here, and the + caller checks the result against the priced profile, so neither v nor cst is free.""" + v,cst,ranks=word['v'],word['decoder_constant'],word['copy_ranks'] + assert type(v)is int and type(cst)is int and all(type(r)is int and 00;return d + + +def assemble(owner,invoice,owner_sha,invoice_sha): + # These are admission receipts, not optional collections of successful rows. + # Require both orientations and every finite check before pricing anything. + assert owner['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert invoice['status']=='PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE' + assert all(hash_ok(x)for x in (owner_sha,invoice_sha,owner['template_sha256'],owner['controller_audit_sha256'],invoice['parent_template_sha256'])) + checks={'local_primitive_bound','logical','router','literal','mass','precision','tape','row','halving'} + assert set(invoice['strict_checks'])==checks + assert all(invoice['strict_checks'][name] is True for name in checks) + assert set(invoice['providers'])==set(PIDS) + assert invoice['provider_counts']==COUNTS + assert owner['all_live_owners_per_call_distinct'] is True + # R (helpers per provider word) is read from the invoice and must be shared by every provider; n=2v+R. + R=invoice['helpers'];assert type(R) is int and R>0 and all(p['helpers']==R for p in invoice['providers'].values()) + assert owner['owners_per_call']==2*112+R and owner['actual_helper_owner_charts']==owner['hosted_residuals']==72*R==pin('expected.hosted_residuals',owner['hosted_residuals']) + pin('expected.rank_mass',owner['rank_mass']) + pin('expected.actual_73column_sigmas',owner['actual_73column_sigmas']);pin('expected.cross_replica_helper_roles',owner['cross_replica_helper_roles']) + pin('expected.idle_remainders',owner['explicit_idle_remainder_children']) + assert invoice['complete_invocation_sweeps']==invoice['bridge_sweeps']==72 + assert invoice['live']==owner['live'] and invoice['physical']==owner['physical'] + assert invoice['centres']==8 + assert invoice['physical_stock_identity']==dict(data_and_owner_families=7168,local_helpers=R,private_centres=8,coefficient_work=2) + assert sum(invoice['physical_stock_identity'].values())==invoice['physical'] + assert invoice['controller_audit_sha256']==owner['controller_audit_sha256'] + for pid,p in invoice['providers'].items(): + assert set(p['local'])=={'forward','backward'} + assert p['helpers']==R and p['centres']==8 and p['n']==2*112+R and p['v']==112 and p['h']==9 + K='providers.'+pid+'.';pin(K+'entering',p['entering_helpers']);pin(K+'entrance',p['entrance_rank']) + pin(K+'inventory',p['width_inventory']) + assert all(type(w) is int and 0=0 for n in idle.values()) + idle=+idle;assert sum(idle.values())==owner['explicit_idle_remainder_children'] + pin('expected.idle_remainder_profile',{str(r):n for r,n in sorted(idle.items())}) + paid.update(idle) + assert dict(paid)=={int(r):n for r,n in owner['paid_profile'].items()} + assert invoice['compiler']==64*74**3 + assert invoice['local_adapters']==max(p['local_adapters']for p in invoice['providers'].values()) + assert invoice['local_primitive_bound']==max(p['local_primitive_bound']for p in invoice['providers'].values()) + # Recount the retained dedicated-bank envelope independently. Its geometry + # stays fixed, while every local primitive and wrapper comes from the actual + # selected provider/orientation sums above. + parent_live,parent_physical,parent_idle=11704,12218,16128 + parent_banks,rem=divmod(parent_live-2*112*4*8,9);assert rem==0 and parent_physical==parent_live+parent_banks+8+2 # parent R0=504 dedicated helpers per stage bank + assert owner['source_idle_children_charged']==parent_idle + bridges,shifts=2*112*72,4*112*8;moves=2*shifts + nonlocal_items=(4*112*8*9+2*112*8*9+2*72*R+parent_idle+9*parent_banks+bridges+shifts+moves+parent_live+parent_physical+invoice['wrapper_elementary_factors_charged']) + outside=8*nonlocal_items+64*73 + pervertex=(invoice['selected_real_component_primitives']+bridges+shifts+moves+parent_live+(72*invoice['local_adapters']+outside)*invoice['compiler']+64*parent_physical) + rebased=pervertex+65*(invoice['physical']-parent_physical)+(invoice['live']-parent_live) + assert invoice['unhosted_pervertex']==pervertex and invoice['hosted_rebased_pervertex']==rebased + used=max(pervertex,rebased) + prior=invoice['retained_prior_overcharge'] + if prior is not None: + assert hash_ok(prior['sha256']) and type(prior['previous_pervertex_allowance']) is int and prior['previous_pervertex_allowance']>0 + assert prior['added_complete_new_pervertex']==pervertex + assert prior['policy']=='Retain old allowance and add entire fresh mixed recount.' + used=max(used,prior['previous_pervertex_allowance']+pervertex) + assert invoice['conservative_pervertex_used']==used + finite=invoice['finite'] + assert 02*48*48) + assert actual_checks==invoice['strict_checks'] and all(actual_checks.values()) + bit_record=load_bit(BIT_PATH.read_bytes()) + bit=bit_record['nine'] + assert 'nine-stage' in bit['pipeline'] and '32 replicas' in bit['pipeline'] + c=Q(bit['bit_lower']) + bit_D=bit_deficit(bit_record['word'],bit['bit']['live']) + H={int(r):n for r,n in owner['paid_profile'].items()};pin('expected.global_profile',owner['paid_profile']) + # Claimed lower endpoints come from the spec; discovery derives them with the same certified moment engine. + # Either way they are verified below (accepted at b, rejected at b+1e-24). + if DISCOVER:b=Q(M.certify(H,73,owner['live'],False)['lower']);conservative_b=Q(M.certify(H,73,owner['live'],True)['lower']) + else:b=Q(X['complex_lower']);conservative_b=Q(X['conservative_complex_lower']) + assert owner['template_sha256']==invoice['template_sha256'] and owner_sha==invoice['owner_audit_sha256'] + pin('expected.live',owner['live']);pin('expected.physical',owner['physical']);assert owner['deficit']==2560 + assert owner['banked_residuals']==0 + def check_moment(side,h,m,W,lower,deficit,bad): + assert m*W-sum(r*n for r,n in h.items())==deficit and m*m>2*max(h)**2 + rows=[] + for z,accept in [(lower,True),(lower+Q(1,10**24),False)]: + l,u=M.moment(h,m,W,z,bad);ll,uu=B.moment(m,W,list(h.items()),z) + if bad: + fl,fu=B.moment(m,W,[(1,32*m*m*sum(h.values()))],z);ll+=fl/10**16;uu+=fu/10**16 + assert (u<1 and uu<1)if accept else(l>1 and ll>1) + rows.append(dict(side=side,surcharge=bad,endpoint=str(z),accept=accept,mercator=[str(l-1),str(u-1)],base_two=[str(ll-1),str(uu-1)])) + return rows + bitH={int(r):n for r,n in bit['profile'].items()} + assert BIT_M==64 and sum(r*n for r,n in bitH.items())==bit['bit']['rank_mass'] + bit_moments=check_moment('bit',bitH,BIT_M,bit['bit']['live'],c,bit_D,True) + conservative_moments=check_moment('conservative_complex',H,73,owner['live'],conservative_b,2560,True) + assert bit['bit']['two_level_coefficient_bits']0 + ceil=lambda x:-(-x.numerator//x.denominator);cut=max(ceil(36/gap**2),ceil(2*(4+512)/gap));assert cut*gap**2>=36 and cut*gap>=2*(4+512) + cuts.append(dict(exponent=str(a),gap=str(gap),cutoff_log2=str(cut)));chain.append(a) + q=chain[-1]*(1-2*eta);margin=(1-eta)*q/(1+q);ticks=margin*10**18;k=Q((ticks.numerator-1)//ticks.denominator,10**18) + bridge={'semantic':{'C0':{'base':2,'exponent':210000},'strict_literal_gap':1},'rows':{'degree_gap':Q(10**6)-Q(51*20161,25)}} + outer=A.assembly(chain[-1],bb,bridge,k,eta=eta,beta=beta);assert len(outer['strict_constraints'])==47 and all(v>0 for v in outer['strict_constraints'].values()) + controls=[] + for name,kk,ee,be in [('next_grid',k+Q(1,10**18),eta,beta),('zero_eta',k,Q(0),beta),('zero_beta',k,eta,Q(0)),('unit_beta',k,eta,Q(1))]: + try:A.assembly(chain[-1],bb,bridge,kk,eta=ee,beta=be) + except AssertionError:controls.append(name) + else:raise AssertionError(name) + return k,cuts,outer,controls + conservative_k,conservative_cuts,conservative_outer,conservative_controls=outer_witness(conservative_b) + pin('expected.conservative_kappa_decimal',dec(conservative_k)) + # Only after every conservative supplier/admission/outer check succeeds is + # the reviewed native exact-complex recurrence selected. Bit charge stays. + native_moments=check_moment('complex',H,73,owner['live'],b,2560,False) + k,cuts,outer,controls=outer_witness(b) + pin('expected.kappa_decimal',dec(k)) + assert M.moment(H,73,owner['live'],b,True)[0]>1 + assert M.moment(bitH,64,bit['bit']['live'],c+Q(1,10**24),False)[1]<1 + model_controls=['native_complex_endpoint_rejected_with_old_surcharge','omitting_bit_surcharge_would_fail_next_endpoint_rejection'] + moments=bit_moments+native_moments + input_hashes={'owner_audit':owner_sha,'fresh_invoice':invoice_sha,'package:inputs/PR589-EXPECTED.json':sha(BIT_PATH)} + input_hashes.update({'engines/'+name+'.py':sha(P/'engines'/(name+'.py'))for name in ('moment','base_two_moment','outer')}) + return dict(status='PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY',kappa=str(k),kappa_decimal=dec(k),complex_lower=str(b),complex_decimal=dec(b),bit_lower=str(c),bit_decimal=dec(c),binding='complex',gain_over_pr635_percent=dec(100*(k/Q(X['gain_baseline_kappa'])-1)),complex_profile=H,provider_counts=invoice['provider_counts'],surcharge_model={'complex':False,'bit':True},conservative_complex_lower=str(conservative_b),conservative_complex_decimal=dec(conservative_b),conservative_kappa=str(conservative_k),conservative_kappa_decimal=dec(conservative_k),conservative_moments=conservative_moments,conservative_bootstrap=conservative_cuts,conservative_outer={n:str(v)for n,v in conservative_outer['strict_constraints'].items()},conservative_controls=conservative_controls,model_controls=model_controls,native_correction_gain=dec(k-conservative_k),template_sha256=owner['template_sha256'],input_sha256=input_hashes,bit_supplier=dict(pr=589,repository='CrocSwap/integer-mult-bounds',commit='a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46',merged_as='b3eb785ac5b4b1ca2beea0f80db078a505626a90',path='research/e8-bit-p111-tuned/tune/EXPECTED.json',git_blob_sha1=BIT_BLOB,word=dict(v=bit_record['word']['v'],decoder_constant=bit_record['word']['decoder_constant'],copy_ranks=bit_record['word']['copy_ranks']),derived_deficit=bit_D,deficit_formula='T(2Kv-L*cst), L=%d T=%d K=%d M=%d'%(BIT_L,BIT_T,BIT_K,BIT_M),replay_scope='Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit.'),moments=moments,bootstrap=cuts,outer={n:str(v)for n,v in outer['strict_constraints'].items()},controls=controls,scope='Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification.') +if __name__=='__main__': + import sys + package,C,out=map(Path,sys.argv[1:4]);assert package.resolve()==P and not out.exists() + owner_path=C/'audit/OWNERS-AND-PROFILE.json';invoice_path=C/'audit/PREFIX-AND-INVOICE.json' + owner,invoice=read(owner_path),read(invoice_path) + assert owner['template_sha256']==read(C/'hosted/HOSTED.json')['template_sha256'] + r=assemble(owner,invoice,sha(owner_path),sha(invoice_path));out.write_text(json.dumps(r,indent=2)+'\n');print(r['status'],r['kappa_decimal']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/assembly_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/assembly_controls.py new file mode 100644 index 0000000000..93bca1ce6f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/assembly_controls.py @@ -0,0 +1,260 @@ +"""Independent admission controls for the N-provider native-complex assembly (per-provider controls). + +Prepared with OpenAI Codex assistance; Apache-2.0. Mutation receipts are +rebound to their new owner digest, so unrelated stale hashes cannot conceal +an incomplete width, provider, orientation, paid-profile or finite check. +The fresh physical replay remains a separate prerequisite. +""" +import argparse +import copy +import itertools +import math +import hashlib +import json +import os +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * + +assert __debug__, 'Assertions required' +P = Path(__file__).resolve().parent +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() +digest = lambda x: hashlib.sha256(json.dumps(x, sort_keys=True, separators=(',', ':')).encode()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + from assemble import assemble + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + baseline = assemble(owner, invoice, sha(owner_path), sha(invoice_path)) + + def empty_maps(o, i): + i['strict_checks'] = {} + i['providers'] = {} + + def understated_stock(o, i): + o['physical'] -= 1 + i['physical'] -= 1 + i['physical_stock_identity']['coefficient_work'] -= 1 + + def changed_profile(o, i): + o['paid_profile']['1'] += 2 + o['paid_profile']['2'] -= 1 + + def wrong_orientation(o, i): + c = next(c for c in i['selected_calls'] if c['stage'] == 0) + c['orientation'] = 'backward' + p = i['providers'][c['provider_id']] + z = p['local']['backward'] + c['program_sha256'] = p['program_hashes']['backward'] + for name in ('events', 'macros', 'real_component_primitives', + 'coefficient_work_primitive_count', 'pre_wrappers', 'post_wrappers'): + c[name] = z[name] + i['selected_real_component_primitives'] = sum(c['real_component_primitives'] for c in i['selected_calls']) + i['selected_coefficient_work_primitive_count'] = sum(c['coefficient_work_primitive_count'] for c in i['selected_calls']) + + def understated_prefix(o, i): + for p in i['providers'].values(): + for z in p['local'].values(): + z['prefix_bits'], z['prefix_l1'] = 1, '1' + i['global_prefix_bits'] = 1 + 37 + 72 + 72 + 4 + + def reordered_calls(o, i): + i['selected_calls'][0], i['selected_calls'][1] = i['selected_calls'][1], i['selected_calls'][0] + + def no_cold_wrappers(o, i): + for p in i['providers'].values(): + p['entering_helpers'] -= 4 + for z in p['local'].values():z['pre_wrappers'] = z['post_wrappers'] = p['entering_helpers'] + for c in i['selected_calls']: + c['entering_helpers'] = c['pre_wrappers'] = c['post_wrappers'] = i['providers'][c['provider_id']]['entering_helpers'] + i['wrapper_elementary_factors_charged'] = sum(2*c['pre_wrappers'] for c in i['selected_calls'])*i['factors_per_wrapper'] + + controls = [ + ('empty_certification_maps', empty_maps), + ('failed_invoice_status', lambda o, i: i.__setitem__('status', 'FAIL')), + ('nonboolean_precision_check', lambda o, i: i['strict_checks'].__setitem__('precision', 'true')), + ('wrong_owner_role_count', lambda o, i: o.__setitem__('actual_helper_owner_charts', o['actual_helper_owner_charts'] - 1)), + ('understated_physical_stock', understated_stock), + ('changed_profile_same_rank_mass', changed_profile), + ('insufficient_finite_C0', lambda o, i: i['finite'].__setitem__('required_C0_bits', 210001)), + ('missing_finite_check', lambda o, i: i['strict_checks'].pop('halving')), + ('wrong_reflected_orientation_selfconsistent_totals', wrong_orientation), + ('missing_selected_call', lambda o, i: i['selected_calls'].pop()), + ('wrong_selected_primitive_sum', lambda o, i: i.__setitem__('selected_real_component_primitives', i['selected_real_component_primitives'] - 1)), + ('wrong_selected_coefficient_work_sum', lambda o, i: i.__setitem__('selected_coefficient_work_primitive_count', i['selected_coefficient_work_primitive_count'] - 1)), + ('unpaid_wrapper_factors', lambda o, i: i.__setitem__('wrapper_elementary_factors_charged', i['wrapper_elementary_factors_charged'] - 144)), + ('wrong_global_compiler', lambda o, i: i.__setitem__('compiler', 1)), + ('wrong_global_adapter_maximum', lambda o, i: i.__setitem__('local_adapters', 1)), + ('understated_exact_prefix_and_global_sum', understated_prefix), + ('wrong_global_prefix_sum', lambda o, i: i.__setitem__('global_prefix_bits', 224)), + ('wrong_row_prefix_reserve', lambda o, i: i.__setitem__('row_prefix_extra', 0)), + ('wrong_parent_geometry_charge', lambda o, i: i.__setitem__('unhosted_pervertex', 1)), + ('wrong_rebased_geometry_charge', lambda o, i: i.__setitem__('hosted_rebased_pervertex', 1)), + ('wrong_complete_pervertex_envelope', lambda o, i: i.__setitem__('conservative_pervertex_used', 1)), + ('wrong_prior_added_complete_invoice', lambda o, i: i['retained_prior_overcharge'].__setitem__('added_complete_new_pervertex', 1)), + ('wrong_finite_router_bits', lambda o, i: i['finite'].__setitem__('router_bits', 1)), + ('wrong_finite_literal_bits', lambda o, i: i['finite'].__setitem__('literal_bits', 1)), + ('wrong_finite_physical_stock_bits', lambda o, i: i['finite'].__setitem__('physical_stock_bits', 1)), + ('wrong_finite_row_coefficient', lambda o, i: i['finite'].__setitem__('physical_row_coefficient', 1)), + ('reordered_complete_calls', reordered_calls), + ('understated_explicit_idle_remainders', lambda o, i: o.__setitem__('explicit_idle_remainder_children', o['explicit_idle_remainder_children']-1)), + ('understated_actual_chart_types', lambda o, i: o.__setitem__('actual_73column_sigmas', o['actual_73column_sigmas']-1)), + ('wrong_cross_replica_role_count', lambda o, i: o.__setitem__('cross_replica_helper_roles', o['cross_replica_helper_roles']-1)), + ('old_no_cold_wrapper_counts_selfconsistent', no_cold_wrappers), + ] + + def resync(i, c): + p = i['providers'][c['provider_id']] + c['program_sha256'] = p['program_hashes'][c['orientation']] + c['entering_helpers'], c['entrance_rank'] = p['entering_helpers'], p['entrance_rank'] + for name in ('events','macros','real_component_primitives','coefficient_work_primitive_count','pre_wrappers','post_wrappers'): + c[name] = p['local'][c['orientation']][name] + + # Every provider gets the full per-provider control set, substituting a partner provider where needed. + for P in PIDS: + Qp = partner(P) if len(PIDS)>1 else '__unregistered__' + widths = invoice['providers'][P]['widths'] + + def forged_program_hash(o, i, P=P): + i['providers'][P]['program_hashes']['forward'] = '0' * 64 + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = '0' * 64 + + def wrong_selected_call(o, i, P=P): + c = next(c for c in i['selected_calls'] if c['provider_id'] == P) + d = next(d for d in i['selected_calls'] if d is not c and (d['provider_id'] != P or len(PIDS)==1) and (d['stage'] - c['stage']) % 2 == 0) + c['stage'], d['stage'], c['replica'], d['replica'] = d['stage'], c['stage'], d['replica'], c['replica'] + + def stale_program(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['program_hashes'] = copy.deepcopy(i['providers'][Qp]['program_hashes']) + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = p['program_hashes'][c['orientation']] + + def stale_profile(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['paid_profile'] = copy.deepcopy(i['providers'][Qp]['paid_profile']) + p['children'] = sum(p['paid_profile'].values()) + + def moved(o, i, P=P): + a = next(c for c in i['selected_calls'] if c['provider_id'] == P) + b = next(c for c in i['selected_calls'] if c['provider_id'] != P and c['orientation'] == a['orientation']) + a['provider_id'], b['provider_id'] = b['provider_id'], a['provider_id'] + resync(i, a); resync(i, b) + + def compensating(o, i, P=P, Qp=Qp): + # Two dishonest profiles that cancel exactly in the dispatch-weighted aggregate. + g = math.gcd(COUNTS[P], COUNTS[Qp]); dp, dq = COUNTS[Qp] // g, COUNTS[P] // g + p, q = i['providers'][P], i['providers'][Qp] + p['paid_profile']['1'] += dp; q['paid_profile']['1'] -= dq + p['children'] += dp; q['children'] -= dq + + def forged_recipe(o, i, P=P): + name = 'CLIFFORD-RECIPES.json' + i['providers'][P]['artifacts'][name] = '0'*64 + o['source_artifacts']['providers/'+P+'/'+name] = '0'*64 + + def forged_phase(o, i, P=P): + i['providers'][P]['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] = '0'*64 + o['provider_phase_semantic_sha256'][P] = i['provider_phase_semantic_sha256'][P] = '0'*64 + + controls += [ + (P + ':missing_provider', lambda o, i, P=P: i['providers'].pop(P)), + (P + ':missing_backward_orientation', lambda o, i, P=P: i['providers'][P]['local'].pop('backward')), + (P + ':unpaid_scalar_primitive', lambda o, i, P=P: i['providers'][P]['local']['forward'].__setitem__('real_component_primitives', i['providers'][P]['local']['forward']['real_component_primitives'] - 1)), + (P + ':wrong_local_artifact_binding', lambda o, i, P=P: i['providers'][P]['artifacts'].__setitem__('LOCAL-PROGRAMS.json.gz', '0' * 64)), + (P + ':false_dirty_restoration', lambda o, i, P=P: i['providers'][P]['local']['backward'].__setitem__('all_dirty_helper_columns_restored', False)), + (P + ':wrong_declared_provider_count', lambda o, i, P=P: i['provider_counts'].__setitem__(P, i['provider_counts'][P] + 1)), + (P + ':wrong_local_compiler', lambda o, i, P=P: i['providers'][P].__setitem__('compiler', 1)), + (P + ':wrong_local_adapter_charge', lambda o, i, P=P: i['providers'][P].__setitem__('local_adapters', 1)), + (P + ':wrong_local_primitive_bound', lambda o, i, P=P: i['providers'][P].__setitem__('local_primitive_bound', 1)), + (P + ':forged_provider_and_call_program_hash', forged_program_hash), + (P + ':provider_at_wrong_call', wrong_selected_call), + (P + ':stale_partner_program_consistent_call_hashes', stale_program), + (P + ':stale_partner_profile_consistent_child_total', stale_profile), + (P + ':relocated_against_partner_same_counts', moved), + (P + ':compensating_false_profiles_with_' + Qp, compensating), + (P + ':synchronized_forged_source_recipe_hash', forged_recipe), + (P + ':synchronized_forged_phase_review_semantics', forged_phase), + ] + if len(PIDS)==1: + # Cross-provider substitutions require a second actual supplier. + # All single-provider program, phase, profile and dispatch bindings + # retain their direct mutations above and in the controller audit. + partner_only = {P+':stale_partner_program_consistent_call_hashes', + P+':stale_partner_profile_consistent_child_total', + P+':relocated_against_partner_same_counts', + P+':compensating_false_profiles_with_'+Qp} + controls = [(name, fn) for name, fn in controls if name not in partner_only] + # Width order and inventory: swap the first helper of every pair of distinct widths (same inventory), + # and shift one unit between them (same total). + first = {} + for h, w in enumerate(widths): + first.setdefault(w, h) + for wa, wb in itertools.combinations(sorted(first), 2): + def swap(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a], w[b] = w[b], w[a] + def shift(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a] += 1; w[b] -= 1 + controls.append((P + ':width_order_swap_%d_%d' % (wa, wb), swap)) + controls.append((P + ':width_inventory_shift_%d_%d' % (wa, wb), shift)) + for h in SPOT: + def cold_swap(o, i, P=P, h=h): + w = i['providers'][P]['widths']; j = w.index(9 if w[h] != 9 else 8); w[h], w[j] = w[j], w[h] # never the identity + controls.append((P + ':cold_helper_width_swap_%d' % h, cold_swap)) + rejected = [] + accepted = [] + for name, mutate in controls: + o, i = copy.deepcopy(owner), copy.deepcopy(invoice) + mutate(o, i) + oh = digest(o) + i['owner_audit_sha256'] = oh + try: + assemble(o, i, oh, digest(i)) + except (AssertionError, KeyError): + rejected.append(name) + else: + # Discovery has no pinned values to reject spec-only mutations; the strict run must reject every control. + if not DISCOVER: + raise AssertionError('Invalid admission receipt accepted: ' + name) + accepted.append(name) + try: + assemble(owner, invoice, '0' * 64, sha(invoice_path)) + except AssertionError: + rejected.append('wrong_owner_receipt_hash') + else: + raise AssertionError('Wrong owner digest accepted') + pin('expected.assembly_controls_rejected', len(rejected)) + assert baseline['controls'] == ['next_grid', 'zero_eta', 'zero_beta', 'unit_beta'] + assert baseline['conservative_controls'] == baseline['controls'] + assert baseline['surcharge_model'] == {'complex': False, 'bit': True} + assert len(baseline['model_controls']) == 2 + return dict( + status='PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS', + valid_receipt_kappa=baseline['kappa'], + input_sha256=baseline['input_sha256'], + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + rejected_controls=rejected, + discovery_accepted_controls=accepted, + exact_outer_controls=baseline['controls'], + conservative_outer_controls=baseline['conservative_controls'], + recurrence_model_controls=baseline['model_controls'], + scope='Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay.', + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/audit_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/audit_allcold.py new file mode 100644 index 0000000000..c86f7b0235 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/audit_allcold.py @@ -0,0 +1,254 @@ +"""OpenAI Codex independent serialized ASYNCHRONOUS controller/spectator audit. +Imports no emitter, optimizer, expander, edge-coloring, or source hosting code. +CLI: BASE HOSTED REPORT [--mutation-controls] +Each provider is independently read from BASE/providers, never from a baseline width histogram. +OpenAI Codex two-provider width-seven extension; retains all inherited independent controller checks. +The exact 63 width-seven and 9 plain calls are frozen below. +""" +import sys,json,gzip,hashlib,copy +assert __debug__, 'Assertions must remain enabled' +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +BASE,OUT,REPORT=map(lambda p:Path(p).resolve(),sys.argv[1:4]);read=lambda p:json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +parent=read(BASE/'split-centres/GLOBAL-TEMPLATE.json.gz') +ph=read(BASE/'work/complex-nine-native/DATA-PHASES.json') +ct=read(OUT/'GLOBAL-TEMPLATE.json.gz');summary=read(OUT/'HOSTED.json') +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +provider_ids=PIDS +providers={};registry={};phase_semantic_hashes={};artifact_semantic_hashes={} +required_artifacts={'work/complex-nine-native/DATA-PHASES.json'} +provider_files=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json') +for pid in provider_ids: + p=BASE/'providers'/pid + c=read(p/'CANONICAL-WORD.json.gz');checks=read(p/'LOCAL-CHECKS.json') + programs=read(p/'LOCAL-PROGRAMS.json.gz');replay=read(p/'INDEPENDENT-LOCAL-REPLAY.json') + phase=read(p/'CLIFFORD-REVIEW.json');adapters=read(p/'RESIDUAL-ADAPTERS.json')['recipes'] + widths=[len(c['frames'][c['final'][2*c['v']+h]])-len(c['frames'][c['start'][2*c['v']+h]])for h in range(c['R'])] # HPE: residual width |final|-|start| + assert tuple(widths[h]for h in SPOT)==spot_widths();pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + canonical_sha=sha(p/'CANONICAL-WORD.json.gz');programs_sha=sha(p/'LOCAL-PROGRAMS.json.gz') + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==canonical_sha and replay['local_programs_sha256']==programs_sha + assert replay['v']==c['v'] and replay['helpers']==c['R'] + assert set(programs)==set(checks)==set(replay['local'])==set(replay['paid_profiles'])=={'forward','backward'} + for orientation,events in programs.items(): + ck=checks[orientation];rr=replay['local'][orientation] + assert hashlib.sha256(json.dumps(events,sort_keys=True,separators=(',',':')).encode()).hexdigest()==ck['sha256'] + assert ck['events']==len(events) and ck['all_columns']==2*c['v']+c['R'] + assert ck['private_centers_cleared'] and ck['private_coefficient_stream_cleared_after_each_macro'] + assert rr['all_exact_columns']==2*c['v']+c['R'] and rr['private_work_erased'] + literal=Counter(e[-1]for e in events if e[0]in('climb','center')) + assert dict(literal)=={int(r):n for r,n in ck['paid_profile'].items()}=={int(r):n for r,n in c['local_profile'].items()} + assert ck['paid_profile']==replay['paid_profiles'][orientation] + assert phase['canonical_word_sha256']==canonical_sha and phase['recipe_sha256']==sha(p/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] + artifact_semantic_hashes[pid]=artifact_identities(p) + pin('providers.%s.artifact_semantic_sha256'%pid,artifact_semantic_hashes[pid]) + phase_semantic_hashes[pid]=artifact_semantic_hashes[pid]['CLIFFORD-REVIEW.json'] + for h,w in enumerate(widths): + assert 0>i)&1==0);a=q^(1<>i&1 else 0)for i in order]+[1<2*max(paid)**2 + return dict(profile=dict(sorted(paid.items())),mass=mass,hosted=HOSTED,entering=entering,cross_replica=cross,sigma_digest=digest.hexdigest(),sigmas=sigmas,idle_remainders=len(wanted),busy_family_checks=len(roles),invocations=72) + +r=audit(ct);raw=gzip.decompress((OUT/'GLOBAL-TEMPLATE.json.gz').read_bytes());assert hashlib.sha256(raw).hexdigest()==summary['template_sha256'];assert r['profile']=={int(k):v for k,v in summary['global_profile'].items()};assert r['sigmas']==read(OUT/'ACTUAL-SIGMAS.json.gz');assert r['sigma_digest']==summary['sigma_stream_sha256'] +assert all(hashlib.sha256((BASE/name).read_bytes()).hexdigest()==value for name,value in summary['source_artifacts'].items()) +controls=[] +def reject(name,mut): + if '--mutation-controls' not in sys.argv[4:]:return + q=copy.deepcopy(ct);mut(q) + try:audit(q) + except(AssertionError,KeyError,IndexError,ValueError,TypeError):controls.append(name) + else:raise AssertionError('ACCEPTED '+name) +enter=lambda q:next(o for c in q['calls']for o in c['owners'][(2*V):]if o[1][0]==4) +reject('alias two whole owners',lambda q:q['calls'][0]['owners'].__setitem__((2*V+1),q['calls'][0]['owners'][(2*V)])) +reject('helper on active data family',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,q['calls'][0]['owners'][0][0])) +reject('owner in private namespace',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,DATA)) +reject('wrong residual width',lambda q:enter(q)[1].__setitem__(3,enter(q)[1][3]-1)) +reject('wrong spectator coordinate',lambda q:enter(q)[1][4].__setitem__(0,72)) +reject('omit idle remainder',lambda q:q['idle_children'].pop()) +reject('understate physical reserve',lambda q:q.__setitem__('physical',PHYSICAL-1)) +# Single-provider dispatch still has all source/program/width binding controls. +if len(provider_ids)==1: + P=provider_ids[0] + at_p=lambda q:next(c for c in q['calls']if c['provider_id']==P) + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q:at_p(q).__setitem__('provider_id','__unregistered__')) + reject(P+': stale per-call local program hash',lambda q:at_p(q).__setitem__('local_program_sha256','0'*64)) + reject(P+': stale serialized provider program',lambda q:q['local_providers'][P]['local_programs']['forward'].pop()) + reject(P+': unbound residual adapter hash',lambda q:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + reject(P+': wrong provider width registry',lambda q:q['local_providers'][P]['widths'].__setitem__(narrow,providers[P]['widths'][narrow]-1)) + reject(P+': wrong per-call residual width',lambda q:at_p(q)['owners'][2*V+narrow][1].__setitem__(3,at_p(q)['owners'][2*V+narrow][1][3]-1)) + reject(P+': wrong sweep provider',lambda q:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep').__setitem__('provider_id','__unregistered__')) + reject(P+': entering helper width silently restored to nine',lambda q:q['local_providers'][P]['widths'].__setitem__(narrow,9)) +else: + # Per-provider substitution controls: every provider is swapped against a partner provider. + for P in provider_ids: + Qp=partner(P) + at_p=lambda q,P=P:next(c for c in q['calls']if c['provider_id']==P) + diff=[h for h in range(R)if providers[P]['widths'][h]!=providers[Qp]['widths'][h]] + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q,P=P,Qp=Qp,at_p=at_p:at_p(q).__setitem__('provider_id',Qp)) + reject(P+': stale per-call local program hash',lambda q,Qp=Qp,at_p=at_p:at_p(q).__setitem__('local_program_sha256',registry[Qp]['local_program_checks'][at_p(q)['orientation']]['sha256'])) + reject(P+': stale serialized provider program',lambda q,P=P,Qp=Qp:q['local_providers'][P].__setitem__('local_programs',registry[Qp]['local_programs'])) + reject(P+': unbound residual adapter hash',lambda q,P=P:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + if diff:reject(P+': partner width in provider width registry',lambda q,P=P,Qp=Qp,h=diff[0]:q['local_providers'][P]['widths'].__setitem__(h,providers[Qp]['widths'][h])) + reject(P+': wrong per-call residual width',lambda q,at_p=at_p,h=narrow:at_p(q)['owners'][2*V+h][1].__setitem__(3,at_p(q)['owners'][2*V+h][1][3]-1)) + reject(P+': wrong sweep provider',lambda q,P=P,Qp=Qp:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep'and DISPATCH[e['stage'],e['replica']]==P).__setitem__('provider_id',Qp)) + reject(P+': entering helper width silently restored to nine',lambda q,P=P,h=narrow:q['local_providers'][P]['widths'].__setitem__(h,9)) + +report=dict(status='PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS',template_sha256=summary['template_sha256'],complex_template_sha256=summary['template_sha256'],complex_live=DATA,complex_profile=r['profile'],complex_hosted_residuals=HOSTED,physical=PHYSICAL,rank_mass=r['mass'],deficit=2560,entering_helper_roles=r['entering'],cross_replica_helper_roles=r['cross_replica'],one_owner_per_complete_invocation=True,helper_busy_family_window_checks=r['busy_family_checks'],complete_invocations=r['invocations'],actual_orthogonal_73column_maps=len(r['sigmas']),actual_sigma_stream_sha256=r['sigma_digest'],all_actual_residual_and_spectator_charts=True,idle_remainders=r['idle_remainders'],mutations_rejected=controls,mutation_controls_run='--mutation-controls' in sys.argv[4:],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,widths_by_provider={pid:dict(sorted(Counter(providers[pid]['widths']).items()))for pid in provider_ids},provider_counts=dict(Counter(c['provider_id']for c in ct['calls'])),all_provider_program_phase_and_wrapper_bindings=True,scope='Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations.') +REPORT.parent.mkdir(parents=True,exist_ok=True) +REPORT.write_text(json.dumps(report,indent=2)+'\n');print(json.dumps(report,indent=2)) + +owners=dict(status='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE',template_sha256=summary['template_sha256'],paid_profile=r['profile'],live=DATA,physical=PHYSICAL,rank_mass=r['mass'],deficit=2560,hosted_residuals=HOSTED,banked_residuals=0,all_live_owners_per_call_distinct=True,owners_per_call=N,actual_helper_owner_charts=HOSTED,actual_73column_sigmas=len(r['sigmas']),cross_replica_helper_roles=r['cross_replica'],explicit_idle_remainder_children=r['idle_remainders'],source_idle_children_charged=sum(x['replicas']for x in parent['idle_children']),source_artifacts=summary['source_artifacts'],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,controller_audit_sha256=hashlib.sha256(REPORT.read_bytes()).hexdigest()) +(REPORT.parent/'OWNERS-AND-PROFILE.json').write_text(json.dumps(owners,indent=2)+'\n') + +# Literal residual frames are a compact export of the already checked offsets, +# not another global replay. Every row names its actual inherited axes. +frames=[] +for z in ct['idle_children']: + axes=list(map(int,ph['recipes'][z['port']]['idle_children'][z['child']]['orthogonal_axes'])) + tail=axes[z['pending_offset']:] + assert len(tail)==z['rank'] + frames.append(dict(z,orthogonal_axes=tail)) +frame_raw=json.dumps(frames,sort_keys=True,separators=(',',':')).encode() +portable=bytearray(gzip.compress(frame_raw,mtime=0));portable[9]=255 +(OUT/'IDLE-REMAINDER-FRAMES.json.gz').write_bytes(bytes(portable)) +frame_receipt=dict(status='PASS_LITERAL_IDLE_REMAINDER_FRAMES',template_sha256=summary['template_sha256'], + uncompressed_frames_sha256=hashlib.sha256(frame_raw).hexdigest(),children=len(frames), + rank_profile=dict(sorted(Counter(z['rank']for z in frames).items())), + source_data_phase_sha256=hashlib.sha256((BASE/'work/complex-nine-native/DATA-PHASES.json').read_bytes()).hexdigest(), + scope='Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child.') +(REPORT.parent/'IDLE-REMAINDER-FRAMES.json').write_text(json.dumps(frame_receipt,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/bind_providers_portable.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/bind_providers_portable.py new file mode 100644 index 0000000000..97e28da17e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/bind_providers_portable.py @@ -0,0 +1,67 @@ +"""Bind freshly verified plain and width-seven four-cold providers to the frozen literal owner plan. +Prepared with OpenAI Codex assistance; Apache-2.0. All byte-stable native +files are pinned to the plan. Only validated phase-receipt timing/serialization +and directory fields are rebound; no dispatch, width or owner choice changes. +""" +import argparse,copy,gzip,hashlib,json,shutil +from collections import Counter +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +assert __debug__, 'Assertions required' +ap=argparse.ArgumentParser(description=__doc__) +for name in ('baseline','plan','out'):ap.add_argument('--'+name,type=Path,required=True) +ap.add_argument('--provider',action='append',required=True,help='PID=DIR');a=ap.parse_args();assert not a.out.exists();a.out.mkdir(parents=True) +def read(p):return json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +base=a.out/'base';shutil.copytree(a.baseline/'complex-global/base',base) +ap2=dict(x.split('=',1)for x in a.provider);dirs={k:Path(v)for k,v in ap2.items()};assert set(dirs)==set(PIDS) +for pid,src in dirs.items():shutil.copytree(src,base/'providers'/pid) +pin('data.plan_sha256',sha(a.plan)) +plan=read(a.plan);original=copy.deepcopy(plan);sources={};helpers=set() # R: helper count per provider word; all providers must agree +assert set(plan['provider_registry'])==set(dirs) +assert {(c['stage'],c['replica']):c['provider']for c in plan['provider_calls']}==DISPATCH,'PLAN dispatch differs from spec dispatch' +stable=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json') +for pid,desc in plan['provider_registry'].items(): + d=base/'providers'/pid + word,program,checks,native,phase=[read(d/name)for name in('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-REVIEW.json')] + assert (word['v'],word['h'],len(word['centers']))==(112,9,8) and type(word['R']) is int and word['R']>0;helpers.add(word['R']) + assert word['ports']==desc['ports'] and word['centers']==desc['centers'] + widths=[len(word['frames'][word['final'][r]])-len(word['frames'][word['start'][r]])for r in range(2*112,2*112+word['R'])] # HPE: residual width |final|-|start| + assert tuple(widths[h]for h in SPOT)==spot_widths() + assert widths==desc['widths'];pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + assert native['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + pin('providers.%s.native_negative_controls'%pid,len(native['negative_controls_rejected'])) + assert native['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and native['local_programs_sha256']==sha(d/'LOCAL-PROGRAMS.json.gz') + assert phase['status']=='PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES' + assert phase['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and phase['recipe_sha256']==sha(d/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] is True and phase['endpoint_adapters']==224 + pin('providers.%s.phase_edges'%pid,phase['directed_edges']) + assert set(program)==set(checks)=={'forward','backward'} + expected={int(r):n for r,n in checks['forward']['paid_profile'].items()};pin('providers.%s.expected_profile'%pid,checks['forward']['paid_profile']) + for orientation,events in program.items(): + profile=Counter() + for e in events: + if e[0]=='climb':profile[e[5]]+=1 + elif e[0]=='center':profile[e[4]]+=1 + assert dict(profile)==expected=={int(r):n for r,n in checks[orientation]['paid_profile'].items()}=={int(r):n for r,n in native['paid_profiles'][orientation].items()} + assert hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest()==checks[orientation]['sha256'] + identities=artifact_identities(d) + pin('providers.%s.artifact_semantic_sha256'%pid,identities) + assert identities==desc['artifact_semantic_sha256'] + for name in ('LOCAL-CHECKS.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json'): + assert sha(d/name)==desc['artifact_sha256'][name],(pid,name,'changed non-reference artifact') + for c in plan['provider_calls']: + if c['provider']==pid: + assert c['orientation']==('forward'if c['stage']%2==0 else'backward') + assert c['local_program_sha256']==checks[c['orientation']]['sha256'] + desc['directory']='providers/'+pid + desc['artifact_sha256']={name:sha(d/name)for name in desc['artifact_sha256']} + sources[pid]=dict(artifact_sha256=desc['artifact_sha256'],canonical_content_sha256=hashlib.sha256(json.dumps(word,sort_keys=True,separators=(',',':')).encode()).hexdigest(),all_phase_edges=phase['directed_edges']) +assert len(helpers)==1,'providers disagree on helper count R: %s'%sorted(helpers) +plan['runtime_source_plan_sha256']=sha(a.plan) +(a.out/'PLAN.json').write_text(json.dumps(plan,indent=2)+'\n') +receipt=dict(status='PASS_FROZEN_048_ALLCOLD_DISPATCH_FRESH_PROVIDER_BINDING',source_plan_sha256=sha(a.plan),runtime_plan_sha256=sha(a.out/'PLAN.json'),providers=sources,only_rebound_fields=['provider_registry.directory','provider_registry.artifact_sha256','runtime_source_plan_sha256']) +(a.out/'BINDING.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(receipt['status']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/bit_supplier_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/bit_supplier_controls.py new file mode 100644 index 0000000000..e86b8527b4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/bit_supplier_controls.py @@ -0,0 +1,111 @@ +"""Negative controls for the cited PR589 bit supplier and its derived rank-mass deficit. + +Apache-2.0. Each control mutates one input of the changed bit-supplier sites in assemble.py (the pinned record, the +deficit derivation from the word's parameters, the profile/live binding, the claimed endpoint) and runs the unchanged +assemble() on the fresh owner/invoice receipts. Every control must be rejected; the unmutated run must pass. +`revert_hardcoded_9984` restores the PR543 constant the parent package hard-coded: with PR589's word it must fail. +""" +import argparse +import copy +import hashlib +import json +import os +import tempfile +from fractions import Fraction as Q +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) + +assert __debug__, 'Assertions required' +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + import assemble as A + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + args = (owner, invoice, sha(owner_path), sha(invoice_path)) + baseline = A.assemble(*args) + data = A.BIT_PATH.read_bytes() + record = A.load_bit(data) + word = record['word'] + assert A.bit_deficit(word, record['nine']['bit']['live']) == 10272 == 32 * (8 * 111 - 9 * 63) + + real_load, real_deficit = A.load_bit, A.bit_deficit + + def with_record(mutate): + def load(d): + r = copy.deepcopy(real_load(d)); mutate(r); return r + return load + + def shift_profile(r): # one rank-1 child becomes rank 2: rank mass +1, totals unchanged + p = r['nine']['profile']; p['1'] -= 1; p['2'] += 1; r['nine']['bit']['rank_mass'] += 1 + + bumped = data.replace(record['nine']['bit_lower'].encode(), + str(Q(record['nine']['bit_lower']) + Q(1, 10**24)).encode(), 1) + assert bumped != data + pr543 = (source_package / 'inputs/PR543-EXPECTED.json').read_bytes() + controls = [ + # deficit site: the parent's hard-coded constant, restored + ('revert_hardcoded_9984', dict(bit_deficit=lambda w, live: 9984)), + # deficit site: each word parameter perturbed alone + ('ports_112', dict(load_bit=with_record(lambda r: r['word'].__setitem__('v', 112)))), + ('decoder_constant_64_copy_ranks_unchanged', dict(load_bit=with_record(lambda r: r['word'].__setitem__('decoder_constant', 64)))), + # v=111, cst=64 derives 32*(888-576)=9984: consistent word, wrong for the priced profile + ('decoder_constant_64_with_one_copy_rank_8', dict(load_bit=with_record(lambda r: (r['word'].__setitem__('decoder_constant', 64), r['word']['copy_ranks'].__setitem__(0, 8))))), + ('eight_retained_totals', dict(load_bit=with_record(lambda r: (r['word'].__setitem__('copy_ranks', [7] * 8), r['word'].__setitem__('decoder_constant', 56))))), + ('live_minus_one', dict(load_bit=with_record(lambda r: r['nine']['bit'].__setitem__('live', r['nine']['bit']['live'] - 1)))), + # profile binding: same totals, rank mass +1 + ('profile_rank_mass_plus_one', dict(load_bit=with_record(shift_profile))), + ('profile_rank_mass_receipt_mismatch', dict(load_bit=with_record(lambda r: r['nine']['bit'].__setitem__('rank_mass', r['nine']['bit']['rank_mass'] + 1)))), + # endpoint: the next 1e-24 grid point + ('bit_lower_next_grid', dict(load_bit=with_record(lambda r: r['nine'].__setitem__('bit_lower', str(Q(r['nine']['bit_lower']) + Q(1, 10**24)))))), + ('not_nine_stage_record', dict(load_bit=with_record(lambda r: r['nine'].__setitem__('pipeline', r['nine']['pipeline'].replace('nine-stage', 'eleven-stage'))))), + # pinned-input site: tampered bytes and the parent's PR543 file under the PR589 pin + ('tampered_bytes_next_grid', dict(read=bumped)), + ('pr543_file_under_pr589_pin', dict(read=pr543)), + ] + rejected = [] + scratch = Path(tempfile.mkdtemp(prefix='bitctl-')) + for name, patch in controls: + saved_path = A.BIT_PATH + try: + if 'read' in patch: + tmp = scratch / (name + '.json'); tmp.write_bytes(patch['read']); A.BIT_PATH = tmp + A.load_bit = patch.get('load_bit', real_load) + A.bit_deficit = patch.get('bit_deficit', real_deficit) + try: + A.assemble(*args) + except (AssertionError, KeyError): + rejected.append(name) + else: + raise AssertionError('Invalid bit supplier accepted: ' + name) + finally: + A.load_bit, A.bit_deficit, A.BIT_PATH = real_load, real_deficit, saved_path + if 'read' in patch: + tmp.unlink() + scratch.rmdir() + assert rejected == [n for n, _ in controls] + again = A.assemble(*args) + assert again['kappa'] == baseline['kappa'] and again['bit_lower'] == baseline['bit_lower'] + return dict( + status='PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS', + kappa=baseline['kappa_decimal'], bit_lower=baseline['bit_lower'], bit_decimal=baseline['bit_decimal'], + binding=baseline['binding'], bit_supplier=baseline['bit_supplier'], + derived_deficit=baseline['bit_supplier']['derived_deficit'], + rejected_controls=rejected, + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n', newline='\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/emit_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/emit_allcold.py new file mode 100644 index 0000000000..8e147f80a6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/emit_allcold.py @@ -0,0 +1,150 @@ +"""Two-provider width-seven whole-owner derivative, adapted with OpenAI Codex assistance. +Based on PR514 and its credited PR484/507 lineage. +CLI: --base VERIFIED_VARIANT --owners ASYNC-OWNERS.json.gz --plan ASYNC-PLAN.json --out OUT +No optimizer or unpublished word builder runs. The frozen map explicitly names +one whole helper per family per complete invocation, plus borrowed spectators. +""" +import sys,json,gzip,hashlib,copy,argparse +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +parser=argparse.ArgumentParser(description=__doc__) +parser.add_argument('--base',type=Path,required=True);parser.add_argument('--owners',type=Path,required=True);parser.add_argument('--plan',type=Path,required=True);parser.add_argument('--out',type=Path,required=True) +a=parser.parse_args();BASE,MAP,PLAN,OUT=(p.resolve()for p in(a.base,a.owners,a.plan,a.out));assert not OUT.exists();OUT.mkdir(parents=True) +class OH: + @staticmethod + def idle_basis(q): + z=next(i for i in range(9)if not(q>>i)&1);u=q^(1<>i&1 else 0)for i in order]+[1<0 and all(x['R']==R for x in registry.values()),'providers disagree on helper count R' + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz')and replay['local_programs_sha256']==sha(directory/'LOCAL-PROGRAMS.json.gz') + widths=[len(pc['frames'][pc['final'][2*V+h]])-len(pc['frames'][pc['start'][2*V+h]])for h in range(R)] # HPE: residual width |final|-|start| + assert widths==plan['provider_registry'][provider_id]['widths'] + for name in provider_files: + value=sha(directory/name);assert value==plan['provider_registry'][provider_id]['artifact_sha256'][name] + source_artifacts[f'providers/{provider_id}/{name}']=value + registry[provider_id]=dict(local_programs=programs,canonical_word_sha256=sha(directory/'CANONICAL-WORD.json.gz'),local_programs_sha256=sha(directory/'LOCAL-PROGRAMS.json.gz'),local_program_checks=checks,exact_local_clifford_recipe_sha256=sha(directory/'CLIFFORD-RECIPES.json'),residual_adapter_sha256=sha(directory/'RESIDUAL-ADAPTERS.json'),v=V,h=9,R=R,ports=pc['ports'],centers=pc['centers'],widths=widths) +assert len(roles)==72*R # one whole-owner role per (call, provider helper) +selected={(c['stage'],c['replica']):c for c in plan['provider_calls']} +assert len(selected)==72 and set(selected)==set(call_order) +assert Counter(c['provider']for c in selected.values())==COUNTS +per_call_widths={(c['stage'],c['replica']):c['widths']for c in plan['per_call_widths']} +for key,c in selected.items(): + assert c['time']==at[key] and c['provider']in registry + assert per_call_widths[key]==registry[c['provider']]['widths'] +for key in('local_programs','exact_local_clifford_recipe_sha256','residual_adapter_sha256'):t.pop(key) +t['local_providers']=registry +rank={z['child']:z['rank']for z in parent['idle_children']};side={};pairs={} +for e in parent['execution_schedule']: + if e['kind']=='idle_cover_sweep': + for sd,ch in enumerate(e['child_indices']):side[ch]=sd;pairs[ch]=e['pair'] +bycall=defaultdict(dict);used=defaultdict(set);sigmas={};digest=hashlib.sha256();entering=0 +for z in roles: + s,rep,h=z['stage'],z['replica'],z['helper'];i,cp,off,w,f=z['child'],z['copy'],z['offset'],z['width'],z['family'];orp,port=divmod(cp,V) + assert 0<=s<9 and 0<=rep=0 and off+w<=rank[i] + assert z['time']==at[s,rep] and z['time'] in plan['windows'][f'{orp},{i}'][1] + B=OH.idle_basis(canon['ports'][port]);pending=list(map(int,ph['recipes'][port]['idle_children'][i]['orthogonal_axes']));assert len(pending)==rank[i] + occ=[B.index(v)for v in pending[off:off+w]];sp=OH.spectators(canon['ports'][port],pending,off,w)if w<9 else[] + order=occ+sp+[j for j in range(M)if j not in occ and j not in sp];assert len(order)==len(set(order))==M + sigma=[B[j]for j in order];sigmahash=hashlib.sha256(json.dumps(sigma,separators=(',',':')).encode()).hexdigest();sigmas[sigmahash]=sigma + route=[4,i,off,w,sp]if w<9 else[3,i,off];bycall[s,rep][h]=[f,route];entering+=w<9 + cells=set(range(off,off+w));assert not used[i,orp,port]&cells;used[i,orp,port]|=cells + digest.update(json.dumps([s,rep,h,f,sigmahash],separators=(',',':')).encode()+b'\n') +for c in t['calls']: + k=(c['stage'],c['replica']);assert set(bycall[k])==set(range(R)) + c['owners']=c['owners'][:(2*V)]+[bycall[k][h]for h in range(R)];assert len({f for f,r in c['owners']})==2*V+R and all(f2*max(paid)**2 + +assert all(c['local_program_sha256']==registry[c['provider_id']]['local_program_checks'][c['orientation']]['sha256']for c in t['calls']) +t['provider_dispatch']='For each indivisible local_cover_sweep, execute local_providers[call.provider_id].local_programs[call.orientation] with that provider residual adapters and Clifford recipes. The sweep provider_id must equal its call provider_id.' +raw=json.dumps(t,sort_keys=True,separators=(',',':')).encode();(OUT/'GLOBAL-TEMPLATE.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +res=dict(status='EMITTED_MIXED_PROVIDER_ASYNCHRONOUS_WHOLE_OWNER_COMPLEX_TEMPLATE', + template_sha256=hashlib.sha256(raw).hexdigest(), + parent_template_sha256=hashlib.sha256(gzip.decompress((BASE/'split-centres/GLOBAL-TEMPLATE.json.gz').read_bytes())).hexdigest(), + live=DATA,physical=physical,global_profile=dict(sorted(paid.items())), + rank_mass=sum(r*n for r,n in paid.items()),deficit=2560,maxchild=max(paid), + hosted_residuals=len(roles),banks_per_stage=[0]*9,entering_helper_roles=entering, + unique_actual_73column_sigmas=len(sigmas),sigma_stream_sha256=digest.hexdigest(), + cross_replica_helper_roles=sum(z['replica']!=z['owner_replica']for z in roles), + asynchronous_order_sha256=hashlib.sha256(json.dumps(call_order,separators=(',',':')).encode()).hexdigest(), + source_artifacts=source_artifacts,provider_counts=dict(Counter(c['provider_id']for c in t['calls'])), + scope='Two actual verified plain/width-seven providers dispatched per complete invocation; independent controller/spectator/normalization and complete finite invoice admission required.') +(OUT/'HOSTED.json').write_text(json.dumps(res,indent=2)+'\n');(OUT/'ACTUAL-SIGMAS.json.gz').write_bytes(gzip.compress(json.dumps(sigmas,separators=(',',':')).encode(),mtime=0));print(json.dumps(res,indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/freeze_spec.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/freeze_spec.py new file mode 100644 index 0000000000..dd0358d396 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/freeze_spec.py @@ -0,0 +1,29 @@ +"""Freeze independently recomputed discovery values before strict replay.""" +import argparse +import json +from pathlib import Path + +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--spec', type=Path, required=True) +ap.add_argument('--discovery', type=Path, required=True) +a = ap.parse_args() +spec = json.loads(a.spec.read_text()) +for line in (a.discovery/'WITNESS-RECORD.jsonl').read_text().splitlines(): + key, value = json.loads(line) + parts = key.split('.') + if len(parts)>3 and parts[0]=='providers' and parts[2]=='artifacts': + parts = parts[:3] + ['.'.join(parts[3:])] + target = spec + for part in parts[:-1]: + target = target.setdefault(part, {}) + if parts[-1] in target: + assert target[parts[-1]]==value, 'Conflicting independent recomputations: '+key + target[parts[-1]] = value +assembly = json.loads((a.discovery/'ASSEMBLY.json').read_text()) +for key in ('complex_lower','conservative_complex_lower','kappa','kappa_decimal','conservative_kappa_decimal'): + spec['expected'][key] = assembly[key] +spec['expected']['assembly_controls_rejected'] = 69 +spec['expected']['provider_counts'] = {'gauge44':72} +spec['expected']['mutations_rejected'] = 15 +a.spec.write_text(json.dumps(spec, indent=2)+'\n') +print('Frozen exact witness for strict replay:', assembly['kappa_decimal']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/generated_identity.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/generated_identity.py new file mode 100644 index 0000000000..74a9b60479 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/generated_identity.py @@ -0,0 +1,62 @@ +"""Proof-relevant identities for generated artifacts, independent of gzip streams. + +Immutable source archives retain their exact byte hashes. For freshly emitted +artifacts, gzip identity is the exact decompressed payload and JSON identity +retains every field. Only CLIFFORD-REVIEW's root timing field is excluded. +Literal receipt references are checked against actual files before replacing +the three gzip references (and the phase recipe reference) with content hashes. +Prepared with OpenAI Codex assistance; Apache-2.0. +""" +from pathlib import Path +import copy +import gzip +import hashlib +import json +import math + +if not __debug__: + raise RuntimeError('Assertions must remain enabled') + +FILES=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json') + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + +def json_identity(value): + return hashlib.sha256(json.dumps(value,sort_keys=True,separators=(',',':'),allow_nan=False).encode('utf-8')).hexdigest() + +def payload_identity(path): + return hashlib.sha256(gzip.decompress(Path(path).read_bytes())).hexdigest() + +def phase_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'CLIFFORD-REVIEW.json').read_bytes())if value is None else value) + assert value['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz'),'stale phase canonical word reference' + assert value['recipe_sha256']==sha(directory/'CLIFFORD-RECIPES.json'),'stale phase recipe reference' + seconds=value.pop('seconds') + assert type(seconds)in(int,float) and math.isfinite(seconds) and seconds>=0,'invalid phase timing metadata' + value['canonical_word_sha256']=payload_identity(directory/'CANONICAL-WORD.json.gz') + value['recipe_sha256']=json_identity(json.loads((directory/'CLIFFORD-RECIPES.json').read_bytes())) + return value + +def native_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'INDEPENDENT-LOCAL-REPLAY.json').read_bytes())if value is None else value) + for field,name in [('canonical_word_sha256','CANONICAL-WORD.json.gz'),('local_programs_sha256','LOCAL-PROGRAMS.json.gz')]: + assert value[field]==sha(directory/name),'stale native artifact reference: '+field + value[field]=payload_identity(directory/name) + return value + +def artifact_identities(directory): + directory=Path(directory) + result={} + for name in FILES: + path=directory/name + if name.endswith('.gz'): + result[name]=payload_identity(path) + else: + value=phase_value(directory)if name=='CLIFFORD-REVIEW.json'else native_value(directory)if name=='INDEPENDENT-LOCAL-REPLAY.json'else json.loads(path.read_bytes()) + result[name]=json_identity(value) + return result diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/invoice_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/invoice_allcold.py new file mode 100644 index 0000000000..b244cd5994 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/code/invoice_allcold.py @@ -0,0 +1,329 @@ +"""Fresh call-specific mixed-provider finite invoice. + +Prepared with OpenAI Codex assistance, Apache-2.0. The scalar/Horner recount +and finite inequalities are adapted from the retained PR558 -> PR552 -> +PR531 invoice_final.py, whose notices and sources are preserved in the package. +Every call selects a hash-bound provider. Shared compiler reserves use maxima; +primitive work, coefficient work, local children and wrappers are also summed +from actual selected provider/orientation records. +""" +import argparse, gzip, hashlib, json +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path +assert __debug__, 'Assertions required' + +def read(path): + data=path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix=='.gz' else data) +def filehash(path): return hashlib.sha256(path.read_bytes()).hexdigest() +def contenthash(path): + data=path.read_bytes() + return hashlib.sha256(gzip.decompress(data) if path.suffix=='.gz' else data).hexdigest() +def programhash(events): + return hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest() + +def recount_provider(local_dir, registry): + cp=local_dir/'CANONICAL-WORD.json.gz'; pp=local_dir/'LOCAL-PROGRAMS.json.gz' + rp=local_dir/'INDEPENDENT-LOCAL-REPLAY.json' + w,programs,replay=read(cp),read(pp),read(rp) + checks=read(local_dir/'LOCAL-CHECKS.json') + assert set(programs)=={'forward','backward'} + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==filehash(cp)==registry['canonical_word_sha256'] + assert replay['local_programs_sha256']==filehash(pp)==registry['local_programs_sha256'] + assert programs==registry['local_programs'] + assert checks==registry['local_program_checks'] + assert filehash(local_dir/'CLIFFORD-RECIPES.json')==registry['exact_local_clifford_recipe_sha256'] + assert filehash(local_dir/'RESIDUAL-ADAPTERS.json')==registry['residual_adapter_sha256'] + v,helpers,h,m=w['v'],w['R'],w['h'],73 + assert (v,h)==(112,9) and type(helpers) is int and helpers>0 + assert registry['v']==v and registry['R']==helpers and registry['h']==h + assert registry['ports']==w['ports'] and registry['centers']==w['centers'] + assert replay['v']==v and replay['helpers']==helpers + n=2*v+helpers + widths = [len(w['frames'][w['final'][r]])-len(w['frames'][w['start'][r]]) for r in range(2*v, 2*v+helpers)] # HPE: |final|-|start| + terminal_codim = sum(h-len(w['frames'][w['final'][r]]) for r in range(2*v, 2*v+helpers)) # HPE: 0 for FULL-ended helpers + ends = {r: f for r, f in enumerate(w['final']) if r >= 2*v and f != 1} + assert len(widths) == helpers + entrances = {r: f for r, f in enumerate(w['start']) if r >= 2*v and f != 0} + entering = len(entrances) + wrapped = {**entrances, **{r: 0 for r in ends if r not in entrances}} # COLD-HPE: cold hyperplane-ended helpers carry wrappers too + cold_ends = len(wrapped) - len(entrances) + assert entering == replay['entering_helpers'] + local = {} + for orientation, events in programs.items(): + # Endpoint equality and native frames were already independently + # replayed on all n columns in the hash-bound receipt above. + env = {('L', r): Q(1) for r in range(n)} + peak = Q(1) + real = macros = workops = 0 + paid = Counter() + wrappers = {'pre': set(), 'post': set()} + for event in events: + tag = event[0] + if tag == 'climb': + paid[event[5]] += 1 + elif tag == 'center': + paid[event[4]] += 1 + elif tag == 'residual_adapter': + _, kind, register, frame, *end = event + assert kind in wrappers and wrapped.get(register) == frame + assert end == ([ends[register]] if register in ends else []) # HPE: R_{E,U}^-1 and L_{E,U}^-1 name U + assert register not in wrappers[kind] + wrappers[kind].add(register) + elif tag == 'scalar': + macros += 1 + scalar = event[1] + op, target = scalar[0], tuple(scalar[1]) + if op == 'clear': + env[target] = Q(0) + count = 1 + elif op == 'copy': + env[target] = env[tuple(scalar[2])] + count = 1 + elif op == 'scale': + q = Q(scalar[2], scalar[3]) + numerator, denominator = abs(q.numerator), q.denominator + assert numerator and numerator & (numerator-1) == 0 + assert denominator & (denominator-1) == 0 + env[target] *= abs(q) + count = abs(numerator.bit_length()-denominator.bit_length()) + int(q < 0) + elif op == 'add': + source = tuple(scalar[2]) + q = Q(scalar[3], scalar[4]) + numerator, denominator = abs(q.numerator), q.denominator + assert source != target and numerator > 0 + assert denominator & (denominator-1) == 0 + acc, count = 0, 1 # clear coefficient work + for i, bit in enumerate(bin(numerator)[2:]): + if i: + acc *= 2 + count += 1 + peak = max(peak, acc*env[source]) + if bit == '1': + acc += 1 + count += 1 + peak = max(peak, acc*env[source]) + value = Q(acc) + for _ in range(denominator.bit_length()-1): + value /= 2 + count += 1 + peak = max(peak, value*env[source]) + assert value == abs(q) + count += 2 # signed accumulation and work clear + env[target] = env.get(target, Q(0)) + abs(q)*env[source] + workops += count + else: + raise AssertionError(op) + real += 2*count + peak = max(peak, env[target]) + else: + assert tag in ('adapter', 'phase') + assert wrappers['pre'] == wrappers['post'] == set(wrapped) + assert all(value == 0 for register, value in env.items() if register[0] == 'C') + prior = replay['local'][orientation] + assert prior['all_exact_columns'] == n and prior['private_work_erased'] + assert peak == Q(prior['prefix_l1_upper']) and peak < 2**prior['charged_payload_bits'] + bits = peak.numerator.bit_length()-peak.denominator.bit_length()+1 + assert bits == prior['prefix_bits_upper'] + assert real == checks[orientation]['real_component_primitive_bound'] + assert macros == checks[orientation]['scalar_macros'] + assert dict(paid) == {int(r): count for r, count in checks[orientation]['paid_profile'].items()} + assert dict(paid) == {int(r): count for r, count in replay['paid_profiles'][orientation].items()} + local[orientation] = dict( + events=len(events), macros=macros, real_component_primitives=real, + prefix_l1=str(peak), prefix_bits=bits, + coefficient_work_primitive_count=workops, all_exact_columns=n, + dirty_helper_columns=helpers, all_dirty_helper_columns_restored=True, + private_centres_and_coefficient_work_cleared=True, + pre_wrappers=len(wrappers['pre']), post_wrappers=len(wrappers['post']), + endpoint_evidence='Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json') + + centres = len(w['centers']) + children = sum(checks['forward']['paid_profile'].values()) + assert checks['forward']['paid_profile'] == checks['backward']['paid_profile'] + macro_bound = max(row['macros'] for row in local.values()) + compiler = 64*(m+1)**3 + adapters = 16*(macro_bound+children+n+centres)+64*m + primitive_bound = max(row['real_component_primitives'] for row in local.values())+adapters*compiler + + assert widths==registry['widths'] + artifacts={f.name:filehash(f) for f in local_dir.iterdir() if f.is_file()} + phase_review=read(local_dir/'CLIFFORD-REVIEW.json') + return dict(local=local,helpers=helpers,centres=centres,v=v,h=h,n=n, + entering_helpers=entering,entrance_rank=sum(len(w['frames'][f]) for f in w['start'][2*v:]), + terminal_codimension=terminal_codim, hyperplane_ended_helpers=len(ends), # HPE: always reported (0 for FULL-ended words) + **({'cold_hyperplane_ended_helpers': cold_ends} if cold_ends else {}), # COLD-HPE: absent without cold ends + width_inventory=dict(sorted(Counter(widths).items())),widths=widths, + local_adapters=adapters,local_primitive_bound=primitive_bound, + compiler=compiler,children=children,artifacts=artifacts, + paid_profile=checks['forward']['paid_profile'], + program_hashes={o:programhash(events) for o,events in programs.items()},semantic_artifact_sha256=artifact_identities(local_dir)) + + +def run(base, hosted, audit, out, retained_invoice=None): + local_dir=base/'split-centres' + parent=read(local_dir/'GLOBAL-TEMPLATE.json.gz') + template_path=hosted/'GLOBAL-TEMPLATE.json.gz' + template=read(template_path); summary=read(hosted/'HOSTED.json') + owners=read(audit/'OWNERS-AND-PROFILE.json'); control=read(audit/'ASYNC-AUDIT.json') + template_hash=contenthash(template_path) + assert template_hash==control['complex_template_sha256']==owners['template_sha256']==summary['template_sha256'] + assert owners['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert template['recipe']==parent['recipe'] + assert 'local_programs' not in template + assert set(template['local_providers'])==set(PIDS) + providers={pid:recount_provider(base/'providers'/pid,registry) + for pid,registry in template['local_providers'].items()} + for pid,p in providers.items(): + assert owners['provider_phase_semantic_sha256'][pid]==control['provider_phase_semantic_sha256'][pid]==p['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] + # The fresh controller admission must cite precisely these provider bytes. + for name in ('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json'): + path='providers/'+pid+'/'+name + assert summary['source_artifacts'][path]==p['artifacts'][name] + assert owners['source_artifacts'][path]==p['artifacts'][name] + # R is read from the provider words (all must agree); the parent dedicated-bank + # envelope keeps its own helper count R0 from the parent split-centres word. + assert len({p['helpers'] for p in providers.values()})==1,'providers disagree on helper count R' + v,h,m,centres=112,9,73,8 + helpers=next(iter(providers.values()))['helpers']; n=2*v+helpers + assert all((p['v'],p['h'],p['centres'],p['n'])==(v,h,centres,n) for p in providers.values()) + parent_helpers=read(local_dir/'CANONICAL-WORD.json.gz')['R'] + stages,replicas,blocks_per_stream=9,8,4 + call_count=len(template['calls']) + assert call_count==stages*replicas==control['complete_invocations'] + assert control['one_owner_per_complete_invocation'] + assert len({(c['stage'],c['replica']) for c in template['calls']})==call_count + parent_calls={(c['stage'],c['replica']):c for c in parent['calls']} + sweeps=[e for e in template['execution_schedule'] if e['kind']=='local_cover_sweep'] + assert len(sweeps)==call_count + selected=[]; selected_paid=Counter(); provider_counts=Counter(); orientation_counts=Counter() + scalar=coefficient_work=macros=0; wrapper_factors=0 + factors_per_wrapper=2*(m-1) + for c in template['calls']: + pid,orientation=c['provider_id'],c['orientation']; p=providers[pid] + old=parent_calls[(c['stage'],c['replica'])] + assert orientation==old['orientation'] and c['owners'][:2*v]==old['owners'][:2*v] + assert c['local_program_sha256']==p['program_hashes'][orientation] + r=p['local'][orientation] + scalar+=r['real_component_primitives']; coefficient_work+=r['coefficient_work_primitive_count']; macros+=r['macros'] + wrapper_factors+=(r['pre_wrappers']+r['post_wrappers'])*factors_per_wrapper + provider_counts[pid]+=1; orientation_counts[(pid,orientation)]+=1 + selected_paid.update({int(k):v for k,v in p['paid_profile'].items()}) + selected.append(dict(stage=c['stage'],replica=c['replica'],provider_id=pid,orientation=orientation, + program_sha256=c['local_program_sha256'],events=r['events'],macros=r['macros'], + real_component_primitives=r['real_component_primitives'], + coefficient_work_primitive_count=r['coefficient_work_primitive_count'], + entering_helpers=p['entering_helpers'],entrance_rank=p['entrance_rank'], + pre_wrappers=r['pre_wrappers'],post_wrappers=r['post_wrappers'])) + assert provider_counts==COUNTS + # The sweep registry is executable: no hidden use of the historical supplier. + by_call={(c['stage'],c['replica']):c for c in template['calls']} + for e in sweeps: + c=by_call[(e['stage'],e['replica'])] + assert e['provider_id']==c['provider_id'] + assert set(p['compiler'] for p in providers.values())=={64*(m+1)**3} + compiler=64*(m+1)**3 + adapters=max(p['local_adapters'] for p in providers.values()) + primitive_bound=max(p['local_primitive_bound'] for p in providers.values()) + bridge_steps=sum(event['kind']=='bridge' for event in parent['recipe']) + bridge_sweeps=sum(event['kind']=='bridge' for event in template['execution_schedule']) + assert bridge_sweeps==replicas*bridge_steps + bridge_additions=2*v*bridge_sweeps + shifts=blocks_per_stream*v*replicas; moves=2*shifts + parent_live,parent_physical=parent['live'],parent['physical'] + data_stock=2*v*blocks_per_stream*replicas + assert (parent_live-data_stock)%stages==0 + parent_banks=(parent_live-data_stock)//stages + assert parent_banks>=0 and parent_physical==parent_live+parent_helpers+centres+2 + nonlocal_items=(4*v*replicas*stages+2*v*replicas*stages+2*call_count*helpers + +sum(child['replicas'] for child in parent['idle_children'])+stages*parent_banks + +bridge_additions+shifts+moves+parent_live+parent_physical+wrapper_factors) + outside=8*nonlocal_items+64*m + parent_pervertex=(scalar+bridge_additions+shifts+moves+parent_live + +(call_count*adapters+outside)*compiler+64*parent_physical) + live,physical=template['live'],template['physical'] + mass,profile=owners['rank_mass'],owners['paid_profile'] + assert m*live-mass==owners['deficit']==2560 + assert mass==sum(int(r)*count for r,count in profile.items()) + assert physical==live+helpers+centres+2 + assert live==owners['live'] and physical==owners['physical'] + assert live<=parent_live and physical<=parent_physical + assert not template['bank_padding']['families'] + assert owners['explicit_idle_remainder_children']<=owners['source_idle_children_charged'] + # The old dedicated-bank geometry is only a conservative reserve envelope. + # Its singular program is never used as evidence for a mixed invocation. + rebased=parent_pervertex+65*(physical-parent_physical)+(live-parent_live) + used=max(rebased,parent_pervertex); retained=None; payload=512 + if retained_invoice is not None: + previous=read(retained_invoice) + assert previous['compiler']==compiler and previous['charged_prefix_bits']==payload + previous_bound=previous['conservative_pervertex_used'] + used=max(used,previous_bound+parent_pervertex) + retained=dict(sha256=filehash(retained_invoice),previous_pervertex_allowance=previous_bound, + added_complete_new_pervertex=parent_pervertex,policy='Retain old allowance and add entire fresh mixed recount.') + half=m//2; group=2**(half*half) + for i in range(1,half+1): group*=2**(2*i)-1 + stock,streamed_mass=group*physical,group*mass + logical=group*used+64; router=compiler*(logical+1)*(stock+1)**2 + g_bound,e_bound,c0=2**30000,2**100000,2**210000 + total_mass=streamed_mass+e_bound + literal=2*g_bound*stock**2+8*streamed_mass+4*stock+4+32*m + row=2*stock.bit_length()+9909+252+2*payload + maxchild=max(map(int,profile)) + inequalities=dict(local_primitive_bound=primitive_bound<2**48, + logical=logical<2**6050,router=router2*maxchild*maxchild) + assert all(inequalities.values()) + localbits=max(r['prefix_bits'] for p in providers.values() for r in p['local'].values()) + input_l2_bits=(m+1)//2 + required_prefix=localbits+input_l2_bits+call_count+bridge_sweeps+4 + assert required_prefix R helper map +# (verify.py checks the spec value against the constructor's HELPER-MAP.json) +SPOT=tuple(SPEC.get('width_spot_helpers',(270,282,294,306))) +# A pivot swap moves a kernel family's pivot role p -> x; the old pivot p becomes an ordinary cold helper and its width +# goes 8 -> 9 (construction/layers, PR641 PROOF-NOTE-PIVOT). Expected spot widths are derived from the package's pinned +# pivot-swap recipe (path and sha256 in the spec), not from free data: 9 at a swapped-out pivot, 8 otherwise. +_PKG=Path(os.environ['WITNESS_SPEC']).resolve().parents[1] +def _old_pivots(): + ps=SPEC.get('pivot_swap') + if not ps:return frozenset() + raw=(_PKG/ps['recipe']).read_bytes();import hashlib + assert hashlib.sha256(raw).hexdigest()==ps['sha256'],'pivot-swap recipe pin' + return frozenset(s['pivot']for s in json.loads(raw)['swaps']) +OLD_PIVOTS=_old_pivots() +def spot_widths(v=112): + """Expected residual widths at the spot helpers (helper indices) of the gauge44 provider.""" + return tuple(9 if 2*v+h in OLD_PIVOTS else 8 for h in SPOT) +PIDS=tuple(sorted(set(DISPATCH.values()))) +COUNTS=dict(Counter(DISPATCH.values())) +assert DISCOVER or set(PROVIDERS)==set(PIDS),'spec providers differ from dispatch providers' +def lookup(key): + """Dotted spec path; a segment may itself contain dots when it names a file (split at most once per known file suffix).""" + v=SPEC;parts=key.split('.') + while parts: + for n in range(len(parts),0,-1): + k='.'.join(parts[:n]) + if isinstance(v,dict) and k in v:v=v[k];parts=parts[n:];break + else:raise KeyError('spec has no key %s'%key) + return v +def pin(key,got): + """Strict mode: got must equal the spec value at dotted key; the failure names the key.""" + if DISCOVER: + if os.environ.get('WITNESS_RECORD'): # discovery bookkeeping only: append (key, value) for the spec writer + with open(os.environ['WITNESS_RECORD'],'a')as f:f.write(json.dumps([key,got],default=str)+chr(10)) + return got + want=lookup(key) + assert got==want,'SPEC MISMATCH %s: expected %s got %s'%(key,json.dumps(want)[:400],json.dumps(got,default=str)[:400]) + return got +def partner(pid): + """A different provider for substitution controls (next in sorted order).""" + assert len(PIDS)>1 + return PIDS[(PIDS.index(pid)+1)%len(PIDS)] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/COLD44-RECIPE.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/COLD44-RECIPE.json.gz new file mode 100644 index 0000000000..6f59d88920 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/COLD44-RECIPE.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/COMPLETION-PRIORITY.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/COMPLETION-PRIORITY.json new file mode 100644 index 0000000000..e0df30aeef --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/COMPLETION-PRIORITY.json @@ -0,0 +1,746 @@ +{ + "0,1,2,3": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 64, + 67 + ] + }, + "0,1,4,5": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 32, + 35 + ] + }, + "0,1,6,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 24, + 27 + ] + }, + "0,2,4,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 16, + 18, + 19, + 297, + 301, + 303 + ] + }, + "0,2,5,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 40, + 42, + 43, + 313, + 317, + 319 + ] + }, + "0,3,4,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 72, + 74, + 75, + 329, + 333, + 335 + ] + }, + "0,3,5,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 112, + 114, + 115, + 345, + 349, + 351 + ] + }, + "1,2,4,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 8, + 10, + 11, + 361, + 365, + 367 + ] + }, + "1,2,5,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 48, + 50, + 51, + 377, + 381, + 383 + ] + }, + "1,3,4,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 80, + 82, + 83, + 393, + 397, + 399 + ] + }, + "1,3,5,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 104, + 106, + 107, + 409, + 413, + 415 + ] + }, + "2,3,4,5": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 96, + 99 + ] + }, + "2,3,6,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 88, + 91 + ] + }, + "4,5,6,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 56, + 59 + ] + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/INPUTS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/INPUTS.json new file mode 100644 index 0000000000..2b12294b58 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/INPUTS.json @@ -0,0 +1,65 @@ +{ + "schema": "gauge44-compact-construction-v1", + "repository": "https://github.com/CrocSwap/integer-mult-bounds", + "commits": { + "main": "17ce0c79b7b51c2634b439ea5a2b754f09909693", + "pr635": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f" + }, + "files": { + "main": { + "research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PACKET-PROGRAMS.json.gz": "d833ae0390d165d7da0c639a3c7aeb77156c2ddb52447087cb49b9d03b19e9b9", + "research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PROTOTYPE.json": "327d2a868043e846381aa58a33053c24425e8cad522ff401b10ec8af1d649a3f", + "research/complex-k492-owner-repair/vendor/joint_prefix/code/build_joint_prefix.py": "d7804669e528b6fd8d80195a4a2e76efac9bc67440b82c73973f4bc9fe273783", + "research/complex-k492-owner-repair/vendor/joint_prefix/data/JOINT-PREFIX.json": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2", + "research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-COLD.json": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/vendor/clifford/clifford_exact.py": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz": "e070ae2c78b4a1b644b418774af62b40d8d16e6ba89602f0474afb557d507c37", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_common.py": "e68d190fd436b2f3955decb590adb53344d5d4ea0a19d62d86df1e4b55ecd198", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_word.py": "f027a9273bcf4e0971258c160b7d3b3c196366b32a529cff6e6a0e666b03826b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/RAW504.json.gz": "1c6144791dbedf6427e3ee7b4c24fb05b5bf407f6346592f50f8dd8d9638108d", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/FULL-WORD.json.gz": "375bd23001cd805707968005a9342827d5464e3f8e3a754197b31c46fc3f63c2", + "research/structural-gain/frontier-composition/multicold-eight-word/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77" + }, + "pr635": { + "research/complex-571-cold14-st2/code/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-571-cold14-st2/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-571-cold14-st2/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-571-cold14-st2/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-571-cold14-st2/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-571-cold14-st2/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-571-cold14-st2/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-571-cold14-st2/data/TRI-SCHEDULE.json": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e", + "research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json": "9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a", + "research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json": "e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1" + }, + "delta": { + "COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92" + } + }, + "word_content_sha256": { + "shadow-early": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d", + "shadow-prefix": "6c361b33967bb62d878b3acef44a4ac2c70970e99f36a11906b03811495de533", + "raw": "0ac47f92fc2e3f5aa457d78f7b8a5c785bf140c546932b9dfcd9e610ad319180", + "port0": "7086d4309f145f0bf85b97f567e2cbeeaca9fc5011f62c86c805bfadeb0300fc", + "port1": "8f47545698a11072f8c6a0b50ae9c8acf8e4e2b0e35a0e8c672bbca216b04534", + "port2": "4e4919c140e07f6c820bea4aae83565b3b4967ffbfbb907611216ff6e2e6105d", + "port3": "9774dca3e4295e2eb9171a9cf34e1973bc72bad38eddec2cc0fc498bd9e041f3", + "regroup": "989082402d2292a18328e86927c0a12d34fcab18ef4ff724bd1ce691cf4e7531", + "hpe": "42fb8b3aa314593fe976820cf65824f5fce0ee4f95281796992d4809709864cc", + "cold44": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290" + }, + "helper_map_sha256": "688d5115b221be68c96970822cc04ff698e2a84432fa7db9cb59057f6fe55def", + "canonical_content_sha256": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "local_program_sha256": { + "forward": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "backward": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4" + }, + "clifford_recipes_sha256": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/LICENSE b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/NOTICE.md new file mode 100644 index 0000000000..16b0507070 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/NOTICE.md @@ -0,0 +1,9 @@ +# Construction delta notice + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. + +`construct_gauge_xcentre.py` modifies PR635's credited `construct_k_triangle.py`, which in turn extends icekylinx's PR531/PR514/PR425 factory lineage. Its original source comments are retained. The K-triangle schedule and the upstream porting, JP8 frame, kernel and HPE procedures are reused from the pinned source checkouts and are not new contributions of this delta. + +The new source-copy exchanges, complementary factory basis, carrier assignment, exact cold44 constructor and compact reproduction driver are described in `../CONSTRUCTION.md`. + +`UPSTREAM-NOTICE.md` is the complete unmodified notice from the pinned PR635 package. `LICENSE` is that package's Apache-2.0 license. All further notices and source credits of the referenced upstream packages remain applicable and are retained in the source checkouts rather than vendored again here. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/REBUILD-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/REBUILD-CHECKS.json new file mode 100644 index 0000000000..0801f35da7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/REBUILD-CHECKS.json @@ -0,0 +1,51 @@ +{ + "status": "PASS_COMPACT_SCALAR_REPRODUCTION_AND_FROZEN_RECIPE_SPLICE", + "steps": [ + { + "step": "shadow-early", + "exit_code": 0, + "seconds": 0.355 + }, + { + "step": "shadow-prefix", + "exit_code": 0, + "seconds": 0.511 + }, + { + "step": "gauge-forward", + "exit_code": 0, + "seconds": 0.527 + }, + { + "step": "port0", + "exit_code": 0, + "seconds": 0.468 + }, + { + "step": "port1", + "exit_code": 0, + "seconds": 0.636 + }, + { + "step": "port2", + "exit_code": 0, + "seconds": 0.474 + }, + { + "step": "port3", + "exit_code": 0, + "seconds": 0.497 + }, + { + "step": "cold44-exact", + "exit_code": 0, + "seconds": 2.754 + } + ], + "constructor_seconds": 6.222, + "word_content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "all_step_input_and_output_pins_checked": true, + "regenerated_recipe_equals_frozen_recipe": true, + "frozen_splice_matches_exact_constructor": true, + "scope": "One portable scalar reconstruction from pinned main and PR635 inputs; existing native and independent mathematical receipts accompany the package separately." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/UPSTREAM-NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/UPSTREAM-NOTICE.md @@ -0,0 +1,34 @@ +# Attribution and scope + +Four verified provider types are offered to every call: PR571's prefix word with twelve multi-cut cold kernels (PR568's unchanged constructor), the same word with forty width-five entrance promotions (PR569's unchanged frame constructor) before those kernels, PR575's plain joint-prefix provider, and PR568's eight-cold provider. A window MILP with an exact per-pattern model chooses the dispatch and a literal owner map. PR583's six source-bound kernel frame coalescences (its unchanged constructor and negative controls) are applied to every PR571-prefix provider word (ck and atm3), followed by two further coalescences that each first move one addition past two commuting additions (package code/build_gate_moves.py, extending PR583's constructor); a final hyperplane_end step (package code/build_hpe.py) then runs 46 single-gate cleanups h -= p right after part B at the dim-8 join U of their registers, so 46 width-8 entering helpers per call end at U with width 7; each such gate commutes with every earlier cleanup gate on its registers (for 8 of them the partner's one earlier gate x -= p only reads p), and the reordered program is replayed exactly. A window MILP (exact windows, RINS around an LP vertex) gives the dispatch ck 45 / atm3 21 / jp8 6 and the literal owner map. + +Pinned external sources (unchanged; `verify.py` checks their manifests and every file it uses): +- PR568 (`research/complex-multicold`, commit `71c99ac935a33bb7b59a1b4a7af8725a939b0b90`). +- PR571 (`research/structural-gain`, commit `b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3`). +- PR569 (`research/larger-gain`, commit `897213a855b7fb8a1b8b0e552a2f5c42e6c1b326`). +- PR575 (`research/complex-joint-prefix`, commit `eac6f7e378ab622dac50a2fd4b7ef6eab014de44`). +- PR583 (`research/kernel-frame-coalescing`, commit `89be768f0157f5a3d8e4db69cf1748768605eac9`). + +Provider construction is described as typed steps in `data/SPEC.json` (`build`); `verify.py` runs only allowlisted step types with their paired omission audits and checks every input and output content hash. `code/` holds the spec-driven global admission scripts adapted from PR571's `frontier-composition/global-code/` (OpenAI Codex assisted, Apache-2.0): every expected value is read from `data/SPEC.json` and compared only after independent recomputation. `code/generated_identity.py` and `code/generated_identity_controls.py`, and the decompressed-content artifact identities in the bind, audit, invoice, assembly and phase-timing scripts, are taken unchanged from PR586 by chafreaky (`research/promoted-kernel-coalescing`, commit `4846fee5b06af770e9b3a10c36200f673d656725`, OpenAI Codex assisted, Apache-2.0), including its proof-content and reference/metadata mutation controls; the normalization of descriptive width metadata after frame changes follows the same PR. + +In PR601, the owner map was nominated by a HiGHS window MILP (adapted from PR569's `global/nominate_width7.py`) with lazy cross-time Hall cuts; this package's re-solved map is described below. Neither is an admission dependency. + +DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. (The PR601 package this one starts from states: "Prepared by Claude Code (Anthropic) research agents.") Apache-2.0 applies; LICENSE is included. All notices, licenses, source pins and AI disclosures of the pinned sources and their ancestry are retained in those packages and are not replaced by this notice. All inherited conditional assumptions remain conditional. + +**This package (complex-571-cold14, DreamingOfClouds).** It starts from PR601 (jeremykothe2, `research/complex-571-hpem46`, commit `529ab7dcb59d5ea7a5798e9e06cf5b3aee8a1550`). Everything above is kept unchanged except the following: +- every provider chain (ck, atm3, jp8) gains the typed step `cold_end` (`code/build_cold_end.py`, `code/cold_end_controls.py`; recipes `data/recipes/*-cold_end.json.gz`); +- the generalised native chain and the global admission scripts accept cold helpers that end below FULL (with `0:U` wrappers), a refactored exact cleanup, and check the wrapper order; +- `data/PLAN.json` / `data/OWNERS.json.gz` (dispatch and literal owner map) come from a relocate/swap/ejection-chain/provider-flip annealing search started from PR601's map, refined by an exact pattern-restricted owner model (CP-SAT) with a literal edge-colouring expansion (not an admission dependency); +- `data/SPEC.json` holds the expected values, recorded by a discovery run and then checked by a strict run. + +The cold-end construction (a row-plus-column cone condition for low-frame ends, a rank-0 dirt-spread premix and multi-gate lower-frame cleanup) builds on PR591 / PR592 / PR593 / PR601 (jeremykothe2) and our PR599 (Lean: multi-gate and cold hyperplane-end tails). DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. Build on this at your own risk. + +**This package (complex-571-cold14-b3, jeremykothe2).** It is PR604's `complex-571-cold14` (DreamingOfClouds) with ColdBeyond's second cold end per block (two new `cold_end` A-gate primitives, `PROOF-NOTE.md`), ColdSupply's E1 entering pair and reviewed controls, a free dispatch (jp8 ×60, atm3 ×12) and a literal owner map from an exact per-time-Hall window MIP. All other construction, code, controls and proofs are PR604's and earlier contributors', unchanged. + +**This package (complex-571-cold14-k492).** It is complex-571-cold14-b3 with these changes: +- **K-triangle base words.** The leaver-read K-triangle skeleton atom and its read schedule (`data/TRI-SCHEDULE.json`) are by AtomScout, a Claude Code research agent. `code/construct_k_triangle.py` is PR531's `code/construct_504.py` (icekylinx, OpenAI Codex / GPT assisted, Apache-2.0; pinned source `direct_delivery`) extended with that atom. +- **Ported chains.** The PR604/B3 chains are ported stage by stage onto the K-triangle words by `code/build_port_stage.py` (Port480, a Claude Code research agent). `code/build_frame_regroup.py` extends PR583's `build_frames.py` (chafreaky). +- **Helper count R.** The generalisation of the global scripts to the provider helper count R is by GlobalR (a Claude Code research agent), with AtomReviewer's fixes (PROOF-NOTE-R.md). +- **Owner map.** The owner map, the cold_end recipes on the K-triangle words and the package assembly are by Stack492, Port480 and ColdBeyond (Claude Code research agents). + +Build on this at your own risk. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/LOCAL-PINS-barch-U8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/LOCAL-PINS-barch-U8.json new file mode 100644 index 0000000000..4028b95c0e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/LOCAL-PINS-barch-U8.json @@ -0,0 +1,50 @@ +{ + "word": "U8", + "barch_controls": [ + "C0_identity", + "recipe", + "drop_restore", + "restore_full", + "drop_preread", + "donation_after", + "drop_restore@231", + "restore_full@231", + "drop_preread@231", + "donation_after@231", + "drop_restore@230", + "restore_full@230", + "drop_preread@230", + "donation_after@230", + "drop_restore@232", + "restore_full@232", + "drop_preread@232", + "donation_after@232", + "drop_restore@236", + "restore_full@236", + "drop_preread@236", + "donation_after@236", + "drop_restore@226", + "restore_full@226", + "drop_preread@226", + "donation_after@226", + "drop_restore@228", + "restore_full@228", + "drop_preread@228", + "donation_after@228", + "drop_restore@62", + "restore_full@62", + "drop_preread@62", + "donation_after@62", + "drop_restore@238", + "restore_full@238", + "drop_preread@238", + "donation_after@238" + ], + "layer_controls": 95, + "canonical_sha256": "24db880b7dab31e6af4eec8a1aba1bbbae29cd50d9a7b77cf0e9b571b3e5ae7c", + "program_sha256": { + "forward": "83d65a63f51bd1ce7f3dd4e4d3597311e065b4775796cd87aea3e3a62689047c", + "backward": "e4e483b764e9a85f84a04425e57d73ecdcc72eb2e4d97a64f17d9da58fa5ace0" + }, + "clifford_recipes_sha256": "4629507dcbdd516457c001ff8f9dbe750d1a0cbfa5cfa3c6be003d45804ba0c5" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/RECIPE-U8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/RECIPE-U8.json new file mode 100644 index 0000000000..ee215a805a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/RECIPE-U8.json @@ -0,0 +1,1528 @@ +{ + "base_sha256": "1e1d99ba7aab877d6b573c41f7030ee73de9a52fee51d0a822ddaae71251999f", + "B_delete": [ + 5, + 7, + 9, + 11, + 13, + 15, + 17, + 19, + 878, + 880, + 886, + 888, + 894, + 896, + 902, + 904, + 910, + 912, + 918, + 920, + 926, + 928, + 934, + 936, + 1215, + 1217, + 1223, + 1225, + 1231, + 1233, + 1239, + 1241, + 1247, + 1249, + 1255, + 1257, + 1263, + 1265, + 1271, + 1273 + ], + "B_insert": [ + [ + 5, + [ + "add", + 125, + 450, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 7, + [ + "add", + 121, + 451, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 9, + [ + "add", + 181, + 452, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 11, + [ + "add", + 177, + 453, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 13, + [ + "add", + 117, + 454, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 15, + [ + "add", + 113, + 455, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 17, + [ + "add", + 189, + 456, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 19, + [ + "add", + 185, + 457, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 676, + [ + "add", + 484, + 231, + 1, + 1, + [ + 386, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 677, + [ + "add", + 485, + 226, + 1, + 1, + [ + 388, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 693, + [ + "add", + 496, + 450, + 1, + 1, + [ + 260, + 132, + 70, + 38, + 24, + 1 + ] + ] + ], + [ + 694, + [ + "add", + 497, + 451, + 1, + 1, + [ + 260, + 132, + 64, + 32, + 24, + 1 + ] + ] + ], + [ + 711, + [ + "add", + 508, + 230, + 1, + 1, + [ + 390, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 712, + [ + "add", + 509, + 228, + 1, + 1, + [ + 390, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 729, + [ + "add", + 520, + 452, + 1, + 1, + [ + 268, + 140, + 64, + 38, + 30, + 1 + ] + ] + ], + [ + 730, + [ + "add", + 521, + 453, + 1, + 1, + [ + 266, + 138, + 70, + 32, + 30, + 1 + ] + ] + ], + [ + 747, + [ + "add", + 532, + 232, + -2, + 1, + [ + 385, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 748, + [ + "add", + 533, + 62, + -2, + 1, + [ + 385, + 65, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 763, + [ + "add", + 544, + 454, + -2, + 1, + [ + 267, + 139, + 65, + 33, + 25, + 7 + ] + ] + ], + [ + 764, + [ + "add", + 545, + 455, + -2, + 1, + [ + 267, + 139, + 64, + 32, + 25, + 7 + ] + ] + ], + [ + 779, + [ + "add", + 556, + 236, + -2, + 1, + [ + 385, + 65, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 780, + [ + "add", + 557, + 238, + -2, + 1, + [ + 385, + 64, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 795, + [ + "add", + 568, + 456, + -2, + 1, + [ + 258, + 130, + 64, + 33, + 24, + 7 + ] + ] + ], + [ + 796, + [ + "add", + 569, + 457, + -2, + 1, + [ + 259, + 131, + 65, + 32, + 24, + 7 + ] + ] + ], + [ + 1215, + [ + "add", + 125, + 450, + -1, + 2, + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1217, + [ + "add", + 121, + 451, + -1, + 2, + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1223, + [ + "add", + 149, + 231, + -1, + 2, + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1225, + [ + "add", + 145, + 226, + -1, + 2, + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1231, + [ + "add", + 181, + 452, + -1, + 2, + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1233, + [ + "add", + 177, + 453, + -1, + 2, + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1239, + [ + "add", + 221, + 230, + -1, + 2, + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1241, + [ + "add", + 217, + 228, + -1, + 2, + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1247, + [ + "add", + 117, + 454, + 1, + 1, + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1249, + [ + "add", + 113, + 455, + 1, + 1, + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 1255, + [ + "add", + 157, + 232, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1257, + [ + "add", + 153, + 62, + 1, + 1, + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 1263, + [ + "add", + 189, + 456, + 1, + 1, + [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 1265, + [ + "add", + 185, + 457, + 1, + 1, + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1271, + [ + "add", + 213, + 236, + 1, + 1, + [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 1273, + [ + "add", + 209, + 238, + 1, + 1, + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + ] + ] + ], + "B_frames": { + "1340": [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ], + "1343": [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ], + "1346": [ + 260, + 132, + 68, + 36, + 24, + 2, + 1 + ], + "1349": [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ], + "1352": [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ], + "1355": [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ], + "1358": [ + 256, + 130, + 64, + 34, + 24, + 4, + 1 + ], + "1361": [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ], + "1364": [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ], + "1367": [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ], + "1370": [ + 256, + 128, + 64, + 38, + 18, + 12, + 1 + ], + "1373": [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ], + "1376": [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ], + "1379": [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ], + "1382": [ + 262, + 128, + 70, + 38, + 20, + 10, + 1 + ], + "1385": [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ], + "1388": [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ], + "1391": [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ], + "1394": [ + 257, + 129, + 65, + 33, + 19, + 10, + 7 + ], + "1397": [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ], + "1400": [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ], + "1403": [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ], + "1406": [ + 256, + 129, + 64, + 33, + 18, + 11, + 7 + ], + "1409": [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ], + "1412": [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ], + "1415": [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ], + "1418": [ + 256, + 128, + 64, + 33, + 24, + 5, + 2 + ], + "1421": [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ], + "1424": [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ], + "1427": [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ], + "1430": [ + 257, + 128, + 65, + 33, + 24, + 4, + 3 + ], + "1433": [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + }, + "tail_insert": [ + [ + 7, + [ + "add", + 496, + 450, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 6, + [ + "add", + 497, + 451, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 5, + [ + "add", + 520, + 452, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 4, + [ + "add", + 521, + 453, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 3, + [ + "add", + 544, + 454, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 2, + [ + "add", + 545, + 455, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 1, + [ + "add", + 568, + 456, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 0, + [ + "add", + 569, + 457, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ] + ], + "cleanup_prepend": [ + [ + "add", + 484, + 231, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 485, + 226, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 508, + 230, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 509, + 228, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 532, + 232, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 533, + 62, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 556, + 236, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 557, + 238, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ] + ], + "local_profile": { + "1": 2548, + "2": 338, + "3": 446, + "4": 162, + "5": 72, + "8": 8 + }, + "expect_sha256": "090fd574747fbf9628e70cb9beb792732914cfa52e1df147579fe4dbccc68c5a", + "priced": { + "dk_ideal": 3.140480230774418e-07, + "dP": { + "5": 16, + "4": -32, + "3": 16 + } + }, + "variants": [ + { + "X": 231, + "E": 450, + "dsides": [ + 878, + 886 + ], + "donors": [ + 450, + 231 + ], + "hold": [ + 496, + 484 + ], + "kept": { + "1215": 450, + "1223": 231 + }, + "when": "mid" + }, + { + "X": 230, + "E": 452, + "dsides": [ + 894, + 902 + ], + "donors": [ + 452, + 230 + ], + "hold": [ + 520, + 508 + ], + "kept": { + "1231": 452, + "1239": 230 + }, + "when": "mid" + }, + { + "X": 232, + "E": 454, + "dsides": [ + 910, + 918 + ], + "donors": [ + 454, + 232 + ], + "hold": [ + 544, + 532 + ], + "kept": { + "1247": 454, + "1255": 232 + }, + "when": "mid" + }, + { + "X": 236, + "E": 456, + "dsides": [ + 926, + 934 + ], + "donors": [ + 456, + 236 + ], + "hold": [ + 568, + 556 + ], + "kept": { + "1263": 456, + "1271": 236 + }, + "when": "mid" + }, + { + "X": 226, + "E": 451, + "dsides": [ + 880, + 888 + ], + "donors": [ + 451, + 226 + ], + "hold": [ + 497, + 485 + ], + "kept": { + "1217": 451, + "1225": 226 + }, + "when": "mid" + }, + { + "X": 228, + "E": 453, + "dsides": [ + 896, + 904 + ], + "donors": [ + 453, + 228 + ], + "hold": [ + 521, + 509 + ], + "kept": { + "1233": 453, + "1241": 228 + }, + "when": "mid" + }, + { + "X": 62, + "E": 455, + "dsides": [ + 912, + 920 + ], + "donors": [ + 455, + 62 + ], + "hold": [ + 545, + 533 + ], + "kept": { + "1249": 455, + "1257": 62 + }, + "when": "mid" + }, + { + "X": 238, + "E": 457, + "dsides": [ + 928, + 936 + ], + "donors": [ + 457, + 238 + ], + "hold": [ + 569, + 557 + ], + "kept": { + "1265": 457, + "1273": 238 + }, + "when": "mid" + } + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/build_tri.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/build_tri.py new file mode 100644 index 0000000000..11c4371114 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/build_tri.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python3 +"""build_tri.py BASE_WORD RECIPE OUT_WORD [--control NAME] + +Standard library only. Applies a NewBArch triangle-hybrid recipe to the X4 word (1e1d99ba) and writes a FULL-WORD.json.gz. +Recipe keys (all indices refer to the BASE word): + base_sha256 sha256 of the decompressed base JSON (checked) + B_delete list of B indices removed + B_insert list of [pos, gate]: gate (with frame) inserted before base B gate pos (list order kept) + B_frames {index: frame}: explicit re-chosen frame of a kept base B gate + tail_insert list of [early_index, gate]: gates appended to cleanup in list order, then registered as early cleanup at early_index (ascending) + cleanup_prepend list of gates prepended to the full cleanup (early indices are shifted) + local_profile report.local_profile of the result + expect_sha256 sha256 of the decompressed result (checked unless a control is requested) +Controls (each must be REJECTED by audit_local; see controls.json): + drop_restore omit cleanup_prepend (end value of the holder not restored) + restore_full move tail_insert gates into the full cleanup (FULL frame) instead of early cleanup + drop_preread omit the inserted entrance pre-reads (inserted target += E gates at pos < first donation) + donation_after insert each donation after its reading target's read instead of before it + NAME@X the same control restricted to the instance whose packet register is X (recipe 'variants') +""" +import sys, json, gzip, hashlib, copy + +FULL = [256, 128, 64, 32, 16, 8, 4, 2, 1] + +def load(p): + raw = gzip.decompress(open(p, 'rb').read()); return json.loads(raw), hashlib.sha256(raw).hexdigest() + +def apply(w, rc, control=None): + w = copy.deepcopy(w); B = w['B'] + S = None + if control and '@' in control: # per-instance control: name@X mutates only instance X's gates + control, x = control.split('@'); x = int(x) + vv = [s for s in rc['variants'] if s['X'] == x][0]; S = {vv['X'], vv['E'], *vv['hold']} + sel = lambda g: S is None or bool({g[1], g[2]} & S) + dele = set(rc['B_delete']); fr = {int(k): f for k, f in rc['B_frames'].items()} + ins = [list(x) for x in rc['B_insert']] + don = [x for x in ins if not (112 <= x[1][1] < 224)] # donations: destination is not a target + first_don = min(p for p, _ in don) if don else 0 + if control == 'drop_preread': + ins = [x for x in ins if not (x[0] < first_don and 112 <= x[1][1] < 224 and sel(x[1]))] + if control == 'donation_after': + new = [] + for p, g in ins: + if g in [d[1] for d in don] and sel(g): + rd = [i for i, e in enumerate(B) if i >= p and e[0] == 'add' and e[2] == g[1] and 112 <= e[1] < 224] + p = rd[0] + 1 + new.append([p, g]) + ins = new + at = {} + for p, g in ins: at.setdefault(p, []).append(list(g)) + out = [] + for i, e in enumerate(B): + out.extend(at.get(i, [])) + if i in dele: continue + e = list(e) + if i in fr: e = e[:-1] + [list(fr[i])] + out.append(e) + out.extend(at.get(len(B), [])) + w['B'] = out + pre = [list(g) for g in rc['cleanup_prepend'] if not (control == 'drop_restore' and sel(g))] + tails = [list(x) for x in rc['tail_insert']] + if control == 'restore_full': + pre = pre + [g[1][:-1] + [FULL] for g in tails if sel(g[1])]; tails = [g for g in tails if not sel(g[1])] + C = pre + w['cleanup']; sh = len(pre) + early = [[i + sh, U] for i, U in w['early_cleanup']] + idx = [] + for j, g in tails: C.append(list(g)); idx.append((j, len(C) - 1, list(g[-1]))) # appended in recipe order + for j, ci, U in sorted(idx): early.insert(j, [ci, U]) # then registered at their early index + w['cleanup'] = C; w['early_cleanup'] = early + w['report'] = dict(w['report']); w['report']['local_profile'] = rc['local_profile'] + return w + +def main(): + a = sys.argv[1:]; control = None + if '--control' in a: k = a.index('--control'); control = a[k + 1]; del a[k:k + 2] + base, out = a[0], a[2] + w, sha = load(base); rc = json.load(open(a[1])) + if sha != rc['base_sha256']: raise SystemExit('base sha mismatch ' + sha) + w2 = apply(w, rc, control) + raw = json.dumps(w2, separators=(',', ':')).encode() + open(out, 'wb').write(gzip.compress(raw, mtime=0)) + s = hashlib.sha256(raw).hexdigest() + if control is None and s != rc['expect_sha256']: raise SystemExit('result sha mismatch ' + s) + print(json.dumps(dict(control=control, sha256=s))) + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/reproduce_barch.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/reproduce_barch.py new file mode 100644 index 0000000000..22f15b491d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/reproduce_barch.py @@ -0,0 +1,92 @@ +#!/usr/bin/env python3 +"""Rebuild the B0 word (NewBArch's width-neutral triangle-hybrid B-delivery rewrite on X4) and its native locals. + +Input: a fresh `construction/jx/reproduce_jx.py` output directory; its X4 word (1e1d99ba...) is pinned there and by +RECIPE-B0.json (base_sha256). Steps, each checked exactly: + 1. barch: build_tri.py (standard library only; NewBArch) applies the recipe's explicit B deletes and inserts (with frames), + re-chosen B frames, early-cleanup tails and FULL-cleanup restores; it checks the base and result shas (d9ba0942...). + 2. barch-controls: run_controls.py rebuilds C0 (identity, must reproduce the input), the recipe word (must PASS #645's + independent audit_local.py) and four mutants (drop_restore, restore_full, drop_preread, donation_after), globally + and for each recipe variant (NAME@X); each mutant must FAIL audit_local with its pinned message. Every outcome is + required and the control set is pinned (LOCAL-PINS). + 3. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant) on the B0 word; count pinned. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs; canonical word, local programs and + Clifford recipes pinned (LOCAL-PINS-barch-.json). +Apache-2.0. Driver by ColdWitness around NewBArch's builder and controls. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +PKG = HERE.parents[1] +P6 = HERE.parent / 'layers_p6n' +MUTANTS = ('drop_restore', 'restore_full', 'drop_preread', 'donation_after') + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--jx-dir', type=Path, required=True, help='construction/jx/reproduce_jx.py output') + ap.add_argument('--recipe', default='U8', help='RECIPE-.json and LOCAL-PINS-barch-.json') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-barch-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + inp = a.jx_dir.resolve() / 'jx/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['base_sha256'], 'input must be the pinned X4 word' + (out / 'barch').mkdir(); word = out / 'barch/FULL-WORD.json.gz' + run('barch', HERE / 'build_tri.py', inp, rfile, word, portable=False) + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['expect_sha256'] + run('barch-controls', HERE / 'run_controls.py', inp, rfile, PKG / 'independent/audit_local.py', out / 'barch-controls', portable=False) + res = read(out / 'barch-controls/controls.json') + want = ['C0_identity', 'recipe', *MUTANTS] + [m + '@' + str(v['X']) for v in rec.get('variants', []) for m in MUTANTS] + assert sorted(res) == sorted(want) == sorted(pins['barch_controls']) and all(x['ok'] for x in res.values()), res + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/run_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/run_controls.py new file mode 100644 index 0000000000..f1ce999bfb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/barch/run_controls.py @@ -0,0 +1,33 @@ +#!/usr/bin/env python3 +"""run_controls.py BASE_WORD RECIPE AUDIT_LOCAL_PY OUTDIR : C0 identity, the recipe word (must PASS) and the four negative +controls (each must FAIL audit_local with its pinned message prefix). Standard library only; writes OUTDIR/controls.json.""" +import sys, json, subprocess, os, gzip, hashlib +base, recipe, audit, out = sys.argv[1:5] +here = os.path.dirname(os.path.abspath(__file__)); os.makedirs(out, exist_ok=True) +# pinned rejection sites (observed on RECIPE-V1 and RECIPE-B0; the failing rows are recorded in controls.json): the holder 485 is not restored; the low-end restore 497-=451 moved to the +# FULL cleanup runs after 451's own tail and leaves 497 wrong; without the pre-read (or with the donation after the read) +# the entering helper's start value reaches a target. +EXPECT = {None: 'PASS', 'drop_restore': 'all-column endpoint failure (False, ', + 'restore_full': 'all-column endpoint failure (False, ', + 'drop_preread': 'nonzero entrance response', 'donation_after': 'nonzero entrance response'} +res = {} +ident = os.path.join(out, 'C0.json') +json.dump(dict(json.load(open(recipe)), B_delete=[], B_insert=[], B_frames={}, tail_insert=[], cleanup_prepend=[], + local_profile=json.loads(gzip.decompress(open(base, 'rb').read()))['report']['local_profile'], + expect_sha256=hashlib.sha256(gzip.decompress(open(base, 'rb').read())).hexdigest()), open(ident, 'w')) +r = subprocess.run([sys.executable, '-B', os.path.join(here, 'build_tri.py'), base, ident, os.path.join(out, 'C0.json.gz')], capture_output=True, text=True) +res['C0_identity'] = dict(ok=r.returncode == 0, out=r.stdout.strip() or r.stderr.strip()[-200:]) +ctls = list(EXPECT) + [c + '@' + str(s['X']) for s in json.load(open(recipe)).get('variants', []) for c in EXPECT if c] +for ctl in ctls: + name = ctl or 'recipe'; wp = os.path.join(out, name + '.json.gz') + cmd = [sys.executable, '-B', os.path.join(here, 'build_tri.py'), base, recipe, wp] + (['--control', ctl] if ctl else []) + b = subprocess.run(cmd, capture_output=True, text=True) + if b.returncode: res[name] = dict(ok=False, build=b.stderr[-300:]); continue + a = subprocess.run([sys.executable, '-B', audit, '--word', wp, '--output', os.path.join(out, name + '.audit.json')], capture_output=True, text=True) + txt = a.stdout + a.stderr + if ctl is None: ok = a.returncode == 0 and 'PASS_INDEPENDENT' in txt + else: ok = a.returncode != 0 and EXPECT[ctl.split('@')[0]] in txt + res[name] = dict(ok=ok, build=json.loads(b.stdout), audit_tail=txt.strip().splitlines()[-1][:200]) +json.dump(res, open(os.path.join(out, 'controls.json'), 'w'), indent=1) +print(json.dumps({k: x['ok'] for k, x in res.items()})) +sys.exit(0 if all(x['ok'] for x in res.values()) else 1) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/build_gauge_cold44.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/build_gauge_cold44.py new file mode 100644 index 0000000000..72d2945f6b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/build_gauge_cold44.py @@ -0,0 +1,210 @@ +"""Exact dyadic cold-end realization of the source-branch/factory-completion word. +Prepared for icekylinx with OpenAI Codex assistance; Apache-2.0. +This is a constructor: independent endpoint/frame audits remain required. +""" +from pathlib import Path +from fractions import Fraction as Q +from collections import Counter +import copy,gzip,json,hashlib,time,sys,argparse,importlib.util +D=Path(__file__).resolve().parent +ap=argparse.ArgumentParser(description=__doc__) +for name in ('input','out','hamming','upstream-package'):ap.add_argument('--'+name,type=Path,required=True) +args=ap.parse_args();WPATH=args.input;OUT=args.out +assert __debug__, 'Assertions are required' +OUT.mkdir(exist_ok=False,parents=True) +def rd(p):return json.loads(gzip.decompress(p.read_bytes()) if p.suffix=='.gz' else p.read_bytes()) +w=rd(WPATH);v=w['report']['v'];n=2*v+w['report']['R'];N=list(range(v))+list(range(2*v,n));ix={x:i for i,x in enumerate(N)} +F9=[256,128,64,32,16,8,4,2,1];t0=time.monotonic() +def basis(vs): + d={} + for a in vs: + for k in sorted(d,reverse=True): + if a>>k&1:a^=d[k] + if a: + k=a.bit_length()-1 + for j in d: + if d[j]>>k&1:d[j]^=a + d[k]=a + return tuple(d[k] for k in sorted(d,reverse=True)) +def inside(a,b):return basis(a+b)==b +def regs(e):return e[1:3] if e[0]=='add' else e[1:2] +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]=-e[3] + else:e[2],e[3]=e[3],e[2] + return e +def apply(e,M,mapping=None): + t=mapping[e[1]] if mapping is not None else e[1] + if e[0]=='add': + s=mapping[e[2]] if mapping is not None else e[2];q=Q(e[3],e[4]) + for j,a in M[s].items(): + x=M[t].get(j,Q(0))+q*a + if x:M[t][j]=x + else:M[t].pop(j,None) + else: + q=Q(e[2],e[3]);M[t]={j:q*a for j,a in M[t].items()} +def rref(A): + a=[list(map(Q,row)) for row in A];nr=len(a);nc=len(a[0]) if nr else 0;row=0;piv=[] + for c in range(nc): + k=next((i for i in range(row,nr) if a[i][c]),None) + if k is None:continue + a[row],a[k]=a[k],a[row];q=a[row][c];a[row]=[x/q for x in a[row]] + for i in range(nr): + if i!=row and a[i][c]:q=a[i][c];a[i]=[x-q*y for x,y in zip(a[i],a[row])] + piv.append(c);row+=1 + if row==nr:break + return a,piv +def rank(A):return len(rref(A)[1]) +def null(A,nc=None): + if A:a,piv=rref(A);nc=len(a[0]) + else:a=[];piv=[];assert nc is not None + free=[j for j in range(nc) if j not in piv];out=[[Q(0) for j in free] for i in range(nc)] + for k,c in enumerate(free):out[c][k]=Q(1) + for i,c in enumerate(piv): + for k,j in enumerate(free):out[c][k]=-a[i][j] + return out +def mm(A,B): + if not A:return [] + if not B:return [[] for row in A] + bt=list(zip(*B));return [[sum((a*b for a,b in zip(row,col)),Q(0)) for col in bt] for row in A] +def tr(A):return list(map(list,zip(*A))) +def inv(A): + n0=len(A);a,p=rref([row+[Q(i==j) for j in range(n0)] for i,row in enumerate(A)]) + assert p[:n0]==list(range(n0)) + return [row[n0:] for row in a] +def unit(q): + if not q:return False + a=abs(q.numerator);b=q.denominator + return not a&(a-1) and not b&(b-1) +def dyadic(q):return not q.denominator&(q.denominator-1) +def opadd(t,s,q,F):return ['add',t,s,q.numerator,q.denominator,list(F)] +def opscale(t,q,F):return ['scale',t,q.numerator,q.denominator,list(F)] +def eliminate(M,ids,F,skip=()): + """Return legal dyadic row operations taking an invertible sparse matrix to I.""" + skip=set(skip);ops=[];dim=len(M) + def add(i,j,q): + if q: + assert dyadic(q);e=opadd(ids[i],ids[j],q,F);ops.append(e) + for c,x in M[j].items(): + z=M[i].get(c,Q(0))+q*x + if z:M[i][c]=z + else:M[i].pop(c,None) + def scale(i,q): + if q!=1: + assert unit(q);ops.append(opscale(ids[i],q,F));M[i]={c:q*x for c,x in M[i].items()} + def swap(i,j): + if i!=j: + add(i,j,Q(1));add(j,i,Q(-1));add(i,j,Q(1));scale(j,Q(-1)) + for c in range(dim): + if c in skip: + assert M[c]=={c:Q(1)} and all(not M[i].get(c) for i in range(dim) if i!=c) + continue + cand=[i for i in range(c,dim) if i not in skip and M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + if k is None: + # Elementary Euclidean row additions reduce the pivot-column numerator gcd. + assert cand,('singular',c) + while k is None: + cand.sort(key=lambda i:abs(M[i][c]));a=cand[0] + b=next((i for i in cand[1:] if M[i][c]),None) + if b is None:raise ValueError(('non-dyadic determinant pivot',c,M[a][c])) + rat=M[b][c]/M[a][c];q=rat.numerator//rat.denominator + if q==0:q=1 if rat>0 else -1 + add(b,a,Q(-q));cand=[i for i in cand if M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + swap(c,k);scale(c,1/M[c][c]) + for i in range(dim): + if i!=c and M[i].get(c): + assert i not in skip + add(i,c,-M[i][c]) + assert all(row=={i:Q(1)} for i,row in enumerate(M)) + return ops +def realize(A,ids,F): + M=[{j:Q(x) for j,x in enumerate(row) if x} for row in A] + return [inverse(e) for e in reversed(eliminate(M,ids,F))] +# Reconstruct the actual non-target map after the inherited HPE tail. +inherited_tail=[w['cleanup'][i][:-1]+[list(f)] for i,f in w.get('early_cleanup',[])] +mainN=[e for e in w['A']+w['B'] if not v<=e[1]<2*v] +M=[{i:Q(1)} for i in range(len(N))] +for e in mainN+inherited_tail:apply(e,M,ix) +MI=[{i:Q(1)} for i in range(len(N))] +for e in reversed(mainN+inherited_tail):apply(inverse(e),MI,ix) +cur={x:(w['ports'][x],) if xlen(ih):ih.append(j) + if len(ih)==r:break + assert len(ih)==r + endhs=[N[I[j]] for j in ih];endhidx=[hs.index(h) for h in endhs] + kerR=null(RR,16);Qmat=[[Q(0) for j in range(16)] for i in range(16)] + for j,hj in enumerate(endhidx): + for i in range(16):Qmat[i][hj]=qH[i][j] + other=[j for j in range(16) if j not in endhidx] + for k,j in enumerate(other): + for i in range(16):Qmat[i][j]=kerR[i][k] + assert rank(Qmat)==16 + pops=realize(Qmat,hs,());premix+=pops + T=[[Q(i==j)-sum((U[i][k]*L[k][j] for k in range(r)),Q(0)) for j in range(len(I))] for i in range(len(I))] + for k,i in enumerate(ih):T[i]=L[k] + tops=realize(T,[N[i] for i in I],F);tail+=tops + # Right-compose this initial helper premix; other blocks have disjoint H sets. + for row in Mafter: + vals=[row.get(h,Q(0)) for h in H] + if any(vals): + for hj in H:row.pop(hj,None) + for j,hj in enumerate(H): + z=sum((vals[i]*Qmat[i][j] for i in range(16)),Q(0)) + if z:row[hj]=z + for e in tops:apply(e,Mafter,ix) + ends.update({h:list(F) for h in endhs}) + plans.append(dict(block=b,frame=list(F),registers=[N[i] for i in I],ends=endhs,pairing_rank=r,premix_gates=len(pops),tail_gates=len(tops),Q=[[str(x) for x in row] for row in Qmat],T=[[str(x) for x in row] for row in T])) + print('BLOCK',b,'ends',endhs,'Qops',len(pops),'Tops',len(tops),flush=True) +# Check actual post-tail isolation before constructing the high-frame inverse. +allends=set(ends)|set(map(int,w.get('helper_final',{}))) +for h in allends: + j=ix[h];assert Mafter[j]=={j:Q(1)},('row not isolated',h,Mafter[j]);assert all(not row.get(j) for i,row in enumerate(Mafter) if i!=j),('column not isolated',h) +print('EXACT_ISOLATED',len(ends),'new;',len(allends),'total',round(time.monotonic()-t0,3),flush=True) +fullops=eliminate(copy.deepcopy(Mafter),N,F9,[ix[x] for x in allends]) +print('FULL_INVERSE',len(fullops),round(time.monotonic()-t0,3),flush=True) +# Cancel new cold-axis target responses inside A, after their wrappers. +Dirt=[({h:Q(1)} if h in ends else {}) for h in range(n)] +for e in premix+w['A']+w['cut']+w['B']:apply(e,Dirt) +for e in w['precondition']:apply(e,Dirt) +postcomp=[opadd(y,h,-a,()) for y in range(v,2*v) for h,a in sorted(Dirt[y].items()) if a] +assert all(h in ends for e in postcomp for h in [e[2]]) +new=copy.deepcopy(w);new['A']=postcomp+premix+w['A'];new['cleanup']=inherited_tail+tail+fullops +new['early_cleanup']=[[i,e[-1]] for i,e in enumerate(inherited_tail+tail)] +new['helper_final'].update({str(h):f for h,f in ends.items()}) +new['refactored_cleanup']={'kind':'source_branch_gauge_and_retired_completion_cold44','new_cold_ends':len(ends),'exact_non_target_isolation_checked':True,'high_inverse':'dyadic_sparse_Gauss_Jordan'} +# Derive paid profile by subtracting and adding literal frame-chain counts. +spec=importlib.util.spec_from_file_location('upstream_cold_end',args.upstream_package/'code/build_cold_end.py') +profile_module=importlib.util.module_from_spec(spec);spec.loader.exec_module(profile_module) +oldprof,_=profile_module.chain_profile(w);newprof,_=profile_module.chain_profile(new) +prof=Counter({int(k):z for k,z in w['report']['local_profile'].items()});prof.subtract(oldprof);prof.update(newprof) +widths=Counter(len(basis(new['helper_final'].get(str(h),F9)))-len(basis(new.get('start_extra',{}).get(str(h),[]))) for h in range(224,n)) +new['report'].update(local_profile={str(k):z for k,z in sorted(prof.items()) if z},local_rank_mass=sum(k*z for k,z in prof.items()),width_inventory={str(k):z for k,z in sorted(widths.items()) if z},status='EXACT_COLD44_CONSTRUCTED_PENDING_INDEPENDENT_AUDIT') +raw=json.dumps(new,sort_keys=True,separators=(',',':')).encode();sha=hashlib.sha256(raw).hexdigest();(OUT/'FULL-WORD.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +recipe={'premix':postcomp+premix,'cleanup':new['cleanup'],'early_cleanup':new['early_cleanup'],'cold_ends':{str(h):f for h,f in ends.items()},'refactored_cleanup':new['refactored_cleanup'],'output_content_sha256':sha} +(OUT/'RECIPE.json.gz').write_bytes(gzip.compress(json.dumps(recipe,sort_keys=True,separators=(',',':')).encode(),mtime=0)) +receipt=dict(input_content_sha256=hashlib.sha256(gzip.decompress(WPATH.read_bytes())).hexdigest(),output_content_sha256=sha,blocks=plans,new_cold_ends=len(ends),all_low_ended_helpers=len(allends),premix_gates=len(premix),postwrapper_compensation_gates=len(postcomp),tail_gates=len(tail),inherited_tail_gates=len(inherited_tail),full_inverse_gates=len(fullops),profile=new['report']['local_profile'],width_inventory=new['report']['width_inventory'],rank_mass=new['report']['local_rank_mass'],seconds=time.monotonic()-t0) +(OUT/'CONSTRUCTION.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(json.dumps({k:z for k,z in receipt.items() if k!='blocks'},indent=2),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/construct_gauge_xcentre.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/construct_gauge_xcentre.py new file mode 100644 index 0000000000..1010d86746 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/construct_gauge_xcentre.py @@ -0,0 +1,381 @@ +# Round20 early-coordinate-center / own-Y variant, prepared for icekylinx +# with OpenAI Codex assistance. Apache-2.0. Scalar elementary-operation +# helpers below are retained from the attributed PR514 construct_partial.py. +# Adapted by OpenAI Codex for isolated structural research. +# Modified from PR425 by icekylinx with Codex assistance. +"""Full discovery word for Hamming packets with borrowed X and Y registers. + +This changes the scalar architecture. It is not accepted by the old restricted +gx interface: source bases may change until full-frame cleanup, and targets use +an explicitly inverted output basis. No supplier admission is asserted. +""" +import copy,gzip,json,math,time +import itertools as it +from collections import Counter,defaultdict +from fractions import Fraction as Q +from pathlib import Path + +import sys +INPUT=Path(sys.argv[1]);OUT=Path(sys.argv[2]);OUT.mkdir(parents=True,exist_ok=False);D=json.loads((INPUT/'PROTOTYPE.json').read_text()) +P=D['binary_ports'];R=D['root_lines'];v=120;h=9 +modules=json.load(gzip.open(INPUT/'PACKET-PROGRAMS.json.gz')) +# AtomScout: leaver-read K-triangles (schedule from atom1.py / rog.py CP-SAT) +TRI=json.loads(Path(sys.argv[3]).read_text()) +FULLT={(tuple(tr['p']),tr['e']) for tr in TRI['triangles']} +TRI_COORDS={t+8 for tr in TRI['triangles'] for t,_,_ in tr['reads']} +COPYL=[] +NH=504-3*len(FULLT)+len(COPYL) + +def basis(vectors): + b={} + for x in vectors: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def inside(a,b):return basis(a+b)==b +def hyper(p):return basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) +FULL=basis([1<=v,r)) + for col,s in enumerate(ids): + k=next(i for i in range(col,len(regs)) if rows[regs[i]].get(s,Q(0))) + swap(regs[k],regs[col],F) + scale(regs[col],1/rows[regs[col]][s],F) + for i in range(len(regs)): + if i!=col and rows[regs[i]].get(s,Q(0)):add(regs[i],regs[col],-rows[regs[i]][s],F) + assert all(rows[regs[i]]=={s:Q(1)} for i,s in enumerate(ids)) + M=[[Q(R[s][i]) for s in ids] for i in c] + def qr_rank(rs): + bs={} + for r in rs: + r=r.copy() + for i,b in sorted(bs.items()): + if r[i]:q=r[i];r=[x-q*y for x,y in zip(r,b)] + i=next((i for i,x in enumerate(r) if x),None) + if i is not None:q=r[i];bs[i]=[x/q for x in r] + return len(bs) + assert qr_rank(M)==4 + for rr0 in PRIORITY[",".join(map(str,c))]["rows"]: + rr=list(map(Q,rr0)) + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + for i in range(8): + if len(M)==8:break + rr=[Q(i==j) for j in range(8)] + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + assert len(M)==8 + linear(regs,M,F) + for i,r in zip(c,regs): + assert rows[r]=={s:Q(R[s][i]) for s in ids} + block_totals[c,i]=r + +# All centers are complete while Y is still at zero. This is the crucial +# difference from an illegal early-own-Y prefix using the old center order. +centers=[] +for i in range(8): + regs=[block_totals[c,i] for c in sorted(blocks) if i in c] + F=hyper(P[frame[i]]);a=regs[0] + for b in regs[1:]:add(a,b,1,F) + centers.append(a) +centers += [frame[i] for i in range(8)] +center_frames=[cur[r] for r in centers] +assert list(map(len,center_frames))==[8]*8+[1]*8 +assert all(cur[v+t]==() for t in range(v)) + +phase=B +for t,(r,coef,F) in sorted(own_rows.items()): + if t in TRI_COORDS:continue + assert cur[r]==F + add(v+t,r,coef,F) +# requests are needed for TRI coefficients +requests=defaultdict(list) +for pid,pair in enumerate(pairs): + if not pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + requests[key1].append((t,-Q(mat[0][0],2))) + requests[key2].append((u,-Q(mat[0][1],2))) +reqcoef={t:(key,coef) for key,reqs in requests.items() for t,coef in reqs} +def face_info(c,p,eps): + z=blocks[c];keys=[(pp,ee) for pp in it.combinations(c,2) for ee in (-1,1)] + r_local,alpha=z['outputs'][keys.index((p,eps))] + j=[j for j in range(40,len(z['events'])) if z['events'][j][0]==r_local];assert len(j)==1 + return j[0],Q(alpha) +tri_join_counts=Counter() +lcopy={} +for s8 in COPYL: + r=s8+8;c=alloc();add(c,r,1,cur[r]);lcopy[r]=c +for tr in TRI['triangles']: + p,eps=tuple(tr['p']),tr['e'] + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];r0=r;r=lcopy.get(r,r) + key,coef=reqcoef[t];assert key[1]==p and key[2]==eps,(key,p,eps) + if blk==key[0]: + rr,c0,F0=own_rows[t];assert rr==r0;q=c0 + else: + j,alpha=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert loc in ev[:2] + q=coef*alpha + F=basis(cur[v+t]+cur[r]);assert inside(F,hyper(P[t])),('TRI frame',t) + tri_join_counts[len(F)]+=1;add(v+t,r,q,F) + +packets={} +for c,z in sorted(blocks.items()): + mp=maps[c] + keys=[(p,eps) for p in it.combinations(c,2) for eps in (-1,1)] + skipev={face_info(c,p,eps)[0] for p,eps in keys if (p,eps) in FULLT} + for j,(e,F) in enumerate(list(zip(z['events'],z['event_frames']))[40:]): + if j not in early[c] and 40+j not in skipev: + t,s,a,b=e;add(mp[t],mp[s],Q(a,b),tuple(F)) + for key,(r,alpha) in zip(keys,z['outputs']): + if tuple(key) in FULLT:skip();continue + a=mp[r];b=alloc();add(b,a,1,cur[a]) + consumers=sorted(d for d in blocks if d!=c and set(key[0])<=set(d)) + assert len(consumers)==2 + for target,r in zip(consumers,(a,b)):packets[c,key[0],key[1],target]=(r,Q(alpha)) + +# Both tetrahedra use the same partition. A selected key has exactly two +# selected Y loads and no ordinary M consumer. Supply its two raw halves in +# opposite orders and never form that M. Other keys retain the old M path. +second=[];first_join_counts=Counter() +for key,reqs in sorted(requests.items()): + assert len(reqs)==2 + c,p,eps=key + if (p,eps) in FULLT:continue + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d));a,b=ds + for j,(target,coef) in enumerate(sorted(reqs)): + first_source,second_source=(a,b) if j==0 else (b,a) + r,alpha=packets[first_source,p,eps,second_source] + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + first_join_counts[len(F)]+=1;add(v+target,r,coef*alpha,F) + r,alpha=packets[second_source,p,eps,c] + second.append((target,r,coef*alpha)) + +Ms={} +for c in sorted(blocks): + for p in it.combinations(c,2): + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d)) + for eps in (-1,1): + if (c,p,eps) in requests:continue + (a,alpha),(b,beta)=[packets[d,p,eps,c] for d in ds] + F=basis(cur[a]+cur[b]);add(a,b,beta/alpha,F) + Ms[c,p,eps]=(a,alpha) + +consumers=defaultdict(list) +for pid,pair in enumerate(pairs): + for key in pair['keys']:consumers[key].append(pid) +slots={} +for key,uses in sorted(consumers.items()): + assert len(uses)==2 + if key in requests: + assert all(pairs[i]['selected'] for i in uses) + continue + assert all(not pairs[i]['selected'] for i in uses) + a,alpha=Ms[key] + for j,pid in enumerate(uses): + if j==0:r=a + else:r=alloc();add(r,a,1,cur[a]) + slots[pid,key]=(r,alpha) +assert len(cur)-240==NH,len(cur)-240 + +selected_join_counts=Counter() +for target,r,coef in second: + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + selected_join_counts[len(F)]+=1;add(v+target,r,coef,F) +output_basis=[] +for pair in pairs: + if not pair['selected']:continue + (t,u),mat=pair['targets'],pair['matrix'] + F=basis(cur[v+t]+cur[v+u]);assert inside(F,hyper(P[t])) and inside(F,hyper(P[u])) + add(v+t,v+u,1,F);add(v+u,v+t,-Q(1,2),F) + z=-Q(2*mat[1][0],mat[0][0]);scale(v+u,z,F);output_basis.append((t,u,z)) + +for pid,pair in enumerate(pairs): + if pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + (a,alpha),(b,beta)=slots[pid,key1],slots[pid,key2] + F=basis(cur[a]+cur[b]);aa,ab=Q(mat[0][0])*alpha,Q(mat[0][1])*beta + ba,bb=Q(mat[1][0])*alpha,Q(mat[1][1])*beta + add(a,b,ab/aa,F);q=ba/(bb-ba*ab/aa);add(b,a,q,F) + add(v+t,a,-aa/2,hyper(P[t]));add(v+u,b,-(bb-ba*ab/aa)/2,hyper(P[u])) + +for t in range(v): + expected={s:-Q(G[t][s],2) for s in range(v) if s!=t and G[t][s] and s not in frame.values()} if t not in frame.values() else {} + assert rows[v+t]==expected,('side identity',t) + +scatter=[[Q(r[i],4) if t not in frame.values() else Q(0) for i in range(8)]+[Q(t==frame[i]) for i in range(8)] for t,r in enumerate(R)] +precondition=[] +for t,u,z in output_basis: + a,b=scatter[t].copy(),scatter[u].copy() + scatter[t]=[x/2-y/z for x,y in zip(a,b)] + scatter[u]=[x/2+y/z for x,y in zip(a,b)] + precondition.extend([['scale',v+u,(1/z).numerator,(1/z).denominator,[]], + ['add',v+u,v+t,1,2,[]],['add',v+t,v+u,-1,1,[]]]) +for r in range(len(cur)):climb(r,hyper(P[r-v]) if v<=r<2*v else FULL) +H[8]+=8;H[1]+=8 +assert sum(r*z for r,z in H.items())==9*NH+240*8+72,sum(r*z for r,z in H.items()) + +def apply(e,matrix): + if e[0]=='add': + _,t,s,a,b,*_=e;q=Q(a,b) + for j,x in list(matrix[s].items()): + z=matrix[t].get(j,Q(0))+q*x + if z:matrix[t][j]=z + else:matrix[t].pop(j,None) + else: + _,t,a,b,*_=e;q=Q(a,b);matrix[t]={j:q*x for j,x in matrix[t].items()} +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + e[-1]=list(FULL);return e +cut=[['add',v+t,centers[i],q.numerator,q.denominator,None] for t,row in enumerate(scatter) for i,q in enumerate(row) if q] +cleanup=[inverse(e) for e in reversed(A+B) if not v<=e[1]<2*v] +matrix=[{r:Q(1)} if r.json. Steps, each checked exactly: + 1. frames: build_frames.py (standard library only) applies the eight 'B' gate_frames with BlockInvert's + build_promotion.apply. Scalar program, start and end frames unchanged; profile, widths and output sha pinned; + three pin controls must be rejected (count pinned). + 2. frame-controls: frame_controls.py, PR741's ten focused mutants judged by PR635's unchanged native audit. + 3. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant) on the SW4F8 word; count pinned. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs, with the canonical word, local + programs and Clifford recipes pinned (LOCAL-PINS-frames-.json). +Apache-2.0. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +P6 = HERE.parent / 'layers_p6n' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--sw4-dir', type=Path, required=True, help='construction/sw4/reproduce_sw4.py output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--recipe', default='sw4', help='FRAME-RECIPE-.json and LOCAL-PINS-frames-.json') + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('FRAME-RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-frames-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + inp = a.sw4_dir.resolve() / 'sw4/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['input_content_sha256'], 'input must be the pinned SW4 word' + run('frames', HERE / 'build_frames.py', inp, out / 'frames', rfile, portable=False) + b = read(out / 'frames/BUILD.json') + assert b['status'] == 'PASS_EIGHT_FRAME_EXACT_CONSTRUCTION' and len(b['rejected_controls']) == pins['frame_build_controls'], b + word = out / 'frames/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['expected']['output_content_sha256'] + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('frame-controls', HERE / 'frame_controls.py', word, routing, out / 'FRAME-CONTROLS.json', rfile, portable=False) + fc = read(out / 'FRAME-CONTROLS.json') + assert fc['status'] == 'PASS_FOCUSED_EIGHT_FRAME_NATIVE_CONTROLS' and len(fc['rejected']) == pins['frame_controls'], len(fc['rejected']) + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/LOCAL-PINS-jx-X4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/LOCAL-PINS-jx-X4.json new file mode 100644 index 0000000000..417e4ba7a1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/LOCAL-PINS-jx-X4.json @@ -0,0 +1,11 @@ +{ + "word": "X4", + "jx_controls": 7, + "layer_controls": 95, + "canonical_sha256": "1c0e9da767d4418f70016af599e4a447a3f7777acabe930318459c0fbbd260aa", + "program_sha256": { + "forward": "076a2d428f97abb30473df05110998efbe5ac809885bae4ceb1b8bd81329a1e6", + "backward": "7915679ee305927463d19725360cc15132dd21ede18897d09a935dca1df0d55d" + }, + "clifford_recipes_sha256": "20dddfce0ded7e41dc507939df7297bd98aec1286e05d7dbf18000d57e69a0b7" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/RECIPE-X4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/RECIPE-X4.json new file mode 100644 index 0000000000..30f7fa5948 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/RECIPE-X4.json @@ -0,0 +1,1412 @@ +{ + "input_content_sha256": "d232183f233899961bf55cac67a18545ed33548d9a7ca7078990d1a83d557c59", + "input_word": "P6k4sw4 (BRoute w/P6k4sw4, d232183f)", + "frames_741_source": { + "pr": 741, + "commit": "e516b146", + "recipe": "scratch/WasteAttack/FRAME-RECIPE-741.json", + "frames_only_output_sha": "e78047028c7dcd25fb1b6216c2b53eda76d2f91292b21d43f5d1903cc13a5c6c" + }, + "frames_741": [ + [ + 856, + [ + 272, + 144, + 64, + 8, + 6, + 1 + ] + ], + [ + 860, + [ + 256, + 128, + 65, + 16, + 9, + 6 + ] + ], + [ + 868, + [ + 256, + 144, + 81, + 33, + 9, + 6 + ] + ], + [ + 873, + [ + 320, + 192, + 32, + 16, + 6, + 1 + ] + ], + [ + 876, + [ + 273, + 144, + 64, + 33, + 9, + 6 + ] + ], + [ + 953, + [ + 265, + 137, + 73, + 32, + 25, + 6 + ] + ], + [ + 961, + [ + 265, + 128, + 64, + 41, + 16, + 6 + ] + ], + [ + 965, + [ + 257, + 128, + 73, + 40, + 17, + 6 + ] + ] + ], + "raises": [ + [ + 855, + [ + 280, + 128, + 64, + 40, + 6, + 1 + ] + ], + [ + 859, + [ + 256, + 129, + 65, + 40, + 25, + 6 + ] + ], + [ + 862, + [ + 280, + 144, + 80, + 56, + 6, + 1 + ] + ], + [ + 863, + [ + 272, + 136, + 80, + 56, + 6, + 1 + ] + ], + [ + 867, + [ + 256, + 136, + 64, + 41, + 16, + 6 + ] + ], + [ + 870, + [ + 256, + 200, + 40, + 16, + 6, + 1 + ] + ], + [ + 875, + [ + 272, + 144, + 80, + 49, + 8, + 6 + ] + ], + [ + 942, + [ + 256, + 136, + 72, + 33, + 25, + 6 + ] + ], + [ + 943, + [ + 320, + 193, + 33, + 16, + 9, + 6 + ] + ], + [ + 946, + [ + 256, + 129, + 64, + 41, + 16, + 6 + ] + ], + [ + 947, + [ + 273, + 128, + 81, + 33, + 9, + 6 + ] + ], + [ + 950, + [ + 257, + 193, + 33, + 16, + 9, + 6 + ] + ], + [ + 954, + [ + 272, + 129, + 80, + 49, + 8, + 6 + ] + ], + [ + 955, + [ + 256, + 128, + 64, + 33, + 17, + 6 + ] + ], + [ + 958, + [ + 257, + 128, + 81, + 33, + 9, + 6 + ] + ], + [ + 962, + [ + 273, + 128, + 64, + 33, + 8, + 6 + ] + ] + ], + "edits": { + "replace": [ + { + "h": 448, + "i": 862, + "old": [ + "add", + 140, + 448, + -1, + 2 + ], + "new": [ + "add", + 140, + 235, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 448, + "i": 1207, + "old": [ + "add", + 133, + 448, + -1, + 2 + ], + "new": [ + "add", + 133, + 235, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 448, + "i": 870, + "old": [ + "add", + 132, + 235, + -1, + 2 + ], + "new": [ + "add", + 132, + 448, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 448, + "i": 1199, + "old": [ + "add", + 141, + 235, + -1, + 2 + ], + "new": [ + "add", + 141, + 448, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 472, + "i": 855, + "old": [ + "add", + 173, + 472, + -1, + 2 + ], + "new": [ + "add", + 173, + 267, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 472, + "i": 1198, + "old": [ + "add", + 140, + 472, + -1, + 2 + ], + "new": [ + "add", + 140, + 267, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 472, + "i": 863, + "old": [ + "add", + 141, + 267, + -1, + 2 + ], + "new": [ + "add", + 141, + 472, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 472, + "i": 1190, + "old": [ + "add", + 172, + 267, + -1, + 2 + ], + "new": [ + "add", + 172, + 472, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 458, + "i": 942, + "old": [ + "add", + 204, + 458, + 1, + 1 + ], + "new": [ + "add", + 204, + 58, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 458, + "i": 1287, + "old": [ + "add", + 197, + 458, + 1, + 1 + ], + "new": [ + "add", + 197, + 58, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 458, + "i": 950, + "old": [ + "add", + 196, + 58, + 1, + 1 + ], + "new": [ + "add", + 196, + 458, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 458, + "i": 1279, + "old": [ + "add", + 205, + 58, + 1, + 1 + ], + "new": [ + "add", + 205, + 458, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 592, + "i": 859, + "old": [ + "add", + 174, + 592, + -1, + 2 + ], + "new": [ + "add", + 174, + 427, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 592, + "i": 1278, + "old": [ + "add", + 204, + 592, + -1, + 2 + ], + "new": [ + "add", + 204, + 427, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 592, + "i": 943, + "old": [ + "add", + 205, + 427, + -1, + 2 + ], + "new": [ + "add", + 205, + 592, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 592, + "i": 1194, + "old": [ + "add", + 170, + 427, + -1, + 2 + ], + "new": [ + "add", + 170, + 592, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 470, + "i": 946, + "old": [ + "add", + 202, + 470, + 1, + 1 + ], + "new": [ + "add", + 202, + 26, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 470, + "i": 1295, + "old": [ + "add", + 165, + 470, + 1, + 1 + ], + "new": [ + "add", + 165, + 26, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 470, + "i": 958, + "old": [ + "add", + 164, + 26, + 1, + 1 + ], + "new": [ + "add", + 164, + 470, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 470, + "i": 1283, + "old": [ + "add", + 206, + 26, + 1, + 1 + ], + "new": [ + "add", + 206, + 470, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 604, + "i": 867, + "old": [ + "add", + 142, + 604, + -1, + 2 + ], + "new": [ + "add", + 142, + 443, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 604, + "i": 1282, + "old": [ + "add", + 202, + 604, + -1, + 2 + ], + "new": [ + "add", + 202, + 443, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 604, + "i": 947, + "old": [ + "add", + 206, + 443, + -1, + 2 + ], + "new": [ + "add", + 206, + 604, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 604, + "i": 1202, + "old": [ + "add", + 138, + 443, + -1, + 2 + ], + "new": [ + "add", + 138, + 604, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 482, + "i": 954, + "old": [ + "add", + 194, + 482, + 1, + 1 + ], + "new": [ + "add", + 194, + 18, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 482, + "i": 1299, + "old": [ + "add", + 166, + 482, + 1, + 1 + ], + "new": [ + "add", + 166, + 18, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 482, + "i": 962, + "old": [ + "add", + 162, + 18, + 1, + 1 + ], + "new": [ + "add", + 162, + 482, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 482, + "i": 1291, + "old": [ + "add", + 198, + 18, + 1, + 1 + ], + "new": [ + "add", + 198, + 482, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 614, + "i": 875, + "old": [ + "add", + 134, + 614, + 1, + 1 + ], + "new": [ + "add", + 134, + 50, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 614, + "i": 1290, + "old": [ + "add", + 194, + 614, + 1, + 1 + ], + "new": [ + "add", + 194, + 50, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 614, + "i": 955, + "old": [ + "add", + 198, + 50, + 1, + 1 + ], + "new": [ + "add", + 198, + 614, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 614, + "i": 1210, + "old": [ + "add", + 130, + 50, + 1, + 1 + ], + "new": [ + "add", + 130, + 614, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + } + ], + "delete": [ + { + "h": 448, + "i": 1, + "old": [ + "add", + 140, + 448, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 448, + "i": 0, + "old": [ + "add", + 133, + 448, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 472, + "i": 33, + "old": [ + "add", + 173, + 472, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 472, + "i": 32, + "old": [ + "add", + 140, + 472, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 458, + "i": 21, + "old": [ + "add", + 204, + 458, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 458, + "i": 20, + "old": [ + "add", + 197, + 458, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 592, + "i": 64, + "old": [ + "add", + 174, + 592, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 592, + "i": 65, + "old": [ + "add", + 204, + 592, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 470, + "i": 29, + "old": [ + "add", + 202, + 470, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 470, + "i": 28, + "old": [ + "add", + 165, + 470, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 604, + "i": 72, + "old": [ + "add", + 142, + 604, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 604, + "i": 73, + "old": [ + "add", + 202, + 604, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 482, + "i": 37, + "old": [ + "add", + 194, + 482, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 482, + "i": 36, + "old": [ + "add", + 166, + 482, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 614, + "i": 95, + "old": [ + "add", + 134, + 614, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 614, + "i": 96, + "old": [ + "add", + 194, + 614, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + } + ], + "insert": [ + { + "h": 448, + "before": 2, + "gate": [ + "add", + 132, + 448, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 448, + "before": 2, + "gate": [ + "add", + 141, + 448, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 472, + "before": 34, + "gate": [ + "add", + 141, + 472, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 472, + "before": 34, + "gate": [ + "add", + 172, + 472, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 458, + "before": 22, + "gate": [ + "add", + 196, + 458, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 458, + "before": 22, + "gate": [ + "add", + 205, + 458, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 592, + "before": 66, + "gate": [ + "add", + 205, + 592, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 592, + "before": 66, + "gate": [ + "add", + 170, + 592, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 470, + "before": 30, + "gate": [ + "add", + 164, + 470, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 470, + "before": 30, + "gate": [ + "add", + 206, + 470, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 604, + "before": 74, + "gate": [ + "add", + 206, + 604, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 604, + "before": 74, + "gate": [ + "add", + 138, + 604, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 482, + "before": 38, + "gate": [ + "add", + 162, + 482, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 482, + "before": 38, + "gate": [ + "add", + 198, + 482, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 614, + "before": 97, + "gate": [ + "add", + 198, + 614, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 614, + "before": 97, + "gate": [ + "add", + 130, + 614, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + } + ] + }, + "pairs": { + "448": 235, + "458": 58, + "470": 26, + "472": 267, + "482": 18, + "592": 427, + "604": 443, + "614": 50 + }, + "expected": { + "output_content_sha256": "1e1d99ba7aab877d6b573c41f7030ee73de9a52fee51d0a822ddaae71251999f", + "local_profile": { + "1": 2548, + "2": 338, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + } + }, + "controls": { + "C0_identity": { + "mutation": { + "kind": "empty" + }, + "expected_sha": "d232183f233899961bf55cac67a18545ed33548d9a7ca7078990d1a83d557c59", + "local_profile": { + "1": 2548, + "2": 342, + "3": 438, + "4": 186, + "5": 56, + "8": 8 + } + }, + "C1_741_only": { + "mutation": { + "kind": "only_edits_of", + "h": [], + "raises": [] + }, + "expected_sha": "e78047028c7dcd25fb1b6216c2b53eda76d2f91292b21d43f5d1903cc13a5c6c", + "local_profile": { + "1": 2556, + "2": 334, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + } + }, + "M1_one_pair_448": { + "mutation": { + "kind": "only_edits_of", + "h": [ + 448 + ], + "raises": [ + 862, + 870 + ] + }, + "expected_sha": "5fb6fb2e5e63d18b865535c1dbd3dbaddab530c39429a4b09f11ac96723257c9", + "local_profile": { + "1": 2556, + "2": 334, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + } + }, + "N1_drop_preread": { + "mutation": { + "kind": "drop_insert", + "k": 0 + }, + "rejection_expected": [ + "exactness rows", + [ + 132, + 135 + ] + ] + }, + "N2_wrong_sign_preread": { + "mutation": { + "kind": "flip_insert_sign", + "k": 0 + }, + "rejection_expected": [ + "exactness rows", + [ + 132, + 135 + ] + ] + }, + "N3_plain_join_moved_reads": { + "mutation": { + "kind": "drop_raises" + }, + "expected_sha": "7241cd59dd0376e0b2e1b5ba8403c5423d247ddd7cbcc2f02bdc353752806f30", + "local_profile": { + "1": 2532, + "2": 378, + "3": 430, + "4": 178, + "5": 56, + "8": 8 + } + }, + "N4_raise_dim7_at_855": { + "mutation": { + "kind": "frame", + "i": 855, + "frame": [ + 280, + 128, + 64, + 40, + 4, + 2, + 1 + ] + }, + "rejection_expected": [ + "cap", + 1302, + 174 + ] + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/build_jx.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/build_jx.py new file mode 100644 index 0000000000..f8d74a6324 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/build_jx.py @@ -0,0 +1,167 @@ +#!/usr/bin/env python3 +"""build_jx.py --input WORD --recipe RECIPE.json --out OUT.json.gz [--control NAME] [--no-pin] + +Stdlib-only builder: joint read-set exchange (copy pairs, BRoute sw4 rule) + explicit B frame raises on P6k4sw4. +Steps: + 1. input content sha256 must equal recipe.input_content_sha256. + 2. explicit B edits: replace (old gate asserted), delete (old gate asserted), insert (before an original index). + 3. frames: replaced/inserted gates take the plain join of their operands' current frames; gates listed in + frames_741 / raises take base = the listed frame and the resulting frame must EQUAL it (explicit frames); + every other gate keeps span(stored frame + operand frames) (monotone repair). Early cleanup likewise. + 4. legality: target frames inside u_t^perp at every gate; tails inside helper_final; every end frame contains the + final frame; the explicit frame must contain the join (enforced by equality in 3). + 5. exactness: the rational linear map of the whole B segment is identical to the input's (Fraction replay). + 6. paid profile recomputed (A + centre levels + B + tails + ends) and written to report.local_profile. +Output: canonical json (sort_keys, compact) gzip mtime=0. Exit 0 and prints output sha; exit 2 with the first +rejection (site) on failure. --control applies a named mutation from recipe.controls (expected to be rejected +or to give a pinned sha).""" +import argparse, gzip, json, hashlib, sys, copy +from fractions import Fraction as Fr +from collections import Counter + +V, H = 112, 9 + +def basis(vs): + piv = {} + for a in vs: + while a: + b = a.bit_length() - 1 + if b in piv: a ^= piv[b] + else: piv[b] = a; break + for k in sorted(piv): + for j in sorted(piv): + if j > k and (piv[j] >> k) & 1: piv[j] ^= piv[k] + return tuple(piv[k] for k in sorted(piv, reverse=True)) + +def contained(a, b): return basis(list(a) + list(b)) == tuple(b) +def registers(e): return e[1:3] if e[0] == 'add' else e[1:2] +def hyper(p): return basis([x for x in range(1, 1 << H) if (x & p).bit_count() % 2 == 0]) +FULL = basis([1 << i for i in range(H)]) +def csha(w): return hashlib.sha256(json.dumps(w, sort_keys=True, separators=(',', ':')).encode()).hexdigest() + +class Reject(Exception): pass + +def symstate(gs): + rows = {} + for e in gs: + for q in registers(e): rows.setdefault(q, {q: Fr(1)}) + if e[0] == 'add': + t, s = e[1], e[2]; c = Fr(e[3], e[4]); d = rows[t] + for k, x in list(rows[s].items()): + a = d.get(k, 0) + c * x + if a: d[k] = a + else: d.pop(k, None) + else: + t = e[1]; c = Fr(e[2], e[3]); rows[t] = {k: c * x for k, x in rows[t].items()} + return rows + +def build(w, rc, control=None): + w = copy.deepcopy(w); B0 = w['B'] + edits = copy.deepcopy(rc['edits']); explicit = {int(i): f for i, f in rc['frames_741']} + for i, f in rc['raises']: + if int(i) in explicit: raise Reject(('duplicate frame', i)) + explicit[int(i)] = f + if control: + c = rc['controls'][control]['mutation'] + if c['kind'] == 'drop_insert': edits['insert'] = [x for k, x in enumerate(edits['insert']) if k != c['k']] + elif c['kind'] == 'flip_insert_sign': edits['insert'][c['k']]['gate'][3] *= -1 + elif c['kind'] == 'frame': explicit[c['i']] = c['frame'] + elif c['kind'] == 'drop_edits': edits = dict(replace=[], delete=[], insert=[]) + elif c['kind'] == 'drop_raises': explicit = {int(i): f for i, f in rc['frames_741']} + elif c['kind'] == 'only_edits_of': + hs = set(c['h']) + edits = {k: [x for x in v if x['h'] in hs] for k, v in edits.items()} + explicit = {i: f for i, f in explicit.items() if i in {int(j) for j, _ in rc['frames_741']} or i in set(c['raises'])} + elif c['kind'] == 'empty': edits = dict(replace=[], delete=[], insert=[]); explicit = {} + else: raise SystemExit('unknown control') + B = [list(e) for e in B0]; tag = set(); dele = set(); ins = {} + for x in edits['replace']: + i = x['i'] + if B[i][:-1] != x['old']: raise Reject(('replace old mismatch', i)) + B[i] = list(x['new']) + [B[i][-1]]; tag.add(i) + for x in edits['delete']: + i = x['i'] + if B[i][:-1] != x['old']: raise Reject(('delete old mismatch', i)) + dele.add(i) + for x in edits['insert']: ins.setdefault(x['before'], []).append(list(x['gate']) + [None]) + NB, nt, key = [], set(), [] + for i, e in enumerate(B): + for g in ins.get(i, []): nt.add(len(NB)); NB.append(g); key.append(None) + if i in dele: continue + if i in tag: nt.add(len(NB)) + NB.append(e); key.append(i) + # frames + paid + R = w['report']['R']; n = 2 * V + R + END = [FULL] * V + [hyper(p) for p in w['ports']] + [FULL] * R + for q, U in w['helper_final'].items(): END[int(q)] = basis(U) + cur = [(p,) for p in w['ports']] + [()] * (V + R) + for q, U in w['start_extra'].items(): cur[int(q)] = basis(U) + paid = Counter() + for e in w['A']: + for q in registers(e): + U = basis(e[-1]); d = len(U) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = U + lev = {int(t): basis(U) for t, U in w.get('target_levels', {}).items()} + for q, U in zip(w['centers'], w['center_frames']): + U = basis(U); served = {lev.get(e[1] - V, ()) for e in w['cut'] if e[2] == q} + for T in sorted(served, key=lambda x: -len(x)): + if T != U: paid[len(U) - len(T)] += 1 + U = T + used = set() + for j, e in enumerate(NB): + rs = registers(e); k = key[j] + if k is not None and k in explicit: base = list(explicit[k]); used.add(k) + elif j in nt or e[-1] is None: base = [] + else: base = list(e[-1]) + F = basis(base + [x for q in rs for x in cur[q]]) + if k is not None and k in explicit and F != basis(explicit[k]): raise Reject(('explicit frame below join', k)) + for q in rs: + if V <= q < 2 * V and not contained(F, END[q]): raise Reject(('cap', j, q)) + d = len(F) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = F + NB[j] = list(e[:-1]) + [list(F)] + if used != set(explicit): raise Reject(('unused explicit frame', sorted(set(explicit) - used))) + newearly = [] + for i, U in w['early_cleanup']: + rs = registers(w['cleanup'][i]); F = basis(list(U) + [x for q in rs for x in cur[q]]) + for q in rs: + if w['helper_final'].get(str(q)) is not None and not contained(F, END[q]): raise Reject(('tailend', i, q)) + d = len(F) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = F + newearly.append([i, list(F)]) + for q in range(n): + if not contained(cur[q], END[q]): raise Reject(('end', q)) + d = len(END[q]) - len(cur[q]) + if d: paid[d] += 1 + # exactness of the B segment + a, b = symstate([e[:-1] for e in B0]), symstate([e[:-1] for e in NB]) + bad = sorted(q for q in set(a) | set(b) if a.get(q, {q: Fr(1)}) != b.get(q, {q: Fr(1)})) + if bad: raise Reject(('exactness rows', bad)) + w['B'] = NB; w['early_cleanup'] = newearly + w['report'] = dict(w['report']); w['report']['local_profile'] = {str(k): v for k, v in sorted(paid.items())} + return w + +def main(): + ap = argparse.ArgumentParser(); ap.add_argument('--input', required=True); ap.add_argument('--recipe', required=True) + ap.add_argument('--out'); ap.add_argument('--control'); ap.add_argument('--no-pin', action='store_true') + a = ap.parse_args() + w = json.loads(gzip.decompress(open(a.input, 'rb').read())); rc = json.load(open(a.recipe)) + if csha(w) != rc['input_content_sha256']: print('REJECT input pin'); sys.exit(2) + pin = rc['controls'][a.control].get('rejection_expected') if a.control else None + try: o = build(w, rc, a.control) + except Reject as r: + got = json.loads(json.dumps(r.args[0])); print('REJECT', json.dumps(got)) + if pin is not None: + print('CONTROL', 'PINNED' if got == pin else 'PIN MISMATCH %s' % json.dumps(pin)); sys.exit(0 if got == pin else 4) + sys.exit(2) + if pin is not None and not a.no_pin: print('CONTROL NOT REJECTED, pinned', json.dumps(pin)); sys.exit(4) + s = csha(o) + exp = rc['controls'][a.control].get('expected_sha') if a.control else rc['expected']['output_content_sha256'] + print('OK', s, o['report']['local_profile']) + if a.out: open(a.out, 'wb').write(gzip.compress(json.dumps(o, sort_keys=True, separators=(',', ':')).encode(), mtime=0)) + if not a.no_pin and exp and s != exp: print('REJECT output pin', exp); sys.exit(3) + +if __name__ == '__main__': main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/reproduce_jx.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/reproduce_jx.py new file mode 100644 index 0000000000..6829a1b25d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/jx/reproduce_jx.py @@ -0,0 +1,99 @@ +#!/usr/bin/env python3 +"""Rebuild the X4 word (JointXF: joint read-set exchange on four further copy-pair instances plus explicit B frame +raises, including chafreaky's PR741 eight frames) and its native locals. + +Input: a fresh `construction/sw4/reproduce_sw4.py --recipe P6k4` output directory; its SW4 word (d232183f...) is pinned +there and by RECIPE-X4.json. Steps, each checked exactly: + 1. jx: build_jx.py (standard library only; JointXF) applies the recipe's explicit B edits (replace / delete / insert, + each old gate asserted), the PR741 frames and the explicit raises, repairs all other frames monotonically, checks + target frames inside u_t^perp, tails and ends, and the exactness of the whole B segment (rational replay), and + pins the output sha. + 2. jx-controls: every control in the recipe is rebuilt and must reproduce its pinned outcome exactly: a pinned + rejection site (exit 0 with CONTROL PINNED) or a pinned output sha. C1_741_only must reproduce PR741's word + e78047028c... (the construction/frames step's output); C0_identity reproduces the input. + 3. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant) on the X4 word; count pinned. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs; canonical word, local programs + and Clifford recipes pinned (LOCAL-PINS-jx-X4.json). +Apache-2.0. Driver by ColdWitness around JointXF's builder. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +P6 = HERE.parent / 'layers_p6n' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--sw4-dir', type=Path, required=True, help='construction/sw4/reproduce_sw4.py output') + ap.add_argument('--recipe', default='X4', help='RECIPE-.json and LOCAL-PINS-jx-.json') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-jx-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True, ok=(0,)): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc in ok, (label, rc) + print('PASS', label, flush=True) + return (out / (label + '.log')).read_text() + + inp = a.sw4_dir.resolve() / 'sw4/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['input_content_sha256'], 'input must be the pinned SW4 word' + (out / 'jx').mkdir(); word = out / 'jx/FULL-WORD.json.gz' + run('jx', HERE / 'build_jx.py', '--input', inp, '--recipe', rfile, '--out', word, portable=False) + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['expected']['output_content_sha256'] + assert len(rec['controls']) == pins['jx_controls'], len(rec['controls']) + results = {} + for name, c in sorted(rec['controls'].items()): + log = run('jx-control-' + name, HERE / 'build_jx.py', '--input', inp, '--recipe', rfile, '--control', name, portable=False) + if 'rejection_expected' in c: + assert 'CONTROL PINNED' in log, (name, log[-300:]); results[name] = dict(rejected=c['rejection_expected']) + else: + assert ('OK ' + c['expected_sha']) in log, (name, log[-300:]); results[name] = dict(sha=c['expected_sha']) + assert rec['controls']['C1_741_only']['expected_sha'] == rec['frames_741_source']['frames_only_output_sha'] + (out / 'JX-CONTROLS.json').write_text(json.dumps(dict(status='PASS_JX_PINNED_CONTROLS', controls=results), indent=1) + '\n') + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/build_pivot_swap.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/build_pivot_swap.py new file mode 100644 index 0000000000..b225601c01 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/build_pivot_swap.py @@ -0,0 +1,160 @@ +"""Cost-neutral pivot-role swaps inside existing entrance-kernel families. Apache-2.0. Prepared with Claude Code +assistance. The pivot/donor role exchange follows PR266's "pivot role is moved" idea (bit side), applied here to the +complex supplier's multicut kernel families (PR568 build_multicut_kernels.py shape). + +A kernel family on the input word is an entering helper p (start_extra E) together with the gates that read p at frame +E before any other touch of p: d += c_d * p @E (d a helper or, in B, a target). They cancel p's complete dirty +response: col(p) + sum_d c_d * col_{g_d}(d) = 0, where col_{g}(d) is d's suffix response from gate g on. + +Swap to the new pivot x (a helper donor of the family with exactly one family gate g_x = x's FIRST touch, and no other +touch of x up to the family's last gate): + g_x : x += c_x p -> p += (1/c_x) x + g_d : d += c_d p -> d += (c_d/c_x) x (d != x, same position and frame E) + start_extra: p -> x (same E); cleanup regenerated by the inherited inverse rule. +Exactness (PROOF-NOTE-PIVOT.md): x holds only its initial dirt at every rewritten gate, and p holds only its initial dirt +until g_x, so x's new response is col(x) + col(p)/c_x + sum_d (c_d/c_x) col_{g_d}(d) = (c_x col(x) + col(p) + +sum_d c_d col_{g_d}(d)) / c_x = 0, because col(x) = col_{g_x}(x). This script checks it by exact rational replay anyway. +Cost: the frame chains of p and x are exchanged (p now climbs [] -> E at g_x where x did; x starts at E where p did), so +gk_word.profile and the width multiset are unchanged; both are asserted. + +Recipe: {input_content_sha256, output_content_sha256, swaps: [{pivot, new_pivot, entrance, gates: [{part, index, +before, after}]}]}. Every expected `after` gate is recomputed from the rule above and must equal the recipe. + +Negative controls (--controls): mutated recipes/words that must be rejected at pinned reasons: + * nonzero response: another family gate's rescaled coefficient has the wrong sign; + * wrong pivot coefficient: g_x's new coefficient doubled; + * wrong entrance: the recipe's entrance is not p's start_extra; + * non-family gate: a recipe gate whose `before` is not the word's gate; + * new pivot touched in the window: x replaced by a family donor that is not a fresh helper (a target donor, or the + first other helper donor when the family has no target donor). +""" +from pathlib import Path +from collections import Counter +from fractions import Fraction as Q +import argparse, copy, gzip, hashlib, json, sys +assert __debug__, 'Assertions required' +ap = argparse.ArgumentParser() +for k in ('--input', '--recipe', '--gk-dir', '--out'): ap.add_argument(k, type=Path, required=True) +a = ap.parse_args(); assert not a.out.exists() +sys.path.insert(0, str(a.gk_dir)); import gk_word as G, gk_common as C +G.V = C.V = 112; G.DATA = C.DATA = 7168 +V = 112 +raw = json.loads(gzip.decompress(a.input.read_bytes())); recipe = json.loads(a.recipe.read_text()) +enc = lambda x: json.dumps(x, sort_keys=True, separators=(',', ':')).encode(); sha = lambda x: hashlib.sha256(x).hexdigest() +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +inv_rule = lambda w: [G.inverse(e, G.FULL) for e in reversed(w['A'] + w['B']) if not V <= e[1] < 2 * V] +dy = lambda q: q != 0 and q.denominator & (q.denominator - 1) == 0 + + +def response(w, h): + rows = {} + def get(r): return rows.setdefault(r, {r: Q(1)}) + for e in w['A'] + w['cut'] + w['B']: + if e[0] == 'scale': + q = Q(e[2], e[3]); rows[e[1]] = {j: q * x for j, x in get(e[1]).items()} + else: + t, s = e[1], e[2]; q = Q(e[3], e[4]); src = get(s); tgt = get(t) + for j, x in list(src.items()): + z = tgt.get(j, Q(0)) + q * x + if z: tgt[j] = z + else: tgt.pop(j, None) + return {r: rows[r][h] for r in range(V, 2 * V) if r in rows and rows[r].get(h)} + + +def build(w0, rec): + w = copy.deepcopy(w0); n = 2 * V + w['report']['R'] + assert w['cleanup'] == inv_rule(w), 'input cleanup is not the inherited inverse rule' + P0 = G.profile(w); W0 = Counter(C.widths_of(w)) + AB = [('A', i) for i in range(len(w['A']))] + [('B', i) for i in range(len(w['B']))] + pos = {k: j for j, k in enumerate(AB)} + seen = set(); receipts = []; rules = [] + for s in rec['swaps']: + p, x, E = s['pivot'], s['new_pivot'], s['entrance'] + assert 2 * V <= p < n and w['start_extra'].get(str(p)) == E, 'pivot is not an entering helper at the entrance' + assert 2 * V <= x < n and x not in w['centers'], 'new pivot must be a helper' + assert str(x) not in w['start_extra'], 'new pivot already entering' + assert not {p, x} & seen, 'registers shared between swaps'; seen |= {p, x} + gs = s['gates']; ks = [pos[(g['part'], g['index'])] for g in gs] + assert ks == sorted(ks) and len(set(ks)) == len(ks) + for g in gs: + e = w[g['part']][g['index']] + assert e == g['before'], 'recipe gate is not the word gate' + assert e[0] == 'add' and e[2] == p and e[1] != p and list(e[-1]) == list(E), 'not a family gate (d += c p @E)' + touch = lambda r: [j for j, (part, i) in enumerate(AB) if r in regs(w[part][i])] + tp = touch(p); assert tp[:len(ks)] == ks, 'family gates must be all touches of the pivot up to its first other touch' + gx = [k for k, g in zip(ks, gs) if g['before'][1] == x]; assert len(gx) == 1, 'new pivot must have exactly one family gate' + tx = touch(x); assert tx[0] == gx[0], 'new pivot touched before its family gate' + assert len(tx) == 1 or tx[1] > ks[-1], 'new pivot touched inside the family window' + cx = Q(*[g['before'][3:5] for g in gs if g['before'][1] == x][0]) + for g in gs: + d, f = g['before'][1], g['after'] + assert f[0] == 'add' and list(f[-1]) == list(E) and (f[1:3] == [p, x] if d == x else f[1:3] == [d, x]), 'after-gate shape' + assert dy(Q(f[3], f[4])), 'non-dyadic swapped coefficient' + w[g['part']][g['index']] = f + q = 1 / cx if d == x else Q(g['before'][3], g['before'][4]) / cx + rules.append((f, ['add', p, x, q.numerator, q.denominator, list(E)] if d == x else ['add', d, x, q.numerator, q.denominator, list(E)])) + w['start_extra'][str(x)] = w['start_extra'].pop(str(p)) + receipts.append(dict(pivot=p, new_pivot=x, entrance=E, family_gates=len(gs))) + w['cleanup'] = inv_rule(w) + for s in rec['swaps']: + assert not response(w, s['new_pivot']), 'new pivot dirty response not zero' + assert all(f == e for f, e in rules), 'recipe after-gate is not the swap rule' + P1 = G.profile(w) + assert P1 == P0, 'paid profile not identical (swap is not cost-neutral)' + assert Counter(C.widths_of(w)) == W0, 'width multiset changed' + w['report']['local_profile'] = {str(k): v for k, v in sorted(P1.items())} + w['report']['local_rank_mass'] = sum(k * v for k, v in P1.items()) + return w, receipts + + +assert sha(enc(raw)) == recipe['input_content_sha256'], 'input content' +out, receipts = build(raw, recipe) +o = enc(out); assert sha(o) == recipe['output_content_sha256'], sha(o) + +# ---- negative controls ------------------------------------------------------------------------------------------- +WHY = dict(nonzero='new pivot dirty response not zero', coef='new pivot dirty response not zero', + entrance='paid profile not identical', nonfamily='recipe gate is not the word gate', + window='new pivot') +controls = [] + + +def reject(name, mut, why): + r = copy.deepcopy(recipe); w = copy.deepcopy(raw) + mut(r, w) + try: + build(w, r) + except AssertionError as ex: + msg = str(ex) + assert why in msg, ('control rejected for the wrong reason', name, msg) + controls.append(dict(control=name, reason=msg)); return + raise AssertionError('control accepted: ' + name) + + +for si, s in enumerate(recipe['swaps']): + x = s['new_pivot']; tag = '%d->%d' % (s['pivot'], x) + def m_other(r, w, si=si): + g = [g for g in r['swaps'][si]['gates'] if g['before'][1] != r['swaps'][si]['new_pivot']][0] + g['after'] = list(g['after']); g['after'][3] = -g['after'][3] + def m_coef(r, w, si=si): + g = [g for g in r['swaps'][si]['gates'] if g['before'][1] == r['swaps'][si]['new_pivot']][0] + g['after'] = list(g['after']); g['after'][3] *= 2 + def m_nonfamily(r, w, si=si): + g = r['swaps'][si]['gates'][0]; g['before'] = list(g['before']); g['before'][3] = -g['before'][3] + def m_window(r, w, si=si): + S = r['swaps'][si]; S['new_pivot'] = [g['before'][1] for g in S['gates'] if g['before'][1] != S['new_pivot']][0] + def m_entrance(r, w, si=si): + S = r['swaps'][si]; S['entrance'] = [1] + reject('swap %s: another family gate keeps a wrong (unrescaled-sign) coefficient: new pivot response nonzero' % tag, m_other, WHY['nonzero']) + reject('swap %s: wrong pivot coefficient (1/c doubled) on the new pivot gate' % tag, m_coef, WHY['coef']) + reject('swap %s: non-family gate in the recipe' % tag, m_nonfamily, WHY['nonfamily']) + reject('swap %s: new pivot replaced by another family donor (not a fresh cold helper)' % tag, m_window, WHY['window']) + reject('swap %s: wrong entrance frame for the moved entrance' % tag, m_entrance, 'pivot is not an entering helper at the entrance') +controls_receipt = list(controls) + +a.out.mkdir(parents=True); (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(o, mtime=0)) +rc = dict(status='PASS_COST_NEUTRAL_PIVOT_SWAPS', input_content_sha256=recipe['input_content_sha256'], + output_content_sha256=recipe['output_content_sha256'], swaps=receipts, local_profile=out['report']['local_profile'], + negative_controls_rejected=controls_receipt, + scope='Exact family rewrite, exact zero dirty response of every new pivot, identical paid profile and widths, ' + 'regenerated inverse-rule cleanup. Native all-column audit, HPE/cold steps and global checks remain separate.') +(a.out / 'PIVOT-SWAP.json').write_text(json.dumps(rc, indent=2, sort_keys=True) + '\n', newline='\n'); print(json.dumps(rc, indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/layer_end_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/layer_end_controls.py new file mode 100644 index 0000000000..317da36d95 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/layer_end_controls.py @@ -0,0 +1,201 @@ +"""layer_end_controls.py LAYERED-WORD.json.gz ROUTING OUTDIR (env PR635_CODE): adapted PR635 cold_end_controls.py (LayerReviewer): raw-word negative controls for the cold low-frame ends and the +refactored cleanup accepted by hpe_audit_and_transport.py. Every mutation MUST be rejected (AssertionError); the +unmutated word MUST pass. Apache-2.0. DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code.""" +import copy, gzip, json, shutil, sys, tempfile +from pathlib import Path +import os +sys.path.insert(0, os.environ['PR635_CODE']) # PR635's unchanged hpe_audit_and_transport.py +import hpe_audit_and_transport as atc + +src, routing, outdir = Path(sys.argv[1]), Path(sys.argv[2]), Path(sys.argv[3]) +word = json.load(gzip.open(src)) +v, R = word['report']['v'], word['report']['R']; n = 2*v + R +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +meta = word['refactored_cleanup'] +cold = [int(h) for h in meta['cold_low_frame_ended_helpers']] +npre = meta['premix_gates']; nlow = meta['lower_frame_gates'] +early = word['early_cleanup']; eidx = {i for i, _ in early} +rest = [i for i in range(len(word['cleanup'])) if i not in eidx] + + +def trial(w): + """None if the transport audit accepts w, else the AssertionError message.""" + tmp = Path(tempfile.mkdtemp()) + p = tmp/'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w).encode(), mtime=0)) + try: + atc.run(p, routing, tmp/'out') + return None + except AssertionError as e: + return repr(e.args[0]) if e.args else 'AssertionError' + finally: + shutil.rmtree(tmp, ignore_errors=True) + + +# Pinned rejection reasons: each mutant must fail at this assertion of hpe_audit_and_transport.py (message substring). +ENDPOINT, COLDPRE, CONE = "'arbitrary-dirt endpoint'", 'touches a cold hyperplane-ended helper', 'hpe cone pre-check (row / column)' +WHY = dict(premix_to_precondition=COLDPRE, premix_dropped=COLDPRE, e_premix_dropped=ENDPOINT, lower_dropped=ENDPOINT, + remainder_dropped=ENDPOINT, coefficient=ENDPOINT, into_full='cleanup on non-FULL end', dyadic=ENDPOINT, frame_below="'nonmonotone'", + nonmonotone="'nonmonotone'", other_frame=CONE, cone=CONE, extra_end=COLDPRE, marker='cleanup is not the literal reversed inverse', + target='refactored cleanup touches a target', profile_pin='paid local profile differs from the reported local_profile', + entering_precondition='zero-frame precondition/compensation touches an entering helper') +assert trial(word) is None, 'unmutated cold-end word must pass' +results = [] + + +def reject(name, mut, why): + """the mutation must be rejected, and for the pinned reason (a substring of the audit's assertion message).""" + w = copy.deepcopy(word); mut(w) + msg = trial(w) + assert msg is not None, 'cold-end mutation accepted: ' + name + assert why in msg, 'cold-end mutation %r rejected for the wrong reason: %s' % (name, msg[:300]) + results.append(name); print('rejected', name, '|', why, flush=True) + + +h0 = cold[0] +i0, U0 = next((i, f) for i, f in early if h0 in regs(word['cleanup'][i])) +r0 = rest[len(rest)//2] + + +def premix_to_precondition(w): # premix before the wrappers; compensation then reads the cold ends + w['precondition'] = w['precondition'] + w['A'][:npre]; w['A'] = w['A'][npre:] + + +def lower_gate_into_full(w): # a lower-frame gate on a cold-ended helper executed in the FULL remainder instead + w['early_cleanup'] = [x for x in w['early_cleanup'] if x[0] != i0] + + +def drop_cleanup_gate(w, i): # remove the gate AND its early_cleanup entry: a structurally valid word missing one gate + w['cleanup'].pop(i) + w['early_cleanup'] = [[j - (j > i), f] for j, f in w['early_cleanup'] if j != i] + + +def other_frame(w): # a different frame of the same dimension as the cold end (another cold helper's) + f = next(w['helper_final'][str(h)] for h in cold if w['helper_final'][str(h)] != w['helper_final'][str(h0)]) + w['helper_final'][str(h0)] = f + + +def extra_cold_end(w): # declare a premixed partner of h0 cold-ended at h0's frame: fails the row/column cone + p = next(r for e in w['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + w['helper_final'][str(p)] = w['helper_final'][str(h0)] + + +reject('premix placed in the zero-frame precondition (before the cold wrappers)', premix_to_precondition, WHY['premix_to_precondition']) +reject('one premix gate dropped (the compensation then reads a cold-ended helper)', lambda w: w['A'].pop(npre - 1), WHY['premix_dropped']) +reject('one lower-frame cleanup gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, i0), WHY['lower_dropped']) +reject('one FULL-remainder gate dropped', lambda w: drop_cleanup_gate(w, r0), WHY['remainder_dropped']) +reject('lower-frame gate coefficient changed', lambda w: w['cleanup'][i0].__setitem__(3, w['cleanup'][i0][3] * 2), WHY['coefficient']) +reject('lower-frame gate moved into the FULL remainder (touches a cold-ended helper at FULL)', lower_gate_into_full, WHY['into_full']) +reject('lower-frame gate frame below its registers\' frames', lambda w: next(x for x in w['early_cleanup'] if x[0] == i0).__setitem__(1, U0[:-1]), WHY['frame_below']) +reject('cold end at another dim-4 frame', other_frame, WHY['other_frame']) +# PROFILE-PIN control: without its helper_final entry the cold-ended helper is a valid FULL-ended helper; the word is +# rejected because its reported paid profile (which counts the low end) no longer matches the frame chains. +reject('profile pin: cold end dropped (valid FULL end, but the reported profile counts the low end)', lambda w: w['helper_final'].pop(str(h0)), WHY['profile_pin']) +reject('extra cold end on a premixed partner (the compensation reads it before its wrapper)', extra_cold_end, WHY['extra_end']) +reject('refactored-cleanup marker removed (literal-inverse rule applies)', lambda w: w.pop('refactored_cleanup'), WHY['marker']) +reject('remainder gate retargeted to a target register', lambda w: w['cleanup'][r0].__setitem__(1, v + 3), WHY['target']) +reject('non-dyadic remainder coefficient', lambda w: w['cleanup'][r0].__setitem__(4 if w['cleanup'][r0][0] == 'add' else 3, 3 * w['cleanup'][r0][4 if w['cleanup'][r0][0] == 'add' else 3]), WHY['dyadic']) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('5', w['report']['local_profile']['5'] - 1), WHY['profile_pin']) +ent = [int(h) for h in sys.argv[4].split(',')] if len(sys.argv) > 4 else [int(h) for h in meta.get('entering_low_frame_ended_helpers', [])] +for e0 in ent: # ENTERING LOW-FRAME ENDS (ColdSupply extension; every entering end; absent for words without them) + j0 = next((i for i, e in enumerate(word['A'][:npre]) if e0 in regs(e)), None) + print('entering end', e0, 'premix gate', j0, flush=True) + k0, Ue = next((i, f) for i, f in early if e0 in regs(word['cleanup'][i])) + def to_pre(w, j0=j0): w['precondition'].append(w['A'][j0]); w['A'].pop(j0) + def other_hp(w, e0=e0, Ue=Ue): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Ue) and sorted(f) != sorted(Ue)) + if j0 is not None: reject('entering end %d: premix gate dropped' % e0, lambda w, j0=j0: w['A'].pop(j0), WHY['e_premix_dropped']) + if j0 is not None: reject('entering end %d: premix gate at frame [] instead of its entrance E' % e0, lambda w, j0=j0: w['A'][j0].__setitem__(-1, []), WHY['nonmonotone']) + if j0 is not None: reject('entering end %d: premix gate moved into the zero-frame precondition' % e0, to_pre, WHY['entering_precondition']) + reject('entering end %d: lower-frame gate dropped (gate and its early_cleanup entry)' % e0, lambda w, k0=k0: drop_cleanup_gate(w, k0), WHY['lower_dropped']) + reject('entering end %d: profile pin: end dropped (valid FULL end, but the reported profile counts the low end)' % e0, lambda w, e0=e0: w['helper_final'].pop(str(e0)), WHY['profile_pin']) + reject('entering end %d: end at another hyperplane' % e0, other_hp, WHY['cone']) +# Pinned rejection reasons of the COLD-BEYOND mutants (substrings of hpe_audit_and_transport.py assertion messages). +MYWHY = dict(tw_precondition=COLDPRE, tw_dropped=COLDPRE, tw_coefficient=COLDPRE, tw_other_block=COLDPRE, + tw_entering='zero-frame compensation reads an entering helper', + ab_dropped=ENDPOINT, ab_coefficient=ENDPOINT, ab_early=ENDPOINT, ab_live=ENDPOINT, ab_centre=ENDPOINT, + ab_lower="'nonmonotone'", ab_higher="'nonmonotone'", + sh_dropped=ENDPOINT, sh_coefficient=ENDPOINT, rel_dropped=ENDPOINT, rel_coefficient=ENDPOINT, rel_live=ENDPOINT, + h8_other=CONE, h8_lower=ENDPOINT) +# COLD-BEYOND primitives (present only when the word carries them): frame-[] target writes in the premix (explicit +# post-wrapper compensation of an ended helper's dirt) and forward absorptions into dead registers. +nw = meta.get('premix_target_writes', 0) +if nw: + wi = [i for i in range(npre) if v <= word['A'][i][1] < 2*v] + assert len(wi) == nw + + def writes_to_precondition(w): # the target writes run before the cold wrappers (inside the zero-frame precondition) + g = [w['A'][i] for i in wi]; w['precondition'] = w['precondition'] + g + w['A'] = [e for i, e in enumerate(w['A']) if i not in set(wi)] + reject('premix target writes placed in the zero-frame precondition (before the cold wrappers)', writes_to_precondition, MYWHY['tw_precondition']) + reject('one premix target write dropped (compensation must read an ended helper)', lambda w: w['A'].pop(wi[0]), MYWHY['tw_dropped']) + reject('premix target write coefficient changed', lambda w: w['A'][wi[0]].__setitem__(3, w['A'][wi[0]][3] * 2), MYWHY['tw_coefficient']) + # (reading another register that carries the SAME weight of the ended helper's dirt is a valid variant, so the mutant reads + # the same factory slot of the next block, which carries none of it) + entering_regs = sorted(int(r) for r in word.get('start_extra', {})) + reject('premix target write reads an entering helper', lambda w: w['A'][wi[0]].__setitem__(2, entering_regs[0]), MYWHY['tw_entering']) + reject('premix target write reads a cold helper of another block', lambda w: w['A'][wi[0]].__setitem__(2, 2*v + (w['A'][wi[0]][2] - 2*v + 16) % 224), MYWHY['tw_other_block']) +ab = meta.get('forward_absorption_A_indices', []) +if any(len(word['helper_final'][str(h)]) == 8 for h in cold): + # with dim-8 cold ends, the centre-retargeted absorption first leaks an ended helper's dirt into the cut's targets + MYWHY['ab_centre'] = COLDPRE +if ab: + # the ColdBeyond U_b absorption (q += -1/2 g); ColdThird's extra absorptions have their own controls below + a0 = next(a for a in ab if word['A'][a][3] * 2 == -word['A'][a][4]); g0 = word['A'][a0] + + def absorption_moved_early(w): # absorbed before the absorbed register's last kernel write + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[2] == w['A'][i][1] and w['A'][i][-1] == g0[-1]) + w['A'].insert(j, e) + + def absorption_into_live(w): # q += a g moved right after g's previous frame-mate gate, while q is still live + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[1] in regs(w['A'][i])) + w['A'].insert(j, e) + reject('forward absorption dropped', lambda w: w['A'].pop(a0), MYWHY['ab_dropped']) + reject('forward absorption into a centre (a live register read by the cut)', lambda w: w['A'][a0].__setitem__(1, next(c for c in word['centers'] if c not in g0[1:3] and c not in cold)), MYWHY['ab_centre']) + reject('forward absorption coefficient changed', lambda w: w['A'][a0].__setitem__(3, w['A'][a0][3] * 2), MYWHY['ab_coefficient']) + reject('forward absorption placed before the absorbed register\'s last kernel write', absorption_moved_early, MYWHY['ab_early']) + reject('forward absorption placed while the absorbing register is still live', absorption_into_live, MYWHY['ab_live']) + reject('forward absorption at a lower frame than its registers', lambda w: w['A'][a0].__setitem__(-1, w['A'][a0][-1][:-1]), MYWHY['ab_lower']) + reject('forward absorption at a higher frame (FULL) than its registers', lambda w: w['A'][a0].__setitem__(-1, [256, 128, 64, 32, 16, 8, 4, 2, 1]), MYWHY['ab_higher']) +# COLD-THIRD primitives (present only when the word carries them): several absorptions after one input gate, dirt-release +# absorptions (a dead port takes a live helper's value so that a hyperplane unit's column has no dirt on it), and cold ends at +# a dim-8 frame with lifted partners. +hyper = [h for h in cold if len(word['helper_final'][str(h)]) == 8] +if hyper and ab: + sh = next(a for a, b in zip(ab, ab[1:]) if b == a + 1) # two absorptions sharing one input anchor + rel = next(a for a in ab if a - 1 not in ab and a + 1 not in ab and word['A'][a][2] in hyper and word['A'][a][3] * 2 != -word['A'][a][4]) + hh = hyper[0]; ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + reject('second absorption sharing an input anchor dropped', lambda w: w['A'].pop(sh + 1), MYWHY['sh_dropped']) + reject('shared-anchor absorption coefficient changed', lambda w: w['A'][sh + 1].__setitem__(3, w['A'][sh + 1][3] * 2), MYWHY['sh_coefficient']) + reject('dirt-release absorption dropped', lambda w: w['A'].pop(rel), MYWHY['rel_dropped']) + reject('dirt-release absorption coefficient changed', lambda w: w['A'][rel].__setitem__(3, w['A'][rel][3] * 2), MYWHY['rel_coefficient']) + jr = max(i for i in range(npre, rel) if word['A'][i][0] == 'add' and word['A'][i][2] == word['A'][rel][1]) + + def release_while_read(w): # the release runs before a kernel gate that still READS the port (port live) + e = w['A'].pop(rel); w['A'].insert(jr, e) + reject('dirt-release absorption moved before a kernel gate that still reads the port', release_while_read, MYWHY['rel_live']) +if hyper: + # dim-8 cold-end controls once PER DISTINCT dim-8 terminal frame (each family of dim-8 cold ends keeps its own controls) + fams = [] + for h in hyper: + if sorted(word['helper_final'][str(h)]) not in [sorted(word['helper_final'][str(x)]) for x in fams]: fams.append(h) + for hh in fams: + ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + Uh = word['helper_final'][str(hh)] + reject('dim-8 cold end %d (frame %s) at another dim-8 frame' % (hh, Uh), lambda w, hh=hh: w['helper_final'].__setitem__(str(hh), next(f for h, f in w['helper_final'].items() if len(f) == 8 and sorted(f) != sorted(w['helper_final'][str(hh)]))), MYWHY['h8_other']) + reject('dim-8 cold end %d (frame %s): one lower-frame gate dropped (gate and its early_cleanup entry)' % (hh, Uh), lambda w, ih=ih: drop_cleanup_gate(w, ih), MYWHY['h8_lower']) + reject('dim-8 cold end %d (frame %s): profile pin (end dropped)' % (hh, Uh), lambda w, hh=hh: w['helper_final'].pop(str(hh)), WHY['profile_pin']) +# FACTORED ACCUMULATOR (CarrierBypass; present only when the word carries one): a lower-frame tail gate a += x*g on two +# non-ended registers whose accumulator a is afterwards read by a dim-8 cold end's tail gate (h += y*a at its U). +ended_all = {int(h) for h in word['helper_final']} +tailg = [(i, word['cleanup'][i]) for i, _ in early] +accs = [] # EVERY factored accumulator gate (one per accumulator register a), each controlled on its own +for k, (i, e) in enumerate(tailg): + if e[0] == 'add' and e[1] not in ended_all and e[2] not in ended_all and len(next(f for j, f in early if j == i)) < 8: + if e[1] not in [word['cleanup'][j][1] for j in accs] and any(t[0] == 'add' and t[2] == e[1] and t[1] in hyper for _, t in tailg[k + 1:]): + accs.append(i) +for acc in accs: + a = word['cleanup'][acc][1] + reject('factored accumulator %d (gate %d) zeroed' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, 0), ENDPOINT) + reject('factored accumulator %d (gate %d) coefficient doubled' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, w['cleanup'][acc][3] * 2), ENDPOINT) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'COLD-END-CONTROLS.json').write_text(json.dumps(dict(status='PASS_COLD_END_RAW_WORD_CONTROLS', word=str(src), rejected=results), indent=1) + '\n') +print('PASS', len(results), 'cold-end raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/reproduce_layers.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/reproduce_layers.py new file mode 100644 index 0000000000..ed517ba1dd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers/reproduce_layers.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python3 +"""Rebuild the layered gauge44 word (pivot swaps + entering ends + factored dim-8 cold ends) and its native locals. + +Input: a fresh `construction/reproduce.py --until word` output directory (its regroup/ and cold44/ words are pinned +by reproduce.py itself). Steps, each checked exactly: + 1. pivot-swap: construction/layers/build_pivot_swap.py on regroup/FULL-WORD (six cost-neutral pivot-role swaps, + exact zero-response replay, unchanged profile and width multiset, 30 negative controls); + 2. hpe: the inherited jp8 hyperplane-end changes (HYPERPLANE-END-S6.json) applied with PR635's build_hpe.apply; + 3. cold44-exact: #645's build_gauge_cold44.py on the swapped HPE word; its 44 rank-four cold ends, premix and tail + must equal the unswapped cold44 construction's (the swaps touch no factory block); + 4. layers: PR635's unchanged build_cold_end.apply(HPE, COLD-LAYERS-RECIPE) - the cold44 recipe plus 8 entering ends + (560/561/572/573 at U24, 597/599/537/549 at U30) and 10 factored dim-8 cold ends; output sha pinned; + 5. layer-end-controls: raw-word negative controls on the layered word (PR635 cold_end_controls adapted by + LayerReviewer: lower->FULL pinned at 'cleanup on non-FULL end', entering ends from the recipe); 59 rejected; + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs (as in reproduce.py). +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +LAYERED_SHA = '0be48b1d8a6105059addf3f0d5e420c27ae3398b3a1186b6b11e9c4aa9e3f3d4' +LAYER_CONTROLS = 59 + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--word-dir', type=Path, required=True, help='construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + env.pop('PYTHONOPTIMIZE', None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + wd = a.word_dir.resolve() + run('pivot-swap', HERE / 'build_pivot_swap.py', '--input', wd / 'regroup/FULL-WORD.json.gz', + '--recipe', HERE / 'PIVOT-SWAP-S6.json', '--gk-dir', gk, '--out', out / 'swap') + hpe = load('upstream_hpe', up / 'code/build_hpe.py') + w = hpe.apply(read(out / 'swap/FULL-WORD.json.gz'), read(HERE / 'HYPERPLANE-END-S6.json')['changes']) + (out / 'hpe').mkdir(); (out / 'hpe/FULL-WORD.json.gz').write_bytes(gzip.compress(enc(w), mtime=0)) + run('cold44-exact', HERE.parent / 'build_gauge_cold44.py', '--input', out / 'hpe/FULL-WORD.json.gz', + '--out', out / 'cold44', '--hamming', wd / 'hamming', '--upstream-package', up) + new, old = read(out / 'cold44/RECIPE.json.gz'), read(wd / 'cold44/RECIPE.json.gz') + # The swaps touch no factory block: the 44 ends, their premix and their low tails are identical; only the FULL + # inverse (rebuilt from the whole word) differs. + for key in ('premix', 'early_cleanup', 'cold_ends'): + assert new[key] == old[key], ('swapped cold44 differs from the pinned cold44 construction', key) + tail = len(new['early_cleanup']); assert new['cleanup'][:tail] == old['cleanup'][:tail], 'low tails' + bce = load('upstream_cold', up / 'code/build_cold_end.py') + layered = bce.apply(w, read(HERE / 'COLD-LAYERS-RECIPE.json.gz')) + raw = enc(layered); assert hashlib.sha256(raw).hexdigest() == LAYERED_SHA, 'layered word' + rep = layered['report'] + assert rep['local_profile'] == {'1': 2542, '2': 414, '3': 434, '4': 154, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 52, '5': 48, '7': 42, '8': 116, '9': 234}, rep['width_inventory'] + (out / 'layers').mkdir(); word = out / 'layers/FULL-WORD.json.gz'; word.write_bytes(gzip.compress(raw, mtime=0)) + print('PASS layered scalar word', word, flush=True) + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', HERE / 'layer_end_controls.py', word, routing, out / 'controls') + ctl = json.loads((out / 'controls/COLD-END-CONTROLS.json').read_text()) + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == LAYER_CONTROLS, len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', routing, '--out', local) + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz new file mode 100644 index 0000000000..f9155e3079 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/HPE-RECIPE-NP.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/HPE-RECIPE-NP.json new file mode 100644 index 0000000000..2605d199ed --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/HPE-RECIPE-NP.json @@ -0,0 +1 @@ +{"changes": [{"helper": 448, "cleanup_index": 674, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 449, "cleanup_index": 673, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 450, "cleanup_index": 672, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 451, "cleanup_index": 671, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 452, "cleanup_index": 670, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 453, "cleanup_index": 669, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 454, "cleanup_index": 668, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 455, "cleanup_index": 667, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 456, "cleanup_index": 666, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 457, "cleanup_index": 665, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 458, "cleanup_index": 664, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 459, "cleanup_index": 663, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 460, "cleanup_index": 658, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 461, "cleanup_index": 657, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 470, "cleanup_index": 648, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 471, "cleanup_index": 647, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 472, "cleanup_index": 642, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 473, "cleanup_index": 641, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 482, "cleanup_index": 632, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 483, "cleanup_index": 631, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 496, "cleanup_index": 609, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 497, "cleanup_index": 608, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 520, "cleanup_index": 573, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 521, "cleanup_index": 572, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 544, "cleanup_index": 539, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 545, "cleanup_index": 538, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 568, "cleanup_index": 507, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 569, "cleanup_index": 506, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 580, "cleanup_index": 491, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 581, "cleanup_index": 490, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 590, "cleanup_index": 481, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 591, "cleanup_index": 480, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 592, "cleanup_index": 475, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 593, "cleanup_index": 474, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 602, "cleanup_index": 465, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 603, "cleanup_index": 464, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 604, "cleanup_index": 459, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 605, "cleanup_index": 458, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 606, "cleanup_index": 457, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 607, "cleanup_index": 456, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 609, "cleanup_index": 454, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 611, "cleanup_index": 452, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 612, "cleanup_index": 451, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 613, "cleanup_index": 450, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 614, "cleanup_index": 449, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 615, "cleanup_index": 448, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/PIVOT-SWAP-NP.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/PIVOT-SWAP-NP.json new file mode 100644 index 0000000000..4e0d846426 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/PIVOT-SWAP-NP.json @@ -0,0 +1,588 @@ +{ + "input_content_sha256": "864ff4a19987bcb27016367801a98ca50dae69eafe01d3614f8bae69f5713d6d", + "output_content_sha256": "beb3579fce83cb3b70f4e85761cbb3b8c91d711d4b9cf473074269b8447fc4e4", + "swaps": [ + { + "pivot": 494, + "new_pivot": 566, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 379, + "before": [ + "add", + 566, + 494, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 494, + 566, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 380, + "before": [ + "add", + 640, + 494, + 2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 640, + 566, + -2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 381, + "before": [ + "add", + 642, + 494, + -2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 642, + 566, + 2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 382, + "before": [ + "add", + 688, + 494, + 1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 688, + 566, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 383, + "before": [ + "add", + 690, + 494, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 690, + 566, + 1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 495, + "new_pivot": 567, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 516, + "before": [ + "add", + 123, + 495, + 1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 123, + 567, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 584, + "before": [ + "add", + 187, + 495, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 187, + 567, + 1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 686, + "before": [ + "add", + 567, + 495, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 495, + 567, + -1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 506, + "new_pivot": 578, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 176, + "before": [ + "add", + 652, + 506, + 2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 652, + 578, + -2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 178, + "before": [ + "add", + 652, + 506, + -2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 652, + 578, + 2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 278, + "before": [ + "add", + 700, + 506, + -2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 700, + 578, + 2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 280, + "before": [ + "add", + 700, + 506, + 2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 700, + 578, + -2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 702, + "before": [ + "add", + 578, + 506, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 506, + 578, + -1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 507, + "new_pivot": 579, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 93, + "before": [ + "add", + 211, + 507, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 211, + 579, + 1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 541, + "before": [ + "add", + 147, + 507, + 1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 147, + 579, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 704, + "before": [ + "add", + 579, + 507, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 507, + 579, + -1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 519, + "new_pivot": 543, + "entrance": [ + 30 + ], + "gates": [ + { + "part": "B", + "index": 507, + "before": [ + "add", + 115, + 519, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 115, + 543, + 1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 575, + "before": [ + "add", + 179, + 519, + 1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 179, + 543, + -1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 722, + "before": [ + "add", + 543, + 519, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 519, + 543, + -1, + 1, + [ + 30 + ] + ] + } + ] + }, + { + "pivot": 531, + "new_pivot": 555, + "entrance": [ + 30 + ], + "gates": [ + { + "part": "B", + "index": 550, + "before": [ + "add", + 155, + 531, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 155, + 555, + 1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 617, + "before": [ + "add", + 219, + 531, + 1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 219, + 555, + -1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 740, + "before": [ + "add", + 555, + 531, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 531, + 555, + -1, + 1, + [ + 30 + ] + ] + } + ] + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/reproduce_np.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/reproduce_np.py new file mode 100644 index 0000000000..79cb6fa912 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_np/reproduce_np.py @@ -0,0 +1,149 @@ +#!/usr/bin/env python3 +"""Rebuild the layered no-triangle word (NP) and its native locals. + +Input: a fresh `construction/notri/reproduce_notri.py --word-only` output directory. That driver pins the +no-triangle word (3e99ba77...) and writes its regroup/ and cold44/ words. Steps, each checked exactly: + 1. pivot-swap: ../layers/build_pivot_swap.py (PR641's constructor, signed, unchanged) on the no-triangle regroup word, with PIVOT-SWAP-NP.json: + the six pivot-role swaps of research/gauge44-layered, mapped through the 504-helper map (494->566, 495->567, + 506->578, 507->579, 519->543, 531->555). Exact zero-response replay, unchanged profile and width multiset, + 30 negative controls. + 2. hpe: PR635's build_hpe.candidates, greedy with disjoint registers. Must equal HPE-RECIPE-NP.json (46 changes, + the same helpers as the unswapped word); applied with build_hpe.apply. + 3. cold44-exact: notri/cold44x.py on the swapped HPE word, pairing ranks pinned [4]*14. Its 56 cold ends, premix + and low tails must equal the unswapped no-triangle construction's. + 4. layers: PR635's unchanged build_cold_end.apply(HPE, COLD-LAYERS-RECIPE-NP): cold44 plus the entering ends + 566/567/578/579 at U24 (s4) and 608/610/543/555 at U30 (x30), BlockCombine's b6 and the q4 dim-8 cold ends. + The output word sha and its profile and widths are pinned. + 5. layer-end-controls: ../layers/layer_end_controls.py (LayerReviewer's signed adaptation of PR635's + cold_end_controls.py, unchanged) on the layered word; exactly 59 rejections at pinned reasons. +../layers/reproduce_layers.py is research/gauge44-layered's driver for the 492-helper word, shipped unchanged as +signed; it is not used for this word. + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs, with pins. +Apache-2.0. Driver by ColdWitness after G44Stack's NP chain (NP/chain.py, seq.py). +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NOTRI = HERE.parent / 'notri' +LAYERS = HERE.parent / 'layers' # the signed research/gauge44-layered files, unchanged +REGROUP_SHA = '864ff4a1' # prefix; full value checked against PIVOT-SWAP-NP.json's input_content_sha256 +SWAP_SHA = 'beb3579f' +NP_SHA = 'a9de804f194eeb39f52a4c6e54c14d93e881bec4b632694249733ed410b58113' +LAYER_CONTROLS = 59 +CANONICAL_SHA = '1ae812a336178760071efe347e876e0102b5b71f799d957db15c5f3004c19d7a' +PROGRAM_SHA = {'forward': 'a3882a428bdafab888072211d4ed8d34572746873d77c6ef900495853cc3fa11', + 'backward': 'f67a3dc20c27fb39295b8030e951e9779109ef1537f6f8de9d08510b9ad6792a'} +CLIFFORD_SHA = '890b60fc4ae183c773c51405e0f4ef6a945dc2aae55ba2480f134602e8296cda' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def dump(p, v): + p.parent.mkdir(parents=True, exist_ok=True); p.write_bytes(gzip.compress(enc(v), mtime=0)) + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--notri-dir', type=Path, required=True, help='construction/notri/reproduce_notri.py --word-only output') + ap.add_argument('--hamming', type=Path, required=True, help='hamming/ of the construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + nd = a.notri_dir.resolve() + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + # the input must be the pinned no-triangle construction + nr = load('notri_driver', NOTRI / 'reproduce_notri.py') + assert hashlib.sha256(enc(read(nd / 'cold44/FULL-WORD.json.gz'))).hexdigest() == nr.NOTRI_SHA, 'notri word' + # 1. pivot swaps on the regroup word + rg = hashlib.sha256(enc(read(nd / 'regroup/FULL-WORD.json.gz'))).hexdigest() + assert rg.startswith(REGROUP_SHA) and rg == read(HERE / 'PIVOT-SWAP-NP.json')['input_content_sha256'], ('regroup word', rg) + run('pivot-swap', LAYERS / 'build_pivot_swap.py', '--input', nd / 'regroup/FULL-WORD.json.gz', + '--recipe', HERE / 'PIVOT-SWAP-NP.json', '--gk-dir', gk, '--out', out / 'swap') + w = read(out / 'swap/FULL-WORD.json.gz') + sw = hashlib.sha256(enc(w)).hexdigest(); assert sw.startswith(SWAP_SHA) and sw == read(HERE / 'PIVOT-SWAP-NP.json')['output_content_sha256'], ('swap word', sw) + # 2. HPE (greedy, must equal the pinned recipe) + h = load('upstream_hpe', up / 'code/build_hpe.py') + used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + assert ch == read(HERE / 'HPE-RECIPE-NP.json')['changes'], 'HPE recipe' + w = h.apply(w, ch); dump(out / 'hpe/FULL-WORD.json.gz', w) + # 3. cold44 on the swapped word: same ends, premix and tails as the unswapped no-triangle construction + hm = set(read(nd / 'raw/HELPER-MAP.json')['map'].values()) + env['EXTRAH'] = json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)) + env['PAIRING_RANKS'] = json.dumps([4] * 14) + run('cold44-exact', NOTRI / 'cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', a.hamming.resolve(), '--upstream-package', up) + for k in ('EXTRAH', 'PAIRING_RANKS'): env.pop(k) + new, old = read(out / 'cold44/RECIPE.json.gz'), read(nd / 'cold44/RECIPE.json.gz') + for key in ('premix', 'early_cleanup', 'cold_ends'): + assert new[key] == old[key], ('swapped cold44 differs from the pinned no-triangle construction', key) + tail = len(new['early_cleanup']); assert new['cleanup'][:tail] == old['cleanup'][:tail], 'low tails' + # 4. layers + bce = load('upstream_cold', up / 'code/build_cold_end.py') + layered = bce.apply(w, read(HERE / 'COLD-LAYERS-RECIPE-NP.json.gz')) + raw = enc(layered); assert hashlib.sha256(raw).hexdigest() == NP_SHA, ('layered word', hashlib.sha256(raw).hexdigest()) + rep = layered['report'] + assert rep['local_profile'] == {'1': 2534, '2': 346, '3': 458, '4': 178, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 64, '5': 48, '7': 54, '8': 116, '9': 222}, rep['width_inventory'] + (out / 'layers').mkdir(); word = out / 'layers/FULL-WORD.json.gz'; word.write_bytes(gzip.compress(raw, mtime=0)) + print('PASS layered no-triangle word', NP_SHA, flush=True) + # 5. layer-end controls + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', LAYERS / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = json.loads((out / 'controls/COLD-END-CONTROLS.json').read_text()) + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == LAYER_CONTROLS, len(ctl['rejected']) + # 6. native locals + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == CANONICAL_SHA, 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in PROGRAM_SHA.items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == CLIFFORD_SHA, 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz new file mode 100644 index 0000000000..a408c95816 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/P6N-SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/P6N-SPEC.json new file mode 100644 index 0000000000..43c3ec265c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/P6N-SPEC.json @@ -0,0 +1 @@ +{"ends":[{"U":[256,128,66,34,16,8,6,1],"labels":[512,513]},{"U":[256,128,72,40,24,4,2,1],"labels":[311,510]},{"U":[256,128,66,34,18,10,6,1],"labels":[522,327]}]} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/layer_end_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/layer_end_controls.py new file mode 100644 index 0000000000..dd321fe255 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/layer_end_controls.py @@ -0,0 +1,199 @@ +"""layer_end_controls.py LAYERED-WORD.json.gz ROUTING OUTDIR (env PR635_CODE): adapted PR635 cold_end_controls.py (LayerReviewer): raw-word negative controls for the cold low-frame ends and the +refactored cleanup accepted by hpe_audit_and_transport.py. Every mutation MUST be rejected (AssertionError); the +unmutated word MUST pass. Apache-2.0. DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code.""" +import copy, gzip, json, shutil, sys, tempfile +from pathlib import Path +import os +sys.path.insert(0, os.environ['PR635_CODE']) # PR635's unchanged hpe_audit_and_transport.py +import hpe_audit_and_transport as atc + +src, routing, outdir = Path(sys.argv[1]), Path(sys.argv[2]), Path(sys.argv[3]) +word = json.load(gzip.open(src)) +v, R = word['report']['v'], word['report']['R']; n = 2*v + R +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +meta = word['refactored_cleanup'] +cold = [int(h) for h in meta['cold_low_frame_ended_helpers']] +npre = meta['premix_gates']; nlow = meta['lower_frame_gates'] +early = word['early_cleanup']; eidx = {i for i, _ in early} +rest = [i for i in range(len(word['cleanup'])) if i not in eidx] + + +def trial(w): + """None if the transport audit accepts w, else the AssertionError message.""" + tmp = Path(tempfile.mkdtemp()) + p = tmp/'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w).encode(), mtime=0)) + try: + atc.run(p, routing, tmp/'out') + return None + except AssertionError as e: + return repr(e.args[0]) if e.args else 'AssertionError' + finally: + shutil.rmtree(tmp, ignore_errors=True) + + +# Pinned rejection reasons: each mutant must fail at this assertion of hpe_audit_and_transport.py (message substring). +ENDPOINT, COLDPRE, CONE = "'arbitrary-dirt endpoint'", 'touches a cold hyperplane-ended helper', 'hpe cone pre-check (row / column)' +WHY = dict(premix_to_precondition=COLDPRE, premix_dropped=COLDPRE, e_premix_dropped=ENDPOINT, lower_dropped=ENDPOINT, + remainder_dropped=ENDPOINT, coefficient=ENDPOINT, into_full='cleanup on non-FULL end', dyadic=ENDPOINT, frame_below="'nonmonotone'", + nonmonotone="'nonmonotone'", other_frame=CONE, cone=CONE, extra_end=COLDPRE, marker='cleanup is not the literal reversed inverse', + target='refactored cleanup touches a target', profile_pin='paid local profile differs from the reported local_profile', + entering_precondition='zero-frame precondition/compensation touches an entering helper') +assert trial(word) is None, 'unmutated cold-end word must pass' +results = [] + + +def reject(name, mut, why): + """the mutation must be rejected, and for the pinned reason (a substring of the audit's assertion message).""" + w = copy.deepcopy(word); mut(w) + msg = trial(w) + assert msg is not None, 'cold-end mutation accepted: ' + name + assert why in msg, 'cold-end mutation %r rejected for the wrong reason: %s' % (name, msg[:300]) + results.append(name); print('rejected', name, '|', why, flush=True) + + +h0 = cold[0] +i0, U0 = next((i, f) for i, f in early if h0 in regs(word['cleanup'][i])) +r0 = rest[len(rest)//2] + + +def premix_to_precondition(w): # premix before the wrappers; compensation then reads the cold ends + w['precondition'] = w['precondition'] + w['A'][:npre]; w['A'] = w['A'][npre:] + + +def lower_gate_into_full(w): # a lower-frame gate on a cold-ended helper executed in the FULL remainder instead + w['early_cleanup'] = [x for x in w['early_cleanup'] if x[0] != i0] + + +def drop_cleanup_gate(w, i): # remove the gate AND its early_cleanup entry: a structurally valid word missing one gate + w['cleanup'].pop(i) + w['early_cleanup'] = [[j - (j > i), f] for j, f in w['early_cleanup'] if j != i] + + +def other_frame(w): # a different frame of the same dimension as the cold end (another cold helper's) + f = next(w['helper_final'][str(h)] for h in cold if w['helper_final'][str(h)] != w['helper_final'][str(h0)]) + w['helper_final'][str(h0)] = f + + +def extra_cold_end(w): # declare a premixed partner of h0 cold-ended at h0's frame: fails the row/column cone + p = next(r for e in w['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + w['helper_final'][str(p)] = w['helper_final'][str(h0)] + + +reject('premix placed in the zero-frame precondition (before the cold wrappers)', premix_to_precondition, WHY['premix_to_precondition']) +reject('one premix gate dropped (the compensation then reads a cold-ended helper)', lambda w: w['A'].pop(npre - 1), WHY['premix_dropped']) +reject('one lower-frame cleanup gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, i0), WHY['lower_dropped']) +reject('one FULL-remainder gate dropped', lambda w: drop_cleanup_gate(w, r0), WHY['remainder_dropped']) +reject('lower-frame gate coefficient changed', lambda w: w['cleanup'][i0].__setitem__(3, w['cleanup'][i0][3] * 2), WHY['coefficient']) +reject('lower-frame gate moved into the FULL remainder (touches a cold-ended helper at FULL)', lower_gate_into_full, WHY['into_full']) +reject('lower-frame gate frame below its registers\' frames', lambda w: next(x for x in w['early_cleanup'] if x[0] == i0).__setitem__(1, U0[:-1]), WHY['frame_below']) +reject('cold end at another dim-4 frame', other_frame, WHY['other_frame']) +# PROFILE-PIN control: without its helper_final entry the cold-ended helper is a valid FULL-ended helper; the word is +# rejected because its reported paid profile (which counts the low end) no longer matches the frame chains. +reject('profile pin: cold end dropped (valid FULL end, but the reported profile counts the low end)', lambda w: w['helper_final'].pop(str(h0)), WHY['profile_pin']) +reject('extra cold end on a premixed partner (the compensation reads it before its wrapper)', extra_cold_end, WHY['extra_end']) +reject('refactored-cleanup marker removed (literal-inverse rule applies)', lambda w: w.pop('refactored_cleanup'), WHY['marker']) +reject('remainder gate retargeted to a target register', lambda w: w['cleanup'][r0].__setitem__(1, v + 3), WHY['target']) +reject('non-dyadic remainder coefficient', lambda w: w['cleanup'][r0].__setitem__(4 if w['cleanup'][r0][0] == 'add' else 3, 3 * w['cleanup'][r0][4 if w['cleanup'][r0][0] == 'add' else 3]), WHY['dyadic']) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('5', w['report']['local_profile']['5'] - 1), WHY['profile_pin']) +ent = [int(h) for h in sys.argv[4].split(',')] if len(sys.argv) > 4 else [int(h) for h in meta.get('entering_low_frame_ended_helpers', [])] +for e0 in ent: # ENTERING LOW-FRAME ENDS (ColdSupply extension; every entering end; absent for words without them) + j0 = next((i for i, e in enumerate(word['A'][:npre]) if e0 in regs(e)), None) + print('entering end', e0, 'premix gate', j0, flush=True) + k0, Ue = next((i, f) for i, f in early if e0 in regs(word['cleanup'][i])) + def to_pre(w, j0=j0): w['precondition'].append(w['A'][j0]); w['A'].pop(j0) + def other_hp(w, e0=e0, Ue=Ue): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Ue) and sorted(f) != sorted(Ue)) + if j0 is not None: reject('entering end %d: premix gate dropped' % e0, lambda w, j0=j0: w['A'].pop(j0), WHY['e_premix_dropped']) + if j0 is not None: reject('entering end %d: premix gate at frame [] instead of its entrance E' % e0, lambda w, j0=j0: w['A'][j0].__setitem__(-1, []), WHY['nonmonotone']) + if j0 is not None: reject('entering end %d: premix gate moved into the zero-frame precondition' % e0, to_pre, WHY['entering_precondition']) + reject('entering end %d: lower-frame gate dropped (gate and its early_cleanup entry)' % e0, lambda w, k0=k0: drop_cleanup_gate(w, k0), WHY['lower_dropped']) + reject('entering end %d: profile pin: end dropped (valid FULL end, but the reported profile counts the low end)' % e0, lambda w, e0=e0: w['helper_final'].pop(str(e0)), WHY['profile_pin']) + reject('entering end %d: end at another hyperplane' % e0, other_hp, WHY['cone']) +# Pinned rejection reasons of the COLD-BEYOND mutants (substrings of hpe_audit_and_transport.py assertion messages). +MYWHY = dict(tw_precondition=COLDPRE, tw_dropped=COLDPRE, tw_coefficient=COLDPRE, tw_other_block=COLDPRE, + tw_entering='zero-frame compensation reads an entering helper', + ab_dropped=ENDPOINT, ab_coefficient=ENDPOINT, ab_early=ENDPOINT, ab_live=ENDPOINT, ab_centre=ENDPOINT, + ab_lower="'nonmonotone'", ab_higher="'nonmonotone'", + sh_dropped=ENDPOINT, sh_coefficient=ENDPOINT, rel_dropped=ENDPOINT, rel_coefficient=ENDPOINT, rel_live=ENDPOINT, + h8_other=CONE, h8_lower=ENDPOINT) +# COLD-BEYOND primitives (present only when the word carries them): frame-[] target writes in the premix (explicit +# post-wrapper compensation of an ended helper's dirt) and forward absorptions into dead registers. +nw = meta.get('premix_target_writes', 0) +if nw: + wi = [i for i in range(npre) if v <= word['A'][i][1] < 2*v] + assert len(wi) == nw + + def writes_to_precondition(w): # the target writes run before the cold wrappers (inside the zero-frame precondition) + g = [w['A'][i] for i in wi]; w['precondition'] = w['precondition'] + g + w['A'] = [e for i, e in enumerate(w['A']) if i not in set(wi)] + reject('premix target writes placed in the zero-frame precondition (before the cold wrappers)', writes_to_precondition, MYWHY['tw_precondition']) + reject('one premix target write dropped (compensation must read an ended helper)', lambda w: w['A'].pop(wi[0]), MYWHY['tw_dropped']) + reject('premix target write coefficient changed', lambda w: w['A'][wi[0]].__setitem__(3, w['A'][wi[0]][3] * 2), MYWHY['tw_coefficient']) + # (reading another register that carries the SAME weight of the ended helper's dirt is a valid variant, so the mutant reads + # the same factory slot of the next block, which carries none of it) + entering_regs = sorted(int(r) for r in word.get('start_extra', {})) + reject('premix target write reads an entering helper', lambda w: w['A'][wi[0]].__setitem__(2, entering_regs[0]), MYWHY['tw_entering']) + reject('premix target write reads a cold helper of another block', lambda w: w['A'][wi[0]].__setitem__(2, 2*v + (w['A'][wi[0]][2] - 2*v + 16) % 224), MYWHY['tw_other_block']) +ab = meta.get('forward_absorption_A_indices', []) +if any(len(word['helper_final'][str(h)]) == 8 for h in cold): + # with dim-8 cold ends, the centre-retargeted absorption first leaks an ended helper's dirt into the cut's targets + MYWHY['ab_centre'] = COLDPRE +if ab: + # the ColdBeyond U_b absorption (q += -1/2 g); ColdThird's extra absorptions have their own controls below + a0 = next(a for a in ab if word['A'][a][3] * 2 == -word['A'][a][4]); g0 = word['A'][a0] + + def absorption_moved_early(w): # absorbed before the absorbed register's last kernel write + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[2] == w['A'][i][1] and w['A'][i][-1] == g0[-1]) + w['A'].insert(j, e) + + def absorption_into_live(w): # q += a g moved right after g's previous frame-mate gate, while q is still live + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[1] in regs(w['A'][i])) + w['A'].insert(j, e) + reject('forward absorption dropped', lambda w: w['A'].pop(a0), MYWHY['ab_dropped']) + reject('forward absorption into a centre (a live register read by the cut)', lambda w: w['A'][a0].__setitem__(1, next(c for c in word['centers'] if c not in g0[1:3] and c not in cold)), MYWHY['ab_centre']) + reject('forward absorption coefficient changed', lambda w: w['A'][a0].__setitem__(3, w['A'][a0][3] * 2), MYWHY['ab_coefficient']) + reject('forward absorption placed before the absorbed register\'s last kernel write', absorption_moved_early, MYWHY['ab_early']) + reject('forward absorption placed while the absorbing register is still live', absorption_into_live, MYWHY['ab_live']) + reject('forward absorption at a lower frame than its registers', lambda w: w['A'][a0].__setitem__(-1, w['A'][a0][-1][:-1]), MYWHY['ab_lower']) + reject('forward absorption at a higher frame (FULL) than its registers', lambda w: w['A'][a0].__setitem__(-1, [256, 128, 64, 32, 16, 8, 4, 2, 1]), MYWHY['ab_higher']) +# COLD-THIRD primitives (present only when the word carries them): several absorptions after one input gate, dirt-release +# absorptions (a dead port takes a live helper's value so that a hyperplane unit's column has no dirt on it), and cold ends at +# a dim-8 frame with lifted partners. +hyper = [h for h in cold if len(word['helper_final'][str(h)]) == 8] +if hyper and ab: + sh = next(a for a, b in zip(ab, ab[1:]) if b == a + 1) # two absorptions sharing one input anchor + rel = next(a for a in ab if a - 1 not in ab and a + 1 not in ab and word['A'][a][2] in hyper and word['A'][a][3] * 2 != -word['A'][a][4]) + hh = hyper[0]; ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + reject('second absorption sharing an input anchor dropped', lambda w: w['A'].pop(sh + 1), MYWHY['sh_dropped']) + reject('shared-anchor absorption coefficient changed', lambda w: w['A'][sh + 1].__setitem__(3, w['A'][sh + 1][3] * 2), MYWHY['sh_coefficient']) + reject('dirt-release absorption dropped', lambda w: w['A'].pop(rel), MYWHY['rel_dropped']) + reject('dirt-release absorption coefficient changed', lambda w: w['A'][rel].__setitem__(3, w['A'][rel][3] * 2), MYWHY['rel_coefficient']) + jr = max(i for i in range(npre, rel) if word['A'][i][0] == 'add' and word['A'][i][2] == word['A'][rel][1]) + + def release_while_read(w): # the release runs before a kernel gate that still READS the port (port live) + e = w['A'].pop(rel); w['A'].insert(jr, e) + reject('dirt-release absorption moved before a kernel gate that still reads the port', release_while_read, MYWHY['rel_live']) +if hyper: + # dim-8 cold-end controls for EVERY dim-8 cold end of the word (read from the word's helper_final and the recipe meta's + # cold_low_frame_ended_helpers), not one representative per terminal frame + for hh in hyper: + ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + Uh = word['helper_final'][str(hh)] + reject('dim-8 cold end %d (frame %s) at another dim-8 frame' % (hh, Uh), lambda w, hh=hh: w['helper_final'].__setitem__(str(hh), next(f for h, f in w['helper_final'].items() if len(f) == 8 and sorted(f) != sorted(w['helper_final'][str(hh)]))), MYWHY['h8_other']) + reject('dim-8 cold end %d (frame %s): one lower-frame gate dropped (gate and its early_cleanup entry)' % (hh, Uh), lambda w, ih=ih: drop_cleanup_gate(w, ih), MYWHY['h8_lower']) + reject('dim-8 cold end %d (frame %s): profile pin (end dropped)' % (hh, Uh), lambda w, hh=hh: w['helper_final'].pop(str(hh)), WHY['profile_pin']) +# FACTORED ACCUMULATOR (CarrierBypass; present only when the word carries one): a lower-frame tail gate a += x*g on two +# non-ended registers whose accumulator a is afterwards read by a dim-8 cold end's tail gate (h += y*a at its U). +ended_all = {int(h) for h in word['helper_final']} +tailg = [(i, word['cleanup'][i]) for i, _ in early] +accs = [] # EVERY factored accumulator gate (one per accumulator register a), each controlled on its own +for k, (i, e) in enumerate(tailg): + if e[0] == 'add' and e[1] not in ended_all and e[2] not in ended_all and len(next(f for j, f in early if j == i)) < 8: + if e[1] not in [word['cleanup'][j][1] for j in accs] and any(t[0] == 'add' and t[2] == e[1] and t[1] in hyper for _, t in tailg[k + 1:]): + accs.append(i) +for acc in accs: + a = word['cleanup'][acc][1] + reject('factored accumulator %d (gate %d) zeroed' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, 0), ENDPOINT) + reject('factored accumulator %d (gate %d) coefficient doubled' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, w['cleanup'][acc][3] * 2), ENDPOINT) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'COLD-END-CONTROLS.json').write_text(json.dumps(dict(status='PASS_COLD_END_RAW_WORD_CONTROLS', word=str(src), rejected=results), indent=1) + '\n') +print('PASS', len(results), 'cold-end raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/reproduce_p6n.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/reproduce_p6n.py new file mode 100644 index 0000000000..f9eb173bc1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/layers_p6n/reproduce_p6n.py @@ -0,0 +1,78 @@ +#!/usr/bin/env python3 +"""Rebuild the p6n word (NoTriReopen): the layered no-triangle word with p123's lane rebuilt as three factored dim-8 pairs. + +Input: a fresh `construction/layers_np/reproduce_np.py` output directory. Its swapped HPE word (hpe/) and its +layered word a9de804f... are pinned there. Steps, each checked exactly: + 1. layers: PR635's unchanged build_cold_end.apply(swapped HPE word, COLD-LAYERS-RECIPE-P6N.json.gz). The recipe is + NP's cold-layer recipe (cold44, s4, x30, b6, q4) plus the six cold ends of P6N-SPEC.json, built by NoTriReopen + with JP8Ends' stackJ/stackE (the CarrierBypass premix-only factored construction): [512,513] at + U(256,128,66,34,16,8,6,1), [311,510] at U(256,128,72,40,24,4,2,1), [522,327] at U(256,128,66,34,18,10,6,1). + The output word sha (34b683fa...), profile and widths are pinned. + 2. layer-end-controls: layer_end_controls.py (Q6Reviewer-signed variant fc58c569..., which controls every dim-8 + cold end individually) on the p6n word; exactly 95 rejections at pinned reasons. +The promotion step (construction/promo/reproduce_promo.py --base p6n) builds the final word and its native locals. +Apache-2.0. Driver by ColdWitness after NoTriReopen's runspec.py. +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NP_SHA = 'a9de804f194eeb39f52a4c6e54c14d93e881bec4b632694249733ed410b58113' +P6N_SHA = '34b683fa08f0' # prefix; full value is the recipe's output_content_sha256 (asserted equal below) +LAYER_CONTROLS = 95 + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--np-dir', type=Path, required=True, help='construction/layers_np/reproduce_np.py output') + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + parent = src / 'vendor/pr558/vendor/pr552' + npd = a.np_dir.resolve() + assert hashlib.sha256(enc(read(npd / 'layers/FULL-WORD.json.gz'))).hexdigest() == NP_SHA, 'np-dir must hold the pinned NP word' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src), PR635_CODE=str(up / 'code')) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + bce = load('upstream_cold', up / 'code/build_cold_end.py') + rec = read(HERE / 'COLD-LAYERS-RECIPE-P6N.json.gz') + w = bce.apply(read(npd / 'hpe/FULL-WORD.json.gz'), rec) + raw = enc(w); got = hashlib.sha256(raw).hexdigest() + assert got == rec['output_content_sha256'] and got.startswith(P6N_SHA), ('p6n word', got) + rep = w['report'] + assert rep['local_profile'] == {'1': 2540, '2': 358, '3': 446, '4': 178, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 64, '5': 48, '7': 54, '8': 122, '9': 216}, rep['width_inventory'] + (out / 'p6n').mkdir(); word = out / 'p6n/FULL-WORD.json.gz'; word.write_bytes(gzip.compress(raw, mtime=0)) + print('PASS p6n word', got, flush=True) + t = time.monotonic() + with (out / 'layer-end-controls.log').open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(HERE / 'layer_end_controls.py'), str(word), + str(parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz'), str(out / 'controls')], + env=env, stdout=f, stderr=subprocess.STDOUT) + (out / 'STEPS.json').write_text(json.dumps([dict(step='layer-end-controls', exit_code=rc, seconds=round(time.monotonic() - t, 3))], indent=2) + '\n') + assert rc == 0, 'layer-end-controls' + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == LAYER_CONTROLS, len(ctl['rejected']) + print('PASS layer-end-controls', LAYER_CONTROLS, flush=True) + print('DONE', word, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/CHAIN-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/CHAIN-PINS-k8.json new file mode 100644 index 0000000000..afd0467911 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/CHAIN-PINS-k8.json @@ -0,0 +1,89 @@ +{ + "np_profile": { + "1": 2422, + "2": 408, + "3": 494, + "4": 136, + "5": 56, + "8": 8 + }, + "p6n_profile": { + "1": 2428, + "2": 420, + "3": 482, + "4": 136, + "5": 56, + "8": 8 + }, + "lec-p6n_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-p6n": 95, + "lec-p6n_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "promo_controls": 11, + "lec-promo_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-promo": 95, + "lec-promo_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "jx_controls": [ + "C0_identity", + "C1_741_only", + "N3_plain_join_moved_reads" + ], + "lec-jx_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-jx": 95, + "lec-jx_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "hybrid_controls": [ + "C0_identity", + "donation_after", + "donation_after@226", + "donation_after@228", + "donation_after@230", + "donation_after@231", + "donation_after@232", + "donation_after@62", + "drop_preread", + "drop_preread@226", + "drop_preread@228", + "drop_preread@230", + "drop_preread@231", + "drop_preread@232", + "drop_preread@62", + "drop_restore", + "drop_restore@226", + "drop_restore@228", + "drop_restore@230", + "drop_restore@231", + "drop_restore@232", + "drop_restore@62", + "recipe", + "restore_full", + "restore_full@226", + "restore_full@228", + "restore_full@230", + "restore_full@231", + "restore_full@232", + "restore_full@62" + ], + "lec-hyb_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-hyb": 95, + "lec-hyb_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "frame_build_controls": 3, + "lec-frames_pins_sha256": "b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914", + "lec-frames": 95, + "lec-frames_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)", + "other_hp:554": "tail frame dim 5; no other helper_final frame of that dim" + }, + "canonical_sha256": "d1bf3c6f250a61be7421ce566668092f362c465274fb472d4bb01fc80cba9b23", + "program_sha256": { + "forward": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c", + "backward": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + "clifford_recipes_sha256": "e3bfdfa2c044f14c00a8706950c8ae838ceeedd9ca78a83bffefe7886219516a" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/CODED-CELLS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/CODED-CELLS-k8.json new file mode 100644 index 0000000000..cd23561e0b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/CODED-CELLS-k8.json @@ -0,0 +1,2826 @@ +[ + { + "cell": "01+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 1 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 0 + ], + "x2": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 1 + ], + "x3": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 0 + ], + "x4": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 65 + ], + "y1": [ + "target", + 64 + ], + "y2": [ + "target", + 33 + ], + "y3": [ + "target", + 32 + ], + "y4": [ + "target", + 25 + ], + "y5": [ + "target", + 24 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "-1/2" + ], + [ + "y0", + "x1", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "-1/2" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "23+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 1 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 0 + ], + "x4": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 71 + ], + "y1": [ + "target", + 67 + ], + "y2": [ + "target", + 97 + ], + "y3": [ + "target", + 96 + ], + "y4": [ + "target", + 89 + ], + "y5": [ + "target", + 88 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "45+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 23 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 3 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 39 + ], + "y1": [ + "target", + 35 + ], + "y2": [ + "target", + 103 + ], + "y3": [ + "target", + 99 + ], + "y4": [ + "target", + 57 + ], + "y5": [ + "target", + 56 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "-1/2" + ], + [ + "x4", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "0", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "-1/2", + "0" + ] + ] + }, + { + "cell": "67+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 23 + ], + "x3": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 3 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 23 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 3 + ], + "y0": [ + "target", + 31 + ], + "y1": [ + "target", + 27 + ], + "y2": [ + "target", + 95 + ], + "y3": [ + "target", + 91 + ], + "y4": [ + "target", + 63 + ], + "y5": [ + "target", + 59 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "1", + "1" + ], + [ + "1", + "0", + "1", + "1", + "1", + "1" + ], + [ + "1", + "1", + "0", + "1", + "1", + "1" + ], + [ + "1", + "1", + "1", + "0", + "1", + "1" + ], + [ + "1", + "1", + "1", + "1", + "0", + "1" + ], + [ + "1", + "1", + "1", + "1", + "1", + "0" + ] + ] + }, + { + "cell": "67-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 2 + ], + "x3": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 21 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 2 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 21 + ], + "y0": [ + "target", + 26 + ], + "y1": [ + "target", + 30 + ], + "y2": [ + "target", + 90 + ], + "y3": [ + "target", + 94 + ], + "y4": [ + "target", + 58 + ], + "y5": [ + "target", + 62 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "1", + "1" + ], + [ + "1", + "0", + "1", + "1", + "1", + "1" + ], + [ + "1", + "1", + "0", + "1", + "1", + "1" + ], + [ + "1", + "1", + "1", + "0", + "1", + "1" + ], + [ + "1", + "1", + "1", + "1", + "0", + "1" + ], + [ + "1", + "1", + "1", + "1", + "1", + "0" + ] + ] + }, + { + "cell": "01-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 19 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 17 + ], + "x2": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 19 + ], + "x3": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 17 + ], + "x4": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 69 + ], + "y1": [ + "target", + 68 + ], + "y2": [ + "target", + 37 + ], + "y3": [ + "target", + 36 + ], + "y4": [ + "target", + 29 + ], + "y5": [ + "target", + 28 + ] + }, + "scaled": [ + [ + "y0", + "x1", + "-1/2" + ], + [ + "y1", + "x0", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x1", + "x0", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y0", + "x3", + "-1/2" + ], + [ + "y2", + "x1", + "-1/2" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y1", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y0", + "1" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ] + ], + "unit": [ + [ + "y0", + "x1", + 1 + ], + [ + "y1", + "x0", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x1", + "x0", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y0", + "x3", + 1 + ], + [ + "y2", + "x1", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y1", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y0", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x0", + 1 + ], + [ + "y4", + "x1", + 1 + ] + ], + "coefficients": [ + [ + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "23-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 19 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 17 + ], + "x4": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 66 + ], + "y1": [ + "target", + 70 + ], + "y2": [ + "target", + 101 + ], + "y3": [ + "target", + 100 + ], + "y4": [ + "target", + 93 + ], + "y5": [ + "target", + 92 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y1", + "x3", + "-1/2" + ], + [ + "y2", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y1", + "x3", + 1 + ], + [ + "y2", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "45-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 2 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 21 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 34 + ], + "y1": [ + "target", + 38 + ], + "y2": [ + "target", + 98 + ], + "y3": [ + "target", + 102 + ], + "y4": [ + "target", + 61 + ], + "y5": [ + "target", + 60 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x4", + "-1/2" + ], + [ + "y3", + "x5", + "-1/2" + ], + [ + "y5", + "x3", + "1" + ], + [ + "y4", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x4", + "-1/2" + ], + [ + "x5", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x4", + 1 + ], + [ + "y3", + "x5", + 1 + ], + [ + "y5", + "x3", + 1 + ], + [ + "y4", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x4", + 1 + ], + [ + "x5", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "0", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "-1/2", + "0" + ] + ] + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz new file mode 100644 index 0000000000..6850696b19 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz new file mode 100644 index 0000000000..dc0275695d Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/FRAME-RECIPE-LV-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/FRAME-RECIPE-LV-k8.json new file mode 100644 index 0000000000..982bd357da --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/FRAME-RECIPE-LV-k8.json @@ -0,0 +1,2987 @@ +{ + "input_content_sha256": "c836d8922fc9e50529e006488ca2ce4a542a93150de0e0e8f7d3955ad991968f", + "gate_frames": [ + [ + "B", + 539, + [ + 336, + 208, + 32, + 8, + 6 + ], + [ + 336, + 208, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 540, + [ + 400, + 80, + 32, + 8, + 6 + ], + [ + 400, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 541, + [ + 256, + 128, + 64, + 16, + 6 + ], + [ + 256, + 128, + 64, + 16, + 6, + 1 + ] + ], + [ + "B", + 542, + [ + 256, + 128, + 64, + 16, + 8, + 6 + ], + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 545, + [ + 256, + 144, + 80, + 32, + 8, + 6 + ], + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 547, + [ + 272, + 144, + 64, + 32, + 8, + 6 + ], + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 557, + [ + 280, + 137, + 73, + 6 + ], + [ + 257, + 137, + 73, + 25, + 6 + ] + ], + [ + "B", + 559, + [ + 265, + 137, + 81, + 6 + ], + [ + 265, + 137, + 72, + 25, + 6 + ] + ], + [ + "B", + 560, + [ + 265, + 137, + 81, + 32, + 6 + ], + [ + 265, + 137, + 72, + 32, + 25, + 6 + ] + ], + [ + "B", + 561, + [ + 401, + 64, + 32, + 9, + 6 + ], + [ + 385, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 562, + [ + 265, + 137, + 73, + 17, + 6 + ], + [ + 257, + 129, + 65, + 17, + 8, + 6 + ] + ], + [ + "B", + 563, + [ + 256, + 128, + 64, + 17, + 9, + 6 + ], + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 564, + [ + 265, + 137, + 73, + 32, + 24, + 6 + ], + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + [ + "B", + 566, + [ + 273, + 128, + 64, + 32, + 9, + 6 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 567, + [ + 265, + 137, + 73, + 32, + 17, + 6 + ], + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + [ + "B", + 568, + [ + 256, + 128, + 81, + 32, + 9, + 6 + ], + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 580, + [ + 265, + 193, + 40, + 6 + ], + [ + 265, + 144, + 81, + 40, + 6 + ] + ], + [ + "B", + 581, + [ + 265, + 193, + 40, + 17, + 6 + ], + [ + 265, + 129, + 64, + 40, + 17, + 6 + ] + ], + [ + "B", + 582, + [ + 289, + 176, + 96, + 9, + 6 + ], + [ + 289, + 160, + 96, + 16, + 9, + 6 + ] + ], + [ + "B", + 583, + [ + 265, + 152, + 80, + 33, + 6 + ], + [ + 257, + 144, + 80, + 33, + 8, + 6 + ] + ], + [ + "B", + 584, + [ + 256, + 145, + 80, + 33, + 9, + 6 + ], + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 585, + [ + 265, + 128, + 65, + 40, + 17, + 6 + ], + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 586, + [ + 256, + 145, + 65, + 33, + 9, + 6 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 587, + [ + 273, + 128, + 80, + 48, + 9, + 6 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 589, + [ + 256, + 193, + 33, + 17, + 9, + 6 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 602, + [ + 256, + 144, + 73, + 57, + 6 + ], + [ + 256, + 129, + 73, + 40, + 17, + 6 + ] + ], + [ + "B", + 603, + [ + 297, + 169, + 104, + 16, + 6 + ], + [ + 288, + 160, + 97, + 16, + 9, + 6 + ] + ], + [ + "B", + 604, + [ + 272, + 152, + 73, + 33, + 6 + ], + [ + 272, + 145, + 64, + 33, + 9, + 6 + ] + ], + [ + "B", + 605, + [ + 272, + 144, + 65, + 33, + 8, + 6 + ], + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 606, + [ + 256, + 128, + 73, + 41, + 16, + 6 + ], + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 607, + [ + 264, + 136, + 73, + 33, + 16, + 6 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 609, + [ + 264, + 128, + 73, + 33, + 24, + 6 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 610, + [ + 256, + 136, + 73, + 33, + 24, + 6 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 620, + [ + 368, + 161, + 8, + 6 + ], + [ + 273, + 161, + 97, + 8, + 6 + ] + ], + [ + "B", + 623, + [ + 256, + 193, + 33, + 16, + 6 + ], + [ + 256, + 129, + 64, + 33, + 16, + 6 + ] + ], + [ + "B", + 624, + [ + 289, + 161, + 112, + 8, + 6 + ], + [ + 289, + 161, + 97, + 17, + 8, + 6 + ] + ], + [ + "B", + 625, + [ + 321, + 144, + 49, + 8, + 6 + ], + [ + 273, + 144, + 80, + 49, + 8, + 6 + ] + ], + [ + "B", + 626, + [ + 272, + 144, + 81, + 49, + 8, + 6 + ], + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + [ + "B", + 627, + [ + 256, + 128, + 65, + 33, + 16, + 6 + ], + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + [ + "B", + 629, + [ + 256, + 128, + 81, + 33, + 8, + 6 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 630, + [ + 321, + 128, + 33, + 16, + 8, + 6 + ], + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 631, + [ + 256, + 193, + 33, + 16, + 8, + 6 + ], + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 641, + [ + 256, + 216, + 40, + 6 + ], + [ + 256, + 216, + 40, + 6, + 1 + ] + ], + [ + "B", + 644, + [ + 272, + 144, + 80, + 56, + 6 + ], + [ + 272, + 144, + 80, + 56, + 6, + 1 + ] + ], + [ + "B", + 645, + [ + 392, + 64, + 40, + 16, + 6 + ], + [ + 392, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 646, + [ + 256, + 128, + 88, + 40, + 6 + ], + [ + 256, + 128, + 88, + 40, + 6, + 1 + ] + ], + [ + "B", + 648, + [ + 264, + 136, + 72, + 32, + 24, + 6 + ], + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + [ + "B", + 649, + [ + 264, + 128, + 64, + 40, + 16, + 6 + ], + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 651, + [ + 256, + 128, + 72, + 40, + 16, + 6 + ], + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 665, + [ + 320, + 192, + 41, + 17, + 6 + ], + [ + 320, + 192, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 666, + [ + 401, + 81, + 49, + 9, + 6 + ], + [ + 385, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 667, + [ + 280, + 152, + 64, + 49, + 6 + ], + [ + 257, + 129, + 64, + 40, + 25, + 6 + ] + ], + [ + "B", + 668, + [ + 256, + 128, + 64, + 41, + 24, + 6 + ], + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + [ + "B", + 669, + [ + 320, + 192, + 32, + 17, + 9, + 6 + ], + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 670, + [ + 256, + 145, + 81, + 49, + 9, + 6 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 672, + [ + 273, + 145, + 64, + 49, + 9, + 6 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 673, + [ + 256, + 128, + 64, + 41, + 17, + 6 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 686, + [ + 280, + 137, + 80, + 33, + 6 + ], + [ + 272, + 129, + 80, + 33, + 8, + 6 + ] + ], + [ + "B", + 687, + [ + 304, + 161, + 96, + 9, + 6 + ], + [ + 288, + 161, + 96, + 16, + 9, + 6 + ] + ], + [ + "B", + 688, + [ + 321, + 137, + 40, + 17, + 6 + ], + [ + 257, + 137, + 64, + 40, + 17, + 6 + ] + ], + [ + "B", + 689, + [ + 256, + 137, + 65, + 40, + 17, + 6 + ], + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 690, + [ + 273, + 128, + 80, + 33, + 9, + 6 + ], + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 691, + [ + 256, + 145, + 80, + 48, + 9, + 6 + ], + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 692, + [ + 273, + 128, + 65, + 33, + 9, + 6 + ], + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 693, + [ + 321, + 128, + 33, + 17, + 9, + 6 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 1232, + [ + 256, + 128, + 64, + 34, + 18, + 10, + 6, + 1 + ], + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + [ + "B", + 1235, + [ + 256, + 128, + 64, + 34, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 1238, + [ + 258, + 130, + 66, + 32, + 18, + 10, + 6, + 1 + ], + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + [ + "B", + 1241, + [ + 258, + 130, + 66, + 32, + 16, + 8, + 6, + 1 + ], + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 1244, + [ + 256, + 130, + 64, + 34, + 16, + 10, + 6, + 1 + ], + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 1247, + [ + 256, + 130, + 66, + 32, + 18, + 8, + 6, + 1 + ], + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 1250, + [ + 258, + 128, + 64, + 34, + 16, + 10, + 6, + 1 + ], + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 1253, + [ + 258, + 128, + 66, + 32, + 18, + 8, + 6, + 1 + ], + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 1256, + [ + 258, + 130, + 66, + 34, + 18, + 8, + 6, + 1 + ], + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + [ + "B", + 1259, + [ + 258, + 130, + 64, + 32, + 18, + 8, + 6, + 1 + ], + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 1262, + [ + 256, + 128, + 66, + 34, + 16, + 10, + 6, + 1 + ], + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 1265, + [ + 256, + 128, + 64, + 32, + 16, + 10, + 6, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + [ + "B", + 1268, + [ + 256, + 128, + 66, + 34, + 16, + 8, + 4, + 1 + ], + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ] + ], + [ + "B", + 1271, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ] + ], + [ + "B", + 1274, + [ + 260, + 132, + 68, + 36, + 20, + 12, + 2, + 1 + ], + [ + 260, + 132, + 68, + 36, + 24, + 2, + 1 + ] + ], + [ + "B", + 1277, + [ + 260, + 132, + 64, + 32, + 16, + 8, + 2, + 1 + ], + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ], + [ + "B", + 1280, + [ + 258, + 128, + 64, + 34, + 18, + 10, + 4, + 1 + ], + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ] + ], + [ + "B", + 1283, + [ + 260, + 128, + 68, + 32, + 16, + 8, + 2, + 1 + ], + [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ] + ], + [ + "B", + 1286, + [ + 256, + 130, + 64, + 34, + 16, + 8, + 4, + 1 + ], + [ + 256, + 130, + 64, + 34, + 24, + 4, + 1 + ] + ], + [ + "B", + 1289, + [ + 256, + 132, + 68, + 32, + 20, + 12, + 2, + 1 + ], + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ], + [ + "B", + 1292, + [ + 258, + 130, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ] + ], + [ + "B", + 1295, + [ + 258, + 130, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ] + ], + [ + "B", + 1298, + [ + 256, + 128, + 64, + 34, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 64, + 38, + 18, + 12, + 1 + ] + ], + [ + "B", + 1301, + [ + 256, + 128, + 66, + 32, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ] + ], + [ + "B", + 1304, + [ + 256, + 132, + 68, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ] + ], + [ + "B", + 1307, + [ + 256, + 130, + 64, + 32, + 16, + 10, + 4, + 1 + ], + [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ] + ], + [ + "B", + 1310, + [ + 258, + 128, + 66, + 34, + 16, + 10, + 4, + 1 + ], + [ + 262, + 128, + 70, + 38, + 20, + 10, + 1 + ] + ], + [ + "B", + 1313, + [ + 260, + 128, + 64, + 32, + 20, + 8, + 2, + 1 + ], + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ] + ], + [ + "B", + 1316, + [ + 256, + 128, + 65, + 33, + 16, + 9, + 5, + 2 + ], + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ] + ], + [ + "B", + 1319, + [ + 256, + 128, + 64, + 32, + 17, + 8, + 4, + 3 + ], + [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ] + ], + [ + "B", + 1322, + [ + 257, + 129, + 65, + 33, + 17, + 8, + 5, + 2 + ], + [ + 257, + 129, + 65, + 33, + 19, + 10, + 7 + ] + ], + [ + "B", + 1325, + [ + 257, + 129, + 64, + 32, + 16, + 9, + 4, + 3 + ], + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ] + ], + [ + "B", + 1328, + [ + 257, + 128, + 64, + 33, + 17, + 8, + 4, + 3 + ], + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ] + ], + [ + "B", + 1331, + [ + 257, + 128, + 65, + 32, + 16, + 9, + 4, + 3 + ], + [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ] + ], + [ + "B", + 1334, + [ + 256, + 129, + 64, + 33, + 16, + 9, + 5, + 2 + ], + [ + 256, + 129, + 64, + 33, + 18, + 11, + 7 + ] + ], + [ + "B", + 1337, + [ + 256, + 129, + 65, + 32, + 17, + 8, + 5, + 2 + ], + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ] + ], + [ + "B", + 1340, + [ + 257, + 129, + 64, + 33, + 16, + 8, + 4, + 3 + ], + [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ] + ], + [ + "B", + 1343, + [ + 257, + 129, + 65, + 32, + 17, + 9, + 5, + 2 + ], + [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ] + ], + [ + "B", + 1346, + [ + 256, + 128, + 64, + 33, + 17, + 9, + 5, + 2 + ], + [ + 256, + 128, + 64, + 33, + 24, + 5, + 2 + ] + ], + [ + "B", + 1349, + [ + 256, + 128, + 65, + 32, + 16, + 8, + 4, + 3 + ], + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ] + ], + [ + "B", + 1352, + [ + 256, + 129, + 65, + 33, + 17, + 9, + 4, + 3 + ], + [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ] + ], + [ + "B", + 1355, + [ + 256, + 129, + 64, + 32, + 16, + 8, + 4, + 3 + ], + [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ] + ], + [ + "B", + 1358, + [ + 257, + 128, + 65, + 33, + 16, + 8, + 4, + 3 + ], + [ + 257, + 128, + 65, + 33, + 24, + 4, + 3 + ] + ], + [ + "B", + 1361, + [ + 257, + 128, + 64, + 32, + 17, + 9, + 4, + 3 + ], + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + ], + [ + "B", + 1364, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 5, + 3 + ], + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 1367, + [ + 257, + 128, + 64, + 32, + 16, + 9, + 5, + 3 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 1370, + [ + 256, + 129, + 65, + 33, + 16, + 9, + 5, + 3 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 1373, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 5, + 3 + ], + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 1376, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 1379, + [ + 256, + 128, + 65, + 32, + 16, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 1382, + [ + 257, + 129, + 64, + 33, + 16, + 9, + 5, + 3 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 1385, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 5, + 3 + ], + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + [ + "B", + 1388, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 5, + 3 + ], + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 1391, + [ + 256, + 129, + 64, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 1394, + [ + 257, + 128, + 64, + 33, + 17, + 9, + 5, + 3 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 1397, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 5, + 3 + ], + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 1398, + [ + 256, + 128, + 64, + 34, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 35, + 24, + 6 + ] + ], + [ + "B", + 1399, + [ + 256, + 128, + 64, + 34, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 35, + 24, + 6 + ] + ], + [ + "B", + 1402, + [ + 256, + 128, + 64, + 24, + 4, + 2, + 1 + ], + [ + 257, + 129, + 65, + 24, + 4, + 2 + ] + ], + [ + "B", + 1403, + [ + 256, + 128, + 64, + 24, + 4, + 2, + 1 + ], + [ + 257, + 129, + 65, + 24, + 4, + 2 + ] + ], + [ + "B", + 1406, + [ + 256, + 128, + 64, + 42, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 42, + 24, + 6 + ] + ], + [ + "B", + 1407, + [ + 256, + 128, + 64, + 42, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 42, + 24, + 6 + ] + ], + [ + "B", + 1410, + [ + 256, + 128, + 64, + 18, + 10, + 6, + 1 + ], + [ + 257, + 129, + 65, + 19, + 11, + 6 + ] + ], + [ + "B", + 1411, + [ + 256, + 128, + 64, + 18, + 10, + 6, + 1 + ], + [ + 257, + 129, + 65, + 19, + 11, + 6 + ] + ], + [ + "B", + 1814, + [ + 256, + 129, + 64, + 33, + 24, + 5, + 3 + ], + [ + 259, + 129, + 67, + 33, + 24, + 6 + ] + ], + [ + "B", + 1815, + [ + 256, + 129, + 64, + 33, + 24, + 5, + 3 + ], + [ + 259, + 129, + 67, + 33, + 24, + 6 + ] + ], + [ + "B", + 1818, + [ + 256, + 129, + 64, + 33, + 24, + 4, + 2 + ], + [ + 320, + 129, + 33, + 24, + 4, + 2 + ] + ], + [ + "B", + 1819, + [ + 256, + 129, + 64, + 33, + 24, + 4, + 2 + ], + [ + 320, + 129, + 33, + 24, + 4, + 2 + ] + ], + [ + "B", + 1822, + [ + 256, + 129, + 64, + 33, + 18, + 10, + 6 + ], + [ + 266, + 129, + 74, + 33, + 24, + 6 + ] + ], + [ + "B", + 1823, + [ + 256, + 129, + 64, + 33, + 18, + 10, + 6 + ], + [ + 266, + 129, + 74, + 33, + 24, + 6 + ] + ], + [ + "B", + 1826, + [ + 256, + 129, + 64, + 33, + 19, + 11, + 6 + ], + [ + 320, + 129, + 33, + 19, + 11, + 6 + ] + ], + [ + "B", + 1827, + [ + 256, + 129, + 64, + 33, + 19, + 11, + 6 + ], + [ + 320, + 129, + 33, + 19, + 11, + 6 + ] + ], + [ + "T", + 76, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + [ + 386, + 67, + 33, + 24, + 6 + ] + ], + [ + "T", + 97, + [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ], + [ + 386, + 74, + 40, + 26, + 6, + 1 + ] + ] + ], + "expected": { + "output_content_sha256": "db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83", + "local_profile": { + "1": 2412, + "2": 418, + "3": 418, + "4": 170, + "5": 68, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/HPE-RECIPE-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/HPE-RECIPE-k8.json new file mode 100644 index 0000000000..94d36f2279 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/HPE-RECIPE-k8.json @@ -0,0 +1 @@ +{"changes": [{"helper": 448, "cleanup_index": 630, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 449, "cleanup_index": 629, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 450, "cleanup_index": 628, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 451, "cleanup_index": 627, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 452, "cleanup_index": 626, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 453, "cleanup_index": 625, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 454, "cleanup_index": 624, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 455, "cleanup_index": 623, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 484, "cleanup_index": 585, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 485, "cleanup_index": 584, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 508, "cleanup_index": 549, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 509, "cleanup_index": 548, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 532, "cleanup_index": 515, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 533, "cleanup_index": 514, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 556, "cleanup_index": 483, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 557, "cleanup_index": 482, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 584, "cleanup_index": 455, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 585, "cleanup_index": 454, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 587, "cleanup_index": 452, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 589, "cleanup_index": 450, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 590, "cleanup_index": 449, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 591, "cleanup_index": 448, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEAVER-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEAVER-PINS-k8.json new file mode 100644 index 0000000000..b22678629c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEAVER-PINS-k8.json @@ -0,0 +1,45 @@ +{ + "raw_sha256": "85c0e64718a9ceafe094e7152ea27ec9d7f804e514b5efaab085a94b7ef1841f", + "regroup_count": 12, + "regroup_sha256": "00aeefe0c778ff64125628d7c869ae1aa27db60911f0289a2d4283af5cff85d2", + "hpe_recipe_sha256": "f04e4d152a9169726d0afabd7c6e0fd2e17388707dd6d10c7b51593e360ab38a", + "pairing_ranks": [ + 0, + 0, + 0, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 0, + 0, + 0 + ], + "cold44_sha256": "58e14a02f2c1d4dcfeb363ebd5fa2e713064b5c724d90f6721419a8cfa67729b", + "R": 480, + "local_profile": { + "1": 2394, + "2": 398, + "3": 508, + "4": 142, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 40, + "5": 48, + "7": 22, + "8": 114, + "9": 256 + }, + "canonical_sha256": "854c4cfa867bb75b63412044235c3df5af00b3470c3b310aff4df839a1d71c6e", + "program_sha256": { + "forward": "f0e42fdb881155e7712220e1469452f04343b98c5b414ddd1271d80c9fa2a6f1", + "backward": "95df892bdee54f5700780c989edc9bf7618efaa56058af63a946aff63f5dbeb4" + }, + "clifford_recipes_sha256": "aab63b0a825fdf0ca504038a78b7371310eaef2748fbf80af74f7e4e47abce76" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-STACK-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-STACK-k8.json new file mode 100644 index 0000000000..820ee8d63a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-STACK-k8.json @@ -0,0 +1,5 @@ +{ + "not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-k8.json new file mode 100644 index 0000000000..5218a5f096 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/LEC-REASON-PINS-k8.json @@ -0,0 +1,6 @@ +{ + "not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)", + "other_hp:554": "tail frame dim 5; no other helper_final frame of that dim" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/PIVOT-SWAP-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/PIVOT-SWAP-k8.json new file mode 100644 index 0000000000..7a8edeb1e4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/PIVOT-SWAP-k8.json @@ -0,0 +1 @@ +{"input_content_sha256": "00aeefe0c778ff64125628d7c869ae1aa27db60911f0289a2d4283af5cff85d2", "output_content_sha256": "377ab10c2bf6173498c8af15f8654060331ec9ee232e58cc75956dc015b23685", "swaps": [{"pivot": 482, "new_pivot": 554, "entrance": [24], "gates": [{"part": "B", "index": 331, "before": ["add", 554, 482, -1, 1, [24]], "after": ["add", 482, 554, -1, 1, [24]]}, {"part": "B", "index": 332, "before": ["add", 616, 482, 2, 1, [24]], "after": ["add", 616, 554, -2, 1, [24]]}, {"part": "B", "index": 333, "before": ["add", 618, 482, -2, 1, [24]], "after": ["add", 618, 554, 2, 1, [24]]}, {"part": "B", "index": 334, "before": ["add", 664, 482, 1, 1, [24]], "after": ["add", 664, 554, -1, 1, [24]]}, {"part": "B", "index": 335, "before": ["add", 666, 482, -1, 1, [24]], "after": ["add", 666, 554, 1, 1, [24]]}]}, {"pivot": 483, "new_pivot": 555, "entrance": [24], "gates": [{"part": "B", "index": 468, "before": ["add", 123, 483, 1, 1, [24]], "after": ["add", 123, 555, -1, 1, [24]]}, {"part": "B", "index": 504, "before": ["add", 187, 483, -1, 1, [24]], "after": ["add", 187, 555, 1, 1, [24]]}, {"part": "B", "index": 734, "before": ["add", 555, 483, -1, 1, [24]], "after": ["add", 483, 555, -1, 1, [24]]}]}, {"pivot": 494, "new_pivot": 566, "entrance": [24], "gates": [{"part": "B", "index": 128, "before": ["add", 628, 494, 2, 1, [24]], "after": ["add", 628, 566, -2, 1, [24]]}, {"part": "B", "index": 130, "before": ["add", 628, 494, -2, 1, [24]], "after": ["add", 628, 566, 2, 1, [24]]}, {"part": "B", "index": 230, "before": ["add", 676, 494, -2, 1, [24]], "after": ["add", 676, 566, 2, 1, [24]]}, {"part": "B", "index": 232, "before": ["add", 676, 494, 2, 1, [24]], "after": ["add", 676, 566, -2, 1, [24]]}, {"part": "B", "index": 750, "before": ["add", 566, 494, -1, 1, [24]], "after": ["add", 494, 566, -1, 1, [24]]}]}, {"pivot": 495, "new_pivot": 567, "entrance": [24], "gates": [{"part": "B", "index": 49, "before": ["add", 211, 495, -1, 1, [24]], "after": ["add", 211, 567, 1, 1, [24]]}, {"part": "B", "index": 477, "before": ["add", 147, 495, 1, 1, [24]], "after": ["add", 147, 567, -1, 1, [24]]}, {"part": "B", "index": 752, "before": ["add", 567, 495, -1, 1, [24]], "after": ["add", 495, 567, -1, 1, [24]]}]}, {"pivot": 507, "new_pivot": 531, "entrance": [30], "gates": [{"part": "B", "index": 459, "before": ["add", 115, 507, -1, 1, [30]], "after": ["add", 115, 531, 1, 1, [30]]}, {"part": "B", "index": 495, "before": ["add", 179, 507, 1, 1, [30]], "after": ["add", 179, 531, -1, 1, [30]]}, {"part": "B", "index": 770, "before": ["add", 531, 507, -1, 1, [30]], "after": ["add", 507, 531, -1, 1, [30]]}]}, {"pivot": 519, "new_pivot": 543, "entrance": [30], "gates": [{"part": "B", "index": 486, "before": ["add", 155, 519, -1, 1, [30]], "after": ["add", 155, 543, 1, 1, [30]]}, {"part": "B", "index": 521, "before": ["add", 219, 519, 1, 1, [30]], "after": ["add", 219, 543, -1, 1, [30]]}, {"part": "B", "index": 788, "before": ["add", 543, 519, -1, 1, [30]], "after": ["add", 519, 543, -1, 1, [30]]}]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/PROMO-RECIPE-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/PROMO-RECIPE-k8.json new file mode 100644 index 0000000000..1952580fc8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/PROMO-RECIPE-k8.json @@ -0,0 +1,971 @@ +{ + "input_content_sha256": "25c406149bd3fddf8548ea03521983720d88b11096ce1c1f01e6d480ce50ce18", + "groups": [ + 627, + 629, + 630, + 631, + 635, + 637, + 638, + 639, + 651, + 653, + 654, + 655, + 659, + 661, + 662, + 663 + ], + "entrances": { + "603": [ + 408, + 80, + 40, + 6, + 1 + ], + "605": [ + 408, + 80, + 40, + 6, + 1 + ], + "606": [ + 408, + 80, + 40, + 6, + 1 + ], + "607": [ + 408, + 80, + 40, + 6, + 1 + ], + "611": [ + 272, + 144, + 96, + 6, + 1 + ], + "613": [ + 272, + 144, + 96, + 6, + 1 + ], + "614": [ + 272, + 144, + 96, + 6, + 1 + ], + "615": [ + 272, + 144, + 96, + 6, + 1 + ], + "627": [ + 390, + 68, + 34, + 24, + 1 + ], + "629": [ + 390, + 68, + 34, + 24, + 1 + ], + "630": [ + 390, + 68, + 34, + 24, + 1 + ], + "631": [ + 390, + 68, + 34, + 24, + 1 + ], + "635": [ + 298, + 170, + 102, + 30, + 1 + ], + "637": [ + 298, + 170, + 102, + 30, + 1 + ], + "638": [ + 298, + 170, + 102, + 30, + 1 + ], + "639": [ + 298, + 170, + 102, + 30, + 1 + ] + }, + "gate_frames": [ + [ + "B", + 372, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 373, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 374, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 375, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 376, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 377, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 378, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 379, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 380, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 381, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 382, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 383, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 384, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 385, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 386, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 387, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 388, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 389, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 390, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 391, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 392, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 393, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 394, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 395, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 396, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 397, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 398, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 399, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 400, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 401, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 402, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 403, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 404, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 405, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 406, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 407, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 408, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 409, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 410, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 411, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 412, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 413, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 414, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 415, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 416, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 417, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 418, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 419, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ] + ], + "expected": { + "output_content_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/RECIPE-U8-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/RECIPE-U8-k8.json new file mode 100644 index 0000000000..98ea6e3d23 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/RECIPE-U8-k8.json @@ -0,0 +1,933 @@ +{ + "base_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "B_delete": [ + 1, + 3, + 5, + 7, + 9, + 11, + 878, + 880, + 886, + 888, + 894, + 896, + 902, + 904, + 910, + 912, + 918, + 920, + 1167, + 1169, + 1175, + 1177, + 1183, + 1185, + 1191, + 1193, + 1199, + 1201, + 1207, + 1209 + ], + "B_insert": [ + [ + 1, + [ + "add", + 125, + 448, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 3, + [ + "add", + 121, + 449, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 5, + [ + "add", + 181, + 450, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 7, + [ + "add", + 177, + 451, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 9, + [ + "add", + 117, + 452, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 11, + [ + "add", + 113, + 453, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 724, + [ + "add", + 472, + 231, + 1, + 1, + [ + 386, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 725, + [ + "add", + 473, + 226, + 1, + 1, + [ + 388, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 741, + [ + "add", + 484, + 448, + 1, + 1, + [ + 260, + 132, + 70, + 38, + 24, + 1 + ] + ] + ], + [ + 742, + [ + "add", + 485, + 449, + 1, + 1, + [ + 260, + 132, + 64, + 32, + 24, + 1 + ] + ] + ], + [ + 759, + [ + "add", + 496, + 230, + 1, + 1, + [ + 390, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 760, + [ + "add", + 497, + 228, + 1, + 1, + [ + 390, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 777, + [ + "add", + 508, + 450, + 1, + 1, + [ + 268, + 140, + 64, + 38, + 30, + 1 + ] + ] + ], + [ + 778, + [ + "add", + 509, + 451, + 1, + 1, + [ + 266, + 138, + 70, + 32, + 30, + 1 + ] + ] + ], + [ + 795, + [ + "add", + 520, + 232, + -2, + 1, + [ + 385, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 796, + [ + "add", + 521, + 62, + -2, + 1, + [ + 385, + 65, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 811, + [ + "add", + 532, + 452, + -2, + 1, + [ + 267, + 139, + 65, + 33, + 25, + 7 + ] + ] + ], + [ + 812, + [ + "add", + 533, + 453, + -2, + 1, + [ + 267, + 139, + 64, + 32, + 25, + 7 + ] + ] + ], + [ + 1167, + [ + "add", + 125, + 448, + -1, + 2, + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1169, + [ + "add", + 121, + 449, + -1, + 2, + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1175, + [ + "add", + 149, + 231, + -1, + 2, + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1177, + [ + "add", + 145, + 226, + -1, + 2, + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1183, + [ + "add", + 181, + 450, + -1, + 2, + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1185, + [ + "add", + 177, + 451, + -1, + 2, + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1191, + [ + "add", + 221, + 230, + -1, + 2, + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1193, + [ + "add", + 217, + 228, + -1, + 2, + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1199, + [ + "add", + 117, + 452, + 1, + 1, + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1201, + [ + "add", + 113, + 453, + 1, + 1, + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 1207, + [ + "add", + 157, + 232, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1209, + [ + "add", + 153, + 62, + 1, + 1, + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ] + ] + ] + ], + "B_frames": {}, + "tail_insert": [ + [ + 5, + [ + "add", + 484, + 448, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 3, + [ + "add", + 508, + 450, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 1, + [ + "add", + 532, + 452, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 4, + [ + "add", + 485, + 449, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 2, + [ + "add", + 509, + 451, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 0, + [ + "add", + 533, + 453, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ] + ], + "cleanup_prepend": [ + [ + "add", + 472, + 231, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 496, + 230, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 520, + 232, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 473, + 226, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 497, + 228, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 521, + 62, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ] + ], + "local_profile": { + "1": 2460, + "2": 388, + "3": 478, + "4": 128, + "5": 68, + "8": 8 + }, + "expect_sha256": "c836d8922fc9e50529e006488ca2ce4a542a93150de0e0e8f7d3955ad991968f", + "priced": { + "dk_ideal_stored_frames": 2.38661054604997e-07 + }, + "variants": [ + { + "X": 231, + "E": 448, + "dsides": [ + 878, + 886 + ], + "donors": [ + 448, + 231 + ], + "hold": [ + 484, + 472 + ], + "kept": { + "1167": 448, + "1175": 231 + }, + "when": "mid" + }, + { + "X": 230, + "E": 450, + "dsides": [ + 894, + 902 + ], + "donors": [ + 450, + 230 + ], + "hold": [ + 508, + 496 + ], + "kept": { + "1183": 450, + "1191": 230 + }, + "when": "mid" + }, + { + "X": 232, + "E": 452, + "dsides": [ + 910, + 918 + ], + "donors": [ + 452, + 232 + ], + "hold": [ + 532, + 520 + ], + "kept": { + "1199": 452, + "1207": 232 + }, + "when": "mid" + }, + { + "X": 226, + "E": 449, + "dsides": [ + 880, + 888 + ], + "donors": [ + 449, + 226 + ], + "hold": [ + 485, + 473 + ], + "kept": { + "1169": 449, + "1177": 226 + }, + "when": "mid" + }, + { + "X": 228, + "E": 451, + "dsides": [ + 896, + 904 + ], + "donors": [ + 451, + 228 + ], + "hold": [ + 509, + 497 + ], + "kept": { + "1185": 451, + "1193": 228 + }, + "when": "mid" + }, + { + "X": 62, + "E": 453, + "dsides": [ + 912, + 920 + ], + "donors": [ + 453, + 62 + ], + "hold": [ + 533, + 521 + ], + "kept": { + "1201": 453, + "1209": 62 + }, + "when": "mid" + } + ], + "source": "NewBArch RECIPE-U8 (X4 1e1d99ba), instances [62, 226, 228, 230, 231, 232] ported by LeaverSAT/hyb.py; X=236 dropped (its tail uses dropped copy helper 449)" +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/RECIPE-X4-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/RECIPE-X4-k8.json new file mode 100644 index 0000000000..3483acd5a5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/RECIPE-X4-k8.json @@ -0,0 +1,75 @@ +{ + "input_content_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "input_word": "leaver k8 sw4-stage word", + "frames_741_source": { + "pr": 741, + "commit": "e516b146", + "recipe": "scratch/WasteAttack/FRAME-RECIPE-741.json", + "frames_only_output_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "note": "leaver: surviving #741 frames only" + }, + "frames_741": [], + "raises": [], + "edits": { + "replace": [], + "delete": [], + "insert": [] + }, + "expected": { + "output_content_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + }, + "controls": { + "C0_identity": { + "mutation": { + "kind": "empty" + }, + "expected_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + }, + "C1_741_only": { + "mutation": { + "kind": "only_edits_of", + "h": [], + "raises": [] + }, + "expected_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + }, + "N3_plain_join_moved_reads": { + "mutation": { + "kind": "drop_raises" + }, + "expected_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/REGROUP-LEAVER-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/REGROUP-LEAVER-k8.json new file mode 100644 index 0000000000..d482da23a8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/REGROUP-LEAVER-k8.json @@ -0,0 +1,725 @@ +{ + "source": "PR635 k492-jp8-frame_regroup + PR646 k480-jp8-frame_regroup, changes whose before gate occurs in the leaver port3 word", + "changes": [ + { + "section": "B", + "index": 600, + "before": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6 + ] + ], + "after": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 601, + "before": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 602, + "before": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6 + ] + ], + "after": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 631, + "before": [ + "add", + 205, + 409, + -1, + 2, + [ + 273, + 128, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 205, + 409, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 663, + "before": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 137, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 685, + "before": [ + "add", + 194, + 429, + 1, + 1, + [ + 272, + 144, + 65, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 194, + 429, + 1, + 1, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 552, + "before": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6 + ] + ], + "after": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 553, + "before": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 554, + "before": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6 + ] + ], + "after": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 582, + "before": [ + "add", + 129, + 56, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 6 + ] + ], + "after": [ + "add", + 129, + 56, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 583, + "before": [ + "add", + 137, + 24, + -1, + 2, + [ + 272, + 128, + 80, + 32, + 8, + 6 + ] + ], + "after": [ + "add", + 137, + 24, + -1, + 2, + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 584, + "before": [ + "add", + 169, + 16, + -1, + 2, + [ + 320, + 192, + 32, + 16, + 8, + 6 + ] + ], + "after": [ + "add", + 169, + 16, + -1, + 2, + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 613, + "before": [ + "add", + 205, + 409, + -1, + 2, + [ + 273, + 128, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 205, + 409, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 643, + "before": [ + "add", + 201, + 88, + -1, + 2, + [ + 256, + 145, + 64, + 32, + 9, + 6 + ] + ], + "after": [ + "add", + 201, + 88, + -1, + 2, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 675, + "before": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 137, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 705, + "before": [ + "add", + 161, + 27, + 1, + 1, + [ + 265, + 128, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 161, + 27, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 727, + "before": [ + "add", + 194, + 429, + 1, + 1, + [ + 272, + 144, + 65, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 194, + 429, + 1, + 1, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 757, + "before": [ + "add", + 195, + 431, + 1, + 1, + [ + 256, + 128, + 65, + 41, + 16, + 6 + ] + ], + "after": [ + "add", + 195, + 431, + 1, + 1, + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/TRI-LEAVER-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/TRI-LEAVER-k8.json new file mode 100644 index 0000000000..e3bb24cc49 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/TRI-LEAVER-k8.json @@ -0,0 +1,590 @@ +{ + "full_pairs": [ + [ + 0, + 1 + ], + [ + 2, + 3 + ], + [ + 4, + 5 + ], + [ + 6, + 7 + ] + ], + "triangles": [ + { + "p": [ + 0, + 1 + ], + "e": 1, + "reads": [ + [ + 57, + [ + 0, + 1, + 2, + 3 + ], + 0 + ], + [ + 56, + [ + 0, + 1, + 2, + 3 + ], + 1 + ], + [ + 25, + [ + 0, + 1, + 4, + 5 + ], + 0 + ], + [ + 24, + [ + 0, + 1, + 4, + 5 + ], + 1 + ], + [ + 17, + [ + 0, + 1, + 6, + 7 + ], + 0 + ], + [ + 16, + [ + 0, + 1, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 0 + }, + { + "p": [ + 2, + 3 + ], + "e": 1, + "reads": [ + [ + 63, + [ + 0, + 1, + 2, + 3 + ], + 3 + ], + [ + 59, + [ + 0, + 1, + 2, + 3 + ], + 23 + ], + [ + 89, + [ + 2, + 3, + 4, + 5 + ], + 0 + ], + [ + 88, + [ + 2, + 3, + 4, + 5 + ], + 1 + ], + [ + 81, + [ + 2, + 3, + 6, + 7 + ], + 0 + ], + [ + 80, + [ + 2, + 3, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 1 + }, + { + "p": [ + 4, + 5 + ], + "e": 1, + "reads": [ + [ + 31, + [ + 0, + 1, + 4, + 5 + ], + 3 + ], + [ + 27, + [ + 0, + 1, + 4, + 5 + ], + 23 + ], + [ + 95, + [ + 2, + 3, + 4, + 5 + ], + 3 + ], + [ + 91, + [ + 2, + 3, + 4, + 5 + ], + 23 + ], + [ + 49, + [ + 4, + 5, + 6, + 7 + ], + 0 + ], + [ + 48, + [ + 4, + 5, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 2 + }, + { + "p": [ + 6, + 7 + ], + "e": 1, + "reads": [ + [ + 23, + [ + 0, + 1, + 6, + 7 + ], + 3 + ], + [ + 19, + [ + 0, + 1, + 6, + 7 + ], + 23 + ], + [ + 87, + [ + 2, + 3, + 6, + 7 + ], + 3 + ], + [ + 83, + [ + 2, + 3, + 6, + 7 + ], + 23 + ], + [ + 55, + [ + 4, + 5, + 6, + 7 + ], + 3 + ], + [ + 51, + [ + 4, + 5, + 6, + 7 + ], + 23 + ] + ], + "coded": true, + "cell": 3 + }, + { + "p": [ + 6, + 7 + ], + "e": -1, + "reads": [ + [ + 18, + [ + 0, + 1, + 6, + 7 + ], + 21 + ], + [ + 22, + [ + 0, + 1, + 6, + 7 + ], + 2 + ], + [ + 82, + [ + 2, + 3, + 6, + 7 + ], + 21 + ], + [ + 86, + [ + 2, + 3, + 6, + 7 + ], + 2 + ], + [ + 50, + [ + 4, + 5, + 6, + 7 + ], + 21 + ], + [ + 54, + [ + 4, + 5, + 6, + 7 + ], + 2 + ] + ], + "coded": true, + "cell": 4 + }, + { + "p": [ + 0, + 1 + ], + "e": -1, + "reads": [ + [ + 61, + [ + 0, + 1, + 2, + 3 + ], + 17 + ], + [ + 60, + [ + 0, + 1, + 2, + 3 + ], + 19 + ], + [ + 29, + [ + 0, + 1, + 4, + 5 + ], + 17 + ], + [ + 28, + [ + 0, + 1, + 4, + 5 + ], + 19 + ], + [ + 21, + [ + 0, + 1, + 6, + 7 + ], + 17 + ], + [ + 20, + [ + 0, + 1, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 5 + }, + { + "p": [ + 2, + 3 + ], + "e": -1, + "reads": [ + [ + 58, + [ + 0, + 1, + 2, + 3 + ], + 21 + ], + [ + 62, + [ + 0, + 1, + 2, + 3 + ], + 2 + ], + [ + 93, + [ + 2, + 3, + 4, + 5 + ], + 17 + ], + [ + 92, + [ + 2, + 3, + 4, + 5 + ], + 19 + ], + [ + 85, + [ + 2, + 3, + 6, + 7 + ], + 17 + ], + [ + 84, + [ + 2, + 3, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 6 + }, + { + "p": [ + 4, + 5 + ], + "e": -1, + "reads": [ + [ + 26, + [ + 0, + 1, + 4, + 5 + ], + 21 + ], + [ + 30, + [ + 0, + 1, + 4, + 5 + ], + 2 + ], + [ + 90, + [ + 2, + 3, + 4, + 5 + ], + 21 + ], + [ + 94, + [ + 2, + 3, + 4, + 5 + ], + 2 + ], + [ + 53, + [ + 4, + 5, + 6, + 7 + ], + 17 + ], + [ + 52, + [ + 4, + 5, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 7 + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/build_frames_lv.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/build_frames_lv.py new file mode 100644 index 0000000000..5f8aa7a24b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/build_frames_lv.py @@ -0,0 +1,64 @@ +#!/usr/bin/env python3 +"""Apply the pinned gate/tail frame re-optimisation of FRAME-RECIPE-LV-k5.json (exact global frame optimum, gopt2) to the +leaver U8 word. + +usage: build_frames_lv.py INPUT_WORD.json.gz OUT_DIR RECIPE.json + +Standard library only. The frames are applied by BlockInvert's `../promo/build_promotion.apply` (no entrances; 'B' gate +frames and 'T' tail frames), which checks each old frame and recomputes the local profile and widths. This builder then checks: +input sha pin; the scalar program of A, cut, B, precondition and cleanup unchanged (every field but the frame); start +and end frames unchanged; local profile and width inventory equal to the recipe's; output sha pin. Three pin controls +(input pin, wrong old frame, output pin) must be rejected at their pinned reasons on every build. +Adapted from ../frames/build_frames.py (from PR741's extras/build_frames.py, chafreaky). Apache-2.0. +""" +import copy, gzip, hashlib, importlib.util, json, sys +from pathlib import Path + +HERE = Path(__file__).resolve().parent +_s = importlib.util.spec_from_file_location('promotion', HERE.parent / 'promo/build_promotion.py') +B = importlib.util.module_from_spec(_s); _s.loader.exec_module(B) + + +def construct(raw, recipe): + assert hashlib.sha256(raw).hexdigest() == recipe['input_content_sha256'], 'input word pin' + w = json.loads(raw) + assert recipe['gate_frames'] and all(c[0] in ('B', 'T') for c in recipe['gate_frames']), 'B and T frames only' + out = B.apply(w, dict(entrances={}, gate_frames=recipe['gate_frames'])) + for section in ('A', 'cut', 'B', 'precondition', 'cleanup'): + assert [e[:-1] for e in w[section]] == [e[:-1] for e in out[section]], 'scalar program unchanged' + assert out['start_extra'] == w['start_extra'] and out['helper_final'] == w['helper_final'], 'endpoint frames unchanged' + assert out['report']['local_profile'] == recipe['expected']['local_profile'] and \ + out['report']['width_inventory'] == recipe['expected']['width_inventory'], 'profile and width pins' + data = json.dumps(out, sort_keys=True, separators=(',', ':')).encode() + assert hashlib.sha256(data).hexdigest() == recipe['expected']['output_content_sha256'], 'output word pin' + return data + + +def main(): + assert __debug__, 'Assertions are required' + inp, outd, rfile = map(Path, sys.argv[1:4]) + raw = gzip.decompress(inp.read_bytes()); recipe = json.loads(rfile.read_text()) + data = construct(raw, recipe) + rejected = [] + for name, change, reason in [ + ('input-pin', lambda r: r.__setitem__('input_content_sha256', '0' * 64), 'input word pin'), + ('old-frame', lambda r: r['gate_frames'][0].__setitem__(2, []), 'gate frame mismatch'), + ('output-pin', lambda r: r['expected'].__setitem__('output_content_sha256', '0' * 64), 'output word pin')]: + r = copy.deepcopy(recipe); change(r) + try: + construct(raw, r) + except AssertionError as e: + assert reason in str(e), (name, str(e)); rejected.append(dict(name=name, reason=reason)) + else: + raise AssertionError('accepted ' + name) + outd.mkdir(parents=True) + (outd / 'FULL-WORD.json.gz').write_bytes(gzip.compress(data, mtime=0)) + (outd / 'BUILD.json').write_text(json.dumps(dict( + status='PASS_FRAME_REOPT_EXACT_CONSTRUCTION', input_sha256=hashlib.sha256(raw).hexdigest(), + output_sha256=hashlib.sha256(data).hexdigest(), scalar_program_unchanged=True, frames=len(recipe['gate_frames']), + rejected_controls=rejected), indent=2) + '\n') + print('PASS', len(recipe['gate_frames']), 'frames and three pin controls') + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01+.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01+.json new file mode 100644 index 0000000000..bfef820f29 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "-1/2" + ], + [ + "y0", + "x1", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "-1/2" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01-.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01-.json new file mode 100644 index 0000000000..3afa894b20 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-01-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y0", + "x1", + 1 + ], + [ + "y1", + "x0", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x1", + "x0", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y0", + "x3", + 1 + ], + [ + "y2", + "x1", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y1", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y0", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x0", + 1 + ], + [ + "y4", + "x1", + 1 + ] + ], + "scaled": [ + [ + "y0", + "x1", + "-1/2" + ], + [ + "y1", + "x0", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x1", + "x0", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y0", + "x3", + "-1/2" + ], + [ + "y2", + "x1", + "-1/2" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y1", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y0", + "1" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23+.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23+.json new file mode 100644 index 0000000000..98ff8050e7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23-.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23-.json new file mode 100644 index 0000000000..517b89d382 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-23-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y1", + "x3", + 1 + ], + [ + "y2", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y1", + "x3", + "-1/2" + ], + [ + "y2", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45+.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45+.json new file mode 100644 index 0000000000..2bc89e1de1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "-1/2" + ], + [ + "x4", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45-.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45-.json new file mode 100644 index 0000000000..b9c1904b83 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-45-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x4", + 1 + ], + [ + "y3", + "x5", + 1 + ], + [ + "y5", + "x3", + 1 + ], + [ + "y4", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x4", + 1 + ], + [ + "x5", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x4", + "-1/2" + ], + [ + "y3", + "x5", + "-1/2" + ], + [ + "y5", + "x3", + "1" + ], + [ + "y4", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x4", + "-1/2" + ], + [ + "x5", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67+.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67+.json new file mode 100644 index 0000000000..7d756cb19d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67-.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67-.json new file mode 100644 index 0000000000..7d756cb19d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cells-k8/CORE-67-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cgx_leaver.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cgx_leaver.py new file mode 100644 index 0000000000..e686c66306 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/cgx_leaver.py @@ -0,0 +1,491 @@ +# LeaverSAT: no-helper mutable-leaver all-K cells (coded triangles) on the no-triangle word. Generated by +# LeaverSAT/mkpkg.py from construction/notri/cgx.py with the leaver edits (lv.leaver_source); Apache-2.0. +import json as _lj, os as _lo, sys as _ls +from fractions import Fraction as _lF +CODED_CELLS=[(c['bindings'],[[t,s,_lF(q)] for t,s,q in c['scaled']]) for c in _lj.load(open(_lo.path.join(_lo.path.dirname(_lo.path.abspath(_ls.argv[3])),'CODED-CELLS.json')))] +# Round20 early-coordinate-center / own-Y variant, prepared for icekylinx +# with OpenAI Codex assistance. Apache-2.0. Scalar elementary-operation +# helpers below are retained from the attributed PR514 construct_partial.py. +# Adapted by OpenAI Codex for isolated structural research. +# Modified from PR425 by icekylinx with Codex assistance. +"""Full discovery word for Hamming packets with borrowed X and Y registers. + +This changes the scalar architecture. It is not accepted by the old restricted +gx interface: source bases may change until full-frame cleanup, and targets use +an explicitly inverted output basis. No supplier admission is asserted. +""" +import copy,gzip,json,math,time +import itertools as it +from collections import Counter,defaultdict +from fractions import Fraction as Q +from pathlib import Path + +import sys +INPUT=Path(sys.argv[1]);OUT=Path(sys.argv[2]);OUT.mkdir(parents=True,exist_ok=False);D=json.loads((INPUT/'PROTOTYPE.json').read_text()) +P=D['binary_ports'];R=D['root_lines'];v=120;h=9 +modules=json.load(gzip.open(INPUT/'PACKET-PROGRAMS.json.gz')) +# AtomScout: leaver-read K-triangles (schedule from atom1.py / rog.py CP-SAT) +TRI=json.loads(Path(sys.argv[3]).read_text()) +FULLT={(tuple(tr['p']),tr['e']) for tr in TRI['triangles']} +TRI_COORDS={t+8 for tr in TRI['triangles'] for t,_,_ in tr['reads']} +import os as _o +COPYL=json.loads(open(_o.environ['XPARAM']).read()).get('copyl',[]) if _o.environ.get('XPARAM') else [] +NH=504-3*len(FULLT)+len(COPYL) + +def basis(vectors): + b={} + for x in vectors: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def inside(a,b):return basis(a+b)==b +def hyper(p):return basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) +FULL=basis([1<=v,r)) + for col,s in enumerate(ids): + k=next(i for i in range(col,len(regs)) if rows[regs[i]].get(s,Q(0))) + swap(regs[k],regs[col],F) + scale(regs[col],1/rows[regs[col]][s],F) + for i in range(len(regs)): + if i!=col and rows[regs[i]].get(s,Q(0)):add(regs[i],regs[col],-rows[regs[i]][s],F) + assert all(rows[regs[i]]=={s:Q(1)} for i,s in enumerate(ids)) + M=[[Q(R[s][i]) for s in ids] for i in c] + def qr_rank(rs): + bs={} + for r in rs: + r=r.copy() + for i,b in sorted(bs.items()): + if r[i]:q=r[i];r=[x-q*y for x,y in zip(r,b)] + i=next((i for i,x in enumerate(r) if x),None) + if i is not None:q=r[i];bs[i]=[x/q for x in r] + return len(bs) + assert qr_rank(M)==4 + for rr0 in PRIO.get(",".join(map(str,c)),[])+PRIORITY[",".join(map(str,c))]["rows"]: + rr=list(map(Q,rr0)) + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + for i in range(8): + if len(M)==8:break + rr=[Q(i==j) for j in range(8)] + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + assert len(M)==8 + linear(regs,M,F) + for i,r in zip(c,regs): + assert rows[r]=={s:Q(R[s][i]) for s in ids} + block_totals[c,i]=r + +# All centers are complete while Y is still at zero. This is the crucial +# difference from an illegal early-own-Y prefix using the old center order. +centers=[] +for i in range(8): + regs=[block_totals[c,i] for c in sorted(blocks) if i in c] + F=hyper(P[frame[i]]);a=regs[0] + for b in regs[1:]:add(a,b,1,F) + centers.append(a) +centers += [frame[i] for i in range(8)] +center_frames=[cur[r] for r in centers] +assert list(map(len,center_frames))==[8]*8+[1]*8 +assert all(cur[v+t]==() for t in range(v)) + +phase=B +for t,(r,coef,F) in sorted(own_rows.items()): + if t in TRI_COORDS:continue + assert cur[r]==F + add(v+t,r,coef,F) +# requests are needed for TRI coefficients +requests=defaultdict(list) +for pid,pair in enumerate(pairs): + if not pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + requests[key1].append((t,-Q(mat[0][0],2))) + requests[key2].append((u,-Q(mat[0][1],2))) +reqcoef={t:(key,coef) for key,reqs in requests.items() for t,coef in reqs} +def face_info(c,p,eps): + z=blocks[c];keys=[(pp,ee) for pp in it.combinations(c,2) for ee in (-1,1)] + r_local,alpha=z['outputs'][keys.index((p,eps))] + j=[j for j in range(40,len(z['events'])) if z['events'][j][0]==r_local];assert len(j)==1 + return j[0],Q(alpha) +tri_join_counts=Counter() +coded_shadow_slot={} +coded_target_edges=[];TRILOG=[] +lcopy={} +for s8 in COPYL: + r=s8+8;c=len(cur);cur.append(());rows.append({});shadow.append(None);add(c,r,1,cur[r]);lcopy[r]=c +BF={c:basis([P[x] for x in z['receipt']['source_lines']]) for c,z in blocks.items()} +HYB={(tuple(map(int,h[0])),tuple(map(int,h[1])),int(h[2])) for h in XP.get('hyb',[])} +HYBLOG=[] +def triread(t,blk,r,q): + F=basis(cur[v+t]+cur[r]);assert inside(F,hyper(P[t])),('TRI frame',t,blk,r,cur[v+t],cur[r],hyper(P[t]),[x for x in TRILOG if x[2]==r],HYBLOG) + tri_join_counts[len(F)]+=1;add(v+t,r,q,F);TRILOG.append([t,list(blk),r,str(q),list(F),list(cur[r])]) +for tr in TRI['triangles']: + if tr.get('coded'): + bindings={} + for name,binding in CODED_CELLS[tr['cell']][0].items(): + bindings[name]=maps[tuple(binding[1])][binding[2]] if binding[0]=='source' else v+binding[1] + for tn,sn,q in CODED_CELLS[tr['cell']][1]: + target,source=bindings[tn],bindings[sn] + F=basis(cur[target]+cur[source]) + for register in (target,source): + if v<=register<2*v:assert inside(F,hyper(P[register-v])),('coded frame',register,F) + add(target,source,q,F) + if sn.startswith('y'):coded_target_edges.append((target,source,Q(q))) + continue + p,eps=tuple(tr['p']),tr['e'] + hb={blk for _,blk,_ in map(lambda x:(x[0],tuple(x[1]),x[2]),tr['reads']) if (blk,p,eps) in HYB} + own=[];rest=[] + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];r0=r;r=lcopy.get(r,r) + key,coef=reqcoef[t];assert key[1]==p and key[2]==eps,(key,p,eps) + if blk==key[0]: + rr,c0,F0=own_rows[t];assert rr==r0;own.append((t,blk,r,c0)) + else: + j,alpha=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert loc in ev[:2] + rest.append((t,blk,loc,r,coef*alpha)) + if not hb: + # original interleaved order + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:q=own_rows[t][1] + else:j,alpha=face_info(blk,p,eps);q=coef*alpha + triread(t,blk,r,q) + continue + items=[] # (kind, t, reg, q, blk) + for t,blk,r,q in own:items.append(('r',t,r,q,blk,blk in hb)) + for blk in sorted(hb):items.append(('e',None,None,None,blk,True)) + done=set() + for t,blk,loc,r,q in rest: + if blk in hb: + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j] + ws=[x for x in rest if x[0]==t and x[1]==blk];assert len(ws)==2 and ws[0][4]==ws[1][4] and {ws[0][2],ws[1][2]}==set(ev[:2]) + if (t,blk) in done:continue + done.add((t,blk));items.append(('m',t,maps[blk][ev[0]],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + # Original read order with the two half reads collapsed into one M read at the first half's slot; the face event goes + # just before the first M read of its block; own reads of the M register are hoisted ahead of that event. + def evinfo(blk): + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert ev[2]==ev[3]==1,ev + mpb=maps[blk];return mpb[ev[0]],mpb[ev[1]],tuple(blocks[blk]['event_frames'][j]) + items=[] + seen=set() + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:items.append(('r',t,r,own_rows[t][1],blk,blk in hb)) + else: + j,alpha=face_info(blk,p,eps);q=coef*alpha + if blk in hb: + if (t,blk) not in seen:seen.add((t,blk));continue + items.append(('m',t,evinfo(blk)[0],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + for blk in sorted(hb): + k0=min(i for i,x in enumerate(items) if x[0]=='m' and x[4]==blk) + items.insert(k0,('e',None,None,None,blk,True)) + n=len(items) + def step(it,st): + k,t,r,q,blk,h=it;g=lambda x:st.get(x,cur[x]) + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(g(a_))+list(g(b_))) + return {a_:FF,b_:FF} if inside(FF,BF[blk]) else None + F=basis(list(g(v+t))+list(g(r))) + if not inside(F,hyper(P[t])):return None + if h and k=='r' and r==evinfo(blk)[1] and not inside(F,BF[blk]):return None + return {v+t:F,r:F} + def allowed(i,used): + k,t,r,q,blk,h=items[i] + evi=[j for j,x in enumerate(items) if x[0]=='e' and x[4]==blk] if h else [] + if k=='e':return all(j in used for j,x in enumerate(items) if x[0]=='r' and x[4]==blk and x[5] and x[2]==evinfo(blk)[0]) + if k=='m':return evi[0] in used + if k=='r' and h and r==evinfo(blk)[0]:return evi[0] not in used + return True + budget=[int(os.environ.get('HYBBUDGET','300000'))];memo=set() + def dfs(st,used,order): + if len(order)==n:return order + budget[0]-=1 + if budget[0]<0:return None + sig=(used,tuple(sorted(st.items()))) + if sig in memo:return None + memo.add(sig) + for i in range(n): + if i in used or not allowed(i,used):continue + d=step(items[i],st) + if d is None:continue + ns=dict(st);ns.update(d);res=dfs(ns,used|{i},order+[i]) + if res:return res + return None + import sys as _s;_s.setrecursionlimit(20000) + order=dfs({},frozenset(),[]) + assert order,('no feasible hybrid order',p,eps,sorted(hb),budget) + for i in order: + k,t,r,q,blk,h=items[i] + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(cur[a_])+list(cur[b_]));add(a_,b_,1,FF);HYBLOG.append([list(blk),list(p),eps,list(FF)]) + else:triread(t,blk,r,q) + +packets={} +for c,z in sorted(blocks.items()): + mp=maps[c] + keys=[(p,eps) for p in it.combinations(c,2) for eps in (-1,1)] + skipev={face_info(c,p,eps)[0] for p,eps in keys if (p,eps) in FULLT} + for j,(e,F) in enumerate(list(zip(z['events'],z['event_frames']))[40:]): + if j not in early[c] and 40+j not in skipev: + t,s,a,b=e;add(mp[t],mp[s],Q(a,b),tuple(F)) + for key,(r,alpha) in zip(keys,z['outputs']): + if tuple(key) in FULLT:skip();continue + a=mp[r];b=alloc();add(b,a,1,cur[a]) + consumers=sorted(d for d in blocks if d!=c and set(key[0])<=set(d)) + assert len(consumers)==2 + for target,r in zip(consumers,(a,b)):packets[c,key[0],key[1],target]=(r,Q(alpha)) + +# Both tetrahedra use the same partition. A selected key has exactly two +# selected Y loads and no ordinary M consumer. Supply its two raw halves in +# opposite orders and never form that M. Other keys retain the old M path. +second=[];first_join_counts=Counter() +for key,reqs in sorted(requests.items()): + assert len(reqs)==2 + c,p,eps=key + if (p,eps) in FULLT:continue + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d));a,b=ds + for j,(target,coef) in enumerate(sorted(reqs)): + first_source,second_source=(a,b) if j==0 else (b,a) + r,alpha=packets[first_source,p,eps,second_source] + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + first_join_counts[len(F)]+=1;add(v+target,r,coef*alpha,F) + r,alpha=packets[second_source,p,eps,c] + second.append((target,r,coef*alpha)) + +Ms={} +for c in sorted(blocks): + for p in it.combinations(c,2): + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d)) + for eps in (-1,1): + if (c,p,eps) in requests:continue + (a,alpha),(b,beta)=[packets[d,p,eps,c] for d in ds] + F=basis(cur[a]+cur[b]);add(a,b,beta/alpha,F) + Ms[c,p,eps]=(a,alpha) + +consumers=defaultdict(list) +for pid,pair in enumerate(pairs): + for key in pair['keys']:consumers[key].append(pid) +slots={} +for key,uses in sorted(consumers.items()): + assert len(uses)==2 + if key in requests: + assert all(pairs[i]['selected'] for i in uses) + continue + assert all(not pairs[i]['selected'] for i in uses) + a,alpha=Ms[key] + for j,pid in enumerate(uses): + if j==0:r=a + else:r=alloc();add(r,a,1,cur[a]) + slots[pid,key]=(r,alpha) +assert len(cur)-240==NH,len(cur)-240 + +selected_join_counts=Counter() +for target,r,coef in second: + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + selected_join_counts[len(F)]+=1;add(v+target,r,coef,F) +output_basis=[] +for pair in pairs: + if not pair['selected']:continue + (t,u),mat=pair['targets'],pair['matrix'] + F=basis(cur[v+t]+cur[v+u]);assert inside(F,hyper(P[t])) and inside(F,hyper(P[u])) + add(v+t,v+u,1,F);add(v+u,v+t,-Q(1,2),F) + z=-Q(2*mat[1][0],mat[0][0]);scale(v+u,z,F);output_basis.append((t,u,z)) + +for pid,pair in enumerate(pairs): + if pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + (a,alpha),(b,beta)=slots[pid,key1],slots[pid,key2] + F=basis(cur[a]+cur[b]);aa,ab=Q(mat[0][0])*alpha,Q(mat[0][1])*beta + ba,bb=Q(mat[1][0])*alpha,Q(mat[1][1])*beta + add(a,b,ab/aa,F);q=ba/(bb-ba*ab/aa);add(b,a,q,F) + add(v+t,a,-aa/2,hyper(P[t]));add(v+u,b,-(bb-ba*ab/aa)/2,hyper(P[u])) + +for t in range(v): + expected={s:-Q(G[t][s],2) for s in range(v) if s!=t and G[t][s] and s not in frame.values()} if t not in frame.values() else {} + assert rows[v+t]==expected,('side identity',t) + +scatter=[[Q(r[i],4) if t not in frame.values() else Q(0) for i in range(8)]+[Q(t==frame[i]) for i in range(8)] for t,r in enumerate(R)] +precondition=[] +for t,u,z in output_basis: + a,b=scatter[t].copy(),scatter[u].copy() + scatter[t]=[x/2-y/z for x,y in zip(a,b)] + scatter[u]=[x/2+y/z for x,y in zip(a,b)] + precondition.extend([['scale',v+u,(1/z).numerator,(1/z).denominator,[]], + ['add',v+u,v+t,1,2,[]],['add',v+t,v+u,-1,1,[]]]) +for target,source,q in reversed(coded_target_edges): + scatter[target-v]=[a-q*b for a,b in zip(scatter[target-v],scatter[source-v])] + precondition.append(['add',target,source,-q.numerator,q.denominator,[]]) +for r in range(len(cur)):climb(r,hyper(P[r-v]) if v<=r<2*v else FULL) +H[8]+=8;H[1]+=8 +assert sum(r*z for r,z in H.items())==9*NH+240*8+72,sum(r*z for r,z in H.items()) + +def apply(e,matrix): + if e[0]=='add': + _,t,s,a,b,*_=e;q=Q(a,b) + for j,x in list(matrix[s].items()): + z=matrix[t].get(j,Q(0))+q*x + if z:matrix[t][j]=z + else:matrix[t].pop(j,None) + else: + _,t,a,b,*_=e;q=Q(a,b);matrix[t]={j:q*x for j,x in matrix[t].items()} +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + e[-1]=list(FULL);return e +cut=[['add',v+t,centers[i],q.numerator,q.denominator,None] for t,row in enumerate(scatter) for i,q in enumerate(row) if q] +cleanup=[inverse(e) for e in reversed(A+B) if not v<=e[1]<2*v] +matrix=[{r:Q(1)} if r - entering end e's tail frame has a dimension that no helper_final frame has, so the mutant cannot be built. +Such a site is never skipped silently: the pins file MUST declare it under "not_applicable" ({site: reason}), the +declared set MUST equal the detected set, an identity is PROVEN by byte equality of the mutated and honest words (both +sha256 recorded), and a substitute mutant of the same class is built and MUST be rejected at the class's pinned reason: + extra_end -> the first premixed partner of h0 that is not yet ended, cold-ended at h0's frame; + other_hp: -> e's end moved to another helper_final frame of the dimension of e's own end frame. +Original docstring: layer_end_controls.py LAYERED-WORD.json.gz ROUTING OUTDIR (env PR635_CODE): adapted PR635 cold_end_controls.py (LayerReviewer): raw-word negative controls for the cold low-frame ends and the +refactored cleanup accepted by hpe_audit_and_transport.py. Every mutation MUST be rejected (AssertionError); the +unmutated word MUST pass. Apache-2.0. DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code.""" +import copy, gzip, hashlib, json, shutil, sys, tempfile +from pathlib import Path +import os +sys.path.insert(0, os.environ['PR635_CODE']) # PR635's unchanged hpe_audit_and_transport.py +import hpe_audit_and_transport as atc + +src, routing, outdir = Path(sys.argv[1]), Path(sys.argv[2]), Path(sys.argv[3]) +word = json.load(gzip.open(src)) +v, R = word['report']['v'], word['report']['R']; n = 2*v + R +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +meta = word['refactored_cleanup'] +cold = [int(h) for h in meta['cold_low_frame_ended_helpers']] +npre = meta['premix_gates']; nlow = meta['lower_frame_gates'] +early = word['early_cleanup']; eidx = {i for i, _ in early} +rest = [i for i in range(len(word['cleanup'])) if i not in eidx] + + +def trial(w): + """None if the transport audit accepts w, else the AssertionError message.""" + tmp = Path(tempfile.mkdtemp()) + p = tmp/'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w).encode(), mtime=0)) + try: + atc.run(p, routing, tmp/'out') + return None + except AssertionError as e: + return repr(e.args[0]) if e.args else 'AssertionError' + finally: + shutil.rmtree(tmp, ignore_errors=True) + + +# Pinned rejection reasons: each mutant must fail at this assertion of hpe_audit_and_transport.py (message substring). +ENDPOINT, COLDPRE, CONE = "'arbitrary-dirt endpoint'", 'touches a cold hyperplane-ended helper', 'hpe cone pre-check (row / column)' +WHY = dict(premix_to_precondition=COLDPRE, premix_dropped=COLDPRE, e_premix_dropped=ENDPOINT, lower_dropped=ENDPOINT, + remainder_dropped=ENDPOINT, coefficient=ENDPOINT, into_full='cleanup on non-FULL end', dyadic=ENDPOINT, frame_below="'nonmonotone'", + nonmonotone="'nonmonotone'", other_frame=CONE, cone=CONE, extra_end=COLDPRE, marker='cleanup is not the literal reversed inverse', + target='refactored cleanup touches a target', profile_pin='paid local profile differs from the reported local_profile', + entering_precondition='zero-frame precondition/compensation touches an entering helper') +_REASONS = dict(ENDPOINT=ENDPOINT, COLDPRE=COLDPRE, CONE=CONE) +NA_DECLARED = {} +if os.environ.get('LEC_REASON_PINS'): + for _k, _v in json.loads(Path(os.environ['LEC_REASON_PINS']).read_text()).items(): + if _k == 'not_applicable': NA_DECLARED = dict(_v); continue + assert _k in WHY, ('unknown mutant key', _k); WHY[_k] = _REASONS.get(_v, _v) +assert trial(word) is None, 'unmutated cold-end word must pass' +results = [] + + +def reject(name, mut, why): + """the mutation must be rejected, and for the pinned reason (a substring of the audit's assertion message).""" + w = copy.deepcopy(word); mut(w) + msg = trial(w) + assert msg is not None, 'cold-end mutation accepted: ' + name + assert why in msg, 'cold-end mutation %r rejected for the wrong reason: %s' % (name, msg[:300]) + results.append(name); print('rejected', name, '|', why, flush=True) + + +h0 = cold[0] +i0, U0 = next((i, f) for i, f in early if h0 in regs(word['cleanup'][i])) +r0 = rest[len(rest)//2] + + +def premix_to_precondition(w): # premix before the wrappers; compensation then reads the cold ends + w['precondition'] = w['precondition'] + w['A'][:npre]; w['A'] = w['A'][npre:] + + +def lower_gate_into_full(w): # a lower-frame gate on a cold-ended helper executed in the FULL remainder instead + w['early_cleanup'] = [x for x in w['early_cleanup'] if x[0] != i0] + + +def drop_cleanup_gate(w, i): # remove the gate AND its early_cleanup entry: a structurally valid word missing one gate + w['cleanup'].pop(i) + w['early_cleanup'] = [[j - (j > i), f] for j, f in w['early_cleanup'] if j != i] + + +def other_frame(w): # a different frame of the same dimension as the cold end (another cold helper's) + f = next(w['helper_final'][str(h)] for h in cold if w['helper_final'][str(h)] != w['helper_final'][str(h0)]) + w['helper_final'][str(h0)] = f + + +NA = [] # detected not-applicable sites: dict(site, reason, ...) +wsha = lambda w: hashlib.sha256(json.dumps(w, sort_keys=True, separators=(',', ':')).encode()).hexdigest() +HONEST_SHA = wsha(word) + + +def extra_cold_end(w): # declare a premixed partner of h0 cold-ended at h0's frame: fails the row/column cone + p = next(r for e in w['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + w['helper_final'][str(p)] = w['helper_final'][str(h0)] + + +_m = copy.deepcopy(word); extra_cold_end(_m) +if wsha(_m) == HONEST_SHA: # identity: the first partner is already ended at h0's frame + _p = next(r for e in word['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + _q = next(r for e in word['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e) and str(r) not in word['helper_final'] and not v <= r < 2*v) + NA.append(dict(site='extra_end', reason='partner %d already cold-ended at h0 %d frame (identity)' % (_p, h0), + honest_sha256=HONEST_SHA, mutated_sha256=wsha(_m), substitute='partner %d' % _q)) + + def extra_cold_end(w, q=_q): w['helper_final'][str(q)] = w['helper_final'][str(h0)] + assert wsha((lambda x: (extra_cold_end(x), x)[1])(copy.deepcopy(word))) != HONEST_SHA + + +reject('premix placed in the zero-frame precondition (before the cold wrappers)', premix_to_precondition, WHY['premix_to_precondition']) +reject('one premix gate dropped (the compensation then reads a cold-ended helper)', lambda w: w['A'].pop(npre - 1), WHY['premix_dropped']) +reject('one lower-frame cleanup gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, i0), WHY['lower_dropped']) +reject('one FULL-remainder gate dropped', lambda w: drop_cleanup_gate(w, r0), WHY['remainder_dropped']) +reject('lower-frame gate coefficient changed', lambda w: w['cleanup'][i0].__setitem__(3, w['cleanup'][i0][3] * 2), WHY['coefficient']) +reject('lower-frame gate moved into the FULL remainder (touches a cold-ended helper at FULL)', lower_gate_into_full, WHY['into_full']) +reject('lower-frame gate frame below its registers\' frames', lambda w: next(x for x in w['early_cleanup'] if x[0] == i0).__setitem__(1, U0[:-1]), WHY['frame_below']) +reject('cold end at another dim-4 frame', other_frame, WHY['other_frame']) +# PROFILE-PIN control: without its helper_final entry the cold-ended helper is a valid FULL-ended helper; the word is +# rejected because its reported paid profile (which counts the low end) no longer matches the frame chains. +reject('profile pin: cold end dropped (valid FULL end, but the reported profile counts the low end)', lambda w: w['helper_final'].pop(str(h0)), WHY['profile_pin']) +reject('extra cold end on a premixed partner (the compensation reads it before its wrapper)', extra_cold_end, WHY['extra_end']) +reject('refactored-cleanup marker removed (literal-inverse rule applies)', lambda w: w.pop('refactored_cleanup'), WHY['marker']) +reject('remainder gate retargeted to a target register', lambda w: w['cleanup'][r0].__setitem__(1, v + 3), WHY['target']) +reject('non-dyadic remainder coefficient', lambda w: w['cleanup'][r0].__setitem__(4 if w['cleanup'][r0][0] == 'add' else 3, 3 * w['cleanup'][r0][4 if w['cleanup'][r0][0] == 'add' else 3]), WHY['dyadic']) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('5', w['report']['local_profile']['5'] - 1), WHY['profile_pin']) +ent = [int(h) for h in sys.argv[4].split(',')] if len(sys.argv) > 4 else [int(h) for h in meta.get('entering_low_frame_ended_helpers', [])] +for e0 in ent: # ENTERING LOW-FRAME ENDS (ColdSupply extension; every entering end; absent for words without them) + j0 = next((i for i, e in enumerate(word['A'][:npre]) if e0 in regs(e)), None) + print('entering end', e0, 'premix gate', j0, flush=True) + k0, Ue = next((i, f) for i, f in early if e0 in regs(word['cleanup'][i])) + def to_pre(w, j0=j0): w['precondition'].append(w['A'][j0]); w['A'].pop(j0) + def other_hp(w, e0=e0, Ue=Ue): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Ue) and sorted(f) != sorted(Ue)) + if not any(len(f) == len(Ue) and sorted(f) != sorted(Ue) for f in word['helper_final'].values()): # unbuildable + Uh = word['helper_final'][str(e0)] + NA.append(dict(site='other_hp:%d' % e0, reason='tail frame dim %d; no other helper_final frame of that dim' % len(Ue), + dims_available=sorted({len(f) for f in word['helper_final'].values()}), substitute='end-frame dim %d' % len(Uh))) + + def other_hp(w, e0=e0, Uh=Uh): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Uh) and sorted(f) != sorted(Uh)) + if j0 is not None: reject('entering end %d: premix gate dropped' % e0, lambda w, j0=j0: w['A'].pop(j0), WHY['e_premix_dropped']) + if j0 is not None: reject('entering end %d: premix gate at frame [] instead of its entrance E' % e0, lambda w, j0=j0: w['A'][j0].__setitem__(-1, []), WHY['nonmonotone']) + if j0 is not None: reject('entering end %d: premix gate moved into the zero-frame precondition' % e0, to_pre, WHY['entering_precondition']) + reject('entering end %d: lower-frame gate dropped (gate and its early_cleanup entry)' % e0, lambda w, k0=k0: drop_cleanup_gate(w, k0), WHY['lower_dropped']) + reject('entering end %d: profile pin: end dropped (valid FULL end, but the reported profile counts the low end)' % e0, lambda w, e0=e0: w['helper_final'].pop(str(e0)), WHY['profile_pin']) + reject('entering end %d: end at another hyperplane' % e0, other_hp, WHY['cone']) +# Pinned rejection reasons of the COLD-BEYOND mutants (substrings of hpe_audit_and_transport.py assertion messages). +MYWHY = dict(tw_precondition=COLDPRE, tw_dropped=COLDPRE, tw_coefficient=COLDPRE, tw_other_block=COLDPRE, + tw_entering='zero-frame compensation reads an entering helper', + ab_dropped=ENDPOINT, ab_coefficient=ENDPOINT, ab_early=ENDPOINT, ab_live=ENDPOINT, ab_centre=ENDPOINT, + ab_lower="'nonmonotone'", ab_higher="'nonmonotone'", + sh_dropped=ENDPOINT, sh_coefficient=ENDPOINT, rel_dropped=ENDPOINT, rel_coefficient=ENDPOINT, rel_live=ENDPOINT, + h8_other=CONE, h8_lower=ENDPOINT) +# COLD-BEYOND primitives (present only when the word carries them): frame-[] target writes in the premix (explicit +# post-wrapper compensation of an ended helper's dirt) and forward absorptions into dead registers. +nw = meta.get('premix_target_writes', 0) +if nw: + wi = [i for i in range(npre) if v <= word['A'][i][1] < 2*v] + assert len(wi) == nw + + def writes_to_precondition(w): # the target writes run before the cold wrappers (inside the zero-frame precondition) + g = [w['A'][i] for i in wi]; w['precondition'] = w['precondition'] + g + w['A'] = [e for i, e in enumerate(w['A']) if i not in set(wi)] + reject('premix target writes placed in the zero-frame precondition (before the cold wrappers)', writes_to_precondition, MYWHY['tw_precondition']) + reject('one premix target write dropped (compensation must read an ended helper)', lambda w: w['A'].pop(wi[0]), MYWHY['tw_dropped']) + reject('premix target write coefficient changed', lambda w: w['A'][wi[0]].__setitem__(3, w['A'][wi[0]][3] * 2), MYWHY['tw_coefficient']) + # (reading another register that carries the SAME weight of the ended helper's dirt is a valid variant, so the mutant reads + # the same factory slot of the next block, which carries none of it) + entering_regs = sorted(int(r) for r in word.get('start_extra', {})) + reject('premix target write reads an entering helper', lambda w: w['A'][wi[0]].__setitem__(2, entering_regs[0]), MYWHY['tw_entering']) + reject('premix target write reads a cold helper of another block', lambda w: w['A'][wi[0]].__setitem__(2, 2*v + (w['A'][wi[0]][2] - 2*v + 16) % 224), MYWHY['tw_other_block']) +ab = meta.get('forward_absorption_A_indices', []) +if any(len(word['helper_final'][str(h)]) == 8 for h in cold): + # with dim-8 cold ends, the centre-retargeted absorption first leaks an ended helper's dirt into the cut's targets + MYWHY['ab_centre'] = COLDPRE +if ab: + # the ColdBeyond U_b absorption (q += -1/2 g); ColdThird's extra absorptions have their own controls below + a0 = next(a for a in ab if word['A'][a][3] * 2 == -word['A'][a][4]); g0 = word['A'][a0] + + def absorption_moved_early(w): # absorbed before the absorbed register's last kernel write + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[2] == w['A'][i][1] and w['A'][i][-1] == g0[-1]) + w['A'].insert(j, e) + + def absorption_into_live(w): # q += a g moved right after g's previous frame-mate gate, while q is still live + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[1] in regs(w['A'][i])) + w['A'].insert(j, e) + reject('forward absorption dropped', lambda w: w['A'].pop(a0), MYWHY['ab_dropped']) + reject('forward absorption into a centre (a live register read by the cut)', lambda w: w['A'][a0].__setitem__(1, next(c for c in word['centers'] if c not in g0[1:3] and c not in cold)), MYWHY['ab_centre']) + reject('forward absorption coefficient changed', lambda w: w['A'][a0].__setitem__(3, w['A'][a0][3] * 2), MYWHY['ab_coefficient']) + reject('forward absorption placed before the absorbed register\'s last kernel write', absorption_moved_early, MYWHY['ab_early']) + reject('forward absorption placed while the absorbing register is still live', absorption_into_live, MYWHY['ab_live']) + reject('forward absorption at a lower frame than its registers', lambda w: w['A'][a0].__setitem__(-1, w['A'][a0][-1][:-1]), MYWHY['ab_lower']) + reject('forward absorption at a higher frame (FULL) than its registers', lambda w: w['A'][a0].__setitem__(-1, [256, 128, 64, 32, 16, 8, 4, 2, 1]), MYWHY['ab_higher']) +# COLD-THIRD primitives (present only when the word carries them): several absorptions after one input gate, dirt-release +# absorptions (a dead port takes a live helper's value so that a hyperplane unit's column has no dirt on it), and cold ends at +# a dim-8 frame with lifted partners. +hyper = [h for h in cold if len(word['helper_final'][str(h)]) == 8] +if hyper and ab: + sh = next(a for a, b in zip(ab, ab[1:]) if b == a + 1) # two absorptions sharing one input anchor + rel = next(a for a in ab if a - 1 not in ab and a + 1 not in ab and word['A'][a][2] in hyper and word['A'][a][3] * 2 != -word['A'][a][4]) + hh = hyper[0]; ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + reject('second absorption sharing an input anchor dropped', lambda w: w['A'].pop(sh + 1), MYWHY['sh_dropped']) + reject('shared-anchor absorption coefficient changed', lambda w: w['A'][sh + 1].__setitem__(3, w['A'][sh + 1][3] * 2), MYWHY['sh_coefficient']) + reject('dirt-release absorption dropped', lambda w: w['A'].pop(rel), MYWHY['rel_dropped']) + reject('dirt-release absorption coefficient changed', lambda w: w['A'][rel].__setitem__(3, w['A'][rel][3] * 2), MYWHY['rel_coefficient']) + jr = max(i for i in range(npre, rel) if word['A'][i][0] == 'add' and word['A'][i][2] == word['A'][rel][1]) + + def release_while_read(w): # the release runs before a kernel gate that still READS the port (port live) + e = w['A'].pop(rel); w['A'].insert(jr, e) + reject('dirt-release absorption moved before a kernel gate that still reads the port', release_while_read, MYWHY['rel_live']) +if hyper: + # dim-8 cold-end controls for EVERY dim-8 cold end of the word (read from the word's helper_final and the recipe meta's + # cold_low_frame_ended_helpers), not one representative per terminal frame + for hh in hyper: + ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + Uh = word['helper_final'][str(hh)] + reject('dim-8 cold end %d (frame %s) at another dim-8 frame' % (hh, Uh), lambda w, hh=hh: w['helper_final'].__setitem__(str(hh), next(f for h, f in w['helper_final'].items() if len(f) == 8 and sorted(f) != sorted(w['helper_final'][str(hh)]))), MYWHY['h8_other']) + reject('dim-8 cold end %d (frame %s): one lower-frame gate dropped (gate and its early_cleanup entry)' % (hh, Uh), lambda w, ih=ih: drop_cleanup_gate(w, ih), MYWHY['h8_lower']) + reject('dim-8 cold end %d (frame %s): profile pin (end dropped)' % (hh, Uh), lambda w, hh=hh: w['helper_final'].pop(str(hh)), WHY['profile_pin']) +# FACTORED ACCUMULATOR (CarrierBypass; present only when the word carries one): a lower-frame tail gate a += x*g on two +# non-ended registers whose accumulator a is afterwards read by a dim-8 cold end's tail gate (h += y*a at its U). +ended_all = {int(h) for h in word['helper_final']} +tailg = [(i, word['cleanup'][i]) for i, _ in early] +accs = [] # EVERY factored accumulator gate (one per accumulator register a), each controlled on its own +for k, (i, e) in enumerate(tailg): + if e[0] == 'add' and e[1] not in ended_all and e[2] not in ended_all and len(next(f for j, f in early if j == i)) < 8: + if e[1] not in [word['cleanup'][j][1] for j in accs] and any(t[0] == 'add' and t[2] == e[1] and t[1] in hyper for _, t in tailg[k + 1:]): + accs.append(i) +for acc in accs: + a = word['cleanup'][acc][1] + reject('factored accumulator %d (gate %d) zeroed' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, 0), ENDPOINT) + reject('factored accumulator %d (gate %d) coefficient doubled' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, w['cleanup'][acc][3] * 2), ENDPOINT) +assert {x['site']: x['reason'] for x in NA} == NA_DECLARED, ('not-applicable sites differ from the pins file', NA, NA_DECLARED) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'COLD-END-CONTROLS.json').write_text(json.dumps(dict(status='PASS_COLD_END_RAW_WORD_CONTROLS', word=str(src), rejected=results, not_applicable=NA), indent=1) + '\n') +print('PASS', len(results), 'cold-end raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver.py new file mode 100644 index 0000000000..bc4360ef93 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver.py @@ -0,0 +1,177 @@ +#!/usr/bin/env python3 +"""Rebuild the leaver word: the no-triangle word with no-helper mutable-leaver all-K cells, and its native locals. + +Each cell (pair p, sign e) replaces the three face events of the blocks containing p and their three packet copies +by a 21-gate circuit on the cell's six leaver sources x_j (the face-event operands, which have no later reads and are +restored by the inherited cleanup at FULL) and its six targets y_i: 3 leaver gates x_k += c x_m, 3 target gates +y_a += c y_b (inverted at frame zero in the precondition and scatter, #781's recipe) and 15 reads y_i += c x_j. +Unit circuit (LeaverSAT, layered CP-SAT on the exact set model), relabelled per cell so that no y += y source carries +port-stage entering-helper dirt at the gate; coefficients rescaled exactly to the cell (C_ij = r_i c_j). +Input: a fresh `construction/reproduce.py --until word` output directory (hamming/, shadow-early/, shadow-prefix/). +Steps, each checked exactly (pins in LEAVER-PINS.json): + 0. cells: CODED-CELLS.json's scaled gates are re-derived from the unit circuits and the cell coefficients, and the + clean map Y_i = sum_j C_ij X_j is checked in exact rationals. + 1. gauge-forward: cgx_leaver.py (notri/cgx.py + the leaver edits) with TRI-LEAVER.json, XPARAM = notri/PRIO6.json. + 2. port0-3: notri/port_stage_x.py. + 3. regroup: REGROUP-LEAVER.json's changes where their `before` gate occurs (count pinned). + 4. hpe: PR635's build_hpe.candidates greedy with disjoint registers, build_hpe.apply (recipe pinned). + 5. cold44: notri/cold44x.py with EXTRAH and pinned pairing ranks; output sha, profile and widths pinned. + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs (pins). +Apache-2.0. LeaverSAT (Claude Code research agent), driver after construction/notri/reproduce_notri.py. +""" +import argparse, gzip, hashlib, importlib.util, json, os, shutil, subprocess, sys, time +from fractions import Fraction +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NOTRI = HERE.parent / 'notri' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def dump(p, v): + p.parent.mkdir(parents=True, exist_ok=True); p.write_bytes(gzip.compress(enc(v), mtime=0)) + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def check_cells(cells): + for c in cells: + C = [[Fraction(q) for q in r] for r in c['coefficients']] + col = [None] * 6; row = [Fraction(1)] + [None] * 5 + for j in range(1, 6): col[j] = C[0][j] + col[0] = C[1][0] / (C[1][2] / col[2]) + for i in range(1, 6): row[i] = C[i][(i + 1) % 6] / col[(i + 1) % 6] + assert all(C[i][j] == row[i] * col[j] for i in range(6) for j in range(6) if i != j), ('rank-one cell', c['cell']) + idx = lambda s: int(s[1:]) + scaled = [] + for t, s, q in c['unit']: + assert Fraction(q) == 1 + if t[0] == 'x': assert s[0] == 'x'; q = col[idx(s)] / col[idx(t)] + elif s[0] == 'y': q = row[idx(t)] / row[idx(s)] + else: q = row[idx(t)] * col[idx(s)] + scaled.append([t, s, str(q)]) + assert scaled == c['scaled'], ('scaled gates', c['cell']) + R = {f'x{j}': {j: Fraction(1)} for j in range(6)}; R.update({f'y{i}': {} for i in range(6)}) + for t, s, q in scaled: + for k, x in list(R[s].items()): R[t][k] = R[t].get(k, 0) + Fraction(q) * x + for i in range(6): + assert {k: x for k, x in R[f'y{i}'].items() if x} == {j: C[i][j] for j in range(6) if j != i}, ('clean map', c['cell'], i) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--word-dir', type=Path, required=True, help='construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + ap.add_argument('--word-only', action='store_true', help='stop after the pinned scalar word (input to the layers)') + ap.add_argument('--id', default='k5', help='cell set: TRI-LEAVER-, CODED-CELLS-, REGROUP-LEAVER-, LEAVER-PINS-') + ap.add_argument('--record-pins', action='store_true', help='write LEAVER-PINS.json from this run instead of checking') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + pins = {} if a.record_pins else read(HERE / ('LEAVER-PINS-%s.json' % a.id)); got = {} + def pin(k, v): + got[k] = v + if not a.record_pins: assert pins[k] == v, ('pin', k, v, pins[k]) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + structural = a.main.resolve() / 'research/structural-gain/frontier-composition' + wd = a.word_dir.resolve() + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + # 0. cells + cells = read(HERE / ('CODED-CELLS-%s.json' % a.id)); check_cells(cells); print('PASS cells', [c['cell'] for c in cells], flush=True) + # 1. gauge-forward + shutil.copy(HERE / ('TRI-LEAVER-%s.json' % a.id), out / 'TRI.json'); shutil.copy(HERE / ('CODED-CELLS-%s.json' % a.id), out / 'CODED-CELLS.json') + env['XPARAM'] = str(NOTRI / 'PRIO6.json') + raw = out / 'raw' + run('gauge-forward', HERE / 'cgx_leaver.py', wd / 'hamming', raw, out / 'TRI.json') + word = raw / 'FULL-WORD.json.gz'; pin('raw_sha256', hashlib.sha256(enc(read(word))).hexdigest()) + # 2. port stages + chain = [parent / 'complex-local/static44/inputs/RAW504.json.gz', structural / 'global-replay/base/split-centres/FULL-WORD.json.gz', + wd / 'shadow-early/FULL-WORD.json.gz', structural / 'multicold-eight-word/FULL-WORD.json.gz', + wd / 'shadow-prefix/FULL-WORD.json.gz'] + for i, (b, c) in enumerate(zip(chain, chain[1:])): + t = out / ('port%d' % i) + run('port%d' % i, NOTRI / 'port_stage_x.py', '--shadow-input', b, '--shadow-output', c, '--input', word, + '--map', raw / 'HELPER-MAP.json', '--gk-dir', gk, '--out', t) + word = t / 'FULL-WORD.json.gz' + # 3. regroup + w = read(word); rg = {json.dumps(c['before']): c['after'] for c in read(HERE / ('REGROUP-LEAVER-%s.json' % a.id))['changes']} + n = 0 + for part in ('A', 'B'): + for i, e in enumerate(w[part]): + k = json.dumps(e) + if k in rg: w[part][i] = rg[k]; n += 1 + sys.path.insert(0, str(gk)); import gk_word as GW, gk_common as GC + GW.V = GC.V = 112; GW.DATA = GC.DATA = 7168 + H = GW.profile(w) + w['report'].update(local_profile={str(k): z for k, z in sorted(H.items()) if z}, local_rank_mass=sum(r * z for r, z in H.items())) + pin('regroup_count', n); dump(out / 'regroup/FULL-WORD.json.gz', w); pin('regroup_sha256', hashlib.sha256(enc(w)).hexdigest()) + # 4. HPE + h = load('upstream_hpe', up / 'code/build_hpe.py') + used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + (out / 'HPE-RECIPE.json').write_text(json.dumps(dict(changes=ch))) + pin('hpe_recipe_sha256', hashlib.sha256(enc(dict(changes=ch))).hexdigest()) + w = h.apply(w, ch); dump(out / 'hpe/FULL-WORD.json.gz', w) + # 5. cold44 + hm = set(read(raw / 'HELPER-MAP.json')['map'].values()) + env['EXTRAH'] = json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)) + if not a.record_pins: env['PAIRING_RANKS'] = json.dumps(pins['pairing_ranks']) + run('cold44', NOTRI / 'cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', wd / 'hamming', '--upstream-package', up) + pin('pairing_ranks', [b['pairing_rank'] for b in read(out / 'cold44/CONSTRUCTION.json')['blocks']]) + word = out / 'cold44/FULL-WORD.json.gz'; w = read(word) + pin('cold44_sha256', hashlib.sha256(enc(w)).hexdigest()); rep = w['report'] + pin('R', rep['R']); pin('local_profile', rep['local_profile']); pin('width_inventory', rep['width_inventory']) + print('PASS leaver scalar word', got['cold44_sha256'], flush=True) + if not a.word_only: + for k in ('XPARAM', 'EXTRAH', 'PAIRING_RANKS'): env.pop(k, None) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz', '--out', local) + pin('canonical_sha256', hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest()) + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + pin('program_sha256', {o: checks[o]['sha256'] for o in ('forward', 'backward')}) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + pin('clifford_recipes_sha256', hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest()) + if a.record_pins: (HERE / ('LEAVER-PINS-%s.json' % a.id)).write_text(json.dumps(got, indent=1) + '\n') + print('DONE', out, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver_chain.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver_chain.py new file mode 100644 index 0000000000..19fcd28f4d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/leaver/reproduce_leaver_chain.py @@ -0,0 +1,187 @@ +#!/usr/bin/env python3 +"""Rebuild the leaver stack on top of the leaver cell word: layers (NP, p6n), promotions, joint exchange and U8-style +hybrids, and the final word's native locals. + +Input: a fresh `construction/leaver/reproduce_leaver.py --word-only` output directory (raw/HELPER-MAP.json, regroup/, +cold44/; the cell word and its regroup word are pinned there by LEAVER-PINS.json). Each step uses an unchanged signed +builder with a LeaverSAT recipe (data only), and every intermediate word is pinned: + 1. pivot-swap: ../layers/build_pivot_swap.py with PIVOT-SWAP-.json on the regroup word (its own 30 controls). + 2. hpe: PR635's build_hpe.candidates (greedy, disjoint registers) must equal HPE-RECIPE-.json; build_hpe.apply. + The swapped HPE word is pinned by the cold-layer recipes' input_content_sha256. + 3. cold44-exact: ../notri/cold44x.py on the swapped HPE word (pairing ranks pinned to LEAVER-PINS); its cold ends, + premix and low tails must equal the unswapped leaver construction's. + 4. layers: PR635's build_cold_end.apply(HPE, COLD-LAYERS-RECIPE-NP-) -> NP word and (.., -P6N-) -> p6n word; + output shas pinned by the recipes. + 5. promotion: ../promo/build_promotion.py with PROMO-RECIPE-.json on the p6n word; ../promo/promo_controls.py. + 6. jx: ../jx/build_jx.py with RECIPE-X4-.json on the promoted word; all recipe controls rerun at their pins. + 7. hybrids: ../barch/build_tri.py with RECIPE-U8-.json on the jx word; ../barch/run_controls.py (all outcomes). + 8. frames: build_frames_lv.py (LeaverSAT2) applies FRAME-RECIPE-LV-.json (B/T frame changes, exact global frame + optimum) with ../promo/build_promotion.apply; scalar program unchanged; 3 pin controls; output pinned. + 8b. layer-end-controls: layer_end_controls_leaver.py (v2: the signed per-end controls with per-word reason re-pins + and declared not-applicable sites, each replaced by a same-class substitute mutant) on the p6n, promoted, jx and + hybrid words with LEC-REASON-PINS-STACK-.json, and on the re-framed final word with LEC-REASON-PINS-.json; + counts, not-applicable sites and the sha256 of each pins file pinned. + 9. native, ledgers, local-replay, wrappers, phases on the final word; canonical, programs, Clifford pinned. +All counts and native pins are in CHAIN-PINS-.json (--record-pins writes it from a run instead of checking; +a checking run requires its pins to equal the file exactly). +Apache-2.0. Driver by ColdWitness over LeaverSAT's frozen recipes and the signed builders. +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +C = HERE.parent +MUTANTS = ('drop_restore', 'restore_full', 'drop_preread', 'donation_after') + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def csha(p): return hashlib.sha256(gzip.decompress(Path(p).read_bytes())).hexdigest() + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--leaver-dir', type=Path, required=True, help='construction/leaver/reproduce_leaver.py --word-only output') + ap.add_argument('--hamming', type=Path, required=True, help='hamming/ of the construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + ap.add_argument('--id', default='k5', help='recipe set id: every recipe and pin file below is -') + ap.add_argument('--record-pins', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + lp = read(HERE / ('LEAVER-PINS-%s.json' % a.id)) + pins = {} if a.record_pins else read(HERE / ('CHAIN-PINS-%s.json' % a.id)); got = {} + + def pin(key, value): + got[key] = value + if not a.record_pins: assert pins[key] == value, (key, value, pins.get(key)) + + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE', 'LEC_REASON_PINS', 'SW4_PIN'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True, extra=None): + t = time.monotonic(); e = dict(env, **(extra or {})) + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=e, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + return (out / (label + '.log')).read_text() + + def lec(label, word, pins_name): + pf = HERE / ('%s-%s.json' % (pins_name, a.id)); pin(label + '_pins_sha256', hashlib.sha256(pf.read_bytes()).hexdigest()) + run(label, HERE / 'layer_end_controls_leaver.py', word, routing, out / label, + extra=dict(PR635_CODE=str(up / 'code'), LEC_REASON_PINS=str(pf))) + c = read(out / label / 'COLD-END-CONTROLS.json'); assert c['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' + pin(label, len(c['rejected'])); pin(label + '_not_applicable', {x['site']: x['reason'] for x in c['not_applicable']}) + + ld = a.leaver_dir.resolve() + assert hashlib.sha256(enc(read(ld / 'cold44/FULL-WORD.json.gz'))).hexdigest() == lp['cold44_sha256'], 'leaver cell word' + rg = ld / 'regroup/FULL-WORD.json.gz' + sw = read(HERE / ('PIVOT-SWAP-%s.json' % a.id)) + assert hashlib.sha256(enc(read(rg))).hexdigest() == lp['regroup_sha256'] == sw['input_content_sha256'], 'regroup word' + # 1. pivot swaps + run('pivot-swap', C / 'layers/build_pivot_swap.py', '--input', rg, '--recipe', HERE / ('PIVOT-SWAP-%s.json' % a.id), '--gk-dir', gk, '--out', out / 'swap') + w = read(out / 'swap/FULL-WORD.json.gz'); assert hashlib.sha256(enc(w)).hexdigest() == sw['output_content_sha256'], 'swap word' + # 2. HPE + h = load('upstream_hpe', up / 'code/build_hpe.py'); used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + assert ch == read(HERE / ('HPE-RECIPE-%s.json' % a.id))['changes'], 'HPE recipe' + w = h.apply(w, ch); (out / 'hpe').mkdir(); (out / 'hpe/FULL-WORD.json.gz').write_bytes(gzip.compress(enc(w), mtime=0)) + rnp, rp6 = read(HERE / ('COLD-LAYERS-RECIPE-NP-%s.json.gz' % a.id)), read(HERE / ('COLD-LAYERS-RECIPE-P6N-%s.json.gz' % a.id)) + assert hashlib.sha256(enc(w)).hexdigest() == rnp['input_content_sha256'] == rp6['input_content_sha256'], 'swapped HPE word' + # 3. cold44 on the swapped word: same ends, premix and tails + hm = set(read(ld / 'raw/HELPER-MAP.json')['map'].values()) + run('cold44-exact', C / 'notri/cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', a.hamming.resolve(), '--upstream-package', up, + extra=dict(EXTRAH=json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)), PAIRING_RANKS=json.dumps(lp['pairing_ranks']))) + new, old = read(out / 'cold44/RECIPE.json.gz'), read(ld / 'cold44/RECIPE.json.gz') + for key in ('premix', 'early_cleanup', 'cold_ends'): assert new[key] == old[key], ('swapped cold44 differs', key) + tail = len(new['early_cleanup']); assert new['cleanup'][:tail] == old['cleanup'][:tail], 'low tails' + # 4. NP and p6n layers + bce = load('upstream_cold', up / 'code/build_cold_end.py') + for name, r in (('np', rnp), ('p6n', rp6)): + lw = bce.apply(w, r); raw = enc(lw); assert hashlib.sha256(raw).hexdigest() == r['output_content_sha256'], (name, 'word') + (out / name).mkdir(); (out / name / 'FULL-WORD.json.gz').write_bytes(gzip.compress(raw, mtime=0)) + pin(name + '_profile', lw['report']['local_profile']) + p6n = out / 'p6n/FULL-WORD.json.gz'; lec('lec-p6n', p6n, 'LEC-REASON-PINS-STACK') + # 5. promotion + pr = HERE / ('PROMO-RECIPE-%s.json' % a.id) + run('promotion', C / 'promo/build_promotion.py', '--input', p6n, '--recipe', pr, '--out', out / 'promo', portable=False) + assert csha(out / 'promo/FULL-WORD.json.gz') == read(pr)['expected']['output_content_sha256'] + run('promo-controls', C / 'promo/promo_controls.py', '--input', p6n, '--recipe', pr, '--audit', C.parent / 'independent/audit_local.py', + '--out', out / 'PROMO-CONTROLS.json', portable=False) + pc = read(out / 'PROMO-CONTROLS.json'); assert pc['honest'] == 'PASS'; pin('promo_controls', pc['rejected']) + lec('lec-promo', out / 'promo/FULL-WORD.json.gz', 'LEC-REASON-PINS-STACK') + # 6. jx + xr = HERE / ('RECIPE-X4-%s.json' % a.id); rec = read(xr); inp = out / 'promo/FULL-WORD.json.gz' + (out / 'jx').mkdir(); jw = out / 'jx/FULL-WORD.json.gz' + run('jx', C / 'jx/build_jx.py', '--input', inp, '--recipe', xr, '--out', jw, portable=False) + assert csha(jw) == rec['expected']['output_content_sha256'] + for name, cc in sorted(rec['controls'].items()): + log = run('jx-control-' + name, C / 'jx/build_jx.py', '--input', inp, '--recipe', xr, '--control', name, portable=False) + if 'rejection_expected' in cc: assert 'CONTROL PINNED' in log, (name, log[-300:]) + else: assert ('OK ' + cc['expected_sha']) in log, (name, log[-300:]) + pin('jx_controls', sorted(rec['controls'])) + lec('lec-jx', jw, 'LEC-REASON-PINS-STACK') + # 7. hybrids + ur = HERE / ('RECIPE-U8-%s.json' % a.id); u = read(ur); (out / 'hyb').mkdir(); fw = out / 'hyb/FULL-WORD.json.gz' + run('hybrids', C / 'barch/build_tri.py', jw, ur, fw, portable=False) + assert csha(fw) == u['expect_sha256'] + run('hybrid-controls', C / 'barch/run_controls.py', jw, ur, C.parent / 'independent/audit_local.py', out / 'hybrid-controls', portable=False) + res = read(out / 'hybrid-controls/controls.json') + want = ['C0_identity', 'recipe', *MUTANTS] + [m + '@' + str(v['X']) for v in u.get('variants', []) for m in MUTANTS] + assert sorted(res) == sorted(want) and all(x['ok'] for x in res.values()), res + pin('hybrid_controls', sorted(want)) + lec('lec-hyb', fw, 'LEC-REASON-PINS-STACK') + # 8. frame re-optimisation (LeaverSAT2): exact global frame optimum of the hybrid word; scalar program unchanged + fr = HERE / ('FRAME-RECIPE-LV-%s.json' % a.id); frec = read(fr) + run('frames', HERE / 'build_frames_lv.py', fw, out / 'frames', fr, portable=False) + fw = out / 'frames/FULL-WORD.json.gz'; assert csha(fw) == frec['expected']['output_content_sha256'] + pin('frame_build_controls', len(read(out / 'frames/BUILD.json')['rejected_controls'])) + # 8b. layer-end controls on the re-framed final word (v2, not-applicable sites declared in LEC-REASON-PINS-): + # the frame re-optimisation lowers an entering-end tail frame to a dimension no helper_final frame has, so that + # site's 'end at another hyperplane' mutant is replaced by its same-class substitute. + lec('lec-frames', fw, 'LEC-REASON-PINS') + # 9. native locals of the final word + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', fw, '--routing', routing, '--out', local) + pin('canonical_sha256', hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest()) + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json'); pin('program_sha256', {o: checks[o]['sha256'] for o in ('forward', 'backward')}) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + pin('clifford_recipes_sha256', hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest()) + if a.record_pins: (out / ('CHAIN-PINS-%s.json' % a.id)).write_bytes((json.dumps(got, indent=1) + '\n').encode()) + else: assert got == pins, ('chain pins differ', sorted(set(got) ^ set(pins))) + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/PRIO6.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/PRIO6.json new file mode 100644 index 0000000000..069a7bf5a5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/PRIO6.json @@ -0,0 +1 @@ +{"prio": {"0,1,2,3": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "0,1,4,5": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "0,1,6,7": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "2,3,4,5": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "2,3,6,7": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "4,5,6,7": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]]}} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/cgx.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/cgx.py new file mode 100644 index 0000000000..08e80804eb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/cgx.py @@ -0,0 +1,469 @@ +# Round20 early-coordinate-center / own-Y variant, prepared for icekylinx +# with OpenAI Codex assistance. Apache-2.0. Scalar elementary-operation +# helpers below are retained from the attributed PR514 construct_partial.py. +# Adapted by OpenAI Codex for isolated structural research. +# Modified from PR425 by icekylinx with Codex assistance. +"""Full discovery word for Hamming packets with borrowed X and Y registers. + +This changes the scalar architecture. It is not accepted by the old restricted +gx interface: source bases may change until full-frame cleanup, and targets use +an explicitly inverted output basis. No supplier admission is asserted. +""" +import copy,gzip,json,math,time +import itertools as it +from collections import Counter,defaultdict +from fractions import Fraction as Q +from pathlib import Path + +import sys +INPUT=Path(sys.argv[1]);OUT=Path(sys.argv[2]);OUT.mkdir(parents=True,exist_ok=False);D=json.loads((INPUT/'PROTOTYPE.json').read_text()) +P=D['binary_ports'];R=D['root_lines'];v=120;h=9 +modules=json.load(gzip.open(INPUT/'PACKET-PROGRAMS.json.gz')) +# AtomScout: leaver-read K-triangles (schedule from atom1.py / rog.py CP-SAT) +TRI=json.loads(Path(sys.argv[3]).read_text()) +FULLT={(tuple(tr['p']),tr['e']) for tr in TRI['triangles']} +TRI_COORDS={t+8 for tr in TRI['triangles'] for t,_,_ in tr['reads']} +import os as _o +COPYL=json.loads(open(_o.environ['XPARAM']).read()).get('copyl',[]) if _o.environ.get('XPARAM') else [] +NH=504-3*len(FULLT)+len(COPYL) + +def basis(vectors): + b={} + for x in vectors: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def inside(a,b):return basis(a+b)==b +def hyper(p):return basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) +FULL=basis([1<=v,r)) + for col,s in enumerate(ids): + k=next(i for i in range(col,len(regs)) if rows[regs[i]].get(s,Q(0))) + swap(regs[k],regs[col],F) + scale(regs[col],1/rows[regs[col]][s],F) + for i in range(len(regs)): + if i!=col and rows[regs[i]].get(s,Q(0)):add(regs[i],regs[col],-rows[regs[i]][s],F) + assert all(rows[regs[i]]=={s:Q(1)} for i,s in enumerate(ids)) + M=[[Q(R[s][i]) for s in ids] for i in c] + def qr_rank(rs): + bs={} + for r in rs: + r=r.copy() + for i,b in sorted(bs.items()): + if r[i]:q=r[i];r=[x-q*y for x,y in zip(r,b)] + i=next((i for i,x in enumerate(r) if x),None) + if i is not None:q=r[i];bs[i]=[x/q for x in r] + return len(bs) + assert qr_rank(M)==4 + for rr0 in PRIO.get(",".join(map(str,c)),[])+PRIORITY[",".join(map(str,c))]["rows"]: + rr=list(map(Q,rr0)) + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + for i in range(8): + if len(M)==8:break + rr=[Q(i==j) for j in range(8)] + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + assert len(M)==8 + linear(regs,M,F) + for i,r in zip(c,regs): + assert rows[r]=={s:Q(R[s][i]) for s in ids} + block_totals[c,i]=r + +# All centers are complete while Y is still at zero. This is the crucial +# difference from an illegal early-own-Y prefix using the old center order. +centers=[] +for i in range(8): + regs=[block_totals[c,i] for c in sorted(blocks) if i in c] + F=hyper(P[frame[i]]);a=regs[0] + for b in regs[1:]:add(a,b,1,F) + centers.append(a) +centers += [frame[i] for i in range(8)] +center_frames=[cur[r] for r in centers] +assert list(map(len,center_frames))==[8]*8+[1]*8 +assert all(cur[v+t]==() for t in range(v)) + +phase=B +for t,(r,coef,F) in sorted(own_rows.items()): + if t in TRI_COORDS:continue + assert cur[r]==F + add(v+t,r,coef,F) +# requests are needed for TRI coefficients +requests=defaultdict(list) +for pid,pair in enumerate(pairs): + if not pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + requests[key1].append((t,-Q(mat[0][0],2))) + requests[key2].append((u,-Q(mat[0][1],2))) +reqcoef={t:(key,coef) for key,reqs in requests.items() for t,coef in reqs} +def face_info(c,p,eps): + z=blocks[c];keys=[(pp,ee) for pp in it.combinations(c,2) for ee in (-1,1)] + r_local,alpha=z['outputs'][keys.index((p,eps))] + j=[j for j in range(40,len(z['events'])) if z['events'][j][0]==r_local];assert len(j)==1 + return j[0],Q(alpha) +tri_join_counts=Counter();TRILOG=[] +lcopy={} +for s8 in COPYL: + r=s8+8;c=len(cur);cur.append(());rows.append({});shadow.append(None);add(c,r,1,cur[r]);lcopy[r]=c +BF={c:basis([P[x] for x in z['receipt']['source_lines']]) for c,z in blocks.items()} +HYB={(tuple(map(int,h[0])),tuple(map(int,h[1])),int(h[2])) for h in XP.get('hyb',[])} +HYBLOG=[] +def triread(t,blk,r,q): + F=basis(cur[v+t]+cur[r]);assert inside(F,hyper(P[t])),('TRI frame',t,blk,r,cur[v+t],cur[r],hyper(P[t]),[x for x in TRILOG if x[2]==r],HYBLOG) + tri_join_counts[len(F)]+=1;add(v+t,r,q,F);TRILOG.append([t,list(blk),r,str(q),list(F),list(cur[r])]) +for tr in TRI['triangles']: + p,eps=tuple(tr['p']),tr['e'] + hb={blk for _,blk,_ in map(lambda x:(x[0],tuple(x[1]),x[2]),tr['reads']) if (blk,p,eps) in HYB} + own=[];rest=[] + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];r0=r;r=lcopy.get(r,r) + key,coef=reqcoef[t];assert key[1]==p and key[2]==eps,(key,p,eps) + if blk==key[0]: + rr,c0,F0=own_rows[t];assert rr==r0;own.append((t,blk,r,c0)) + else: + j,alpha=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert loc in ev[:2] + rest.append((t,blk,loc,r,coef*alpha)) + if not hb: + # original interleaved order + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:q=own_rows[t][1] + else:j,alpha=face_info(blk,p,eps);q=coef*alpha + triread(t,blk,r,q) + continue + items=[] # (kind, t, reg, q, blk) + for t,blk,r,q in own:items.append(('r',t,r,q,blk,blk in hb)) + for blk in sorted(hb):items.append(('e',None,None,None,blk,True)) + done=set() + for t,blk,loc,r,q in rest: + if blk in hb: + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j] + ws=[x for x in rest if x[0]==t and x[1]==blk];assert len(ws)==2 and ws[0][4]==ws[1][4] and {ws[0][2],ws[1][2]}==set(ev[:2]) + if (t,blk) in done:continue + done.add((t,blk));items.append(('m',t,maps[blk][ev[0]],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + # Original read order with the two half reads collapsed into one M read at the first half's slot; the face event goes + # just before the first M read of its block; own reads of the M register are hoisted ahead of that event. + def evinfo(blk): + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert ev[2]==ev[3]==1,ev + mpb=maps[blk];return mpb[ev[0]],mpb[ev[1]],tuple(blocks[blk]['event_frames'][j]) + items=[] + seen=set() + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:items.append(('r',t,r,own_rows[t][1],blk,blk in hb)) + else: + j,alpha=face_info(blk,p,eps);q=coef*alpha + if blk in hb: + if (t,blk) not in seen:seen.add((t,blk));continue + items.append(('m',t,evinfo(blk)[0],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + for blk in sorted(hb): + k0=min(i for i,x in enumerate(items) if x[0]=='m' and x[4]==blk) + items.insert(k0,('e',None,None,None,blk,True)) + n=len(items) + def step(it,st): + k,t,r,q,blk,h=it;g=lambda x:st.get(x,cur[x]) + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(g(a_))+list(g(b_))) + return {a_:FF,b_:FF} if inside(FF,BF[blk]) else None + F=basis(list(g(v+t))+list(g(r))) + if not inside(F,hyper(P[t])):return None + if h and k=='r' and r==evinfo(blk)[1] and not inside(F,BF[blk]):return None + return {v+t:F,r:F} + def allowed(i,used): + k,t,r,q,blk,h=items[i] + evi=[j for j,x in enumerate(items) if x[0]=='e' and x[4]==blk] if h else [] + if k=='e':return all(j in used for j,x in enumerate(items) if x[0]=='r' and x[4]==blk and x[5] and x[2]==evinfo(blk)[0]) + if k=='m':return evi[0] in used + if k=='r' and h and r==evinfo(blk)[0]:return evi[0] not in used + return True + budget=[int(os.environ.get('HYBBUDGET','300000'))];memo=set() + def dfs(st,used,order): + if len(order)==n:return order + budget[0]-=1 + if budget[0]<0:return None + sig=(used,tuple(sorted(st.items()))) + if sig in memo:return None + memo.add(sig) + for i in range(n): + if i in used or not allowed(i,used):continue + d=step(items[i],st) + if d is None:continue + ns=dict(st);ns.update(d);res=dfs(ns,used|{i},order+[i]) + if res:return res + return None + import sys as _s;_s.setrecursionlimit(20000) + order=dfs({},frozenset(),[]) + assert order,('no feasible hybrid order',p,eps,sorted(hb),budget) + for i in order: + k,t,r,q,blk,h=items[i] + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(cur[a_])+list(cur[b_]));add(a_,b_,1,FF);HYBLOG.append([list(blk),list(p),eps,list(FF)]) + else:triread(t,blk,r,q) + +packets={} +for c,z in sorted(blocks.items()): + mp=maps[c] + keys=[(p,eps) for p in it.combinations(c,2) for eps in (-1,1)] + skipev={face_info(c,p,eps)[0] for p,eps in keys if (p,eps) in FULLT} + for j,(e,F) in enumerate(list(zip(z['events'],z['event_frames']))[40:]): + if j not in early[c] and 40+j not in skipev: + t,s,a,b=e;add(mp[t],mp[s],Q(a,b),tuple(F)) + for key,(r,alpha) in zip(keys,z['outputs']): + if tuple(key) in FULLT:skip();continue + a=mp[r];b=alloc();add(b,a,1,cur[a]) + consumers=sorted(d for d in blocks if d!=c and set(key[0])<=set(d)) + assert len(consumers)==2 + for target,r in zip(consumers,(a,b)):packets[c,key[0],key[1],target]=(r,Q(alpha)) + +# Both tetrahedra use the same partition. A selected key has exactly two +# selected Y loads and no ordinary M consumer. Supply its two raw halves in +# opposite orders and never form that M. Other keys retain the old M path. +second=[];first_join_counts=Counter() +for key,reqs in sorted(requests.items()): + assert len(reqs)==2 + c,p,eps=key + if (p,eps) in FULLT:continue + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d));a,b=ds + for j,(target,coef) in enumerate(sorted(reqs)): + first_source,second_source=(a,b) if j==0 else (b,a) + r,alpha=packets[first_source,p,eps,second_source] + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + first_join_counts[len(F)]+=1;add(v+target,r,coef*alpha,F) + r,alpha=packets[second_source,p,eps,c] + second.append((target,r,coef*alpha)) + +Ms={} +for c in sorted(blocks): + for p in it.combinations(c,2): + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d)) + for eps in (-1,1): + if (c,p,eps) in requests:continue + (a,alpha),(b,beta)=[packets[d,p,eps,c] for d in ds] + F=basis(cur[a]+cur[b]);add(a,b,beta/alpha,F) + Ms[c,p,eps]=(a,alpha) + +consumers=defaultdict(list) +for pid,pair in enumerate(pairs): + for key in pair['keys']:consumers[key].append(pid) +slots={} +for key,uses in sorted(consumers.items()): + assert len(uses)==2 + if key in requests: + assert all(pairs[i]['selected'] for i in uses) + continue + assert all(not pairs[i]['selected'] for i in uses) + a,alpha=Ms[key] + for j,pid in enumerate(uses): + if j==0:r=a + else:r=alloc();add(r,a,1,cur[a]) + slots[pid,key]=(r,alpha) +assert len(cur)-240==NH,len(cur)-240 + +selected_join_counts=Counter() +for target,r,coef in second: + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + selected_join_counts[len(F)]+=1;add(v+target,r,coef,F) +output_basis=[] +for pair in pairs: + if not pair['selected']:continue + (t,u),mat=pair['targets'],pair['matrix'] + F=basis(cur[v+t]+cur[v+u]);assert inside(F,hyper(P[t])) and inside(F,hyper(P[u])) + add(v+t,v+u,1,F);add(v+u,v+t,-Q(1,2),F) + z=-Q(2*mat[1][0],mat[0][0]);scale(v+u,z,F);output_basis.append((t,u,z)) + +for pid,pair in enumerate(pairs): + if pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + (a,alpha),(b,beta)=slots[pid,key1],slots[pid,key2] + F=basis(cur[a]+cur[b]);aa,ab=Q(mat[0][0])*alpha,Q(mat[0][1])*beta + ba,bb=Q(mat[1][0])*alpha,Q(mat[1][1])*beta + add(a,b,ab/aa,F);q=ba/(bb-ba*ab/aa);add(b,a,q,F) + add(v+t,a,-aa/2,hyper(P[t]));add(v+u,b,-(bb-ba*ab/aa)/2,hyper(P[u])) + +for t in range(v): + expected={s:-Q(G[t][s],2) for s in range(v) if s!=t and G[t][s] and s not in frame.values()} if t not in frame.values() else {} + assert rows[v+t]==expected,('side identity',t) + +scatter=[[Q(r[i],4) if t not in frame.values() else Q(0) for i in range(8)]+[Q(t==frame[i]) for i in range(8)] for t,r in enumerate(R)] +precondition=[] +for t,u,z in output_basis: + a,b=scatter[t].copy(),scatter[u].copy() + scatter[t]=[x/2-y/z for x,y in zip(a,b)] + scatter[u]=[x/2+y/z for x,y in zip(a,b)] + precondition.extend([['scale',v+u,(1/z).numerator,(1/z).denominator,[]], + ['add',v+u,v+t,1,2,[]],['add',v+t,v+u,-1,1,[]]]) +for r in range(len(cur)):climb(r,hyper(P[r-v]) if v<=r<2*v else FULL) +H[8]+=8;H[1]+=8 +assert sum(r*z for r,z in H.items())==9*NH+240*8+72,sum(r*z for r,z in H.items()) + +def apply(e,matrix): + if e[0]=='add': + _,t,s,a,b,*_=e;q=Q(a,b) + for j,x in list(matrix[s].items()): + z=matrix[t].get(j,Q(0))+q*x + if z:matrix[t][j]=z + else:matrix[t].pop(j,None) + else: + _,t,a,b,*_=e;q=Q(a,b);matrix[t]={j:q*x for j,x in matrix[t].items()} +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + e[-1]=list(FULL);return e +cut=[['add',v+t,centers[i],q.numerator,q.denominator,None] for t,row in enumerate(scatter) for i,q in enumerate(row) if q] +cleanup=[inverse(e) for e in reversed(A+B) if not v<=e[1]<2*v] +matrix=[{r:Q(1)} if r>k&1:a^=d[k] + if a: + k=a.bit_length()-1 + for j in d: + if d[j]>>k&1:d[j]^=a + d[k]=a + return tuple(d[k] for k in sorted(d,reverse=True)) +def inside(a,b):return basis(a+b)==b +def regs(e):return e[1:3] if e[0]=='add' else e[1:2] +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]=-e[3] + else:e[2],e[3]=e[3],e[2] + return e +def apply(e,M,mapping=None): + t=mapping[e[1]] if mapping is not None else e[1] + if e[0]=='add': + s=mapping[e[2]] if mapping is not None else e[2];q=Q(e[3],e[4]) + for j,a in M[s].items(): + x=M[t].get(j,Q(0))+q*a + if x:M[t][j]=x + else:M[t].pop(j,None) + else: + q=Q(e[2],e[3]);M[t]={j:q*a for j,a in M[t].items()} +def rref(A): + a=[list(map(Q,row)) for row in A];nr=len(a);nc=len(a[0]) if nr else 0;row=0;piv=[] + for c in range(nc): + k=next((i for i in range(row,nr) if a[i][c]),None) + if k is None:continue + a[row],a[k]=a[k],a[row];q=a[row][c];a[row]=[x/q for x in a[row]] + for i in range(nr): + if i!=row and a[i][c]:q=a[i][c];a[i]=[x-q*y for x,y in zip(a[i],a[row])] + piv.append(c);row+=1 + if row==nr:break + return a,piv +def rank(A):return len(rref(A)[1]) +def null(A,nc=None): + if A:a,piv=rref(A);nc=len(a[0]) + else:a=[];piv=[];assert nc is not None + free=[j for j in range(nc) if j not in piv];out=[[Q(0) for j in free] for i in range(nc)] + for k,c in enumerate(free):out[c][k]=Q(1) + for i,c in enumerate(piv): + for k,j in enumerate(free):out[c][k]=-a[i][j] + return out +def mm(A,B): + if not A:return [] + if not B:return [[] for row in A] + bt=list(zip(*B));return [[sum((a*b for a,b in zip(row,col)),Q(0)) for col in bt] for row in A] +def tr(A):return list(map(list,zip(*A))) +def inv(A): + n0=len(A);a,p=rref([row+[Q(i==j) for j in range(n0)] for i,row in enumerate(A)]) + assert p[:n0]==list(range(n0)) + return [row[n0:] for row in a] +def unit(q): + if not q:return False + a=abs(q.numerator);b=q.denominator + return not a&(a-1) and not b&(b-1) +def dyadic(q):return not q.denominator&(q.denominator-1) +def opadd(t,s,q,F):return ['add',t,s,q.numerator,q.denominator,list(F)] +def opscale(t,q,F):return ['scale',t,q.numerator,q.denominator,list(F)] +def eliminate(M,ids,F,skip=()): + """Return legal dyadic row operations taking an invertible sparse matrix to I.""" + skip=set(skip);ops=[];dim=len(M) + def add(i,j,q): + if q: + assert dyadic(q);e=opadd(ids[i],ids[j],q,F);ops.append(e) + for c,x in M[j].items(): + z=M[i].get(c,Q(0))+q*x + if z:M[i][c]=z + else:M[i].pop(c,None) + def scale(i,q): + if q!=1: + assert unit(q);ops.append(opscale(ids[i],q,F));M[i]={c:q*x for c,x in M[i].items()} + def swap(i,j): + if i!=j: + add(i,j,Q(1));add(j,i,Q(-1));add(i,j,Q(1));scale(j,Q(-1)) + for c in range(dim): + if c in skip: + assert M[c]=={c:Q(1)} and all(not M[i].get(c) for i in range(dim) if i!=c) + continue + cand=[i for i in range(c,dim) if i not in skip and M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + if k is None: + # Elementary Euclidean row additions reduce the pivot-column numerator gcd. + assert cand,('singular',c) + while k is None: + cand.sort(key=lambda i:abs(M[i][c]));a=cand[0] + b=next((i for i in cand[1:] if M[i][c]),None) + if b is None:raise ValueError(('non-dyadic determinant pivot',c,M[a][c])) + rat=M[b][c]/M[a][c];q=rat.numerator//rat.denominator + if q==0:q=1 if rat>0 else -1 + add(b,a,Q(-q));cand=[i for i in cand if M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + swap(c,k);scale(c,1/M[c][c]) + for i in range(dim): + if i!=c and M[i].get(c): + assert i not in skip + add(i,c,-M[i][c]) + assert all(row=={i:Q(1)} for i,row in enumerate(M)) + return ops +def realize(A,ids,F): + M=[{j:Q(x) for j,x in enumerate(row) if x} for row in A] + return [inverse(e) for e in reversed(eliminate(M,ids,F))] +# Reconstruct the actual non-target map after the inherited HPE tail. +inherited_tail=[w['cleanup'][i][:-1]+[list(f)] for i,f in w.get('early_cleanup',[])] +mainN=[e for e in w['A']+w['B'] if not v<=e[1]<2*v] +M=[{i:Q(1)} for i in range(len(N))] +for e in mainN+inherited_tail:apply(e,M,ix) +MI=[{i:Q(1)} for i in range(len(N))] +for e in reversed(mainN+inherited_tail):apply(inverse(e),MI,ix) +cur={x:(w['ports'][x],) if xlen(ih):ih.append(j) + if len(ih)==r:break + assert len(ih)==r + endhs=[N[I[j]] for j in ih];endhidx=[hs.index(h) for h in endhs] + kerR=null(RR,NB);Qmat=[[Q(0) for j in range(NB)] for i in range(NB)] + for j,hj in enumerate(endhidx): + for i in range(NB):Qmat[i][hj]=qH[i][j] + other=[j for j in range(NB) if j not in endhidx] + for k,j in enumerate(other): + for i in range(NB):Qmat[i][j]=kerR[i][k] + assert rank(Qmat)==NB + pops=realize(Qmat,hs,());premix+=pops + T=[[Q(i==j)-sum((U[i][k]*L[k][j] for k in range(r)),Q(0)) for j in range(len(I))] for i in range(len(I))] + for k,i in enumerate(ih):T[i]=L[k] + tops=realize(T,[N[i] for i in I],F);tail+=tops + # Right-compose this initial helper premix; other blocks have disjoint H sets. + for row in Mafter: + vals=[row.get(h,Q(0)) for h in H] + if any(vals): + for hj in H:row.pop(hj,None) + for j,hj in enumerate(H): + z=sum((vals[i]*Qmat[i][j] for i in range(NB)),Q(0)) + if z:row[hj]=z + for e in tops:apply(e,Mafter,ix) + ends.update({h:list(F) for h in endhs}) + plans.append(dict(block=b,frame=list(F),registers=[N[i] for i in I],ends=endhs,pairing_rank=r,premix_gates=len(pops),tail_gates=len(tops),Q=[[str(x) for x in row] for row in Qmat],T=[[str(x) for x in row] for row in T])) + print('BLOCK',b,'ends',endhs,'Qops',len(pops),'Tops',len(tops),flush=True) +# Check actual post-tail isolation before constructing the high-frame inverse. +allends=set(ends)|set(map(int,w.get('helper_final',{}))) +for h in allends: + j=ix[h];assert Mafter[j]=={j:Q(1)},('row not isolated',h,Mafter[j]);assert all(not row.get(j) for i,row in enumerate(Mafter) if i!=j),('column not isolated',h) +print('EXACT_ISOLATED',len(ends),'new;',len(allends),'total',round(time.monotonic()-t0,3),flush=True) +fullops=eliminate(copy.deepcopy(Mafter),N,F9,[ix[x] for x in allends]) +print('FULL_INVERSE',len(fullops),round(time.monotonic()-t0,3),flush=True) +# Cancel new cold-axis target responses inside A, after their wrappers. +Dirt=[({h:Q(1)} if h in ends else {}) for h in range(n)] +for e in premix+w['A']+w['cut']+w['B']:apply(e,Dirt) +for e in w['precondition']:apply(e,Dirt) +postcomp=[opadd(y,h,-a,()) for y in range(v,2*v) for h,a in sorted(Dirt[y].items()) if a] +assert all(h in ends for e in postcomp for h in [e[2]]) +new=copy.deepcopy(w);new['A']=postcomp+premix+w['A'];new['cleanup']=inherited_tail+tail+fullops +new['early_cleanup']=[[i,e[-1]] for i,e in enumerate(inherited_tail+tail)] +new['helper_final'].update({str(h):f for h,f in ends.items()}) +new['refactored_cleanup']={'kind':'source_branch_gauge_and_retired_completion_cold44','new_cold_ends':len(ends),'exact_non_target_isolation_checked':True,'high_inverse':'dyadic_sparse_Gauss_Jordan'} +# Derive paid profile by subtracting and adding literal frame-chain counts. +spec=importlib.util.spec_from_file_location('upstream_cold_end',args.upstream_package/'code/build_cold_end.py') +profile_module=importlib.util.module_from_spec(spec);spec.loader.exec_module(profile_module) +oldprof,_=profile_module.chain_profile(w);newprof,_=profile_module.chain_profile(new) +prof=Counter({int(k):z for k,z in w['report']['local_profile'].items()});prof.subtract(oldprof);prof.update(newprof) +widths=Counter(len(basis(new['helper_final'].get(str(h),F9)))-len(basis(new.get('start_extra',{}).get(str(h),[]))) for h in range(224,n)) +new['report'].update(local_profile={str(k):z for k,z in sorted(prof.items()) if z},local_rank_mass=sum(k*z for k,z in prof.items()),width_inventory={str(k):z for k,z in sorted(widths.items()) if z},status='EXACT_COLD44_CONSTRUCTED_PENDING_INDEPENDENT_AUDIT') +raw=json.dumps(new,sort_keys=True,separators=(',',':')).encode();sha=hashlib.sha256(raw).hexdigest();(OUT/'FULL-WORD.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +recipe={'premix':postcomp+premix,'cleanup':new['cleanup'],'early_cleanup':new['early_cleanup'],'cold_ends':{str(h):f for h,f in ends.items()},'refactored_cleanup':new['refactored_cleanup'],'output_content_sha256':sha} +(OUT/'RECIPE.json.gz').write_bytes(gzip.compress(json.dumps(recipe,sort_keys=True,separators=(',',':')).encode(),mtime=0)) +receipt=dict(input_content_sha256=hashlib.sha256(gzip.decompress(WPATH.read_bytes())).hexdigest(),output_content_sha256=sha,blocks=plans,new_cold_ends=len(ends),all_low_ended_helpers=len(allends),premix_gates=len(premix),postwrapper_compensation_gates=len(postcomp),tail_gates=len(tail),inherited_tail_gates=len(inherited_tail),full_inverse_gates=len(fullops),profile=new['report']['local_profile'],width_inventory=new['report']['width_inventory'],rank_mass=new['report']['local_rank_mass'],seconds=time.monotonic()-t0) +(OUT/'CONSTRUCTION.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(json.dumps({k:z for k,z in receipt.items() if k!='blocks'},indent=2),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/port_stage_x.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/port_stage_x.py new file mode 100644 index 0000000000..81ac65ceff --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/port_stage_x.py @@ -0,0 +1,125 @@ +"""Port one 504-helper construction stage onto the K-triangle word. Apache-2.0. Prepared with Claude Code assistance. + +usage: build_port_stage.py --shadow-input I4 --shadow-output O4 --input I8 --map HELPER-MAP.json --gk-dir GK --out DIR + +The shadow pair (I4 -> O4) is one stage of a 504-helper chain, rebuilt in the same run from pinned sources. I8 is the +K-triangle word at the matching point of its own chain, and HELPER-MAP.json is the 504 -> R register map written by +construct_k_triangle.py. Registers below 448 keep their ids; the removed packet copies have no image. + +The port does the following: +* It renumbers I4 and O4 through the map and drops their gates that touch a removed register. +* It matches gates by scalar operation (the gate without its frame), aligning I4 with O4 and I4 with I8 separately. +* It builds O8 in O4 gate order: + * each matched gate is taken from I8, with O4's frame wherever the stage changed that frame; + * each gate the stage introduced is taken from O4; + * each I8-only gate (the K-triangle reads) stays after the O4 image of its I8 predecessor. +* It replays the stage's entrance (start_extra) and target_levels changes. +* It rebuilds the cleanup with the inherited inverse rule. + +The constructor is a search transfer only. The verifier certifies the output independently: the generalised native +audit (exact forward and inverse replay of every column, native frame chains) runs on every ported word, and every +input and output is pinned by content hash.""" +import argparse, copy, difflib, gzip, hashlib, json, sys +from collections import Counter +from pathlib import Path + +assert __debug__, 'Assertions required' +FULL = [256, 128, 64, 32, 16, 8, 4, 2, 1] + + +def regs(g): return (g[1], g[2]) if g[0] == 'add' else (g[1],) + + +def key(g): return json.dumps(g[:-1]) + + +def inverse(e): + e = copy.deepcopy(e) + if e[0] == 'add': e[3] *= -1 + else: e[2], e[3] = e[3], e[2] + e[-1] = list(FULL); return e + + +def align(xs, ys): + """index map xs -> ys over runs of equal scalar operations""" + sm = difflib.SequenceMatcher(None, [key(g) for g in xs], [key(g) for g in ys], autojunk=False) + return {i1 + k: j1 + k for tag, i1, i2, j1, j2 in sm.get_opcodes() if tag == 'equal' for k in range(i2 - i1)} + + +def transfer_section(I4, O4, I8, stats): + a, b = align(I4, O4), align(I4, I8) + o2i = {j: i for i, j in a.items()}; i8from4 = {j: i for i, j in b.items()} + anchor = {j8: a[i4] for j8, i4 in i8from4.items() if i4 in a} + pending, last = {}, -1 + for j8, g in enumerate(I8): + if j8 in anchor: last = anchor[j8] + elif j8 not in i8from4: pending.setdefault(last, []).append(copy.deepcopy(g)); stats['kept_own'] += 1 + else: stats['dropped_by_stage'] += 1 + out = list(pending.get(-1, [])) + for k, g in enumerate(O4): + if k in o2i: + i4 = o2i[k] + if i4 in b: + g8 = copy.deepcopy(I8[b[i4]]) + if I4[i4][-1] != g[-1]: g8[-1] = copy.deepcopy(g[-1]); stats['frames_changed'] += 1 + out.append(g8) + else: + out.append(copy.deepcopy(g)); stats['introduced'] += 1 + out.extend(pending.get(k, [])) + return out + + +def main(): + ap = argparse.ArgumentParser() + for k in ('--shadow-input', '--shadow-output', '--input', '--map', '--gk-dir', '--out'): ap.add_argument(k, type=Path, required=True) + a = ap.parse_args(); assert not a.out.exists() + sys.path.insert(0, str(a.gk_dir)); import gk_word as G, gk_common as C + G.V = C.V = 112 + rd = lambda p: json.loads(gzip.decompress(p.read_bytes())) + enc = lambda x: json.dumps(x, sort_keys=True, separators=(',', ':')).encode(); sha = lambda x: hashlib.sha256(x).hexdigest() + I4, O4, I8 = rd(a.shadow_input), rd(a.shadow_output), rd(a.input) + fm = {int(k): int(v) for k, v in json.loads(a.map.read_text())['map'].items()} + assert all(fm[k] == k for k in fm if k < 448), 'only ids >= 448 may move' + R = I8['report']['R']; EXTRA = set(range(224 + R)) - set(fm.values()); assert len(set(fm.values())) == len(fm) and set(fm.values()) <= set(range(224 + R)), 'map is not injective into the K-triangle registers' + assert I4['report'].get('R', 504) == 504 and len(fm) + len(set(range(728)) - set(fm)) == 728 + rem = set(range(728)) - set(fm) + rn = lambda r: fm[r] + touches = lambda g: any(r in rem for r in regs(g)) + def rg(g): + g = copy.deepcopy(g); g[1] = rn(g[1]) + if g[0] == 'add': g[2] = rn(g[2]) + return g + def rn_word(w): + w = copy.deepcopy(w) + for s in ('A', 'B', 'cut', 'precondition', 'cleanup'): + if s in w: w[s] = [rg(g) for g in w[s] if not touches(g)] + for k in ('start_extra', 'helper_final'): + if k in w: w[k] = {str(rn(int(r))): f for r, f in w[k].items() if int(r) not in rem} + return w + I4r, O4r = rn_word(I4), rn_word(O4) + O8 = copy.deepcopy(I8); stats = {s: Counter() for s in ('A', 'B')} + for s in ('A', 'B'): O8[s] = transfer_section(I4r[s], O4r[s], I8[s], stats[s]) + for k in ('start_extra', 'target_levels'): + x, y = I4r.get(k, {}), O4r.get(k, {}); d = dict(I8.get(k, {})) + for r in set(x) | set(y): + if x.get(r) != y.get(r): + if r in y: d[r] = y[r] + else: d.pop(r, None) + if k in O4 or k in I8: O8[k] = dict(sorted(d.items(), key=lambda kv: int(kv[0]))) + for k in O4: + if k not in ('A', 'B', 'cleanup', 'report', 'start_extra', 'target_levels', 'cut', 'precondition'): + assert O4r[k] == I4r[k], 'stage changed an unported field: ' + k + O8['cleanup'] = [inverse(e) for e in reversed(O8['A'] + O8['B']) if not 112 <= e[1] < 224] + H = G.profile(O8) + ws = [9 - len(G.basis(O8['start_extra'].get(str(224 + h), []))) for h in range(R)] + O8['report'] = dict(I8['report'], local_profile={str(k): v for k, v in sorted(H.items())}, local_rank_mass=sum(k * v for k, v in H.items()), + width_inventory={str(k): v for k, v in sorted(Counter(ws).items())}) + a.out.mkdir(parents=True); (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(enc(O8), mtime=0)) + receipt = dict(status='PORTED_STAGE_PENDING_NATIVE_AUDIT', R=R, removed_504_helpers=sorted(rem), + shadow_input_content_sha256=sha(enc(I4)), shadow_output_content_sha256=sha(enc(O4)), input_content_sha256=sha(enc(I8)), + output_content_sha256=sha(enc(O8)), sections={s: dict(v) for s, v in stats.items()}, local_profile=O8['report']['local_profile'], + scope='Transfer construction only; exactness, frame chains and profile are certified by the native audit run on the output.') + (a.out / 'PORT-STAGE.json').write_text(json.dumps(receipt, indent=2, sort_keys=True) + '\n', newline='\n'); print(json.dumps(receipt, indent=2)) + + +main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/reproduce_notri.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/reproduce_notri.py new file mode 100644 index 0000000000..a85f2acf15 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/notri/reproduce_notri.py @@ -0,0 +1,166 @@ +#!/usr/bin/env python3 +"""Rebuild the no-triangle gauge44 word (R = 504) and its native locals. + +The no-triangle word is #645's gauge44 chain with none of the four (p,-1) K-triangles. In the six K-blocks +{0,1,2,11,12,13}, the completion priority is extended by the 6-row list PRIO6.json, the list blocks 3-10 already use. +Each block then pairs at rank 4, giving 56 rank-four cold ends instead of 44 (PartialK). + +Input: a fresh `construction/reproduce.py --until word` output directory. Its shadow-early and shadow-prefix words and +its hamming inputs are pinned by reproduce.py itself. Steps, each checked exactly: + 1. gauge-forward: cgx.py, #645's construct_gauge_xcentre.py generalised by PartialK. The extra rows come from XPARAM, + and the K-triangle schedule comes from the TRI file. Run on the triangle set {} with XPARAM = PRIO6.json. + 2. port0-3: port_stage_x.py, PR635's build_port_stage.py with the helper map allowed to be injective rather than onto. + With R = 504 and no triangles, the map is onto again. + 3. regroup: PR635's k492 frame-regroup changes, applied where their `before` gate occurs. For this word none occurs, + and that count (0) is pinned. + 4. hpe: PR635's build_hpe.candidates, taken greedily with disjoint registers, and build_hpe.apply. 46 changes, pinned. + 5. cold44: cold44x.py, #645's build_gauge_cold44.py generalised by PartialK to blocks whose helper list includes the + helpers outside the 224+16b ranges (EXTRAH). 56 cold ends; the 14 pairing ranks are pinned to [4]*14 inside cold44x (PAIRING_RANKS) and rechecked here. The output word content sha256 is pinned (3e99ba77...). + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs, as in reproduce.py. +--control-g44 instead runs steps 1-5 with #645's four triangles and no XPARAM. It must reproduce #645's pinned gauge44 +cold44 word (78c7aada...), the same word #645's own reproduce.py builds. This shows the generalised scripts reduce to +#645's constructors. +Apache-2.0. Driver by ColdWitness from PartialK's variant.py; constructors credited above. +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NOTRI_SHA = '3e99ba778ab8a97853f50912776247802b529439937176363f6c42786163b1f9' +G44_SHA = '78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290' +# native-local pins (the strict locals the SPEC was frozen against: PartialK runs/none_p6/local) +CANONICAL_SHA = '4265a3bb7f9b46967dfadfca5f2cc1f5b3e6e8681f16c02590f1b9430c013637' +PROGRAM_SHA = {'forward': '0afda28699e15cf5a5a17aee5475ac608c9fb68b15766d463b93ec8e2df4ae85', + 'backward': '5be6cb4ea7a1da36d7bbe7eb2392873c058dd3cbb3cc2eeadd55ecca9310ca8a'} +CLIFFORD_SHA = '4b5789e43e04d71f02c2d480450ec0b354007d9cf523bda76c7345730806344b' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def dump(p, v): + p.parent.mkdir(parents=True, exist_ok=True); p.write_bytes(gzip.compress(enc(v), mtime=0)) + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--word-dir', type=Path, required=True, help='construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--control-g44', action='store_true', help='rebuild #645 gauge44 (4 triangles) instead; word only') + ap.add_argument('--skip-phases', action='store_true') + ap.add_argument('--word-only', action='store_true', help='stop after the pinned scalar word (input to construction/layers_np)') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + structural = a.main.resolve() / 'research/structural-gain/frontier-composition' + wd = a.word_dir.resolve() + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + # 1. gauge-forward on the chosen K-triangle set + tri = read(up / 'data/TRI-SCHEDULE.json') + if not a.control_g44: + tri = dict(full_pairs=tri['full_pairs'], triangles=[]) + env['XPARAM'] = str(HERE / 'PRIO6.json') + (out / 'TRI.json').write_text(json.dumps(tri)) + raw = out / 'raw' + run('gauge-forward', HERE / 'cgx.py', wd / 'hamming', raw, out / 'TRI.json') + word = raw / 'FULL-WORD.json.gz' + # 2. port stages (same chain as reproduce.py) + chain = [parent / 'complex-local/static44/inputs/RAW504.json.gz', structural / 'global-replay/base/split-centres/FULL-WORD.json.gz', + wd / 'shadow-early/FULL-WORD.json.gz', structural / 'multicold-eight-word/FULL-WORD.json.gz', + wd / 'shadow-prefix/FULL-WORD.json.gz'] + for i, (b, c) in enumerate(zip(chain, chain[1:])): + t = out / ('port%d' % i) + run('port%d' % i, HERE / 'port_stage_x.py', '--shadow-input', b, '--shadow-output', c, '--input', word, + '--map', raw / 'HELPER-MAP.json', '--gk-dir', gk, '--out', t) + word = t / 'FULL-WORD.json.gz' + # 3. PR635 frame regroup where its `before` gate occurs + w = read(word); rg = {json.dumps(c['before']): c['after'] for c in read(up / 'data/recipes/k492-jp8-frame_regroup.json')['changes']} + n = 0 + for part in ('A', 'B'): + for i, e in enumerate(w[part]): + k = json.dumps(e) + if k in rg: w[part][i] = rg[k]; n += 1 + sys.path.insert(0, str(gk)); import gk_word as GW, gk_common as GC + GW.V = GC.V = 112; GW.DATA = GC.DATA = 7168 + H = GW.profile(w) + w['report'].update(local_profile={str(k): z for k, z in sorted(H.items()) if z}, local_rank_mass=sum(r * z for r, z in H.items())) + assert n == (24 if a.control_g44 else 0), ('regroup count', n) + dump(out / 'regroup/FULL-WORD.json.gz', w) + # 4. HPE: PR635's candidates, greedy with disjoint registers + h = load('upstream_hpe', up / 'code/build_hpe.py') + used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + assert len(ch) == (34 if a.control_g44 else 46), ('hpe count', len(ch)) + (out / 'HPE-RECIPE.json').write_text(json.dumps(dict(changes=ch))) + w = h.apply(w, ch); dump(out / 'hpe/FULL-WORD.json.gz', w) + # 5. cold44 (generalised): helpers outside the 224+16b ranges join their blocks + hm = set(read(raw / 'HELPER-MAP.json')['map'].values()) + env['EXTRAH'] = json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)) + ranks = [2, 2, 2, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2] if a.control_g44 else [4] * 14 + env['PAIRING_RANKS'] = json.dumps(ranks) # cold44x asserts every block's pairing rank + run('cold44', HERE / 'cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', wd / 'hamming', '--upstream-package', up) + assert [b['pairing_rank'] for b in read(out / 'cold44/CONSTRUCTION.json')['blocks']] == ranks, 'pairing ranks' + word = out / 'cold44/FULL-WORD.json.gz'; w = read(word) + got = hashlib.sha256(enc(w)).hexdigest() + assert got == (G44_SHA if a.control_g44 else NOTRI_SHA), ('word', got) + rep = w['report'] + if a.control_g44: + print('PASS control: #645 gauge44 word reproduced', got, flush=True); return + assert rep['R'] == 504 and rep['local_rank_mass'] == 5674 + assert rep['local_profile'] == {'1': 2506, '2': 336, '3': 472, '4': 184, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 64, '5': 48, '7': 46, '8': 114, '9': 232}, rep['width_inventory'] + print('PASS no-triangle scalar word', got, flush=True) + if a.word_only: + return + # 6. native locals (PR635, as in reproduce.py) + for k in ('XPARAM', 'EXTRAH', 'PAIRING_RANKS'): env.pop(k, None) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz', '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == CANONICAL_SHA, 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in PROGRAM_SHA.items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == CLIFFORD_SHA, 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/LOCAL-PINS-p6n-k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/LOCAL-PINS-p6n-k4.json new file mode 100644 index 0000000000..c43b391a43 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/LOCAL-PINS-p6n-k4.json @@ -0,0 +1,11 @@ +{ + "word": "P6k4", + "layer_controls": 95, + "promo_controls": 11, + "canonical_sha256": "c0c5734a2eb6984ccd1e314dbcea2a6971b9708e5f611aa8912fcf47f02de61d", + "program_sha256": { + "forward": "6cfedac02e899df7fa50a3e38845982a4e9dbc866e9decc4052e011532bdb30f", + "backward": "207d9352aeea7d56a6da865745a1ad756e28531fbf9bcb0cd54950aac7270381" + }, + "clifford_recipes_sha256": "1c1d037d602b503b35f01a65d0ccc07ac63fde9df501b0a61e3e189a44a779de" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/PROMO-RECIPE-p6n-k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/PROMO-RECIPE-p6n-k4.json new file mode 100644 index 0000000000..3f336c07ea --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/PROMO-RECIPE-p6n-k4.json @@ -0,0 +1,971 @@ +{ + "input_content_sha256": "34b683fa08f054fe725704ec15b1c8da42f846430999d14d0cae0fcd42296fe2", + "groups": [ + 627, + 629, + 630, + 631, + 635, + 637, + 638, + 639, + 651, + 653, + 654, + 655, + 659, + 661, + 662, + 663 + ], + "entrances": { + "627": [ + 408, + 80, + 40, + 6, + 1 + ], + "629": [ + 408, + 80, + 40, + 6, + 1 + ], + "630": [ + 408, + 80, + 40, + 6, + 1 + ], + "631": [ + 408, + 80, + 40, + 6, + 1 + ], + "635": [ + 272, + 144, + 96, + 6, + 1 + ], + "637": [ + 272, + 144, + 96, + 6, + 1 + ], + "638": [ + 272, + 144, + 96, + 6, + 1 + ], + "639": [ + 272, + 144, + 96, + 6, + 1 + ], + "651": [ + 390, + 68, + 34, + 24, + 1 + ], + "653": [ + 390, + 68, + 34, + 24, + 1 + ], + "654": [ + 390, + 68, + 34, + 24, + 1 + ], + "655": [ + 390, + 68, + 34, + 24, + 1 + ], + "659": [ + 298, + 170, + 102, + 30, + 1 + ], + "661": [ + 298, + 170, + 102, + 30, + 1 + ], + "662": [ + 298, + 170, + 102, + 30, + 1 + ], + "663": [ + 298, + 170, + 102, + 30, + 1 + ] + }, + "gate_frames": [ + [ + "B", + 420, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 421, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 422, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 423, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 424, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 425, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 426, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 427, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 428, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 429, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 430, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 431, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 432, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 433, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 434, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 435, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 436, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 437, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 438, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 439, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 440, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 441, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 442, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 443, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 444, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 445, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 446, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 447, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 448, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 449, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 450, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 451, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 452, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 453, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 454, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 455, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 456, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 457, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 458, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 459, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 460, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 461, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 462, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 463, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 464, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 465, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 466, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 467, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ] + ], + "expected": { + "output_content_sha256": "0390ec65dc4d47df1887aabdc2ec5b6ddea3cfc8e65582873fdfeba81d100073", + "local_profile": { + "1": 2572, + "2": 326, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 80, + "5": 32, + "7": 54, + "8": 122, + "9": 216 + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/build_promotion.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/build_promotion.py new file mode 100644 index 0000000000..f1daad34c2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/build_promotion.py @@ -0,0 +1,109 @@ +"""Entrance promotions E4 -> E5 of whole kernel groups: deterministic constructor. Apache-2.0. +BlockInvert (Claude Code research agent) for the gauge44 lineage. + +usage: build_promotion.py --input FULL-WORD.json.gz --recipe PROMO-RECIPE.json --out DIR + +The recipe is data only: + input_content_sha256 sha256 of the decompressed input word (pinned); + entrances {helper: frame vectors}: new start frames (each strictly contains the old one); + gate_frames [[section, index, old frame, new frame], ...]: section 'A' / 'B' (main gates) or 'T' + (early_cleanup entry index); the old frame must match the input exactly (as a span); + expected output_content_sha256, local_profile, width_inventory. +The scalar program is unchanged (only frame annotations and start frames move), so the endpoint, the +zero-target-response entrance condition and every cone are those of the input; the independent audit +(audit_local.py) re-checks all of them, plus monotone chains and the recomputed profile/widths.""" +import argparse, gzip, hashlib, json +from collections import Counter +from pathlib import Path + + +def span(vs): + p = {} + for x in vs: + for k in sorted(p, reverse=True): + if x >> k & 1: x ^= p[k] + if x: + k = x.bit_length() - 1 + for j in list(p): + if p[j] >> k & 1: p[j] ^= x + p[k] = x + return tuple(p[k] for k in sorted(p, reverse=True)) + + +def regs(e): return [e[1]] + ([e[2]] if e[0] == 'add' else []) + + +def chain_profile(w): + """paid climbs of the A, B, early-tail and final chains, target ends included (centre descents unchanged, not counted).""" + v, R = w['report']['v'], w['report']['R']; n = 2*v + R + cur = [() for _ in range(n)] + for i, p in enumerate(w['ports']): cur[i] = span([p]) + for r, f in w.get('start_extra', {}).items(): cur[int(r)] = span(f) + prof = Counter() + + def climb(r, F): + assert span(list(cur[r]) + list(F)) == F, ('nonmonotone', r) + if len(F) > len(cur[r]): prof[len(F) - len(cur[r])] += 1 + cur[r] = F + for part in ('A', 'B'): + for e in w[part]: + for r in regs(e): climb(r, span(e[-1])) + for i, f in w.get('early_cleanup', []): + for r in regs(w['cleanup'][i]): climb(r, span(f)) + full = span([1 << i for i in range(9)]) + final = {int(r): span(f) for r, f in w.get('helper_final', {}).items()} + for r in range(n): + if v <= r < 2*v: # targets end at their port hyperplane (as in the independent audit); counted on both sides + climb(r, span([x for x in range(1, 512) if (x & w['ports'][r - v]).bit_count() % 2 == 0])); continue + climb(r, final.get(r, full)) + return prof + + +def widths(w): + v, R = w['report']['v'], w['report']['R']; full = [1 << i for i in range(9)] + return Counter(len(span(w['helper_final'].get(str(r), full))) - len(span(w['start_extra'].get(str(r), []))) + for r in range(2*v, 2*v + R)) + + +def apply(w, r): + nw = json.loads(json.dumps(w)) + for h, F in r['entrances'].items(): + assert h in nw['start_extra'], ('not an entering helper', h) + old, new = span(nw['start_extra'][h]), span(F) + assert len(new) > len(old) and span(list(old) + list(new)) == new, ('not a promotion', h) + nw['start_extra'][h] = list(new) + for sec, i, old, new in r['gate_frames']: + if sec in ('A', 'B'): + assert span(nw[sec][i][-1]) == span(old), ('gate frame mismatch', sec, i) + nw[sec][i][-1] = list(span(new)) + else: + assert sec == 'T' and span(nw['early_cleanup'][i][1]) == span(old), ('tail frame mismatch', i) + nw['early_cleanup'][i][1] = list(span(new)) + old_prof, new_prof = chain_profile(w), chain_profile(nw) + lp = Counter({int(k): c for k, c in w['report']['local_profile'].items()}); lp.subtract(old_prof); lp.update(new_prof) + assert min(lp.values()) >= 0 + inv = widths(nw) + rep = dict(w['report']) + rep['local_profile'] = {str(k): c for k, c in sorted(lp.items()) if c} + rep['local_rank_mass'] = sum(k*c for k, c in lp.items()) + rep['width_inventory'] = {str(k): c for k, c in sorted(inv.items()) if c} + nw['report'] = rep + return nw + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(); ap.add_argument('--input', type=Path, required=True) + ap.add_argument('--recipe', type=Path, required=True); ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + raw = gzip.decompress(a.input.read_bytes()); r = json.loads(a.recipe.read_text()) + assert hashlib.sha256(raw).hexdigest() == r['input_content_sha256'], 'input word pin' + nw = apply(json.loads(raw), r) + data = json.dumps(nw, separators=(',', ':')).encode() + x = r['expected'] + assert nw['report']['local_profile'] == x['local_profile'], 'profile pin' + assert nw['report']['width_inventory'] == x['width_inventory'], 'width pin' + assert hashlib.sha256(data).hexdigest() == x['output_content_sha256'], 'output word pin' + a.out.mkdir(parents=True, exist_ok=True) + (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(data, mtime=0)) + print('PASS', len(r['entrances']), 'promoted entrances;', len(r['gate_frames']), 'gate frames;', + 'profile', x['local_profile'], 'sha', x['output_content_sha256']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/make_recipe.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/make_recipe.py new file mode 100644 index 0000000000..618d609453 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/make_recipe.py @@ -0,0 +1,12 @@ +"""make_recipe.py BASEWORD SOLUTION.json BUILTWORD OUT: discovery-side recipe writer (CP-SAT solution -> data recipe).""" +import sys, json, gzip, hashlib +base = gzip.decompress(open(sys.argv[1], 'rb').read()); s = json.load(open(sys.argv[2])) +built = gzip.decompress(open(sys.argv[3], 'rb').read()); bw = json.loads(built) +key = {'A': 0, 'B': 1, 'T': 2} +r = dict(input_content_sha256=hashlib.sha256(base).hexdigest(), + groups=sorted(int(h) for h in s['newstarts']), + entrances={h: s['newstarts'][h] for h in sorted(s['newstarts'], key=int)}, + gate_frames=sorted(s['changed'], key=lambda c: (key[c[0]], c[1])), + expected=dict(output_content_sha256=hashlib.sha256(built).hexdigest(), + local_profile=bw['report']['local_profile'], width_inventory=bw['report']['width_inventory'])) +json.dump(r, open(sys.argv[4], 'w'), indent=1) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/promo_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/promo_controls.py new file mode 100644 index 0000000000..20ee51f7db --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/promo_controls.py @@ -0,0 +1,115 @@ +"""Promotion controls: mutate the promoted word / recipe and require rejection at a pinned site. Apache-2.0. +BlockInvert (Claude Code research agent). + +usage: promo_controls.py --input BASE-FULL-WORD.json.gz --recipe PROMO-RECIPE.json --audit audit_local.py --out CONTROLS.json + +Word-level mutants are checked by the independent audit (audit_local.py, imported from the given path; it shares no +code with the constructor); recipe-level mutants by build_promotion.apply / its pins. Each mutant must raise with the +pinned message prefix; the honest word must pass both.""" +import argparse, gzip, hashlib, importlib.util, json, sys, tempfile +from pathlib import Path +sys.path.insert(0, str(Path(__file__).resolve().parent)) +import build_promotion as B + +ap = argparse.ArgumentParser() +for k in ('input', 'recipe', 'audit', 'out'): ap.add_argument('--' + k, type=Path, required=True) +a = ap.parse_args() +s = importlib.util.spec_from_file_location('audit_local', a.audit); AL = importlib.util.module_from_spec(s); s.loader.exec_module(AL) +raw = gzip.decompress(a.input.read_bytes()); base = json.loads(raw); r = json.loads(a.recipe.read_text()) +assert hashlib.sha256(raw).hexdigest() == r['input_content_sha256'] +honest = B.apply(base, r) +v = base['report']['v'] +tmp = Path(tempfile.mkdtemp()) + + +def audit(w): + p = tmp / 'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w, separators=(',', ':')).encode(), mtime=0)) + import io, contextlib + with contextlib.redirect_stdout(io.StringIO()): + AL.run(p, tmp / 'r.json') + + +def first_gate(w, h): + for sec in ('A', 'B'): + for i, e in enumerate(w[sec]): + if h in B.regs(e): return sec, i + raise AssertionError(h) + + +results = [] + + +def expect(name, fn, prefix): + try: + fn(); got = 'ACCEPTED' + except (RuntimeError, AssertionError) as e: + got = str(e.args[0]) if e.args else type(e).__name__ + ok = got.startswith(prefix) + results.append(dict(control=name, expected=prefix, got=got[:160], rejected_at_pinned_site=ok)) + print(('OK ' if ok else 'BAD ') + name + ': ' + got[:120], flush=True) + + +# honest +audit(honest); print('honest word: audit PASS', flush=True) +H = sorted(int(h) for h in r['entrances']) +h0 = str(H[0]); E5 = B.span(r['entrances'][h0]); sec, i = first_gate(honest, int(h0)); F1 = B.span(honest[sec][i][-1]) +full = B.span([1 << k for k in range(9)]) + + +def mut(f): + w = json.loads(json.dumps(honest)); f(w); return w + + +# 1. promoted entrance moved to a dim-5 frame NOT inside its first gate frame +def bad_entrance(w): + for x in range(1, 512): + G = B.span(list(B.span(base['start_extra'][h0])) + [x]) + if len(G) == 5 and B.span(list(G) + list(F1)) != F1: + w['start_extra'][h0] = list(G); return + raise AssertionError('no frame') +expect('entrance_outside_first_gate_frame', lambda: audit(mut(bad_entrance)), 'frame not monotone') +# 2. a raised gauge gate of a promoted helper left at its old (E4) frame +old_of = {(c[0], c[1]): c[2] for c in r['gate_frames']} +assert (sec, i) in old_of, 'first gate of a promoted helper is a raised gate' +expect('raised_gate_missing', lambda: audit(mut(lambda w: w[sec][i].__setitem__(-1, list(B.span(old_of[(sec, i)]))))), 'frame not monotone') +# 2b. per promoted group: its first helper's raised entry gate left at the old frame +for hg in H[4::4]: + sg, ig = first_gate(honest, hg) + if (sg, ig) in old_of: + expect('raised_gate_missing_group_%d' % hg, lambda sg=sg, ig=ig: audit(mut(lambda w: w[sg][ig].__setitem__(-1, list(B.span(old_of[(sg, ig)]))))), 'frame not monotone') +# 3. every raised gate kept but one entrance reverted to E4 (report kept): the paid profile no longer matches +expect('entrance_reverted_profile', lambda: audit(mut(lambda w: w['start_extra'].__setitem__(h0, list(B.span(base['start_extra'][h0]))))), 'paid profile mismatch') +# 4. an E4 helper outside the promoted groups promoted alone (no raised gates) +others = sorted(int(h) for h, f in base['start_extra'].items() if len(B.span(f)) == 4 and h not in r['entrances']) +if others: + h1 = str(others[0]) + expect('ungrouped_promotion', lambda: audit(mut(lambda w: w['start_extra'].__setitem__(h1, list(E5)))), 'frame not monotone') +# 5. recipe-level: wrong old frame for a raised gate; non-promotion entrance; input pin +def r_bad_old(): + q = json.loads(json.dumps(r)); q['gate_frames'][0][2] = list(full); B.apply(base, q) +expect('recipe_gate_old_frame', r_bad_old, "('gate frame mismatch'" if r['gate_frames'][0][0] != 'T' else "('tail frame mismatch'") +def r_demote(): + q = json.loads(json.dumps(r)); q['entrances'][h0] = base['start_extra'][h0]; B.apply(base, q) +expect('recipe_not_a_promotion', r_demote, "('not a promotion'") +def r_pin(): # the driver's own __main__ path on a tampered input word (one gate scalar changed) + import subprocess + t = json.loads(raw); e = t['B'][0] + if e[0] == 'add': e[3] += e[4] + else: e[2] = -e[2] + p = tmp / 'tampered.json.gz'; p.write_bytes(gzip.compress(json.dumps(t, separators=(',', ':')).encode(), mtime=0)) + q = subprocess.run([sys.executable, '-B', str(Path(B.__file__)), '--input', str(p), '--recipe', str(a.recipe), '--out', str(tmp / 'o')], + capture_output=True, text=True) + assert q.returncode == 0, q.stderr.strip().splitlines()[-1].split('AssertionError: ', 1)[-1] +expect('recipe_input_pin', r_pin, 'input word pin') +# 6. scalar tamper inside a promoted group's raised gate (frames intact): exactness must fail +def scal(w): + e = w[sec][i] + if e[0] == 'add': e[3] = e[3] + e[4] + else: e[2] = -e[2] +expect('raised_gate_scalar_tamper', lambda: audit(mut(scal)), '') +results[-1]['rejected_at_pinned_site'] = results[-1]['got'] != 'ACCEPTED' +bad = [x for x in results if not x['rejected_at_pinned_site']] +a.out.write_text(json.dumps(dict(recipe=r['expected']['output_content_sha256'], honest='PASS', controls=results, + rejected=len(results) - len(bad)), indent=1)) +assert not bad, bad +print('PASS', len(results), 'controls rejected at pinned sites') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/reproduce_promo.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/reproduce_promo.py new file mode 100644 index 0000000000..6e04aa71b1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/promo/reproduce_promo.py @@ -0,0 +1,99 @@ +#!/usr/bin/env python3 +"""Rebuild a promoted no-triangle layered word (entrance promotions E4 -> E5) and its native locals. + +Input (--base): `np` = a fresh `construction/layers_np/reproduce_np.py` output (word a9de804f...), or `p6n` = a fresh +`construction/layers_p6n/reproduce_p6n.py` output (word 34b683fa...). Recipe k: PROMO-RECIPE-.json (BlockInvert; +data only; it pins its input word) and LOCAL-PINS-.json. Steps, each +checked exactly: + 1. promotion: BlockInvert's build_promotion.py. It pins the input word and the recipe's output sha, profile and + widths; every old frame must match the input; only frame annotations and start frames move (no scalar change). + 2. promo-controls: BlockInvert's promo_controls.py. The honest word must pass #645's independent audit_local.py, + and its recipe- and word-level mutants must be rejected at their pinned sites (count pinned in LOCAL-PINS). + 3. layer-end-controls on the promoted word, pinned count: ../layers/layer_end_controls.py (LayerReviewer-signed) for + base np; ../layers_p6n/layer_end_controls.py (Q6Reviewer-signed per-end variant) for base p6n. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs; the canonical word, local + programs and Clifford recipes are pinned (LOCAL-PINS). +Moving to another recipe k is a recipe and pins swap; this driver does not change. +Apache-2.0. Driver by ColdWitness around BlockInvert's constructor and controls. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +PKG = HERE.parents[1] +LAYERS = HERE.parent / 'layers' +BASES = {'np': ('layers/FULL-WORD.json.gz', 'a9de804f194eeb39f52a4c6e54c14d93e881bec4b632694249733ed410b58113'), + 'p6n': ('p6n/FULL-WORD.json.gz', '34b683fa08f0')} # p6n: prefix; full pin is the p6n recipe's output sha + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--base', choices=sorted(BASES), default='p6n') + ap.add_argument('--base-dir', type=Path, required=True, help='reproduce_np.py (np) or reproduce_p6n.py (p6n) output') + ap.add_argument('--k', default='p6n-k4', help='recipe id (PROMO-RECIPE-.json)') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + recipe = HERE / ('PROMO-RECIPE-%s.json' % a.k); pins = read(HERE / ('LOCAL-PINS-%s.json' % a.k)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + rel, pin = BASES[a.base]; inp = a.base_dir.resolve() / rel + got = hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() + assert got.startswith(pin) and got == read(recipe)['input_content_sha256'], ('input must be the pinned base word', a.base, got) + if a.base == 'p6n': + assert got == read(HERE.parent / 'layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz')['output_content_sha256'] + run('promotion', HERE / 'build_promotion.py', '--input', inp, '--recipe', recipe, '--out', out / 'promo', portable=False) + word = out / 'promo/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == read(recipe)['expected']['output_content_sha256'] + run('promo-controls', HERE / 'promo_controls.py', '--input', inp, '--recipe', recipe, + '--audit', PKG / 'independent/audit_local.py', '--out', out / 'PROMO-CONTROLS.json', portable=False) + pc = read(out / 'PROMO-CONTROLS.json'); assert pc['honest'] == 'PASS' and pc['rejected'] == pins['promo_controls'], pc['rejected'] + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + ctlpy = (HERE.parent / 'layers_p6n/layer_end_controls.py') if a.base == 'p6n' else (LAYERS / 'layer_end_controls.py') + run('layer-end-controls', ctlpy, word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/reproduce.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/reproduce.py new file mode 100644 index 0000000000..8b51efa646 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/reproduce.py @@ -0,0 +1,194 @@ +#!/usr/bin/env python3 +"""Rebuild the frozen gauge44 delta from two pinned upstream checkouts. + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. +This driver calls the credited upstream constructors unchanged; it runs no +search or optimizer. See ../CONSTRUCTION.md and INPUTS.json. +""" +import argparse +import gzip +import hashlib +import importlib.util +import json +import os +from pathlib import Path +import shutil +import subprocess +import sys +import time + +HERE = Path(__file__).resolve().parent + + +def read(path): + raw = path.read_bytes() + return json.loads(gzip.decompress(raw) if path.suffix == '.gz' else raw) + + +def sha(path, content=False): + raw = path.read_bytes() + if content and path.suffix == '.gz': + raw = gzip.decompress(raw) + return hashlib.sha256(raw).hexdigest() + + +def dump(path, value): + path.parent.mkdir(parents=True, exist_ok=True) + raw = json.dumps(value, sort_keys=True, separators=(',', ':')).encode() + path.write_bytes(gzip.compress(raw, mtime=0) if path.suffix == '.gz' else raw) + + +def load_module(name, path): + spec = importlib.util.spec_from_file_location(name, path) + module = importlib.util.module_from_spec(spec) + spec.loader.exec_module(module) + return module + + +def main(): + assert __debug__, 'Assertions are required; do not use python -O.' + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--main', type=Path, required=True, + help='integer-mult-bounds checkout at the pinned main commit') + parser.add_argument('--pr635', type=Path, required=True, + help='integer-mult-bounds checkout at the pinned PR635 commit') + parser.add_argument('--out', type=Path, required=True, + help='new output directory outside both checkouts') + parser.add_argument('--until', choices=('word', 'local', 'phases'), default='word', + help='default: scalar constructor only; local adds exact native replay and wrappers') + parser.add_argument('--frozen-cold', action='store_true', + help='splice the pinned cold recipe instead of deriving its exact Q/T matrices again') + args = parser.parse_args() + roots = {'main': args.main.resolve(), 'pr635': args.pr635.resolve(), 'delta': HERE} + out = args.out.resolve() + assert not out.exists(), 'Use a new output directory.' + assert not any(out.is_relative_to(root) for root in roots.values()) + pins = read(HERE / 'INPUTS.json') + for family, files in pins['files'].items(): + for relative, expected in files.items(): + path = roots[family] / relative + assert sha(path) == expected, ('input pin', family, relative) + out.mkdir(parents=True) + upstream = roots['pr635'] / 'research/complex-571-cold14-st2' + source = roots['main'] / 'research/complex-k492-owner-repair/vendor/multicold' + joint = source.parent / 'joint_prefix' + base = source / 'vendor/pr558' + parent = base / 'vendor/pr552' + gk = parent / 'complex-local/static44/gk' + hamming = source.parent / 'direct_delivery/inputs/hamming' + structural = roots['main'] / 'research/structural-gain/frontier-composition' + runner = source / 'code/run_portable.py' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', + PYTHONINTMAXSTRDIGITS='0', MULTICOLD_SOURCE=str(source), + GAIN_PR564_SOURCE=str(source)) + env.pop('PYTHONOPTIMIZE', None) + records = [] + + def run(label, script, *arguments): + start = time.monotonic() + log = out / (label + '.log') + print('RUN', label, flush=True) + with log.open('w', encoding='utf-8') as stream: + result = subprocess.run([sys.executable, '-B', str(runner), str(script), + *map(str, arguments)], env=env, stdout=stream, + stderr=subprocess.STDOUT) + records.append({'step': label, 'exit_code': result.returncode, + 'seconds': round(time.monotonic() - start, 3)}) + (out / 'STEPS.json').write_text(json.dumps(records, indent=2) + '\n') + if result.returncode: + raise RuntimeError(label + '\n' + log.read_text()[-6000:]) + print('PASS', label, flush=True) + + def check_word(label, path): + assert sha(path, content=True) == pins['word_content_sha256'][label], ('step pin', label) + return path + + raw504 = parent / 'complex-local/static44/inputs/RAW504.json.gz' + promoted = structural / 'global-replay/base/split-centres/FULL-WORD.json.gz' + multi = structural / 'multicold-eight-word/FULL-WORD.json.gz' + early = out / 'shadow-early' + run('shadow-early', source / 'code/build_cold_kernel.py', '--input', promoted, + '--recipe', source / 'data/EIGHT-COLD.json', '--gk-dir', gk, '--out', early) + early_word = check_word('shadow-early', early / 'FULL-WORD.json.gz') + prefix = out / 'shadow-prefix' + run('shadow-prefix', joint / 'code/build_joint_prefix.py', '--input', multi, + '--recipe', joint / 'data/JOINT-PREFIX.json', '--variant', 'eightcold', + '--gk-dir', gk, '--out', prefix) + prefix_word = check_word('shadow-prefix', prefix / 'FULL-WORD.json.gz') + + inputs = out / 'hamming' + inputs.mkdir() + for name in ('PROTOTYPE.json', 'PACKET-PROGRAMS.json.gz'): + shutil.copyfile(hamming / name, inputs / name) + shutil.copyfile(HERE / 'COMPLETION-PRIORITY.json', inputs / 'COMPLETION-PRIORITY.json') + raw = out / 'raw' + run('gauge-forward', HERE / 'construct_gauge_xcentre.py', inputs, raw, + upstream / 'data/TRI-SCHEDULE.json') + word = check_word('raw', raw / 'FULL-WORD.json.gz') + assert sha(raw / 'HELPER-MAP.json') == pins['helper_map_sha256'] + chain = [raw504, promoted, early_word, multi, prefix_word] + for i, (before, after) in enumerate(zip(chain, chain[1:])): + target = out / ('port' + str(i)) + run('port' + str(i), upstream / 'code/build_port_stage.py', + '--shadow-input', before, '--shadow-output', after, '--input', word, + '--map', raw / 'HELPER-MAP.json', '--gk-dir', gk, '--out', target) + word = check_word('port' + str(i), target / 'FULL-WORD.json.gz') + + changed = read(word) + regroup = read(upstream / 'data/recipes/k492-jp8-frame_regroup.json') + # The inherited changes are B-only and are checked against the actual new gates. + for edit in regroup['changes']: + assert changed[edit['section']][edit['index']] == edit['before'] + changed[edit['section']][edit['index']] = edit['after'] + changed['report'].update(local_profile=regroup['after'], + local_rank_mass=sum(int(r)*n for r, n in regroup['after'].items())) + word = out / 'regroup/FULL-WORD.json.gz' + dump(word, changed) + check_word('regroup', word) + hpe = load_module('upstream_hpe', upstream / 'code/build_hpe.py') + changed = hpe.apply(changed, read(upstream / 'data/recipes/k492-jp8-hyperplane_end.json')['changes']) + word = out / 'hpe/FULL-WORD.json.gz' + dump(word, changed) + check_word('hpe', word) + + target = out / 'cold44' + if args.frozen_cold: + cold = load_module('upstream_cold', upstream / 'code/build_cold_end.py') + changed = cold.apply(changed, read(HERE / 'COLD44-RECIPE.json.gz')) + # Match the exact constructor's descriptive status; this is not an audit assertion. + changed['report']['status'] = 'EXACT_COLD44_CONSTRUCTED_PENDING_INDEPENDENT_AUDIT' + dump(target / 'FULL-WORD.json.gz', changed) + else: + run('cold44-exact', HERE / 'build_gauge_cold44.py', '--input', word, + '--out', target, '--hamming', inputs, '--upstream-package', upstream) + assert read(target / 'RECIPE.json.gz') == read(HERE / 'COLD44-RECIPE.json.gz') + word = check_word('cold44', target / 'FULL-WORD.json.gz') + report = read(word)['report'] + assert report['local_rank_mass'] == 5650 + assert report['local_profile'] == {'1': 2514, '2': 404, '3': 448, '4': 160, '5': 56, '8': 8} + assert report['width_inventory'] == {'4': 52, '5': 48, '7': 34, '8': 114, '9': 244} + print('PASS exact frozen scalar word', word, flush=True) + if args.until == 'word': + return + + local = out / 'local' + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + run('native', upstream / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', routing, '--out', local) + assert sha(local / 'CANONICAL-WORD.json.gz', content=True) == pins['canonical_content_sha256'] + run('ledgers', upstream / 'code/hpe_emit_local.py', local) + run('local-replay', upstream / 'code/hpe_audit_local.py', local) + run('wrappers', upstream / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for orientation, expected in pins['local_program_sha256'].items(): + assert checks[orientation]['sha256'] == expected + if args.until == 'phases': + clifford = parent / 'complex-global/vendor531/vendor/clifford' + run('phases', base / 'code/phases_full.py', local, clifford) + assert sha(local / 'CLIFFORD-RECIPES.json') == pins['clifford_recipes_sha256'] + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/LOCAL-PINS-sw4-P6k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/LOCAL-PINS-sw4-P6k4.json new file mode 100644 index 0000000000..ae26a0f2f1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/LOCAL-PINS-sw4-P6k4.json @@ -0,0 +1,11 @@ +{ + "word": "P6k4sw4", + "sw4_controls": 4, + "layer_controls": 95, + "canonical_sha256": "5f5f163e43e8c21c16e2f10aef0078131d127a1ccacc39e0238d111fbd29f195", + "program_sha256": { + "forward": "36e75fc972766fa42f1b371a055e74976a165c894b816911c3510a88b431ea09", + "backward": "3176ccde98d90e754105e60096598fee348e2455e046290d3674b79dd6b402df" + }, + "clifford_recipes_sha256": "202eeaf5fac0c801b98811c1e140fd0af443090d7f7e05c7b55a4ddc6f6acdab" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/NOTES.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/NOTES.md new file mode 100644 index 0000000000..2a53ffb3b8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/NOTES.md @@ -0,0 +1,21 @@ +# SW4: read-set exchange on 4 entering-copy pairs + +- **Input.** P6k3, sha a38bb414. +- **Output.** sha f35a852b. Strict PASS at κ 0.001659645685315104, which is +3.267e-7 over P6k3 and equal to the ideal. +- **Width.** W 3782 is unchanged, as are start_extra, helper_final, cleanup and the helper numbering. +- **Rebuild.** `python build_sw4.py INPUT OUT [SW4-RECIPE.json]`. It is a deterministic apply of the 16 explicit moves, with 4 pinned controls: C0 (identity), N1 (keeping the pre-read is rejected), N2 (a partial exchange is rejected) and N3 (a wrong-sign pre-read is rejected). + +## Move +For each pair (h,r) in {(461,25), (581,89), (591,415), (603,431)}, where h = E_h + r after h's copy gate: +- every post-copy target read of h becomes a read of r, and that target's entrance pre-read of h is deleted; +- every target read of r becomes a read of h, with the pre-read add(t,h,−c) inserted after h's last pre-read, while h = E_h. + +The B-end state of every register is unchanged (checked mod p). + +## How exhaustive the search was +These 4 are the only positives within an exactly defined family. +- **Copy pair.** h is an entering helper whose first B write is add(h,r,1/1) from a non-target r, and whose only earlier B gates are single target pre-reads. NP has 107 such pairs. +- **Candidates.** Every nonempty subset of one pair's movable reads (target reads of h or r between the copy and the next write of h or r), with all other pairs left unchanged. That is 602 candidates over the 54 pairs that have reads. +- **Outcome.** 564 are frame-illegal. The 38 legal ones are all full single-pair exchanges, and only these 4 are positive. Their gains are additive. + +**What is not covered.** Cross-pair combinations of partial moves were not enumerated. Without a decomposition proof (moves can shrink as well as grow target frames), the result is exhaustive only within this single-pair family. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/SW4-RECIPE-P6k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/SW4-RECIPE-P6k4.json new file mode 100644 index 0000000000..b9dea4152a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/SW4-RECIPE-P6k4.json @@ -0,0 +1,314 @@ +{ + "name": "SW4", + "description": "BRoute read-set exchange on entering-copy pairs (h,r); indices refer to the input word B section", + "input_sha256": "0390ec65dc4d47df1887aabdc2ec5b6ddea3cfc8e65582873fdfeba81d100073", + "output_sha256": "d232183f233899961bf55cac67a18545ed33548d9a7ca7078990d1a83d557c59", + "pairs": { + "461": 25, + "581": 89, + "591": 415, + "603": 431 + }, + "moves": [ + { + "kind": "h2r", + "h": 461, + "r": 25, + "read_index": 856, + "target": 168, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 27 + }, + { + "kind": "h2r", + "h": 461, + "r": 25, + "read_index": 1208, + "target": 128, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 26 + }, + { + "kind": "r2h", + "h": 461, + "r": 25, + "read_index": 873, + "target": 129, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 28, + "preread": [ + "add", + 129, + 461, + 1, + 2 + ] + }, + { + "kind": "r2h", + "h": 461, + "r": 25, + "read_index": 1193, + "target": 169, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 28, + "preread": [ + "add", + 169, + 461, + 1, + 2 + ] + }, + { + "kind": "h2r", + "h": 581, + "r": 89, + "read_index": 860, + "target": 171, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 58 + }, + { + "kind": "h2r", + "h": 581, + "r": 89, + "read_index": 1288, + "target": 192, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 59 + }, + { + "kind": "r2h", + "h": 581, + "r": 89, + "read_index": 953, + "target": 193, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 60, + "preread": [ + "add", + 193, + 581, + 1, + 2 + ] + }, + { + "kind": "r2h", + "h": 581, + "r": 89, + "read_index": 1197, + "target": 175, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 60, + "preread": [ + "add", + 175, + 581, + 1, + 2 + ] + }, + { + "kind": "h2r", + "h": 591, + "r": 415, + "read_index": 868, + "target": 139, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 62 + }, + { + "kind": "h2r", + "h": 591, + "r": 415, + "read_index": 1296, + "target": 160, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 63 + }, + { + "kind": "r2h", + "h": 591, + "r": 415, + "read_index": 961, + "target": 161, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 64, + "preread": [ + "add", + 161, + 591, + -1, + 1 + ] + }, + { + "kind": "r2h", + "h": 591, + "r": 415, + "read_index": 1205, + "target": 143, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 64, + "preread": [ + "add", + 143, + 591, + -1, + 1 + ] + }, + { + "kind": "h2r", + "h": 603, + "r": 431, + "read_index": 876, + "target": 131, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 70 + }, + { + "kind": "h2r", + "h": 603, + "r": 431, + "read_index": 1300, + "target": 163, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 71 + }, + { + "kind": "r2h", + "h": 603, + "r": 431, + "read_index": 965, + "target": 167, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 72, + "preread": [ + "add", + 167, + 603, + -1, + 1 + ] + }, + { + "kind": "r2h", + "h": 603, + "r": 431, + "read_index": 1213, + "target": 135, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 72, + "preread": [ + "add", + 135, + 603, + -1, + 1 + ] + } + ], + "kappa_ideal_in": 0.0016603565408383088, + "kappa_ideal_out": 0.0016606836036204419, + "W": 3778, + "profile_in": { + "1": 2572, + "2": 326, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + }, + "profile_out": { + "1": 2548, + "2": 342, + "3": 438, + "4": 186, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 80, + "5": 32, + "7": 54, + "8": 122, + "9": 216 + }, + "rejection_expected": { + "N1": { + "changed_registers": [ + 168, + 171 + ], + "n": 2 + }, + "N2": { + "first": [ + "cap", + 1192, + 169 + ], + "n": 10 + }, + "N3": { + "changed_registers": [ + 129, + 130, + 169, + 170 + ], + "n": 4 + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/build_sw4.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/build_sw4.py new file mode 100644 index 0000000000..617e0ed06d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/build_sw4.py @@ -0,0 +1,203 @@ +#!/usr/bin/env python3 +"""build_sw4.py INPUT_WORD OUT_DIR [RECIPE] : deterministic, standard-library-only rebuild of the BRoute SW4 word. + +SW4 exchanges the B-phase target read sets of four entering packet copies h and their face registers r +(h = E_h + r after h's copy gate; E_h = h's entering content): + h2r: a post-copy read add(t,h,c) becomes add(t,r,c), and t's entrance pre-read add(t,h,-c) (taken while h = E_h) is deleted; + r2h: a read add(t,r,c) becomes add(t,h,c), and a pre-read add(t,h,-c) is inserted before index insert_preread_before + (right after h's last existing pre-read, still before h's copy gate). +Every register holds the same value at the end of B (checked mod p). Frames: a moved or inserted gate gets the plain join of +its operands' current frames; every other B gate and every early-cleanup tail keeps span(old frame + current operand frames). +Targets must stay inside u_t^perp, and tails and ends must contain the current frame. + +Controls (run on every build; the count is pinned to 4 and all must hold, else exit 1): + C0 the identity recipe (no moves) reproduces the input B and early_cleanup byte for byte; + N1 h2r without deleting the pre-read is rejected by exactness; + N2 a partial exchange (one read only) is rejected by the frame cap; + N3 an inserted pre-read with the wrong sign is rejected by exactness. +Rejection sites are pinned: the recipe's 'rejection_expected' gives, for N1/N3, the exact set of target rows whose B-end +state changes (the mutated target plus its butterfly partner(s)) and, for N2, the first cap violation (kind, B index, +register) and the violation count. Each control must reproduce its pinned site exactly. BUILD.json records the observed +sites under 'rejection'. +Writes OUT_DIR/FULL-WORD.json.gz (sha checked against the recipe) and OUT_DIR/BUILD.json.""" +import sys, json, gzip, hashlib, os +from collections import Counter, defaultdict + +PR = 2147483629 +HERE = os.path.dirname(os.path.abspath(__file__)) +V, HH = 112, 9 + + +def basis(vs): + piv = {} + for a in vs: + while a: + bit = a.bit_length() - 1 + if bit in piv: a ^= piv[bit] + else: + piv[bit] = a; break + for k in sorted(piv): + for j in piv: + if j > k and piv[j] >> k & 1: piv[j] ^= piv[k] + return tuple(piv[k] for k in sorted(piv, reverse=True)) + + +def contained(a, b): return basis(list(a) + list(b)) == tuple(b) +def registers(e): return e[1:3] if e[0] == 'add' else e[1:2] +def hyper(p): return basis([x for x in range(1, 1 << HH) if (x & p).bit_count() % 2 == 0]) +FULL = basis([1 << i for i in range(HH)]) + + +def coef(e): + a, b = (e[3], e[4]) if e[0] == 'add' else (e[2], e[3]) + return a % PR * pow(b % PR, PR - 2, PR) % PR + + +def bend_state(w): + """sparse rows mod p of every register after A + cut + B (identity start).""" + n = 2 * V + w['report']['R']; rows = [{i: 1} for i in range(n)] + for e in w['A'] + w['cut'] + w['B']: + q = coef(e); t = e[1] + if e[0] == 'scale': rows[t] = {k: x * q % PR for k, x in rows[t].items()} + else: + d = rows[t] + for k, x in rows[e[2]].items(): + y = (d.get(k, 0) + q * x) % PR + if y: d[k] = y + else: d.pop(k, None) + return rows + + +def apply_recipe(w, moves, drop_delete=False, wrong_sign=False): + B = [list(e[:-1]) + [list(e[-1]) if e[-1] is not None else None] for e in w['B']] + tag = {}; dele = set(); ins = defaultdict(list) + for m in moves: + i = m['read_index']; e = B[i]; t = m['target']; a, b = m['coef'] + assert e[0] == 'add' and e[1] == t and [e[3], e[4]] == [a, b], ('recipe/word mismatch', m) + if m['kind'] == 'h2r': + assert e[2] == m['h'] + pi = m['delete_preread_index']; g = B[pi] + assert g[:5] == ['add', t, m['h'], -a, b], ('pre-read mismatch', m) + B[i] = ['add', t, m['r'], a, b, e[-1]] + if not drop_delete: dele.add(pi) + else: + assert e[2] == m['r'] + B[i] = ['add', t, m['h'], a, b, e[-1]] + g = list(m['preread']) + if wrong_sign: g[3] = -g[3] + ins[m['insert_preread_before']].append(g + [None]) + tag[i] = 1 + NB, nt = [], [] + for i, e in enumerate(B): + for g in ins.get(i, []): NB.append(g); nt.append(1) + if i in dele: continue + NB.append(e); nt.append(tag.get(i, 0)) + w2 = dict(w); w2['B'] = NB; w2['early_cleanup'] = [list(x) for x in w.get('early_cleanup', [])] + return w2, nt + + +def refit(w, nt): + n = 2 * V + w['report']['R'] + cur = [(p,) for p in w['ports']] + [()] * (n - V) + for q, U in w['start_extra'].items(): cur[int(q)] = basis(U) + for e in w['A']: + for q in registers(e): cur[q] = basis(e[-1]) + prob = [] + for i, e in enumerate(w['B']): + rs = registers(e) + base = [] if nt[i] or e[-1] is None else list(e[-1]) + F = basis(base + [x for q in rs for x in cur[q]]) + for q in rs: + if V <= q < 2 * V and not contained(F, hyper(w['ports'][q - V])): prob.append(('cap', i, q)) + e[-1] = list(F) + for q in rs: cur[q] = F + ne = [] + for i, U in w.get('early_cleanup', []): + rs = registers(w['cleanup'][i]); F = basis(list(U) + [x for q in rs for x in cur[q]]) + for q in rs: + fin = w['helper_final'].get(str(q)) + if fin is not None and not contained(F, basis(fin)): prob.append(('tail', i, q)) + ne.append([i, list(F)]) + for q in rs: cur[q] = F + w['early_cleanup'] = ne + for q in range(2 * V, n): + fin = w['helper_final'].get(str(q)) + if fin is not None and not contained(cur[q], basis(fin)): prob.append(('end', q)) + return prob + + +def profile(w): + n = 2 * V + w['report']['R'] + tail = [w['cleanup'][i][:-1] + [U] for i, U in w.get('early_cleanup', [])] + end = [FULL] * V + [hyper(p) for p in w['ports']] + [FULL] * (n - 2 * V) + for q, U in w['helper_final'].items(): end[int(q)] = basis(U) + start = [(p,) for p in w['ports']] + [()] * (n - V) + for q, U in w['start_extra'].items(): start[int(q)] = basis(U) + cur = list(start); paid = Counter() + def climb(q, U): + U = basis(U); assert contained(cur[q], U), ('monotone', q) + d = len(U) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = U + for sec in ('A', 'B'): + if sec == 'B': + lev = {int(t): basis(U) for t, U in w.get('target_levels', {}).items()} + for q, U in zip(w['centers'], w['center_frames']): + U = basis(U); served = {lev.get(e[1] - V, ()) for e in w['cut'] if e[2] == q} + for T in sorted(served, key=lambda x: -len(x)): + if T != U: paid[len(U) - len(T)] += 1 + U = T + for e in w[sec]: + for q in registers(e): climb(q, e[-1]) + for e in tail: + for q in registers(e): climb(q, e[-1]) + for q, U in enumerate(end): climb(q, U) + widths = Counter(len(end[q]) - len(start[q]) for q in range(2 * V, n)) + return paid, widths + + +def enc(w): return json.dumps(w, sort_keys=True, separators=(',', ':')).encode() + + +def main(): + src, out = sys.argv[1], sys.argv[2] + rec = json.load(open(sys.argv[3] if len(sys.argv) > 3 else os.path.join(HERE, 'SW4-RECIPE.json'))) + raw = gzip.decompress(open(src, 'rb').read()) + assert hashlib.sha256(raw).hexdigest() == rec['input_sha256'], 'input sha mismatch' + w = json.loads(raw); S0 = bend_state(w); moves = rec['moves'] + h0 = moves[0]['h']; one = [m for m in moves if m['h'] == h0] + ctl = {}; why = {}; EXP = rec.get('rejection_expected', {}) + if os.environ.get('SW4_PIN') != '1' and set(EXP) != {'N1', 'N2', 'N3'}: raise SystemExit('recipe rejection_expected must pin exactly N1, N2, N3 (set SW4_PIN=1 to record)') + def diff(S): + d = [q for q in range(len(S0)) if S[q] != S0[q]] + return dict(changed_registers=d[:8], n=len(d)) + w0, nt0 = apply_recipe(w, []); p0 = refit(w0, nt0) + ctl['C0_identity'] = not p0 and w0['B'] == w['B'] and w0['early_cleanup'] == w['early_cleanup'] + m1 = [m for m in one if m['kind'] == 'h2r'][:1] + w1, nt1 = apply_recipe(w, m1, drop_delete=True); d1 = diff(bend_state(w1)) + ctl['N1_keep_preread_rejected'] = d1['n'] > 0 and d1 == EXP.get('N1', d1); why['N1'] = d1 + w2, nt2 = apply_recipe(w, m1); p2 = refit(w2, nt2) + why['N2'] = dict(first=list(p2[0]) if p2 else None, n=len(p2)); ctl['N2_partial_rejected'] = bool(p2) and p2[0][0] == 'cap' and why['N2'] == EXP.get('N2', why['N2']) + w3, nt3 = apply_recipe(w, one, wrong_sign=True); d3 = diff(bend_state(w3)) + ctl['N3_wrong_sign_rejected'] = d3['n'] > 0 and d3 == EXP.get('N3', d3); why['N3'] = d3 + assert len(ctl) == 4 + wn, nt = apply_recipe(w, moves); pr = refit(wn, nt) + assert not pr, ('illegal', pr[:5]) + assert bend_state(wn) == S0, 'B-end state changed' + paid, widths = profile(wn) + wn['report'] = dict(wn['report'], local_profile={str(k): v for k, v in sorted(paid.items())}, + local_rank_mass=sum(k * v for k, v in paid.items())) + data = enc(wn); sha = hashlib.sha256(data).hexdigest() + os.makedirs(out, exist_ok=True) + with open(os.path.join(out, 'FULL-WORD.json.gz'), 'wb') as f: f.write(gzip.compress(data, mtime=0)) + rep = dict(recipe=rec['name'], input_sha256=rec['input_sha256'], output_sha256=sha, expected_output_sha256=rec['output_sha256'], + moves=len(moves), controls=ctl, rejection=why, profile=wn['report']['local_profile'], + widths={str(k): v for k, v in sorted(widths.items()) if k}, W=sum(k * v for k, v in widths.items())) + with open(os.path.join(out, 'BUILD.json'), 'w', newline='\n') as f: f.write(json.dumps(rep, indent=1) + '\n') + print(json.dumps(rep, indent=1)) + ok = all(ctl.values()) and sha == rec['output_sha256'] and rep['profile'] == rec['profile_out'] and rep['W'] == rec['W'] + sys.exit(0 if ok else 1) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/reproduce_sw4.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/reproduce_sw4.py new file mode 100644 index 0000000000..cb038e064b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/construction/sw4/reproduce_sw4.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python3 +"""Rebuild the SW4 word (BRoute read-set exchange on four entering-copy pairs) and its native locals. + +Input: a fresh `construction/promo/reproduce_promo.py --base p6n --k ` output directory; its promoted +word is pinned there and by SW4-RECIPE-.json (this package: --k p6n-k4, P6k4 0390ec65..., recipe P6k4). Steps, each checked exactly: + 1. sw4: BRoute's build_sw4.py (standard library only). It applies the 16 explicit moves of SW4-RECIPE-.json: + every listed read of h becomes a read of its face register r and vice versa, with the entrance pre-reads deleted + or inserted. It checks the B-end state of every register mod p, the frame caps, tails and ends, and the output sha + and profile. Its controls C0, N1, N2 and N3 run on every build and must all hold (count pinned to 4). + 2. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant, Q6Reviewer-signed) on the SW4 word; + the count is pinned in LOCAL-PINS-sw4-.json. + 3. native, ledgers, local-replay, wrappers, phases: PR635's native local programs. The canonical word, local + programs and Clifford recipes are pinned (LOCAL-PINS-sw4-.json). +Apache-2.0. Driver by ColdWitness around BRoute's constructor. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +P6 = HERE.parent / 'layers_p6n' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--promo-dir', type=Path, required=True, help='construction/promo/reproduce_promo.py output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--recipe', default='P6k4', help='SW4-RECIPE-.json and LOCAL-PINS-sw4-.json') + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('SW4-RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-sw4-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + inp = a.promo_dir.resolve() / 'promo/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['input_sha256'], 'input must be the pinned promoted word' + run('sw4', HERE / 'build_sw4.py', inp, out / 'sw4', rfile, portable=False) + b = read(out / 'sw4/BUILD.json') + assert len(b['controls']) == pins['sw4_controls'] and all(b['controls'].values()), b['controls'] + word = out / 'sw4/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['output_sha256'] + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/FRONTIER.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/FRONTIER.json new file mode 100644 index 0000000000..70285d4d85 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/FRONTIER.json @@ -0,0 +1,36 @@ +{ + "checked_at_utc": "2026-10-13 00:54:29 UTC", + "construction_base": { + "pr": 635, + "commit": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f", + "kappa": "0.001636241501576388" + }, + "latest_pr": 642, + "strongest_reported_pr": 641, + "comparisons": [ + { + "number": 641, + "url": "https://github.com/CrocSwap/integer-mult-bounds/pull/641", + "title": "Conditional κ = 0.001636523543003976: cost-neutral pivot swaps with four entering ends (s4) on PR635", + "head_sha": "ff580ea5407aa427d64233523e46ee0afe24a766", + "head_repo": "jeremykothe2/integer-mult-bounds", + "created_at": "2026-10-13T00:36:30Z", + "updated_at": "2026-10-13T00:36:30Z", + "reported_kappa": "0.001636523543003976" + }, + { + "number": 642, + "url": "https://github.com/CrocSwap/integer-mult-bounds/pull/642", + "title": "Conditional κ = 0.001636472098484378: selective helper-249 dispatch", + "head_sha": "d1154e23e13d85fdbf64d4b41fa20bb0f56a428f", + "head_repo": "vectorsss/integer-mult-bounds", + "created_at": "2026-10-13T00:40:40Z", + "updated_at": "2026-10-13T00:46:54Z", + "reported_kappa": "0.001636472098484378" + } + ], + "new_kappa": "0.001649483702558979", + "gain_over_641_percent": "0.791932362379189601995955118466917211009518325743405547289975", + "gain_over_642_percent": "0.795100881136422911010672021375626721886288268207407873093008", + "scope": "PR641/642 values are their public reported conditional witnesses, not independently replayed here. This delta retains the pinned PR635 construction ancestry and replaces its local supplier and whole-owner dispatch; it does not claim to compose the later pivot swaps or helper249 end." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/OWNERS.json.gz new file mode 100644 index 0000000000..8eda84ea0c Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/PLAN.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/PLAN.json new file mode 100644 index 0000000000..4f17b4ccf3 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/PLAN.json @@ -0,0 +1,40249 @@ +{ + "status": "FROZEN_EXPLICIT_GAUGE44_WHOLE_OWNER_NOMINATION", + "mode": "gauge44-all72", + "K": 4, + "T": 8, + "M": 73, + "L": 9, + "live": 7168, + "deficit": 2560, + "profile": { + "1": 174763, + "2": 30105, + "3": 30275, + "4": 12240, + "5": 4896, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "windows": { + "0,0": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,2": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,1": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,3": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,5": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,7": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,9": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,11": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,12": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,13": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,14": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,15": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,16": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,17": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "1,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,1": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,3": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,5": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,7": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,9": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,11": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,12": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,13": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,14": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,15": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,16": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,17": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "2,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,1": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,3": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,5": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,7": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,9": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,11": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,12": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,13": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,14": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,15": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,16": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,17": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "3,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,1": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,3": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,5": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,7": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,9": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,11": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,12": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,13": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,14": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,15": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,16": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,17": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "4,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,1": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,3": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,5": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,7": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,9": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,11": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,12": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,13": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,14": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,15": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,16": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,17": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "5,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,1": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,3": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,5": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,7": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,9": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,11": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,12": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,13": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,14": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,15": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,16": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,17": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "6,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,1": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,3": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,5": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,7": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,9": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,11": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,12": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,13": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,14": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,15": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,16": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,17": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "7,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,1": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,3": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,5": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,7": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,9": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,11": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,12": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,13": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,14": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,15": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,16": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,17": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ] + }, + "sides": { + "0": 0, + "2": 1, + "1": 0, + "3": 1, + "4": 0, + "6": 1, + "5": 0, + "7": 1, + "8": 0, + "10": 1, + "9": 0, + "11": 1, + "12": 0, + "13": 1, + "14": 0, + "15": 1, + "16": 0, + "17": 1 + }, + "pairs": { + "0": 1, + "2": 1, + "1": 1, + "3": 1, + "4": 2, + "6": 2, + "5": 2, + "7": 2, + "8": 3, + "10": 3, + "9": 3, + "11": 3, + "12": 0, + "13": 0, + "14": 1, + "15": 1, + "16": 2, + "17": 2 + }, + "solver_status": "g44pack_early_lns_of_deterministic-capacity-matching", + "gap": null, + "provider_calls": [ + { + "time": 0, + "stage": 0, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 1, + "stage": 0, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 2, + "stage": 1, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 3, + "stage": 0, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 4, + "stage": 1, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 5, + "stage": 2, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 6, + "stage": 0, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 7, + "stage": 1, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 8, + "stage": 2, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 9, + "stage": 3, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 10, + "stage": 0, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 11, + "stage": 1, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 12, + "stage": 2, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 13, + "stage": 3, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 14, + "stage": 4, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 15, + "stage": 0, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 16, + "stage": 1, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 17, + "stage": 2, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 18, + "stage": 3, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 19, + "stage": 4, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 20, + "stage": 5, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 21, + "stage": 0, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 22, + "stage": 1, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 23, + "stage": 2, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 24, + "stage": 3, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 25, + "stage": 4, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 26, + "stage": 5, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 27, + "stage": 0, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 28, + "stage": 6, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 29, + "stage": 1, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 30, + "stage": 2, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 31, + "stage": 3, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 32, + "stage": 4, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 33, + "stage": 5, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 34, + "stage": 6, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 35, + "stage": 1, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 36, + "stage": 7, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 37, + "stage": 2, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 38, + "stage": 3, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 39, + "stage": 4, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 40, + "stage": 5, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 41, + "stage": 6, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 42, + "stage": 7, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 43, + "stage": 2, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 44, + "stage": 8, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 45, + "stage": 3, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 46, + "stage": 4, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 47, + "stage": 5, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 48, + "stage": 6, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 49, + "stage": 7, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 50, + "stage": 8, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 51, + "stage": 3, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 52, + "stage": 4, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 53, + "stage": 5, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 54, + "stage": 6, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 55, + "stage": 7, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 56, + "stage": 8, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 57, + "stage": 4, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 58, + "stage": 5, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 59, + "stage": 6, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 60, + "stage": 7, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 61, + "stage": 8, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 62, + "stage": 5, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 63, + "stage": 6, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 64, + "stage": 7, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 65, + "stage": 8, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 66, + "stage": 6, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 67, + "stage": 7, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 68, + "stage": 8, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 69, + "stage": 7, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + { + "time": 70, + "stage": 8, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + { + "time": 71, + "stage": 8, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + } + ], + "per_call_widths": [ + { + "stage": 0, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + } + ], + "provider_registry": { + "gauge44": { + "directory": "providers/gauge44", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "99b5e2898e2a11b9d674b9c359e4bd2bccf93dfa941878f8e395361cbfd454a6", + "LOCAL-PROGRAMS.json.gz": "32487d23f80e50efb073ca12b6d5decbab1978e3680f20a13112d8f9b19a1b3f", + "LOCAL-CHECKS.json": "134fbf45a602dad29d0caba99f45cd2c37afb053933331eca9bbad1e67bb8c83", + "INDEPENDENT-LOCAL-REPLAY.json": "abfc1e1e34d8bc93d77cfacfd49334d3f082219b6b0ccbd9d6cda736a521fcc8", + "CLIFFORD-RECIPES.json": "e3bfdfa2c044f14c00a8706950c8ae838ceeedd9ca78a83bffefe7886219516a", + "CLIFFORD-REVIEW.json": "bdcaad010336965eaffc0fcab177d38c3413cf72b1d3d9957a5c9953d96b5281", + "RESIDUAL-ADAPTERS.json": "383f40aadd00a4ac700dfd0d4c22d6c6c0be9a9863116e4d69c7acd23bafae0c" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2412, + "2": 418, + "3": 418, + "4": 170, + "5": 68, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c", + "backward": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "d1bf3c6f250a61be7421ce566668092f362c465274fb472d4bb01fc80cba9b23", + "LOCAL-PROGRAMS.json.gz": "ad9ce1708474b8b4790b8a1908b47fde0e182d319b3baac4180dd6d928bcfab5", + "LOCAL-CHECKS.json": "d51d68565b29e8552c94b6a682f8b79d4819d49339437a599da4e32ddffe2c34", + "INDEPENDENT-LOCAL-REPLAY.json": "837cb8512af6a4c6338d1cf246c124ea7e269005374fb9ba07a44aff1891fa59", + "CLIFFORD-RECIPES.json": "e3bfdfa2c044f14c00a8706950c8ae838ceeedd9ca78a83bffefe7886219516a", + "CLIFFORD-REVIEW.json": "b5ead2492b255dc030c5796c66d885fdc4fb4129c3d4bd6e632a627ebd4244d1", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + } + } + }, + "source_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "assignment_sha256": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a", + "source_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/PREPARATION.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/PREPARATION.json new file mode 100644 index 0000000000..8c7796820f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/PREPARATION.json @@ -0,0 +1,45 @@ +{ + "status": "PASS_EXPLICIT_MAP_AND_FRESH_PROVIDER_NOMINATION", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "source_owners_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "idle_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "roles": 35424, + "rank_mass": 520704, + "deficit": 2560, + "remaining": "Independent emitted-controller audit, fresh finite invoice, exact moments and outer assembly." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/SPEC.json new file mode 100644 index 0000000000..db24c49da4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/SPEC.json @@ -0,0 +1,1327 @@ +{ + "schema": "witness-spec/1", + "name": "gauge44-all72", + "data": { + "plan_sha256": "7b3122026e82b9d9e964d2a50c7bffdc976ae3dfea64bb98b2fdad5cfbdbaa20", + "owners_sha256": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a" + }, + "dispatch": [ + [ + 0, + 0, + "gauge44" + ], + [ + 0, + 1, + "gauge44" + ], + [ + 0, + 2, + "gauge44" + ], + [ + 0, + 3, + "gauge44" + ], + [ + 0, + 4, + "gauge44" + ], + [ + 0, + 5, + "gauge44" + ], + [ + 0, + 6, + "gauge44" + ], + [ + 0, + 7, + "gauge44" + ], + [ + 1, + 0, + "gauge44" + ], + [ + 1, + 1, + "gauge44" + ], + [ + 1, + 2, + "gauge44" + ], + [ + 1, + 3, + "gauge44" + ], + [ + 1, + 4, + "gauge44" + ], + [ + 1, + 5, + "gauge44" + ], + [ + 1, + 6, + "gauge44" + ], + [ + 1, + 7, + "gauge44" + ], + [ + 2, + 0, + "gauge44" + ], + [ + 2, + 1, + "gauge44" + ], + [ + 2, + 2, + "gauge44" + ], + [ + 2, + 3, + "gauge44" + ], + [ + 2, + 4, + "gauge44" + ], + [ + 2, + 5, + "gauge44" + ], + [ + 2, + 6, + "gauge44" + ], + [ + 2, + 7, + "gauge44" + ], + [ + 3, + 0, + "gauge44" + ], + [ + 3, + 1, + "gauge44" + ], + [ + 3, + 2, + "gauge44" + ], + [ + 3, + 3, + "gauge44" + ], + [ + 3, + 4, + "gauge44" + ], + [ + 3, + 5, + "gauge44" + ], + [ + 3, + 6, + "gauge44" + ], + [ + 3, + 7, + "gauge44" + ], + [ + 4, + 0, + "gauge44" + ], + [ + 4, + 1, + "gauge44" + ], + [ + 4, + 2, + "gauge44" + ], + [ + 4, + 3, + "gauge44" + ], + [ + 4, + 4, + "gauge44" + ], + [ + 4, + 5, + "gauge44" + ], + [ + 4, + 6, + "gauge44" + ], + [ + 4, + 7, + "gauge44" + ], + [ + 5, + 0, + "gauge44" + ], + [ + 5, + 1, + "gauge44" + ], + [ + 5, + 2, + "gauge44" + ], + [ + 5, + 3, + "gauge44" + ], + [ + 5, + 4, + "gauge44" + ], + [ + 5, + 5, + "gauge44" + ], + [ + 5, + 6, + "gauge44" + ], + [ + 5, + 7, + "gauge44" + ], + [ + 6, + 0, + "gauge44" + ], + [ + 6, + 1, + "gauge44" + ], + [ + 6, + 2, + "gauge44" + ], + [ + 6, + 3, + "gauge44" + ], + [ + 6, + 4, + "gauge44" + ], + [ + 6, + 5, + "gauge44" + ], + [ + 6, + 6, + "gauge44" + ], + [ + 6, + 7, + "gauge44" + ], + [ + 7, + 0, + "gauge44" + ], + [ + 7, + 1, + "gauge44" + ], + [ + 7, + 2, + "gauge44" + ], + [ + 7, + 3, + "gauge44" + ], + [ + 7, + 4, + "gauge44" + ], + [ + 7, + 5, + "gauge44" + ], + [ + 7, + 6, + "gauge44" + ], + [ + 7, + 7, + "gauge44" + ], + [ + 8, + 0, + "gauge44" + ], + [ + 8, + 1, + "gauge44" + ], + [ + 8, + 2, + "gauge44" + ], + [ + 8, + 3, + "gauge44" + ], + [ + 8, + 4, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2896, + "expected_profile": { + "1": 2412, + "2": 418, + "3": 418, + "4": 170, + "5": 68, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "d1bf3c6f250a61be7421ce566668092f362c465274fb472d4bb01fc80cba9b23", + "LOCAL-PROGRAMS.json.gz": "ad9ce1708474b8b4790b8a1908b47fde0e182d319b3baac4180dd6d928bcfab5", + "LOCAL-CHECKS.json": "d51d68565b29e8552c94b6a682f8b79d4819d49339437a599da4e32ddffe2c34", + "INDEPENDENT-LOCAL-REPLAY.json": "837cb8512af6a4c6338d1cf246c124ea7e269005374fb9ba07a44aff1891fa59", + "CLIFFORD-RECIPES.json": "e3bfdfa2c044f14c00a8706950c8ae838ceeedd9ca78a83bffefe7886219516a", + "CLIFFORD-REVIEW.json": "b5ead2492b255dc030c5796c66d885fdc4fb4129c3d4bd6e632a627ebd4244d1", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + }, + "entering": 192, + "entrance": 384, + "width_digest": "ca0b972f2ee81a50449ce6489ddf9a94be914f84351136c2a9e3f81b37a0e387", + "program_hashes": { + "backward": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293", + "forward": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + "artifacts": { + "LOCAL-CHECKS.json": "134fbf45a602dad29d0caba99f45cd2c37afb053933331eca9bbad1e67bb8c83", + "CLIFFORD-RECIPES.json": "e3bfdfa2c044f14c00a8706950c8ae838ceeedd9ca78a83bffefe7886219516a", + "RESIDUAL-ADAPTERS.json": "383f40aadd00a4ac700dfd0d4c22d6c6c0be9a9863116e4d69c7acd23bafae0c" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24753, + "macros": 19679, + "real_component_primitives": 198674, + "prefix_l1": "14824955600738971847565/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98295, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24753, + "macros": 19679, + "real_component_primitives": 198626, + "prefix_l1": "11061380959509307613/4096", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98263, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 206, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 386832, + "local_primitive_bound": 10032231262226, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2412, + "2": 418, + "3": 418, + "4": 170, + "5": 68, + "8": 8 + }, + "program_hashes": { + "backward": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293", + "forward": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "d1bf3c6f250a61be7421ce566668092f362c465274fb472d4bb01fc80cba9b23", + "LOCAL-PROGRAMS.json.gz": "ad9ce1708474b8b4790b8a1908b47fde0e182d319b3baac4180dd6d928bcfab5", + "LOCAL-CHECKS.json": "d51d68565b29e8552c94b6a682f8b79d4819d49339437a599da4e32ddffe2c34", + "INDEPENDENT-LOCAL-REPLAY.json": "837cb8512af6a4c6338d1cf246c124ea7e269005374fb9ba07a44aff1891fa59", + "CLIFFORD-RECIPES.json": "e3bfdfa2c044f14c00a8706950c8ae838ceeedd9ca78a83bffefe7886219516a", + "CLIFFORD-REVIEW.json": "b5ead2492b255dc030c5796c66d885fdc4fb4129c3d4bd6e632a627ebd4244d1", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + } + }, + "semantic_phase_sha256": "b5ead2492b255dc030c5796c66d885fdc4fb4129c3d4bd6e632a627ebd4244d1", + "expected_local": { + "forward": { + "events": 24753, + "macros": 19679, + "real_component_primitives": 198626, + "prefix_l1": "11061380959509307613/4096", + "coefficient_work_primitive_count": 98263 + }, + "backward": { + "events": 24753, + "macros": 19679, + "real_component_primitives": 198674, + "prefix_l1": "14824955600738971847565/64", + "coefficient_work_primitive_count": 98295 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "0.001636241501576388", + "hosted_residuals": 34560, + "rank_mass": 520704, + "actual_73column_sigmas": 8899, + "cross_replica_helper_roles": 27858, + "idle_remainders": 3783, + "idle_remainder_profile": { + "1": 1099, + "2": 9, + "3": 179, + "7": 54, + "16": 23, + "48": 2419 + }, + "global_profile": { + "1": 174763, + "2": 30105, + "3": 30275, + "4": 12240, + "5": 4896, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "live": 7168, + "physical": 7658, + "conservative_kappa_decimal": "0.001671387261540186", + "kappa_decimal": "0.001671387264390146", + "complex_lower": "837092738337043214923/500000000000000000000000", + "conservative_complex_lower": "1674185473814575474867/1000000000000000000000000", + "kappa": "835693632195073/500000000000000000", + "assembly_controls_rejected": 69, + "provider_counts": { + "gauge44": 72 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/UPSTREAM-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/UPSTREAM-PINS.json new file mode 100644 index 0000000000..68486b84e3 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/data/UPSTREAM-PINS.json @@ -0,0 +1,23 @@ +{ + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/ADMISSION-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..2e15a10065 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/ADMISSION-CONTROLS.json @@ -0,0 +1,102 @@ +{ + "status": "PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS", + "valid_receipt_kappa": "1649483702558979/1000000000000000000", + "input_sha256": { + "owner_audit": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "fresh_invoice": "14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582", + "inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "assembler_sha256": "7ac28118d69416e4fb67b61216285fb0823310b7635ce1b9025aa3f10119ef6a", + "rejected_controls": [ + "empty_certification_maps", + "failed_invoice_status", + "nonboolean_precision_check", + "wrong_owner_role_count", + "understated_physical_stock", + "changed_profile_same_rank_mass", + "insufficient_finite_C0", + "missing_finite_check", + "wrong_reflected_orientation_selfconsistent_totals", + "missing_selected_call", + "wrong_selected_primitive_sum", + "wrong_selected_coefficient_work_sum", + "unpaid_wrapper_factors", + "wrong_global_compiler", + "wrong_global_adapter_maximum", + "understated_exact_prefix_and_global_sum", + "wrong_global_prefix_sum", + "wrong_row_prefix_reserve", + "wrong_parent_geometry_charge", + "wrong_rebased_geometry_charge", + "wrong_complete_pervertex_envelope", + "wrong_prior_added_complete_invoice", + "wrong_finite_router_bits", + "wrong_finite_literal_bits", + "wrong_finite_physical_stock_bits", + "wrong_finite_row_coefficient", + "reordered_complete_calls", + "understated_explicit_idle_remainders", + "understated_actual_chart_types", + "wrong_cross_replica_role_count", + "old_no_cold_wrapper_counts_selfconsistent", + "gauge44:missing_provider", + "gauge44:missing_backward_orientation", + "gauge44:unpaid_scalar_primitive", + "gauge44:wrong_local_artifact_binding", + "gauge44:false_dirty_restoration", + "gauge44:wrong_declared_provider_count", + "gauge44:wrong_local_compiler", + "gauge44:wrong_local_adapter_charge", + "gauge44:wrong_local_primitive_bound", + "gauge44:forged_provider_and_call_program_hash", + "gauge44:provider_at_wrong_call", + "gauge44:synchronized_forged_source_recipe_hash", + "gauge44:synchronized_forged_phase_review_semantics", + "gauge44:width_order_swap_4_5", + "gauge44:width_inventory_shift_4_5", + "gauge44:width_order_swap_4_7", + "gauge44:width_inventory_shift_4_7", + "gauge44:width_order_swap_4_8", + "gauge44:width_inventory_shift_4_8", + "gauge44:width_order_swap_4_9", + "gauge44:width_inventory_shift_4_9", + "gauge44:width_order_swap_5_7", + "gauge44:width_inventory_shift_5_7", + "gauge44:width_order_swap_5_8", + "gauge44:width_inventory_shift_5_8", + "gauge44:width_order_swap_5_9", + "gauge44:width_inventory_shift_5_9", + "gauge44:width_order_swap_7_8", + "gauge44:width_inventory_shift_7_8", + "gauge44:width_order_swap_7_9", + "gauge44:width_inventory_shift_7_9", + "gauge44:width_order_swap_8_9", + "gauge44:width_inventory_shift_8_9", + "gauge44:cold_helper_width_swap_264", + "gauge44:cold_helper_width_swap_276", + "gauge44:cold_helper_width_swap_288", + "gauge44:cold_helper_width_swap_300", + "wrong_owner_receipt_hash" + ], + "discovery_accepted_controls": [], + "exact_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "conservative_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "recurrence_model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "scope": "Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/ASSEMBLY.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..6feaaf28f5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/ASSEMBLY.json @@ -0,0 +1,336 @@ +{ + "status": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY", + "kappa": "1649483702558979/1000000000000000000", + "kappa_decimal": "0.001649483702558979", + "complex_lower": "1652208994368411824947/1000000000000000000000000", + "complex_decimal": "0.001652208994368411824947", + "bit_lower": "413456747036699736067/250000000000000000000000", + "bit_decimal": "0.001653826988146798944268", + "binding": "complex", + "gain_over_pr635_percent": "0.8093060205252829126484020359439672024956960385078942889840023844750830", + "complex_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "provider_counts": { + "gauge44": 72 + }, + "surcharge_model": { + "complex": false, + "bit": true + }, + "conservative_complex_lower": "826104495740783435531/500000000000000000000000", + "conservative_complex_decimal": "0.001652208991481566871062", + "conservative_kappa": "32989673993633/20000000000000000", + "conservative_kappa_decimal": "0.00164948369968165", + "conservative_moments": [ + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "826104495740783435531/500000000000000000000000", + "accept": true, + "mercator": [ + "-21470727653278306311183666306239229019733127/13479973333575319897333507543509815336818572211270286240551805124608", + "-10735363826639153155591833153119614509866563/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two": [ + "-497746012127833654257/312500000000000000000000000000000000000000000", + "-15927862388090676936081/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "1652208991481566871063/1000000000000000000000000", + "accept": false, + "mercator": [ + "18565857384700607217299861034814026061253869/13479973333575319897333507543509815336818572211270286240551805124608", + "9282928692350303608649930517407013030626935/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two": [ + "3443229403069298452661/2500000000000000000000000000000000000000000000", + "6886463806138596905393/5000000000000000000000000000000000000000000000" + ] + } + ], + "conservative_bootstrap": [ + { + "exponent": "412385685180656454166549264744655866734211385357236332091088842586409092836277952888766748039/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "666562689735263598950072203096262874070849142763667908911157413590907163722047111233251961/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "5064079519162" + }, + { + "exponent": "206525573284761175512531267070234734086162997564863775372380915312260537579589712487639916151798780772051965162106786567177267184954922826291/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "550650434683370218401403641330717978119685136224627619084687739462420410287512360083848201219227948034837893213432822732815045077173709/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1855113791006194394" + }, + { + "exponent": "103263061512703129767826074285021991628452086339263045204373010454992865610677336738873844192820011712987227316937414267052501172258472295234559238219891652401488082322583795324180689654479/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "454894799673548759951916040773618472285736954795626989545007134389322663261126155807179988287012772683062585732947498827741527704765440761780108347598511917677416204675819310345521/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "679580003544484094184219" + }, + { + "exponent": "51631530983423174081587995422763705511463803560275446891594962002253805557680841136478473308373535599630472737022595278769657751046420516932624996624821336420775380353032156988877311591948170858471939709729324917119896056841137038106651/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "375790639099421695705310689571475752224553108405037997746194442319158863521526691626464400369527262977404721230342248953579483067375003375178663579224619646967843011122688408051829141528060290270675082880103943158862961893349/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "248949139107542177224284717390" + }, + { + "exponent": "25815765491899171918007291224739112961920330868753566637213660249294181959373199689620973587025160691744778232655677905734546021049010279802309251671202559782629995396349706306018533755676891522445602691753137818884540822614505790975637207188084426480115050716386268926740408639183319/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "310442336417334495395138597308787496433362786339750705818040626800310379026412974839308255221767344322094265453978950989720197690748328797440217370004603650293693981466244323108477554397308246862181115459177385494209024362792811915573519884949283613731073259591360816681/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "91197023954707297182834066510188309" + }, + { + "exponent": "12907882745949740923714044496984490980274913441911668026309349328701170257318232044487278001962200060194315656940445191119148905788010009704145659576637708822386921067210646238981446862191953905605296632993352808355973492462268456184932241751785844259109396882935383667850308942850925398049837650776722500045535479944043369072892611/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "256457809782632763069983906386213331973690650671298829742681767955512721998037799939805684343059554808880851094211989990295854340423362291177613078932789353761018553137808046094394703367006647191644026507537731543815067758248214155740890603117064616332149691057149074601950162349223277499954464520055956630927107389/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "33408017428823827582408170997246977713592" + }, + { + "exponent": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "211860949629267595905917763118557339746074630342323498329842323479923076414271348172943610266537297523561678444604828304170477174756183602823509499012679952130926209341493804675449744526060322749792981799780854523432131305348883503626747822790388138147666887366091780797609965416860984483895508119543485012756809214016545195996932212567268680463627740404761441/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "12238290024451914798381844566546350371351403966" + } + ], + "conservative_outer": { + "bit_positive": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "211871309820640570776507849056057339746074630342323498329842323479923076414271348172943610266537297523561678444604828304170477174756183602823509499012679952130926209341493804675449744526060322749792981799780854523432131305348883503626747822790388138147666887366091780797609965416860984483895508119543485012756809214016545195996932212567268680463627740404761441/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "14798895504259216564469/500000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "211864855879267595905917763118557339746074630342323498329842323479923076414271348172943610266537297523561678444604828304170477174756183602823509499012679952130926209341493804675449744526060322749792981799780854523432131305348883503626747822790388138147666887366091780797609965416860984483895508119543485012756809214016545195996932212567268680463627740404761441/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "3226970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "105938881881006772823548755625468849232466538663312693107581415665331195883637344244148325210192234490432666278692147614787715025699647196583450579029165219881860281161247889657772741336820819881091815450145901201393315859692641970958850479263888720190329816935223100010666835041543126150166956449806325645393920711500153054513453349474420323686617873270168153231319536372259595238559/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "3226970686487435294937514922398306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "1949898029313512564705062485077601693260258843798594218849232466538663312693107581415665331195883637344244148325210192234490432666278692147614787715025699647196583450579029165219881860281161247889657772741336820819881091815450145901201393315859692641970958850479263888720190329816935223100010666835041543126150166956449806325645393920711500153054513453349474420323686617873270168153231319536372259595238559/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "211877763762013545647097723122247519105503853834474442272502577405292734090773018330620130343460883252213505500994561766872953613077738997995205328535505195947323385831994791995497613599850981255988306350036328463109381512367083722772224390659082789264163260618268990409471817749973618392114710509578068151772325318508425652511919455758054663918431743472548873731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "105938881881006772823548755625468849232466538663312693107581415665331195883637344244148325210192234490432666278692147614787715025699647196583450579029165219881860281161247889657772741336820819881091815450145901201393315859692641970958850479263888720190329816935223100010666835041543126150166956449806325645393920711500153054513453349474420323686617873270168153231319536372259595238559/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "3226970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "1953124999999999999999998046875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441", + "epsilon_below_one": "3226970686487435294938979766148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441", + "guard_width": "3226970686487435294938979766148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441", + "K_geometry": "1468070720686487435294937514922398306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441000000000000000000000000", + "K_dominates_log": "3226970686487435294937511695427620252305861263890858752460793720180485901111267816801207467429055763337267340121003649146911577869633062577446775406966631495564164208685860479765336302289331139507447140523460341366797842322595435619426565232122808174942350914051970972451641141915256163878053355288273809072933054217028715897732229455456296751812192044446291176466436640183181321189004150245613674929594231319536372259595238559/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441000000000000000000000000", + "record_suffix": "3226970686487435294938979766148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441", + "phase_local": "25815765491899482359509881777215767430493954674219608057833527949537297049358197907143889096243594353628229063649658007713882913918788029273932770227069101119480010155481703940592314334160595911903037951165714602199155134171574127209673354214274314378230397559204749931119332423368694463803385509997471926021764359068384436379974784474955225370218018598125348910660111527292004248569767395639796508259681231319536372259595238559/15650815765491899482359496213129186453917929249611246249206140267690693498455139348674677350432930901246046813398318462124076538669770462819081698279794402822427332395367766678240945117750710016882737818069305433440951265476398832790388853473122458864232329196165888890238477361464518215199914665319667654990798664348401549394836848634307998775563892373204204637410507057013838654774149443709021923238091528000000000000000000000000", + "phase_boundary": "5163153098379896471900411273866604296150554985222608692921313796982498285246718967402008749898873356790778344994888308452651978102417774008574146391546843177614093861268361347836220133592582405712783495721367849438142753052507894898590575716307222992367040626493637740337443251754122303871653254263347933382832880347144920510495877028556204919104120034761638982254465916221080429250212428422257917786458831319536372259595238559/3130163153098379896471899242625837290783585849922249249841228053538138699691027869734935470086586180249209362679663692424815307733954092563816339655958880564485466479073553335648189023550142003376547563613861086688190253095279766558077770694624491772846465839233177778047695472292903643039982933063933530998159732869680309878967369726861599755112778474640840927482101411402767730954829888741804384647618305600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "3906249999999999999999994137398029313512564705062973358851693260258843798594218849232466538663312693107581415665331195883637344244148325210192234490432666278692147614787715025699647196583450579029165219881860281161247889657772741336820819881091815450145901201393315859692641970958850479263888720190329816935223100010666835041543126150166956449806325645393920711500153054513453349474420323686617873270168153231319536372259595238559/7825407882745949741179748106564593226958964624805623124603070133845346749227569674337338675216465450623023406699159231062038269334885231409540849139897201411213666197683883339120472558875355008441368909034652716720475632738199416395194426736561229432116164598082944445119238680732259107599957332659833827495399332174200774697418424317153999387781946186602102318705253528506919327387074721854510961619045764000000000000000000000000", + "prime_interval_packing": "3226970686487435294938979766148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441", + "alpha_positive": "6453941372974870589876003180325926992047017465784921153228327181517173208003686401135876271545418419093119014910811414656478911590940914962659060381266984298980713629656695259883476021128083249849674399186639521485706026872449534418033249372430166203983500434788082252261311324980033063867386520246730682922766097767222390252338308743956143697298738694971870852779818766913013167957684613873354079691035231319536372259595238559/3912703941372974870589874053282296613479482312402811562301535066922673374613784837168669337608232725311511703349579615531019134667442615704770424569948600705606833098841941669560236279437677504220684454517326358360237816369099708197597213368280614716058082299041472222559619340366129553799978666329916913747699666087100387348709212158576999693890973093301051159352626764253459663693537360927255480809522882000000000000000000000000", + "alpha_below_one": "3906249999999999999999998050101970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/3912703941372974870589874053282296613479482312402811562301535066922673374613784837168669337608232725311511703349579615531019134667442615704770424569948600705606833098841941669560236279437677504220684454517326358360237816369099708197597213368280614716058082299041472222559619340366129553799978666329916913747699666087100387348709212158576999693890973093301051159352626764253459663693537360927255480809522882000000000000000000000000", + "alpha_below_one_fourth": "971722043970268847057592510140248226377823560634917969422155439549151170445442522891031458130512762908784806822484092468098304755269713011229947082105883192102727561080828722130175593838291292805321439230144950068573748065402477514981270092697723512810537074325579973387643523766552355386127280062232497754002150424007874446924964730900293779775444534630290918985376872296451902755426655617940516122689685268680463627740404761441/3912703941372974870589874053282296613479482312402811562301535066922673374613784837168669337608232725311511703349579615531019134667442615704770424569948600705606833098841941669560236279437677504220684454517326358360237816369099708197597213368280614716058082299041472222559619340366129553799978666329916913747699666087100387348709212158576999693890973093301051159352626764253459663693537360927255480809522882000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "7616768350326285557500319775653039882167791373606484433247966343434288108018622581046971563310328015701829825865161075895589557869002227910163859966123751049011574089086818827397845295188747039740805603604306735718724487573983298303347943047832446306575284675533737097663574583370895732239816339414872288224973497321202082691939259199649525897121646158714570558007923356081995983858955555812385514139941650448054969080495460839451184943579045934071718914451277154414260694865402045088246492924621190212696589297290139170457113442903864489881182428482943926033330169648915939096761899935129171461630633550206360734465453786062702930868880734179253684068961295379267720699847283311726943651844776757599676210480855235552712881882161583412704615034946691001348844134260624423778504120396481/7641999885494091544120847760316985573202113891411741332620185677583346434792548510095057300016079541624046295604647686584021747397348858798379735488180860753138345896175667323359836483276713875431024325229153043672339485095897867573432057359923075617300941990315375434686756524152596784765583332675618972163475910326367944040447679997220702527130806822853615545610599148932538405651440158061045860956099378906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "109581526123935195858875991199089403690805739881701049917094042360749016591858458241700019187473509130645630260190554109341700276625718726922076882767057223743342216318578988348828619352255328397974406884908862624043866454837872438312648368141704224563420929965147163542829892978839594283807651161986351789120720014755211890034065410623963120855092162049451874964783597292570349189769934578612321766094227764306041390883221214284323/15650815765491899482359496213129186453917929249611246249206140267690693498455139348674677350432930901246046813398318462124076538669770462819081698279794402822427332395367766678240945117750710016882737818069305433440951265476398832790388853473122458864232329196165888890238477361464518215199914665319667654990798664348401549394836848634307998775563892373204204637410507057013838654774149443709021923238091528000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "22200664394464068201218451251709660099895005854056647094104902383532607617880707943289313682606481683041097904310248641310014220990880046435669692660714113332169622156571009112311747389402252920606378362090592667540916232777689188179337564977308018790044043286680427258859028858029102001845446586248858526682126585053940466953916779314590626875566608934902197480400674781390017936270431029836796882094847/39127039413729748705898740532822966134794823124028115623015350669226733746137848371686693376082327253115117033495796155310191346674426157047704245699486007056068330988419416695602362794376775042206844545173263583602378163690997081975972133682806147160580822990414722225596193403661295537999786663299169137476996660871003873487092121585769996938909730933010511593526267642534596636935373609272554808095228820000000000000000", + "coordinate_movement_above_kappa": "10645671093425277374066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "1110031263371232723573487267648456363846443552961676153299463968409096919557348090272047099795655280035692239459660757275692945539976668600475632247823420692308128304412001034644752589351972927191566807762302374713866631519976274859112779450258716799194844135292871842206840163091784917027495429323109761375649455402863979797502164611123452055278483501258563223494454062756118770083689704723159380477001945238559/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441000000000000000000000000", + "bulk_exposure_above_kappa": "10645671093425277374066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "1776051195205154769610040805199746166843293728583375566122611039915075148093769328570726510273849730526925176588968216514993372169703069993545723027644844092273216969109131308014105011034040514809758158625020154740094118503306950504492906399577957362896165433893284659972611028832657977082858826910575517176113252954482193806119667990561170861545481769305629147906474306197819308171802635618263286939847355238559/3130163153098379896471899242625837290783585849922249249841228053538138699691027869734935470086586180249209362679663692424815307733954092563816339655958880564485466479073553335648189023550142003376547563613861086688190253095279766558077770694624491772846465839233177778047695472292903643039982933063933530998159732869680309878967369726861599755112778474640840927482101411402767730954829888741804384647618305600000000000000000000000", + "scalar_work_above_kappa": "8880263801433656593999945205746837398809695601881502636236179802645509585815595870423306888707923869100076505968247781734197922886784684852960024679073360358567496059211854223953864175642761449403799234494009808353187312992167490721880927192316523375710259285631021382807500263401970617673401734510210245714393760171743143231373037371230171461726796628474332341634690236242625047778340565166038289210198395238559/15650815765491899482359496213129186453917929249611246249206140267690693498455139348674677350432930901246046813398318462124076538669770462819081698279794402822427332395367766678240945117750710016882737818069305433440951265476398832790388853473122458864232329196165888890238477361464518215199914665319667654990798664348401549394836848634307998775563892373204204637410507057013838654774149443709021923238091528000000000000000000000000", + "dimension_above_kappa": "38997960586270251316301845736641102066423628127681544476879655184829913347967054011845914241798380690174196649110685527730906557635822484262309975291394039379601361672294696636567259362194234070104902844228989337004000198399595585564944099094883041018756741986893296564447849883019131720859242194729932864368449925377854653195034463468170470015007048381580115282040341292367600843465301172117463128175202209836796882094847/39127039413729748705898740532822966134794823124028115623015350669226733746137848371686693376082327253115117033495796155310191346674426157047704245699486007056068330988419416695602362794376775042206844545173263583602378163690997081975972133682806147160580822990414722225596193403661295537999786663299169137476996660871003873487092121585769996938909730933010511593526267642534596636935373609272554808095228820000000000000000" + }, + "conservative_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "native_correction_gain": "2.877329E-12", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "input_sha256": { + "owner_audit": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "fresh_invoice": "14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582", + "inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "bit_supplier": { + "pr": 543, + "repository": "eumemic/integer-mult-bounds", + "commit": "2065fe4f72a914d907f1046603f5a36f17018535", + "path": "research/e8-bit-r420/EXPECTED.json", + "git_blob_sha1": "b61d859826246e0c3dabbe096e57ad7015eadfd5", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "moments": [ + { + "side": "bit", + "surcharge": true, + "endpoint": "413456747036699736067/250000000000000000000000", + "accept": true, + "mercator": [ + "-6043813583626134311169770662156174867615397/13479973333575319897333507543509815336818572211270286240551805124608", + "-12087627167252268622339541324312349735230793/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-1120888283015460284783/2500000000000000000000000000000000000000000000", + "-4483543132061841139029/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "bit", + "surcharge": true, + "endpoint": "1653826988146798944269/1000000000000000000000000", + "accept": false, + "mercator": [ + "70925594433828721229860776023154018035852861/26959946667150639794667015087019630673637144422540572481103610249216", + "70925594433828721229860776023154018035852863/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "13153878434097279887307/5000000000000000000000000000000000000000000000", + "6576941717048639943679/2500000000000000000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "1652208994368411824947/1000000000000000000000000", + "accept": true, + "mercator": [ + "-55206003495063536066288437576157100010340973/26959946667150639794667015087019630673637144422540572481103610249216", + "-55206003495063536066288437576157100010340971/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-409541/200000000000000000000000000000", + "-255963/125000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "413052248592102956237/250000000000000000000000", + "accept": false, + "mercator": [ + "12433583290374778086207959883025413594081851/13479973333575319897333507543509815336818572211270286240551805124608", + "3108395822593694521551989970756353398520463/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "461187/500000000000000000000000000000", + "7379/8000000000000000000000000000" + ] + } + ], + "bootstrap": [ + { + "exponent": "1649542743600042455931461134358912270794693606912716279281008134403270623498780603221028447191/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "2666250768369369015536213432093360793481446087283720718991865596729376501219396778971552809/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "5064079483347" + }, + { + "exponent": "1652204589164911083386484432640289489025149021897345425947753889635290073672223126501218389623373546339575388781616555168351167510162074126123/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4405203500741560512915150716142563026031102654574052246110364709926327776873498781610376626453660424611218383444831648832489837925873877/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1855113771403454575" + }, + { + "exponent": "1652208987090094978998576337786240766660534086861443373660655035146913315879277165163676924708776055203276437395070714960859071205403889642411881787926277109463592646624985153186335324209519/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "7278316845948421010004764864927640966138556626339344964853086684120722834836323075291223944796723562604929285039140928794596110357588118212073722890536407353375014846813664675790481/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "679579993988641861825997" + }, + { + "exponent": "1652208994356386524390258236146418863551774879755022063719897338019847837294371501505671240293619314475646690108109592273827150181689732342308269781370466209964554813416396376690383672659155117856785386209592305112449619050994195020929507/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "12025300556739111644586768036400173244977936280102661980152162705628498494328759706380685524353309891890407726172849818310267657691730218629533790035445186583603623309616327340844882143214613790407694887550380949005804979070493/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "248949134737010607693751277429" + }, + { + "exponent": "1652208994368391956637257519960511230799265177421282452671784475034111396774491992172626292851745263613135372191632272357217972384735656024916702509923614329343687257847797050984709314880436174232795630101904826260914576699263441846242089246520580636287560130658033652250181465888988871/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "19868309739827830494400788909875578717547328215524965888603225508007827373707148254736386864627808367727642782027615264343975083297490076385670656312742152202949015290685119563825767204369898095173739085423300736558153757910753479419363712439869341966347749818534111011129/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "91197022034968984076452463608008868" + }, + { + "exponent": "1652208994368411792120397292749943827369551868295936383281836655065105377018214255389190697215906708539556278748557372371967341676249062946027583420481631348820521456435303894723559097730578401212966050397815062867751401948328742424744594348421190830426806021851515386550389899161084889489269714131354119389927583907816206322316835163/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "32826600055041061804218623184704063616718163344934894622981785744610809302784093291460443721251442627628032658323750937053972416579518368651179478543564696105276440902269421598787033949602184937132248598051671257575255405651578809169573193978148484613449610100838915110510730285868645880610072416092183793677683164837/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "33408016608824820410042813054159823398652" + }, + { + "exponent": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "54236403865473444985322757531373856012223677833356701855562108433750103613216205317749674017279429111191666941964412572017755204082102233807873846052697603811649653124001931643769484305752590079363607667588531497663794802010786736975946662668463760882303208154359895101495664080375908330649263112129857829651622425982305965191606574450050525591080557542210211361/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "12238289681296331108170086600566454188814599875" + } + ], + "outer": { + "bit_positive": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "54239056074467813397147704531373856012223677833356701855562108433750103613216205317749674017279429111191666941964412572017755204082102233807873846052697603811649653124001931643769484305752590079363607667588531497663794802010786736975946662668463760882303208154359895101495664080375908330649263112129857829651622425982305965191606574450050525591080557542210211361/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "29597791005631588175053/1000000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "54237403865473444985322757531373856012223677833356701855562108433750103613216205317749674017279429111191666941964412572017755204082102233807873846052697603811649653124001931643769484305752590079363607667588531497663794802010786736975946662668463760882303208154359895101495664080375908330649263112129857829651622425982305965191606574450050525591080557542210211361/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "27120354141731090904486271526630853538298441768973819553925041993197218449906247096766403258536101339390515721308189006579766410374109152491364905271144719803591018688154913124280930503223171037750160064309959996241818037397725779956475667539429869654414628130517279086986949736979799805429530060400848538917480563728040852737973635602599280489575087164530655629974408919442457789788639/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "826104497184205912446503819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "499173895502815794087553496180246228275110398745026630853538298441768973819553925041993197218449906247096766403258536101339390515721308189006579766410374109152491364905271144719803591018688154913124280930503223171037750160064309959996241818037397725779956475667539429869654414628130517279086986949736979799805429530060400848538917480563728040852737973635602599280489575087164530655629974408919442457789788639/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "54240708283462181808972597292317781544410280685652170481706096210072270256514349755641240267175815894986349192290395292588644012415160269395301828297493521709415845250155878946165672656099466077431963898104225745073715438403119148444448998873661750095566232207697226637734781777167753970754161616465777453743291776719193835333776922827624543285115365935635761310474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "27120354141731090904486271526630853538298441768973819553925041993197218449906247096766403258536101339390515721308189006579766410374109152491364905271144719803591018688154913124280930503223171037750160064309959996241818037397725779956475667539429869654414628130517279086986949736979799805429530060400848538917480563728040852737973635602599280489575087164530655629974408919442457789788639/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "499999999999999999999999500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361", + "epsilon_below_one": "826104497184205912446878819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361", + "guard_width": "826104497184205912446878819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361", + "K_geometry": "375826104497184205912446503819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000000000", + "K_dominates_log": "826104497184205912446502993649274540683688808469549392689976668629771207076928496305244550523913306828275589938682348566856581045095069529521572980141612155697641674495265654305561472676750358020438873087795517117162964216620543226929219712762338530003520574278607528071365328345150260342882704677648330711849556926548888440882324865802019548110565281877964447551277650809104946969306080655644706740866990974408919442457789788639/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000000000", + "record_suffix": "826104497184205912446878819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361", + "phase_local": "6608835977473647299574529731925676614910897593408133417921887576246954470199453202352864021374569577150910767128929639191122970995937746483463208107522848088258087337597252615680424341859665966150472359565233319852911843766450823253236493450978258070308190901502598440490462931431529306733974056518789732073842846503742948668459960919705733578944749832659769484124252040657390357559485218219547502212346517974408919442457789788639/4006608835977473647299571030558030173799116810039786953171693612465848209443568599664054422252400750023225868773931711189284875874229534487947361868717007126780069080757830842241571271850494760695005752555974214631697998719485520320030065455700818193760348194659684561042764682974955861767304104402104161601556563759516793211688660155490175673178096210915179205756083399302683754754960204728644460337681690888000000000000000000000000", + "phase_boundary": "1321767195494729459914505285501537575617449561578570880566997603568386915344573471109326219453969558570215747983560687763222271612310156125573713133917146664202822731332578822423406861463857410145870314785861614494512868178034567229184128890323703062029635173754949606278716551466839892890690534835460450828591838890308379317531836527565195036467781100516404879257532598510386553591321435303979232066993807574408919442457789788639/801321767195494729459914206111606034759823362007957390634338722493169641888713719932810884450480150004645173754786342237856975174845906897589472373743401425356013816151566168448314254370098952139001150511194842926339599743897104064006013091140163638752069638931936912208552936594991172353460820880420832320311312751903358642337732031098035134635619242183035841151216679860536750950992040945728892067536338177600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "999999999999999999999998499173895502815794087553621180246228275110398745026630853538298441768973819553925041993197218449906247096766403258536101339390515721308189006579766410374109152491364905271144719803591018688154913124280930503223171037750160064309959996241818037397725779956475667539429869654414628130517279086986949736979799805429530060400848538917480563728040852737973635602599280489575087164530655629974408919442457789788639/2003304417988736823649785515279015086899558405019893476585846806232924104721784299832027211126200375011612934386965855594642437937114767243973680934358503563390034540378915421120785635925247380347502876277987107315848999359742760160015032727850409096880174097329842280521382341487477930883652052201052080800778281879758396605844330077745087836589048105457589602878041699651341877377480102364322230168840845444000000000000000000000000", + "prime_interval_packing": "826104497184205912446878819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361", + "alpha_positive": "1652208994368411824893256813403046265573290063567918539151678226860797387523003454312047332074007059731509186680146247227466065323786880522941806569767503003206276769224120934501970453988595444896157942584572346079412804152310583230687401675364612750047044906739177658416950700214632981255895754940668530906420026866148039901964844302073978695372591646275365167061702563644574291339331671736202248951078351974408919442457789788639/1001652208994368411824892757639507543449779202509946738292923403116462052360892149916013605563100187505806467193482927797321218968557383621986840467179251781695017270189457710560392817962623690173751438138993553657924499679871380080007516363925204548440087048664921140260691170743738965441826026100526040400389140939879198302922165038872543918294524052728794801439020849825670938688740051182161115084420422722000000000000000000000000", + "alpha_below_one": "999999999999999999999999500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/1001652208994368411824892757639507543449779202509946738292923403116462052360892149916013605563100187505806467193482927797321218968557383621986840467179251781695017270189457710560392817962623690173751438138993553657924499679871380080007516363925204548440087048664921140260691170743738965441826026100526040400389140939879198302922165038872543918294524052728794801439020849825670938688740051182161115084420422722000000000000000000000000", + "alpha_below_one_fourth": "248760843254223691131329932596473839596871510563918766034079172552254715702700034024691354058701039816720107611690585702102838676815559024973768310225045442420548040778140306705596234036667327098541701592163816068401712115815534436771191689305936524359974717259491107406755841985720108379200610770190841569190865208103651535828576415416062000878258421535923335192693509892773160380845681123804076522154027328525591080557542210211361/1001652208994368411824892757639507543449779202509946738292923403116462052360892149916013605563100187505806467193482927797321218968557383621986840467179251781695017270189457710560392817962623690173751438138993553657924499679871380080007516363925204548440087048664921140260691170743738965441826026100526040400389140939879198302922165038872543918294524052728794801439020849825670938688740051182161115084420422722000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "499172530605535258148204467894413622366649364752615796356468001035238236450517537374493631619363733298840687671623161397641818269266749211349925706761067790808370765075450008284253571239696489935935053566461144738883161010851111679077097990732436701756985527194218092549531868890848622470137186563736328401324517482838466413031374630236137011585720945154073554670290847831565373475503741258489384028773988548652682478935707964970238955117949482840541572436848428721579739524322299623454936983662814547483400718276279308346848253879838472504570106968586516202950572541527287852414234879967747392915408989329348581710341757093094710913631142136741462492078081872395928826622342523315747139483873962190478398751777328141297794530179676308220833366881166966370160352431945328687129458140293472321/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "28052870687819789178396573746942554881945552217657432084634864074395589440468656236697540052712284541524031824211862034164560265703537066127970590931564509850315985626323347506810242717329863369746611861037020660989119250383041371050571010532356065357152905568552022376148940123930219891520143226253589408420900672815173496482569881827632815204222224070568991954864544636207549131231883796360430421207861560214076773241672626630634083/4006608835977473647299571030558030173799116810039786953171693612465848209443568599664054422252400750023225868773931711189284875874229534487947361868717007126780069080757830842241571271850494760695005752555974214631697998719485520320030065455700818193760348194659684561042764682974955861767304104402104161601556563759516793211688660155490175673178096210915179205756083399302683754754960204728644460337681690888000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "384836754948704936518390080286389004763190679571631416083335375425490380659422846922349219607884635917039474482556378074796393103615265478935526743142995785277965991920542575867329404082937294587671597128436387521101370842739834550650414154320702290281170117836140043954928114189095044806439229775952058740929618067139100165877377039970533655513737284898865861249271614750592100633440385821327668139841639581/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000", + "coordinate_movement_above_kappa": "2725291809432824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "384836254122600439334184167840010185009418954682030161109966228963788822428396666476274261601081854366945721579322781333332494443005781200243715749722762195652075144411907481138474123886528313275826510252717318024324541880489994614960374150562520327678895897792615711494357983843509672936956508862939008477909417872568630226278225578888014219241778137636839496851870895240167187797971041451302077059284097370788639/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000000000", + "bulk_exposure_above_kappa": "2725291809432824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "615738307091823401245218216011843587867333362425009010759967454219083050824050374629683793365812635917169406268856608178210330305174940487605031795608559666818854739564233026658871766336290690028429468529779150536985364386133895345350622643154941701847597968494299737867314852356966699820820046728510243722467188712852090325804651802870334412550020508576159013601433864090522448178035272944098677943189081119388639/801321767195494729459914206111606034759823362007957390634338722493169641888713719932810884450480150004645173754786342237856975174845906897589472373743401425356013816151566168448314254370098952139001150511194842926339599743897104064006013091140163638752069638931936912208552936594991172353460820880420832320311312751903358642337732031098035134635619242183035841151216679860536750950992040945728892067536338177600000000000000000000000", + "scalar_work_above_kappa": "3078693538763534994962914729844733218351753711683450073693313856942221487044356594932718798856274305786222042957217427856907246168312639552792402951723732692597837087855705512209779952467089375389527690151772030672034137779668836469513273230807436359647086722645596019178854783167174986582031117294603419664416744342542331387419864858681749807837939131928900525596772198494311892232053742200595754038175574437788639/4006608835977473647299571030558030173799116810039786953171693612465848209443568599664054422252400750023225868773931711189284875874229534487947361868717007126780069080757830842241571271850494760695005752555974214631697998719485520320030065455700818193760348194659684561042764682974955861767304104402104161601556563759516793211688660155490175673178096210915179205756083399302683754754960204728644460337681690888000000000000000000000000", + "dimension_above_kappa": "499173895502815794472389376128951164793500479031415635616728978013400389902889300467483577877872753169445986011143172018378864998277686263802972870025639588088018108048266929997769582939230730780453685013440517758709347288500697481097612660777232276430370629988241720150824532464270561234015101138832024606244659306012459589468535547702828206730115013606136254794226859986030391904901589159511543091230174460327668139841639581/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000" + }, + "controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the same cited unchanged PR543 bit supplier as PR635. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/BINDING.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/BINDING.json new file mode 100644 index 0000000000..b03160c67a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/BINDING.json @@ -0,0 +1,25 @@ +{ + "status": "PASS_FROZEN_048_ALLCOLD_DISPATCH_FRESH_PROVIDER_BINDING", + "source_plan_sha256": "8c4804859aee83082196348c33127070d2885d3a366ce9acc8dc5166202f4687", + "runtime_plan_sha256": "609adb126d7d3de2abdd9275f9015589c0b137d0d19821c2c3e7c1a8541c18d2", + "providers": { + "gauge44": { + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12", + "RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94" + }, + "canonical_content_sha256": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "all_phase_edges": 3019 + } + }, + "only_rebound_fields": [ + "provider_registry.directory", + "provider_registry.artifact_sha256", + "runtime_source_plan_sha256" + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/CENTER-COMPATIBILITY.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/CENTER-COMPATIBILITY.json new file mode 100644 index 0000000000..5a3ae37422 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/CENTER-COMPATIBILITY.json @@ -0,0 +1,112 @@ +{ + "status": "PASS_IDENTICAL_PORT_ORDER_AND_ORDERED_CENTER_FRAMES", + "new_canonical_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "comparison_canonical": "pr635/research/community-k492-audit/pr626/replay/mixed-global/base/split-centres/CANONICAL-WORD.json.gz", + "comparison_canonical_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "new_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "old_centers": [ + 229, + 224, + 227, + 225, + 243, + 241, + 259, + 257 + ], + "ordered_center_frames": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ], + "v": 112, + "h": 9, + "center_count": 8, + "scope": "Carrier register identity changes; native cut center channels retain exact ordered frames and ports. Full endpoint and exact center clearing are independently checked by local ledger replay." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/LOCAL-STAGES.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/LOCAL-STAGES.json new file mode 100644 index 0000000000..b2753eb57a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/LOCAL-STAGES.json @@ -0,0 +1,27 @@ +[ + { + "tag": "44-native", + "seconds": 4.460461161999774, + "exit": 0 + }, + { + "tag": "44-emitted-ledgers", + "seconds": 3.058037757999955, + "exit": 0 + }, + { + "tag": "44-local-replay", + "seconds": 28.33760359400003, + "exit": 0 + }, + { + "tag": "44-wrappers", + "seconds": 5.294312295000054, + "exit": 0 + }, + { + "tag": "44-phase", + "seconds": 198.39076561599995, + "exit": 0 + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/REPLAY.json new file mode 100644 index 0000000000..c6f4e0f983 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/REPLAY.json @@ -0,0 +1,54 @@ +{ + "status": "PASS_GAUGE44_STRICT_GLOBAL_REPLAY", + "kappa": "1649483702558979/1000000000000000000", + "kappa_decimal": "0.001649483702558979", + "complex_lower": "1652208994368411824947/1000000000000000000000000", + "bit_lower": "413456747036699736067/250000000000000000000000", + "gain_over_pr635_percent": "0.8093060205252829126484020359439672024956960385078942889840023844750830", + "spec_sha256": "fee57674a7f36b30b1e7eb96a8f567a90a522217bc644c1a6a1f8bff85196fbf", + "stages": [ + { + "name": "restore-parent", + "seconds": 2.152, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind", + "seconds": 0.686, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 5.456, + "exit_code": 0, + "log_sha256": "60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e" + }, + { + "name": "audit", + "seconds": 26.943, + "exit_code": 0, + "log_sha256": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662" + }, + { + "name": "invoice", + "seconds": 1.897, + "exit_code": 0, + "log_sha256": "5d10712d494304287749dd7a6c3369f9b707bba30e9f567b68230669dcf5418a" + }, + { + "name": "assembly", + "seconds": 0.724, + "exit_code": 0, + "log_sha256": "768d3215f1918117dc6c33b4cfeaf0b5f5da9ba5c77178db4bb1d08d000e226f" + }, + { + "name": "admission-controls", + "seconds": 0.816, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the same cited unchanged PR543 bit supplier as PR635. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/STAGES.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/STAGES.json new file mode 100644 index 0000000000..9464e2dfea --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/STAGES.json @@ -0,0 +1,44 @@ +[ + { + "name": "restore-parent", + "seconds": 2.152, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind", + "seconds": 0.686, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 5.456, + "exit_code": 0, + "log_sha256": "60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e" + }, + { + "name": "audit", + "seconds": 26.943, + "exit_code": 0, + "log_sha256": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662" + }, + { + "name": "invoice", + "seconds": 1.897, + "exit_code": 0, + "log_sha256": "5d10712d494304287749dd7a6c3369f9b707bba30e9f567b68230669dcf5418a" + }, + { + "name": "assembly", + "seconds": 0.724, + "exit_code": 0, + "log_sha256": "768d3215f1918117dc6c33b4cfeaf0b5f5da9ba5c77178db4bb1d08d000e226f" + }, + { + "name": "admission-controls", + "seconds": 0.816, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/ASYNC-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/ASYNC-AUDIT.json new file mode 100644 index 0000000000..05975382b5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/ASYNC-AUDIT.json @@ -0,0 +1,84 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "complex_template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "complex_live": 7168, + "complex_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "complex_hosted_residuals": 35424, + "physical": 7670, + "rank_mass": 520704, + "deficit": 2560, + "entering_helper_roles": 17856, + "cross_replica_helper_roles": 25937, + "one_owner_per_complete_invocation": true, + "helper_busy_family_window_checks": 35424, + "complete_invocations": 72, + "actual_orthogonal_73column_maps": 7870, + "actual_sigma_stream_sha256": "f4e9802acb2ed53fc1f0486e7d0f55a6faa30ed7f5d2ad48a06450234b00ba76", + "all_actual_residual_and_spectator_charts": true, + "idle_remainders": 2759, + "mutations_rejected": [ + "alias two whole owners", + "helper on active data family", + "owner in private namespace", + "wrong residual width", + "wrong spectator coordinate", + "omit idle remainder", + "understate physical reserve", + "gauge44: wrong provider at its invocation", + "gauge44: stale per-call local program hash", + "gauge44: stale serialized provider program", + "gauge44: unbound residual adapter hash", + "gauge44: wrong provider width registry", + "gauge44: wrong per-call residual width", + "gauge44: wrong sweep provider", + "gauge44: entering helper width silently restored to nine" + ], + "mutation_controls_run": true, + "provider_phase_semantic_sha256": { + "gauge44": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "LOCAL-PROGRAMS.json.gz": "39b230dba9e6b022c691cd0167f331c1b3fa6795d49256e3a2b859c68d4acfda", + "LOCAL-CHECKS.json": "bd53e0cca4488f365ca5b7c7174d8dfb35ced5e0229835f27334c11c3d839717", + "INDEPENDENT-LOCAL-REPLAY.json": "adb5c8ce0b5025dcd96f41b9fa0e26b9a176e067ab36a5bfadad00bc19522b38", + "CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "CLIFFORD-REVIEW.json": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152", + "RESIDUAL-ADAPTERS.json": "c233611dd4c08c389dfb6c7d1c84dd86a3efa560223fcd6549a2848692541cd9" + } + }, + "widths_by_provider": { + "gauge44": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + } + }, + "provider_counts": { + "gauge44": 72 + }, + "all_provider_program_phase_and_wrapper_bindings": true, + "scope": "Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/GLOBAL-PREFIX.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/GLOBAL-PREFIX.json new file mode 100644 index 0000000000..a557ebbe60 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/GLOBAL-PREFIX.json @@ -0,0 +1,13 @@ +{ + "status": "PASS_MIXED_ASYNC_GLOBAL_PREFIX", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "global_prefix_bits": 360, + "retained_payload_bits": 512, + "complete_invocation_cover_sweeps": 72, + "bridge_factor_two_sweeps": 72, + "local_scalar_coefficient_work_prefix_bits": 175, + "stream_input_sup_to_l2_bits": 37, + "primitive_arithmetic_margin_bits": 4, + "controller_audit_sha256": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662", + "proof": "Each selected normalized provider restores all arbitrary dirty helper columns and gives the same data shear endpoints. Actual whole-owner charts are right-translation bijections. Sum all 72 invocation and 72 bridge sweeps and take maximum local scalar/Horner prefix over all three providers and orientations. Idle children, phases, spectator endpoints and terminal translations are unitary. Retained all-size interfaces are conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/IDLE-REMAINDER-FRAMES.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/IDLE-REMAINDER-FRAMES.json new file mode 100644 index 0000000000..1c86a8a01d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/IDLE-REMAINDER-FRAMES.json @@ -0,0 +1,25 @@ +{ + "status": "PASS_LITERAL_IDLE_REMAINDER_FRAMES", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "uncompressed_frames_sha256": "38eba7dfe023d0b2a8aea1c5184e50bdfff5727b350c2de4d27800acbdd3708c", + "children": 2759, + "rank_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "source_data_phase_sha256": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "scope": "Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/OWNERS-AND-PROFILE.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/OWNERS-AND-PROFILE.json new file mode 100644 index 0000000000..bdb9441b7e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/OWNERS-AND-PROFILE.json @@ -0,0 +1,61 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "paid_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "live": 7168, + "physical": 7670, + "rank_mass": 520704, + "deficit": 2560, + "hosted_residuals": 35424, + "banked_residuals": 0, + "all_live_owners_per_call_distinct": true, + "owners_per_call": 716, + "actual_helper_owner_charts": 35424, + "actual_73column_sigmas": 7870, + "cross_replica_helper_roles": 25937, + "explicit_idle_remainder_children": 2759, + "source_idle_children_charged": 16128, + "source_artifacts": { + "work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "providers/gauge44/CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "providers/gauge44/LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "providers/gauge44/LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "providers/gauge44/RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "providers/gauge44/CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "providers/gauge44/CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12" + }, + "provider_phase_semantic_sha256": { + "gauge44": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "LOCAL-PROGRAMS.json.gz": "39b230dba9e6b022c691cd0167f331c1b3fa6795d49256e3a2b859c68d4acfda", + "LOCAL-CHECKS.json": "bd53e0cca4488f365ca5b7c7174d8dfb35ced5e0229835f27334c11c3d839717", + "INDEPENDENT-LOCAL-REPLAY.json": "adb5c8ce0b5025dcd96f41b9fa0e26b9a176e067ab36a5bfadad00bc19522b38", + "CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "CLIFFORD-REVIEW.json": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152", + "RESIDUAL-ADAPTERS.json": "c233611dd4c08c389dfb6c7d1c84dd86a3efa560223fcd6549a2848692541cd9" + } + }, + "controller_audit_sha256": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/PREFIX-AND-INVOICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/PREFIX-AND-INVOICE.json new file mode 100644 index 0000000000..6c96ec6706 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/audit/PREFIX-AND-INVOICE.json @@ -0,0 +1,1746 @@ +{ + "status": "PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "parent_template_sha256": "7db047a427a7979d69e163c78a1e32bd445628fb86723e131a3138361355a9c3", + "owner_audit_sha256": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "controller_audit_sha256": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662", + "providers": { + "gauge44": { + "local": { + "backward": { + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "prefix_l1": "600338326363508935771850050281004728884643/32", + "prefix_bits": 134, + "coefficient_work_primitive_count": 208744, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 248, + "post_wrappers": 248, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "prefix_l1": "2323449462751823289130723296176889733365478515961323543/64", + "prefix_bits": 175, + "coefficient_work_primitive_count": 208712, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 248, + "post_wrappers": 248, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 492, + "centres": 8, + "v": 112, + "h": 9, + "n": 716, + "entering_helpers": 204, + "entrance_rank": 380, + "terminal_codimension": 254, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 44, + "width_inventory": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 738816, + "local_primitive_bound": 19160702806276, + "compiler": 25934336, + "children": 3590, + "artifacts": { + "WRAPPER-CHECKS.json": "84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7", + "RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "SCALAR-FRAME-AUDIT.json": "cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb", + "FULL-WORD.json.gz": "0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e", + "CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12", + "LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c" + }, + "paid_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "program_hashes": { + "backward": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "forward": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "LOCAL-PROGRAMS.json.gz": "39b230dba9e6b022c691cd0167f331c1b3fa6795d49256e3a2b859c68d4acfda", + "LOCAL-CHECKS.json": "bd53e0cca4488f365ca5b7c7174d8dfb35ced5e0229835f27334c11c3d839717", + "INDEPENDENT-LOCAL-REPLAY.json": "adb5c8ce0b5025dcd96f41b9fa0e26b9a176e067ab36a5bfadad00bc19522b38", + "CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "CLIFFORD-REVIEW.json": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152", + "RESIDUAL-ADAPTERS.json": "c233611dd4c08c389dfb6c7d1c84dd86a3efa560223fcd6549a2848692541cd9" + } + } + }, + "provider_phase_semantic_sha256": { + "gauge44": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152" + }, + "provider_counts": { + "gauge44": 72 + }, + "selected_calls": [ + { + "stage": 0, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + } + ], + "selected_local_paid_profile": { + "1": 181008, + "2": 29088, + "3": 32256, + "4": 11520, + "5": 4032, + "8": 576 + }, + "selected_real_component_primitives": 30245280, + "selected_coefficient_work_primitive_count": 15028288, + "selected_scalar_macros": 2993040, + "global_prefix_bits": 360, + "charged_prefix_bits": 512, + "complete_invocation_sweeps": 72, + "bridge_sweeps": 72, + "row_prefix_extra": 1024, + "helpers": 492, + "centres": 8, + "live": 7168, + "physical": 7670, + "physical_stock_identity": { + "data_and_owner_families": 7168, + "local_helpers": 492, + "private_centres": 8, + "coefficient_work": 2 + }, + "local_adapters": 738816, + "local_primitive_bound": 19160702806276, + "wrapper_elementary_factors_charged": 5142528, + "factors_per_wrapper": 144, + "compiler": 25934336, + "unhosted_pervertex": 2486201168471768, + "hosted_rebased_pervertex": 2486201168171612, + "conservative_pervertex_used": 5364148158196336, + "retained_prior_overcharge": { + "sha256": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "previous_pervertex_allowance": 2877946989724568, + "added_complete_new_pervertex": 2486201168471768, + "policy": "Retain old allowance and add entire fresh mixed recount." + }, + "finite": { + "physical_stock_bits": 2641, + "router_bits": 7986, + "literal_bits": 35282, + "physical_row_coefficient": 16467, + "retained_row_coefficient": 20161, + "required_C0_bits": 200012, + "halving_integer_inequality": [ + 5329, + 4608 + ], + "G_exponent": 30000, + "E_exponent": 100000, + "C0_exponent": 210000 + }, + "strict_checks": { + "local_primitive_bound": true, + "logical": true, + "router": true, + "literal": true, + "mass": true, + "precision": true, + "tape": true, + "row": true, + "halving": true + }, + "scope": "Actual call-specific mixed scalar, Horner, wrappers and paid children recounted. All three providers use fresh hash-bound independent all-column/frame/phase/normalization admission. Shared compiler uses conservative maxima; parent is geometry/overcharge only. All-size compiler, hosting, precision/tape and analytic transfer remain conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/ACTUAL-SIGMAS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/ACTUAL-SIGMAS.json.gz new file mode 100644 index 0000000000..dbb57066e2 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/ACTUAL-SIGMAS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/GLOBAL-TEMPLATE.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/GLOBAL-TEMPLATE.json.gz new file mode 100644 index 0000000000..424c2df489 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/GLOBAL-TEMPLATE.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/HOSTED.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/HOSTED.json new file mode 100644 index 0000000000..498e849ab7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/HOSTED.json @@ -0,0 +1,60 @@ +{ + "status": "EMITTED_MIXED_PROVIDER_ASYNCHRONOUS_WHOLE_OWNER_COMPLEX_TEMPLATE", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "parent_template_sha256": "7db047a427a7979d69e163c78a1e32bd445628fb86723e131a3138361355a9c3", + "live": 7168, + "physical": 7670, + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "hosted_residuals": 35424, + "banks_per_stage": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "entering_helper_roles": 17856, + "unique_actual_73column_sigmas": 7870, + "sigma_stream_sha256": "f4e9802acb2ed53fc1f0486e7d0f55a6faa30ed7f5d2ad48a06450234b00ba76", + "cross_replica_helper_roles": 25937, + "asynchronous_order_sha256": "2acd6b2004be3d3ef6645f3c968feb22b5167c400bb49eb446821e5cb7af6eee", + "source_artifacts": { + "work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "providers/gauge44/CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "providers/gauge44/LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "providers/gauge44/LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "providers/gauge44/RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "providers/gauge44/CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "providers/gauge44/CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12" + }, + "provider_counts": { + "gauge44": 72 + }, + "scope": "Two actual verified plain/width-seven providers dispatched per complete invocation; independent controller/spectator/normalization and complete finite invoice admission required." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/IDLE-REMAINDER-FRAMES.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/IDLE-REMAINDER-FRAMES.json.gz new file mode 100644 index 0000000000..3562e60f05 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/global/IDLE-REMAINDER-FRAMES.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/layers/LOCAL-AUDIT-LAYERED.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/layers/LOCAL-AUDIT-LAYERED.json new file mode 100644 index 0000000000..0780787674 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/layers/LOCAL-AUDIT-LAYERED.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83", + "compressed_sha256": "3b268a3adb543e930454e9d9405e5f7a664c75c487f6c5cbe29c199f24a89789", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 480, + "entering": 192, + "lowends": 78, + "coldends": 48, + "compensation_gates": 7208, + "local_profile": { + "1": 2412, + "2": 418, + "3": 418, + "4": 170, + "5": 68, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + }, + "checked_columns": 704, + "elapsed_seconds": 0.8600000000005821, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/leaver/CELL-MUTANTS-LV.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/leaver/CELL-MUTANTS-LV.json new file mode 100644 index 0000000000..4d4ef7403c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/leaver/CELL-MUTANTS-LV.json @@ -0,0 +1,261 @@ +{ + "c01m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_233": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [233])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [172, 175])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [132, 135, 173, 174])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_233": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [233])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c01p": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_57": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [57, 58, 224, 225, 226])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [169, 170])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [129, 130, 168, 171])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_57": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [57, 58, 224, 225, 226])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c23m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_58": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [58])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [169, 170])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [173, 174, 196, 199])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_58": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [58])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c23p": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_239": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [60, 63, 231, 232, 238, 239])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [172, 175])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [168, 171, 193, 194])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_239": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [60, 63, 231, 232, 238, 239])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c45m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_441": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [52, 55, 439, 440, 446, 447])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [137, 138])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [141, 142, 164, 167])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_441": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [52, 55, 439, 440, 446, 447])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c45p": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_255": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [28, 31, 247, 248, 254, 255])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [140, 143])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [136, 139, 161, 162])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_255": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [28, 31, 247, 248, 254, 255])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c67m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_18": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [18])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [129, 130])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [133, 134, 161, 162])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_18": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [18])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/leaver/FRAME-CONTROLS-LV-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/leaver/FRAME-CONTROLS-LV-k8.json new file mode 100644 index 0000000000..9f56e21000 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/leaver/FRAME-CONTROLS-LV-k8.json @@ -0,0 +1,54 @@ +{ + "base": "c836d892", + "recipe": "FRAME-RECIPE-LV-k8.json", + "controls": { + "shrink_raised_B": { + "builder": "profile and width pins", + "stage": "native_atc", + "native": "PASS", + "rc": 0, + "reason": "}", + "frame": [ + "B", + 539 + ] + }, + "shrink_lowered_B": { + "builder": "('nonmonotone', 174)", + "stage": "apply", + "reason": "('nonmonotone', 174)" + }, + "shrink_T": { + "builder": "('nonmonotone', 554)", + "stage": "apply", + "reason": "('nonmonotone', 554)" + }, + "empty_B": { + "builder": "('nonmonotone', 169)", + "stage": "apply", + "reason": "('nonmonotone', 169)" + }, + "drop_one_lowering": { + "builder": "output word pin", + "stage": "native_atc", + "native": "PASS", + "rc": 0, + "reason": "}", + "frame": [ + "B", + 1232 + ] + }, + "drop_one_raise": { + "builder": "profile and width pins", + "stage": "native_atc", + "native": "PASS", + "rc": 0, + "reason": "}", + "frame": [ + "B", + 539 + ] + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CANONICAL-WORD.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CANONICAL-WORD.json.gz new file mode 100644 index 0000000000..5062a1f62f Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CANONICAL-WORD.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-RECIPES.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-RECIPES.json new file mode 100644 index 0000000000..3ba8326d3a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-RECIPES.json @@ -0,0 +1 @@ +{"children":[{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":2,"old":0,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":3,"old":0,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":4,"old":0,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":5,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":6,"old":0,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":7,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":8,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":9,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,3,3,3,2],"matrix_rows":[493,257,2,260,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[237,0,237,237,0,237,237,237,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":10,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":11,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,3,3,3,2],"matrix_rows":[499,257,258,4,8,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[243,243,0,0,243,243,243,243,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":12,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,2,0,0,0],"matrix_rows":[56,1,2,4,40,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":13,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":14,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,3,3,2],"matrix_rows":[478,1,258,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,222,222,222,222,0,222,222,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":18,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,1,0,2,3,3,2],"matrix_rows":[13,448,33,2,36,40,16,320,384],"offset":2,"phase":1,"quadratic_rows":[45,0,45,45,0,13,192,192,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,35,66,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":25,"old":0,"rank":2,"right":{"linear_Z4":[1,3,0,0,3,2,3,3,2],"matrix_rows":[13,478,33,258,292,296,272,320,384],"offset":2,"phase":1,"quadratic_rows":[45,222,243,243,222,13,222,222,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,1,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":26,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,2,0,2,0,0,0],"matrix_rows":[24,13,49,2,52,40,64,128,256],"offset":0,"phase":0,"quadratic_rows":[61,0,61,53,13,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":36,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":37,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":38,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,3,3,0,2],"matrix_rows":[381,257,2,260,264,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[125,0,125,125,125,125,125,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":39,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,3,3,2,0],"matrix_rows":[253,129,2,132,136,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[125,0,125,125,125,125,125,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":40,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":41,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":42,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":43,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,64,3,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":54,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,2,0,2,0,0,0],"matrix_rows":[264,13,289,2,292,40,16,64,128],"offset":0,"phase":0,"quadratic_rows":[301,0,301,293,0,13,0,0,13]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,64,3,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":55,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,2,0,2,0,0,0],"matrix_rows":[136,13,161,2,164,40,16,64,256],"offset":0,"phase":0,"quadratic_rows":[173,0,173,165,0,13,0,13,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":65,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":66,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":67,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":68,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,3,0,3,2],"matrix_rows":[445,257,2,260,264,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[189,0,189,189,189,189,0,189,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":69,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,2,0,0],"matrix_rows":[104,1,2,4,72,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":70,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,0,3,3,2],"matrix_rows":[475,257,258,4,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[219,219,0,219,219,0,219,219,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":71,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,3,3,3,3,2],"matrix_rows":[502,1,258,260,8,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,246,246,0,246,246,246,246,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":72,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,2,32,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":76,"old":0,"rank":2,"right":{"linear_Z4":[2,3,3,2,0,2,0,0,0],"matrix_rows":[43,5,33,42,12,16,64,128,256],"offset":3,"phase":2,"quadratic_rows":[14,3,13,5,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,64,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":83,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,2,0,2,0,0,0],"matrix_rows":[72,13,97,2,100,40,16,128,256],"offset":0,"phase":0,"quadratic_rows":[109,0,109,101,0,13,13,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":94,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":95,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,3,0,3,2],"matrix_rows":[439,257,258,260,8,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[183,183,183,0,183,183,0,183,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":96,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":97,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":98,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,3,3,2],"matrix_rows":[463,257,258,260,264,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[207,207,207,207,0,0,207,207,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":99,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":100,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,2,0,0],"matrix_rows":[98,1,66,4,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":101,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,3,3,3,3,2],"matrix_rows":[508,1,2,260,264,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,252,252,252,252,252,252,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,10,19,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":112,"old":0,"rank":2,"right":{"linear_Z4":[3,3,0,0,1,2,0,0,3],"matrix_rows":[476,463,289,290,260,264,48,320,384],"offset":2,"phase":1,"quadratic_rows":[239,239,275,275,508,19,275,275,476]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":123,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,3,3,0,2],"matrix_rows":[375,257,258,260,8,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[119,119,119,0,119,119,119,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":124,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":125,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,3,3,2,0],"matrix_rows":[247,129,130,132,8,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[119,119,119,0,119,119,119,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":126,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":127,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":128,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":129,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":130,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":152,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,3,3,3,2],"matrix_rows":[487,257,258,260,8,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[231,231,231,0,0,231,231,231,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":153,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,2,0,0],"matrix_rows":[84,1,2,68,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":154,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":155,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,3,3,3,3,2],"matrix_rows":[505,257,2,4,264,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[249,0,0,249,249,249,249,249,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":156,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":157,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":158,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":159,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,2,0,0,0],"matrix_rows":[50,1,34,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,17,33,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":170,"old":0,"rank":2,"right":{"linear_Z4":[0,2,1,1,2,0,0,0,0],"matrix_rows":[14,34,1,18,52,56,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,60,62,62,14,14,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,32,70,130,2,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":172,"old":0,"rank":3,"right":{"linear_Z4":[3,3,0,2,3,2,2,3,2],"matrix_rows":[385,24,106,257,98,4,72,48,384],"offset":7,"phase":3,"quadratic_rows":[129,10,0,50,56,24,0,129,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[15,23,35,65,133,6,2,263,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":173,"old":0,"rank":3,"right":{"linear_Z4":[3,3,2,3,0,0,0,3,2],"matrix_rows":[415,391,499,257,258,356,296,336,384],"offset":3,"phase":2,"quadratic_rows":[235,235,376,191,300,415,391,235,116]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[15,21,35,71,129,2,4,263,7],"offset":0,"phase":0,"quadratic_rows":[6,3,5,0,0,0,0,0,0]},"new":174,"old":0,"rank":3,"right":{"linear_Z4":[1,0,0,1,3,1,1,1,0],"matrix_rows":[415,493,491,257,290,324,264,368,384],"offset":1,"phase":1,"quadratic_rows":[153,340,306,153,255,116,114,153,6]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,70,128,4,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":175,"old":0,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,1,1,3,2],"matrix_rows":[385,106,108,257,66,36,104,16,384],"offset":7,"phase":3,"quadratic_rows":[129,42,76,102,0,106,108,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":181,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":182,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":183,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":184,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":185,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,3,0,2],"matrix_rows":[351,257,258,260,264,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[95,95,95,95,95,0,95,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":186,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":187,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,3,2,0],"matrix_rows":[223,129,130,132,136,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[95,95,95,95,95,0,95,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":188,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,18,33,66,129,256,5,2,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":201,"old":0,"rank":3,"right":{"linear_Z4":[2,3,1,3,1,0,2,2,0],"matrix_rows":[21,138,257,65,130,324,136,336,32],"offset":2,"phase":1,"quadratic_rows":[340,10,341,10,341,0,21,0,21]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,18,33,66,129,256,5,4,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":202,"old":0,"rank":3,"right":{"linear_Z4":[2,3,1,3,1,0,2,0,2],"matrix_rows":[21,266,129,65,258,196,264,208,32],"offset":2,"phase":1,"quadratic_rows":[212,10,213,10,213,0,21,21,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[11,23,32,71,128,256,3,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":203,"old":0,"rank":3,"right":{"linear_Z4":[0,3,0,3,0,0,2,1,2],"matrix_rows":[11,395,138,65,450,4,456,16,32],"offset":6,"phase":2,"quadratic_rows":[448,202,0,202,0,0,11,395,129]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":204,"old":0,"rank":3,"right":{"linear_Z4":[1,1,3,1,3,0,2,3,0],"matrix_rows":[11,384,148,65,66,388,72,400,32],"offset":4,"phase":1,"quadratic_rows":[75,75,276,75,276,0,11,384,148]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":210,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":211,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,3,0,3,2],"matrix_rows":[446,1,258,260,264,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,190,190,190,190,190,0,190,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":212,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":213,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":214,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,3,3,3,2],"matrix_rows":[491,257,258,4,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[235,235,0,235,0,235,235,235,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":215,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,2,0,0],"matrix_rows":[88,1,2,4,72,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":216,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":217,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,3,3,3,2],"matrix_rows":[501,257,2,260,8,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[245,0,245,0,245,245,245,245,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":221,"old":0,"rank":2,"right":{"linear_Z4":[0,1,1,1,2,3,0,3,2],"matrix_rows":[14,416,1,18,20,24,288,64,384],"offset":2,"phase":1,"quadratic_rows":[0,30,30,30,14,160,0,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,33,2,67,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":228,"old":0,"rank":2,"right":{"linear_Z4":[0,3,1,3,2,0,0,0,3],"matrix_rows":[491,485,257,274,20,280,288,320,384],"offset":1,"phase":1,"quadratic_rows":[270,251,501,251,14,270,270,270,485]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":239,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,3,3,0,2],"matrix_rows":[382,1,258,260,264,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,126,126,126,126,126,126,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":240,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":241,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,3,3,2,0],"matrix_rows":[254,1,130,132,136,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,126,126,126,126,126,126,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":242,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":243,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":244,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":245,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":246,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":250,"old":0,"rank":2,"right":{"linear_Z4":[0,1,1,1,2,3,3,2,0],"matrix_rows":[14,224,1,18,20,24,160,192,256],"offset":2,"phase":1,"quadratic_rows":[0,30,30,30,14,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":268,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,3,3,3,2],"matrix_rows":[494,1,258,260,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,238,238,238,0,238,238,238,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":269,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,2,0,0],"matrix_rows":[112,1,2,4,8,80,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":270,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":271,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,0,3,3,2],"matrix_rows":[477,257,2,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[221,0,221,221,221,0,221,221,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":272,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":273,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,3,0,3,2],"matrix_rows":[443,257,258,4,264,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[187,187,0,187,187,187,0,187,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":274,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":275,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,67,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":279,"old":0,"rank":2,"right":{"linear_Z4":[1,1,0,0,2,2,0,0,0],"matrix_rows":[80,19,97,98,4,8,48,128,256],"offset":0,"phase":0,"quadratic_rows":[115,115,0,0,99,19,19,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,32,2,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":286,"old":0,"rank":2,"right":{"linear_Z4":[3,3,2,0,1,1,0,0,0],"matrix_rows":[53,54,33,18,52,8,64,128,256],"offset":3,"phase":2,"quadratic_rows":[21,38,51,0,53,54,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":297,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":298,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":299,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":300,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":301,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,3,3,0,2],"matrix_rows":[379,257,258,4,264,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[123,123,0,123,123,123,123,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":302,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":303,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,3,3,2,0],"matrix_rows":[251,129,130,4,136,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[123,123,0,123,123,123,123,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":304,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,67,3,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":308,"old":0,"rank":2,"right":{"linear_Z4":[1,1,0,0,2,2,0,0,0],"matrix_rows":[272,19,289,290,4,8,48,64,128],"offset":0,"phase":0,"quadratic_rows":[307,307,0,0,291,19,0,0,19]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":326,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":327,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":328,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":329,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":330,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":331,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":332,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,3,0,2],"matrix_rows":[367,257,258,260,264,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[111,111,111,111,0,111,111,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":333,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,3,2,0],"matrix_rows":[239,129,130,132,136,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[111,111,111,111,0,111,111,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,34,64,3,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":337,"old":0,"rank":2,"right":{"linear_Z4":[1,0,2,1,0,2,0,0,0],"matrix_rows":[132,13,161,2,36,168,16,64,256],"offset":0,"phase":0,"quadratic_rows":[173,0,169,173,0,13,0,13,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":344,"old":0,"rank":2,"right":{"linear_Z4":[1,3,1,1,0,2,3,2,0],"matrix_rows":[13,194,33,130,36,40,16,192,256],"offset":2,"phase":1,"quadratic_rows":[45,66,45,45,0,13,66,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":345,"old":0,"rank":2,"right":{"linear_Z4":[1,3,1,1,0,2,3,0,2],"matrix_rows":[13,322,33,258,36,40,16,320,128],"offset":2,"phase":1,"quadratic_rows":[45,66,45,45,0,13,66,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,39,64,128,263,3,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":350,"old":0,"rank":3,"right":{"linear_Z4":[0,0,3,0,0,3,2,1,2],"matrix_rows":[38,422,164,1,66,452,8,16,480],"offset":6,"phase":2,"quadratic_rows":[0,448,228,0,0,228,38,422,130]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,128,258,2,5,1],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":351,"old":0,"rank":3,"right":{"linear_Z4":[3,1,1,3,0,1,2,3,0],"matrix_rows":[384,38,137,385,66,68,392,16,96],"offset":4,"phase":1,"quadratic_rows":[265,102,102,265,0,102,38,384,137]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,128,260,3,1,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":352,"old":0,"rank":3,"right":{"linear_Z4":[1,2,3,1,0,3,2,0,2],"matrix_rows":[130,11,292,193,66,260,200,16,288],"offset":4,"phase":1,"quadratic_rows":[203,201,36,203,0,36,11,11,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,128,260,3,4,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":353,"old":0,"rank":3,"right":{"linear_Z4":[1,2,3,1,0,3,2,2,0],"matrix_rows":[258,11,164,321,66,132,328,16,160],"offset":4,"phase":1,"quadratic_rows":[331,329,36,331,0,36,11,0,11]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":355,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":356,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,3,3,3,3,2],"matrix_rows":[506,1,258,4,264,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,250,0,250,250,250,250,250,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":357,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,0,3,3,2],"matrix_rows":[471,257,258,260,8,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[215,215,215,0,215,0,215,215,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":358,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,2,0,0],"matrix_rows":[100,1,2,68,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":359,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":360,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,2,0,0,0],"matrix_rows":[49,33,2,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":361,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":362,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,0,3,2],"matrix_rows":[431,257,258,260,264,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[175,175,175,175,0,175,0,175,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,18,33,67,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":366,"old":0,"rank":2,"right":{"linear_Z4":[3,0,3,1,0,2,0,0,3],"matrix_rows":[474,471,289,258,292,40,272,320,384],"offset":2,"phase":1,"quadratic_rows":[247,269,247,506,269,13,269,269,474]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,33,2,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":374,"old":0,"rank":2,"right":{"linear_Z4":[2,0,1,1,0,2,0,0,0],"matrix_rows":[13,17,33,2,52,56,64,128,256],"offset":0,"phase":0,"quadratic_rows":[60,0,61,61,13,13,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[12,18,37,64,132,1,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":379,"old":0,"rank":3,"right":{"linear_Z4":[1,3,2,0,1,0,2,3,2],"matrix_rows":[36,386,21,97,258,68,8,112,384],"offset":2,"phase":1,"quadratic_rows":[117,130,113,0,117,21,21,130,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[14,23,35,66,4,135,1,263,7],"offset":0,"phase":0,"quadratic_rows":[3,5,6,0,0,0,0,0,0]},"new":380,"old":0,"rank":3,"right":{"linear_Z4":[0,1,0,3,1,1,1,1,0],"matrix_rows":[502,431,499,321,258,276,344,288,384],"offset":2,"phase":1,"quadratic_rows":[284,170,329,255,89,170,92,170,5]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,70,6,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":381,"old":0,"rank":3,"right":{"linear_Z4":[0,3,3,2,2,3,2,3,2],"matrix_rows":[386,40,92,1,258,84,24,96,384],"offset":7,"phase":3,"quadratic_rows":[0,130,12,100,0,104,40,130,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,22,38,67,135,1,5,262,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":382,"old":0,"rank":3,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,1],"matrix_rows":[24,254,407,97,258,260,328,304,384],"offset":5,"phase":2,"quadratic_rows":[503,105,105,422,81,399,407,105,361]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":384,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":385,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,0,2],"matrix_rows":[289,257,2,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":386,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":387,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,3,0,2,0],"matrix_rows":[191,129,130,132,136,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":388,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":389,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,2,0],"matrix_rows":[161,129,2,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":390,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":391,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,3,0,0,2],"matrix_rows":[319,257,258,260,264,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,2,2,2,2,0],"matrix_rows":[1,264,4,10,16,2,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":413,"old":0,"rank":8,"right":{"linear_Z4":[2,1,2,3,2,0,2,2,2],"matrix_rows":[1,40,4,34,16,64,128,256,42],"offset":245,"phase":2,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,2,2,2,2,2,0],"matrix_rows":[258,3,1,4,8,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":414,"old":0,"rank":8,"right":{"linear_Z4":[1,3,0,2,2,2,2,2,2],"matrix_rows":[6,5,8,16,32,64,128,256,7],"offset":252,"phase":2,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,2,2,2,2,0],"matrix_rows":[264,2,4,9,1,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"new":415,"old":0,"rank":8,"right":{"linear_Z4":[1,2,2,3,0,2,2,2,2],"matrix_rows":[24,2,4,17,32,64,128,256,25],"offset":246,"phase":2,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,2,3,2,2,2,0],"matrix_rows":[1,2,272,8,20,4,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"new":416,"old":0,"rank":8,"right":{"linear_Z4":[2,2,1,2,3,0,2,2,2],"matrix_rows":[1,2,48,8,36,64,128,256,52],"offset":235,"phase":2,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,3,2,2,2,0],"matrix_rows":[1,272,4,8,18,32,2,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"new":417,"old":0,"rank":8,"right":{"linear_Z4":[2,1,2,2,3,2,0,2,2],"matrix_rows":[1,80,4,8,66,32,128,256,82],"offset":237,"phase":2,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,3,3,2,2,0],"matrix_rows":[318,3,5,9,17,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"new":418,"old":0,"rank":8,"right":{"linear_Z4":[1,3,3,3,3,3,0,2,2],"matrix_rows":[126,125,123,119,111,95,128,256,127],"offset":192,"phase":2,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,2,3,2,2,0],"matrix_rows":[288,2,4,8,16,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"new":419,"old":0,"rank":8,"right":{"linear_Z4":[1,2,2,2,2,3,0,2,2],"matrix_rows":[96,2,4,8,16,65,128,256,97],"offset":222,"phase":2,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,2,2,2,2,0],"matrix_rows":[1,2,264,12,16,32,4,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":420,"old":0,"rank":8,"right":{"linear_Z4":[2,2,1,3,2,2,0,2,2],"matrix_rows":[1,2,72,68,16,32,128,256,76],"offset":243,"phase":2,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":421,"old":0,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":422,"old":0,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":423,"old":0,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,2,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":288,"old":2,"rank":2,"right":{"linear_Z4":[0,1,3,2,0,0,0,2,3],"matrix_rows":[219,397,321,338,20,264,32,256,384],"offset":143,"phase":1,"quadratic_rows":[22,395,413,86,397,0,392,86,342]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,35,64,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":289,"old":2,"rank":2,"right":{"linear_Z4":[3,0,1,0,0,2,2,0,1],"matrix_rows":[398,171,353,258,100,264,80,256,384],"offset":2,"phase":1,"quadratic_rows":[459,37,494,37,64,398,21,37,293]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,33,3,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":290,"old":2,"rank":2,"right":{"linear_Z4":[1,3,0,1,2,0,2,1,0],"matrix_rows":[397,278,257,338,84,264,96,256,384],"offset":2,"phase":1,"quadratic_rows":[141,70,203,141,0,64,38,141,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,35,64,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":291,"old":2,"rank":2,"right":{"linear_Z4":[1,0,3,2,0,0,0,2,3],"matrix_rows":[398,235,353,322,36,264,16,256,384],"offset":143,"phase":1,"quadratic_rows":[395,37,430,101,0,398,392,101,357]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,129,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":317,"old":2,"rank":2,"right":{"linear_Z4":[1,1,0,3,3,3,2,0,3],"matrix_rows":[435,264,129,130,4,328,80,96,256],"offset":480,"phase":2,"quadratic_rows":[307,307,0,72,499,499,56,304,435]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,35,65,129,259,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":318,"old":2,"rank":2,"right":{"linear_Z4":[1,1,0,0,3,3,2,0,2],"matrix_rows":[315,136,257,258,4,328,464,480,256],"offset":480,"phase":2,"quadratic_rows":[59,59,0,243,251,251,56,56,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,35,64,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":319,"old":2,"rank":2,"right":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[136,264,193,194,4,328,16,32,256],"offset":300,"phase":2,"quadratic_rows":[192,192,0,192,0,0,11,11,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,65,129,257,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":320,"old":2,"rank":2,"right":{"linear_Z4":[3,3,0,3,1,1,2,0,3],"matrix_rows":[315,384,321,322,4,328,400,416,256],"offset":300,"phase":2,"quadratic_rows":[123,123,0,123,187,187,11,304,384]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,17,33,64,129,257,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":346,"old":2,"rank":2,"right":{"linear_Z4":[3,3,1,3,0,1,2,0,3],"matrix_rows":[303,384,321,322,388,328,16,416,256],"offset":300,"phase":2,"quadratic_rows":[111,111,175,111,0,175,11,292,384]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,16,32,64,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":347,"old":2,"rank":2,"right":{"linear_Z4":[2,0,0,2,0,0,2,0,2],"matrix_rows":[130,258,193,322,4,200,16,32,256],"offset":300,"phase":2,"quadratic_rows":[192,192,0,192,0,0,11,11,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,129,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":348,"old":2,"rank":2,"right":{"linear_Z4":[1,3,3,1,0,3,2,0,3],"matrix_rows":[429,258,129,322,68,136,16,96,256],"offset":408,"phase":2,"quadratic_rows":[301,66,493,301,0,493,38,292,429]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,17,33,64,129,259,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":349,"old":2,"rank":2,"right":{"linear_Z4":[1,0,3,1,0,3,2,0,2],"matrix_rows":[303,130,257,322,452,264,16,480,256],"offset":408,"phase":2,"quadratic_rows":[47,237,239,47,0,239,38,38,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,34,3,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":375,"old":2,"rank":2,"right":{"linear_Z4":[3,3,2,1,2,2,2,3,0],"matrix_rows":[391,348,257,258,84,280,96,256,384],"offset":209,"phase":0,"quadratic_rows":[135,135,139,76,0,64,40,135,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,16,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":376,"old":2,"rank":2,"right":{"linear_Z4":[1,2,0,0,3,0,0,2,3],"matrix_rows":[410,235,353,258,4,328,48,256,384],"offset":167,"phase":1,"quadratic_rows":[395,113,0,49,442,410,386,113,369]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,16,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":377,"old":2,"rank":2,"right":{"linear_Z4":[3,0,0,0,1,2,2,0,1],"matrix_rows":[410,171,353,258,68,264,112,256,384],"offset":2,"phase":1,"quadratic_rows":[459,49,64,49,506,410,21,49,305]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,35,2,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":378,"old":2,"rank":2,"right":{"linear_Z4":[1,3,1,2,1,0,1,3,1],"matrix_rows":[219,348,321,258,20,344,32,256,384],"offset":165,"phase":0,"quadratic_rows":[411,475,332,215,219,0,222,475,391]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,67,131,2,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":85,"old":3,"rank":2,"right":{"linear_Z4":[1,1,0,1,2,2,0,2,2],"matrix_rows":[187,184,321,330,12,64,272,288,384],"offset":0,"phase":0,"quadratic_rows":[507,499,8,269,259,259,3,259,187]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":86,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,2,0,3,2],"matrix_rows":[35,400,33,34,4,8,272,64,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,66,3,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":91,"old":3,"rank":2,"right":{"linear_Z4":[2,3,3,3,3,2,0,3,0],"matrix_rows":[291,413,33,290,260,264,272,64,384],"offset":3,"phase":2,"quadratic_rows":[158,3,157,157,157,0,0,157,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,66,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":92,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,3,3,0,0,3,2],"matrix_rows":[3,400,65,74,12,64,272,32,384],"offset":3,"phase":2,"quadratic_rows":[67,75,8,14,144,0,3,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,35,2,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":116,"old":3,"rank":2,"right":{"linear_Z4":[1,3,1,0,3,1,0,1,1],"matrix_rows":[189,282,257,18,260,280,288,64,384],"offset":2,"phase":1,"quadratic_rows":[445,266,445,183,189,445,0,445,423]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,33,64,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":117,"old":3,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,2,0,3,2],"matrix_rows":[41,388,33,2,260,40,16,64,384],"offset":3,"phase":2,"quadratic_rows":[9,0,132,9,0,0,0,132,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,1,64,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":118,"old":3,"rank":2,"right":{"linear_Z4":[0,3,3,3,2,0,0,3,2],"matrix_rows":[26,388,1,18,260,24,32,64,384],"offset":3,"phase":2,"quadratic_rows":[0,10,132,10,0,0,0,132,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,35,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":119,"old":3,"rank":2,"right":{"linear_Z4":[3,1,1,0,1,3,0,1,1],"matrix_rows":[297,190,33,258,260,296,272,64,384],"offset":1,"phase":1,"quadratic_rows":[265,446,446,183,446,190,0,446,407]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":205,"old":3,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[138,276,1,130,260,136,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,10,20,10,20,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,66,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":206,"old":3,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[266,148,1,258,132,264,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,10,20,10,20,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,3,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":232,"old":3,"rank":2,"right":{"linear_Z4":[3,2,3,3,2,3,0,3,0],"matrix_rows":[430,275,273,18,260,264,288,64,384],"offset":3,"phase":2,"quadratic_rows":[3,173,174,174,0,174,0,174,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,64,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":233,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,3,0,3,2],"matrix_rows":[3,416,73,66,12,64,16,288,384],"offset":3,"phase":2,"quadratic_rows":[75,67,8,13,0,160,3,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":234,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,0,2,3,0,3,2],"matrix_rows":[19,416,17,18,4,8,288,64,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,33,67,131,1,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":235,"old":3,"rank":2,"right":{"linear_Z4":[1,1,0,1,2,2,0,2,2],"matrix_rows":[184,187,329,322,12,64,272,288,384],"offset":0,"phase":0,"quadratic_rows":[499,507,8,270,259,259,3,259,187]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":321,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[131,304,129,130,4,8,272,288,64],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":322,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[259,176,257,258,4,8,144,160,64],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,131,3,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":87,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,1,1,0,0,1,2],"matrix_rows":[6,184,33,354,324,264,272,64,384],"offset":1,"phase":1,"quadratic_rows":[32,358,326,440,440,411,6,440,190]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,1,34,64,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":88,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,2,3,0,0,3,2],"matrix_rows":[14,400,1,10,12,272,32,64,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,2,35,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":89,"old":4,"rank":2,"right":{"linear_Z4":[0,1,3,0,0,0,0,0,1],"matrix_rows":[187,437,257,266,12,272,288,64,384],"offset":2,"phase":1,"quadratic_rows":[14,435,445,437,14,14,0,14,270]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,66,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":90,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,0,3,3,0,3,2],"matrix_rows":[6,400,33,98,68,8,272,64,384],"offset":3,"phase":2,"quadratic_rows":[32,102,70,0,144,35,6,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":145,"old":4,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,3,0,3,0],"matrix_rows":[384,162,1,386,4,8,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,290,0,0,0,290,0,384,162]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":146,"old":4,"rank":2,"right":{"linear_Z4":[3,0,0,0,3,0,0,3,0],"matrix_rows":[384,145,385,2,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[273,0,0,0,273,0,0,384,145]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":147,"old":4,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[145,290,129,258,4,8,144,288,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":148,"old":4,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[273,162,257,130,4,8,272,160,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,17,35,67,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":176,"old":4,"rank":2,"right":{"linear_Z4":[2,3,3,2,2,3,0,2,1],"matrix_rows":[415,409,257,322,356,296,272,64,384],"offset":3,"phase":2,"quadratic_rows":[262,223,255,294,262,44,6,262,409]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":177,"old":4,"rank":2,"right":{"linear_Z4":[3,3,3,0,0,3,0,3,2],"matrix_rows":[385,6,257,98,68,8,48,64,384],"offset":3,"phase":2,"quadratic_rows":[129,102,70,0,32,50,6,129,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":261,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,0,0,3,0],"matrix_rows":[384,134,1,386,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,262,262,0,0,0,0,384,134]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":262,"old":4,"rank":2,"right":{"linear_Z4":[0,0,0,3,3,0,0,3,0],"matrix_rows":[384,152,1,2,4,392,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,280,280,0,0,384,152]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":263,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[262,152,1,258,260,136,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":264,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[134,280,1,130,132,264,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,34,66,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":292,"old":4,"rank":2,"right":{"linear_Z4":[0,0,0,1,1,0,0,1,2],"matrix_rows":[6,190,33,322,356,264,272,64,384],"offset":1,"phase":1,"quadratic_rows":[32,504,472,446,446,411,6,446,190]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,1,64,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":293,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,3,2,0,0,3,2],"matrix_rows":[22,392,1,18,20,264,32,64,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":56,"old":5,"rank":2,"right":{"linear_Z4":[3,0,3,0,0,0,0,3,0],"matrix_rows":[384,133,385,2,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[261,0,261,0,0,0,0,384,133]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":57,"old":5,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,3,0,3,0],"matrix_rows":[384,168,1,2,4,392,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,296,0,296,0,384,168]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":62,"old":5,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[133,296,129,2,132,264,16,288,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":63,"old":5,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[261,168,257,2,260,136,16,160,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,65,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":114,"old":5,"rank":2,"right":{"linear_Z4":[0,0,3,3,3,3,0,3,2],"matrix_rows":[40,388,1,18,260,88,64,96,384],"offset":3,"phase":2,"quadratic_rows":[0,16,132,120,26,104,40,132,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,35,67,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":115,"old":5,"rank":2,"right":{"linear_Z4":[0,1,1,0,0,0,0,1,2],"matrix_rows":[24,190,33,258,260,360,336,64,384],"offset":1,"phase":1,"quadratic_rows":[32,446,446,454,486,407,24,446,190]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,131,2,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":120,"old":5,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,1,2],"matrix_rows":[189,40,257,18,260,344,64,352,384],"offset":2,"phase":1,"quadratic_rows":[445,16,445,453,423,469,40,445,189]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,65,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":121,"old":5,"rank":2,"right":{"linear_Z4":[0,0,3,3,3,3,0,3,2],"matrix_rows":[24,388,33,2,260,104,80,64,384],"offset":3,"phase":2,"quadratic_rows":[32,0,132,120,88,41,24,132,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,66,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":178,"old":5,"rank":2,"right":{"linear_Z4":[3,0,0,3,3,3,0,3,2],"matrix_rows":[385,24,257,2,36,104,80,64,384],"offset":3,"phase":2,"quadratic_rows":[129,0,32,120,88,44,24,129,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,19,33,65,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":179,"old":5,"rank":2,"right":{"linear_Z4":[2,2,2,3,3,3,0,2,1],"matrix_rows":[415,391,257,290,260,328,368,64,384],"offset":3,"phase":2,"quadratic_rows":[280,312,280,223,255,50,24,280,391]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":259,"old":5,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[134,280,1,130,132,264,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":260,"old":5,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[262,152,1,258,260,136,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":265,"old":5,"rank":2,"right":{"linear_Z4":[0,0,0,3,3,0,0,3,0],"matrix_rows":[384,152,1,2,4,392,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,280,280,0,0,384,152]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":266,"old":5,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,0,0,3,0],"matrix_rows":[384,134,1,386,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,262,262,0,0,0,0,384,134]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":323,"old":5,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,3,0],"matrix_rows":[384,131,385,386,4,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[259,259,0,0,0,0,0,384,131]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,66,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":324,"old":5,"rank":2,"right":{"linear_Z4":[0,0,0,0,3,3,0,3,0],"matrix_rows":[384,176,1,2,4,8,400,416,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,304,304,0,384,176]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":58,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[261,168,257,2,260,136,16,160,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":59,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[133,296,129,2,132,264,16,288,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":60,"old":6,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,3,0,3,0],"matrix_rows":[384,168,1,2,4,392,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,296,0,296,0,384,168]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":61,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,0,0,0,0,3,0],"matrix_rows":[384,133,385,2,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[261,0,261,0,0,0,0,384,133]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":143,"old":6,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[273,162,257,130,4,8,272,160,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":144,"old":6,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[145,290,129,258,4,8,144,288,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":149,"old":6,"rank":2,"right":{"linear_Z4":[3,0,0,0,3,0,0,3,0],"matrix_rows":[384,145,385,2,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[273,0,0,0,273,0,0,384,145]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":150,"old":6,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,3,0,3,0],"matrix_rows":[384,162,1,386,4,8,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,290,0,0,0,290,0,384,162]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":207,"old":6,"rank":2,"right":{"linear_Z4":[0,3,0,3,0,0,0,3,0],"matrix_rows":[384,138,1,386,4,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,266,0,266,0,0,0,384,138]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":208,"old":6,"rank":2,"right":{"linear_Z4":[0,0,3,0,3,0,0,3,0],"matrix_rows":[384,148,1,2,388,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,276,0,276,0,0,384,148]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,65,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":230,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,3,0,3,2],"matrix_rows":[5,416,81,18,68,8,64,288,384],"offset":3,"phase":2,"quadratic_rows":[85,16,69,0,19,160,5,160,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,1,35,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":231,"old":6,"rank":2,"right":{"linear_Z4":[1,0,3,0,0,0,0,0,1],"matrix_rows":[438,187,265,258,12,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[435,13,446,438,13,13,0,13,269]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,33,67,129,3,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":236,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,1,0,1,0,1,2],"matrix_rows":[184,5,337,18,324,264,64,288,384],"offset":2,"phase":1,"quadratic_rows":[341,16,325,440,427,440,5,440,189]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,1,32,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":237,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,2,0,3,0,3,2],"matrix_rows":[13,416,9,2,12,16,288,64,384],"offset":3,"phase":2,"quadratic_rows":[5,0,5,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":294,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,2,0,3,2],"matrix_rows":[37,392,33,2,36,264,16,64,384],"offset":3,"phase":2,"quadratic_rows":[5,0,5,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,33,66,129,2,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":295,"old":6,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,1,0,1,2],"matrix_rows":[189,5,321,18,340,264,64,288,384],"offset":2,"phase":1,"quadratic_rows":[504,16,488,445,427,445,5,445,189]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":15,"old":7,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":16,"old":7,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":17,"old":7,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":18,"old":8,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":19,"old":8,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":20,"old":8,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":18,"old":9,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,1,1,2],"matrix_rows":[461,289,2,292,296,16,256,320,384],"offset":0,"phase":0,"quadratic_rows":[237,0,237,237,0,13,205,205,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":21,"old":9,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":22,"old":9,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,1,1,2],"matrix_rows":[461,289,34,260,264,48,256,320,384],"offset":0,"phase":0,"quadratic_rows":[237,32,205,205,32,19,205,205,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":15,"old":10,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":23,"old":10,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":24,"old":10,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":19,"old":11,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,1,1,2],"matrix_rows":[467,289,290,4,8,304,256,320,384],"offset":0,"phase":0,"quadratic_rows":[243,243,0,0,243,19,211,211,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":21,"old":11,"rank":1,"right":{"linear_Z4":[1,1,0,0,2,1,1,1,2],"matrix_rows":[483,257,274,20,24,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[227,243,16,16,14,227,227,227,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":25,"old":11,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,1,1,2],"matrix_rows":[467,289,258,36,40,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[243,211,32,32,211,13,211,211,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":16,"old":12,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,0],"matrix_rows":[56,9,10,4,32,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[8,8,0,19,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":23,"old":12,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,2,0,0,0],"matrix_rows":[40,1,18,20,56,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":26,"old":12,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[56,17,2,20,40,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[16,0,16,24,13,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":17,"old":13,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":24,"old":13,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":26,"old":13,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":20,"old":14,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,1,1,2],"matrix_rows":[462,1,274,276,280,256,32,320,384],"offset":0,"phase":0,"quadratic_rows":[0,222,222,222,14,0,206,206,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":22,"old":14,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":25,"old":14,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":528,"old":15,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":529,"old":15,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[213,257,2,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[469,0,469,0,469,0,469,469,213]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[16,34,65,2,140,3,260,8,12],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":573,"old":15,"rank":4,"right":{"linear_Z4":[2,0,1,2,2,1,3,0,2],"matrix_rows":[12,34,464,144,5,8,40,272,448],"offset":93,"phase":1,"quadratic_rows":[4,40,37,34,64,46,80,0,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[17,46,65,128,6,256,10,2,1],"offset":0,"phase":0,"quadratic_rows":[0,2,12,12,0,0,0,0,0]},"new":575,"old":15,"rank":4,"right":{"linear_Z4":[3,1,3,0,3,0,3,0,2],"matrix_rows":[261,2,194,146,257,210,260,8,32],"offset":3,"phase":2,"quadratic_rows":[5,130,5,0,80,0,80,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":28,"old":16,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":34,"old":16,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[213,257,2,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[469,0,469,0,469,0,469,469,213]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":30,"old":17,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,1,1,2],"matrix_rows":[230,1,258,260,8,16,288,320,384],"offset":0,"phase":0,"quadratic_rows":[0,486,486,0,0,486,486,486,230]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":32,"old":17,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":466,"old":18,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":470,"old":18,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,3,1,2],"matrix_rows":[448,1,66,4,8,16,32,256,384],"offset":132,"phase":2,"quadratic_rows":[0,64,0,0,0,0,194,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":528,"old":18,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,41,10,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,8,37,11,0,5,0,0,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[16,33,67,1,136,2,264,4,12],"offset":0,"phase":0,"quadratic_rows":[2,3,12,4,0,0,0,0,0]},"new":572,"old":18,"rank":4,"right":{"linear_Z4":[2,1,0,3,3,3,0,2,3],"matrix_rows":[42,4,384,464,13,6,32,400,256],"offset":379,"phase":1,"quadratic_rows":[12,46,43,47,80,46,144,320,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":28,"old":19,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":33,"old":19,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,49,34,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[51,35,16,0,21,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":29,"old":20,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":32,"old":20,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,26,20,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,30,22,11,6,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":30,"old":21,"rank":1,"right":{"linear_Z4":[0,2,2,0,0,1,1,1,2],"matrix_rows":[232,9,10,4,256,272,288,320,384],"offset":60,"phase":0,"quadratic_rows":[8,8,0,483,0,488,488,488,232]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":31,"old":21,"rank":1,"right":{"linear_Z4":[3,2,1,3,0,1,3,3,2],"matrix_rows":[461,257,34,292,264,16,256,320,384],"offset":77,"phase":0,"quadratic_rows":[205,32,237,205,0,38,205,205,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":27,"old":22,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,1,1,2],"matrix_rows":[216,17,2,20,264,256,288,320,384],"offset":102,"phase":0,"quadratic_rows":[16,0,16,472,461,0,472,472,216]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":34,"old":22,"rank":1,"right":{"linear_Z4":[2,1,3,1,3,0,3,3,2],"matrix_rows":[470,9,266,260,256,272,32,320,384],"offset":23,"phase":0,"quadratic_rows":[8,222,214,11,214,0,214,214,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":29,"old":23,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":31,"old":23,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":27,"old":24,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":33,"old":24,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":441,"old":25,"rank":1,"right":{"linear_Z4":[2,3,1,2,3,0,3,3,2],"matrix_rows":[470,5,258,256,8,272,288,320,384],"offset":91,"phase":1,"quadratic_rows":[4,214,215,0,214,0,214,214,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":444,"old":25,"rank":1,"right":{"linear_Z4":[2,3,1,3,1,0,3,3,2],"matrix_rows":[462,17,258,276,264,256,32,320,384],"offset":43,"phase":0,"quadratic_rows":[16,206,222,206,21,0,206,206,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":529,"old":25,"rank":1,"right":{"linear_Z4":[2,0,2,0,1,0,1,1,2],"matrix_rows":[216,9,10,4,256,272,288,320,384],"offset":90,"phase":0,"quadratic_rows":[8,8,0,467,472,0,472,472,216]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[18,35,66,129,260,1,3,8,14],"offset":0,"phase":0,"quadratic_rows":[1,12,14,14,0,0,0,0,0]},"new":574,"old":25,"rank":4,"right":{"linear_Z4":[1,2,1,0,0,0,2,0,0],"matrix_rows":[10,271,48,384,105,66,100,32,288],"offset":0,"phase":0,"quadratic_rows":[359,325,367,324,256,261,15,256,191]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":438,"old":26,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":444,"old":26,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":466,"old":26,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":467,"old":26,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":27,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,3,3,0],"matrix_rows":[203,265,266,4,256,16,32,320,384],"offset":23,"phase":0,"quadratic_rows":[451,451,0,448,0,0,459,459,203]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,23,32,67,128,256,5,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":584,"old":27,"rank":3,"right":{"linear_Z4":[1,1,0,2,0,0,2,1,3],"matrix_rows":[203,11,323,257,258,204,256,16,32],"offset":1,"phase":1,"quadratic_rows":[131,131,200,260,0,0,260,135,328]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[11,19,34,68,130,2,257,1,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":592,"old":27,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,2,1,2,1],"matrix_rows":[323,39,8,161,162,32,256,48,192],"offset":70,"phase":1,"quadratic_rows":[452,452,3,256,0,0,451,67,331]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":28,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,49,34,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[51,35,16,0,21,3,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,64,129,1,262,2,4],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":586,"old":28,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,1,0,1],"matrix_rows":[3,448,388,33,50,452,8,32,256],"offset":291,"phase":0,"quadratic_rows":[35,51,68,0,2,3,324,256,448]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,67,1,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":594,"old":28,"rank":3,"right":{"linear_Z4":[2,0,2,0,1,2,1,1,2],"matrix_rows":[18,34,320,19,32,132,40,448,256],"offset":508,"phase":1,"quadratic_rows":[18,1,128,0,17,0,192,196,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":29,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,26,20,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,30,22,11,6,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,66,2,128,261,1,4],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":600,"old":29,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,0,1,0,1],"matrix_rows":[448,6,385,449,18,28,16,32,256],"offset":267,"phase":0,"quadratic_rows":[65,22,30,4,6,0,321,256,448]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,66,4,6,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":608,"old":29,"rank":3,"right":{"linear_Z4":[2,2,0,1,0,2,1,1,2],"matrix_rows":[320,60,20,129,14,32,48,448,256],"offset":475,"phase":3,"quadratic_rows":[128,12,2,10,0,0,192,193,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":30,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,3,3,0],"matrix_rows":[230,1,290,292,8,16,256,320,384],"offset":77,"phase":0,"quadratic_rows":[0,454,454,0,0,448,486,486,230]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,23,39,64,128,259,5,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":602,"old":30,"rank":3,"right":{"linear_Z4":[0,1,1,0,0,2,2,1,3],"matrix_rows":[230,38,326,225,258,260,8,16,256],"offset":1,"phase":1,"quadratic_rows":[224,134,134,0,0,257,257,135,352]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,19,35,65,1,132,258,2,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":610,"old":30,"rank":3,"right":{"linear_Z4":[2,0,0,0,2,0,1,2,1],"matrix_rows":[23,326,32,16,146,148,24,256,192],"offset":133,"phase":1,"quadratic_rows":[6,449,449,0,0,256,454,70,358]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":31,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,0,3,3,2],"matrix_rows":[454,9,266,260,256,272,32,320,384],"offset":61,"phase":1,"quadratic_rows":[8,206,198,11,0,0,198,198,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,23,35,71,131,3,261,1,4],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":616,"old":31,"rank":3,"right":{"linear_Z4":[0,3,2,3,0,0,0,3,3],"matrix_rows":[271,207,78,229,294,32,296,48,256],"offset":511,"phase":1,"quadratic_rows":[292,170,105,174,0,207,292,170,321]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,38,68,134,6,258,2,3],"offset":0,"phase":0,"quadratic_rows":[3,7,2,0,0,0,0,0,0]},"new":624,"old":31,"rank":3,"right":{"linear_Z4":[0,3,1,3,0,1,3,2,3],"matrix_rows":[1,356,42,256,166,32,168,48,192],"offset":15,"phase":2,"quadratic_rows":[256,142,486,138,0,356,484,78,357]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":32,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,64,1,132,262,2,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":618,"old":32,"rank":3,"right":{"linear_Z4":[1,2,1,0,2,3,1,0,1],"matrix_rows":[17,448,416,21,6,16,8,480,256],"offset":443,"phase":3,"quadratic_rows":[5,4,7,0,0,96,352,256,448]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,1,3,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":626,"old":32,"rank":3,"right":{"linear_Z4":[0,2,1,2,1,2,1,1,2],"matrix_rows":[17,12,320,8,6,24,160,448,256],"offset":502,"phase":3,"quadratic_rows":[24,4,22,17,29,128,192,224,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":33,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,33,68,129,1,262,2,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":632,"old":33,"rank":3,"right":{"linear_Z4":[2,2,2,3,0,2,1,0,1],"matrix_rows":[36,448,392,5,6,32,456,48,256],"offset":378,"phase":2,"quadratic_rows":[4,4,3,72,0,0,328,256,448]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,2,3,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":640,"old":33,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,1,1,1,2],"matrix_rows":[18,36,320,3,48,16,136,448,256],"offset":477,"phase":3,"quadratic_rows":[2,35,48,128,36,54,192,200,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":34,"rank":1,"right":{"linear_Z4":[1,1,0,0,3,0,3,3,2],"matrix_rows":[451,273,258,20,8,256,288,320,384],"offset":103,"phase":1,"quadratic_rows":[211,195,16,0,21,0,195,195,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,16,35,64,135,256,5,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":634,"old":34,"rank":3,"right":{"linear_Z4":[3,2,2,0,1,0,2,3,1],"matrix_rows":[17,209,405,453,198,256,8,272,32],"offset":58,"phase":0,"quadratic_rows":[145,196,402,0,85,0,402,199,324]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,19,36,67,130,3,257,1,5],"offset":0,"phase":0,"quadratic_rows":[7,1,5,0,0,0,0,0,0]},"new":642,"old":34,"rank":3,"right":{"linear_Z4":[3,1,0,0,3,1,3,2,3],"matrix_rows":[354,49,4,163,32,256,40,176,192],"offset":39,"phase":2,"quadratic_rows":[147,483,256,0,145,354,482,83,358]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,131,5,6,264,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":35,"rank":5,"right":{"linear_Z4":[2,2,0,0,0,0,0,0,1],"matrix_rows":[49,50,52,64,384,16,32,56,256],"offset":488,"phase":1,"quadratic_rows":[32,16,48,0,6,5,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,129,3,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":413,"old":35,"rank":4,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,1],"matrix_rows":[3,6,64,384,48,18,32,56,256],"offset":436,"phase":1,"quadratic_rows":[50,21,34,0,3,5,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,131,1,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":414,"old":35,"rank":4,"right":{"linear_Z4":[3,1,0,0,0,2,0,0,1],"matrix_rows":[6,5,64,384,39,48,16,56,256],"offset":437,"phase":2,"quadratic_rows":[35,19,48,0,6,5,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,129,2,3,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":415,"old":35,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,2,0,0,1],"matrix_rows":[3,5,64,384,33,48,16,56,256],"offset":436,"phase":1,"quadratic_rows":[38,49,17,0,6,3,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,131,1,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":416,"old":35,"rank":4,"right":{"linear_Z4":[0,0,2,0,2,2,0,0,1],"matrix_rows":[5,6,64,384,16,32,52,56,256],"offset":388,"phase":3,"quadratic_rows":[20,36,51,0,5,6,256,256,448]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":44,"old":36,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":45,"old":36,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,2,0],"matrix_rows":[144,1,2,4,72,208,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,80,64,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":46,"old":36,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,2,0],"matrix_rows":[144,65,2,68,8,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,64,0,80,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":47,"old":37,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":48,"old":37,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,2],"matrix_rows":[272,1,2,4,72,336,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,80,64,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":49,"old":37,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,2],"matrix_rows":[272,65,2,68,8,336,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,0,64,0,80,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":47,"old":38,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,2,1,0,2],"matrix_rows":[349,289,2,292,296,272,256,320,128],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,93,13,93,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":50,"old":38,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,0,2],"matrix_rows":[317,321,2,324,264,336,288,256,128],"offset":0,"phase":0,"quadratic_rows":[125,0,125,61,125,61,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":51,"old":38,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,0,2],"matrix_rows":[317,257,2,260,328,336,352,256,128],"offset":0,"phase":0,"quadratic_rows":[61,0,61,125,125,125,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":44,"old":39,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,2,1,2,0],"matrix_rows":[221,161,2,164,168,144,128,192,256],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,93,13,93,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":52,"old":39,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,2,0],"matrix_rows":[189,193,2,196,136,208,160,128,256],"offset":0,"phase":0,"quadratic_rows":[125,0,125,61,125,61,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":53,"old":39,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,2,0],"matrix_rows":[189,129,2,132,200,208,224,128,256],"offset":0,"phase":0,"quadratic_rows":[61,0,61,125,125,125,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":48,"old":40,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":50,"old":40,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":54,"old":40,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,2],"matrix_rows":[264,33,2,36,296,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":45,"old":41,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":52,"old":41,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":55,"old":41,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,2,0],"matrix_rows":[136,33,2,36,168,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":46,"old":42,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":53,"old":42,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":55,"old":42,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":49,"old":43,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":51,"old":43,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":54,"old":43,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":530,"old":44,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":531,"old":44,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[16,33,67,1,136,2,268,12,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":577,"old":44,"rank":4,"right":{"linear_Z4":[2,1,0,3,1,3,3,2,0],"matrix_rows":[42,4,320,400,13,6,32,464,128],"offset":115,"phase":1,"quadratic_rows":[12,46,43,47,80,46,80,0,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,1,34,66,132,256,8,12,2],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":579,"old":44,"rank":4,"right":{"linear_Z4":[0,2,3,3,0,0,0,1,2],"matrix_rows":[2,268,16,192,1,260,264,128,32],"offset":135,"phase":2,"quadratic_rows":[0,0,12,12,128,0,128,208,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":57,"old":45,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":63,"old":45,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":59,"old":46,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":61,"old":46,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":487,"old":47,"rank":1,"right":{"linear_Z4":[0,2,0,0,1,0,3,0,2],"matrix_rows":[336,1,66,4,8,272,32,256,128],"offset":132,"phase":2,"quadratic_rows":[0,64,0,0,80,0,82,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":490,"old":47,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":530,"old":47,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[16,34,67,1,136,2,268,4,12],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":576,"old":47,"rank":4,"right":{"linear_Z4":[2,1,0,1,1,1,3,0,2],"matrix_rows":[44,42,192,400,13,46,32,464,256],"offset":115,"phase":1,"quadratic_rows":[12,6,43,45,80,44,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":57,"old":48,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":62,"old":48,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":58,"old":49,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":61,"old":49,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":59,"old":50,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":60,"old":50,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":56,"old":51,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":63,"old":51,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":58,"old":52,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":60,"old":52,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":56,"old":53,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":62,"old":53,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":439,"old":54,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,1,2,0],"matrix_rows":[94,1,130,132,136,144,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,222,222,222,222,0,222,94,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":442,"old":54,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":531,"old":54,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[16,42,69,129,258,4,10,8,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":578,"old":54,"rank":4,"right":{"linear_Z4":[2,2,0,1,3,0,2,0,2],"matrix_rows":[300,210,36,130,13,66,256,288,208],"offset":155,"phase":1,"quadratic_rows":[12,16,1,9,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":440,"old":55,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":442,"old":55,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":488,"old":55,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,33,2,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":489,"old":55,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":64,"old":56,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,2,0,0,0],"matrix_rows":[24,33,2,36,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,0,32,120,88,13,24,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,32,64,132,6,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":684,"old":56,"rank":3,"right":{"linear_Z4":[0,1,0,2,3,2,2,0,2],"matrix_rows":[257,96,18,256,98,4,56,64,384],"offset":192,"phase":2,"quadratic_rows":[0,114,0,48,122,26,18,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,20,34,64,133,1,4,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":700,"old":56,"rank":3,"right":{"linear_Z4":[0,1,0,2,0,1,1,0,2],"matrix_rows":[112,260,98,1,114,256,56,64,384],"offset":213,"phase":1,"quadratic_rows":[0,18,0,48,106,120,112,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":64,"old":57,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,2,0,0,2],"matrix_rows":[24,33,2,36,296,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,0,32,312,280,13,0,0,24]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[10,23,6,32,65,130,3,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":685,"old":57,"rank":3,"right":{"linear_Z4":[1,1,1,0,3,3,1,0,0],"matrix_rows":[118,275,354,273,358,56,320,256,384],"offset":222,"phase":2,"quadratic_rows":[3,355,276,48,284,362,354,0,118]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[15,3,17,32,69,129,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":701,"old":57,"rank":3,"right":{"linear_Z4":[3,1,1,0,2,1,3,0,3],"matrix_rows":[277,113,355,115,276,56,320,256,384],"offset":213,"phase":3,"quadratic_rows":[117,274,5,48,363,121,113,0,274]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":58,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,2,0],"matrix_rows":[136,33,2,36,168,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,68,129,2,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":692,"old":58,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,3,0],"matrix_rows":[5,160,170,81,162,68,128,64,256],"offset":69,"phase":1,"quadratic_rows":[85,10,69,34,1,136,5,160,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,20,34,65,130,4,2,5,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":708,"old":58,"rank":3,"right":{"linear_Z4":[3,1,3,0,2,2,0,3,0],"matrix_rows":[8,5,170,65,10,84,128,64,256],"offset":87,"phase":1,"quadratic_rows":[69,162,85,32,4,138,5,162,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":59,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,2],"matrix_rows":[264,33,2,36,296,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,68,129,2,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":693,"old":59,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,0,3],"matrix_rows":[5,288,298,81,290,68,256,64,128],"offset":69,"phase":1,"quadratic_rows":[85,10,69,34,1,264,5,0,288]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,20,34,65,130,4,2,256,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":709,"old":59,"rank":3,"right":{"linear_Z4":[3,1,3,0,2,2,0,0,3],"matrix_rows":[8,5,298,65,10,84,256,64,128],"offset":87,"phase":1,"quadratic_rows":[69,290,85,32,4,266,5,0,290]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":64,"old":60,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,2,0,0,0],"matrix_rows":[13,289,2,292,296,16,256,64,384],"offset":1,"phase":1,"quadratic_rows":[301,0,301,301,0,13,0,0,13]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,35,68,1,128,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":716,"old":60,"rank":3,"right":{"linear_Z4":[2,1,0,0,3,0,3,0,2],"matrix_rows":[82,4,264,21,6,64,256,32,384],"offset":59,"phase":1,"quadratic_rows":[20,86,83,0,87,0,86,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,35,64,1,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":732,"old":60,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,0,1,0,2],"matrix_rows":[84,82,288,21,86,64,8,256,384],"offset":59,"phase":1,"quadratic_rows":[20,6,83,0,85,0,84,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":64,"old":61,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,39,71,129,2,6,263,7],"offset":0,"phase":0,"quadratic_rows":[3,5,2,0,0,0,0,0,0]},"new":717,"old":61,"rank":3,"right":{"linear_Z4":[0,2,2,1,1,1,0,0,1],"matrix_rows":[42,282,92,21,358,256,280,320,384],"offset":246,"phase":2,"quadratic_rows":[20,84,43,124,283,364,42,0,304]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,17,39,2,68,3,135,263,7],"offset":0,"phase":0,"quadratic_rows":[3,3,4,0,0,0,0,0,0]},"new":733,"old":61,"rank":3,"right":{"linear_Z4":[3,3,2,0,3,1,0,0,2],"matrix_rows":[10,44,17,293,46,256,304,320,384],"offset":235,"phase":2,"quadratic_rows":[309,38,35,0,305,55,0,0,17]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":62,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,2,0,0,2],"matrix_rows":[285,289,2,292,296,272,256,320,128],"offset":1,"phase":1,"quadratic_rows":[61,0,61,61,29,13,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,2,36,68,132,4,3,256],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":724,"old":62,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,3,0],"matrix_rows":[135,132,40,128,134,88,64,96,256],"offset":13,"phase":1,"quadratic_rows":[6,3,129,120,8,104,40,132,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,1,18,32,64,132,260,2,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":740,"old":62,"rank":3,"right":{"linear_Z4":[2,3,0,2,2,1,0,3,2],"matrix_rows":[129,135,288,131,128,8,48,256,320],"offset":484,"phase":1,"quadratic_rows":[132,6,3,0,32,48,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":63,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,2,0,2,0],"matrix_rows":[157,161,2,164,168,144,128,192,256],"offset":1,"phase":1,"quadratic_rows":[61,0,61,61,29,13,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,2,36,68,132,4,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":725,"old":63,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,0,3],"matrix_rows":[263,260,40,256,262,88,64,96,128],"offset":13,"phase":1,"quadratic_rows":[6,3,257,120,8,104,40,0,260]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,1,18,32,64,132,260,4,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":741,"old":63,"rank":3,"right":{"linear_Z4":[2,3,0,2,2,1,0,2,3],"matrix_rows":[257,263,160,259,256,8,48,128,192],"offset":484,"phase":1,"quadratic_rows":[260,6,3,0,32,48,0,0,257]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,2,4,72,144,13,21,261,5],"offset":0,"phase":0,"quadratic_rows":[24,0,24,13,21,0,0,0,0]},"new":1,"old":64,"rank":5,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[353,2,100,264,272,256,288,320,384],"offset":254,"phase":1,"quadratic_rows":[96,0,96,32,64,13,21,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,37,4,66,136,7,13,261,5],"offset":0,"phase":0,"quadratic_rows":[15,7,15,13,0,0,0,0,0]},"new":413,"old":64,"rank":4,"right":{"linear_Z4":[2,2,2,1,0,0,0,0,3],"matrix_rows":[107,264,366,272,256,266,288,320,384],"offset":254,"phase":3,"quadratic_rows":[362,13,362,47,64,13,21,0,261]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,3,33,68,136,5,9,257,1],"offset":0,"phase":0,"quadratic_rows":[15,3,5,9,0,0,0,0,0]},"new":414,"old":64,"rank":4,"right":{"linear_Z4":[1,3,0,0,0,1,1,0,2],"matrix_rows":[358,261,264,272,263,256,288,320,384],"offset":204,"phase":0,"quadratic_rows":[3,99,96,32,64,110,118,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,37,4,72,130,13,7,261,5],"offset":0,"phase":0,"quadratic_rows":[15,7,15,13,0,0,0,0,0]},"new":417,"old":64,"rank":4,"right":{"linear_Z4":[2,2,2,0,1,0,0,0,3],"matrix_rows":[115,272,374,264,256,274,288,320,384],"offset":254,"phase":3,"quadratic_rows":[370,21,370,32,87,13,21,0,261]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,3,37,73,129,12,4,261,5],"offset":0,"phase":0,"quadratic_rows":[15,7,15,13,0,0,0,0,0]},"new":418,"old":64,"rank":4,"right":{"linear_Z4":[2,0,0,2,3,2,2,0,3],"matrix_rows":[382,285,123,264,287,256,288,320,384],"offset":200,"phase":3,"quadratic_rows":[120,24,120,295,87,13,21,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":73,"old":65,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":74,"old":65,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":75,"old":65,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":76,"old":66,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":77,"old":66,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":78,"old":66,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":76,"old":67,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":79,"old":67,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":80,"old":67,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":73,"old":68,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,2,0,1,2],"matrix_rows":[413,289,2,292,296,272,256,64,384],"offset":0,"phase":0,"quadratic_rows":[189,0,189,189,157,13,0,157,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":81,"old":68,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":82,"old":68,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":77,"old":69,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[104,33,34,4,72,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,40,0,11,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":79,"old":69,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,0],"matrix_rows":[104,1,10,12,64,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,8,8,38,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":83,"old":69,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,2,0,0],"matrix_rows":[72,33,2,36,104,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":74,"old":70,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,2,1,2],"matrix_rows":[411,321,322,4,328,272,32,256,384],"offset":0,"phase":0,"quadratic_rows":[219,219,0,219,155,0,11,155,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":81,"old":70,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,2,1,2],"matrix_rows":[411,257,322,68,264,272,96,256,384],"offset":0,"phase":0,"quadratic_rows":[155,219,64,155,155,64,38,155,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":84,"old":70,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":75,"old":71,"rank":1,"right":{"linear_Z4":[0,1,1,0,1,1,2,1,2],"matrix_rows":[438,1,322,324,8,272,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,246,246,0,182,246,38,182,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":82,"old":71,"rank":1,"right":{"linear_Z4":[0,1,1,0,1,1,2,1,2],"matrix_rows":[438,65,322,260,72,272,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,246,182,64,182,182,11,182,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":84,"old":71,"rank":1,"right":{"linear_Z4":[0,1,1,0,1,2,1,1,2],"matrix_rows":[470,33,258,292,40,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,214,246,32,214,13,214,214,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":78,"old":72,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":80,"old":72,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":83,"old":72,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":532,"old":73,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,33,10,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,8,45,14,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":533,"old":73,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,0,0,0,0,0],"matrix_rows":[16,34,67,1,132,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[3,1,8,12,0,0,0,0,0]},"new":581,"old":73,"rank":4,"right":{"linear_Z4":[2,1,0,1,0,1,3,2,3],"matrix_rows":[44,42,464,384,13,46,32,256,448],"offset":247,"phase":1,"quadratic_rows":[12,6,43,45,192,44,80,272,384]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,1,34,66,132,256,2,8,12],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":583,"old":73,"rank":4,"right":{"linear_Z4":[0,2,3,3,0,0,2,0,1],"matrix_rows":[2,76,16,384,1,68,72,256,32],"offset":135,"phase":2,"quadratic_rows":[0,0,12,12,256,0,0,256,400]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":86,"old":74,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":92,"old":74,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,65,74,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[67,75,8,14,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":88,"old":75,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":90,"old":75,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,98,68,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,102,70,0,0,35,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":510,"old":76,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[213,257,2,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[469,0,469,0,469,0,469,469,213]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":513,"old":76,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[2,1,258,4,8,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,258,0,0,0,0,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":532,"old":76,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[16,34,65,3,136,2,268,12,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":580,"old":76,"rank":4,"right":{"linear_Z4":[2,0,1,1,3,2,2,2,0],"matrix_rows":[36,10,320,464,5,32,40,400,192],"offset":93,"phase":1,"quadratic_rows":[4,40,13,46,80,10,16,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":86,"old":77,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":91,"old":77,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":87,"old":78,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":90,"old":78,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":88,"old":79,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":89,"old":79,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":85,"old":80,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":92,"old":80,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":87,"old":81,"rank":1,"right":{"linear_Z4":[0,2,2,1,1,0,0,1,2],"matrix_rows":[184,33,34,4,264,272,256,320,384],"offset":204,"phase":0,"quadratic_rows":[32,32,0,440,440,411,0,440,184]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":89,"old":81,"rank":1,"right":{"linear_Z4":[3,2,1,1,3,3,0,3,2],"matrix_rows":[437,257,10,268,256,272,288,64,384],"offset":29,"phase":0,"quadratic_rows":[181,8,189,14,181,181,0,181,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":85,"old":82,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,1,0,1,2],"matrix_rows":[184,1,10,12,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[0,8,8,438,440,440,0,440,184]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":91,"old":82,"rank":1,"right":{"linear_Z4":[1,2,3,3,3,1,0,3,2],"matrix_rows":[413,289,34,260,264,272,256,64,384],"offset":71,"phase":0,"quadratic_rows":[189,32,157,157,157,35,0,157,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":438,"old":83,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":440,"old":83,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":533,"old":83,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[16,42,69,129,258,4,5,8,10],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":582,"old":83,"rank":4,"right":{"linear_Z4":[2,2,0,1,3,0,2,0,2],"matrix_rows":[108,402,36,130,13,258,64,96,400],"offset":155,"phase":1,"quadratic_rows":[12,16,1,9,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":439,"old":84,"rank":1,"right":{"linear_Z4":[1,3,2,3,3,0,3,3,2],"matrix_rows":[475,257,386,132,392,400,32,448,256],"offset":444,"phase":2,"quadratic_rows":[219,91,128,91,91,0,91,133,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":441,"old":84,"rank":1,"right":{"linear_Z4":[3,0,2,3,0,0,0,0,0],"matrix_rows":[9,37,2,32,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,1,41,0,9,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":510,"old":84,"rank":1,"right":{"linear_Z4":[2,0,2,0,1,0,1,1,2],"matrix_rows":[216,1,10,12,256,272,288,320,384],"offset":90,"phase":0,"quadratic_rows":[0,8,8,470,472,0,472,472,216]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":512,"old":84,"rank":1,"right":{"linear_Z4":[2,3,2,1,3,0,3,3,2],"matrix_rows":[474,1,258,12,256,272,288,320,384],"offset":91,"phase":1,"quadratic_rows":[0,218,8,222,218,0,218,218,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":85,"rank":1,"right":{"linear_Z4":[1,1,0,0,3,0,0,3,0],"matrix_rows":[179,289,290,4,8,272,256,64,384],"offset":71,"phase":0,"quadratic_rows":[403,403,0,0,435,400,0,435,179]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,32,64,131,6,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":686,"old":85,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,2,0,1,3],"matrix_rows":[19,179,288,273,274,180,8,256,64],"offset":2,"phase":1,"quadratic_rows":[432,432,176,0,263,263,0,135,307]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,23,33,65,130,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":710,"old":85,"rank":3,"right":{"linear_Z4":[3,3,2,0,0,0,2,0,2],"matrix_rows":[71,403,163,321,322,64,72,256,384],"offset":131,"phase":1,"quadratic_rows":[55,55,3,0,131,131,0,48,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":86,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,65,74,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[67,75,8,14,0,0,3,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":687,"old":86,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,0,0,2,3],"matrix_rows":[3,384,404,73,66,388,64,256,32],"offset":133,"phase":1,"quadratic_rows":[75,67,20,1,132,0,3,272,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,65,132,3,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":711,"old":86,"rank":3,"right":{"linear_Z4":[2,0,2,1,3,2,0,1,2],"matrix_rows":[106,66,400,11,32,20,96,256,384],"offset":233,"phase":1,"quadratic_rows":[10,1,16,9,148,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":87,"rank":1,"right":{"linear_Z4":[0,1,1,0,3,0,0,3,0],"matrix_rows":[158,1,266,268,256,272,32,64,384],"offset":29,"phase":0,"quadratic_rows":[0,406,406,400,414,0,0,414,158]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,4,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":694,"old":87,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,0,2],"matrix_rows":[71,398,150,64,322,324,256,96,384],"offset":67,"phase":1,"quadratic_rows":[6,31,31,134,134,0,0,24,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,69,3,128,256,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":702,"old":87,"rank":3,"right":{"linear_Z4":[0,0,0,2,2,0,0,1,3],"matrix_rows":[158,278,8,153,18,20,256,32,64],"offset":1,"phase":1,"quadratic_rows":[152,408,408,263,263,0,0,135,286]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":88,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,98,68,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,102,70,0,0,35,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,70,129,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":695,"old":88,"rank":3,"right":{"linear_Z4":[2,2,0,0,3,1,2,1,2],"matrix_rows":[400,36,68,17,38,64,72,256,384],"offset":248,"phase":3,"quadratic_rows":[16,36,2,0,145,34,0,144,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,64,132,258,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":703,"old":88,"rank":3,"right":{"linear_Z4":[3,3,3,0,0,2,0,2,3],"matrix_rows":[384,6,401,385,66,100,8,256,64],"offset":134,"phase":1,"quadratic_rows":[17,70,102,0,129,4,6,272,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":89,"rank":1,"right":{"linear_Z4":[0,1,1,0,3,3,0,3,2],"matrix_rows":[406,33,290,260,8,272,256,320,384],"offset":205,"phase":1,"quadratic_rows":[32,182,150,0,150,35,0,150,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,34,66,4,135,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":726,"old":89,"rank":3,"right":{"linear_Z4":[0,3,2,0,0,3,2,0,2],"matrix_rows":[423,98,182,256,326,64,72,352,384],"offset":11,"phase":1,"quadratic_rows":[166,55,19,0,166,51,0,17,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,39,71,135,259,4,1,2],"offset":0,"phase":0,"quadratic_rows":[4,4,7,0,0,0,0,0,0]},"new":734,"old":89,"rank":3,"right":{"linear_Z4":[0,0,2,0,3,1,2,3,1],"matrix_rows":[212,340,308,165,38,320,328,368,256],"offset":420,"phase":2,"quadratic_rows":[164,36,371,0,468,487,180,241,308]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":90,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,132,1,3,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":727,"old":90,"rank":3,"right":{"linear_Z4":[0,2,1,2,3,2,1,1,2],"matrix_rows":[65,36,400,32,6,96,24,256,384],"offset":242,"phase":1,"quadratic_rows":[96,4,70,16,152,65,101,144,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,68,132,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":735,"old":90,"rank":3,"right":{"linear_Z4":[1,2,1,3,0,0,2,2,3],"matrix_rows":[65,384,408,69,6,64,392,256,32],"offset":189,"phase":0,"quadratic_rows":[5,4,7,24,136,0,0,272,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":91,"rank":1,"right":{"linear_Z4":[1,1,0,3,3,0,0,3,2],"matrix_rows":[403,257,266,12,256,272,32,320,384],"offset":151,"phase":1,"quadratic_rows":[147,155,8,14,147,0,0,147,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,39,65,1,128,256,3,5],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":718,"old":91,"rank":3,"right":{"linear_Z4":[2,3,3,1,1,0,0,2,3],"matrix_rows":[10,388,4,149,134,256,24,32,64],"offset":62,"phase":1,"quadratic_rows":[148,142,151,26,157,0,0,279,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,17,34,70,4,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":742,"old":91,"rank":3,"right":{"linear_Z4":[2,1,0,2,0,0,0,3,2],"matrix_rows":[194,463,155,323,64,320,328,96,384],"offset":0,"phase":0,"quadratic_rows":[22,151,139,20,139,0,0,150,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":92,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,65,130,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":719,"old":92,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,3,2,2,3],"matrix_rows":[68,432,384,5,6,64,72,256,416],"offset":186,"phase":3,"quadratic_rows":[4,4,3,0,160,48,0,272,384]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,3,68,4,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":743,"old":92,"rank":3,"right":{"linear_Z4":[2,1,0,1,1,2,2,0,0],"matrix_rows":[66,12,16,3,72,64,48,128,256],"offset":25,"phase":3,"quadratic_rows":[2,11,72,78,48,16,12,0,0]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,134,264,3,5,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":93,"rank":5,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,1],"matrix_rows":[33,34,36,16,384,64,96,104,256],"offset":431,"phase":1,"quadratic_rows":[96,64,32,0,256,5,3,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,130,260,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":413,"old":93,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,2,0,1],"matrix_rows":[3,6,16,384,32,66,96,104,256],"offset":484,"phase":1,"quadratic_rows":[34,69,98,0,256,5,6,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,130,260,3,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":414,"old":93,"rank":4,"right":{"linear_Z4":[1,1,2,0,0,2,2,0,1],"matrix_rows":[6,5,16,384,103,32,64,104,256],"offset":389,"phase":0,"quadratic_rows":[99,67,32,0,256,5,3,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,131,260,1,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":419,"old":93,"rank":4,"right":{"linear_Z4":[2,0,0,0,0,2,2,0,1],"matrix_rows":[3,5,16,384,97,32,64,104,256],"offset":388,"phase":3,"quadratic_rows":[102,33,65,0,256,3,5,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,130,260,3,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":420,"old":93,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,2,0,0,1],"matrix_rows":[5,6,16,384,64,96,36,104,256],"offset":484,"phase":1,"quadratic_rows":[68,100,35,0,256,6,3,256,400]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":102,"old":94,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":103,"old":94,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":104,"old":94,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":105,"old":95,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,2,0,1,2],"matrix_rows":[407,289,290,260,8,304,256,64,384],"offset":0,"phase":0,"quadratic_rows":[183,183,151,0,183,19,0,151,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":106,"old":95,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":107,"old":95,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":105,"old":96,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":108,"old":96,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":109,"old":96,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":102,"old":97,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":110,"old":97,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":111,"old":97,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,2,0,0],"matrix_rows":[98,1,66,4,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":106,"old":98,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,2,1,2],"matrix_rows":[399,257,258,260,328,80,96,256,384],"offset":0,"phase":0,"quadratic_rows":[143,143,143,207,64,64,56,143,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":108,"old":98,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,2,1,2],"matrix_rows":[399,321,322,260,328,16,32,256,384],"offset":0,"phase":0,"quadratic_rows":[207,207,143,207,0,0,11,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":112,"old":98,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":103,"old":99,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":110,"old":99,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[81,65,18,4,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[17,16,0,16,11,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":113,"old":99,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":104,"old":100,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[98,33,66,4,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,32,0,11,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":111,"old":100,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":113,"old":100,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,2,0,0],"matrix_rows":[66,33,98,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":107,"old":101,"rank":1,"right":{"linear_Z4":[0,0,1,1,1,1,2,1,2],"matrix_rows":[444,65,66,260,328,272,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,64,188,252,188,188,11,188,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":109,"old":101,"rank":1,"right":{"linear_Z4":[0,0,1,1,1,1,2,1,2],"matrix_rows":[444,1,2,260,328,336,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,0,188,252,252,252,56,188,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":112,"old":101,"rank":1,"right":{"linear_Z4":[0,0,1,1,1,2,1,1,2],"matrix_rows":[476,33,34,260,264,304,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,32,220,220,252,19,220,220,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":535,"old":102,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":537,"old":102,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,3,3,2],"matrix_rows":[463,257,258,260,264,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[207,207,207,207,0,0,207,207,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":587,"old":102,"rank":2,"right":{"linear_Z4":[0,0,3,0,0,0,3,3,0],"matrix_rows":[384,196,1,2,388,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,324,0,0,0,324,384,196]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,35,78,131,259,3,5,9,1],"offset":0,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]},"new":591,"old":102,"rank":4,"right":{"linear_Z4":[2,2,1,1,0,1,1,1,0],"matrix_rows":[491,455,428,364,33,34,492,32,48],"offset":204,"phase":0,"quadratic_rows":[12,12,239,239,0,236,236,236,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":115,"old":103,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":121,"old":103,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":117,"old":104,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":119,"old":104,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":535,"old":105,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":536,"old":105,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,33,72,3,130,2,12,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,8,12,0,0,0,0,0]},"new":586,"old":105,"rank":4,"right":{"linear_Z4":[3,3,1,1,0,0,3,0,2],"matrix_rows":[27,24,192,388,41,58,452,32,256],"offset":3,"phase":2,"quadratic_rows":[51,35,68,24,9,3,324,256,192]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,33,66,4,129,256,1,8,10],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":589,"old":105,"rank":4,"right":{"linear_Z4":[0,3,0,2,3,0,2,0,1],"matrix_rows":[82,4,8,384,1,66,256,80,32],"offset":71,"phase":2,"quadratic_rows":[0,18,256,0,18,0,0,256,388]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":115,"old":106,"rank":1,"right":{"linear_Z4":[0,1,1,2,2,0,0,1,2],"matrix_rows":[166,33,258,260,40,16,256,320,384],"offset":240,"phase":0,"quadratic_rows":[32,422,422,32,0,399,0,422,166]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":120,"old":106,"rank":1,"right":{"linear_Z4":[1,0,1,2,0,2,0,1,2],"matrix_rows":[149,257,18,260,24,256,32,320,384],"offset":240,"phase":0,"quadratic_rows":[405,16,405,16,399,0,0,405,149]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":116,"old":107,"rank":1,"right":{"linear_Z4":[3,1,3,2,1,3,0,3,2],"matrix_rows":[423,257,274,260,24,256,288,64,384],"offset":53,"phase":0,"quadratic_rows":[167,183,167,16,26,167,0,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":119,"old":107,"rank":1,"right":{"linear_Z4":[1,3,3,2,3,1,0,3,2],"matrix_rows":[407,289,258,260,40,272,256,64,384],"offset":83,"phase":0,"quadratic_rows":[183,151,151,32,151,41,0,151,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":117,"old":108,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":118,"old":108,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":114,"old":109,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[40,1,18,4,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,16,0,120,26,104,40,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":121,"old":109,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,33,2,4,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,0,0,120,88,41,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":116,"old":110,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":118,"old":110,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":114,"old":111,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":120,"old":111,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":534,"old":112,"rank":1,"right":{"linear_Z4":[1,3,3,3,2,0,1,3,2],"matrix_rows":[399,321,258,260,264,80,32,256,384],"offset":163,"phase":0,"quadratic_rows":[207,143,143,143,64,0,81,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":537,"old":112,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,35,67,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":585,"old":112,"rank":2,"right":{"linear_Z4":[2,0,0,0,2,0,1,0,3],"matrix_rows":[286,158,193,322,324,328,400,32,256],"offset":319,"phase":1,"quadratic_rows":[192,192,192,192,0,0,207,335,384]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,18,34,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":590,"old":112,"rank":2,"right":{"linear_Z4":[0,0,0,1,3,0,1,1,2],"matrix_rows":[3,479,289,306,256,264,32,320,384],"offset":1,"phase":1,"quadratic_rows":[252,236,219,223,221,3,223,223,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":534,"old":113,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":536,"old":113,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,34,74,12,133,261,5,4,7],"offset":0,"phase":0,"quadratic_rows":[3,15,14,14,0,0,0,0,0]},"new":584,"old":113,"rank":4,"right":{"linear_Z4":[3,3,2,2,0,0,0,3,3],"matrix_rows":[336,207,472,468,337,322,476,64,96],"offset":436,"phase":1,"quadratic_rows":[415,399,195,195,385,0,12,415,403]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":588,"old":113,"rank":2,"right":{"linear_Z4":[2,2,0,3,1,0,2,3,2],"matrix_rows":[80,392,1,18,4,264,64,96,384],"offset":207,"phase":2,"quadratic_rows":[0,16,0,136,18,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":114,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[98,33,66,4,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,32,0,11,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,64,130,4,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":668,"old":114,"rank":3,"right":{"linear_Z4":[2,2,3,2,0,1,3,1,2],"matrix_rows":[388,66,96,5,64,256,40,80,384],"offset":248,"phase":3,"quadratic_rows":[4,0,133,32,0,104,96,132,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,18,36,64,128,258,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":700,"old":114,"rank":3,"right":{"linear_Z4":[3,1,0,2,0,1,2,2,3],"matrix_rows":[384,66,389,385,98,256,40,16,64],"offset":374,"phase":0,"quadratic_rows":[5,34,129,32,0,42,0,260,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":115,"rank":1,"right":{"linear_Z4":[3,0,1,0,2,0,0,1,2],"matrix_rows":[149,257,18,260,24,256,32,320,384],"offset":162,"phase":1,"quadratic_rows":[405,16,405,16,399,0,0,405,149]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,39,71,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":669,"old":115,"rank":3,"right":{"linear_Z4":[2,0,0,3,3,0,2,0,2],"matrix_rows":[89,410,156,64,256,328,336,96,384],"offset":19,"phase":1,"quadratic_rows":[24,152,152,31,31,0,0,6,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,64,133,256,5,1,7],"offset":0,"phase":0,"quadratic_rows":[4,6,3,0,0,0,0,0,0]},"new":701,"old":115,"rank":3,"right":{"linear_Z4":[0,2,0,0,2,0,1,1,3],"matrix_rows":[210,66,272,147,320,20,24,64,32],"offset":1,"phase":1,"quadratic_rows":[146,321,16,16,269,0,450,193,338]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":116,"rank":1,"right":{"linear_Z4":[1,0,3,1,0,0,0,3,0],"matrix_rows":[173,289,2,260,296,16,256,64,384],"offset":83,"phase":0,"quadratic_rows":[397,0,429,397,0,388,0,429,173]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,16,35,67,128,6,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":676,"old":116,"rank":3,"right":{"linear_Z4":[2,2,1,0,0,1,0,0,1],"matrix_rows":[169,9,288,261,166,256,424,16,64],"offset":57,"phase":0,"quadratic_rows":[420,164,167,256,0,167,0,295,393]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,22,34,65,129,4,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":710,"old":116,"rank":3,"right":{"linear_Z4":[2,2,0,1,0,0,0,3,2],"matrix_rows":[200,463,171,321,330,320,64,80,384],"offset":0,"phase":0,"quadratic_rows":[36,44,139,174,0,139,0,172,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":117,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,130,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":677,"old":117,"rank":3,"right":{"linear_Z4":[3,2,0,3,3,0,0,2,3],"matrix_rows":[9,404,384,67,64,256,72,400,32],"offset":35,"phase":1,"quadratic_rows":[75,1,144,73,20,0,9,260,384]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,36,65,4,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":711,"old":117,"rank":3,"right":{"linear_Z4":[2,0,1,3,2,1,3,0,0],"matrix_rows":[106,34,4,11,96,20,32,128,256],"offset":27,"phase":0,"quadratic_rows":[10,33,20,73,4,34,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":118,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,129,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":720,"old":118,"rank":3,"right":{"linear_Z4":[2,1,0,2,0,3,2,2,3],"matrix_rows":[66,420,384,3,64,256,8,80,416],"offset":234,"phase":3,"quadratic_rows":[2,3,160,0,0,36,0,260,384]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,19,36,1,66,4,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":748,"old":118,"rank":3,"right":{"linear_Z4":[2,0,1,3,0,2,1,0,0],"matrix_rows":[74,66,4,11,64,36,80,128,256],"offset":27,"phase":0,"quadratic_rows":[10,65,36,73,0,4,74,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":119,"rank":1,"right":{"linear_Z4":[0,1,3,1,0,0,0,3,0],"matrix_rows":[158,1,274,260,280,256,32,64,384],"offset":53,"phase":0,"quadratic_rows":[0,398,414,398,388,0,0,414,158]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,67,5,128,256,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":721,"old":119,"rank":3,"right":{"linear_Z4":[2,2,1,0,1,0,0,0,1],"matrix_rows":[10,154,272,149,262,256,408,32,64],"offset":58,"phase":0,"quadratic_rows":[148,404,151,256,151,0,0,279,394]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,22,34,65,4,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":749,"old":119,"rank":3,"right":{"linear_Z4":[2,2,0,1,0,0,0,3,2],"matrix_rows":[200,463,155,329,322,320,64,96,384],"offset":0,"phase":0,"quadratic_rows":[28,20,139,157,139,0,0,156,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":120,"rank":1,"right":{"linear_Z4":[0,3,1,0,0,2,0,1,2],"matrix_rows":[166,33,258,260,40,16,256,320,384],"offset":196,"phase":1,"quadratic_rows":[32,422,422,32,0,399,0,422,166]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,39,66,135,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":730,"old":120,"rank":3,"right":{"linear_Z4":[0,2,0,3,0,3,2,0,2],"matrix_rows":[425,106,172,256,64,328,80,352,384],"offset":11,"phase":1,"quadratic_rows":[168,40,168,47,0,47,0,5,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,35,64,131,261,6,1,4],"offset":0,"phase":0,"quadratic_rows":[6,7,3,0,0,0,0,0,0]},"new":756,"old":120,"rank":3,"right":{"linear_Z4":[0,2,2,0,0,0,0,3,0],"matrix_rows":[198,294,96,163,320,356,40,336,256],"offset":422,"phase":3,"quadratic_rows":[162,1,128,32,0,393,384,229,96]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":121,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[81,65,18,4,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[17,16,0,16,11,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,132,1,5,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":731,"old":121,"rank":3,"right":{"linear_Z4":[0,2,3,2,1,2,1,1,2],"matrix_rows":[65,388,48,32,6,256,24,96,384],"offset":244,"phase":1,"quadratic_rows":[96,4,134,16,88,65,113,132,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,36,64,129,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":757,"old":121,"rank":3,"right":{"linear_Z4":[1,3,0,2,1,0,2,2,3],"matrix_rows":[65,384,390,81,386,256,24,64,32],"offset":237,"phase":0,"quadratic_rows":[17,6,130,16,25,0,0,260,384]}},{"left":{"linear_Z4":[2,2,3,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,10,9,11,16,20],"offset":0,"phase":0,"quadratic_rows":[2,1,20,8,20,0,0,0,0]},"new":1,"old":122,"rank":5,"right":{"linear_Z4":[0,0,0,2,1,1,0,0,1],"matrix_rows":[49,50,4,8,384,80,96,256,112],"offset":239,"phase":1,"quadratic_rows":[96,80,256,112,58,57,11,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,68,130,2,259,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":413,"old":122,"rank":4,"right":{"linear_Z4":[2,1,0,2,2,0,2,0,1],"matrix_rows":[11,8,4,384,80,90,256,16,96],"offset":86,"phase":0,"quadratic_rows":[90,83,256,65,3,0,11,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,34,68,129,259,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":415,"old":122,"rank":4,"right":{"linear_Z4":[1,2,0,2,0,2,2,0,1],"matrix_rows":[8,11,4,384,105,96,256,32,80],"offset":101,"phase":0,"quadratic_rows":[99,105,256,66,0,3,11,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,66,132,4,261,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":417,"old":122,"rank":4,"right":{"linear_Z4":[2,1,0,2,2,0,2,0,1],"matrix_rows":[3,4,8,384,80,82,256,16,96],"offset":86,"phase":0,"quadratic_rows":[82,83,256,16,11,0,3,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,66,132,261,4,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":419,"old":122,"rank":4,"right":{"linear_Z4":[1,2,0,2,0,2,2,0,1],"matrix_rows":[3,4,8,384,97,96,256,32,80],"offset":102,"phase":0,"quadratic_rows":[99,97,256,32,0,11,3,256,388]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":131,"old":123,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,2,1,0,2],"matrix_rows":[343,289,290,260,8,304,256,320,128],"offset":0,"phase":0,"quadratic_rows":[119,119,87,0,119,19,87,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":132,"old":123,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,0,2],"matrix_rows":[311,321,258,324,8,336,288,256,128],"offset":0,"phase":0,"quadratic_rows":[119,55,119,0,119,55,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":133,"old":123,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,0,2],"matrix_rows":[311,257,322,324,8,272,352,256,128],"offset":0,"phase":0,"quadratic_rows":[55,119,119,0,55,119,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":134,"old":124,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":135,"old":124,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,65,2,196,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":136,"old":124,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,1,66,196,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,64,68,0,0,64,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":134,"old":125,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,2,1,2,0],"matrix_rows":[215,161,162,132,8,176,128,192,256],"offset":0,"phase":0,"quadratic_rows":[119,119,87,0,119,19,87,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":137,"old":125,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,2,0],"matrix_rows":[183,129,194,196,8,144,224,128,256],"offset":0,"phase":0,"quadratic_rows":[55,119,119,0,55,119,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":138,"old":125,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,2,0],"matrix_rows":[183,193,130,196,8,208,160,128,256],"offset":0,"phase":0,"quadratic_rows":[119,55,119,0,119,55,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":131,"old":126,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":139,"old":126,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,2],"matrix_rows":[260,1,66,324,8,16,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,64,68,0,0,64,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":140,"old":126,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,2],"matrix_rows":[260,65,2,324,8,80,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":135,"old":127,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":137,"old":127,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":141,"old":127,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":132,"old":128,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":139,"old":128,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":142,"old":128,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,2],"matrix_rows":[258,33,290,4,8,48,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":133,"old":129,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":140,"old":129,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":142,"old":129,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":136,"old":130,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":138,"old":130,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":141,"old":130,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,2,0],"matrix_rows":[130,33,162,4,8,48,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":539,"old":131,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":541,"old":131,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":595,"old":131,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,0,1,2,0],"matrix_rows":[3,64,33,50,4,24,32,192,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,192,64,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,33,66,4,129,256,8,1,10],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":599,"old":131,"rank":4,"right":{"linear_Z4":[0,3,0,2,3,0,0,2,1],"matrix_rows":[146,4,8,320,1,130,256,144,32],"offset":71,"phase":2,"quadratic_rows":[0,18,256,0,18,0,256,0,324]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":144,"old":132,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":150,"old":132,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":146,"old":133,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":148,"old":133,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":539,"old":134,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":540,"old":134,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[16,35,68,8,1,2,128,256,4],"offset":0,"phase":0,"quadratic_rows":[3,3,4,0,0,0,0,0,0]},"new":594,"old":134,"rank":4,"right":{"linear_Z4":[2,0,1,2,3,3,0,0,2],"matrix_rows":[50,2,4,8,19,32,260,64,128],"offset":59,"phase":1,"quadratic_rows":[18,1,260,0,49,48,0,0,4]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,33,66,4,129,256,8,10,1],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":597,"old":134,"rank":4,"right":{"linear_Z4":[0,3,0,2,3,0,0,1,2],"matrix_rows":[274,4,8,192,1,258,128,272,32],"offset":71,"phase":2,"quadratic_rows":[0,18,128,0,18,0,128,196,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":144,"old":135,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":149,"old":135,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":145,"old":136,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":148,"old":136,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":146,"old":137,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":147,"old":137,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":143,"old":138,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":150,"old":138,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":145,"old":139,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":147,"old":139,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":143,"old":140,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":149,"old":140,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":538,"old":141,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":541,"old":141,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,19,35,65,128,1,256,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":593,"old":141,"rank":2,"right":{"linear_Z4":[3,2,2,2,3,0,2,0,2],"matrix_rows":[30,335,321,258,260,264,80,32,128],"offset":3,"phase":2,"quadratic_rows":[15,81,81,81,94,0,30,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,129,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":598,"old":141,"rank":2,"right":{"linear_Z4":[2,2,0,3,1,0,3,2,2],"matrix_rows":[144,328,1,18,4,264,128,160,320],"offset":207,"phase":2,"quadratic_rows":[0,16,0,72,18,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":538,"old":142,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":540,"old":142,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[18,34,4,8,65,129,259,3,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":592,"old":142,"rank":4,"right":{"linear_Z4":[1,1,2,2,0,0,2,2,0],"matrix_rows":[336,83,4,8,401,386,256,288,192],"offset":12,"phase":2,"quadratic_rows":[451,467,0,0,386,0,387,83,83]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,129,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":596,"old":142,"rank":2,"right":{"linear_Z4":[2,2,0,3,1,0,3,2,2],"matrix_rows":[272,200,1,18,4,136,256,288,192],"offset":207,"phase":2,"quadratic_rows":[0,16,0,72,18,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":143,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,2,0],"matrix_rows":[130,33,162,4,8,48,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,4,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":670,"old":143,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,3,0],"matrix_rows":[17,170,160,69,128,64,168,80,256],"offset":19,"phase":1,"quadratic_rows":[85,40,1,10,81,130,17,160,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,32,1,66,132,258,4,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":708,"old":143,"rank":3,"right":{"linear_Z4":[2,2,2,3,1,0,0,3,2],"matrix_rows":[130,272,170,1,138,20,256,128,320],"offset":362,"phase":1,"quadratic_rows":[0,160,16,40,20,10,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":144,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,2],"matrix_rows":[258,33,290,4,8,48,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,4,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":671,"old":144,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,0,3],"matrix_rows":[17,298,288,69,256,64,296,80,128],"offset":19,"phase":1,"quadratic_rows":[85,40,1,10,81,258,17,0,288]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,32,1,66,132,258,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":709,"old":144,"rank":3,"right":{"linear_Z4":[2,2,2,3,1,0,0,2,3],"matrix_rows":[258,144,298,1,266,20,128,256,192],"offset":362,"phase":1,"quadratic_rows":[0,288,16,40,20,10,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":145,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,2,0,0,2],"matrix_rows":[6,33,290,260,8,48,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,294,262,0,32,19,0,0,6]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[14,16,35,71,4,134,5,262,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":678,"old":145,"rank":3,"right":{"linear_Z4":[2,0,3,3,2,0,2,0,1],"matrix_rows":[124,25,269,261,38,320,376,256,384],"offset":236,"phase":1,"quadratic_rows":[16,36,278,24,269,2,0,0,276]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,20,36,1,7,67,131,259,3],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":702,"old":145,"rank":3,"right":{"linear_Z4":[0,3,3,1,1,2,0,0,2],"matrix_rows":[56,9,15,57,306,276,256,320,384],"offset":243,"phase":2,"quadratic_rows":[62,319,287,15,55,19,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":146,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[6,33,98,68,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,102,70,0,32,19,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,70,128,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":679,"old":146,"rank":3,"right":{"linear_Z4":[0,2,0,2,0,2,2,0,2],"matrix_rows":[257,12,108,256,38,64,104,16,384],"offset":48,"phase":2,"quadratic_rows":[0,36,2,0,0,2,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,3,68,130,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":703,"old":146,"rank":3,"right":{"linear_Z4":[0,3,3,1,0,0,0,0,2],"matrix_rows":[46,40,272,1,74,108,256,64,384],"offset":3,"phase":2,"quadratic_rows":[0,102,70,40,0,10,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":147,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,2,0,0,2],"matrix_rows":[279,289,290,260,8,304,256,320,128],"offset":1,"phase":1,"quadratic_rows":[55,55,23,0,55,19,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,65,4,130,2,5,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":728,"old":147,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,3,0],"matrix_rows":[153,34,144,128,70,64,152,96,256],"offset":11,"phase":1,"quadratic_rows":[24,102,2,9,129,98,34,144,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,1,68,130,258,4,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":750,"old":147,"rank":3,"right":{"linear_Z4":[2,2,2,3,0,1,0,3,2],"matrix_rows":[129,288,153,137,2,36,128,256,320],"offset":434,"phase":1,"quadratic_rows":[144,0,32,24,9,36,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":148,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,2,0,2,0],"matrix_rows":[151,161,162,132,8,176,128,192,256],"offset":1,"phase":1,"quadratic_rows":[55,55,23,0,55,19,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,65,4,130,2,256,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":729,"old":148,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,0,3],"matrix_rows":[281,34,272,256,70,64,280,96,128],"offset":11,"phase":1,"quadratic_rows":[24,102,2,9,257,98,34,0,272]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,1,68,130,258,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":751,"old":148,"rank":3,"right":{"linear_Z4":[2,2,2,3,0,1,0,2,3],"matrix_rows":[257,160,281,265,2,36,256,128,192],"offset":434,"phase":1,"quadratic_rows":[272,0,32,24,9,36,0,0,257]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":149,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,35,71,133,4,6,261,5],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":722,"old":149,"rank":3,"right":{"linear_Z4":[0,2,3,3,0,2,2,0,1],"matrix_rows":[42,124,270,21,262,320,376,256,384],"offset":244,"phase":1,"quadratic_rows":[20,32,293,40,1,270,0,0,292]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,21,36,2,67,7,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":758,"old":149,"rank":3,"right":{"linear_Z4":[3,0,3,1,2,1,0,0,2],"matrix_rows":[10,56,15,305,58,292,256,320,384],"offset":235,"phase":2,"quadratic_rows":[319,61,303,15,35,55,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":150,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,2,0,0,0],"matrix_rows":[19,289,290,4,8,304,256,64,384],"offset":1,"phase":1,"quadratic_rows":[307,307,0,0,307,19,0,0,19]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,37,69,1,128,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":723,"old":150,"rank":3,"right":{"linear_Z4":[2,0,0,2,2,0,2,0,2],"matrix_rows":[12,258,92,21,256,64,88,32,384],"offset":40,"phase":2,"quadratic_rows":[20,0,1,0,1,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,3,66,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":759,"old":150,"rank":3,"right":{"linear_Z4":[3,0,3,1,0,0,0,0,2],"matrix_rows":[29,24,288,73,2,92,64,256,384],"offset":3,"phase":2,"quadratic_rows":[85,0,69,24,9,0,5,0,0]}},{"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,16,19,21,273,17],"offset":0,"phase":0,"quadratic_rows":[6,19,21,0,6,0,0,0,0]},"new":1,"old":151,"rank":5,"right":{"linear_Z4":[2,0,0,2,2,0,0,0,0],"matrix_rows":[353,258,260,8,112,256,288,320,384],"offset":254,"phase":1,"quadratic_rows":[96,32,64,0,96,19,21,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,43,68,2,8,137,13,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":413,"old":151,"rank":4,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,1],"matrix_rows":[331,258,260,90,256,266,320,288,384],"offset":85,"phase":0,"quadratic_rows":[74,283,64,19,74,0,21,0,258]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,34,68,9,129,3,5,257,1],"offset":0,"phase":0,"quadratic_rows":[15,3,5,9,0,0,0,0,0]},"new":415,"old":151,"rank":4,"right":{"linear_Z4":[1,0,0,3,0,1,1,0,2],"matrix_rows":[376,258,260,273,281,288,320,256,384],"offset":102,"phase":0,"quadratic_rows":[9,32,64,105,96,122,124,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,35,69,9,129,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[15,3,5,9,0,0,0,0,0]},"new":418,"old":151,"rank":4,"right":{"linear_Z4":[1,1,1,3,0,1,1,0,2],"matrix_rows":[382,258,260,279,287,288,320,256,384],"offset":102,"phase":0,"quadratic_rows":[9,342,310,105,102,124,122,0,6]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,77,4,8,11,137,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":420,"old":151,"rank":4,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,1],"matrix_rows":[301,258,260,60,256,288,268,320,384],"offset":51,"phase":0,"quadratic_rows":[44,32,285,21,44,19,0,0,260]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":160,"old":152,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":161,"old":152,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,1,2,1,2],"matrix_rows":[423,257,258,260,72,80,352,256,384],"offset":0,"phase":0,"quadratic_rows":[167,167,167,64,64,231,56,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":162,"old":152,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,1,2,1,2],"matrix_rows":[423,257,322,324,8,16,352,256,384],"offset":0,"phase":0,"quadratic_rows":[167,231,231,0,0,231,38,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":163,"old":153,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,2,0,0],"matrix_rows":[68,1,18,84,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":164,"old":153,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":165,"old":153,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,2,0,0,0],"matrix_rows":[50,1,34,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":163,"old":154,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":166,"old":154,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":167,"old":154,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,2,0,0,0],"matrix_rows":[50,1,34,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":160,"old":155,"rank":1,"right":{"linear_Z4":[1,0,0,1,2,1,1,1,2],"matrix_rows":[489,257,18,20,280,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[233,16,16,249,14,233,233,233,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":168,"old":155,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,1,2,1,2],"matrix_rows":[441,257,66,68,264,272,352,256,384],"offset":0,"phase":0,"quadratic_rows":[185,64,64,185,185,249,38,185,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":169,"old":155,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,1,2,1,2],"matrix_rows":[441,257,2,4,328,336,352,256,384],"offset":0,"phase":0,"quadratic_rows":[185,0,0,249,249,249,56,185,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":164,"old":156,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,2,0,0],"matrix_rows":[84,1,2,68,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":166,"old":156,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":170,"old":156,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":161,"old":157,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":168,"old":157,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":171,"old":157,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,0,1,2],"matrix_rows":[399,257,274,276,280,256,32,64,384],"offset":0,"phase":0,"quadratic_rows":[143,159,159,159,14,0,0,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":162,"old":158,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":169,"old":158,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":171,"old":158,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":165,"old":159,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,2,0,0],"matrix_rows":[84,1,2,68,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":167,"old":159,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":170,"old":159,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,2,0,0,0],"matrix_rows":[34,1,50,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":543,"old":160,"rank":1,"right":{"linear_Z4":[3,1,3,2,0,3,1,3,2],"matrix_rows":[423,257,322,260,72,16,288,256,384],"offset":149,"phase":0,"quadratic_rows":[167,231,167,64,0,167,74,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":545,"old":160,"rank":1,"right":{"linear_Z4":[3,3,1,2,0,1,3,3,2],"matrix_rows":[455,257,258,292,40,16,256,320,384],"offset":89,"phase":0,"quadratic_rows":[199,199,231,32,0,44,199,199,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,35,64,131,259,2,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":603,"old":160,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,0,1,0,3],"matrix_rows":[173,301,321,194,324,392,16,352,256],"offset":415,"phase":1,"quadratic_rows":[192,192,192,0,0,192,231,359,384]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[19,33,65,130,2,259,4,8,15],"offset":0,"phase":0,"quadratic_rows":[14,13,15,15,0,0,0,0,0]},"new":607,"old":160,"rank":4,"right":{"linear_Z4":[0,3,3,2,0,2,0,0,1],"matrix_rows":[271,265,320,384,289,306,316,16,256],"offset":368,"phase":2,"quadratic_rows":[294,63,55,290,6,15,256,256,457]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":173,"old":161,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,2,36,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,32,120,88,44,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":179,"old":161,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,34,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,32,0,88,120,50,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":175,"old":162,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,66,100,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,70,102,32,0,44,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":177,"old":162,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,98,68,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,102,70,0,32,50,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":543,"old":163,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":544,"old":163,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[28,36,68,131,259,9,3,1,7],"offset":0,"phase":0,"quadratic_rows":[13,6,15,13,0,0,0,0,0]},"new":602,"old":163,"rank":4,"right":{"linear_Z4":[2,3,3,0,0,2,0,3,3],"matrix_rows":[488,328,231,457,489,330,324,64,80],"offset":481,"phase":1,"quadratic_rows":[198,431,423,386,0,198,33,431,398]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,2,9,1],"offset":0,"phase":0,"quadratic_rows":[9,4,6,1,0,0,0,0,0]},"new":605,"old":163,"rank":4,"right":{"linear_Z4":[3,2,0,3,3,3,1,3,0],"matrix_rows":[384,92,68,161,385,14,80,64,416],"offset":110,"phase":1,"quadratic_rows":[289,12,66,26,24,289,68,384,161]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":173,"old":164,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":178,"old":164,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":174,"old":165,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":177,"old":165,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":175,"old":166,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":176,"old":166,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":172,"old":167,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":179,"old":167,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":174,"old":168,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,98,68,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,102,70,0,32,50,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":176,"old":168,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,66,100,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,70,102,32,0,44,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":172,"old":169,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,34,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,32,0,88,120,50,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":178,"old":169,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,2,36,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,32,120,88,44,24,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":542,"old":170,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":545,"old":170,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":601,"old":170,"rank":2,"right":{"linear_Z4":[3,0,0,0,0,0,3,3,0],"matrix_rows":[384,193,385,2,4,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[321,0,0,0,0,0,321,384,193]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,18,33,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":606,"old":170,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,0,2,2,3],"matrix_rows":[488,231,297,290,300,32,48,320,384],"offset":120,"phase":0,"quadratic_rows":[463,455,463,453,0,0,15,15,271]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":542,"old":171,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":544,"old":171,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[24,34,66,132,4,6,9,257,1],"offset":0,"phase":0,"quadratic_rows":[8,4,2,9,0,0,0,0,0]},"new":600,"old":171,"rank":4,"right":{"linear_Z4":[1,3,3,0,0,1,3,0,2],"matrix_rows":[192,46,40,385,449,50,60,16,256],"offset":6,"phase":2,"quadratic_rows":[65,30,22,34,6,40,321,256,192]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":604,"old":171,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,2,2,0,0],"matrix_rows":[1,70,33,66,68,8,16,128,256],"offset":2,"phase":1,"quadratic_rows":[33,6,6,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":172,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,2,0,0,0],"matrix_rows":[34,1,50,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,1,32,68,6,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":668,"old":172,"rank":3,"right":{"linear_Z4":[1,0,2,2,1,1,2,0,0],"matrix_rows":[1,34,80,5,64,24,96,128,256],"offset":100,"phase":3,"quadratic_rows":[5,96,1,16,56,114,34,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,64,132,4,256,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":684,"old":172,"rank":3,"right":{"linear_Z4":[0,1,3,2,3,2,0,2,3],"matrix_rows":[389,384,50,256,34,388,24,32,64],"offset":201,"phase":2,"quadratic_rows":[132,18,5,16,26,0,0,257,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":173,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,3,0],"matrix_rows":[133,257,18,276,24,256,32,320,384],"offset":1,"phase":1,"quadratic_rows":[389,16,405,16,14,0,0,389,133]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,2,20,35,67,132,4,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":669,"old":173,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[473,154,196,320,64,328,336,96,384],"offset":9,"phase":0,"quadratic_rows":[152,152,128,3,3,0,0,135,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,16,38,64,129,6,263,2,5],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":685,"old":173,"rank":3,"right":{"linear_Z4":[2,2,0,0,2,1,0,1,3],"matrix_rows":[304,437,53,49,134,32,24,288,320],"offset":48,"phase":2,"quadratic_rows":[432,132,290,16,425,437,0,435,437]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":174,"rank":1,"right":{"linear_Z4":[1,0,0,1,2,0,0,1,2],"matrix_rows":[393,257,18,20,280,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[137,16,16,153,14,0,0,137,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,16,33,64,134,6,263,2,5],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":678,"old":174,"rank":3,"right":{"linear_Z4":[2,0,2,2,0,1,0,1,3],"matrix_rows":[292,437,53,37,6,288,152,32,320],"offset":192,"phase":2,"quadratic_rows":[420,4,419,144,296,437,0,429,437]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,19,35,2,68,132,4,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":694,"old":174,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[455,142,208,320,322,324,64,96,384],"offset":9,"phase":0,"quadratic_rows":[134,9,9,134,128,0,0,153,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":175,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,129,2,256,4,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":679,"old":175,"rank":3,"right":{"linear_Z4":[0,2,3,1,3,2,0,2,3],"matrix_rows":[401,44,384,256,6,32,40,400,64],"offset":57,"phase":2,"quadratic_rows":[144,4,14,12,17,0,0,257,384]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,1,6,4,128,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":695,"old":175,"rank":3,"right":{"linear_Z4":[1,2,1,0,2,1,2,0,0],"matrix_rows":[1,68,40,17,6,96,64,128,256],"offset":50,"phase":3,"quadratic_rows":[17,4,38,96,1,108,40,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":176,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,0,1,2],"matrix_rows":[399,257,274,276,280,256,32,64,384],"offset":0,"phase":0,"quadratic_rows":[143,159,159,159,14,0,0,143,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,64,134,1,256,2,5],"offset":0,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]},"new":736,"old":176,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,0,3,0],"matrix_rows":[260,432,48,5,6,32,152,288,64],"offset":198,"phase":0,"quadratic_rows":[4,4,291,144,40,180,0,424,132]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,21,37,66,4,130,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":752,"old":176,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[455,200,150,320,322,324,64,96,384],"offset":9,"phase":0,"quadratic_rows":[134,17,17,128,134,0,0,153,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":177,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,2,0,0],"matrix_rows":[8,1,18,20,88,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,88,14,0,8,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,65,130,256,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":737,"old":177,"rank":3,"right":{"linear_Z4":[0,2,3,3,1,0,2,2,3],"matrix_rows":[393,84,384,256,6,64,392,80,32],"offset":57,"phase":2,"quadratic_rows":[136,4,22,9,20,0,0,257,384]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,1,68,4,6,128,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":753,"old":177,"rank":3,"right":{"linear_Z4":[1,2,1,2,0,2,1,0,0],"matrix_rows":[1,36,80,9,6,96,32,128,256],"offset":50,"phase":3,"quadratic_rows":[9,4,70,1,96,80,116,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":178,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,2,0,0],"matrix_rows":[68,1,18,84,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,1,18,32,68,2,6,128,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":746,"old":178,"rank":3,"right":{"linear_Z4":[1,2,0,2,1,2,1,0,0],"matrix_rows":[1,68,48,3,32,24,96,128,256],"offset":100,"phase":3,"quadratic_rows":[3,1,96,16,88,68,116,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,64,132,256,4,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":762,"old":178,"rank":3,"right":{"linear_Z4":[0,3,1,2,3,0,2,2,3],"matrix_rows":[387,384,84,256,386,68,24,64,32],"offset":201,"phase":2,"quadratic_rows":[130,3,20,16,28,0,0,257,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":179,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,3,0],"matrix_rows":[131,257,274,20,24,256,288,64,384],"offset":1,"phase":1,"quadratic_rows":[387,403,16,16,14,0,0,387,131]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,37,69,130,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":747,"old":179,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[473,194,156,320,64,328,336,96,384],"offset":9,"phase":0,"quadratic_rows":[152,128,152,5,5,0,0,135,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,38,64,129,1,256,2,5],"offset":0,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]},"new":763,"old":179,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,1,0,3,0],"matrix_rows":[272,420,36,17,134,288,24,32,64],"offset":54,"phase":0,"quadratic_rows":[16,132,34,16,297,180,0,418,144]}},{"left":{"linear_Z4":[3,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,14,12,10,16,17],"offset":0,"phase":0,"quadratic_rows":[17,4,2,8,17,0,0,0,0]},"new":1,"old":180,"rank":5,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,1],"matrix_rows":[1,98,100,8,384,256,48,80,112],"offset":239,"phase":1,"quadratic_rows":[256,80,48,112,14,108,106,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,36,68,130,262,6,2,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":413,"old":180,"rank":4,"right":{"linear_Z4":[0,1,2,2,0,2,2,0,1],"matrix_rows":[1,8,14,384,256,106,96,64,48],"offset":83,"phase":0,"quadratic_rows":[256,102,106,36,0,14,6,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,66,132,262,4,6,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":416,"old":180,"rank":4,"right":{"linear_Z4":[0,2,1,2,0,2,2,0,1],"matrix_rows":[1,6,8,384,256,96,100,32,80],"offset":53,"phase":0,"quadratic_rows":[256,100,102,32,0,14,6,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,66,132,262,6,4,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":417,"old":180,"rank":4,"right":{"linear_Z4":[0,1,2,2,0,2,2,0,1],"matrix_rows":[1,6,8,384,256,98,96,64,48],"offset":85,"phase":0,"quadratic_rows":[256,102,98,64,0,6,14,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,66,132,262,4,6,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":420,"old":180,"rank":4,"right":{"linear_Z4":[0,2,1,2,0,2,2,0,1],"matrix_rows":[1,14,8,384,256,96,108,32,80],"offset":53,"phase":0,"quadratic_rows":[256,108,102,66,0,6,14,256,385]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":189,"old":181,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,2,0],"matrix_rows":[132,1,18,148,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":190,"old":181,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":191,"old":181,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":192,"old":182,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":193,"old":182,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":194,"old":182,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":192,"old":183,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,0,2],"matrix_rows":[260,1,18,276,24,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":195,"old":183,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":196,"old":183,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":189,"old":184,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":197,"old":184,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":198,"old":184,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":193,"old":185,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,0,2],"matrix_rows":[287,321,258,324,264,336,32,256,128],"offset":0,"phase":0,"quadratic_rows":[95,31,95,31,95,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":195,"old":185,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,0,2],"matrix_rows":[287,321,322,260,328,272,32,256,128],"offset":0,"phase":0,"quadratic_rows":[95,95,31,95,31,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":199,"old":185,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,1,0,2],"matrix_rows":[335,257,274,276,280,256,32,320,128],"offset":0,"phase":0,"quadratic_rows":[79,95,95,95,14,0,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":190,"old":186,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,0,64,0,64,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":197,"old":186,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":200,"old":186,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":191,"old":187,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,2,0],"matrix_rows":[159,193,194,132,200,144,32,128,256],"offset":0,"phase":0,"quadratic_rows":[95,95,31,95,31,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":198,"old":187,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,2,0],"matrix_rows":[159,193,130,196,136,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[95,31,95,31,95,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":200,"old":187,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,1,2,0],"matrix_rows":[207,129,146,148,152,128,32,192,256],"offset":0,"phase":0,"quadratic_rows":[79,95,95,95,14,0,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":194,"old":188,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,2],"matrix_rows":[257,321,66,4,72,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":196,"old":188,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,2],"matrix_rows":[257,321,2,68,8,80,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,0,64,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":199,"old":188,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":547,"old":189,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":549,"old":189,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,34,64,131,2,256,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":611,"old":189,"rank":2,"right":{"linear_Z4":[2,3,2,3,0,2,2,0,2],"matrix_rows":[359,45,257,322,260,72,16,288,128],"offset":3,"phase":2,"quadratic_rows":[74,39,74,109,0,74,45,0,0]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,9,2,1],"offset":0,"phase":0,"quadratic_rows":[9,4,6,1,0,0,0,0,0]},"new":615,"old":189,"rank":4,"right":{"linear_Z4":[3,2,0,3,3,3,3,1,0],"matrix_rows":[320,156,132,97,321,14,144,128,352],"offset":110,"phase":1,"quadratic_rows":[289,12,130,26,24,289,320,132,97]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":202,"old":190,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":208,"old":190,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":204,"old":191,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":206,"old":191,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":547,"old":192,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":548,"old":192,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[1,20,36,66,130,8,262,6,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":610,"old":192,"rank":4,"right":{"linear_Z4":[2,1,1,0,0,2,2,2,0],"matrix_rows":[1,328,78,32,394,388,256,272,192],"offset":9,"phase":2,"quadratic_rows":[0,454,462,388,0,0,390,78,78]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,9,1,2],"offset":0,"phase":0,"quadratic_rows":[9,4,6,1,0,0,0,0,0]},"new":613,"old":192,"rank":4,"right":{"linear_Z4":[3,2,0,3,3,3,3,0,1],"matrix_rows":[192,284,260,97,193,14,272,256,224],"offset":110,"phase":1,"quadratic_rows":[161,12,258,26,24,161,192,97,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":202,"old":193,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":207,"old":193,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":203,"old":194,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":206,"old":194,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":204,"old":195,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":205,"old":195,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":201,"old":196,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":208,"old":196,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":203,"old":197,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":205,"old":197,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":201,"old":198,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":207,"old":198,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":546,"old":199,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":549,"old":199,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,33,64,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":609,"old":199,"rank":2,"right":{"linear_Z4":[0,0,3,3,0,2,1,2,0],"matrix_rows":[44,64,1,2,36,40,16,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,192,64,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,1,128,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":614,"old":199,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,2,0,2,0],"matrix_rows":[1,134,33,130,132,8,16,64,256],"offset":2,"phase":1,"quadratic_rows":[33,6,6,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":546,"old":200,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":548,"old":200,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[17,32,70,2,4,8,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":608,"old":200,"rank":4,"right":{"linear_Z4":[1,2,0,3,3,2,0,0,2],"matrix_rows":[1,28,4,32,257,14,16,64,128],"offset":110,"phase":1,"quadratic_rows":[257,12,2,26,24,0,0,0,1]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,1,128,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":612,"old":200,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,2,0,0,2],"matrix_rows":[1,262,33,258,260,8,16,64,128],"offset":2,"phase":1,"quadratic_rows":[33,6,6,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":201,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,0,2],"matrix_rows":[271,257,274,276,280,256,32,320,128],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,70,128,4,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":670,"old":201,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,3,0,3,2],"matrix_rows":[260,170,136,5,128,256,168,16,320],"offset":425,"phase":1,"quadratic_rows":[4,40,5,130,0,34,0,136,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,22,32,68,129,2,257,4,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":692,"old":201,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,3,0,3,2],"matrix_rows":[272,130,170,17,162,4,128,256,320],"offset":425,"phase":1,"quadratic_rows":[16,136,0,34,17,40,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":202,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,2,0],"matrix_rows":[143,129,146,148,152,128,32,192,256],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,70,128,4,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":671,"old":202,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,3,0,2,3],"matrix_rows":[132,298,264,5,256,128,296,16,192],"offset":425,"phase":1,"quadratic_rows":[4,40,5,258,0,34,0,0,264]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,22,32,68,129,2,257,1,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":693,"old":202,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,3,0,2,3],"matrix_rows":[144,258,298,17,290,4,256,128,192],"offset":425,"phase":1,"quadratic_rows":[16,264,0,34,17,40,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":203,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[11,23,3,36,6,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[6,1,1,0,0,0,0,0,0]},"new":676,"old":203,"rank":3,"right":{"linear_Z4":[0,3,2,3,1,2,0,0,0],"matrix_rows":[55,7,30,5,54,56,64,128,256],"offset":5,"phase":2,"quadratic_rows":[52,26,25,46,55,25,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,35,70,7,4,134,262,6],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":686,"old":203,"rank":3,"right":{"linear_Z4":[3,3,0,2,1,1,0,0,2],"matrix_rows":[39,36,56,273,282,60,256,320,384],"offset":222,"phase":2,"quadratic_rows":[311,319,59,22,31,39,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":204,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,0,0,0,0],"matrix_rows":[14,1,274,276,280,256,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,286,286,286,14,0,0,0,14]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,128,1,3,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":677,"old":204,"rank":3,"right":{"linear_Z4":[3,1,0,3,0,2,0,0,2],"matrix_rows":[34,9,260,99,64,256,104,16,384],"offset":3,"phase":2,"quadratic_rows":[107,3,0,105,0,9,9,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[10,18,32,65,132,3,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":687,"old":204,"rank":3,"right":{"linear_Z4":[3,3,0,0,0,1,0,0,2],"matrix_rows":[40,43,272,105,98,4,64,256,384],"offset":3,"phase":2,"quadratic_rows":[67,75,0,34,0,40,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":205,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,0,2],"matrix_rows":[260,1,18,276,24,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,134,4,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":744,"old":205,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,3,0,2,3],"matrix_rows":[130,308,272,3,128,256,8,304,192],"offset":345,"phase":1,"quadratic_rows":[2,3,48,0,260,36,0,0,272]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,132,2,257,1,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":754,"old":205,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,3,0,2,3],"matrix_rows":[136,260,308,9,2,292,128,256,192],"offset":345,"phase":1,"quadratic_rows":[8,0,272,9,36,48,0,0,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":206,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,2,0],"matrix_rows":[132,1,18,148,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,134,4,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":745,"old":206,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,3,0,3,2],"matrix_rows":[258,180,144,3,256,128,8,176,320],"offset":345,"phase":1,"quadratic_rows":[2,3,48,0,132,36,0,144,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,132,2,257,4,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":755,"old":206,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,3,0,3,2],"matrix_rows":[264,132,180,9,2,164,256,128,320],"offset":345,"phase":1,"quadratic_rows":[8,0,144,9,36,48,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":207,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[5,65,18,84,24,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,16,85,16,14,0,5,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[12,18,37,64,132,1,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":738,"old":207,"rank":3,"right":{"linear_Z4":[3,0,1,0,3,2,0,0,2],"matrix_rows":[36,258,17,101,256,64,8,112,384],"offset":5,"phase":2,"quadratic_rows":[117,0,5,0,113,17,17,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[10,16,34,68,129,3,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":760,"old":207,"rank":3,"right":{"linear_Z4":[3,0,3,0,0,1,0,0,2],"matrix_rows":[48,53,264,113,2,100,256,64,384],"offset":3,"phase":2,"quadratic_rows":[69,0,85,0,36,48,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":208,"rank":1,"right":{"linear_Z4":[1,0,1,0,2,0,0,0,2],"matrix_rows":[5,257,18,276,24,256,32,320,384],"offset":0,"phase":0,"quadratic_rows":[261,16,277,16,14,0,0,0,5]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,22,35,71,5,4,134,262,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":739,"old":208,"rank":3,"right":{"linear_Z4":[0,2,3,3,1,2,0,0,1],"matrix_rows":[44,42,286,21,278,256,312,320,384],"offset":244,"phase":1,"quadratic_rows":[20,32,309,40,309,286,0,0,308]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,21,33,7,70,2,134,262,6],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":761,"old":208,"rank":3,"right":{"linear_Z4":[3,0,3,1,2,1,0,0,2],"matrix_rows":[39,56,34,265,58,284,256,320,384],"offset":238,"phase":2,"quadratic_rows":[303,61,319,31,14,39,0,0,5]}},{"left":{"linear_Z4":[3,2,3,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,14,16,11,266,10],"offset":0,"phase":0,"quadratic_rows":[11,5,14,5,0,0,0,0,0]},"new":1,"old":209,"rank":5,"right":{"linear_Z4":[0,2,0,2,0,2,0,0,0],"matrix_rows":[257,338,260,88,32,320,256,272,384],"offset":253,"phase":1,"quadratic_rows":[64,80,16,80,14,0,11,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,40,68,138,14,2,11,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":413,"old":209,"rank":4,"right":{"linear_Z4":[0,1,0,3,2,0,2,0,1],"matrix_rows":[257,376,260,114,320,298,272,256,384],"offset":85,"phase":0,"quadratic_rows":[64,346,16,346,14,0,11,0,266]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,78,8,138,4,11,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":416,"old":209,"rank":4,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,1],"matrix_rows":[257,358,260,108,320,256,292,272,384],"offset":51,"phase":0,"quadratic_rows":[64,100,302,100,0,14,11,0,260]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[27,35,69,9,15,1,138,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":418,"old":209,"rank":4,"right":{"linear_Z4":[1,1,3,1,0,2,0,0,1],"matrix_rows":[257,317,260,55,303,256,272,320,384],"offset":102,"phase":0,"quadratic_rows":[293,26,53,26,14,5,0,0,257]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[27,34,68,8,14,1,138,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":419,"old":209,"rank":4,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,1],"matrix_rows":[257,307,260,57,289,256,272,320,384],"offset":102,"phase":0,"quadratic_rows":[299,49,16,49,14,11,0,0,257]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":218,"old":210,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":219,"old":210,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":220,"old":210,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":221,"old":211,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,1,0,1,2],"matrix_rows":[430,1,274,276,280,256,288,64,384],"offset":0,"phase":0,"quadratic_rows":[0,190,190,190,14,174,0,174,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":222,"old":211,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":223,"old":211,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":221,"old":212,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":224,"old":212,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":225,"old":212,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":218,"old":213,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":226,"old":213,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":227,"old":213,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":222,"old":214,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,1,2,1,2],"matrix_rows":[427,321,258,68,264,80,288,256,384],"offset":0,"phase":0,"quadratic_rows":[235,171,64,171,64,171,21,171,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":224,"old":214,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,1,2,1,2],"matrix_rows":[427,321,322,4,328,16,288,256,384],"offset":0,"phase":0,"quadratic_rows":[235,235,0,235,0,171,11,171,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":228,"old":214,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":219,"old":215,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[88,9,2,12,64,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[8,0,8,21,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":226,"old":215,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[88,17,18,4,72,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[16,16,0,24,11,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":229,"old":215,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,2,0,0],"matrix_rows":[72,1,18,20,88,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":220,"old":216,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":227,"old":216,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":229,"old":216,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":223,"old":217,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,1,2,1,2],"matrix_rows":[437,321,66,260,72,272,288,256,384],"offset":0,"phase":0,"quadratic_rows":[245,64,181,64,181,181,11,181,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":225,"old":217,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,1,2,1,2],"matrix_rows":[437,321,2,324,8,336,288,256,384],"offset":0,"phase":0,"quadratic_rows":[245,0,245,0,245,181,21,181,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":228,"old":217,"rank":1,"right":{"linear_Z4":[1,0,1,0,2,1,1,1,2],"matrix_rows":[485,257,18,276,24,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[229,16,245,16,14,229,229,229,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":551,"old":218,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":553,"old":218,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,1,1,2],"matrix_rows":[230,1,258,260,8,16,288,320,384],"offset":0,"phase":0,"quadratic_rows":[0,486,486,0,0,486,486,486,230]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,64,130,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":619,"old":218,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,3,3,3,0],"matrix_rows":[384,224,1,2,4,8,16,416,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,0,352,352,384,224]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[30,32,64,128,256,3,5,9,1],"offset":0,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]},"new":623,"old":218,"rank":4,"right":{"linear_Z4":[3,0,0,0,0,3,3,3,0],"matrix_rows":[480,449,417,353,481,2,4,8,16],"offset":1,"phase":1,"quadratic_rows":[225,0,0,0,0,225,225,225,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":231,"old":219,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":237,"old":219,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":233,"old":220,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":235,"old":220,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":551,"old":221,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":552,"old":221,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,0,0,0,0,0],"matrix_rows":[18,32,67,1,2,136,12,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,8,12,0,0,0,0,0]},"new":618,"old":221,"rank":4,"right":{"linear_Z4":[1,2,0,1,1,1,3,0,2],"matrix_rows":[28,25,192,416,29,14,16,480,256],"offset":115,"phase":1,"quadratic_rows":[5,12,27,30,28,96,352,256,192]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[1,16,34,66,128,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":621,"old":221,"rank":4,"right":{"linear_Z4":[2,0,3,3,0,0,2,0,1],"matrix_rows":[1,76,32,384,2,68,72,16,256],"offset":263,"phase":2,"quadratic_rows":[0,0,12,12,0,256,0,256,416]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":231,"old":222,"rank":1,"right":{"linear_Z4":[2,3,1,1,3,3,0,3,2],"matrix_rows":[438,9,258,268,256,272,288,64,384],"offset":27,"phase":0,"quadratic_rows":[8,182,190,13,182,182,0,182,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":236,"old":222,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,1,0,1,2],"matrix_rows":[184,17,18,4,264,256,288,320,384],"offset":170,"phase":0,"quadratic_rows":[16,16,0,440,427,440,0,440,184]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":232,"old":223,"rank":1,"right":{"linear_Z4":[2,1,3,3,1,3,0,3,2],"matrix_rows":[430,17,274,260,264,256,288,64,384],"offset":39,"phase":0,"quadratic_rows":[16,190,174,174,19,174,0,174,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":235,"old":223,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,1,0,1,2],"matrix_rows":[184,9,2,12,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[8,0,8,437,440,440,0,440,184]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":233,"old":224,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,73,66,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[75,67,8,13,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":234,"old":224,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":230,"old":225,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,81,18,68,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[85,16,69,0,19,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":237,"old":225,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":232,"old":226,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":234,"old":226,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":230,"old":227,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":236,"old":227,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":550,"old":228,"rank":1,"right":{"linear_Z4":[3,1,2,3,0,3,1,3,2],"matrix_rows":[427,257,322,68,264,16,288,256,384],"offset":141,"phase":0,"quadratic_rows":[171,235,64,171,0,171,70,171,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":553,"old":228,"rank":1,"right":{"linear_Z4":[0,2,2,0,0,1,1,1,2],"matrix_rows":[232,9,2,12,256,272,288,320,384],"offset":60,"phase":0,"quadratic_rows":[8,0,8,485,0,488,488,488,232]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,35,64,131,259,2,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":617,"old":228,"rank":2,"right":{"linear_Z4":[0,2,2,0,0,0,1,0,3],"matrix_rows":[173,301,321,194,388,328,16,352,256],"offset":431,"phase":1,"quadratic_rows":[192,192,0,192,0,192,235,363,384]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,10,18,33,65,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":622,"old":228,"rank":2,"right":{"linear_Z4":[2,3,3,0,0,0,2,2,2],"matrix_rows":[201,239,257,2,12,256,272,320,384],"offset":120,"phase":0,"quadratic_rows":[294,239,231,290,0,207,294,294,201]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":550,"old":229,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":552,"old":229,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[28,36,71,132,263,9,7,1,3],"offset":0,"phase":0,"quadratic_rows":[13,6,15,13,0,0,0,0,0]},"new":616,"old":229,"rank":4,"right":{"linear_Z4":[2,3,1,3,0,2,3,3,0],"matrix_rows":[484,324,431,453,485,326,64,328,80],"offset":481,"phase":1,"quadratic_rows":[398,235,45,239,0,398,202,235,33]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":620,"old":229,"rank":2,"right":{"linear_Z4":[3,3,3,2,0,0,0,3,2],"matrix_rows":[385,6,257,18,28,16,32,64,384],"offset":3,"phase":2,"quadratic_rows":[129,22,30,4,6,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":230,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,33,64,2,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":672,"old":230,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,3,1,1,2],"matrix_rows":[20,66,416,5,16,80,40,256,384],"offset":233,"phase":1,"quadratic_rows":[4,80,69,32,66,168,86,160,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,68,128,260,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":732,"old":230,"rank":3,"right":{"linear_Z4":[2,1,1,3,0,0,2,2,3],"matrix_rows":[66,384,424,5,70,64,392,16,256],"offset":317,"phase":0,"quadratic_rows":[4,6,7,40,0,136,0,288,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":231,"rank":1,"right":{"linear_Z4":[1,0,1,0,3,3,0,3,2],"matrix_rows":[421,273,18,260,8,256,288,320,384],"offset":171,"phase":1,"quadratic_rows":[181,16,165,0,19,165,0,165,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,18,33,65,135,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":673,"old":231,"rank":3,"right":{"linear_Z4":[3,0,2,0,3,0,2,0,2],"matrix_rows":[81,407,181,325,256,64,72,336,384],"offset":19,"phase":1,"quadratic_rows":[55,149,35,0,51,149,0,34,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,23,39,71,132,259,7,2,1],"offset":0,"phase":0,"quadratic_rows":[3,3,4,0,0,0,0,0,0]},"new":733,"old":231,"rank":3,"right":{"linear_Z4":[1,1,0,0,1,3,0,0,3],"matrix_rows":[130,258,183,357,230,64,72,368,256],"offset":463,"phase":1,"quadratic_rows":[467,467,368,0,471,356,183,83,311]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":232,"rank":1,"right":{"linear_Z4":[1,1,0,3,0,3,0,3,2],"matrix_rows":[419,265,258,12,256,16,288,320,384],"offset":151,"phase":1,"quadratic_rows":[171,163,8,13,0,163,0,163,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[10,16,39,66,128,2,256,3,6],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":682,"old":232,"rank":3,"right":{"linear_Z4":[3,2,3,1,0,1,0,2,3],"matrix_rows":[388,9,4,133,166,256,40,16,64],"offset":61,"phase":1,"quadratic_rows":[141,164,167,41,0,174,0,295,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,17,34,71,129,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":742,"old":232,"rank":3,"right":{"linear_Z4":[3,2,0,3,0,0,2,0,2],"matrix_rows":[73,399,171,323,64,256,328,80,384],"offset":35,"phase":1,"quadratic_rows":[47,37,139,45,0,139,0,36,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":233,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,33,65,132,260,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":683,"old":233,"rank":3,"right":{"linear_Z4":[2,2,2,0,3,0,2,2,3],"matrix_rows":[68,384,432,5,6,64,72,400,256],"offset":316,"phase":3,"quadratic_rows":[4,4,3,0,48,144,0,288,384]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,2,64,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":743,"old":233,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,3,1,1,2],"matrix_rows":[10,68,416,3,72,8,48,256,384],"offset":217,"phase":1,"quadratic_rows":[2,67,72,68,32,176,78,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":234,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,73,66,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[75,67,8,13,0,0,3,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,128,260,1,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":688,"old":234,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,0,0,2,3],"matrix_rows":[3,384,420,65,74,388,64,16,256],"offset":261,"phase":1,"quadratic_rows":[67,75,36,2,0,132,3,288,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,65,3,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":748,"old":234,"rank":3,"right":{"linear_Z4":[2,0,2,1,2,3,0,1,2],"matrix_rows":[90,66,416,11,16,36,80,256,384],"offset":233,"phase":1,"quadratic_rows":[10,1,32,9,0,164,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":235,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,3,0,3,0],"matrix_rows":[179,273,274,4,8,256,288,64,384],"offset":39,"phase":0,"quadratic_rows":[419,419,0,0,416,435,0,435,179]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,32,64,134,3,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":689,"old":235,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,2,0,1,3],"matrix_rows":[291,179,16,33,34,180,8,256,64],"offset":2,"phase":1,"quadratic_rows":[432,432,176,0,263,263,0,135,307]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,23,33,65,130,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":749,"old":235,"rank":3,"right":{"linear_Z4":[3,3,2,0,0,0,2,0,2],"matrix_rows":[71,403,163,321,322,64,72,256,384],"offset":131,"phase":1,"quadratic_rows":[55,55,3,0,131,131,0,48,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":236,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,3,0,3,0],"matrix_rows":[173,265,2,268,256,16,288,64,384],"offset":27,"phase":0,"quadratic_rows":[421,0,421,416,0,429,0,429,173]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,17,39,66,129,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":698,"old":236,"rank":3,"right":{"linear_Z4":[3,2,3,0,0,0,2,0,2],"matrix_rows":[71,397,165,321,64,324,256,80,384],"offset":67,"phase":1,"quadratic_rows":[47,5,47,133,0,133,0,40,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,16,35,70,128,3,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":758,"old":236,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,1,3],"matrix_rows":[293,173,8,33,170,36,256,16,64],"offset":2,"phase":1,"quadratic_rows":[424,168,424,263,0,263,0,135,301]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":237,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,81,18,68,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[85,16,69,0,19,0,5,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,37,69,1,130,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":699,"old":237,"rank":3,"right":{"linear_Z4":[2,2,0,0,1,3,2,1,2],"matrix_rows":[20,416,68,21,34,64,72,256,384],"offset":248,"phase":3,"quadratic_rows":[20,32,1,0,17,162,0,160,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,20,34,64,130,260,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":759,"old":237,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,0,2,3],"matrix_rows":[384,5,418,65,386,84,8,64,256],"offset":262,"phase":1,"quadratic_rows":[69,34,85,0,4,130,5,288,384]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,133,3,264,6,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":238,"rank":5,"right":{"linear_Z4":[2,0,2,0,0,0,0,0,1],"matrix_rows":[17,18,20,32,384,80,64,88,256],"offset":463,"phase":1,"quadratic_rows":[64,80,16,0,6,256,3,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,129,3,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":414,"old":238,"rank":4,"right":{"linear_Z4":[3,3,2,0,0,0,2,0,1],"matrix_rows":[6,5,32,384,71,16,80,88,256],"offset":469,"phase":2,"quadratic_rows":[67,83,16,0,6,256,3,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,130,1,260,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":415,"old":238,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,2,0,1],"matrix_rows":[3,5,32,384,65,16,80,88,256],"offset":468,"phase":1,"quadratic_rows":[70,17,81,0,6,256,5,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,131,1,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":417,"old":238,"rank":4,"right":{"linear_Z4":[0,2,0,0,2,0,2,0,1],"matrix_rows":[3,6,32,384,16,82,64,88,256],"offset":388,"phase":3,"quadratic_rows":[18,85,66,0,3,256,6,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,129,3,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":420,"old":238,"rank":4,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,1],"matrix_rows":[5,6,32,384,80,64,20,88,256],"offset":468,"phase":1,"quadratic_rows":[84,68,19,0,5,256,3,256,416]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":247,"old":239,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,1,1,0,2],"matrix_rows":[366,1,274,276,280,256,288,320,128],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,14,110,110,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":248,"old":239,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,0,2],"matrix_rows":[318,1,258,260,328,336,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,62,62,126,126,126,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":249,"old":239,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,0,2],"matrix_rows":[318,1,322,324,264,272,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,126,126,62,62,126,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":250,"old":240,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":251,"old":240,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,2,4,72,80,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,64,96,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":252,"old":240,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,66,68,8,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":250,"old":241,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,1,1,2,0],"matrix_rows":[238,1,146,148,152,128,160,192,256],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,14,110,110,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":253,"old":241,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,2,0],"matrix_rows":[190,1,194,196,136,144,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,126,126,62,62,126,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":254,"old":241,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,2,0],"matrix_rows":[190,1,130,132,200,208,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,62,62,126,126,126,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":247,"old":242,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":255,"old":242,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,2],"matrix_rows":[288,1,66,68,8,16,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":256,"old":242,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,2],"matrix_rows":[288,1,2,4,72,80,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,64,96,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":251,"old":243,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":253,"old":243,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":257,"old":243,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,2,0],"matrix_rows":[136,1,18,20,152,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":248,"old":244,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":255,"old":244,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":258,"old":244,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":249,"old":245,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":256,"old":245,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":258,"old":245,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,2],"matrix_rows":[264,1,18,20,280,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":252,"old":246,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":254,"old":246,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":257,"old":246,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":555,"old":247,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":557,"old":247,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,64,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":627,"old":247,"rank":2,"right":{"linear_Z4":[0,3,3,3,0,0,1,2,0],"matrix_rows":[6,64,9,18,28,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,192,64,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[1,16,34,66,128,260,8,2,12],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":631,"old":247,"rank":4,"right":{"linear_Z4":[2,0,3,3,0,0,0,2,1],"matrix_rows":[1,140,32,320,2,132,136,16,256],"offset":263,"phase":2,"quadratic_rows":[0,0,12,12,0,256,256,0,352]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":260,"old":248,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":266,"old":248,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":262,"old":249,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":264,"old":249,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":555,"old":250,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":556,"old":250,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[1,16,38,2,4,72,128,256,8],"offset":0,"phase":0,"quadratic_rows":[0,6,6,8,0,0,0,0,0]},"new":626,"old":250,"rank":4,"right":{"linear_Z4":[2,2,0,3,3,1,0,0,2],"matrix_rows":[1,28,4,32,14,16,288,64,128],"offset":55,"phase":1,"quadratic_rows":[0,12,2,26,24,288,0,0,32]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[1,16,34,66,128,260,8,12,2],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":629,"old":250,"rank":4,"right":{"linear_Z4":[2,0,3,3,0,0,0,1,2],"matrix_rows":[1,268,32,192,2,260,264,16,128],"offset":263,"phase":2,"quadratic_rows":[0,0,12,12,0,128,128,224,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":260,"old":251,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":265,"old":251,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":261,"old":252,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":264,"old":252,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":262,"old":253,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":263,"old":253,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":259,"old":254,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":266,"old":254,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":261,"old":255,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":263,"old":255,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":259,"old":256,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":265,"old":256,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":554,"old":257,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":557,"old":257,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,64,131,2,256,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":625,"old":257,"rank":2,"right":{"linear_Z4":[2,3,3,2,0,2,2,0,2],"matrix_rows":[363,45,257,322,68,264,16,288,128],"offset":3,"phase":2,"quadratic_rows":[70,43,109,70,0,70,45,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":630,"old":257,"rank":2,"right":{"linear_Z4":[3,3,3,2,0,0,3,0,2],"matrix_rows":[321,6,257,18,28,16,32,320,128],"offset":3,"phase":2,"quadratic_rows":[65,22,30,4,6,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":554,"old":258,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":556,"old":258,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[1,20,38,68,134,8,258,2,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":624,"old":258,"rank":4,"right":{"linear_Z4":[2,3,3,3,0,2,1,2,3],"matrix_rows":[1,324,266,32,390,256,392,272,192],"offset":13,"phase":3,"quadratic_rows":[0,142,454,138,0,0,452,78,324]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":628,"old":258,"rank":2,"right":{"linear_Z4":[3,3,3,2,0,0,3,2,0],"matrix_rows":[193,6,129,18,28,16,32,192,256],"offset":3,"phase":2,"quadratic_rows":[65,22,30,4,6,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":259,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,3,0,0,2],"matrix_rows":[302,1,274,276,280,256,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,62,62,62,14,46,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,18,1,36,68,132,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":674,"old":259,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,3,0],"matrix_rows":[132,135,24,133,128,104,80,64,256],"offset":22,"phase":1,"quadratic_rows":[3,5,130,120,88,8,24,132,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,17,2,36,68,132,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":740,"old":259,"rank":3,"right":{"linear_Z4":[1,0,2,3,3,2,0,3,0],"matrix_rows":[2,135,24,3,128,72,112,64,256],"offset":31,"phase":1,"quadratic_rows":[133,4,131,88,120,16,24,133,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":260,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,3,0,2,0],"matrix_rows":[174,1,146,148,152,128,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,62,62,62,14,46,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,18,1,36,68,132,4,256,3],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":675,"old":260,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,0,3],"matrix_rows":[260,263,24,261,256,104,80,64,128],"offset":22,"phase":1,"quadratic_rows":[3,5,258,120,88,8,24,0,260]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,17,2,36,68,132,4,256,3],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":741,"old":260,"rank":3,"right":{"linear_Z4":[1,0,2,3,3,2,0,0,3],"matrix_rows":[2,263,24,3,256,72,112,64,128],"offset":31,"phase":1,"quadratic_rows":[261,4,259,88,120,16,24,0,261]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":261,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[11,16,39,71,1,130,5,263,7],"offset":0,"phase":0,"quadratic_rows":[6,3,1,0,0,0,0,0,0]},"new":680,"old":261,"rank":3,"right":{"linear_Z4":[2,0,2,1,1,1,0,0,1],"matrix_rows":[297,25,108,341,38,256,296,320,384],"offset":237,"phase":2,"quadratic_rows":[100,36,27,124,348,299,25,0,304]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[13,16,39,1,71,131,4,263,7],"offset":0,"phase":0,"quadratic_rows":[6,1,5,0,0,0,0,0,0]},"new":734,"old":261,"rank":3,"right":{"linear_Z4":[0,0,2,3,3,1,0,0,1],"matrix_rows":[305,340,25,109,38,256,304,320,384],"offset":225,"phase":2,"quadratic_rows":[324,36,27,124,348,298,25,0,305]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":262,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,0,0,0,0],"matrix_rows":[14,1,274,276,280,256,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,286,286,286,14,0,0,0,14]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[10,16,35,68,128,2,1,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":681,"old":262,"rank":3,"right":{"linear_Z4":[1,2,0,0,0,3,3,0,2],"matrix_rows":[4,97,264,5,38,64,256,16,384],"offset":59,"phase":1,"quadratic_rows":[101,36,99,0,0,103,101,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[10,16,35,64,132,1,2,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":735,"old":262,"rank":3,"right":{"linear_Z4":[1,2,0,0,0,1,1,0,2],"matrix_rows":[100,97,272,101,38,64,8,256,384],"offset":59,"phase":1,"quadratic_rows":[5,36,99,0,0,102,100,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":263,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,2,0],"matrix_rows":[136,1,18,20,152,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,1,130,2,5,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":696,"old":263,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,3,0],"matrix_rows":[144,6,153,145,98,68,128,64,256],"offset":70,"phase":1,"quadratic_rows":[9,102,70,17,136,2,6,144,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,65,4,130,2,5,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":750,"old":263,"rank":3,"right":{"linear_Z4":[1,3,3,0,2,2,0,3,0],"matrix_rows":[8,6,153,9,66,100,128,64,256],"offset":79,"phase":1,"quadratic_rows":[145,70,102,16,137,4,6,145,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":264,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,2],"matrix_rows":[264,1,18,20,280,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,1,130,2,256,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":697,"old":264,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,0,3],"matrix_rows":[272,6,281,273,98,68,256,64,128],"offset":70,"phase":1,"quadratic_rows":[9,102,70,17,264,2,6,0,272]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,65,4,130,2,256,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":751,"old":264,"rank":3,"right":{"linear_Z4":[1,3,3,0,2,2,0,0,3],"matrix_rows":[8,6,281,9,66,100,256,64,128],"offset":79,"phase":1,"quadratic_rows":[273,70,102,16,265,4,6,0,273]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":265,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,1,0,0,2],"matrix_rows":[40,1,18,20,280,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[0,16,16,312,14,296,0,0,40]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[15,17,5,32,65,130,3,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":690,"old":265,"rank":3,"right":{"linear_Z4":[1,1,1,0,3,3,1,0,0],"matrix_rows":[291,117,337,341,290,56,256,320,384],"offset":221,"phase":2,"quadratic_rows":[339,3,292,48,345,300,337,0,117]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[15,3,17,32,65,133,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":756,"old":265,"rank":3,"right":{"linear_Z4":[3,1,1,0,1,2,3,0,3],"matrix_rows":[293,113,339,115,292,56,256,320,384],"offset":213,"phase":3,"quadratic_rows":[117,290,5,48,121,347,113,0,290]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":266,"rank":1,"right":{"linear_Z4":[0,0,0,3,2,3,0,0,0],"matrix_rows":[40,1,18,20,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,16,16,120,14,104,40,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,18,32,64,133,4,1,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":691,"old":266,"rank":3,"right":{"linear_Z4":[1,0,0,2,0,3,3,0,2],"matrix_rows":[16,258,97,17,256,4,56,64,384],"offset":205,"phase":1,"quadratic_rows":[113,0,0,48,105,121,113,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,16,34,64,133,1,4,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":757,"old":266,"rank":3,"right":{"linear_Z4":[1,0,0,2,0,1,1,0,2],"matrix_rows":[112,260,97,113,2,256,56,64,384],"offset":205,"phase":1,"quadratic_rows":[17,0,0,48,105,120,112,0,0]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[1,34,4,72,14,144,22,262,6],"offset":0,"phase":0,"quadratic_rows":[0,24,24,14,22,0,0,0,0]},"new":1,"old":267,"rank":5,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[1,338,84,264,288,256,272,320,384],"offset":253,"phase":1,"quadratic_rows":[0,80,80,16,14,64,38,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,1,68,6,136,10,258,2],"offset":0,"phase":0,"quadratic_rows":[3,15,6,10,0,0,0,0,0]},"new":414,"old":267,"rank":4,"right":{"linear_Z4":[3,1,0,0,1,0,1,0,3],"matrix_rows":[262,85,264,288,263,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[339,259,80,16,349,64,373,0,339]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,34,4,65,7,136,14,262,6],"offset":0,"phase":0,"quadratic_rows":[7,15,15,14,0,0,0,0,0]},"new":415,"old":267,"rank":4,"right":{"linear_Z4":[2,2,2,1,0,0,0,0,3],"matrix_rows":[264,91,349,288,265,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[14,345,345,31,14,64,38,0,262]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,35,5,73,15,129,7,262,6],"offset":0,"phase":0,"quadratic_rows":[7,15,15,14,0,0,0,0,0]},"new":418,"old":267,"rank":4,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,3],"matrix_rows":[302,125,379,264,303,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[40,120,120,279,14,103,38,0,264]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,34,4,72,14,129,7,262,6],"offset":0,"phase":0,"quadratic_rows":[7,15,15,14,0,0,0,0,0]},"new":419,"old":267,"rank":4,"right":{"linear_Z4":[2,2,2,0,0,1,0,0,3],"matrix_rows":[288,115,373,264,289,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[38,369,369,16,14,103,38,0,262]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":276,"old":268,"rank":1,"right":{"linear_Z4":[0,1,1,1,0,2,1,1,2],"matrix_rows":[462,33,290,260,264,48,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,238,206,206,32,19,206,206,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":277,"old":268,"rank":1,"right":{"linear_Z4":[0,1,1,1,0,1,2,1,2],"matrix_rows":[430,65,258,324,264,80,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,174,238,174,64,174,21,174,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":278,"old":268,"rank":1,"right":{"linear_Z4":[0,1,1,1,0,1,2,1,2],"matrix_rows":[430,1,322,324,264,16,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,238,238,174,0,238,38,174,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":279,"old":269,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,2,0,0],"matrix_rows":[80,33,34,4,8,112,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":280,"old":269,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[112,33,2,36,8,80,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,0,48,21,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":281,"old":269,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,0],"matrix_rows":[112,1,18,20,8,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,0,38,48,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":279,"old":270,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":282,"old":270,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":283,"old":270,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":276,"old":271,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":284,"old":271,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,0,2,1,2],"matrix_rows":[413,257,66,324,264,272,96,256,384],"offset":0,"phase":0,"quadratic_rows":[157,64,221,157,157,64,38,157,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":285,"old":271,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,0,2,1,2],"matrix_rows":[413,321,2,324,264,336,32,256,384],"offset":0,"phase":0,"quadratic_rows":[221,0,221,157,221,0,21,157,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":280,"old":272,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":282,"old":272,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":286,"old":272,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":277,"old":273,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":284,"old":273,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":287,"old":273,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,2,0,1,2],"matrix_rows":[411,289,290,4,264,304,256,64,384],"offset":0,"phase":0,"quadratic_rows":[187,187,0,155,187,19,0,155,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":278,"old":274,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":285,"old":274,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":287,"old":274,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":281,"old":275,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":283,"old":275,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":286,"old":275,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":559,"old":276,"rank":1,"right":{"linear_Z4":[1,2,3,3,3,0,1,3,2],"matrix_rows":[413,321,66,260,264,272,32,256,384],"offset":135,"phase":0,"quadratic_rows":[221,64,157,157,157,0,67,157,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":561,"old":276,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,1,1,2],"matrix_rows":[216,1,18,20,264,256,288,320,384],"offset":102,"phase":0,"quadratic_rows":[0,16,16,472,462,0,472,472,216]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,65,128,257,3,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":635,"old":276,"rank":2,"right":{"linear_Z4":[2,3,1,1,1,0,1,2,0],"matrix_rows":[286,384,193,386,324,328,336,32,256],"offset":373,"phase":0,"quadratic_rows":[192,158,94,94,94,0,221,67,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,67,131,258,2,4,8,13],"offset":0,"phase":0,"quadratic_rows":[12,2,13,13,0,0,0,0,0]},"new":639,"old":276,"rank":4,"right":{"linear_Z4":[1,1,2,2,0,2,0,0,0],"matrix_rows":[279,20,320,384,265,282,300,288,32],"offset":0,"phase":0,"quadratic_rows":[31,15,43,23,41,20,256,256,192]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":289,"old":277,"rank":1,"right":{"linear_Z4":[1,3,2,3,3,1,0,3,2],"matrix_rows":[411,289,258,36,264,272,256,64,384],"offset":75,"phase":0,"quadratic_rows":[187,155,32,155,155,37,0,155,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":295,"old":277,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,1,0,1,2],"matrix_rows":[184,1,18,20,264,256,288,320,384],"offset":170,"phase":0,"quadratic_rows":[0,16,16,440,430,440,0,440,184]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":291,"old":278,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,66,100,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,70,102,0,0,37,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":293,"old":278,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":559,"old":279,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":560,"old":279,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[31,45,7,11,66,128,256,3,2],"offset":0,"phase":0,"quadratic_rows":[12,2,1,1,0,0,0,0,0]},"new":634,"old":279,"rank":4,"right":{"linear_Z4":[0,3,3,3,1,0,0,0,2],"matrix_rows":[399,17,263,267,141,398,272,32,64],"offset":12,"phase":2,"quadratic_rows":[286,15,399,399,273,0,0,12,29]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[16,35,72,136,257,2,3,12,4],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]},"new":637,"old":279,"rank":4,"right":{"linear_Z4":[2,0,3,3,1,0,2,3,0],"matrix_rows":[114,34,384,140,19,64,388,392,96],"offset":281,"phase":0,"quadratic_rows":[18,1,268,268,17,0,0,384,140]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":289,"old":280,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":294,"old":280,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":290,"old":281,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":293,"old":281,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":291,"old":282,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":292,"old":282,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":288,"old":283,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":295,"old":283,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":290,"old":284,"rank":1,"right":{"linear_Z4":[3,1,2,3,1,3,0,3,2],"matrix_rows":[427,257,274,20,264,256,288,64,384],"offset":45,"phase":0,"quadratic_rows":[171,187,16,171,22,171,0,171,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":292,"old":284,"rank":1,"right":{"linear_Z4":[0,2,2,1,1,0,0,1,2],"matrix_rows":[184,33,2,36,264,272,256,320,384],"offset":204,"phase":0,"quadratic_rows":[32,0,32,440,440,413,0,440,184]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":288,"old":285,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,18,84,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,16,85,0,22,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":294,"old":285,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":558,"old":286,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":561,"old":286,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":633,"old":286,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,0,3,3,0],"matrix_rows":[384,200,1,2,4,392,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,328,0,0,328,384,200]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,2,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":638,"old":286,"rank":2,"right":{"linear_Z4":[3,3,1,2,0,0,3,3,2],"matrix_rows":[451,4,257,258,12,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[195,195,12,4,0,0,195,195,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":558,"old":287,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":560,"old":287,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,33,3,72,130,2,12,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,8,12,0,0,0,0,0]},"new":632,"old":287,"rank":4,"right":{"linear_Z4":[3,3,1,1,0,0,3,0,2],"matrix_rows":[23,20,192,392,37,54,456,32,256],"offset":3,"phase":2,"quadratic_rows":[51,35,20,72,5,3,328,256,192]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,65,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":636,"old":287,"rank":2,"right":{"linear_Z4":[3,0,2,3,3,0,2,1,2],"matrix_rows":[81,392,65,2,12,256,80,32,384],"offset":49,"phase":3,"quadratic_rows":[17,0,8,140,17,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":288,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,68,3,4,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":672,"old":288,"rank":3,"right":{"linear_Z4":[2,0,1,1,1,2,2,0,0],"matrix_rows":[68,18,8,5,64,80,40,128,256],"offset":41,"phase":3,"quadratic_rows":[4,80,21,40,86,8,18,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,1,130,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":716,"old":288,"rank":3,"right":{"linear_Z4":[2,1,1,0,2,3,0,2,3],"matrix_rows":[18,424,384,5,22,16,256,416,64],"offset":123,"phase":0,"quadratic_rows":[4,6,7,160,0,40,0,264,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":289,"rank":1,"right":{"linear_Z4":[1,0,1,3,3,0,0,3,2],"matrix_rows":[397,257,18,276,264,256,32,320,384],"offset":171,"phase":1,"quadratic_rows":[141,16,157,141,22,0,0,141,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,18,33,4,70,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":673,"old":289,"rank":3,"right":{"linear_Z4":[2,0,1,0,2,0,0,3,2],"matrix_rows":[196,471,157,325,320,64,336,96,384],"offset":0,"phase":0,"quadratic_rows":[14,149,143,149,10,0,0,142,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,39,71,129,7,262,2,4],"offset":0,"phase":0,"quadratic_rows":[7,1,1,0,0,0,0,0,0]},"new":717,"old":289,"rank":3,"right":{"linear_Z4":[0,0,2,3,3,2,0,3,3],"matrix_rows":[268,444,60,21,134,32,56,288,320],"offset":353,"phase":2,"quadratic_rows":[20,132,59,188,157,140,0,442,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":290,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,3,0,3,2],"matrix_rows":[398,33,258,292,264,16,256,320,384],"offset":205,"phase":1,"quadratic_rows":[32,142,174,142,0,37,0,142,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,39,71,135,2,261,1,4],"offset":0,"phase":0,"quadratic_rows":[2,7,2,0,0,0,0,0,0]},"new":680,"old":290,"rank":3,"right":{"linear_Z4":[0,0,2,3,0,3,0,3,1],"matrix_rows":[172,268,300,133,38,256,296,272,320],"offset":354,"phase":2,"quadratic_rows":[132,36,299,428,0,174,0,169,268]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,21,34,4,66,133,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":726,"old":290,"rank":3,"right":{"linear_Z4":[0,2,1,0,0,2,0,3,2],"matrix_rows":[487,196,174,320,326,64,80,352,384],"offset":0,"phase":0,"quadratic_rows":[166,13,143,166,0,9,0,141,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":291,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,130,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":681,"old":291,"rank":3,"right":{"linear_Z4":[1,2,1,0,3,2,0,2,3],"matrix_rows":[33,408,384,37,6,32,256,400,64],"offset":123,"phase":0,"quadratic_rows":[5,4,7,144,24,0,0,264,384]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,4,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":727,"old":291,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,1,2,0,0],"matrix_rows":[33,68,8,64,6,96,24,128,256],"offset":50,"phase":3,"quadratic_rows":[96,4,38,24,8,101,33,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":292,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,0,0,3,0],"matrix_rows":[158,1,274,276,264,256,32,64,384],"offset":45,"phase":0,"quadratic_rows":[0,398,398,414,392,0,0,414,158]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,67,5,128,256,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":704,"old":292,"rank":3,"right":{"linear_Z4":[0,0,0,2,2,0,0,1,3],"matrix_rows":[158,14,272,153,266,268,256,32,64],"offset":1,"phase":1,"quadratic_rows":[152,408,408,263,263,0,0,135,286]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,4,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":752,"old":292,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,0,2],"matrix_rows":[71,398,150,64,322,324,256,96,384],"offset":67,"phase":1,"quadratic_rows":[6,31,31,134,134,0,0,24,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":293,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,66,100,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,70,102,0,0,37,6,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,128,258,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":705,"old":293,"rank":3,"right":{"linear_Z4":[3,3,3,0,0,2,0,2,3],"matrix_rows":[384,6,393,385,98,68,256,16,64],"offset":70,"phase":1,"quadratic_rows":[9,102,70,129,0,2,6,264,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,134,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":753,"old":293,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,1,2,1,2],"matrix_rows":[392,36,68,9,38,64,256,80,384],"offset":248,"phase":3,"quadratic_rows":[8,36,2,137,0,34,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":294,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,18,84,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,16,85,0,22,0,5,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,37,66,129,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":714,"old":294,"rank":3,"right":{"linear_Z4":[2,2,0,3,1,2,0,1,2],"matrix_rows":[116,392,68,21,10,32,256,96,384],"offset":217,"phase":1,"quadratic_rows":[20,8,1,138,17,0,0,136,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,68,129,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":760,"old":294,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,0,2,3],"matrix_rows":[5,384,394,81,386,68,256,64,32],"offset":69,"phase":1,"quadratic_rows":[85,10,69,130,1,0,5,264,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":295,"rank":1,"right":{"linear_Z4":[1,0,1,3,0,0,0,3,0],"matrix_rows":[173,289,2,292,264,16,256,64,384],"offset":75,"phase":0,"quadratic_rows":[397,0,397,429,0,392,0,429,173]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,17,39,66,129,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":715,"old":295,"rank":3,"right":{"linear_Z4":[3,2,3,0,0,0,2,0,2],"matrix_rows":[71,397,165,321,64,324,256,80,384],"offset":67,"phase":1,"quadratic_rows":[47,5,47,133,0,133,0,40,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,16,35,67,128,6,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":761,"old":295,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,1,3],"matrix_rows":[13,173,288,265,170,268,256,16,64],"offset":2,"phase":1,"quadratic_rows":[424,168,424,263,0,263,0,135,301]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,136,262,5,3,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":296,"rank":5,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,1],"matrix_rows":[65,66,68,8,384,32,96,256,112],"offset":431,"phase":1,"quadratic_rows":[96,32,64,256,0,3,5,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,132,258,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":414,"old":296,"rank":4,"right":{"linear_Z4":[1,1,2,0,0,2,2,0,1],"matrix_rows":[6,5,8,384,103,64,32,256,112],"offset":389,"phase":0,"quadratic_rows":[99,35,64,256,0,3,5,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,132,258,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":416,"old":296,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,1],"matrix_rows":[5,6,8,384,32,96,68,256,112],"offset":484,"phase":1,"quadratic_rows":[36,100,67,256,0,3,6,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,132,258,3,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":417,"old":296,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,2,0,0,1],"matrix_rows":[3,6,8,384,64,34,96,256,112],"offset":484,"phase":1,"quadratic_rows":[66,37,98,256,0,6,5,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,132,259,2,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":419,"old":296,"rank":4,"right":{"linear_Z4":[2,0,0,0,0,2,2,0,1],"matrix_rows":[3,5,8,384,97,64,32,256,112],"offset":388,"phase":3,"quadratic_rows":[102,65,33,256,0,5,3,256,392]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":305,"old":297,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,2,0],"matrix_rows":[144,33,34,4,8,176,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":306,"old":297,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":307,"old":297,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":308,"old":298,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":309,"old":298,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":310,"old":298,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":308,"old":299,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,2],"matrix_rows":[272,33,34,4,8,304,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":311,"old":299,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":312,"old":299,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":305,"old":300,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":313,"old":300,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":314,"old":300,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":309,"old":301,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,0,2],"matrix_rows":[315,257,258,4,328,336,352,256,128],"offset":0,"phase":0,"quadratic_rows":[59,59,0,123,123,123,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":311,"old":301,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,0,2],"matrix_rows":[315,321,322,4,328,272,288,256,128],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,59,59,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":315,"old":301,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,2,1,0,2],"matrix_rows":[347,289,290,4,264,304,256,320,128],"offset":0,"phase":0,"quadratic_rows":[123,123,0,91,123,19,91,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":306,"old":302,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,1,2,4,200,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,64,64,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":313,"old":302,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,65,66,4,200,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":316,"old":302,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":307,"old":303,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,2,0],"matrix_rows":[187,193,194,4,200,144,160,128,256],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,59,59,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":314,"old":303,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,2,0],"matrix_rows":[187,129,130,4,200,208,224,128,256],"offset":0,"phase":0,"quadratic_rows":[59,59,0,123,123,123,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":316,"old":303,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,2,1,2,0],"matrix_rows":[219,161,162,4,136,176,128,192,256],"offset":0,"phase":0,"quadratic_rows":[123,123,0,91,123,19,91,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":310,"old":304,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,2],"matrix_rows":[264,65,66,4,328,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":312,"old":304,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,2],"matrix_rows":[264,1,2,4,328,80,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,64,64,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":315,"old":304,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":563,"old":305,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":565,"old":305,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,65,128,3,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":643,"old":305,"rank":2,"right":{"linear_Z4":[3,2,3,3,3,0,2,0,2],"matrix_rows":[30,323,321,66,260,264,272,32,128],"offset":3,"phase":2,"quadratic_rows":[3,285,286,286,286,0,0,0,30]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[16,35,72,136,257,2,12,3,4],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]},"new":647,"old":305,"rank":4,"right":{"linear_Z4":[2,0,3,3,1,0,3,2,0],"matrix_rows":[178,34,320,76,19,128,324,328,160],"offset":281,"phase":0,"quadratic_rows":[18,1,268,268,17,0,320,0,76]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":318,"old":306,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":324,"old":306,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":320,"old":307,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":322,"old":307,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":563,"old":308,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":564,"old":308,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[18,35,4,8,66,131,257,1,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":642,"old":308,"rank":4,"right":{"linear_Z4":[3,3,2,2,3,0,1,2,3],"matrix_rows":[322,273,4,8,387,256,400,288,192],"offset":14,"phase":3,"quadratic_rows":[147,451,0,0,145,0,450,83,322]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[16,35,72,136,257,2,12,4,3],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]},"new":645,"old":308,"rank":4,"right":{"linear_Z4":[2,0,3,3,1,0,3,0,2],"matrix_rows":[306,34,192,76,19,256,196,200,288],"offset":281,"phase":0,"quadratic_rows":[18,1,140,140,17,0,192,76,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":318,"old":309,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":323,"old":309,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":319,"old":310,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":322,"old":310,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":320,"old":311,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":321,"old":311,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":317,"old":312,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":324,"old":312,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":319,"old":313,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":321,"old":313,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":317,"old":314,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":323,"old":314,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":562,"old":315,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":565,"old":315,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":641,"old":315,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,0,1,2,0],"matrix_rows":[3,64,33,50,20,8,32,192,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,192,64,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,65,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":646,"old":315,"rank":2,"right":{"linear_Z4":[3,0,2,3,3,0,1,2,2],"matrix_rows":[145,328,129,2,12,256,144,32,320],"offset":49,"phase":3,"quadratic_rows":[17,0,8,76,17,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":562,"old":316,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":564,"old":316,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[16,35,4,72,1,2,128,256,8],"offset":0,"phase":0,"quadratic_rows":[3,3,0,8,0,0,0,0,0]},"new":640,"old":316,"rank":4,"right":{"linear_Z4":[2,0,2,1,3,3,0,0,2],"matrix_rows":[50,2,4,8,19,32,264,64,128],"offset":55,"phase":1,"quadratic_rows":[18,1,0,264,49,48,0,0,8]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":644,"old":316,"rank":2,"right":{"linear_Z4":[3,0,2,3,3,0,1,2,2],"matrix_rows":[273,200,257,2,12,128,272,32,192],"offset":49,"phase":3,"quadratic_rows":[17,0,8,76,17,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":317,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,2,0,0,2],"matrix_rows":[283,289,290,4,264,304,256,320,128],"offset":1,"phase":1,"quadratic_rows":[59,59,0,27,59,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,18,1,32,64,132,260,2,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":674,"old":317,"rank":3,"right":{"linear_Z4":[2,0,3,2,2,1,0,3,2],"matrix_rows":[129,135,288,133,128,40,16,256,320],"offset":484,"phase":1,"quadratic_rows":[130,5,6,32,0,40,0,129,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,19,2,32,68,128,260,1,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":724,"old":317,"rank":3,"right":{"linear_Z4":[0,2,3,2,1,2,0,3,2],"matrix_rows":[135,130,272,128,134,24,256,32,320],"offset":484,"phase":1,"quadratic_rows":[6,129,5,16,24,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":318,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,2,0,2,0],"matrix_rows":[155,161,162,4,136,176,128,192,256],"offset":1,"phase":1,"quadratic_rows":[59,59,0,27,59,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,18,1,32,64,132,260,4,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":675,"old":318,"rank":3,"right":{"linear_Z4":[2,0,3,2,2,1,0,2,3],"matrix_rows":[257,263,160,261,256,40,16,128,192],"offset":484,"phase":1,"quadratic_rows":[258,5,6,32,0,40,0,0,257]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,19,2,32,68,128,260,4,1],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":725,"old":318,"rank":3,"right":{"linear_Z4":[0,2,3,2,1,2,0,2,3],"matrix_rows":[263,258,144,256,262,24,128,32,192],"offset":484,"phase":1,"quadratic_rows":[6,257,5,16,24,0,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":319,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,22,7,34,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":682,"old":319,"rank":3,"right":{"linear_Z4":[3,0,3,1,0,3,0,0,0],"matrix_rows":[20,42,39,21,54,40,64,128,256],"offset":4,"phase":1,"quadratic_rows":[51,57,20,10,39,51,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[13,20,7,33,1,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":718,"old":319,"rank":3,"right":{"linear_Z4":[0,3,3,1,3,0,0,0,0],"matrix_rows":[25,36,23,53,38,24,64,128,256],"offset":4,"phase":1,"quadratic_rows":[58,51,36,9,51,23,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":320,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,2,0,0,0],"matrix_rows":[19,289,290,4,8,304,256,64,384],"offset":1,"phase":1,"quadratic_rows":[307,307,0,0,307,19,0,0,19]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,3,34,64,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":683,"old":320,"rank":3,"right":{"linear_Z4":[3,3,1,0,0,0,0,0,2],"matrix_rows":[15,12,288,69,78,64,16,256,384],"offset":3,"phase":2,"quadratic_rows":[75,67,12,5,0,0,3,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[10,18,3,33,68,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":719,"old":320,"rank":3,"right":{"linear_Z4":[3,3,1,0,0,0,0,0,2],"matrix_rows":[12,15,272,77,70,64,256,32,384],"offset":3,"phase":2,"quadratic_rows":[67,75,12,6,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":321,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,2],"matrix_rows":[272,33,34,4,8,304,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,130,4,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":712,"old":321,"rank":3,"right":{"linear_Z4":[3,3,1,2,0,2,0,0,3],"matrix_rows":[3,16,308,65,74,20,64,256,128],"offset":167,"phase":1,"quadratic_rows":[67,75,292,2,32,276,3,0,292]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,2,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":754,"old":321,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,2,0,0,3],"matrix_rows":[3,288,308,73,66,292,64,256,128],"offset":133,"phase":1,"quadratic_rows":[75,67,20,1,36,272,3,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":322,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,2,0],"matrix_rows":[144,33,34,4,8,176,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,130,4,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":713,"old":322,"rank":3,"right":{"linear_Z4":[3,3,1,2,0,2,0,3,0],"matrix_rows":[3,16,180,65,74,20,64,128,256],"offset":167,"phase":1,"quadratic_rows":[67,75,164,2,32,148,3,164,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,2,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":755,"old":322,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,2,0,3,0],"matrix_rows":[3,160,180,73,66,164,64,128,256],"offset":133,"phase":1,"quadratic_rows":[75,67,20,1,36,144,3,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":323,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,2,0,0,0],"matrix_rows":[24,33,34,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,32,0,88,120,19,24,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,64,134,4,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":706,"old":323,"rank":3,"right":{"linear_Z4":[0,0,1,2,0,3,3,0,2],"matrix_rows":[258,16,100,1,256,20,56,64,384],"offset":230,"phase":1,"quadratic_rows":[0,0,116,48,108,124,116,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,36,64,132,6,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":762,"old":323,"rank":3,"right":{"linear_Z4":[0,0,1,2,3,2,2,0,2],"matrix_rows":[257,96,20,256,2,100,56,64,384],"offset":192,"phase":2,"quadratic_rows":[0,0,116,48,124,28,20,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":324,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,2,0,0,2],"matrix_rows":[24,33,34,4,264,304,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,32,0,280,312,19,0,0,24]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[15,17,5,32,67,2,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":707,"old":324,"rank":3,"right":{"linear_Z4":[3,1,1,0,2,3,0,0,3],"matrix_rows":[307,293,17,21,306,56,256,320,384],"offset":211,"phase":3,"quadratic_rows":[19,3,308,48,301,316,0,0,308]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[10,23,6,32,65,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":763,"old":324,"rank":3,"right":{"linear_Z4":[1,1,1,0,3,0,0,0,0],"matrix_rows":[22,307,290,305,294,56,256,320,384],"offset":222,"phase":2,"quadratic_rows":[3,291,308,48,316,30,0,0,22]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,2,4,72,144,19,11,259,3],"offset":0,"phase":0,"quadratic_rows":[24,24,0,11,19,0,0,0,0]},"new":1,"old":325,"rank":5,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[353,98,4,264,272,256,320,288,384],"offset":254,"phase":1,"quadratic_rows":[96,96,0,64,32,19,11,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,1,68,136,11,7,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":414,"old":325,"rank":4,"right":{"linear_Z4":[1,3,0,0,0,2,2,0,1],"matrix_rows":[358,101,264,272,263,256,320,288,384],"offset":204,"phase":0,"quadratic_rows":[355,355,0,64,32,19,11,0,259]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,2,35,72,132,7,11,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":416,"old":325,"rank":4,"right":{"linear_Z4":[2,2,2,0,1,0,0,0,3],"matrix_rows":[117,374,272,264,256,276,320,288,384],"offset":254,"phase":3,"quadratic_rows":[372,372,19,64,55,19,11,0,259]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,35,5,73,129,2,10,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":418,"old":325,"rank":4,"right":{"linear_Z4":[2,0,0,2,3,2,2,0,3],"matrix_rows":[382,125,283,264,287,256,320,288,384],"offset":200,"phase":3,"quadratic_rows":[120,120,24,327,55,19,11,0,264]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,2,35,68,136,11,7,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":420,"old":325,"rank":4,"right":{"linear_Z4":[2,2,2,1,0,0,0,0,3],"matrix_rows":[109,366,264,272,256,268,320,288,384],"offset":254,"phase":3,"quadratic_rows":[364,364,11,79,32,19,11,0,259]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":334,"old":326,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":335,"old":326,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":336,"old":326,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":337,"old":327,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":338,"old":327,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":339,"old":327,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":337,"old":328,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,2,0],"matrix_rows":[132,33,2,164,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":340,"old":328,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":341,"old":328,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":334,"old":329,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,2],"matrix_rows":[260,33,2,292,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":342,"old":329,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":343,"old":329,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":338,"old":330,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,2,0],"matrix_rows":[130,65,194,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,66,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":340,"old":330,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,2,0],"matrix_rows":[130,1,194,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,64,0,0,64,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":344,"old":330,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":335,"old":331,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,2],"matrix_rows":[258,65,322,4,72,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,66,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":342,"old":331,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,2],"matrix_rows":[258,1,322,68,8,16,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,66,64,0,0,64,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":345,"old":331,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":336,"old":332,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,0,2],"matrix_rows":[303,257,322,324,264,16,352,256,128],"offset":0,"phase":0,"quadratic_rows":[47,111,111,47,0,111,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":343,"old":332,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,0,2],"matrix_rows":[303,321,322,260,328,16,288,256,128],"offset":0,"phase":0,"quadratic_rows":[111,111,47,111,0,47,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":345,"old":332,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,1,0,2],"matrix_rows":[335,289,258,292,296,16,256,320,128],"offset":0,"phase":0,"quadratic_rows":[111,79,111,111,0,13,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":339,"old":333,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,2,0],"matrix_rows":[175,129,194,196,136,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[47,111,111,47,0,111,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":341,"old":333,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,2,0],"matrix_rows":[175,193,194,132,200,16,160,128,256],"offset":0,"phase":0,"quadratic_rows":[111,111,47,111,0,47,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":344,"old":333,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,1,2,0],"matrix_rows":[207,161,130,164,168,16,128,192,256],"offset":0,"phase":0,"quadratic_rows":[111,79,111,111,0,13,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":566,"old":334,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":567,"old":334,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[18,35,66,129,4,257,8,3,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":649,"old":334,"rank":4,"right":{"linear_Z4":[1,2,1,0,2,0,2,2,0],"matrix_rows":[266,15,16,64,393,130,388,256,288],"offset":12,"phase":2,"quadratic_rows":[391,389,399,388,0,0,0,15,15]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[16,40,69,129,264,4,10,2,1],"offset":0,"phase":0,"quadratic_rows":[4,10,5,2,0,0,0,0,0]},"new":651,"old":334,"rank":4,"right":{"linear_Z4":[2,3,0,3,3,3,3,0,1],"matrix_rows":[300,192,260,82,13,194,288,256,208],"offset":93,"phase":1,"quadratic_rows":[12,146,257,41,146,40,192,82,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":347,"old":335,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":353,"old":335,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":349,"old":336,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":351,"old":336,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":486,"old":337,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":488,"old":337,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,2,0],"matrix_rows":[136,1,2,12,128,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":566,"old":337,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[20,44,68,131,10,259,2,3,7],"offset":0,"phase":0,"quadratic_rows":[5,14,15,14,0,0,0,0,0]},"new":648,"old":337,"rank":4,"right":{"linear_Z4":[3,2,3,0,2,0,3,0,3],"matrix_rows":[392,472,215,458,393,474,388,128,160],"offset":466,"phase":1,"quadratic_rows":[351,197,343,321,197,0,351,18,333]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":347,"old":338,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":352,"old":338,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":348,"old":339,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":351,"old":339,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":349,"old":340,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":350,"old":340,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":346,"old":341,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":353,"old":341,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":348,"old":342,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":350,"old":342,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":346,"old":343,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":352,"old":343,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":462,"old":344,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":463,"old":344,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":567,"old":344,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[17,34,65,128,4,256,8,10,1],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":650,"old":344,"rank":4,"right":{"linear_Z4":[3,0,3,0,2,0,0,1,2],"matrix_rows":[261,2,16,192,257,128,260,8,32],"offset":39,"phase":2,"quadratic_rows":[5,128,5,0,0,0,128,194,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":463,"old":345,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":467,"old":345,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":485,"old":345,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":489,"old":345,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":354,"old":346,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,2,0,0,0],"matrix_rows":[13,289,2,292,296,16,256,64,384],"offset":1,"phase":1,"quadratic_rows":[301,0,301,301,0,13,0,0,13]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,3,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":688,"old":346,"rank":3,"right":{"linear_Z4":[3,3,0,0,1,0,0,0,2],"matrix_rows":[27,24,288,81,90,4,64,256,384],"offset":3,"phase":2,"quadratic_rows":[75,67,0,17,24,0,3,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,1,128,3,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":720,"old":346,"rank":3,"right":{"linear_Z4":[3,1,0,3,2,0,0,0,2],"matrix_rows":[18,9,260,83,64,256,88,32,384],"offset":3,"phase":2,"quadratic_rows":[91,3,0,89,9,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":354,"old":347,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[10,18,35,69,4,7,133,261,5],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":689,"old":347,"rank":3,"right":{"linear_Z4":[3,3,0,2,1,1,0,0,2],"matrix_rows":[20,23,56,297,290,60,256,320,384],"offset":221,"phase":2,"quadratic_rows":[319,311,59,37,23,47,0,0,3]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,19,3,36,5,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,5,2,0,0,0,0,0,0]},"new":721,"old":347,"rank":3,"right":{"linear_Z4":[3,0,2,3,1,2,0,0,0],"matrix_rows":[7,55,29,53,6,56,64,128,256],"offset":6,"phase":2,"quadratic_rows":[25,52,26,45,55,26,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":348,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,2,0,0,2],"matrix_rows":[271,289,258,292,296,16,256,320,128],"offset":1,"phase":1,"quadratic_rows":[47,15,47,47,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,68,1,130,258,4,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":696,"old":348,"rank":3,"right":{"linear_Z4":[2,2,2,0,3,1,0,3,2],"matrix_rows":[129,288,153,145,34,4,128,256,320],"offset":434,"phase":1,"quadratic_rows":[136,32,0,17,24,34,0,129,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,69,4,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":728,"old":348,"rank":3,"right":{"linear_Z4":[0,2,1,2,3,2,0,3,2],"matrix_rows":[153,260,136,128,6,256,152,32,320],"offset":434,"phase":1,"quadratic_rows":[24,4,6,129,17,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":349,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,2,0,2,0],"matrix_rows":[143,161,130,164,168,16,128,192,256],"offset":1,"phase":1,"quadratic_rows":[47,15,47,47,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,68,1,130,258,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":697,"old":349,"rank":3,"right":{"linear_Z4":[2,2,2,0,3,1,0,2,3],"matrix_rows":[257,160,281,273,34,4,256,128,192],"offset":434,"phase":1,"quadratic_rows":[264,32,0,17,24,34,0,0,257]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,69,4,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":729,"old":349,"rank":3,"right":{"linear_Z4":[0,2,1,2,3,2,0,2,3],"matrix_rows":[281,132,264,256,6,128,280,32,192],"offset":434,"phase":1,"quadratic_rows":[24,4,6,257,17,0,0,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":354,"old":350,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,2,0,0,2],"matrix_rows":[6,33,258,292,40,16,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,262,294,32,0,13,0,0,6]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,18,34,7,1,69,133,261,5],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":704,"old":350,"rank":3,"right":{"linear_Z4":[0,3,3,1,1,2,0,0,2],"matrix_rows":[56,23,17,57,266,300,256,320,384],"offset":245,"phase":2,"quadratic_rows":[62,287,319,47,23,13,0,0,6]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[14,16,35,71,4,5,134,262,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":736,"old":350,"rank":3,"right":{"linear_Z4":[2,0,3,3,2,1,0,0,1],"matrix_rows":[28,25,301,293,38,256,312,320,384],"offset":236,"phase":1,"quadratic_rows":[16,36,310,24,301,310,0,0,308]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":354,"old":351,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[6,33,66,100,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,70,102,32,0,13,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,34,68,3,129,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":705,"old":351,"rank":3,"right":{"linear_Z4":[0,3,3,0,1,0,0,0,2],"matrix_rows":[48,54,264,1,114,84,256,64,384],"offset":3,"phase":2,"quadratic_rows":[0,70,102,0,48,20,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,64,134,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":737,"old":351,"rank":3,"right":{"linear_Z4":[0,2,0,0,2,2,2,0,2],"matrix_rows":[257,20,116,256,38,64,8,112,384],"offset":48,"phase":2,"quadratic_rows":[0,36,2,0,0,2,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":352,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,2],"matrix_rows":[260,33,2,292,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,2,132,257,1,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":712,"old":352,"rank":3,"right":{"linear_Z4":[2,2,2,1,3,0,0,2,3],"matrix_rows":[136,260,308,1,10,276,128,256,192],"offset":345,"phase":1,"quadratic_rows":[0,8,288,10,48,20,0,0,260]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,130,4,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":744,"old":352,"rank":3,"right":{"linear_Z4":[3,2,0,3,3,2,0,0,3],"matrix_rows":[9,308,288,67,64,256,72,304,128],"offset":35,"phase":1,"quadratic_rows":[75,1,48,73,20,260,9,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":353,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,2,0],"matrix_rows":[132,33,2,164,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,2,132,257,4,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":713,"old":353,"rank":3,"right":{"linear_Z4":[2,2,2,1,3,0,0,3,2],"matrix_rows":[264,132,180,1,10,148,256,128,320],"offset":345,"phase":1,"quadratic_rows":[0,8,160,10,48,20,0,132,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,130,4,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":745,"old":353,"rank":3,"right":{"linear_Z4":[3,2,0,3,3,2,0,3,0],"matrix_rows":[9,180,160,67,64,128,72,176,256],"offset":35,"phase":1,"quadratic_rows":[75,1,48,73,20,132,9,160,0]}},{"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,16,13,11,265,9],"offset":0,"phase":0,"quadratic_rows":[6,11,13,6,0,0,0,0,0]},"new":1,"old":354,"rank":5,"right":{"linear_Z4":[2,0,0,2,2,0,0,0,0],"matrix_rows":[353,258,260,104,16,256,320,288,384],"offset":254,"phase":1,"quadratic_rows":[96,64,32,96,0,13,11,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,34,68,137,1,13,11,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":415,"old":354,"rank":4,"right":{"linear_Z4":[1,0,0,3,0,2,2,0,1],"matrix_rows":[376,258,260,113,281,320,288,256,384],"offset":102,"phase":0,"quadratic_rows":[361,64,32,361,0,13,11,0,265]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,77,8,4,137,11,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":416,"old":354,"rank":4,"right":{"linear_Z4":[0,0,1,0,2,0,0,0,1],"matrix_rows":[341,258,260,92,256,320,276,288,384],"offset":51,"phase":0,"quadratic_rows":[84,64,285,84,13,0,11,0,260]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,43,68,8,2,13,137,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":417,"old":354,"rank":4,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,1],"matrix_rows":[307,258,260,58,256,274,288,320,384],"offset":85,"phase":0,"quadratic_rows":[50,283,32,50,11,13,0,0,258]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,35,69,137,1,12,10,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":418,"old":354,"rank":4,"right":{"linear_Z4":[1,1,1,3,0,2,2,0,1],"matrix_rows":[382,258,260,119,287,320,288,256,384],"offset":102,"phase":0,"quadratic_rows":[361,86,54,361,6,13,11,0,265]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":363,"old":355,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":364,"old":355,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,2,0,0,0],"matrix_rows":[49,33,2,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":365,"old":355,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":366,"old":356,"rank":1,"right":{"linear_Z4":[0,1,0,1,1,2,1,1,2],"matrix_rows":[474,33,258,36,296,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,218,32,250,218,13,218,218,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":367,"old":356,"rank":1,"right":{"linear_Z4":[0,1,0,1,1,1,2,1,2],"matrix_rows":[442,1,258,4,328,336,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,186,0,250,250,250,56,186,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":368,"old":356,"rank":1,"right":{"linear_Z4":[0,1,0,1,1,1,2,1,2],"matrix_rows":[442,65,258,68,264,336,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,186,64,186,250,186,21,186,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":366,"old":357,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":369,"old":357,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,0,2,1,2],"matrix_rows":[407,321,258,324,8,336,32,256,384],"offset":0,"phase":0,"quadratic_rows":[215,151,215,0,215,0,21,151,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":370,"old":357,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,0,2,1,2],"matrix_rows":[407,257,258,260,72,336,96,256,384],"offset":0,"phase":0,"quadratic_rows":[151,151,151,64,215,64,56,151,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":363,"old":358,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,2,0,0],"matrix_rows":[68,33,2,100,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":371,"old":358,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,0],"matrix_rows":[100,33,2,68,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,0,32,21,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":372,"old":358,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":367,"old":359,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":369,"old":359,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":373,"old":359,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":364,"old":360,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":371,"old":360,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":374,"old":360,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[49,33,2,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,16,16,13,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":365,"old":361,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":372,"old":361,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,2,0,0],"matrix_rows":[100,1,2,68,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":374,"old":361,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":368,"old":362,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":370,"old":362,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":373,"old":362,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,0,1,2],"matrix_rows":[399,289,258,292,296,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[175,143,175,175,0,13,0,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":568,"old":363,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":569,"old":363,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,45,67,131,6,259,3,10,2],"offset":0,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]},"new":653,"old":363,"rank":4,"right":{"linear_Z4":[2,3,2,2,3,0,3,3,0],"matrix_rows":[415,469,458,346,73,474,68,64,96],"offset":466,"phase":1,"quadratic_rows":[2,215,10,212,218,0,218,218,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[16,40,69,129,264,4,1,10,2],"offset":0,"phase":0,"quadratic_rows":[4,10,5,2,0,0,0,0,0]},"new":655,"old":363,"rank":4,"right":{"linear_Z4":[2,3,0,3,3,3,1,3,0],"matrix_rows":[108,384,68,146,13,386,96,64,400],"offset":93,"phase":1,"quadratic_rows":[12,274,65,41,274,40,68,384,146]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":376,"old":364,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":382,"old":364,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":378,"old":365,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":380,"old":365,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,0,3,2],"matrix_rows":[431,257,258,260,264,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[175,175,175,175,0,175,0,175,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":508,"old":366,"rank":1,"right":{"linear_Z4":[3,3,1,2,1,0,3,3,2],"matrix_rows":[455,257,258,276,24,256,32,320,384],"offset":57,"phase":0,"quadratic_rows":[199,199,215,16,28,0,199,199,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":512,"old":366,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,33,2,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":568,"old":366,"rank":1,"right":{"linear_Z4":[1,3,3,2,3,0,1,3,2],"matrix_rows":[407,321,258,260,72,272,32,256,384],"offset":147,"phase":0,"quadratic_rows":[215,151,151,64,151,0,73,151,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[20,34,68,129,8,1,261,5,15],"offset":0,"phase":0,"quadratic_rows":[14,15,11,15,0,0,0,0,0]},"new":652,"old":366,"rank":4,"right":{"linear_Z4":[1,0,1,0,0,0,2,2,3],"matrix_rows":[328,2,333,272,169,256,164,32,192],"offset":34,"phase":0,"quadratic_rows":[485,256,493,132,256,5,133,77,279]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":376,"old":367,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,33,2,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,0,0,88,120,49,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":381,"old":367,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[40,1,2,20,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,16,120,28,104,40,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":377,"old":368,"rank":1,"right":{"linear_Z4":[1,3,3,3,2,1,0,3,2],"matrix_rows":[399,289,258,260,264,48,256,64,384],"offset":99,"phase":0,"quadratic_rows":[175,143,143,143,32,49,0,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":380,"old":368,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,2,84,24,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,0,85,16,28,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":378,"old":369,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,2,84,24,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,0,85,16,28,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":379,"old":369,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,2,0,0,0],"matrix_rows":[49,33,2,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":375,"old":370,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[40,1,2,20,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,16,120,28,104,40,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":382,"old":370,"rank":1,"right":{"linear_Z4":[0,1,1,2,2,0,0,1,2],"matrix_rows":[166,33,258,260,8,48,256,320,384],"offset":240,"phase":0,"quadratic_rows":[32,422,422,0,32,407,0,422,166]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":377,"old":371,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":379,"old":371,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":375,"old":372,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,0,3,2],"matrix_rows":[431,257,258,260,264,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[175,175,175,175,0,175,0,175,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":381,"old":372,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":465,"old":373,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":470,"old":373,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[2,1,66,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":569,"old":373,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[20,42,68,129,2,1,5,264,8],"offset":0,"phase":0,"quadratic_rows":[4,10,1,2,0,0,0,0,0]},"new":654,"old":373,"rank":4,"right":{"linear_Z4":[3,2,3,0,3,0,1,0,3],"matrix_rows":[72,258,77,402,105,274,100,32,256],"offset":5,"phase":2,"quadratic_rows":[37,384,45,68,144,5,72,18,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":462,"old":374,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":465,"old":374,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":507,"old":374,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":508,"old":374,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":375,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,3,0],"matrix_rows":[134,33,258,292,40,16,256,320,384],"offset":1,"phase":1,"quadratic_rows":[32,390,422,32,0,13,0,390,134]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,37,64,133,2,263,1,6],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":690,"old":375,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,2,0,1,2],"matrix_rows":[166,32,294,133,290,256,40,272,320],"offset":40,"phase":2,"quadratic_rows":[132,160,1,32,0,138,0,163,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,2,20,35,68,131,4,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":730,"old":375,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[489,170,196,320,64,328,80,352,384],"offset":9,"phase":0,"quadratic_rows":[168,168,128,3,0,3,0,135,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":376,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[49,33,2,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,16,16,13,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,64,129,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":691,"old":376,"rank":3,"right":{"linear_Z4":[1,0,3,2,1,2,0,2,3],"matrix_rows":[33,390,384,49,256,388,24,32,64],"offset":219,"phase":0,"quadratic_rows":[17,132,6,16,25,0,0,258,384]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,2,32,68,5,1,128,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":731,"old":376,"rank":3,"right":{"linear_Z4":[0,1,2,2,1,1,2,0,0],"matrix_rows":[33,2,80,64,6,24,96,128,256],"offset":100,"phase":3,"quadratic_rows":[96,6,2,16,56,113,33,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":377,"rank":1,"right":{"linear_Z4":[0,1,0,3,3,0,0,1,2],"matrix_rows":[394,1,258,20,280,256,288,320,384],"offset":240,"phase":2,"quadratic_rows":[0,138,16,154,28,0,0,138,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,18,38,4,65,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":698,"old":377,"rank":3,"right":{"linear_Z4":[2,0,2,0,1,0,0,3,2],"matrix_rows":[208,471,157,337,320,324,64,96,384],"offset":0,"phase":0,"quadratic_rows":[26,149,10,149,155,0,0,154,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,35,64,133,5,262,4,2],"offset":0,"phase":0,"quadratic_rows":[7,5,3,0,0,0,0,0,0]},"new":722,"old":377,"rank":3,"right":{"linear_Z4":[0,2,1,0,1,0,0,3,2],"matrix_rows":[274,292,438,21,38,288,152,32,320],"offset":403,"phase":3,"quadratic_rows":[20,128,389,144,25,384,0,430,164]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":378,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,18,33,68,5,2,4,128,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":699,"old":378,"rank":3,"right":{"linear_Z4":[2,1,1,0,1,2,2,0,0],"matrix_rows":[68,2,24,5,34,80,64,128,256],"offset":41,"phase":3,"quadratic_rows":[4,34,21,80,92,2,24,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,65,1,130,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":723,"old":378,"rank":3,"right":{"linear_Z4":[2,0,3,1,2,3,0,2,3],"matrix_rows":[28,418,384,5,256,16,24,416,64],"offset":58,"phase":2,"quadratic_rows":[4,160,13,12,0,34,0,258,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":379,"rank":1,"right":{"linear_Z4":[0,0,0,1,3,0,2,0,0],"matrix_rows":[8,1,2,20,88,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,16,88,28,0,8,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,18,37,2,65,1,4,128,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":714,"old":379,"rank":3,"right":{"linear_Z4":[2,1,0,2,3,1,3,0,0],"matrix_rows":[116,2,36,21,10,96,32,128,256],"offset":45,"phase":0,"quadratic_rows":[20,10,33,2,81,36,80,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":738,"old":379,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,0,0,2,3],"matrix_rows":[17,394,384,69,256,64,392,80,32],"offset":19,"phase":1,"quadratic_rows":[85,136,1,10,81,0,17,258,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":380,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,0,1,2],"matrix_rows":[399,289,258,292,296,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[175,143,175,175,0,13,0,143,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[13,17,37,66,130,4,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":715,"old":380,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[455,200,165,321,320,324,64,80,384],"offset":17,"phase":0,"quadratic_rows":[34,133,34,128,0,133,0,170,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,64,129,6,256,2,5],"offset":0,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]},"new":739,"old":380,"rank":3,"right":{"linear_Z4":[0,0,2,2,0,2,0,1,3],"matrix_rows":[260,160,288,5,6,256,168,272,64],"offset":224,"phase":1,"quadratic_rows":[4,4,3,160,0,264,0,136,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":381,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,2,0,0],"matrix_rows":[68,33,2,100,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[10,18,36,64,128,260,4,1,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":706,"old":381,"rank":3,"right":{"linear_Z4":[3,0,1,2,0,3,2,2,3],"matrix_rows":[384,387,100,385,256,68,40,16,64],"offset":338,"phase":2,"quadratic_rows":[3,129,36,32,0,44,0,258,384]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,130,4,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":746,"old":381,"rank":3,"right":{"linear_Z4":[2,3,2,2,0,1,3,1,2],"matrix_rows":[386,68,96,3,256,64,40,80,384],"offset":248,"phase":3,"quadratic_rows":[2,131,0,32,0,104,96,130,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":382,"rank":1,"right":{"linear_Z4":[3,1,0,0,2,0,0,1,2],"matrix_rows":[147,257,258,20,24,256,288,64,384],"offset":98,"phase":1,"quadratic_rows":[403,403,16,16,399,0,0,403,147]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,37,64,131,3,256,1,7],"offset":0,"phase":0,"quadratic_rows":[2,5,6,0,0,0,0,0,0]},"new":707,"old":382,"rank":3,"right":{"linear_Z4":[0,0,2,0,2,1,0,1,3],"matrix_rows":[180,272,36,149,18,288,24,32,64],"offset":1,"phase":1,"quadratic_rows":[148,16,289,16,267,420,0,161,308]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,39,71,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":747,"old":382,"rank":3,"right":{"linear_Z4":[2,0,0,3,3,0,2,0,2],"matrix_rows":[89,410,156,64,256,328,336,96,384],"offset":19,"phase":1,"quadratic_rows":[24,152,152,31,31,0,0,6,0]}},{"left":{"linear_Z4":[2,3,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,12,13,9,16,18],"offset":0,"phase":0,"quadratic_rows":[4,18,1,8,18,0,0,0,0]},"new":1,"old":383,"rank":5,"right":{"linear_Z4":[0,0,0,2,1,0,1,0,1],"matrix_rows":[81,2,84,8,384,48,256,96,112],"offset":239,"phase":1,"quadratic_rows":[96,256,48,112,92,13,89,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[20,34,68,129,261,5,1,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":415,"old":383,"rank":4,"right":{"linear_Z4":[1,0,2,2,0,2,2,0,1],"matrix_rows":[8,2,13,384,105,256,96,64,48],"offset":99,"phase":0,"quadratic_rows":[101,256,105,36,0,13,5,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,65,132,4,261,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":416,"old":383,"rank":4,"right":{"linear_Z4":[2,0,1,2,2,0,2,0,1],"matrix_rows":[5,2,8,384,80,256,84,16,96],"offset":54,"phase":0,"quadratic_rows":[84,256,85,16,13,0,5,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,33,66,132,262,6,4,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":419,"old":383,"rank":4,"right":{"linear_Z4":[1,0,2,2,0,2,2,0,1],"matrix_rows":[2,5,8,384,97,256,96,64,48],"offset":101,"phase":0,"quadratic_rows":[101,256,97,64,0,5,13,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,65,132,4,261,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":420,"old":383,"rank":4,"right":{"linear_Z4":[2,0,1,2,2,0,2,0,1],"matrix_rows":[13,2,8,384,80,256,92,16,96],"offset":54,"phase":0,"quadratic_rows":[92,256,85,65,5,0,13,256,386]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":392,"old":384,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":393,"old":384,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":394,"old":384,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,2,0],"matrix_rows":[130,1,146,20,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":395,"old":385,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,2],"matrix_rows":[257,289,2,36,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":396,"old":385,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,2],"matrix_rows":[257,289,34,4,8,48,256,64,128],"offset":0,"phase":0,"quadratic_rows":[33,32,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":397,"old":385,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":395,"old":386,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":398,"old":386,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":399,"old":386,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":392,"old":387,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,2,0],"matrix_rows":[159,161,130,164,168,144,128,64,256],"offset":0,"phase":0,"quadratic_rows":[63,31,63,63,31,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":400,"old":387,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,1,0,2,0],"matrix_rows":[175,129,146,148,152,128,160,64,256],"offset":0,"phase":0,"quadratic_rows":[47,63,63,63,14,47,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":401,"old":387,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,2,0],"matrix_rows":[159,161,162,132,136,176,128,64,256],"offset":0,"phase":0,"quadratic_rows":[63,63,31,31,63,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":396,"old":388,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":398,"old":388,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,2],"matrix_rows":[258,1,274,20,24,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":402,"old":388,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":393,"old":389,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,2,0],"matrix_rows":[129,161,34,4,8,48,128,64,256],"offset":0,"phase":0,"quadratic_rows":[33,32,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":400,"old":389,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":403,"old":389,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,2,0],"matrix_rows":[129,161,2,36,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":394,"old":390,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":401,"old":390,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":403,"old":390,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":397,"old":391,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,1,0,0,2],"matrix_rows":[303,257,274,276,280,256,288,64,128],"offset":0,"phase":0,"quadratic_rows":[47,63,63,63,14,47,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":399,"old":391,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,0,2],"matrix_rows":[287,289,290,260,264,304,256,64,128],"offset":0,"phase":0,"quadratic_rows":[63,63,31,31,63,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":402,"old":391,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,0,2],"matrix_rows":[287,289,258,292,296,272,256,64,128],"offset":0,"phase":0,"quadratic_rows":[63,31,63,63,31,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":570,"old":392,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":571,"old":392,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[17,34,64,129,4,256,8,6,1],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"new":657,"old":392,"rank":4,"right":{"linear_Z4":[3,0,0,3,0,0,2,1,2],"matrix_rows":[265,2,144,64,257,128,4,264,32],"offset":43,"phase":2,"quadratic_rows":[9,128,0,9,128,0,0,146,0]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[20,40,69,132,266,5,1,10,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":659,"old":392,"rank":4,"right":{"linear_Z4":[3,1,1,3,3,0,2,2,0],"matrix_rows":[68,272,9,386,101,402,32,104,128],"offset":5,"phase":2,"quadratic_rows":[109,18,5,105,18,9,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":405,"old":393,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":411,"old":393,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":407,"old":394,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":409,"old":394,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,0,2],"matrix_rows":[289,257,2,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":511,"old":395,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":513,"old":395,"rank":1,"right":{"linear_Z4":[3,1,3,0,0,0,0,0,2],"matrix_rows":[15,257,266,268,256,16,288,64,128],"offset":90,"phase":0,"quadratic_rows":[271,263,263,257,0,0,0,0,15]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":570,"old":395,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[16,40,69,1,138,260,10,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":656,"old":395,"rank":4,"right":{"linear_Z4":[2,3,0,3,2,0,2,0,1],"matrix_rows":[268,144,260,210,13,194,256,80,288],"offset":95,"phase":2,"quadratic_rows":[12,18,257,265,2,0,0,0,268]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":405,"old":396,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":410,"old":396,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":406,"old":397,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,2,0],"matrix_rows":[161,129,2,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":409,"old":397,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":407,"old":398,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":408,"old":398,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,2,0],"matrix_rows":[161,129,2,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":404,"old":399,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":411,"old":399,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":406,"old":400,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,0,2],"matrix_rows":[289,257,2,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":408,"old":400,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":404,"old":401,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":410,"old":401,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":486,"old":402,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":487,"old":402,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[2,1,66,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":571,"old":402,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[16,34,69,1,128,4,8,2,256],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":658,"old":402,"rank":4,"right":{"linear_Z4":[2,1,0,3,0,3,2,2,0],"matrix_rows":[44,2,4,64,13,130,32,16,256],"offset":93,"phase":1,"quadratic_rows":[12,130,1,41,0,40,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":485,"old":403,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":490,"old":403,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":507,"old":403,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":511,"old":403,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":412,"old":404,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,16,14,3,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,4,65,128,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":589,"old":404,"rank":3,"right":{"linear_Z4":[0,3,0,0,3,0,2,0,2],"matrix_rows":[82,260,8,1,66,256,80,32,384],"offset":35,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,64,1,2,4,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":637,"old":404,"rank":3,"right":{"linear_Z4":[2,0,0,0,3,3,2,0,0],"matrix_rows":[50,2,64,19,32,4,8,128,256],"offset":31,"phase":1,"quadratic_rows":[18,1,0,0,49,48,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":412,"old":405,"rank":1,"right":{"linear_Z4":[1,1,0,0,2,0,0,0,2],"matrix_rows":[3,257,274,20,24,256,288,64,384],"offset":0,"phase":0,"quadratic_rows":[259,275,16,16,14,0,0,0,3]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,36,6,67,131,2,259,3],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":591,"old":405,"rank":3,"right":{"linear_Z4":[2,2,1,1,0,0,2,0,2],"matrix_rows":[3,75,84,257,274,92,256,288,384],"offset":218,"phase":1,"quadratic_rows":[328,344,12,31,10,0,3,0,3]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,35,3,66,130,4,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":639,"old":405,"rank":3,"right":{"linear_Z4":[1,1,0,2,2,0,2,0,2],"matrix_rows":[23,20,64,265,282,12,256,288,384],"offset":6,"phase":2,"quadratic_rows":[287,271,11,23,9,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":412,"old":406,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,2,0,0,0],"matrix_rows":[13,289,2,292,296,16,256,64,384],"offset":1,"phase":1,"quadratic_rows":[301,0,301,301,0,13,0,0,13]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,2,64,4,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":605,"old":406,"rank":3,"right":{"linear_Z4":[0,2,0,3,3,0,2,0,0],"matrix_rows":[28,4,64,1,14,16,32,128,256],"offset":55,"phase":1,"quadratic_rows":[0,12,2,26,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,4,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":621,"old":406,"rank":3,"right":{"linear_Z4":[0,0,3,3,0,0,2,0,2],"matrix_rows":[257,76,32,256,2,68,72,16,384],"offset":11,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":412,"old":407,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[11,17,33,66,130,3,4,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":607,"old":407,"rank":3,"right":{"linear_Z4":[0,1,1,2,0,2,2,0,2],"matrix_rows":[15,9,64,33,290,300,256,272,384],"offset":6,"phase":2,"quadratic_rows":[38,303,295,34,0,15,0,0,6]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,19,35,67,131,5,1,259,3],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":623,"old":407,"rank":3,"right":{"linear_Z4":[1,2,2,0,0,1,2,0,2],"matrix_rows":[102,6,73,105,258,268,256,272,384],"offset":241,"phase":1,"quadratic_rows":[33,352,360,36,0,47,6,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":408,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,2,0],"matrix_rows":[129,161,2,36,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,2,68,129,1,256,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":613,"old":408,"rank":3,"right":{"linear_Z4":[3,2,0,3,0,3,2,0,1],"matrix_rows":[97,268,260,65,14,256,272,96,128],"offset":55,"phase":1,"quadratic_rows":[33,12,258,266,0,33,0,0,268]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,32,64,128,2,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":629,"old":408,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,1,0],"matrix_rows":[1,160,64,128,2,4,8,16,256],"offset":13,"phase":1,"quadratic_rows":[128,0,0,0,0,128,0,161,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":409,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,2],"matrix_rows":[257,289,2,36,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,2,68,129,1,4,256],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":615,"old":409,"rank":3,"right":{"linear_Z4":[3,2,0,3,0,3,2,1,0],"matrix_rows":[97,140,132,65,14,128,144,96,256],"offset":55,"phase":1,"quadratic_rows":[33,12,130,138,0,33,0,140,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,32,64,128,2,4,256,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":631,"old":409,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,1],"matrix_rows":[1,288,64,256,2,4,8,16,128],"offset":13,"phase":1,"quadratic_rows":[256,0,0,0,0,256,0,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":410,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,0,2],"matrix_rows":[271,257,274,276,280,256,288,64,128],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,33,2,64,128,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":597,"old":410,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,1,0],"matrix_rows":[4,136,64,1,2,128,16,32,256],"offset":37,"phase":1,"quadratic_rows":[0,0,128,128,0,0,0,140,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,36,68,1,130,4,256,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":645,"old":410,"rank":3,"right":{"linear_Z4":[2,0,3,3,3,0,2,0,1],"matrix_rows":[274,258,76,19,256,68,72,288,128],"offset":31,"phase":1,"quadratic_rows":[18,257,12,12,273,0,0,0,274]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":411,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,2,0],"matrix_rows":[143,129,146,148,152,128,160,64,256],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,33,2,64,128,4,256,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":599,"old":411,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,1],"matrix_rows":[4,264,64,1,2,256,16,32,128],"offset":37,"phase":1,"quadratic_rows":[0,0,256,256,0,0,0,0,268]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,36,68,1,130,4,2,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":647,"old":411,"rank":3,"right":{"linear_Z4":[2,0,3,3,3,0,2,1,0],"matrix_rows":[146,130,76,19,128,68,72,160,256],"offset":31,"phase":1,"quadratic_rows":[18,129,12,12,145,0,0,146,0]}},{"left":{"linear_Z4":[3,3,2,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,14,13,16,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,3,3,0,0,0,0,0]},"new":1,"old":412,"rank":5,"right":{"linear_Z4":[0,0,2,2,0,0,2,0,0],"matrix_rows":[257,258,308,56,64,288,272,256,384],"offset":251,"phase":1,"quadratic_rows":[32,16,48,48,14,13,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,46,68,8,140,13,2,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":417,"old":412,"rank":4,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,1],"matrix_rows":[257,258,358,106,288,322,256,272,384],"offset":85,"phase":0,"quadratic_rows":[32,334,98,98,0,13,14,0,258]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[29,35,69,9,15,140,1,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":418,"old":412,"rank":4,"right":{"linear_Z4":[1,3,1,1,0,0,2,0,1],"matrix_rows":[257,258,347,87,335,272,256,288,384],"offset":102,"phase":0,"quadratic_rows":[323,83,28,28,14,0,3,0,257]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[29,34,68,8,14,140,1,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":419,"old":412,"rank":4,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,1],"matrix_rows":[257,258,341,89,321,272,256,288,384],"offset":102,"phase":0,"quadratic_rows":[333,16,81,81,14,0,13,0,257]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,72,140,14,13,4,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":420,"old":412,"rank":4,"right":{"linear_Z4":[0,0,1,3,2,2,0,0,1],"matrix_rows":[257,258,376,116,288,272,332,256,384],"offset":51,"phase":0,"quadratic_rows":[32,16,316,316,14,13,0,0,268]}},{"left":{"linear_Z4":[2,3,2,3,2,2,2,2,0],"matrix_rows":[1,264,4,10,16,2,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":0,"old":413,"rank":8,"right":{"linear_Z4":[2,3,2,1,2,0,2,2,2],"matrix_rows":[1,40,4,34,16,64,128,256,42],"offset":8,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":413,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,4,40,16,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,2,2,2,2,2,0],"matrix_rows":[258,3,1,4,8,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":0,"old":414,"rank":8,"right":{"linear_Z4":[3,1,0,2,2,2,2,2,2],"matrix_rows":[6,5,8,16,32,64,128,256,7],"offset":2,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,1,8,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":414,"rank":1,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[5,4,6,8,16,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,2,2,2,2,0],"matrix_rows":[264,2,4,9,1,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"new":0,"old":415,"rank":8,"right":{"linear_Z4":[3,2,2,1,0,2,2,2,2],"matrix_rows":[24,2,4,17,32,64,128,256,25],"offset":8,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":415,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[17,16,2,4,24,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,2,3,2,2,2,0],"matrix_rows":[1,2,272,8,20,4,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"new":0,"old":416,"rank":8,"right":{"linear_Z4":[2,2,3,2,1,0,2,2,2],"matrix_rows":[1,2,48,8,36,64,128,256,52],"offset":16,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":416,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[36,1,2,32,8,48,64,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,3,2,2,2,0],"matrix_rows":[1,272,4,8,18,32,2,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"new":0,"old":417,"rank":8,"right":{"linear_Z4":[2,3,2,2,1,2,0,2,2],"matrix_rows":[1,80,4,8,66,32,128,256,82],"offset":16,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":417,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,8,80,32,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,3,3,2,2,0],"matrix_rows":[318,3,5,9,17,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"new":0,"old":418,"rank":8,"right":{"linear_Z4":[3,1,1,1,1,1,0,2,2],"matrix_rows":[126,125,123,119,111,95,128,256,127],"offset":62,"phase":1,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":418,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,66,68,72,80,96,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,2,3,2,2,0],"matrix_rows":[288,2,4,8,16,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"new":0,"old":419,"rank":8,"right":{"linear_Z4":[3,2,2,2,2,1,0,2,2],"matrix_rows":[96,2,4,8,16,65,128,256,97],"offset":32,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":419,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,8,16,96,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,2,2,2,2,0],"matrix_rows":[1,2,264,12,16,32,4,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":0,"old":420,"rank":8,"right":{"linear_Z4":[2,2,3,1,2,2,0,2,2],"matrix_rows":[1,2,72,68,16,32,128,256,76],"offset":8,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":420,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,72,16,32,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":15,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,41,10,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,8,37,11,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":18,"old":421,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":25,"old":421,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,3,3,2],"matrix_rows":[478,1,258,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,222,222,222,222,0,222,222,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":26,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":44,"old":421,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":47,"old":421,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":54,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":55,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":73,"old":421,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":76,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,33,10,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,8,45,14,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":83,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":84,"old":421,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,0,3,3,2],"matrix_rows":[475,257,258,4,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[219,219,0,219,219,0,219,219,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":334,"old":421,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":337,"old":421,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":344,"old":421,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":345,"old":421,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":363,"old":421,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":366,"old":421,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,0,3,3,2],"matrix_rows":[471,257,258,260,8,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[215,215,215,0,215,0,215,215,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":373,"old":421,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":374,"old":421,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":392,"old":421,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":395,"old":421,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":402,"old":421,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":403,"old":421,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,21,38,65,135,1,2,263,7],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":425,"old":421,"rank":3,"right":{"linear_Z4":[2,2,2,1,3,0,1,3,3],"matrix_rows":[218,477,223,297,322,292,32,272,384],"offset":0,"phase":0,"quadratic_rows":[42,325,34,217,216,5,218,216,258]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,21,35,68,2,4,135,263,7],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":426,"old":421,"rank":3,"right":{"linear_Z4":[2,2,2,1,1,0,3,3,3],"matrix_rows":[223,477,218,289,274,300,32,320,384],"offset":0,"phase":0,"quadratic_rows":[34,277,42,220,218,5,216,216,258]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,20,33,64,129,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":427,"old":421,"rank":3,"right":{"linear_Z4":[1,1,1,0,1,0,2,3,0],"matrix_rows":[21,384,258,65,386,68,8,80,32],"offset":0,"phase":0,"quadratic_rows":[85,130,85,0,85,0,21,130,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,23,33,70,131,1,4,263,7],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":433,"old":421,"rank":3,"right":{"linear_Z4":[2,3,1,2,2,0,1,3,3],"matrix_rows":[214,223,463,293,258,32,296,336,384],"offset":0,"phase":0,"quadratic_rows":[52,198,199,48,329,9,214,198,272]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,65,132,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":434,"old":421,"rank":3,"right":{"linear_Z4":[1,1,0,1,1,0,2,3,0],"matrix_rows":[11,384,272,65,66,4,72,400,32],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,144,0,11,144,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,65,1,128,260,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":435,"old":421,"rank":3,"right":{"linear_Z4":[0,1,1,1,2,0,1,3,0],"matrix_rows":[14,384,320,1,18,20,24,32,448],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,192,192,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":528,"old":421,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,0,3,3,2],"matrix_rows":[5,448,41,10,36,32,16,320,384],"offset":3,"phase":2,"quadratic_rows":[45,8,37,11,0,5,192,192,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,65,3,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":529,"old":421,"rank":2,"right":{"linear_Z4":[3,0,3,0,1,0,1,1,2],"matrix_rows":[216,5,297,10,292,32,272,320,384],"offset":2,"phase":1,"quadratic_rows":[301,8,293,467,472,5,472,472,221]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,66,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":530,"old":421,"rank":2,"right":{"linear_Z4":[0,0,0,0,3,0,3,3,0],"matrix_rows":[384,208,1,2,4,8,400,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,336,0,336,384,208]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,66,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":531,"old":421,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,3,2,2],"matrix_rows":[261,208,257,2,260,8,144,32,192],"offset":3,"phase":2,"quadratic_rows":[5,0,5,0,80,0,80,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":532,"old":421,"rank":2,"right":{"linear_Z4":[3,0,3,3,3,0,0,3,2],"matrix_rows":[5,400,33,10,44,32,272,64,384],"offset":3,"phase":2,"quadratic_rows":[37,8,45,14,144,5,0,144,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,66,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":533,"old":421,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,2,3,2],"matrix_rows":[69,400,65,2,68,8,272,32,384],"offset":3,"phase":2,"quadratic_rows":[5,0,5,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":566,"old":421,"rank":2,"right":{"linear_Z4":[3,0,0,3,0,0,0,3,0],"matrix_rows":[384,137,385,2,4,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[265,0,0,265,0,0,0,384,137]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,64,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":567,"old":421,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[265,194,257,130,4,264,16,32,192],"offset":3,"phase":2,"quadratic_rows":[9,66,0,9,0,0,66,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,35,66,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":568,"old":421,"rank":2,"right":{"linear_Z4":[3,1,1,0,1,0,3,1,1],"matrix_rows":[329,222,65,258,260,328,272,32,384],"offset":1,"phase":1,"quadratic_rows":[265,478,478,215,478,0,222,478,407]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,64,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":569,"old":421,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,2,3,2],"matrix_rows":[73,386,65,258,4,72,16,32,384],"offset":3,"phase":2,"quadratic_rows":[9,130,0,9,0,0,0,130,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,34,65,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":570,"old":421,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[146,268,1,130,260,264,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,18,12,12,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":571,"old":421,"rank":2,"right":{"linear_Z4":[0,3,0,0,3,0,0,3,0],"matrix_rows":[384,146,1,386,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,274,0,0,274,0,0,384,146]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":27,"old":422,"rank":2,"right":{"linear_Z4":[1,1,0,2,1,0,2,2,2],"matrix_rows":[216,219,305,290,20,264,32,320,384],"offset":0,"phase":0,"quadratic_rows":[491,507,16,259,278,3,259,259,219]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,1,32,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":28,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,2,0,0,3,3,2],"matrix_rows":[11,448,9,10,4,16,32,320,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":33,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,0,3,3,2],"matrix_rows":[3,448,49,34,20,8,32,320,384],"offset":3,"phase":2,"quadratic_rows":[51,35,16,0,21,3,192,192,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,3,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":34,"old":422,"rank":2,"right":{"linear_Z4":[3,2,3,2,3,0,3,3,0],"matrix_rows":[470,267,265,10,260,272,32,320,384],"offset":3,"phase":2,"quadratic_rows":[3,213,214,0,214,0,214,214,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":102,"old":422,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":105,"old":422,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":112,"old":422,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,3,3,2],"matrix_rows":[463,257,258,260,264,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[207,207,207,207,0,0,207,207,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":113,"old":422,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":131,"old":422,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":134,"old":422,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":141,"old":422,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":142,"old":422,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":276,"old":422,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,0,3,3,2],"matrix_rows":[477,257,2,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[221,0,221,221,221,0,221,221,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":279,"old":422,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":286,"old":422,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":287,"old":422,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":305,"old":422,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":308,"old":422,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":315,"old":422,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":316,"old":422,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":404,"old":422,"rank":2,"right":{"linear_Z4":[0,0,3,3,0,0,0,3,0],"matrix_rows":[384,140,1,2,388,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,268,268,0,0,0,384,140]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":405,"old":422,"rank":2,"right":{"linear_Z4":[0,3,0,0,3,0,0,3,0],"matrix_rows":[384,146,1,386,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,274,0,0,274,0,0,384,146]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,34,65,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":410,"old":422,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[274,140,1,258,132,136,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,18,12,12,18,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,34,65,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":411,"old":422,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[146,268,1,130,260,264,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,18,12,12,18,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,19,37,65,134,3,4,261,5],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":424,"old":422,"rank":3,"right":{"linear_Z4":[0,0,2,1,0,0,0,2,3],"matrix_rows":[206,17,471,291,32,260,328,304,384],"offset":2,"phase":1,"quadratic_rows":[228,24,25,398,230,17,17,25,264]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,68,129,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":428,"old":422,"rank":3,"right":{"linear_Z4":[1,0,1,1,1,0,2,3,0],"matrix_rows":[21,384,264,65,2,68,392,80,32],"offset":0,"phase":0,"quadratic_rows":[85,0,85,136,85,0,21,136,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,22,35,71,129,1,4,263,7],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":432,"old":422,"rank":3,"right":{"linear_Z4":[2,2,2,3,1,0,1,3,3],"matrix_rows":[220,223,475,305,290,324,264,32,384],"offset":0,"phase":0,"quadratic_rows":[52,36,323,216,217,3,220,216,260]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,34,72,131,257,1,3,12,4],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":437,"old":422,"rank":4,"right":{"linear_Z4":[1,1,1,2,3,0,2,3,0],"matrix_rows":[8,11,384,260,113,98,388,88,32],"offset":0,"phase":0,"quadratic_rows":[123,107,132,83,25,3,11,132,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,67,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":534,"old":422,"rank":2,"right":{"linear_Z4":[3,1,1,1,0,0,3,1,1],"matrix_rows":[337,222,65,258,260,264,336,32,384],"offset":1,"phase":1,"quadratic_rows":[273,478,478,478,207,0,222,478,399]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,32,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":535,"old":422,"rank":2,"right":{"linear_Z4":[3,3,3,0,3,0,0,3,2],"matrix_rows":[3,388,33,50,260,24,32,64,384],"offset":3,"phase":2,"quadratic_rows":[35,51,132,16,26,3,0,132,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,65,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":536,"old":422,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,2,3,2],"matrix_rows":[81,388,65,2,260,8,80,32,384],"offset":3,"phase":2,"quadratic_rows":[17,0,132,0,17,0,0,132,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,35,66,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":537,"old":422,"rank":2,"right":{"linear_Z4":[3,3,2,2,3,0,2,2,1],"matrix_rows":[463,460,289,306,260,280,32,320,384],"offset":3,"phase":2,"quadratic_rows":[239,255,259,275,26,3,259,259,460]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":538,"old":422,"rank":2,"right":{"linear_Z4":[3,0,0,0,3,0,0,3,0],"matrix_rows":[384,145,385,2,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[273,0,0,0,273,0,0,384,145]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":539,"old":422,"rank":2,"right":{"linear_Z4":[0,0,3,0,0,0,3,3,0],"matrix_rows":[384,196,1,2,388,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,324,0,0,0,324,384,196]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":540,"old":422,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,3,2,2],"matrix_rows":[273,196,257,2,132,8,272,32,192],"offset":3,"phase":2,"quadratic_rows":[17,0,68,0,17,0,68,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,65,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":541,"old":422,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,3,2,2],"matrix_rows":[145,324,129,2,260,8,144,32,320],"offset":3,"phase":2,"quadratic_rows":[17,0,68,0,17,0,68,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":558,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,3,3,0,0,3,2],"matrix_rows":[3,392,33,50,20,264,32,64,384],"offset":3,"phase":2,"quadratic_rows":[35,51,16,136,22,3,0,136,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,66,128,3,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":559,"old":422,"rank":2,"right":{"linear_Z4":[2,3,3,3,3,0,2,3,0],"matrix_rows":[323,413,65,322,260,264,272,32,384],"offset":3,"phase":2,"quadratic_rows":[158,3,157,157,157,0,0,157,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,64,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":560,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,2,3,2],"matrix_rows":[67,392,65,66,4,264,16,32,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,35,66,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":561,"old":422,"rank":2,"right":{"linear_Z4":[1,1,0,2,1,0,2,2,2],"matrix_rows":[219,216,289,306,20,264,32,320,384],"offset":0,"phase":0,"quadratic_rows":[507,491,16,259,277,3,259,259,219]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":562,"old":422,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,0,3,3,0],"matrix_rows":[384,200,1,2,4,392,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,328,0,0,328,384,200]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":563,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,3,0],"matrix_rows":[384,131,385,386,4,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[259,259,0,0,0,0,0,384,131]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,64,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":564,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[259,200,257,258,4,136,16,32,192],"offset":3,"phase":2,"quadratic_rows":[3,3,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,64,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":565,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[131,328,129,130,4,264,16,32,320],"offset":3,"phase":2,"quadratic_rows":[3,3,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":29,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,2,3,3,2],"matrix_rows":[38,448,1,34,36,8,16,320,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,35,3,66,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":30,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,1,1,1,2],"matrix_rows":[6,232,9,282,276,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[8,286,278,483,6,488,488,488,238]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,64,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":31,"old":423,"rank":2,"right":{"linear_Z4":[0,1,3,0,0,0,0,0,1],"matrix_rows":[235,461,257,290,36,264,16,320,384],"offset":2,"phase":1,"quadratic_rows":[38,459,493,38,0,461,38,38,294]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":32,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,3,0,0,3,3,2],"matrix_rows":[6,448,9,26,20,16,32,320,384],"offset":3,"phase":2,"quadratic_rows":[8,30,22,11,6,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":160,"old":423,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,3,3,3,2],"matrix_rows":[487,257,258,260,8,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[231,231,231,0,0,231,231,231,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":163,"old":423,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":170,"old":423,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":171,"old":423,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":189,"old":423,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":192,"old":423,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":199,"old":423,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":200,"old":423,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":218,"old":423,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":221,"old":423,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":228,"old":423,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,3,3,3,2],"matrix_rows":[491,257,258,4,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[235,235,0,235,0,235,235,235,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":229,"old":423,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":247,"old":423,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":250,"old":423,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":257,"old":423,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":258,"old":423,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":406,"old":423,"rank":2,"right":{"linear_Z4":[3,0,0,0,0,3,0,3,0],"matrix_rows":[384,161,385,2,4,8,16,416,64],"offset":2,"phase":1,"quadratic_rows":[289,0,0,0,0,289,0,384,161]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":407,"old":423,"rank":2,"right":{"linear_Z4":[0,0,3,3,0,0,0,3,0],"matrix_rows":[384,140,1,2,388,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,268,268,0,0,0,384,140]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,129,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":408,"old":423,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[161,268,129,2,260,264,16,160,64],"offset":3,"phase":2,"quadratic_rows":[33,0,12,12,0,33,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,129,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":409,"old":423,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[289,140,257,2,132,136,16,288,64],"offset":3,"phase":2,"quadratic_rows":[33,0,12,12,0,33,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,21,34,69,2,131,4,263,7],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":429,"old":423,"rank":3,"right":{"linear_Z4":[3,2,1,2,0,2,1,3,3],"matrix_rows":[239,229,463,257,278,16,280,352,384],"offset":0,"phase":0,"quadratic_rows":[197,52,199,48,10,330,229,197,288]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,21,37,66,2,135,1,263,7],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":430,"old":423,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,3,1,3,3],"matrix_rows":[494,233,239,321,282,276,16,288,384],"offset":0,"phase":0,"quadratic_rows":[326,25,17,234,6,232,233,232,257]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,18,34,64,128,258,2,5,1],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":431,"old":423,"rank":3,"right":{"linear_Z4":[1,1,1,0,0,1,2,3,0],"matrix_rows":[384,38,257,385,66,68,8,16,96],"offset":0,"phase":0,"quadratic_rows":[129,102,102,0,0,102,38,129,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,130,3,264,1,12,4],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":436,"old":423,"rank":4,"right":{"linear_Z4":[1,3,3,3,0,1,2,3,0],"matrix_rows":[1,10,384,288,69,86,16,88,416],"offset":2,"phase":1,"quadratic_rows":[69,94,7,90,10,160,11,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,2,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":542,"old":423,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,2,0,3,2],"matrix_rows":[385,44,257,2,36,40,16,64,384],"offset":3,"phase":2,"quadratic_rows":[129,0,12,12,0,0,0,129,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,35,64,129,2,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":543,"old":423,"rank":2,"right":{"linear_Z4":[1,3,1,0,0,1,3,1,1],"matrix_rows":[237,330,257,66,260,328,16,288,384],"offset":2,"phase":1,"quadratic_rows":[493,266,493,231,0,493,237,493,423]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,34,64,128,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":544,"old":423,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,2,3,2],"matrix_rows":[385,74,257,66,4,72,16,32,384],"offset":3,"phase":2,"quadratic_rows":[129,10,0,10,0,0,0,129,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,35,64,2,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":545,"old":423,"rank":2,"right":{"linear_Z4":[1,1,3,0,0,3,1,1,1],"matrix_rows":[235,300,257,258,36,296,16,320,384],"offset":2,"phase":1,"quadratic_rows":[491,491,268,231,0,235,491,491,455]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":546,"old":423,"rank":2,"right":{"linear_Z4":[3,0,0,0,0,0,3,3,0],"matrix_rows":[384,193,385,2,4,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[321,0,0,0,0,0,321,384,193]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":547,"old":423,"rank":2,"right":{"linear_Z4":[0,3,0,3,0,0,0,3,0],"matrix_rows":[384,138,1,386,4,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,266,0,266,0,0,0,384,138]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,34,64,128,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":548,"old":423,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[193,266,129,258,4,264,16,32,192],"offset":3,"phase":2,"quadratic_rows":[65,10,0,10,0,0,65,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,34,64,128,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":549,"old":423,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[321,138,257,130,4,136,16,32,320],"offset":3,"phase":2,"quadratic_rows":[65,10,0,10,0,0,65,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,33,64,129,2,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":550,"old":423,"rank":2,"right":{"linear_Z4":[1,3,0,1,0,1,3,1,1],"matrix_rows":[237,326,257,66,324,264,16,288,384],"offset":2,"phase":1,"quadratic_rows":[493,262,235,493,0,493,237,493,427]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":551,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,3,0,3,0,3,2],"matrix_rows":[6,416,9,18,28,16,288,64,384],"offset":3,"phase":2,"quadratic_rows":[8,22,30,13,6,160,0,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":552,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,3,2,3,2],"matrix_rows":[70,416,1,66,68,8,16,288,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,33,1,66,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":553,"old":423,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,1,1,1,2],"matrix_rows":[6,238,9,274,284,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[8,504,496,483,6,494,494,494,238]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":554,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,0,0,3,0],"matrix_rows":[384,134,1,386,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,262,262,0,0,0,0,384,134]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,64,130,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":555,"old":423,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,3,3,3,0],"matrix_rows":[384,224,1,2,4,8,16,416,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,0,352,352,384,224]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,130,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":556,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,3,3,2,2],"matrix_rows":[262,224,1,258,260,8,16,160,192],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,130,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":557,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,3,3,2,2],"matrix_rows":[134,352,1,130,132,8,16,288,320],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,35,67,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":740,"old":424,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,1],"matrix_rows":[281,28,129,2,256,264,272,32,64],"offset":18,"phase":0,"quadratic_rows":[409,0,280,5,5,0,0,1,261]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,34,66,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":741,"old":424,"rank":2,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,2],"matrix_rows":[261,153,257,2,256,136,144,32,64],"offset":17,"phase":0,"quadratic_rows":[156,0,1,25,25,0,0,1,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,35,66,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":742,"old":424,"rank":2,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[429,153,257,2,288,264,32,64,384],"offset":64,"phase":3,"quadratic_rows":[52,0,137,52,169,153,0,52,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,67,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":743,"old":424,"rank":2,"right":{"linear_Z4":[2,0,0,1,0,0,0,0,1],"matrix_rows":[408,212,9,2,320,64,272,32,384],"offset":37,"phase":3,"quadratic_rows":[8,0,400,473,76,0,408,76,332]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,33,67,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":744,"old":424,"rank":2,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,2],"matrix_rows":[153,276,129,2,256,136,272,32,64],"offset":18,"phase":0,"quadratic_rows":[25,0,16,25,141,0,0,16,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,35,66,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":745,"old":424,"rank":2,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,1],"matrix_rows":[13,281,257,2,256,264,144,32,64],"offset":17,"phase":0,"quadratic_rows":[20,0,265,20,409,0,0,16,276]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,32,66,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":746,"old":424,"rank":2,"right":{"linear_Z4":[0,0,0,2,1,0,0,0,1],"matrix_rows":[165,401,257,2,288,24,32,64,384],"offset":98,"phase":3,"quadratic_rows":[52,0,385,16,441,401,0,52,308]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,2,19,35,64,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":747,"old":424,"rank":2,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[153,156,256,258,264,272,32,64,384],"offset":4,"phase":3,"quadratic_rows":[408,0,152,261,261,0,0,261,153]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,32,66,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":748,"old":425,"rank":2,"right":{"linear_Z4":[2,1,0,0,0,0,0,0,1],"matrix_rows":[390,212,3,64,260,8,320,32,384],"offset":13,"phase":3,"quadratic_rows":[2,455,82,0,388,0,390,82,338]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,66,1,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":749,"old":425,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,435,257,258,32,8,288,64,384],"offset":16,"phase":3,"quadratic_rows":[52,52,163,0,131,135,0,52,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,19,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":750,"old":425,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,1],"matrix_rows":[263,22,129,258,260,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[391,17,17,0,262,0,0,1,273]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,17,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":751,"old":425,"rank":2,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,2],"matrix_rows":[135,273,257,130,132,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[150,7,7,0,1,0,0,1,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,19,33,2,64,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":752,"old":425,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,150,256,258,260,264,32,64,384],"offset":4,"phase":3,"quadratic_rows":[390,273,273,0,134,0,0,273,135]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,32,66,1,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":753,"old":425,"rank":2,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,1],"matrix_rows":[389,177,257,6,32,8,288,64,384],"offset":25,"phase":3,"quadratic_rows":[52,4,423,0,385,389,0,52,308]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":754,"old":425,"rank":2,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[135,276,129,130,260,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[7,7,147,0,4,0,0,4,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":755,"old":425,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,1],"matrix_rows":[263,19,257,258,132,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[20,20,391,0,259,0,0,4,276]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":764,"old":426,"rank":1,"right":{"linear_Z4":[1,1,3,0,0,0,0,3,0],"matrix_rows":[199,321,322,260,8,16,32,256,384],"offset":135,"phase":0,"quadratic_rows":[391,391,455,0,0,0,388,455,199]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":765,"old":426,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,3,3,2],"matrix_rows":[455,257,258,256,264,16,32,320,384],"offset":9,"phase":0,"quadratic_rows":[199,199,195,0,0,0,199,199,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":766,"old":426,"rank":1,"right":{"linear_Z4":[3,1,1,0,0,0,0,3,0],"matrix_rows":[199,257,322,324,8,16,32,256,384],"offset":141,"phase":0,"quadratic_rows":[455,391,391,0,0,0,385,455,199]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":767,"old":426,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,3,3,2],"matrix_rows":[455,256,258,260,8,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[198,199,199,0,0,0,199,199,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":768,"old":426,"rank":1,"right":{"linear_Z4":[1,3,3,0,0,0,1,0,0],"matrix_rows":[199,385,258,260,8,16,32,448,256],"offset":387,"phase":0,"quadratic_rows":[327,455,455,0,0,0,327,262,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":769,"old":426,"rank":1,"right":{"linear_Z4":[3,1,1,0,0,0,3,0,0],"matrix_rows":[199,257,386,388,8,16,32,320,256],"offset":269,"phase":0,"quadratic_rows":[455,327,327,0,0,0,455,321,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":770,"old":426,"rank":1,"right":{"linear_Z4":[3,3,1,0,0,0,1,0,0],"matrix_rows":[199,257,258,388,8,16,32,448,256],"offset":393,"phase":0,"quadratic_rows":[455,455,327,0,0,0,327,259,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":771,"old":426,"rank":1,"right":{"linear_Z4":[1,1,3,0,0,0,3,0,0],"matrix_rows":[199,385,386,260,8,16,32,320,256],"offset":263,"phase":0,"quadratic_rows":[327,327,455,0,0,0,455,324,199]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,32,65,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":756,"old":427,"rank":2,"right":{"linear_Z4":[1,1,3,0,3,0,0,0,3],"matrix_rows":[342,81,339,256,68,24,64,32,384],"offset":15,"phase":0,"quadratic_rows":[259,263,278,16,28,0,0,0,263]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,18,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":757,"old":427,"rank":2,"right":{"linear_Z4":[2,0,2,2,2,0,2,0,0],"matrix_rows":[97,21,81,2,32,24,96,128,256],"offset":117,"phase":3,"quadratic_rows":[36,0,49,16,44,21,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,67,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":758,"old":427,"rank":2,"right":{"linear_Z4":[3,2,3,1,0,0,0,0,0],"matrix_rows":[5,24,113,26,100,32,64,128,256],"offset":43,"phase":0,"quadratic_rows":[117,24,101,42,35,29,5,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,3,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":759,"old":427,"rank":2,"right":{"linear_Z4":[1,0,1,3,2,0,0,0,0],"matrix_rows":[29,24,105,2,124,32,64,128,256],"offset":55,"phase":1,"quadratic_rows":[117,0,101,56,41,29,5,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,34,65,2,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":760,"old":427,"rank":2,"right":{"linear_Z4":[2,0,2,0,1,0,0,0,0],"matrix_rows":[5,29,113,2,100,32,64,128,256],"offset":35,"phase":1,"quadratic_rows":[104,0,120,53,60,29,5,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,3,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":761,"old":427,"rank":2,"right":{"linear_Z4":[1,2,1,0,1,0,0,0,0],"matrix_rows":[29,24,105,26,124,32,64,128,256],"offset":63,"phase":0,"quadratic_rows":[117,24,101,34,51,29,5,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,66,1,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":762,"old":427,"rank":2,"right":{"linear_Z4":[0,0,1,2,3,2,1,0,0],"matrix_rows":[65,84,32,2,100,24,96,128,256],"offset":101,"phase":2,"quadratic_rows":[96,0,52,16,60,21,65,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,18,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":763,"old":427,"rank":2,"right":{"linear_Z4":[0,2,3,0,2,0,1,0,0],"matrix_rows":[39,83,81,70,32,24,96,128,256],"offset":26,"phase":3,"quadratic_rows":[36,48,69,16,106,83,116,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,32,65,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":732,"old":428,"rank":2,"right":{"linear_Z4":[2,3,2,0,1,3,1,0,0],"matrix_rows":[116,114,21,86,96,8,32,128,256],"offset":77,"phase":0,"quadratic_rows":[20,38,83,0,117,114,116,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,34,67,128,3,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":733,"old":428,"rank":2,"right":{"linear_Z4":[2,1,0,2,2,0,0,0,0],"matrix_rows":[17,23,69,270,64,256,80,32,384],"offset":43,"phase":0,"quadratic_rows":[66,283,280,6,70,0,17,0,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,33,67,128,3,257,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":734,"old":428,"rank":2,"right":{"linear_Z4":[3,0,0,2,0,0,1,0,0],"matrix_rows":[348,281,333,6,64,256,80,32,384],"offset":37,"phase":3,"quadratic_rows":[85,4,83,0,5,0,69,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,32,66,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":735,"old":428,"rank":2,"right":{"linear_Z4":[2,2,2,0,2,0,2,0,0],"matrix_rows":[97,21,69,6,96,8,32,128,256],"offset":93,"phase":3,"quadratic_rows":[48,4,50,0,37,21,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,35,66,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":736,"old":428,"rank":2,"right":{"linear_Z4":[0,0,2,2,3,0,1,0,0],"matrix_rows":[57,77,69,6,96,88,32,128,256],"offset":98,"phase":3,"quadratic_rows":[48,4,106,36,81,77,116,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,66,1,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":737,"old":428,"rank":2,"right":{"linear_Z4":[0,2,3,0,1,2,1,0,0],"matrix_rows":[65,84,32,6,96,8,112,128,256],"offset":29,"phase":2,"quadratic_rows":[96,4,54,0,52,21,65,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,17,32,67,2,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":738,"old":428,"rank":2,"right":{"linear_Z4":[2,0,1,0,2,0,0,0,0],"matrix_rows":[17,23,101,32,64,8,112,128,256],"offset":11,"phase":1,"quadratic_rows":[98,53,54,0,102,23,17,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,34,65,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":739,"old":428,"rank":2,"right":{"linear_Z4":[0,3,2,1,3,1,1,0,0],"matrix_rows":[116,42,21,86,96,88,32,128,256],"offset":114,"phase":2,"quadratic_rows":[20,126,83,122,95,42,94,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,64,131,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":724,"old":429,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,1],"matrix_rows":[41,298,256,130,4,264,16,288,64],"offset":5,"phase":0,"quadratic_rows":[296,426,0,3,0,3,0,2,259]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,34,64,130,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":725,"old":429,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,1,0,0,2],"matrix_rows":[259,170,256,258,4,136,16,160,64],"offset":5,"phase":0,"quadratic_rows":[2,169,0,42,0,42,0,2,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,34,2,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":726,"old":429,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,2,0,2,2],"matrix_rows":[435,170,272,258,4,16,288,64,384],"offset":32,"phase":3,"quadratic_rows":[162,25,0,178,170,25,0,25,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,35,64,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":727,"old":429,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,1,0,0,1],"matrix_rows":[201,424,320,34,4,264,16,64,384],"offset":138,"phase":3,"quadratic_rows":[392,32,0,97,0,490,424,97,353]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,34,64,131,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":728,"old":429,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,1],"matrix_rows":[35,298,256,258,4,136,16,288,64],"offset":5,"phase":0,"quadratic_rows":[290,9,0,426,0,9,0,8,265]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,64,130,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":729,"old":429,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,1,0,0,2],"matrix_rows":[265,170,256,130,4,264,16,160,64],"offset":5,"phase":0,"quadratic_rows":[8,42,0,163,0,42,0,8,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,2,19,32,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":730,"old":429,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,2,0,2,2],"matrix_rows":[429,170,260,4,264,16,288,64,384],"offset":8,"phase":3,"quadratic_rows":[168,172,170,7,0,7,0,7,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,32,64,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":731,"old":429,"rank":2,"right":{"linear_Z4":[0,0,0,2,0,1,0,0,1],"matrix_rows":[195,418,320,258,4,40,16,64,384],"offset":162,"phase":3,"quadratic_rows":[386,97,0,32,0,490,418,97,353]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,32,64,130,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":708,"old":430,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,1],"matrix_rows":[263,37,257,130,260,8,16,256,64],"offset":130,"phase":0,"quadratic_rows":[34,391,34,0,0,261,0,2,290]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,17,32,64,130,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":709,"old":430,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,2],"matrix_rows":[135,290,129,258,132,8,16,256,64],"offset":130,"phase":0,"quadratic_rows":[7,165,7,0,0,2,0,2,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,65,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":710,"old":430,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,163,257,258,256,8,272,64,384],"offset":16,"phase":3,"quadratic_rows":[292,292,387,0,0,131,0,292,135]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,33,64,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":711,"old":430,"rank":2,"right":{"linear_Z4":[2,1,0,0,0,0,0,0,3],"matrix_rows":[390,420,3,256,260,264,16,64,384],"offset":13,"phase":3,"quadratic_rows":[2,135,290,0,0,388,0,290,420]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,32,64,130,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":712,"old":430,"rank":2,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[135,292,129,130,260,8,16,256,64],"offset":130,"phase":0,"quadratic_rows":[7,7,163,0,0,4,0,4,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,64,130,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":713,"old":430,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,1],"matrix_rows":[263,35,257,258,132,8,16,256,64],"offset":130,"phase":0,"quadratic_rows":[36,36,391,0,0,259,0,4,292]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,17,32,65,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":714,"old":430,"rank":2,"right":{"linear_Z4":[2,0,1,0,0,0,0,0,3],"matrix_rows":[390,418,5,258,256,8,272,64,384],"offset":21,"phase":3,"quadratic_rows":[4,292,135,0,0,386,0,292,418]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,33,64,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":715,"old":430,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,165,257,256,260,264,16,64,384],"offset":8,"phase":3,"quadratic_rows":[290,389,290,0,0,133,0,290,135]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,18,32,66,1,3,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":700,"old":431,"rank":2,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[2,38,1,98,64,40,80,128,256],"offset":104,"phase":3,"quadratic_rows":[0,68,98,32,0,76,38,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,17,32,67,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":701,"old":431,"rank":2,"right":{"linear_Z4":[1,1,3,0,0,1,2,0,0],"matrix_rows":[5,66,35,64,4,40,80,128,256],"offset":15,"phase":0,"quadratic_rows":[39,35,5,32,0,43,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,33,1,67,3,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":702,"old":431,"rank":2,"right":{"linear_Z4":[2,3,3,1,0,0,0,0,0],"matrix_rows":[40,6,41,114,84,16,64,128,256],"offset":39,"phase":0,"quadratic_rows":[40,118,86,25,46,19,6,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,35,3,66,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":703,"old":431,"rank":2,"right":{"linear_Z4":[0,1,1,3,0,2,0,0,0],"matrix_rows":[46,40,1,90,124,16,64,128,256],"offset":59,"phase":1,"quadratic_rows":[0,118,86,56,46,26,6,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,35,3,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":704,"old":431,"rank":2,"right":{"linear_Z4":[2,1,1,0,0,1,0,0,0],"matrix_rows":[40,46,41,90,124,16,64,128,256],"offset":63,"phase":0,"quadratic_rows":[40,118,86,17,46,51,6,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,34,2,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":705,"old":431,"rank":2,"right":{"linear_Z4":[0,2,2,0,0,1,0,0,0],"matrix_rows":[6,46,1,114,84,16,64,128,256],"offset":35,"phase":1,"quadratic_rows":[0,88,120,54,46,60,6,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":706,"old":431,"rank":2,"right":{"linear_Z4":[0,2,3,2,0,1,3,0,0],"matrix_rows":[66,100,1,64,4,40,80,128,256],"offset":113,"phase":0,"quadratic_rows":[0,0,100,32,0,108,100,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":707,"old":431,"rank":2,"right":{"linear_Z4":[2,0,3,0,0,2,3,0,0],"matrix_rows":[99,71,69,98,64,40,80,128,256],"offset":21,"phase":3,"quadratic_rows":[96,68,70,32,0,9,71,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,34,64,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":692,"old":432,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,1],"matrix_rows":[263,13,257,130,260,256,16,32,64],"offset":34,"phase":0,"quadratic_rows":[10,391,10,261,0,0,0,2,266]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,17,34,64,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":693,"old":432,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,2],"matrix_rows":[135,266,129,258,132,256,16,32,64],"offset":34,"phase":0,"quadratic_rows":[7,141,7,2,0,0,0,2,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,19,34,1,64,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":694,"old":432,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,414,16,258,260,272,32,64,384],"offset":4,"phase":3,"quadratic_rows":[150,25,25,134,135,0,0,25,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,34,64,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":695,"old":432,"rank":2,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,1],"matrix_rows":[389,201,257,6,64,320,16,32,384],"offset":25,"phase":3,"quadratic_rows":[76,4,455,385,0,0,389,76,332]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,19,34,64,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":696,"old":432,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,1],"matrix_rows":[263,14,129,258,260,256,16,32,64],"offset":34,"phase":0,"quadratic_rows":[391,9,9,262,0,0,0,1,265]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,17,34,64,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":697,"old":432,"rank":2,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,2],"matrix_rows":[135,265,257,130,132,256,16,32,64],"offset":34,"phase":0,"quadratic_rows":[142,7,7,1,0,0,0,1,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,34,64,1,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":698,"old":432,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,429,257,32,260,288,16,64,384],"offset":8,"phase":3,"quadratic_rows":[42,165,42,133,0,135,0,42,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,17,34,64,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":699,"old":432,"rank":2,"right":{"linear_Z4":[2,0,1,0,0,0,0,0,1],"matrix_rows":[390,202,5,258,64,320,16,32,384],"offset":21,"phase":3,"quadratic_rows":[4,76,455,386,0,0,390,76,332]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,32,66,128,2,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":668,"old":433,"rank":2,"right":{"linear_Z4":[0,0,0,2,1,0,0,0,1],"matrix_rows":[195,401,257,320,4,24,64,32,384],"offset":98,"phase":3,"quadratic_rows":[82,385,0,16,473,0,401,82,338]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,1,19,35,64,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":669,"old":433,"rank":2,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[153,414,4,260,264,272,32,64,384],"offset":4,"phase":3,"quadratic_rows":[156,152,153,7,7,0,0,7,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,34,67,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":670,"old":433,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,1],"matrix_rows":[19,281,257,256,4,136,272,32,64],"offset":9,"phase":0,"quadratic_rows":[10,273,0,409,10,0,0,8,266]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,65,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":671,"old":433,"rank":2,"right":{"linear_Z4":[1,0,0,0,1,0,0,0,2],"matrix_rows":[153,266,129,256,4,264,144,32,64],"offset":10,"phase":0,"quadratic_rows":[25,8,0,147,25,0,0,8,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,35,65,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":672,"old":433,"rank":2,"right":{"linear_Z4":[2,0,0,0,1,0,0,0,1],"matrix_rows":[408,202,17,320,4,264,64,32,384],"offset":69,"phase":3,"quadratic_rows":[16,392,0,82,473,0,408,82,338]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,34,67,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":673,"old":433,"rank":2,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[435,153,257,288,4,32,272,64,384],"offset":32,"phase":3,"quadratic_rows":[42,145,0,177,42,153,0,42,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,67,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":674,"old":433,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,1],"matrix_rows":[281,26,129,256,4,264,272,32,64],"offset":10,"phase":0,"quadratic_rows":[409,280,0,3,3,0,0,1,259]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,34,66,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":675,"old":433,"rank":2,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,2],"matrix_rows":[259,153,257,256,4,136,144,32,64],"offset":9,"phase":0,"quadratic_rows":[154,1,0,25,25,0,0,1,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,33,66,3,128,258,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":676,"old":434,"rank":2,"right":{"linear_Z4":[0,1,0,3,2,1,0,0,0],"matrix_rows":[281,39,37,278,32,312,256,64,384],"offset":106,"phase":0,"quadratic_rows":[282,307,304,41,39,318,0,0,39]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,64,2,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":677,"old":434,"rank":2,"right":{"linear_Z4":[2,1,0,2,0,0,0,0,0],"matrix_rows":[9,15,99,64,32,104,16,128,256],"offset":19,"phase":1,"quadratic_rows":[100,46,43,102,0,15,9,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":678,"old":434,"rank":2,"right":{"linear_Z4":[1,0,3,2,3,1,0,0,1],"matrix_rows":[281,40,37,6,32,312,256,64,384],"offset":98,"phase":3,"quadratic_rows":[317,4,7,1,305,305,0,0,305]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":679,"old":434,"rank":2,"right":{"linear_Z4":[0,2,3,1,0,1,2,0,0],"matrix_rows":[33,44,64,6,96,104,16,128,256],"offset":29,"phase":2,"quadratic_rows":[96,4,78,76,0,33,13,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,35,65,3,128,257,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":680,"old":434,"rank":2,"right":{"linear_Z4":[3,0,0,0,2,1,0,0,0],"matrix_rows":[316,281,309,6,32,40,256,64,384],"offset":69,"phase":3,"quadratic_rows":[45,4,43,5,0,37,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,34,64,3,2,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":681,"old":434,"rank":2,"right":{"linear_Z4":[2,2,2,2,0,2,0,0,0],"matrix_rows":[97,13,37,6,96,64,16,128,256],"offset":61,"phase":3,"quadratic_rows":[72,4,74,69,0,0,13,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,9,19,35,65,3,128,257,1],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":682,"old":434,"rank":2,"right":{"linear_Z4":[3,1,3,0,2,1,0,0,0],"matrix_rows":[42,281,309,278,32,40,256,64,384],"offset":77,"phase":0,"quadratic_rows":[45,318,7,275,42,307,0,0,42]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,34,64,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":683,"old":434,"rank":2,"right":{"linear_Z4":[1,1,3,2,0,1,3,0,0],"matrix_rows":[79,108,37,46,96,64,16,128,256],"offset":2,"phase":1,"quadratic_rows":[107,99,76,69,0,35,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":660,"old":435,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,0,0,2],"matrix_rows":[335,321,322,324,328,16,32,256,384],"offset":159,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":661,"old":435,"rank":1,"right":{"linear_Z4":[1,1,2,0,0,2,0,0,0],"matrix_rows":[39,33,34,32,8,48,64,128,256],"offset":8,"phase":3,"quadratic_rows":[7,7,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":662,"old":435,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,0],"matrix_rows":[13,32,2,36,40,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[44,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":663,"old":435,"rank":1,"right":{"linear_Z4":[0,1,0,1,0,0,0,0,2],"matrix_rows":[330,1,322,4,328,16,32,256,384],"offset":149,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":664,"old":435,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,2],"matrix_rows":[326,1,322,324,8,16,32,256,384],"offset":141,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":665,"old":435,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,2,0,0,0],"matrix_rows":[38,9,34,44,32,48,64,128,256],"offset":61,"phase":1,"quadratic_rows":[8,6,14,13,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":666,"old":435,"rank":1,"right":{"linear_Z4":[1,1,0,2,0,2,0,0,0],"matrix_rows":[43,33,34,4,32,48,64,128,256],"offset":16,"phase":3,"quadratic_rows":[11,11,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":667,"old":435,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[323,321,322,4,8,16,32,256,384],"offset":135,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":716,"old":436,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,2,0,0],"matrix_rows":[10,1,66,4,64,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[0,74,0,66,0,0,10,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":717,"old":436,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,290,4,8,16,256,64,384],"offset":69,"phase":3,"quadratic_rows":[0,290,0,0,0,2,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":718,"old":436,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[291,289,290,4,8,16,256,64,384],"offset":71,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":719,"old":436,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,2,0,0],"matrix_rows":[67,73,66,4,64,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[11,3,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":720,"old":436,"rank":1,"right":{"linear_Z4":[3,2,0,3,0,0,2,0,0],"matrix_rows":[73,67,64,68,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[11,1,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":721,"old":436,"rank":1,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,2],"matrix_rows":[297,289,2,4,296,16,256,64,384],"offset":83,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":722,"old":436,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[8,1,2,4,296,16,256,64,384],"offset":81,"phase":3,"quadratic_rows":[0,0,0,296,0,8,0,0,8]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":723,"old":436,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[10,1,64,68,72,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[0,72,0,74,0,0,10,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":684,"old":437,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,2,0,0],"matrix_rows":[3,64,66,4,8,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":685,"old":437,"rank":1,"right":{"linear_Z4":[0,1,2,0,0,0,0,0,0],"matrix_rows":[2,1,262,256,8,16,32,64,384],"offset":13,"phase":3,"quadratic_rows":[0,262,2,0,0,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":686,"old":437,"rank":1,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[8,1,10,12,64,80,96,128,256],"offset":73,"phase":3,"quadratic_rows":[0,8,8,70,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":687,"old":437,"rank":1,"right":{"linear_Z4":[2,2,0,3,0,0,0,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":71,"phase":0,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":688,"old":437,"rank":1,"right":{"linear_Z4":[2,2,0,3,0,0,0,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":39,"phase":0,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":689,"old":437,"rank":1,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[8,9,2,12,64,80,96,128,256],"offset":41,"phase":3,"quadratic_rows":[8,0,8,69,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":690,"old":437,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,64,384],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":691,"old":437,"rank":1,"right":{"linear_Z4":[1,2,0,2,0,0,2,0,0],"matrix_rows":[3,65,64,4,8,16,96,128,256],"offset":84,"phase":1,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":445,"old":438,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,3,2],"matrix_rows":[398,1,258,260,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,142,142,142,0,0,0,142,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":447,"old":438,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":443,"old":439,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,3,0,0],"matrix_rows":[30,65,194,132,200,208,32,128,256],"offset":1,"phase":1,"quadratic_rows":[64,222,158,222,222,0,91,30,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":446,"old":439,"rank":1,"right":{"linear_Z4":[2,3,1,2,3,0,3,0,2],"matrix_rows":[342,5,258,256,8,272,288,320,384],"offset":438,"phase":2,"quadratic_rows":[4,86,87,0,86,0,86,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":447,"old":440,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":448,"old":440,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":446,"old":441,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,1,2,2],"matrix_rows":[347,385,386,4,392,400,32,448,256],"offset":0,"phase":0,"quadratic_rows":[219,219,0,219,219,0,219,91,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":450,"old":441,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[475,257,258,4,264,256,32,320,384],"offset":0,"phase":0,"quadratic_rows":[219,219,0,219,203,0,219,219,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":443,"old":442,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,0,2,0,0],"matrix_rows":[91,65,66,4,72,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[27,27,0,27,27,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":448,"old":442,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":449,"old":443,"rank":1,"right":{"linear_Z4":[1,3,2,3,3,0,2,0,0],"matrix_rows":[91,65,82,20,88,64,32,128,256],"offset":60,"phase":2,"quadratic_rows":[27,11,16,11,21,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":454,"old":443,"rank":1,"right":{"linear_Z4":[1,0,2,1,0,0,0,0,2],"matrix_rows":[9,261,2,256,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[269,0,1,265,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":445,"old":444,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,3,3,0],"matrix_rows":[139,321,258,68,264,16,32,256,384],"offset":1,"phase":1,"quadratic_rows":[459,395,64,395,0,0,69,395,139]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":450,"old":444,"rank":1,"right":{"linear_Z4":[3,0,2,3,0,2,0,0,0],"matrix_rows":[41,37,2,32,40,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[13,0,1,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":452,"old":445,"rank":1,"right":{"linear_Z4":[2,3,1,3,0,0,0,1,2],"matrix_rows":[270,129,258,388,264,16,32,64,256],"offset":267,"phase":0,"quadratic_rows":[128,14,142,14,0,0,0,133,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":453,"old":445,"rank":1,"right":{"linear_Z4":[2,1,3,2,0,0,0,1,2],"matrix_rows":[390,5,258,256,8,272,288,320,384],"offset":250,"phase":2,"quadratic_rows":[4,134,135,0,0,0,0,134,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":451,"old":446,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,3,0,0],"matrix_rows":[91,129,130,4,136,128,32,192,256],"offset":33,"phase":0,"quadratic_rows":[219,219,0,219,203,0,219,91,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":454,"old":446,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,0,0,0],"matrix_rows":[91,193,194,4,200,208,32,128,256],"offset":183,"phase":0,"quadratic_rows":[155,155,0,155,155,0,128,91,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":452,"old":447,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,0,0,2],"matrix_rows":[11,257,258,4,264,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[267,267,0,267,0,0,0,0,11]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":455,"old":447,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":449,"old":448,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":455,"old":448,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,33,66,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":456,"old":449,"rank":2,"right":{"linear_Z4":[2,2,1,2,0,0,0,0,1],"matrix_rows":[34,266,13,270,256,288,48,320,384],"offset":30,"phase":0,"quadratic_rows":[12,36,7,289,0,266,0,0,296]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,17,34,3,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":459,"old":449,"rank":2,"right":{"linear_Z4":[1,0,2,1,1,0,0,0,0],"matrix_rows":[276,271,277,272,256,280,288,320,384],"offset":1,"phase":1,"quadratic_rows":[27,29,10,31,27,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":451,"old":450,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,0,0],"matrix_rows":[203,385,386,4,392,16,32,448,256],"offset":407,"phase":0,"quadratic_rows":[331,331,0,331,0,0,331,256,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":453,"old":450,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,3,0],"matrix_rows":[203,257,258,4,264,16,32,256,384],"offset":129,"phase":0,"quadratic_rows":[459,459,0,459,0,0,395,459,203]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,35,64,128,2,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":458,"old":451,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,0],"matrix_rows":[11,201,129,128,4,136,16,32,256],"offset":9,"phase":0,"quadratic_rows":[66,137,0,66,0,0,137,194,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,64,128,1,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":461,"old":451,"rank":2,"right":{"linear_Z4":[1,0,0,1,0,0,0,1,0],"matrix_rows":[201,2,65,128,4,72,16,32,256],"offset":10,"phase":0,"quadratic_rows":[137,128,0,137,0,0,128,203,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,33,67,130,259,3,1],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":457,"old":452,"rank":2,"right":{"linear_Z4":[2,2,1,3,0,0,0,1,0],"matrix_rows":[138,258,13,134,128,256,144,416,192],"offset":29,"phase":0,"quadratic_rows":[12,268,15,399,0,0,0,392,138]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,17,35,65,129,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":460,"old":452,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[137,15,389,256,128,392,144,160,192],"offset":10,"phase":0,"quadratic_rows":[258,269,270,262,0,0,0,0,15]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,64,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":458,"old":453,"rank":2,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,1],"matrix_rows":[393,2,129,256,4,136,16,32,64],"offset":10,"phase":0,"quadratic_rows":[265,256,0,265,0,0,0,256,395]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,35,64,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":460,"old":453,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[11,393,257,256,4,264,16,32,64],"offset":9,"phase":0,"quadratic_rows":[130,265,0,130,0,0,0,265,386]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,1,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":459,"old":454,"rank":2,"right":{"linear_Z4":[1,0,0,1,0,0,1,0,0],"matrix_rows":[89,2,17,64,4,24,32,128,256],"offset":10,"phase":0,"quadratic_rows":[73,64,0,73,64,0,91,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,35,2,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":461,"old":454,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,0],"matrix_rows":[11,89,65,64,4,72,32,128,256],"offset":9,"phase":0,"quadratic_rows":[18,73,0,18,73,0,82,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,33,67,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":456,"old":455,"rank":2,"right":{"linear_Z4":[2,1,0,1,0,0,0,0,3],"matrix_rows":[44,266,13,46,256,288,272,320,384],"offset":31,"phase":1,"quadratic_rows":[12,294,267,45,0,266,0,0,294]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,33,67,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":457,"old":455,"rank":2,"right":{"linear_Z4":[2,1,0,3,0,0,0,0,1],"matrix_rows":[266,292,13,294,256,288,272,320,384],"offset":31,"phase":1,"quadratic_rows":[12,46,267,47,0,266,0,0,292]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,35,66,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":456,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,292,296,272,320,384],"offset":62,"phase":1,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":812,"old":456,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":26,"phase":1,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":875,"old":456,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,264,272,32,320,384],"offset":31,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":456,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,32,320,384],"offset":29,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,33,66,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":457,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,258,288,256,36,296,272,320,384],"offset":42,"phase":3,"quadratic_rows":[288,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":818,"old":457,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":893,"old":457,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,8,272,288,320,384],"offset":79,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":458,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,136,160,2,164,32,16,64,256],"offset":51,"phase":0,"quadratic_rows":[32,0,0,160,0,9,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":814,"old":458,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[9,129,2,4,128,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[137,0,0,129,0,0,0,9,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":881,"old":458,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[9,128,2,132,136,16,32,64,256],"offset":8,"phase":3,"quadratic_rows":[136,0,0,137,0,0,0,9,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":459,"rank":2,"right":{"linear_Z4":[2,0,0,0,1,0,0,0,0],"matrix_rows":[17,24,48,2,52,32,64,128,256],"offset":51,"phase":0,"quadratic_rows":[32,0,0,48,24,9,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":810,"old":459,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,2,0,0,0],"matrix_rows":[9,33,2,4,32,48,64,128,256],"offset":50,"phase":1,"quadratic_rows":[41,0,0,33,0,9,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":869,"old":459,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,0],"matrix_rows":[9,16,2,20,24,32,64,128,256],"offset":8,"phase":3,"quadratic_rows":[24,0,0,25,9,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,2,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":460,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,1],"matrix_rows":[257,264,288,2,292,32,16,64,128],"offset":51,"phase":0,"quadratic_rows":[32,0,0,288,0,9,0,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":816,"old":460,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[9,257,2,4,256,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[265,0,0,257,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":887,"old":460,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[9,256,2,260,264,16,32,64,128],"offset":8,"phase":3,"quadratic_rows":[264,0,0,265,0,0,0,0,9]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":460,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,0,2],"matrix_rows":[264,9,2,4,256,16,288,64,128],"offset":67,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":461,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,1,0,0],"matrix_rows":[65,72,96,2,100,32,16,128,256],"offset":51,"phase":0,"quadratic_rows":[32,0,0,96,0,9,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":820,"old":461,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[9,65,2,4,64,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[73,0,0,65,0,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":899,"old":461,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[9,64,2,68,72,16,32,128,256],"offset":8,"phase":3,"quadratic_rows":[72,0,0,73,0,0,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":461,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":464,"old":462,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":473,"old":462,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[64,1,2,4,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,320,0,64]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":464,"old":463,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":468,"old":463,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":477,"old":464,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,2,0,0,0],"matrix_rows":[40,9,2,4,32,48,64,128,256],"offset":42,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":480,"old":464,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":471,"old":465,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[2,1,66,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":473,"old":465,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,1,2],"matrix_rows":[258,1,386,4,8,16,32,192,256],"offset":389,"phase":0,"quadratic_rows":[0,130,0,0,0,0,128,194,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":469,"old":466,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,1,3,2],"matrix_rows":[448,1,130,4,8,16,32,320,256],"offset":260,"phase":2,"quadratic_rows":[0,128,0,0,0,0,192,194,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":472,"old":466,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,3,1,2],"matrix_rows":[448,1,66,4,8,16,32,256,384],"offset":132,"phase":2,"quadratic_rows":[0,64,0,0,0,0,194,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":468,"old":467,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":469,"old":467,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[2,1,130,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":475,"old":468,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":477,"old":468,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,41,2,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,37,1,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":475,"old":469,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[322,1,258,4,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":476,"old":469,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,2],"matrix_rows":[258,1,322,4,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":471,"old":470,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":472,"old":470,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":474,"old":471,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":479,"old":471,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,2,0,0,0],"matrix_rows":[40,9,2,4,32,48,64,128,256],"offset":42,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":476,"old":472,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":479,"old":472,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,41,2,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,37,1,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":474,"old":473,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,3,0,2],"matrix_rows":[320,1,66,4,8,16,32,256,384],"offset":388,"phase":1,"quadratic_rows":[0,64,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":480,"old":473,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,2,0],"matrix_rows":[194,1,128,4,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,64,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,65,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":459,"old":474,"rank":2,"right":{"linear_Z4":[2,0,1,2,0,2,0,0,2],"matrix_rows":[36,258,5,256,32,8,48,320,128],"offset":110,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,19,1,34,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":482,"old":474,"rank":2,"right":{"linear_Z4":[2,0,0,3,0,1,0,0,0],"matrix_rows":[44,36,13,2,32,48,64,128,256],"offset":23,"phase":0,"quadratic_rows":[12,0,33,41,0,44,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,19,33,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":478,"old":475,"rank":2,"right":{"linear_Z4":[2,0,0,1,2,0,0,0,0],"matrix_rows":[60,36,13,2,16,48,64,128,256],"offset":37,"phase":3,"quadratic_rows":[12,0,1,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,9,18,34,64,2,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":481,"old":475,"rank":2,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,2],"matrix_rows":[258,5,33,256,44,32,16,64,384],"offset":11,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,9,18,34,64,2,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":481,"old":476,"rank":2,"right":{"linear_Z4":[3,0,3,2,0,0,0,2,0],"matrix_rows":[130,5,33,128,44,32,16,192,256],"offset":11,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,19,33,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":484,"old":476,"rank":2,"right":{"linear_Z4":[2,0,0,1,2,0,0,0,0],"matrix_rows":[60,36,13,2,16,48,64,128,256],"offset":37,"phase":3,"quadratic_rows":[12,0,1,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":478,"old":477,"rank":2,"right":{"linear_Z4":[2,0,3,0,0,2,0,0,2],"matrix_rows":[36,320,5,2,32,8,48,256,384],"offset":84,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":483,"old":477,"rank":2,"right":{"linear_Z4":[2,0,3,0,0,2,0,0,2],"matrix_rows":[36,258,5,256,32,8,48,64,384],"offset":84,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":478,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,36,40,16,64,384],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":860,"old":478,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,32,64,384],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1019,"old":478,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":478,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":482,"old":479,"rank":2,"right":{"linear_Z4":[2,1,3,0,0,2,0,0,2],"matrix_rows":[36,386,5,258,32,8,48,64,256],"offset":84,"phase":1,"quadratic_rows":[4,130,5,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":484,"old":479,"rank":2,"right":{"linear_Z4":[2,1,3,0,0,2,0,2,2],"matrix_rows":[36,258,5,386,32,8,48,64,256],"offset":84,"phase":1,"quadratic_rows":[4,130,5,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":459,"old":480,"rank":2,"right":{"linear_Z4":[2,0,1,2,0,2,0,0,2],"matrix_rows":[36,320,5,2,32,8,48,256,384],"offset":230,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,19,1,34,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":483,"old":480,"rank":2,"right":{"linear_Z4":[2,0,0,3,0,1,0,0,0],"matrix_rows":[44,36,13,2,32,48,64,128,256],"offset":23,"phase":0,"quadratic_rows":[12,0,33,41,0,44,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,3,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":481,"rank":2,"right":{"linear_Z4":[0,0,2,0,1,0,0,0,0],"matrix_rows":[17,20,32,2,48,56,64,128,256],"offset":39,"phase":0,"quadratic_rows":[48,0,32,0,17,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":858,"old":481,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,2,0,0,0],"matrix_rows":[5,32,2,36,8,48,64,128,256],"offset":42,"phase":1,"quadratic_rows":[36,0,37,0,0,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1013,"old":481,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[5,17,2,16,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[21,0,17,0,5,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":482,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,36,40,16,320,128],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":854,"old":482,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,32,320,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1001,"old":482,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":483,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,320,32,2,36,40,16,256,384],"offset":134,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":813,"old":483,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[1,321,2,4,8,16,32,256,384],"offset":131,"phase":3,"quadratic_rows":[321,0,0,0,0,0,1,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":874,"old":483,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":483,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":129,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":484,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[1,130,32,128,36,40,16,192,256],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":856,"old":484,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,8,16,32,192,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1007,"old":484,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":484,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,32,192,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":491,"old":485,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,0],"matrix_rows":[2,1,18,4,8,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":492,"old":485,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,2,0],"matrix_rows":[136,9,2,4,128,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":494,"old":486,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,2,0],"matrix_rows":[136,1,2,12,128,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":495,"old":486,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[2,1,66,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":495,"old":487,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":502,"old":487,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":494,"old":488,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":496,"old":488,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":492,"old":489,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,41,2,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,37,1,0,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":496,"old":489,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,33,2,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":491,"old":490,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,1,0,2],"matrix_rows":[336,1,18,4,8,256,32,320,128],"offset":36,"phase":2,"quadratic_rows":[0,16,0,0,82,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":502,"old":490,"rank":1,"right":{"linear_Z4":[0,2,0,0,1,0,3,0,2],"matrix_rows":[336,1,66,4,8,272,32,256,128],"offset":132,"phase":2,"quadratic_rows":[0,64,0,0,80,0,82,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":493,"old":491,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,2,0],"matrix_rows":[136,9,2,4,128,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":503,"old":491,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,2],"matrix_rows":[258,1,322,4,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":493,"old":492,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,0],"matrix_rows":[2,1,18,4,8,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":497,"old":492,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,160,64,256],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,64,129,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":498,"old":493,"rank":2,"right":{"linear_Z4":[2,1,3,0,0,0,0,2,2],"matrix_rows":[132,322,5,258,128,8,16,160,256],"offset":133,"phase":3,"quadratic_rows":[4,66,5,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,65,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":504,"old":493,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[258,320,1,256,4,8,272,32,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,256,0,320]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":499,"old":494,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[16,1,2,4,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,16,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":501,"old":494,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[2,1,66,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":501,"old":495,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,2,0],"matrix_rows":[136,1,2,12,128,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":505,"old":495,"rank":1,"right":{"linear_Z4":[3,0,2,3,0,0,0,0,0],"matrix_rows":[9,37,2,32,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,1,41,0,9,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":497,"old":496,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,136,16,32,64,256],"offset":19,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":499,"old":496,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,3,0,2],"matrix_rows":[322,1,258,4,8,80,32,256,128],"offset":160,"phase":2,"quadratic_rows":[0,66,0,0,64,0,82,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,16,32,1,64,130,256,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":498,"old":497,"rank":2,"right":{"linear_Z4":[0,2,0,0,3,0,0,0,3],"matrix_rows":[258,338,1,274,4,8,32,256,128],"offset":0,"phase":0,"quadratic_rows":[0,320,0,0,80,0,18,0,258]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,65,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":500,"old":497,"rank":2,"right":{"linear_Z4":[0,0,0,0,3,0,2,0,3],"matrix_rows":[338,320,1,256,4,8,336,32,128],"offset":9,"phase":0,"quadratic_rows":[0,80,0,0,18,0,258,0,320]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,66,1,128,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":498,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,36,40,272,64,128],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":864,"old":498,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,272,32,64,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1031,"old":498,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":498,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,272,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,33,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":500,"old":499,"rank":2,"right":{"linear_Z4":[2,0,3,0,1,0,0,2,2],"matrix_rows":[132,274,5,256,128,136,272,32,64],"offset":37,"phase":3,"quadratic_rows":[4,16,5,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,66,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":506,"old":499,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[66,272,1,320,4,8,64,32,128],"offset":66,"phase":0,"quadratic_rows":[0,256,0,0,320,0,272,0,338]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":500,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,272,32,2,36,40,256,320,128],"offset":70,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":817,"old":500,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,32,320,128],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":886,"old":500,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":500,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,320,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,33,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":482,"old":501,"rank":2,"right":{"linear_Z4":[2,1,3,0,0,0,0,2,2],"matrix_rows":[132,274,5,258,128,136,256,32,64],"offset":37,"phase":3,"quadratic_rows":[4,18,5,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,66,128,1,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":506,"old":501,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[258,80,1,64,4,8,320,32,128],"offset":9,"phase":0,"quadratic_rows":[0,320,0,0,256,0,258,0,338]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":503,"old":502,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,2],"matrix_rows":[258,1,274,4,8,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":505,"old":502,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,66,129,2,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":458,"old":503,"rank":2,"right":{"linear_Z4":[2,0,1,2,0,0,2,2,0],"matrix_rows":[132,66,5,64,128,8,80,160,256],"offset":191,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,33,66,129,2,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":504,"old":503,"rank":2,"right":{"linear_Z4":[2,0,2,1,0,0,2,2,0],"matrix_rows":[136,66,9,64,4,128,80,160,256],"offset":191,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,33,64,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":504,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,132,160,2,32,168,16,64,256],"offset":51,"phase":0,"quadratic_rows":[32,0,160,0,0,5,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":857,"old":504,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1006,"old":504,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":504,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,160,64,256],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,66,128,1,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":458,"old":505,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[258,80,1,64,4,8,320,32,128],"offset":9,"phase":0,"quadratic_rows":[0,320,0,0,256,0,258,0,338]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,33,66,129,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":482,"old":505,"rank":2,"right":{"linear_Z4":[2,1,0,3,0,0,0,2,2],"matrix_rows":[136,274,9,258,4,128,256,160,64],"offset":133,"phase":3,"quadratic_rows":[8,18,0,9,2,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,1,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":506,"rank":2,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,0],"matrix_rows":[129,132,32,2,160,168,16,64,256],"offset":39,"phase":0,"quadratic_rows":[160,0,32,0,0,5,0,129,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":862,"old":506,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1025,"old":506,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":509,"old":507,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,0,3,0,2],"matrix_rows":[327,257,258,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[71,71,71,0,0,0,71,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":519,"old":507,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":509,"old":508,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,3,3,0],"matrix_rows":[75,257,258,132,392,16,32,320,256],"offset":1,"phase":1,"quadratic_rows":[331,331,128,459,0,0,331,140,75]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":523,"old":508,"rank":1,"right":{"linear_Z4":[2,3,2,1,0,0,3,3,2],"matrix_rows":[458,1,258,12,256,272,288,320,384],"offset":123,"phase":0,"quadratic_rows":[0,202,8,206,0,0,202,202,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":522,"old":509,"rank":1,"right":{"linear_Z4":[3,3,1,2,0,0,3,0,2],"matrix_rows":[327,321,322,260,72,16,32,256,128],"offset":150,"phase":2,"quadratic_rows":[7,7,71,64,0,0,76,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":525,"old":509,"rank":1,"right":{"linear_Z4":[1,0,1,2,0,0,0,2,0],"matrix_rows":[5,129,2,140,128,144,160,64,256],"offset":0,"phase":0,"quadratic_rows":[133,0,141,4,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":514,"old":510,"rank":1,"right":{"linear_Z4":[1,2,1,0,1,0,1,1,0],"matrix_rows":[213,385,130,388,8,400,32,448,256],"offset":431,"phase":3,"quadratic_rows":[341,128,341,0,341,0,341,386,213]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":515,"old":510,"rank":1,"right":{"linear_Z4":[3,2,3,0,0,2,0,0,0],"matrix_rows":[39,33,32,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[7,5,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":517,"old":511,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,2],"matrix_rows":[5,257,10,268,256,16,288,64,384],"offset":90,"phase":0,"quadratic_rows":[261,8,269,14,0,0,0,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":519,"old":511,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":515,"old":512,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[471,257,256,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[215,213,215,0,215,0,215,215,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":523,"old":512,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,0,1,1,2],"matrix_rows":[471,257,258,260,8,256,32,320,384],"offset":0,"phase":0,"quadratic_rows":[215,215,215,0,199,0,215,215,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":514,"old":513,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,0,1,2,0],"matrix_rows":[87,129,130,132,8,144,32,192,256],"offset":0,"phase":0,"quadratic_rows":[215,215,215,0,215,0,215,87,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":517,"old":513,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[2,1,130,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":516,"old":514,"rank":1,"right":{"linear_Z4":[2,0,2,0,3,0,3,0,2],"matrix_rows":[338,1,256,4,264,272,288,320,384],"offset":95,"phase":0,"quadratic_rows":[0,80,0,0,82,0,82,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":518,"old":514,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,0,2,0,0],"matrix_rows":[23,193,130,196,8,208,32,128,256],"offset":1,"phase":1,"quadratic_rows":[215,151,215,0,215,0,21,23,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":516,"old":515,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,0,0],"matrix_rows":[213,385,2,388,8,400,32,448,256],"offset":427,"phase":0,"quadratic_rows":[341,0,341,0,341,0,341,256,213]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":524,"old":515,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,3,3,0],"matrix_rows":[213,257,2,260,8,256,32,320,384],"offset":33,"phase":0,"quadratic_rows":[469,0,469,0,453,0,469,469,213]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,65,128,2,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":481,"old":516,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,1,0],"matrix_rows":[21,192,145,2,148,8,128,32,256],"offset":85,"phase":0,"quadratic_rows":[133,0,133,0,128,0,128,213,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,32,65,128,2,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":506,"old":516,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,0],"matrix_rows":[21,197,129,2,132,8,128,32,256],"offset":65,"phase":0,"quadratic_rows":[80,0,80,0,133,0,133,208,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":518,"old":517,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":520,"old":517,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,0],"matrix_rows":[2,1,18,4,8,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,34,65,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":481,"old":518,"rank":2,"right":{"linear_Z4":[2,0,2,0,0,0,0,0,2],"matrix_rows":[21,263,337,256,340,264,64,288,384],"offset":235,"phase":0,"quadratic_rows":[66,5,66,0,64,0,21,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,33,2,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":521,"old":518,"rank":2,"right":{"linear_Z4":[2,0,3,0,3,0,3,0,0],"matrix_rows":[68,80,5,18,64,72,32,128,256],"offset":20,"phase":2,"quadratic_rows":[4,16,5,0,82,0,80,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":520,"old":519,"rank":1,"right":{"linear_Z4":[1,3,1,2,0,0,0,0,0],"matrix_rows":[15,257,266,268,256,272,288,64,384],"offset":91,"phase":1,"quadratic_rows":[271,263,263,257,0,0,0,0,15]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":522,"old":519,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,3,32,64,2,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":457,"old":520,"rank":2,"right":{"linear_Z4":[2,1,2,2,0,0,0,0,0],"matrix_rows":[74,68,5,78,8,16,32,128,256],"offset":29,"phase":0,"quadratic_rows":[4,6,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,17,1,32,64,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":521,"old":520,"rank":2,"right":{"linear_Z4":[2,2,3,3,0,0,3,0,0],"matrix_rows":[78,10,5,74,8,16,32,128,256],"offset":20,"phase":2,"quadratic_rows":[4,12,71,10,0,0,68,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,35,66,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":521,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,258,288,256,292,40,272,320,384],"offset":26,"phase":3,"quadratic_rows":[288,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":861,"old":521,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,264,272,288,320,384],"offset":87,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1018,"old":521,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":8,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":521,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":85,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,33,66,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":457,"old":522,"rank":2,"right":{"linear_Z4":[2,3,2,3,0,0,3,0,1],"matrix_rows":[332,66,13,262,320,64,272,288,384],"offset":141,"phase":0,"quadratic_rows":[12,326,259,265,0,0,66,0,270]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,33,66,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":527,"old":522,"rank":2,"right":{"linear_Z4":[2,3,2,1,0,0,3,0,1],"matrix_rows":[332,74,13,270,320,64,272,288,384],"offset":45,"phase":0,"quadratic_rows":[12,326,267,77,0,0,74,0,262]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":524,"old":523,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,3,3,0],"matrix_rows":[199,257,256,260,8,16,32,320,384],"offset":5,"phase":0,"quadratic_rows":[455,453,455,0,0,0,455,455,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":525,"old":523,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,0,3,0,0],"matrix_rows":[199,257,258,260,8,16,32,320,256],"offset":257,"phase":0,"quadratic_rows":[455,455,455,0,0,0,455,327,199]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,64,128,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":506,"old":524,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,1],"matrix_rows":[389,64,129,2,132,8,16,32,256],"offset":258,"phase":0,"quadratic_rows":[261,0,261,0,0,0,256,256,453]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,32,64,128,257,2,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":526,"old":524,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[69,389,257,2,260,8,16,32,256],"offset":257,"phase":0,"quadratic_rows":[192,0,192,0,0,0,261,261,448]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,32,64,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":526,"old":525,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[7,325,257,256,260,8,16,32,128],"offset":9,"phase":0,"quadratic_rows":[66,261,66,0,0,0,261,0,322]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,33,64,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":527,"old":525,"rank":2,"right":{"linear_Z4":[2,2,0,0,0,0,0,0,3],"matrix_rows":[260,320,5,6,256,264,16,32,128],"offset":29,"phase":0,"quadratic_rows":[4,4,3,0,0,0,256,0,320]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,1,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":526,"rank":2,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,1],"matrix_rows":[257,260,32,2,288,296,16,64,128],"offset":39,"phase":0,"quadratic_rows":[288,0,32,0,0,5,0,0,257]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":865,"old":526,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1030,"old":526,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":526,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,264,16,32,64,128],"offset":19,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,3,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":527,"rank":2,"right":{"linear_Z4":[2,0,0,2,0,0,0,0,0],"matrix_rows":[1,42,32,40,12,16,64,128,256],"offset":4,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":821,"old":527,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":26,"phase":1,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":898,"old":527,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,11,8,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[11,1,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":527,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[10,1,8,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":528,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,64,132,1,262,2,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":576,"old":528,"rank":3,"right":{"linear_Z4":[2,1,1,0,3,2,1,0,1],"matrix_rows":[34,448,400,5,38,32,8,464,256],"offset":443,"phase":3,"quadratic_rows":[4,6,7,0,80,0,336,256,448]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,33,2,64,3,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":580,"old":528,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,1,1,1,2],"matrix_rows":[12,34,320,5,8,40,144,448,256],"offset":493,"phase":3,"quadratic_rows":[4,40,37,34,128,46,192,208,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":529,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,3,3,0],"matrix_rows":[213,273,2,276,8,256,32,320,384],"offset":43,"phase":0,"quadratic_rows":[453,0,453,0,448,0,469,469,213]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,16,39,64,131,256,5,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":648,"old":529,"rank":3,"right":{"linear_Z4":[1,0,1,0,2,0,2,1,3],"matrix_rows":[213,21,325,257,210,260,8,256,32],"offset":1,"phase":1,"quadratic_rows":[133,208,133,0,258,0,258,135,336]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[11,18,35,66,132,2,257,1,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":652,"old":529,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,2,1,2,1],"matrix_rows":[325,39,16,161,32,164,40,256,192],"offset":134,"phase":1,"quadratic_rows":[450,5,450,0,256,0,453,69,341]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":64,"old":530,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,2,0,0],"matrix_rows":[21,321,2,324,8,336,32,256,384],"offset":1,"phase":1,"quadratic_rows":[341,0,341,0,341,0,21,0,21]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,35,1,64,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":572,"old":530,"rank":3,"right":{"linear_Z4":[2,1,0,3,0,3,0,0,2],"matrix_rows":[42,4,320,13,6,32,16,256,384],"offset":59,"phase":1,"quadratic_rows":[12,46,43,47,0,46,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,35,1,68,2,128,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":581,"old":530,"rank":3,"right":{"linear_Z4":[2,1,0,1,0,1,0,0,2],"matrix_rows":[44,42,272,13,46,32,256,64,384],"offset":59,"phase":1,"quadratic_rows":[12,6,43,45,0,44,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":531,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,2,0],"matrix_rows":[144,65,2,68,8,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,64,0,80,0,21,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,1,16,32,66,128,4,6,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"new":650,"old":531,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,0],"matrix_rows":[2,16,192,1,4,8,128,32,256],"offset":67,"phase":1,"quadratic_rows":[0,0,0,0,128,0,128,208,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,37,65,130,4,258,2,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":656,"old":531,"rank":3,"right":{"linear_Z4":[2,2,0,1,1,0,1,2,2],"matrix_rows":[300,144,36,13,66,256,288,208,128],"offset":475,"phase":3,"quadratic_rows":[12,64,1,9,80,0,82,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":532,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,33,3,68,2,128,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":573,"old":532,"rank":3,"right":{"linear_Z4":[2,0,1,1,1,2,2,3,2],"matrix_rows":[36,10,400,5,32,40,272,192,256],"offset":425,"phase":1,"quadratic_rows":[4,40,13,46,144,10,128,208,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,1,70,128,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":577,"old":532,"rank":3,"right":{"linear_Z4":[2,1,1,2,2,0,3,0,3],"matrix_rows":[10,272,464,5,14,8,336,32,256],"offset":57,"phase":0,"quadratic_rows":[4,6,7,0,384,0,192,80,272]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":533,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,33,10,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,8,45,14,0,5,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,65,130,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":654,"old":533,"rank":3,"right":{"linear_Z4":[3,1,3,2,0,0,0,2,3],"matrix_rows":[5,16,402,41,18,36,32,256,64],"offset":151,"phase":1,"quadratic_rows":[45,386,37,1,128,5,0,274,386]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,37,65,130,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":658,"old":533,"rank":3,"right":{"linear_Z4":[2,2,0,1,1,0,2,3,2],"matrix_rows":[108,400,36,13,130,64,96,272,256],"offset":345,"phase":1,"quadratic_rows":[12,128,1,9,144,0,0,146,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":534,"rank":1,"right":{"linear_Z4":[0,0,1,3,3,0,0,1,2],"matrix_rows":[396,1,18,260,280,256,288,320,384],"offset":240,"phase":2,"quadratic_rows":[0,16,140,156,26,0,0,140,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":593,"old":534,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,0,3,0],"matrix_rows":[30,129,258,260,264,400,32,64,256],"offset":1,"phase":1,"quadratic_rows":[128,286,286,286,414,0,0,145,30]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,34,68,8,129,257,1,3,14],"offset":0,"phase":0,"quadratic_rows":[3,15,14,14,0,0,0,0,0]},"new":779,"old":534,"rank":4,"right":{"linear_Z4":[1,1,0,0,0,0,0,1,2],"matrix_rows":[208,403,68,264,209,194,320,64,96],"offset":68,"phase":0,"quadratic_rows":[323,339,256,256,450,0,403,464,223]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":535,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":595,"old":535,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,3,2],"matrix_rows":[388,1,2,260,8,16,32,192,256],"offset":384,"phase":2,"quadratic_rows":[0,0,132,0,0,0,128,196,0]}},{"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[16,33,74,132,5,4,2,264,8],"offset":0,"phase":0,"quadratic_rows":[5,10,1,2,0,0,0,0,0]},"new":781,"old":535,"rank":4,"right":{"linear_Z4":[2,1,2,0,1,2,3,0,3],"matrix_rows":[34,260,24,452,3,48,324,32,256],"offset":49,"phase":3,"quadratic_rows":[2,19,384,48,58,24,192,68,260]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":536,"rank":1,"right":{"linear_Z4":[0,0,0,1,3,0,2,0,0],"matrix_rows":[8,1,18,4,88,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,0,88,26,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":636,"old":536,"rank":1,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,0],"matrix_rows":[4,1,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,35,68,132,257,2,1,8,12],"offset":0,"phase":0,"quadratic_rows":[2,3,8,12,0,0,0,0,0]},"new":800,"old":536,"rank":4,"right":{"linear_Z4":[2,0,0,3,3,3,1,2,3],"matrix_rows":[114,66,396,384,19,96,256,392,64],"offset":119,"phase":0,"quadratic_rows":[18,65,136,12,49,48,66,260,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":537,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,2,1,2],"matrix_rows":[399,321,322,260,328,16,32,256,384],"offset":0,"phase":0,"quadratic_rows":[207,207,143,207,0,0,11,143,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":638,"old":537,"rank":1,"right":{"linear_Z4":[2,2,1,2,0,0,1,1,2],"matrix_rows":[452,1,2,268,256,272,288,320,384],"offset":102,"phase":0,"quadratic_rows":[0,0,204,4,0,0,196,196,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,35,65,130,258,2,4,8,15],"offset":0,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]},"new":799,"old":537,"rank":4,"right":{"linear_Z4":[2,2,0,0,0,0,0,0,1],"matrix_rows":[39,299,320,384,261,262,288,32,48],"offset":0,"phase":0,"quadratic_rows":[8,8,256,259,0,0,256,256,460]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":538,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":585,"old":538,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,2,0,0],"matrix_rows":[79,65,66,68,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[15,15,15,15,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,35,75,12,133,6,4,261,5],"offset":0,"phase":0,"quadratic_rows":[12,12,15,15,0,0,0,0,0]},"new":775,"old":538,"rank":4,"right":{"linear_Z4":[2,2,3,1,0,0,0,0,0],"matrix_rows":[334,126,376,372,19,288,380,256,384],"offset":220,"phase":1,"quadratic_rows":[18,1,316,316,13,12,0,0,12]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":539,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,2,0,0],"matrix_rows":[21,321,2,324,8,336,32,256,384],"offset":1,"phase":1,"quadratic_rows":[341,0,341,0,341,0,21,0,21]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":587,"old":539,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[17,33,68,3,130,2,8,268,12],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":777,"old":539,"rank":4,"right":{"linear_Z4":[3,3,0,1,0,0,0,0,2],"matrix_rows":[27,24,260,64,41,58,256,32,384],"offset":71,"phase":2,"quadratic_rows":[51,35,0,24,9,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":540,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,65,2,196,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":644,"old":540,"rank":1,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,0],"matrix_rows":[4,1,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,35,68,132,257,2,8,12,1],"offset":0,"phase":0,"quadratic_rows":[2,3,8,12,0,0,0,0,0]},"new":804,"old":540,"rank":4,"right":{"linear_Z4":[2,0,0,3,3,3,2,3,1],"matrix_rows":[306,258,204,192,19,288,128,200,256],"offset":119,"phase":0,"quadratic_rows":[18,257,72,12,49,48,132,192,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":541,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,2],"matrix_rows":[260,65,2,324,8,80,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":646,"old":541,"rank":1,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,0],"matrix_rows":[4,1,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,35,68,132,257,2,8,1,12],"offset":0,"phase":0,"quadratic_rows":[2,3,8,12,0,0,0,0,0]},"new":803,"old":541,"rank":4,"right":{"linear_Z4":[2,0,0,3,3,3,2,1,3],"matrix_rows":[178,130,332,320,19,160,256,328,128],"offset":119,"phase":0,"quadratic_rows":[18,129,72,12,49,48,260,130,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":542,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":609,"old":542,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,3,2],"matrix_rows":[385,257,2,4,8,16,32,192,256],"offset":384,"phase":2,"quadratic_rows":[129,0,0,0,0,0,128,193,0]}},{"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[25,32,70,2,132,4,1,264,8],"offset":0,"phase":0,"quadratic_rows":[9,6,2,1,0,0,0,0,0]},"new":787,"old":542,"rank":4,"right":{"linear_Z4":[2,2,0,3,0,1,3,0,3],"matrix_rows":[257,44,36,449,321,14,32,48,256],"offset":102,"phase":0,"quadratic_rows":[384,12,34,42,0,44,192,65,257]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":543,"rank":1,"right":{"linear_Z4":[3,0,1,1,0,0,0,3,0],"matrix_rows":[173,257,2,292,296,16,256,64,384],"offset":89,"phase":0,"quadratic_rows":[429,0,397,397,0,385,0,429,173]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":611,"old":543,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,3,0,3,0],"matrix_rows":[45,257,130,260,392,16,288,64,256],"offset":1,"phase":1,"quadratic_rows":[301,128,301,429,0,301,0,138,45]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,36,68,130,258,8,2,6,13],"offset":0,"phase":0,"quadratic_rows":[13,6,15,13,0,0,0,0,0]},"new":789,"old":543,"rank":4,"right":{"linear_Z4":[0,1,1,0,0,0,0,1,2],"matrix_rows":[65,200,398,288,320,202,196,64,80],"offset":17,"phase":0,"quadratic_rows":[256,326,334,452,0,256,398,456,239]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":544,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":620,"old":544,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,2,0,0],"matrix_rows":[72,1,2,12,64,80,32,128,256],"offset":61,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[17,34,66,130,2,4,256,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,0,9,0,0,0,0,0]},"new":792,"old":544,"rank":4,"right":{"linear_Z4":[0,3,2,3,0,2,0,0,1],"matrix_rows":[1,10,32,384,256,22,16,24,64],"offset":23,"phase":2,"quadratic_rows":[256,30,2,26,10,0,0,256,385]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":545,"rank":1,"right":{"linear_Z4":[3,1,0,1,0,0,0,3,0],"matrix_rows":[203,257,322,4,328,16,32,256,384],"offset":149,"phase":0,"quadratic_rows":[459,395,0,395,0,0,385,459,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":622,"old":545,"rank":1,"right":{"linear_Z4":[3,2,2,1,0,0,3,3,2],"matrix_rows":[457,257,2,12,256,272,288,320,384],"offset":125,"phase":0,"quadratic_rows":[201,0,8,205,0,0,201,201,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[21,32,71,130,261,5,9,1,10],"offset":0,"phase":0,"quadratic_rows":[11,13,6,11,0,0,0,0,0]},"new":791,"old":545,"rank":4,"right":{"linear_Z4":[0,2,2,1,0,3,2,1,3],"matrix_rows":[257,300,449,320,229,14,288,256,48],"offset":486,"phase":2,"quadratic_rows":[36,12,227,42,0,237,36,420,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":546,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,2,0,0],"matrix_rows":[11,321,322,4,328,16,32,256,384],"offset":1,"phase":1,"quadratic_rows":[331,331,0,331,0,0,11,0,11]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":601,"old":546,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[17,34,66,132,4,6,8,265,9],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":783,"old":546,"rank":4,"right":{"linear_Z4":[0,3,3,0,0,1,0,0,2],"matrix_rows":[257,46,40,64,256,50,60,16,384],"offset":23,"phase":2,"quadratic_rows":[0,30,22,34,6,40,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":547,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":603,"old":547,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,3,2,0,0],"matrix_rows":[103,65,66,68,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[39,39,39,0,0,39,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,0,0,0,0,0],"matrix_rows":[30,32,70,131,5,9,1,259,3],"offset":0,"phase":0,"quadratic_rows":[15,9,9,15,0,0,0,0,0]},"new":785,"old":547,"rank":4,"right":{"linear_Z4":[3,2,2,0,0,1,0,0,0],"matrix_rows":[376,357,125,345,377,14,272,256,384],"offset":185,"phase":1,"quadratic_rows":[313,12,2,35,33,313,0,0,33]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":548,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":628,"old":548,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,0,2],"matrix_rows":[264,1,2,12,256,272,32,64,128],"offset":61,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[17,34,66,130,2,4,8,9,256],"offset":0,"phase":0,"quadratic_rows":[9,2,0,9,0,0,0,0,0]},"new":796,"old":548,"rank":4,"right":{"linear_Z4":[0,3,2,3,0,2,0,1,0],"matrix_rows":[1,10,32,192,128,22,16,24,256],"offset":23,"phase":2,"quadratic_rows":[128,30,2,26,10,0,128,193,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":549,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,2],"matrix_rows":[257,321,66,4,72,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":630,"old":549,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,2,0],"matrix_rows":[136,1,2,12,128,144,32,64,256],"offset":61,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[17,34,66,130,2,4,8,256,9],"offset":0,"phase":0,"quadratic_rows":[9,2,0,9,0,0,0,0,0]},"new":795,"old":549,"rank":4,"right":{"linear_Z4":[0,3,2,3,0,2,0,0,1],"matrix_rows":[1,10,32,320,256,22,16,24,128],"offset":23,"phase":2,"quadratic_rows":[256,30,2,26,10,0,256,0,321]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":550,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,3,0,3,2],"matrix_rows":[422,9,258,268,256,272,288,64,384],"offset":61,"phase":1,"quadratic_rows":[8,166,174,13,0,166,0,166,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":625,"old":550,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,3,0,3,0],"matrix_rows":[45,257,130,388,264,16,288,64,256],"offset":1,"phase":1,"quadratic_rows":[301,128,429,301,0,301,0,134,45]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,36,70,132,262,8,6,2,13],"offset":0,"phase":0,"quadratic_rows":[13,6,15,13,0,0,0,0,0]},"new":795,"old":550,"rank":4,"right":{"linear_Z4":[0,1,3,1,0,0,1,0,2],"matrix_rows":[65,196,330,288,320,198,64,200,80],"offset":17,"phase":0,"quadratic_rows":[256,398,70,394,0,256,196,74,43]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":551,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":627,"old":551,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,3,2],"matrix_rows":[416,1,2,4,8,16,288,192,256],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,0,160,128,224,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[17,32,66,3,1,140,4,264,8],"offset":0,"phase":0,"quadratic_rows":[2,3,12,4,0,0,0,0,0]},"new":797,"old":551,"rank":4,"right":{"linear_Z4":[0,2,1,1,2,2,3,0,3],"matrix_rows":[9,20,288,480,16,6,24,352,256],"offset":98,"phase":3,"quadratic_rows":[24,4,14,29,9,384,192,96,288]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":552,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":604,"old":552,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,3,0,1,2],"matrix_rows":[416,33,2,4,8,16,256,64,384],"offset":66,"phase":2,"quadratic_rows":[32,0,0,0,0,161,0,160,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,6,1,9],"offset":0,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]},"new":784,"old":552,"rank":4,"right":{"linear_Z4":[3,2,0,1,0,0,2,2,3],"matrix_rows":[384,92,20,417,385,14,64,80,256],"offset":426,"phase":3,"quadratic_rows":[33,12,2,10,0,129,0,288,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":553,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,3,0,3,0],"matrix_rows":[230,1,322,324,8,16,288,256,384],"offset":141,"phase":0,"quadratic_rows":[0,422,422,0,0,486,416,486,230]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":606,"old":553,"rank":1,"right":{"linear_Z4":[2,3,3,0,0,1,3,3,0],"matrix_rows":[230,33,258,260,8,16,256,320,384],"offset":67,"phase":3,"quadratic_rows":[32,486,486,0,0,487,486,486,230]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,67,129,1,258,4,8,14],"offset":0,"phase":0,"quadratic_rows":[0,14,14,14,0,0,0,0,0]},"new":783,"old":553,"rank":4,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,0],"matrix_rows":[23,38,320,384,16,306,308,24,256],"offset":1,"phase":1,"quadratic_rows":[6,257,257,0,0,256,256,256,230]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":554,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":617,"old":554,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,3,2,0,0],"matrix_rows":[107,65,66,4,72,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[43,43,0,43,0,43,0,0,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[26,32,71,130,5,9,1,263,7],"offset":0,"phase":0,"quadratic_rows":[11,13,6,11,0,0,0,0,0]},"new":791,"old":554,"rank":4,"right":{"linear_Z4":[2,2,0,1,0,0,3,0,1],"matrix_rows":[372,361,276,341,373,14,256,272,384],"offset":121,"phase":1,"quadratic_rows":[328,12,330,127,328,328,125,0,309]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":555,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,2,0,0],"matrix_rows":[38,1,322,324,8,16,352,256,384],"offset":1,"phase":1,"quadratic_rows":[0,358,358,0,0,358,38,0,38]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":619,"old":555,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[18,32,67,1,2,132,8,268,12],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":793,"old":555,"rank":4,"right":{"linear_Z4":[1,2,0,1,1,0,0,0,2],"matrix_rows":[28,25,288,64,29,14,16,256,384],"offset":247,"phase":1,"quadratic_rows":[5,12,27,30,28,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":556,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,66,68,8,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":612,"old":556,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,3,1,2,0],"matrix_rows":[224,33,2,4,8,16,128,192,256],"offset":66,"phase":2,"quadratic_rows":[32,0,0,0,0,97,96,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,1,9,6],"offset":0,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]},"new":788,"old":556,"rank":4,"right":{"linear_Z4":[3,2,0,1,0,0,2,3,2],"matrix_rows":[192,284,20,225,193,14,256,272,128],"offset":426,"phase":3,"quadratic_rows":[33,12,2,10,0,65,160,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":557,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,2],"matrix_rows":[288,1,66,68,8,16,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":614,"old":557,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,3,1,0,2],"matrix_rows":[352,33,2,4,8,16,256,320,128],"offset":66,"phase":2,"quadratic_rows":[32,0,0,0,0,97,96,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,1,6,9],"offset":0,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]},"new":787,"old":557,"rank":4,"right":{"linear_Z4":[3,2,0,1,0,0,2,2,3],"matrix_rows":[320,156,20,353,321,14,128,144,256],"offset":426,"phase":3,"quadratic_rows":[33,12,2,10,0,65,288,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":558,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":641,"old":558,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,3,2],"matrix_rows":[392,1,2,4,264,16,32,192,256],"offset":384,"phase":2,"quadratic_rows":[0,0,0,136,0,0,128,200,0]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[16,33,66,140,3,2,4,264,8],"offset":0,"phase":0,"quadratic_rows":[3,1,12,4,0,0,0,0,0]},"new":803,"old":558,"rank":4,"right":{"linear_Z4":[2,1,0,2,1,2,3,0,3],"matrix_rows":[34,20,264,456,3,48,32,328,256],"offset":49,"phase":3,"quadratic_rows":[2,19,48,384,54,20,192,72,264]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":559,"rank":1,"right":{"linear_Z4":[1,1,0,3,3,0,0,3,2],"matrix_rows":[395,257,274,20,264,256,288,64,384],"offset":103,"phase":1,"quadratic_rows":[139,155,16,139,22,0,0,139,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":643,"old":559,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,0,3,0],"matrix_rows":[30,129,386,260,264,272,32,64,256],"offset":1,"phase":1,"quadratic_rows":[128,414,286,286,286,0,0,131,30]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,68,8,130,259,3,1,14],"offset":0,"phase":0,"quadratic_rows":[3,15,14,14,0,0,0,0,0]},"new":805,"old":559,"rank":4,"right":{"linear_Z4":[1,3,0,0,1,0,1,0,2],"matrix_rows":[194,337,68,264,195,64,320,208,96],"offset":68,"phase":0,"quadratic_rows":[403,67,256,256,401,0,194,81,29]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":560,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":588,"old":560,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,0,2,3,0,0,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[17,33,2,68,129,1,256,8,12],"offset":0,"phase":0,"quadratic_rows":[1,0,12,12,0,0,0,0,0]},"new":776,"old":560,"rank":4,"right":{"linear_Z4":[3,3,2,0,2,0,0,0,1],"matrix_rows":[3,4,8,384,49,34,256,32,64],"offset":71,"phase":2,"quadratic_rows":[51,35,0,256,1,3,0,256,392]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":561,"rank":1,"right":{"linear_Z4":[1,1,0,3,0,0,0,3,0],"matrix_rows":[203,321,322,4,264,16,32,256,384],"offset":135,"phase":0,"quadratic_rows":[395,395,0,459,0,0,392,459,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":590,"old":561,"rank":1,"right":{"linear_Z4":[3,3,2,0,0,2,0,0,0],"matrix_rows":[39,33,34,32,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[7,7,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[16,33,64,134,1,256,10,2,15],"offset":0,"phase":0,"quadratic_rows":[14,3,13,13,0,0,0,0,0]},"new":775,"old":561,"rank":4,"right":{"linear_Z4":[2,3,2,2,3,0,2,1,2],"matrix_rows":[258,216,24,320,3,16,204,272,32],"offset":244,"phase":1,"quadratic_rows":[2,275,200,276,474,0,276,148,90]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":562,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,2,0,0],"matrix_rows":[11,321,322,4,328,16,32,256,384],"offset":1,"phase":1,"quadratic_rows":[331,331,0,331,0,0,11,0,11]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":633,"old":562,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[17,33,3,68,130,2,8,268,12],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":799,"old":562,"rank":4,"right":{"linear_Z4":[3,3,1,0,0,0,0,0,2],"matrix_rows":[23,20,264,64,37,54,256,32,384],"offset":71,"phase":2,"quadratic_rows":[51,35,20,0,5,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":563,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":635,"old":563,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,0,2,0,0],"matrix_rows":[93,65,2,68,72,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[29,0,29,29,29,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[30,46,7,11,65,1,3,128,256],"offset":0,"phase":0,"quadratic_rows":[14,13,3,3,0,0,0,0,0]},"new":801,"old":563,"rank":4,"right":{"linear_Z4":[3,3,0,0,2,0,1,0,0],"matrix_rows":[92,95,23,27,125,110,32,128,256],"offset":12,"phase":2,"quadratic_rows":[47,63,3,3,66,3,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":564,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,65,66,4,200,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":596,"old":564,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,0,2,3,0,0,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[17,33,2,68,129,1,8,12,256],"offset":0,"phase":0,"quadratic_rows":[1,0,12,12,0,0,0,0,0]},"new":780,"old":564,"rank":4,"right":{"linear_Z4":[3,3,2,0,2,0,0,1,0],"matrix_rows":[3,4,8,192,49,34,128,32,256],"offset":71,"phase":2,"quadratic_rows":[51,35,0,128,1,3,128,200,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":565,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,2],"matrix_rows":[264,65,66,4,328,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":598,"old":565,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,0,2,3,0,0,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[17,33,2,68,129,1,8,256,12],"offset":0,"phase":0,"quadratic_rows":[1,0,12,12,0,0,0,0,0]},"new":779,"old":565,"rank":4,"right":{"linear_Z4":[3,3,2,0,2,0,0,0,1],"matrix_rows":[3,4,8,320,49,34,256,32,128],"offset":71,"phase":2,"quadratic_rows":[51,35,0,256,1,3,256,0,328]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":354,"old":566,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,34,65,4,129,3,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":574,"old":566,"rank":3,"right":{"linear_Z4":[1,0,1,2,2,0,2,0,2],"matrix_rows":[10,15,16,329,66,324,256,288,384],"offset":5,"phase":2,"quadratic_rows":[327,69,335,68,0,0,15,0,5]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,20,35,67,6,131,2,259,3],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":653,"old":566,"rank":3,"right":{"linear_Z4":[2,1,2,0,1,0,2,0,2],"matrix_rows":[5,85,74,265,90,260,256,288,384],"offset":234,"phase":1,"quadratic_rows":[344,18,336,17,31,0,5,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":567,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,2,0],"matrix_rows":[130,65,194,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,66,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,37,65,128,4,258,2,1],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":578,"old":567,"rank":3,"right":{"linear_Z4":[2,1,0,3,2,3,1,2,1],"matrix_rows":[300,130,260,13,194,288,256,80,128],"offset":447,"phase":0,"quadratic_rows":[12,66,257,41,64,40,82,0,260]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,32,64,2,128,4,5,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"new":657,"old":567,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,0,0,1,0],"matrix_rows":[2,16,192,1,128,4,8,32,256],"offset":19,"phase":1,"quadratic_rows":[0,128,0,0,0,0,128,194,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":568,"rank":1,"right":{"linear_Z4":[0,3,1,1,0,0,0,3,0],"matrix_rows":[158,1,258,276,280,256,32,64,384],"offset":57,"phase":0,"quadratic_rows":[0,414,398,398,386,0,0,414,158]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[12,23,36,67,134,259,3,2,7],"offset":0,"phase":0,"quadratic_rows":[2,5,2,0,0,0,0,0,0]},"new":575,"old":568,"rank":3,"right":{"linear_Z4":[3,1,3,3,3,0,0,0,1],"matrix_rows":[210,258,455,329,410,324,64,320,96],"offset":362,"phase":1,"quadratic_rows":[143,399,135,155,24,0,0,15,258]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[10,19,34,65,132,257,1,3,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":649,"old":568,"rank":3,"right":{"linear_Z4":[1,2,1,0,0,0,0,2,3],"matrix_rows":[74,271,80,201,130,196,64,320,96],"offset":0,"phase":0,"quadratic_rows":[455,453,463,452,256,0,271,15,351]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":569,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,20,35,65,128,2,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":582,"old":569,"rank":3,"right":{"linear_Z4":[2,1,0,3,2,3,1,3,2],"matrix_rows":[108,68,386,13,258,96,64,144,256],"offset":427,"phase":2,"quadratic_rows":[12,130,65,41,128,40,68,146,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,22,33,65,2,1,128,260,4],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":659,"old":569,"rank":3,"right":{"linear_Z4":[3,2,2,3,3,0,0,0,3],"matrix_rows":[9,258,402,37,274,32,40,64,256],"offset":1,"phase":1,"quadratic_rows":[45,384,1,41,144,9,0,18,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":570,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,2,0],"matrix_rows":[130,1,146,20,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,64,2,128,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":579,"old":570,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,1,0],"matrix_rows":[2,144,64,1,128,4,8,32,256],"offset":21,"phase":1,"quadratic_rows":[0,128,0,0,128,0,0,146,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,37,1,66,132,2,256,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":651,"old":570,"rank":3,"right":{"linear_Z4":[2,3,0,3,3,0,2,0,1],"matrix_rows":[268,82,260,13,66,256,80,288,128],"offset":47,"phase":1,"quadratic_rows":[12,18,257,265,18,0,0,0,268]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":412,"old":571,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,0,0,0,0],"matrix_rows":[14,1,274,276,280,256,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,286,286,286,14,0,0,0,14]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,66,4,128,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":583,"old":571,"rank":3,"right":{"linear_Z4":[0,0,3,3,0,0,2,0,2],"matrix_rows":[258,76,16,1,256,68,72,32,384],"offset":19,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,64,2,4,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":655,"old":571,"rank":3,"right":{"linear_Z4":[2,0,0,3,0,3,2,0,0],"matrix_rows":[44,4,64,13,2,32,16,128,256],"offset":47,"phase":1,"quadratic_rows":[12,0,1,41,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":772,"old":572,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":774,"old":572,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,36,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":483,"old":573,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[336,1,2,4,8,256,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,64,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":773,"old":573,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,3,0,2],"matrix_rows":[320,1,2,4,8,80,32,256,384],"offset":289,"phase":3,"quadratic_rows":[0,0,0,0,64,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":772,"old":574,"rank":1,"right":{"linear_Z4":[2,2,0,0,0,0,2,0,0],"matrix_rows":[68,5,6,64,8,16,96,128,256],"offset":15,"phase":0,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":808,"old":574,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[7,65,64,68,8,16,32,128,256],"offset":5,"phase":0,"quadratic_rows":[71,69,71,0,0,0,7,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":456,"old":575,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,5,6,256,8,16,288,64,128],"offset":14,"phase":3,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":807,"old":575,"rank":1,"right":{"linear_Z4":[3,2,3,0,0,0,0,2,0],"matrix_rows":[7,129,128,132,136,144,160,192,256],"offset":94,"phase":3,"quadratic_rows":[135,133,135,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":527,"old":576,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,32,192,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":773,"old":576,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[10,1,8,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":500,"old":577,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,36,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":772,"old":577,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,320,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":773,"old":578,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[82,1,64,4,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":809,"old":578,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,0,2,0],"matrix_rows":[144,1,18,4,8,128,32,192,256],"offset":164,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":460,"old":579,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,288,64,128],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":807,"old":579,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,0,2],"matrix_rows":[264,9,2,4,256,16,288,64,128],"offset":91,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":500,"old":580,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,2,0],"matrix_rows":[144,1,2,4,8,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,16,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":774,"old":580,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[208,1,2,4,8,144,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,16,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":483,"old":581,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[10,1,8,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":527,"old":581,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":129,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":774,"old":582,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[274,1,256,4,8,272,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":809,"old":582,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,0,0,2],"matrix_rows":[272,1,18,4,8,256,32,64,384],"offset":261,"phase":3,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":461,"old":583,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":808,"old":583,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":91,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":775,"old":584,"rank":1,"right":{"linear_Z4":[2,1,2,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,288,64,128],"offset":74,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":780,"old":584,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":110,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":660,"old":585,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,2],"matrix_rows":[3,257,274,20,24,256,288,64,384],"offset":102,"phase":0,"quadratic_rows":[259,275,16,16,14,0,0,0,3]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,23,34,4,65,129,6,257,1],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":776,"old":585,"rank":3,"right":{"linear_Z4":[1,1,0,0,2,0,1,0,2],"matrix_rows":[3,23,91,337,322,64,256,288,384],"offset":34,"phase":0,"quadratic_rows":[287,271,83,83,13,0,76,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":777,"old":586,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":782,"old":586,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":22,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":661,"old":587,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,66,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":778,"old":587,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,24,320,3,48,4,32,256,384],"offset":25,"phase":3,"quadratic_rows":[2,19,0,48,58,24,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":764,"old":588,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,0,1,2],"matrix_rows":[392,1,2,12,256,16,32,64,384],"offset":24,"phase":2,"quadratic_rows":[0,0,8,140,0,0,0,136,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,68,129,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":778,"old":588,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,2,3],"matrix_rows":[66,384,396,3,64,388,256,80,32],"offset":205,"phase":3,"quadratic_rows":[2,3,12,132,0,0,0,264,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":776,"old":589,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":802,"old":589,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":103,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":765,"old":590,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,3,3,0],"matrix_rows":[203,257,258,4,256,16,32,320,384],"offset":17,"phase":0,"quadratic_rows":[459,459,0,451,0,0,459,459,203]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,65,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[7,7,7,0,0,0,0,0,0]},"new":777,"old":590,"rank":3,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[11,320,384,265,266,4,256,16,32],"offset":0,"phase":0,"quadratic_rows":[259,259,0,256,0,0,256,256,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":775,"old":591,"rank":1,"right":{"linear_Z4":[2,3,1,0,2,0,0,0,0],"matrix_rows":[22,3,16,20,8,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,7,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":801,"old":591,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,5,6,256,264,272,288,320,384],"offset":14,"phase":3,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":776,"old":592,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[67,193,194,4,8,16,32,128,256],"offset":135,"phase":0,"quadratic_rows":[131,131,0,0,0,0,128,67,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":779,"old":592,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[67,129,130,4,8,16,32,128,256],"offset":129,"phase":0,"quadratic_rows":[195,195,0,0,0,0,131,67,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":660,"old":593,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,2,0],"matrix_rows":[3,129,146,20,24,128,160,192,256],"offset":102,"phase":0,"quadratic_rows":[131,147,16,16,14,0,0,3,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,23,34,4,65,129,257,1,6],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":780,"old":593,"rank":3,"right":{"linear_Z4":[1,1,0,0,2,0,0,2,1],"matrix_rows":[3,23,283,401,386,256,128,160,192],"offset":34,"phase":0,"quadratic_rows":[159,143,275,275,13,0,0,3,268]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":778,"old":594,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[196,1,2,132,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,68,0,0,0,4,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":781,"old":594,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,1,2,196,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,68,0,0,0,4,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":661,"old":595,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[324,1,2,256,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,64,0,0,0,68,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,68,5,4,130,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":782,"old":595,"rank":3,"right":{"linear_Z4":[2,1,2,0,1,2,3,0,2],"matrix_rows":[34,320,24,3,48,68,32,256,384],"offset":315,"phase":2,"quadratic_rows":[2,19,64,48,58,24,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":770,"old":596,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,1,2,0],"matrix_rows":[200,1,2,12,128,16,32,192,256],"offset":24,"phase":2,"quadratic_rows":[0,0,8,76,0,0,72,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,68,129,256,2,6,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":782,"old":596,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,3,2],"matrix_rows":[258,192,204,3,256,196,128,272,32],"offset":205,"phase":3,"quadratic_rows":[2,3,12,68,0,0,136,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":780,"old":597,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,288,64,128],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":806,"old":597,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,288,64,128],"offset":103,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":771,"old":598,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,1,0,2],"matrix_rows":[328,1,2,12,256,16,32,320,128],"offset":24,"phase":2,"quadratic_rows":[0,0,8,76,0,0,72,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,68,129,256,2,1,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":781,"old":598,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,2,3],"matrix_rows":[130,320,332,3,128,324,256,144,32],"offset":205,"phase":3,"quadratic_rows":[2,3,12,68,0,0,264,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":779,"old":599,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,2,0],"matrix_rows":[144,17,2,4,8,128,160,64,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":805,"old":599,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,2,0],"matrix_rows":[130,3,128,4,8,16,160,64,256],"offset":103,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":783,"old":600,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":788,"old":600,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":21,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":662,"old":601,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,66,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":784,"old":601,"rank":3,"right":{"linear_Z4":[0,2,0,3,0,1,0,0,2],"matrix_rows":[44,36,320,1,14,32,48,256,384],"offset":51,"phase":0,"quadratic_rows":[0,12,34,42,0,44,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":785,"old":602,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,272,32,64,128],"offset":38,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":790,"old":602,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":62,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":663,"old":603,"rank":1,"right":{"linear_Z4":[3,1,3,2,0,3,2,0,0],"matrix_rows":[103,97,66,100,40,16,64,128,256],"offset":90,"phase":2,"quadratic_rows":[7,39,7,32,0,42,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,130,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":786,"old":603,"rank":3,"right":{"linear_Z4":[0,1,1,2,0,0,1,0,2],"matrix_rows":[15,6,110,64,330,324,256,272,384],"offset":9,"phase":0,"quadratic_rows":[78,303,295,35,0,78,97,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":766,"old":604,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[6,1,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,22,30,4,6,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,66,2,129,256,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":786,"old":604,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,3],"matrix_rows":[257,6,384,256,26,20,16,288,64],"offset":11,"phase":1,"quadratic_rows":[0,30,22,2,6,0,0,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":784,"old":605,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":794,"old":605,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":767,"old":606,"rank":1,"right":{"linear_Z4":[0,2,2,0,0,0,3,3,2],"matrix_rows":[449,256,2,4,264,272,288,320,384],"offset":63,"phase":0,"quadratic_rows":[192,0,0,0,0,0,193,193,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,34,66,128,256,5,1,6],"offset":0,"phase":0,"quadratic_rows":[5,4,7,0,0,0,0,0,0]},"new":785,"old":606,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,0,0,3,3],"matrix_rows":[192,260,320,193,6,256,264,16,32],"offset":48,"phase":2,"quadratic_rows":[192,4,6,0,0,0,257,129,320]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":783,"old":607,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[7,32,34,36,8,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[38,39,39,0,0,7,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":793,"old":607,"rank":1,"right":{"linear_Z4":[2,2,0,0,0,2,0,0,0],"matrix_rows":[36,5,6,32,40,16,64,128,256],"offset":15,"phase":0,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":784,"old":608,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[193,129,2,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":787,"old":608,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,2,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":662,"old":609,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[321,256,2,4,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[64,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,2,68,4,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":788,"old":609,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,1,3,0,2],"matrix_rows":[320,44,36,65,14,32,48,256,384],"offset":319,"phase":3,"quadratic_rows":[64,12,34,42,0,44,65,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":786,"old":610,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[70,1,194,196,8,16,32,128,256],"offset":141,"phase":0,"quadratic_rows":[0,134,134,0,0,0,128,70,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":789,"old":610,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[70,1,130,132,8,16,32,128,256],"offset":129,"phase":0,"quadratic_rows":[0,198,198,0,0,0,134,70,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":663,"old":611,"rank":1,"right":{"linear_Z4":[3,1,3,2,0,3,0,0,2],"matrix_rows":[295,289,258,292,40,16,256,64,128],"offset":90,"phase":2,"quadratic_rows":[7,39,7,32,0,42,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,130,4,258,2,5],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":790,"old":611,"rank":3,"right":{"linear_Z4":[0,1,1,2,0,0,0,2,1],"matrix_rows":[15,6,302,256,394,388,128,144,192],"offset":9,"phase":0,"quadratic_rows":[270,175,167,35,0,270,0,6,289]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":768,"old":612,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[6,1,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,22,30,4,6,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,66,2,129,4,5,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":790,"old":612,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,0,0,3,0],"matrix_rows":[129,6,192,128,26,20,16,160,256],"offset":11,"phase":1,"quadratic_rows":[0,30,22,2,6,0,128,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":788,"old":613,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":798,"old":613,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":769,"old":614,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[6,1,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,22,30,4,6,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,66,2,129,4,256,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":789,"old":614,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,3],"matrix_rows":[257,6,320,256,26,20,16,288,128],"offset":11,"phase":1,"quadratic_rows":[0,30,22,2,6,0,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":787,"old":615,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":797,"old":615,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":791,"old":616,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,0,0,2],"matrix_rows":[264,1,10,4,256,272,32,64,128],"offset":38,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":796,"old":616,"rank":1,"right":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,272,288,320,384],"offset":62,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":664,"old":617,"rank":1,"right":{"linear_Z4":[3,1,2,3,0,3,2,0,0],"matrix_rows":[107,97,66,36,104,16,64,128,256],"offset":90,"phase":2,"quadratic_rows":[11,43,32,11,0,38,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,34,71,130,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":792,"old":617,"rank":3,"right":{"linear_Z4":[0,1,2,1,0,0,1,0,2],"matrix_rows":[15,10,110,64,326,256,328,272,384],"offset":9,"phase":0,"quadratic_rows":[78,303,35,299,0,78,97,0,10]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":793,"old":618,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":798,"old":618,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":665,"old":619,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,3,1,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":794,"old":619,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,0,0,0,2],"matrix_rows":[9,20,320,16,6,24,32,256,384],"offset":50,"phase":3,"quadratic_rows":[24,4,14,29,9,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":766,"old":620,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,33,2,4,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,257,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":794,"old":620,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,3,2,2,3],"matrix_rows":[417,68,384,256,6,64,72,16,416],"offset":91,"phase":3,"quadratic_rows":[160,4,6,0,0,33,0,257,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":786,"old":621,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":61,"phase":1,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":792,"old":621,"rank":1,"right":{"linear_Z4":[0,2,1,2,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":61,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":767,"old":622,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,3,3,0],"matrix_rows":[199,256,258,260,8,16,32,320,384],"offset":3,"phase":0,"quadratic_rows":[454,455,455,0,0,0,455,455,199]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,65,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,7,7,0,0,0,0,0,0]},"new":793,"old":622,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[260,320,384,5,6,256,264,16,32],"offset":89,"phase":0,"quadratic_rows":[4,4,3,0,0,0,256,256,192]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":785,"old":623,"rank":1,"right":{"linear_Z4":[1,2,3,2,0,0,0,0,0],"matrix_rows":[13,9,6,8,16,32,64,128,256],"offset":12,"phase":2,"quadratic_rows":[5,4,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":791,"old":623,"rank":1,"right":{"linear_Z4":[1,2,1,2,0,0,0,0,0],"matrix_rows":[9,13,6,8,16,32,64,128,256],"offset":15,"phase":0,"quadratic_rows":[5,4,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":792,"old":624,"rank":1,"right":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[74,1,194,4,200,16,32,128,256],"offset":149,"phase":0,"quadratic_rows":[0,138,0,138,0,0,128,74,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":795,"old":624,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,0],"matrix_rows":[74,1,130,4,136,16,32,128,256],"offset":129,"phase":0,"quadratic_rows":[0,202,0,202,0,0,138,74,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":664,"old":625,"rank":1,"right":{"linear_Z4":[3,1,2,3,0,3,0,0,2],"matrix_rows":[299,289,258,36,296,16,256,64,128],"offset":90,"phase":2,"quadratic_rows":[11,43,32,11,0,38,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,34,71,130,4,258,2,5],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":796,"old":625,"rank":3,"right":{"linear_Z4":[0,1,2,1,0,0,0,2,1],"matrix_rows":[15,10,302,256,390,128,392,144,192],"offset":9,"phase":0,"quadratic_rows":[270,175,35,171,0,270,0,10,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":794,"old":626,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,2,0],"matrix_rows":[224,1,2,4,8,16,160,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,96,32,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":797,"old":626,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,2,4,8,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,96,32,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":665,"old":627,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[352,1,2,4,8,16,256,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,64,96,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,3,1,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":798,"old":627,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,2,3,0,2],"matrix_rows":[9,20,320,16,6,24,96,256,384],"offset":374,"phase":2,"quadratic_rows":[24,4,14,29,9,64,96,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":768,"old":628,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,33,2,4,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,257,4,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":798,"old":628,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,3,2,3,2],"matrix_rows":[225,260,192,128,6,256,264,16,224],"offset":91,"phase":3,"quadratic_rows":[96,4,6,0,0,33,129,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":790,"old":629,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,0,2],"matrix_rows":[264,1,10,4,256,272,32,64,128],"offset":61,"phase":1,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":796,"old":629,"rank":1,"right":{"linear_Z4":[0,2,1,2,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,272,32,64,128],"offset":61,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":769,"old":630,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,33,2,4,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,257,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":797,"old":630,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,3,2,2,3],"matrix_rows":[353,132,320,256,6,128,136,16,352],"offset":91,"phase":3,"quadratic_rows":[96,4,6,0,0,33,257,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":789,"old":631,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,2,0],"matrix_rows":[136,1,10,4,128,144,32,64,256],"offset":61,"phase":1,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":795,"old":631,"rank":1,"right":{"linear_Z4":[0,2,1,2,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,144,32,64,256],"offset":61,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":799,"old":632,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":804,"old":632,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":666,"old":633,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":800,"old":633,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,20,320,3,48,32,8,256,384],"offset":25,"phase":3,"quadratic_rows":[2,19,48,0,54,20,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":801,"old":634,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,288,64,128],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":806,"old":634,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,2],"matrix_rows":[258,3,256,260,264,16,288,320,384],"offset":511,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":667,"old":635,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,1,18,20,24,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[0,16,16,16,30,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,17,34,4,71,129,6,257,1],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":802,"old":635,"rank":3,"right":{"linear_Z4":[1,2,0,0,1,0,1,0,2],"matrix_rows":[17,23,91,323,256,64,336,288,384],"offset":34,"phase":0,"quadratic_rows":[287,13,83,83,285,0,76,0,17]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":764,"old":636,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,1,18,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":802,"old":636,"rank":3,"right":{"linear_Z4":[3,2,0,0,3,0,0,0,3],"matrix_rows":[17,260,384,35,32,256,264,48,64],"offset":35,"phase":1,"quadratic_rows":[51,1,0,0,49,17,0,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":778,"old":637,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":800,"old":637,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":765,"old":638,"rank":1,"right":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[7,33,34,32,40,48,64,128,256],"offset":17,"phase":0,"quadratic_rows":[39,39,35,0,0,7,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,35,67,131,3,261,1,4],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":801,"old":638,"rank":3,"right":{"linear_Z4":[2,2,3,0,0,0,3,2,3],"matrix_rows":[455,7,64,229,230,32,40,48,256],"offset":295,"phase":1,"quadratic_rows":[292,292,487,0,0,7,196,324,391]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":777,"old":639,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,10,8,16,32,64,128,256],"offset":9,"phase":0,"quadratic_rows":[15,15,11,7,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":799,"old":639,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[7,13,14,8,16,32,64,128,256],"offset":15,"phase":0,"quadratic_rows":[11,11,8,7,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":800,"old":640,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[200,1,2,4,136,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":803,"old":640,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,1,2,4,200,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":666,"old":641,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[328,1,2,4,256,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,0,0,72,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":804,"old":641,"rank":3,"right":{"linear_Z4":[2,1,0,2,1,2,3,0,2],"matrix_rows":[34,20,320,3,48,32,72,256,384],"offset":349,"phase":2,"quadratic_rows":[2,19,48,64,54,20,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":802,"old":642,"rank":1,"right":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[81,193,2,4,8,208,32,128,256],"offset":163,"phase":0,"quadratic_rows":[145,0,0,0,145,0,128,81,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":805,"old":642,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,0],"matrix_rows":[81,129,2,4,8,144,32,128,256],"offset":129,"phase":0,"quadratic_rows":[209,0,0,0,209,0,145,81,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":667,"old":643,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,0,2],"matrix_rows":[272,1,18,20,24,256,288,64,128],"offset":103,"phase":1,"quadratic_rows":[0,16,16,16,30,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,17,34,4,71,129,257,1,6],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":806,"old":643,"rank":3,"right":{"linear_Z4":[1,2,0,0,1,0,0,2,1],"matrix_rows":[17,23,283,387,128,256,400,160,192],"offset":34,"phase":0,"quadratic_rows":[159,13,275,275,157,0,0,17,268]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":770,"old":644,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,0,2],"matrix_rows":[272,1,18,4,8,256,288,64,128],"offset":103,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,4,6,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":806,"old":644,"rank":3,"right":{"linear_Z4":[3,2,0,0,3,0,0,3,0],"matrix_rows":[17,132,192,35,32,128,136,48,256],"offset":35,"phase":1,"quadratic_rows":[51,1,0,0,49,17,128,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":782,"old":645,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":804,"old":645,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":771,"old":646,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,2,0],"matrix_rows":[144,1,18,4,8,128,160,64,256],"offset":103,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,4,256,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":805,"old":646,"rank":3,"right":{"linear_Z4":[3,2,0,0,3,0,0,0,3],"matrix_rows":[17,260,320,35,32,256,264,48,128],"offset":35,"phase":1,"quadratic_rows":[51,1,0,0,49,17,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":781,"old":647,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":803,"old":647,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":521,"old":648,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,288,64,128],"offset":70,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":807,"old":648,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":94,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":504,"old":649,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[7,129,128,132,8,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[135,133,135,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":772,"old":649,"rank":1,"right":{"linear_Z4":[2,2,0,0,0,0,0,2,0],"matrix_rows":[132,5,6,128,8,16,160,64,256],"offset":15,"phase":0,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":526,"old":650,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,33,2,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":807,"old":650,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,41,2,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,37,1,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":484,"old":651,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":773,"old":651,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":504,"old":652,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[69,129,2,132,8,16,32,128,256],"offset":129,"phase":0,"quadratic_rows":[197,0,197,0,0,0,133,69,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":808,"old":652,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[69,193,2,196,8,16,32,128,256],"offset":139,"phase":0,"quadratic_rows":[133,0,133,0,0,0,128,69,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":456,"old":653,"rank":1,"right":{"linear_Z4":[2,1,1,0,0,2,0,0,0],"matrix_rows":[34,5,38,32,8,16,64,128,256],"offset":15,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":521,"old":653,"rank":1,"right":{"linear_Z4":[2,1,3,0,0,2,0,0,0],"matrix_rows":[38,5,34,32,8,16,64,128,256],"offset":10,"phase":2,"quadratic_rows":[4,6,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":498,"old":654,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":808,"old":654,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,272,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":478,"old":655,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":774,"old":655,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":484,"old":656,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[82,1,66,4,8,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":809,"old":656,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,2,0,0],"matrix_rows":[66,1,82,4,8,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":460,"old":657,"rank":1,"right":{"linear_Z4":[3,0,2,3,0,0,0,0,0],"matrix_rows":[9,37,2,32,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,1,41,0,9,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":526,"old":657,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,0,2],"matrix_rows":[264,1,2,12,256,16,288,64,128],"offset":91,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":478,"old":658,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[274,1,258,4,8,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":809,"old":658,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,2],"matrix_rows":[258,1,274,4,8,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":461,"old":659,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,272,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":498,"old":659,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,17,2,35,67,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":866,"old":660,"rank":2,"right":{"linear_Z4":[3,3,2,2,0,0,0,0,1],"matrix_rows":[4,267,5,6,256,272,288,320,384],"offset":114,"phase":0,"quadratic_rows":[271,271,259,259,0,0,0,0,271]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":872,"old":660,"rank":1,"right":{"linear_Z4":[0,0,3,2,0,0,0,0,2],"matrix_rows":[260,1,2,268,256,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,4,71,6,135,263,7],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"new":1035,"old":660,"rank":3,"right":{"linear_Z4":[2,1,2,2,0,3,0,0,2],"matrix_rows":[290,4,40,3,288,32,272,320,384],"offset":108,"phase":2,"quadratic_rows":[2,3,32,32,0,44,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,33,1,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":867,"old":661,"rank":2,"right":{"linear_Z4":[2,3,0,1,2,0,0,0,2],"matrix_rows":[26,320,3,16,4,24,32,256,384],"offset":142,"phase":2,"quadratic_rows":[2,11,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":873,"old":661,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,2,0,0,0],"matrix_rows":[43,33,34,4,32,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[11,11,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,66,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":1035,"old":661,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,24,320,3,48,4,32,256,384],"offset":157,"phase":3,"quadratic_rows":[2,19,0,48,58,24,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":870,"old":662,"rank":2,"right":{"linear_Z4":[0,2,1,2,0,2,0,0,2],"matrix_rows":[36,320,1,6,32,8,48,256,384],"offset":251,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":876,"old":662,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,2,0,0,0],"matrix_rows":[38,1,34,44,32,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,14,4,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,66,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":1036,"old":662,"rank":3,"right":{"linear_Z4":[0,2,0,3,0,1,0,0,2],"matrix_rows":[44,36,320,1,14,32,48,256,384],"offset":183,"phase":0,"quadratic_rows":[0,12,34,42,0,44,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,34,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":871,"old":663,"rank":2,"right":{"linear_Z4":[3,2,2,1,0,3,0,0,1],"matrix_rows":[292,41,261,14,288,256,48,320,384],"offset":77,"phase":0,"quadratic_rows":[301,12,267,303,0,41,0,0,269]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":877,"old":663,"rank":1,"right":{"linear_Z4":[1,2,2,1,0,0,0,0,2],"matrix_rows":[265,257,2,12,256,272,288,320,384],"offset":127,"phase":3,"quadratic_rows":[9,0,8,13,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,66,4,5,130,258,2],"offset":0,"phase":0,"quadratic_rows":[5,4,3,0,0,0,0,0,0]},"new":1036,"old":663,"rank":3,"right":{"linear_Z4":[0,2,2,1,1,3,0,0,1],"matrix_rows":[17,284,292,48,14,272,256,320,384],"offset":61,"phase":3,"quadratic_rows":[32,12,290,26,56,309,0,0,292]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,33,66,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":870,"old":664,"rank":2,"right":{"linear_Z4":[0,1,2,1,0,1,0,0,0],"matrix_rows":[271,292,288,294,256,296,272,320,384],"offset":2,"phase":1,"quadratic_rows":[46,43,9,47,0,43,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":877,"old":664,"rank":1,"right":{"linear_Z4":[1,1,1,2,0,2,0,0,0],"matrix_rows":[7,33,34,44,32,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[39,39,47,4,0,7,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,38,66,4,5,134,262,6],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"new":1036,"old":664,"rank":3,"right":{"linear_Z4":[0,2,2,3,2,1,0,0,2],"matrix_rows":[17,284,52,48,14,256,272,320,384],"offset":89,"phase":2,"quadratic_rows":[32,12,34,10,0,37,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,1,32,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":871,"old":665,"rank":2,"right":{"linear_Z4":[1,2,1,2,0,0,0,0,2],"matrix_rows":[9,320,13,6,8,16,32,256,384],"offset":159,"phase":0,"quadratic_rows":[5,4,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":876,"old":665,"rank":1,"right":{"linear_Z4":[2,3,3,0,2,0,0,0,0],"matrix_rows":[23,16,18,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[6,7,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,3,1,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1036,"old":665,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,0,0,0,2],"matrix_rows":[9,20,320,16,6,24,32,256,384],"offset":182,"phase":3,"quadratic_rows":[24,4,14,29,9,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":866,"old":666,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,2,0,0,2],"matrix_rows":[36,320,5,6,32,8,48,256,384],"offset":158,"phase":3,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":873,"old":666,"rank":1,"right":{"linear_Z4":[3,3,2,0,0,2,0,0,0],"matrix_rows":[39,33,34,32,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[7,7,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":1035,"old":666,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,20,320,3,48,32,8,256,384],"offset":157,"phase":3,"quadratic_rows":[2,19,48,0,54,20,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,67,2,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":867,"old":667,"rank":2,"right":{"linear_Z4":[2,3,2,1,0,1,0,0,1],"matrix_rows":[42,292,3,256,32,264,304,320,384],"offset":117,"phase":3,"quadratic_rows":[2,299,256,298,0,42,0,0,270]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":872,"old":667,"rank":1,"right":{"linear_Z4":[1,1,1,2,0,2,0,0,0],"matrix_rows":[7,33,34,44,32,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[39,39,47,4,0,7,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,4,71,6,129,257,1],"offset":0,"phase":0,"quadratic_rows":[6,1,1,0,0,0,0,0,0]},"new":1035,"old":667,"rank":3,"right":{"linear_Z4":[2,1,2,2,0,3,0,0,2],"matrix_rows":[290,292,264,3,256,32,304,320,384],"offset":108,"phase":2,"quadratic_rows":[2,35,256,256,0,290,0,0,44]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,130,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":668,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,3],"matrix_rows":[257,8,384,256,2,260,64,80,96],"offset":73,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":878,"old":668,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":884,"old":668,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,32,65,130,257,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":669,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,272,384,1,2,4,320,64,352],"offset":195,"phase":0,"quadratic_rows":[0,0,0,64,320,0,24,256,144]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":879,"old":669,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[152,1,2,4,392,400,32,64,256],"offset":305,"phase":0,"quadratic_rows":[0,0,0,280,280,0,0,256,152]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":885,"old":669,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,0],"matrix_rows":[152,1,2,4,264,272,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,0,0,408,408,0,0,280,152]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,258,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":670,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,2,1],"matrix_rows":[257,136,272,320,2,324,128,64,160],"offset":231,"phase":0,"quadratic_rows":[64,0,0,0,320,0,17,0,272]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":882,"old":670,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,32,320,128],"offset":131,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":888,"old":670,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,160,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,258,4,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":671,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,2],"matrix_rows":[129,264,144,192,2,196,256,64,288],"offset":231,"phase":0,"quadratic_rows":[64,0,0,0,192,0,17,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":883,"old":671,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,288,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":889,"old":671,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,2,0],"matrix_rows":[144,17,2,4,8,128,32,192,256],"offset":131,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,129,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":672,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,264,384,64,2,68,256,80,288],"offset":74,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":882,"old":672,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,2],"matrix_rows":[264,1,2,4,392,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":889,"old":672,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[392,1,2,4,264,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,64,130,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":673,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,272,384,320,2,324,8,64,32],"offset":139,"phase":0,"quadratic_rows":[64,0,0,0,320,0,17,256,144]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":883,"old":673,"rank":1,"right":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[145,385,2,4,8,400,32,64,256],"offset":291,"phase":0,"quadratic_rows":[273,0,0,0,273,0,0,256,145]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":888,"old":673,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,0],"matrix_rows":[145,257,2,4,8,272,32,64,256],"offset":257,"phase":0,"quadratic_rows":[401,0,0,0,401,0,0,273,145]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,258,4,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":674,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,2,1],"matrix_rows":[129,264,272,128,2,132,320,64,352],"offset":399,"phase":0,"quadratic_rows":[0,0,0,64,320,0,24,0,272]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":878,"old":674,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,0,2],"matrix_rows":[272,1,2,4,24,256,32,320,128],"offset":145,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":885,"old":674,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,132,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,258,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":675,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,1,2],"matrix_rows":[257,136,144,256,2,260,192,64,224],"offset":399,"phase":0,"quadratic_rows":[0,0,0,64,192,0,24,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":879,"old":675,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":884,"old":675,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,2,0],"matrix_rows":[144,1,2,4,24,128,32,192,256],"offset":145,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,70,134,7,262,6],"offset":0,"phase":0,"quadratic_rows":[4,4,7,0,0,0,0,0,0]},"new":1,"old":676,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,0,3,0,0],"matrix_rows":[321,258,72,320,256,68,272,288,384],"offset":56,"phase":1,"quadratic_rows":[0,0,0,64,0,0,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":890,"old":676,"rank":1,"right":{"linear_Z4":[1,1,0,2,0,0,0,0,0],"matrix_rows":[3,265,258,4,256,272,288,320,384],"offset":151,"phase":1,"quadratic_rows":[267,259,0,1,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":896,"old":676,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[3,257,266,4,256,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[259,267,0,2,0,0,0,0,3]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,3,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":677,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,2],"matrix_rows":[33,40,272,96,98,4,64,256,384],"offset":215,"phase":0,"quadratic_rows":[64,0,0,96,0,40,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":891,"old":677,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":82,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":897,"old":677,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,132,6,7,260,4],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":678,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,1,1,0,3],"matrix_rows":[353,2,104,96,288,324,256,272,384],"offset":79,"phase":1,"quadratic_rows":[256,288,0,352,0,106,104,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":894,"old":678,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,265,2,4,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":900,"old":678,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,2],"matrix_rows":[265,257,2,4,256,272,288,320,384],"offset":85,"phase":2,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,2,68,131,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":679,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,2],"matrix_rows":[2,8,272,1,64,68,256,96,384],"offset":84,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":895,"old":679,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":901,"old":679,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,65,134,7,257,1],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":1,"old":680,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,3],"matrix_rows":[1,2,264,256,320,68,272,352,384],"offset":58,"phase":2,"quadratic_rows":[256,320,0,256,0,0,2,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":894,"old":680,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":70,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":901,"old":680,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,0,0,2],"matrix_rows":[265,256,2,260,264,272,32,320,384],"offset":15,"phase":2,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,64,132,2,3,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":681,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,2],"matrix_rows":[97,2,272,96,32,68,8,256,384],"offset":148,"phase":3,"quadratic_rows":[0,32,0,0,0,2,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":895,"old":681,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,68,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":900,"old":681,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,131,6,7,259,3],"offset":0,"phase":0,"quadratic_rows":[7,1,1,0,0,0,0,0,0]},"new":1,"old":682,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,1,0,0,0],"matrix_rows":[33,258,296,96,352,260,320,272,384],"offset":77,"phase":0,"quadratic_rows":[64,96,0,96,0,42,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":890,"old":682,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":70,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":897,"old":682,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,0,0,2],"matrix_rows":[258,3,256,260,8,272,288,320,384],"offset":82,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,2,68,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":683,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,0,3,0,2],"matrix_rows":[73,74,272,64,8,76,256,32,384],"offset":124,"phase":1,"quadratic_rows":[8,64,0,73,0,0,74,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":891,"old":683,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,0],"matrix_rows":[10,3,8,12,16,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":896,"old":683,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,68,4,133,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":684,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,2],"matrix_rows":[82,260,8,1,80,256,16,96,384],"offset":98,"phase":3,"quadratic_rows":[0,0,0,16,8,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":902,"old":684,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":908,"old":684,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,68,133,6,7,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":1,"old":685,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,3],"matrix_rows":[353,98,8,96,256,260,288,336,384],"offset":31,"phase":1,"quadratic_rows":[256,352,0,288,0,106,98,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":903,"old":685,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,2],"matrix_rows":[259,257,256,260,8,16,288,320,384],"offset":85,"phase":2,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":909,"old":685,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,259,256,260,8,16,288,320,384],"offset":150,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,70,7,132,5,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":686,"rank":3,"right":{"linear_Z4":[0,2,2,0,3,0,0,0,1],"matrix_rows":[273,274,260,320,80,256,344,288,384],"offset":112,"phase":1,"quadratic_rows":[80,320,0,0,273,0,3,0,274]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":906,"old":686,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":158,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":912,"old":686,"rank":1,"right":{"linear_Z4":[2,1,2,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":26,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,3,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":687,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,2],"matrix_rows":[33,34,260,96,64,256,104,16,384],"offset":119,"phase":0,"quadratic_rows":[64,96,0,0,0,34,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":907,"old":687,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":913,"old":687,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":70,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,3,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":688,"rank":3,"right":{"linear_Z4":[0,2,0,0,1,0,0,0,2],"matrix_rows":[17,18,260,64,80,256,88,32,384],"offset":111,"phase":0,"quadratic_rows":[80,64,0,0,17,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":906,"old":688,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":913,"old":688,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":19,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,69,132,7,6,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":689,"rank":3,"right":{"linear_Z4":[2,0,2,0,0,3,0,0,1],"matrix_rows":[289,290,260,96,320,256,360,272,384],"offset":104,"phase":1,"quadratic_rows":[320,96,0,0,0,290,3,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":907,"old":689,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":158,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":912,"old":689,"rank":1,"right":{"linear_Z4":[2,1,2,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":79,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,68,5,134,7,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":690,"rank":3,"right":{"linear_Z4":[0,0,0,2,1,0,1,0,3],"matrix_rows":[81,338,8,256,80,260,272,352,384],"offset":31,"phase":1,"quadratic_rows":[336,256,0,272,89,0,81,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":902,"old":690,"rank":1,"right":{"linear_Z4":[0,3,0,2,0,0,0,0,2],"matrix_rows":[259,256,258,260,8,272,32,320,384],"offset":51,"phase":2,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":909,"old":690,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":82,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,133,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":691,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,2],"matrix_rows":[97,260,8,96,2,256,32,80,384],"offset":98,"phase":3,"quadratic_rows":[0,0,0,32,0,8,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":903,"old":691,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":908,"old":691,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,258,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":692,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,2,1],"matrix_rows":[257,130,260,320,128,64,8,336,160],"offset":183,"phase":0,"quadratic_rows":[64,0,320,0,0,0,5,0,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":914,"old":692,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,160,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":920,"old":692,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,32,320,128],"offset":131,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,258,4,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":693,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,2],"matrix_rows":[129,258,132,192,256,64,8,208,288],"offset":183,"phase":0,"quadratic_rows":[64,0,192,0,0,0,5,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":915,"old":693,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,32,192,256],"offset":131,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":921,"old":693,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,288,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,128,257,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":694,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,260,384,1,320,64,8,16,352],"offset":51,"phase":0,"quadratic_rows":[0,64,320,0,0,0,6,256,132]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":918,"old":694,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[134,1,258,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,390,390,0,0,0,0,262,134]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":924,"old":694,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[134,1,386,388,8,16,32,64,256],"offset":269,"phase":0,"quadratic_rows":[0,262,262,0,0,0,0,256,134]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,64,129,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":695,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,3],"matrix_rows":[257,2,384,256,64,68,8,272,96],"offset":25,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":919,"old":695,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":925,"old":695,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,258,4,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":696,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,2,1],"matrix_rows":[129,258,260,128,320,64,8,144,352],"offset":303,"phase":0,"quadratic_rows":[0,64,320,0,0,0,6,0,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":918,"old":696,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,144,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":925,"old":696,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,16,32,320,128],"offset":133,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,258,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":697,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,2],"matrix_rows":[257,130,132,256,192,64,8,272,224],"offset":303,"phase":0,"quadratic_rows":[0,64,192,0,0,0,6,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":919,"old":697,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,16,32,192,256],"offset":133,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":924,"old":697,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,272,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,129,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":698,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,260,384,320,2,64,8,336,32],"offset":43,"phase":0,"quadratic_rows":[64,0,320,0,0,0,5,256,132]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":914,"old":698,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[133,257,2,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[389,0,389,0,0,0,0,261,133]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":921,"old":698,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[133,385,2,388,8,16,32,64,256],"offset":267,"phase":0,"quadratic_rows":[261,0,261,0,0,0,0,256,133]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,64,129,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":699,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,258,384,64,256,68,8,80,288],"offset":26,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":915,"old":699,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":920,"old":699,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,68,134,6,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":700,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,0,2],"matrix_rows":[257,98,8,256,96,4,64,48,384],"offset":73,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":926,"old":700,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":932,"old":700,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,68,135,5,6,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":701,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,0],"matrix_rows":[353,100,8,256,258,352,288,336,384],"offset":47,"phase":1,"quadratic_rows":[96,0,256,288,0,361,353,0,108]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":927,"old":701,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,80,32,128,256],"offset":59,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":933,"old":701,"rank":1,"right":{"linear_Z4":[0,0,3,2,0,0,0,0,2],"matrix_rows":[261,256,258,260,8,272,288,64,384],"offset":83,"phase":2,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,135,3,5,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":702,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,1,1,0,2],"matrix_rows":[257,98,100,256,288,320,264,368,384],"offset":142,"phase":0,"quadratic_rows":[0,320,288,0,0,100,98,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":930,"old":702,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":47,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":936,"old":702,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":206,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,70,128,4,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":703,"rank":3,"right":{"linear_Z4":[0,2,2,0,0,3,3,0,2],"matrix_rows":[257,98,100,256,64,32,104,16,384],"offset":121,"phase":1,"quadratic_rows":[0,32,64,0,0,98,100,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":931,"old":703,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":28,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":937,"old":703,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,71,129,5,3,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":704,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,1,1,0,2],"matrix_rows":[257,98,100,256,320,288,360,272,384],"offset":78,"phase":0,"quadratic_rows":[0,288,320,0,0,98,100,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":930,"old":704,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":31,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":937,"old":704,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":206,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,134,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":705,"rank":3,"right":{"linear_Z4":[0,2,2,0,0,3,3,0,2],"matrix_rows":[257,98,100,256,32,64,8,112,384],"offset":185,"phase":1,"quadratic_rows":[0,64,32,0,0,100,98,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":931,"old":705,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":44,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":936,"old":705,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,134,4,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":706,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,2],"matrix_rows":[257,100,8,256,2,96,32,80,384],"offset":73,"phase":3,"quadratic_rows":[0,0,0,32,0,8,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":926,"old":706,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":933,"old":706,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,68,135,6,5,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":707,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,0],"matrix_rows":[353,98,8,256,352,260,320,304,384],"offset":31,"phase":1,"quadratic_rows":[96,256,0,320,0,353,361,0,106]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":927,"old":707,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,2,0,0,0],"matrix_rows":[34,3,32,4,8,48,64,128,256],"offset":55,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":932,"old":707,"rank":1,"right":{"linear_Z4":[0,3,0,2,0,0,0,0,2],"matrix_rows":[259,256,258,260,8,272,32,320,384],"offset":147,"phase":2,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,132,256,1,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":708,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,2,1],"matrix_rows":[257,130,260,64,128,320,136,336,32],"offset":159,"phase":0,"quadratic_rows":[320,0,64,0,0,0,5,0,257]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":938,"old":708,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,272,32,64,128],"offset":35,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":944,"old":708,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,136,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,132,256,1,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":709,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,2],"matrix_rows":[129,258,132,64,256,192,264,208,32],"offset":159,"phase":0,"quadratic_rows":[192,0,64,0,0,0,5,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":939,"old":709,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":945,"old":709,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,144,32,64,256],"offset":35,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,66,128,256,1,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":710,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,384,64,320,4,328,16,32],"offset":27,"phase":0,"quadratic_rows":[320,64,0,0,0,0,3,256,129]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":942,"old":710,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[131,385,386,4,8,16,32,64,256],"offset":263,"phase":0,"quadratic_rows":[259,259,0,0,0,0,0,256,131]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":948,"old":710,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[131,257,258,4,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[387,387,0,0,0,0,0,259,131]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,130,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":711,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,260,384,64,66,256,72,272,32],"offset":42,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":943,"old":711,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,2],"matrix_rows":[260,1,2,388,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":949,"old":711,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[388,1,2,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,132,256,1,3,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":712,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,2],"matrix_rows":[129,130,260,64,192,256,200,272,32],"offset":111,"phase":0,"quadratic_rows":[192,64,0,0,0,0,3,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":942,"old":712,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,272,32,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":949,"old":712,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,2,0],"matrix_rows":[130,3,128,4,136,16,32,64,256],"offset":19,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,132,256,1,4,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":713,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,2,1],"matrix_rows":[257,258,132,64,320,128,328,144,32],"offset":111,"phase":0,"quadratic_rows":[320,64,0,0,0,0,3,0,257]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":943,"old":713,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,264,16,32,64,128],"offset":19,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":948,"old":713,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,144,32,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":714,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,258,384,64,256,68,264,80,32],"offset":26,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":938,"old":714,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":945,"old":714,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,130,256,1,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":715,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,260,384,64,2,320,8,336,32],"offset":43,"phase":0,"quadratic_rows":[320,0,64,0,0,0,5,256,129]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":939,"old":715,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[133,385,2,388,8,16,32,64,256],"offset":267,"phase":0,"quadratic_rows":[261,0,261,0,0,0,0,256,133]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":944,"old":715,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[133,257,2,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[389,0,389,0,0,0,0,261,133]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,64,1,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":716,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[1,82,288,16,80,68,8,256,384],"offset":140,"phase":3,"quadratic_rows":[16,0,0,0,1,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":950,"old":716,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":956,"old":716,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,68,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,69,130,7,258,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":1,"old":717,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,0,3],"matrix_rows":[1,2,264,320,256,68,336,288,384],"offset":57,"phase":2,"quadratic_rows":[320,256,0,256,0,0,1,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":951,"old":717,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,0,2],"matrix_rows":[266,1,256,260,264,16,288,320,384],"offset":15,"phase":2,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":957,"old":717,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":38,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,5,131,7,259,3],"offset":0,"phase":0,"quadratic_rows":[2,7,2,0,0,0,0,0,0]},"new":1,"old":718,"rank":3,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,0],"matrix_rows":[257,18,280,336,80,260,320,288,384],"offset":86,"phase":0,"quadratic_rows":[80,64,0,80,25,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":954,"old":718,"rank":1,"right":{"linear_Z4":[3,2,0,3,0,0,0,0,0],"matrix_rows":[9,259,256,260,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[267,1,0,265,0,0,0,0,9]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":960,"old":718,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":38,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,1,64,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":719,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,0,3,0,2],"matrix_rows":[73,74,288,8,64,76,16,256,384],"offset":188,"phase":1,"quadratic_rows":[64,8,0,74,0,0,73,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":955,"old":719,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":961,"old":719,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[66,3,64,68,8,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,3,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":720,"rank":3,"right":{"linear_Z4":[2,0,0,0,1,0,0,0,2],"matrix_rows":[17,24,288,80,82,4,64,256,384],"offset":215,"phase":0,"quadratic_rows":[64,0,0,80,24,0,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":954,"old":720,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":961,"old":720,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,69,133,7,261,5],"offset":0,"phase":0,"quadratic_rows":[4,4,7,0,0,0,0,0,0]},"new":1,"old":721,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,0,3,0,0],"matrix_rows":[257,322,72,256,320,68,272,288,384],"offset":56,"phase":1,"quadratic_rows":[0,0,0,64,0,0,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":955,"old":721,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[3,265,258,4,256,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[267,259,0,1,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":960,"old":721,"rank":1,"right":{"linear_Z4":[1,1,0,2,0,0,0,0,0],"matrix_rows":[3,257,266,4,256,272,288,320,384],"offset":151,"phase":1,"quadratic_rows":[259,267,0,2,0,0,0,0,3]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,5,132,7,260,4],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":722,"rank":3,"right":{"linear_Z4":[2,0,0,0,1,0,1,0,3],"matrix_rows":[1,338,88,272,80,324,256,288,384],"offset":87,"phase":1,"quadratic_rows":[272,256,0,336,89,0,88,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":950,"old":722,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[266,1,258,4,256,272,288,320,384],"offset":51,"phase":2,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":957,"old":722,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,2],"matrix_rows":[258,1,266,4,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,2,67,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":723,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[1,8,288,64,2,68,80,256,384],"offset":140,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":951,"old":723,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":956,"old":723,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":724,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,2,1],"matrix_rows":[130,264,288,1,128,132,320,336,64],"offset":407,"phase":0,"quadratic_rows":[0,0,0,64,0,320,40,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":962,"old":724,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,132,8,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":968,"old":724,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,3,0,0,2],"matrix_rows":[288,1,2,4,40,16,256,320,128],"offset":145,"phase":3,"quadratic_rows":[0,0,0,32,0,40,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":725,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,1,2],"matrix_rows":[258,136,160,1,256,260,192,208,64],"offset":407,"phase":0,"quadratic_rows":[0,0,0,64,0,192,40,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":963,"old":725,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,3,0,2,0],"matrix_rows":[160,1,2,4,40,16,128,192,256],"offset":145,"phase":3,"quadratic_rows":[0,0,0,32,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":969,"old":725,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,8,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,64,128,258,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":726,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,288,384,1,320,324,8,16,64],"offset":275,"phase":0,"quadratic_rows":[0,64,0,0,0,320,34,256,160]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":966,"old":726,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,0],"matrix_rows":[162,1,258,4,8,16,288,64,256],"offset":257,"phase":0,"quadratic_rows":[0,418,0,0,0,418,0,290,162]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":972,"old":726,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[162,1,386,4,8,16,416,64,256],"offset":325,"phase":0,"quadratic_rows":[0,290,0,0,0,290,0,256,162]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,257,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":727,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,3],"matrix_rows":[2,264,384,1,64,68,256,272,96],"offset":82,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":967,"old":727,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[392,1,2,4,264,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":973,"old":727,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,2],"matrix_rows":[264,1,2,4,392,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":728,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,2,1],"matrix_rows":[258,136,288,1,320,324,128,144,64],"offset":359,"phase":0,"quadratic_rows":[0,64,0,0,0,320,34,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":966,"old":728,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,144,32,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":973,"old":728,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,3,0,0,2],"matrix_rows":[288,1,34,4,8,16,256,320,128],"offset":133,"phase":3,"quadratic_rows":[0,32,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":729,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,2],"matrix_rows":[130,264,160,1,192,196,256,272,64],"offset":359,"phase":0,"quadratic_rows":[0,64,0,0,0,192,34,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":967,"old":729,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,3,0,2,0],"matrix_rows":[160,1,34,4,8,16,128,192,256],"offset":133,"phase":3,"quadratic_rows":[0,32,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":972,"old":729,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,272,32,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,32,65,129,258,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":730,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,288,384,1,2,4,320,336,64],"offset":323,"phase":0,"quadratic_rows":[0,0,0,64,0,320,40,256,160]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":962,"old":730,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,0],"matrix_rows":[168,1,2,4,264,16,288,64,256],"offset":257,"phase":0,"quadratic_rows":[0,0,0,424,0,424,0,296,168]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":969,"old":730,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[168,1,2,4,392,16,416,64,256],"offset":337,"phase":0,"quadratic_rows":[0,0,0,296,0,296,0,256,168]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":731,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,3],"matrix_rows":[258,8,384,1,256,260,64,80,96],"offset":81,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":963,"old":731,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":968,"old":731,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,3,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":732,"rank":3,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,2],"matrix_rows":[1,82,264,64,80,20,256,32,384],"offset":76,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":974,"old":732,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[18,1,16,20,8,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":980,"old":732,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,66,132,7,6,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":733,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,3,0,0,1],"matrix_rows":[289,258,304,96,256,356,264,320,384],"offset":56,"phase":1,"quadratic_rows":[320,0,0,0,96,304,17,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":975,"old":733,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":981,"old":733,"rank":1,"right":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[258,1,256,260,264,16,288,320,384],"offset":174,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,65,4,135,6,257,1],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":1,"old":734,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,3],"matrix_rows":[1,2,272,256,64,324,264,352,384],"offset":58,"phase":2,"quadratic_rows":[256,64,0,0,256,0,2,0,273]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":978,"old":734,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":984,"old":734,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,0,0,2],"matrix_rows":[273,256,2,260,264,272,288,64,384],"offset":15,"phase":2,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,128,3,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":735,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,2,0,0,2],"matrix_rows":[97,2,264,96,64,36,256,16,384],"offset":84,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":979,"old":735,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,36,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":985,"old":735,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,132,7,6,260,4],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":736,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,1,1,0,3],"matrix_rows":[353,2,104,96,320,292,256,272,384],"offset":79,"phase":1,"quadratic_rows":[256,320,0,352,0,104,106,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":978,"old":736,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,265,2,4,256,272,288,320,384],"offset":86,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":985,"old":736,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,2],"matrix_rows":[265,257,2,4,256,272,288,320,384],"offset":149,"phase":2,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,4,133,5,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":737,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,2],"matrix_rows":[2,264,16,1,64,68,256,96,384],"offset":82,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":979,"old":737,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[80,1,2,4,8,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":984,"old":737,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":738,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,2],"matrix_rows":[33,264,48,96,2,100,256,64,384],"offset":231,"phase":0,"quadratic_rows":[64,0,0,0,96,48,17,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":974,"old":738,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":98,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":981,"old":738,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,7,132,5,260,4],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":739,"rank":3,"right":{"linear_Z4":[2,0,0,0,1,0,1,0,3],"matrix_rows":[1,338,88,320,80,276,256,288,384],"offset":87,"phase":1,"quadratic_rows":[320,256,0,336,88,0,89,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":975,"old":739,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,2],"matrix_rows":[258,1,266,4,256,272,288,320,384],"offset":54,"phase":0,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":980,"old":739,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[266,1,258,4,256,272,288,320,384],"offset":147,"phase":2,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,260,2,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":740,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,0,0,2,1],"matrix_rows":[129,264,272,128,130,4,64,320,352],"offset":335,"phase":0,"quadratic_rows":[0,0,0,320,64,0,24,0,264]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":986,"old":740,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,0,2],"matrix_rows":[272,1,2,4,24,256,288,64,128],"offset":81,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":992,"old":740,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,4,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,260,2,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":741,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,0,0,1,2],"matrix_rows":[257,136,144,256,258,4,64,192,224],"offset":335,"phase":0,"quadratic_rows":[0,0,0,192,64,0,24,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":987,"old":741,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":993,"old":741,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,2,0],"matrix_rows":[144,1,2,4,24,128,160,64,256],"offset":81,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":742,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,264,384,320,322,4,64,16,32],"offset":75,"phase":0,"quadratic_rows":[64,0,0,320,0,0,9,256,136]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":990,"old":742,"rank":1,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[137,385,2,4,392,16,32,64,256],"offset":275,"phase":0,"quadratic_rows":[265,0,0,265,0,0,0,256,137]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":996,"old":742,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,0],"matrix_rows":[137,257,2,4,264,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[393,0,0,393,0,0,0,265,137]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,65,130,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":743,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,272,384,64,66,4,72,256,288],"offset":138,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":991,"old":743,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,2],"matrix_rows":[272,1,2,4,8,400,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,16,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":997,"old":743,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[400,1,2,4,8,272,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,16,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,260,2,3,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":744,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,2],"matrix_rows":[129,136,272,192,194,4,64,256,288],"offset":215,"phase":0,"quadratic_rows":[64,0,0,192,0,0,9,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":990,"old":744,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,288,64,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":997,"old":744,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,2,0],"matrix_rows":[136,9,2,4,128,16,32,192,256],"offset":131,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,260,2,4,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":745,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,2,1],"matrix_rows":[257,264,144,320,322,4,64,128,160],"offset":215,"phase":0,"quadratic_rows":[64,0,0,320,0,0,9,0,264]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":991,"old":745,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,0,2],"matrix_rows":[264,9,2,4,256,16,32,320,128],"offset":131,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":996,"old":745,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,160,64,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,130,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":746,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,3],"matrix_rows":[257,8,384,256,258,4,64,80,96],"offset":73,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":986,"old":746,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":993,"old":746,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,32,65,130,258,1,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":747,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,272,384,1,2,4,64,320,352],"offset":195,"phase":0,"quadratic_rows":[0,0,0,320,64,0,24,256,136]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":987,"old":747,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[152,1,2,4,392,400,32,64,256],"offset":305,"phase":0,"quadratic_rows":[0,0,0,280,280,0,0,256,152]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":992,"old":747,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,0],"matrix_rows":[152,1,2,4,264,272,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,0,0,408,408,0,0,280,152]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,128,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":748,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,260,384,64,66,256,72,16,288],"offset":42,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":748,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[388,1,2,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1004,"old":748,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,2],"matrix_rows":[260,1,2,388,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,65,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":749,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,384,320,64,4,328,16,32],"offset":27,"phase":0,"quadratic_rows":[64,320,0,0,0,0,3,256,130]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":999,"old":749,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[131,257,258,4,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[387,387,0,0,0,0,0,259,131]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1005,"old":749,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[131,385,386,4,8,16,32,64,256],"offset":263,"phase":0,"quadratic_rows":[259,259,0,0,0,0,0,256,131]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":750,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,2,1],"matrix_rows":[129,258,260,128,64,320,136,16,352],"offset":287,"phase":0,"quadratic_rows":[0,320,64,0,0,0,6,0,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1002,"old":750,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,136,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1008,"old":750,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,16,288,64,128],"offset":69,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":751,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,2],"matrix_rows":[257,130,132,256,64,192,264,16,224],"offset":287,"phase":0,"quadratic_rows":[0,192,64,0,0,0,6,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1003,"old":751,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,16,160,64,256],"offset":69,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1009,"old":751,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,128,258,1,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":752,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,260,384,1,64,320,8,16,352],"offset":51,"phase":0,"quadratic_rows":[0,320,64,0,0,0,6,256,130]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1002,"old":752,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[134,1,258,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,390,390,0,0,0,0,262,134]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1009,"old":752,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[134,1,386,388,8,16,32,64,256],"offset":269,"phase":0,"quadratic_rows":[0,262,262,0,0,0,0,256,134]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,65,128,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":753,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,3],"matrix_rows":[257,2,384,256,64,68,264,16,96],"offset":25,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1003,"old":753,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1008,"old":753,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,3,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":754,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,2],"matrix_rows":[129,130,260,192,64,256,200,16,288],"offset":119,"phase":0,"quadratic_rows":[64,192,0,0,0,0,3,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":754,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,2,0],"matrix_rows":[130,3,128,4,8,16,32,192,256],"offset":131,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1005,"old":754,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,288,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,4,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":755,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,2,1],"matrix_rows":[257,258,132,320,64,128,328,16,160],"offset":119,"phase":0,"quadratic_rows":[64,320,0,0,0,0,3,0,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":755,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,160,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1004,"old":755,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,32,320,128],"offset":131,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,68,5,135,6,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":756,"rank":3,"right":{"linear_Z4":[0,0,0,2,1,0,1,0,0],"matrix_rows":[337,84,8,256,258,336,272,352,384],"offset":47,"phase":1,"quadratic_rows":[80,0,256,272,345,0,337,0,92]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1010,"old":756,"rank":1,"right":{"linear_Z4":[0,0,3,2,0,0,0,0,2],"matrix_rows":[261,256,258,260,8,272,288,64,384],"offset":51,"phase":2,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1016,"old":756,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,68,133,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":757,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,0,2],"matrix_rows":[97,258,8,96,256,4,64,48,384],"offset":82,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1011,"old":757,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1017,"old":757,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,131,7,6,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":758,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,3,0,0,1],"matrix_rows":[289,258,292,96,256,320,264,368,384],"offset":152,"phase":1,"quadratic_rows":[320,0,96,0,0,292,5,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1014,"old":758,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":174,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1020,"old":758,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":79,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,69,4,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":759,"rank":3,"right":{"linear_Z4":[2,0,2,0,3,0,3,0,2],"matrix_rows":[81,258,84,64,256,16,88,32,384],"offset":122,"phase":1,"quadratic_rows":[16,0,64,0,81,0,84,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1015,"old":759,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1021,"old":759,"rank":1,"right":{"linear_Z4":[2,0,3,0,2,0,0,0,0],"matrix_rows":[20,5,2,16,24,32,64,128,256],"offset":26,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":760,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,2],"matrix_rows":[33,258,36,96,256,64,8,112,384],"offset":183,"phase":0,"quadratic_rows":[64,0,96,0,0,36,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1014,"old":760,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1021,"old":760,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":74,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,71,6,130,3,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":761,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,0,1,0,2],"matrix_rows":[81,258,84,320,256,272,344,288,384],"offset":85,"phase":0,"quadratic_rows":[272,0,320,0,81,0,84,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1015,"old":761,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":174,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1020,"old":761,"rank":1,"right":{"linear_Z4":[2,2,1,0,2,0,0,0,0],"matrix_rows":[20,5,2,16,24,32,64,128,256],"offset":31,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,68,4,134,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":762,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,2],"matrix_rows":[258,84,8,1,256,80,16,96,384],"offset":81,"phase":3,"quadratic_rows":[0,0,0,16,8,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1010,"old":762,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1017,"old":762,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,68,133,7,6,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":1,"old":763,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,3],"matrix_rows":[353,98,8,96,256,260,320,304,384],"offset":31,"phase":1,"quadratic_rows":[256,352,0,320,0,98,106,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1011,"old":763,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,2],"matrix_rows":[259,257,256,260,8,16,288,320,384],"offset":149,"phase":2,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1016,"old":763,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,259,256,260,8,16,288,320,384],"offset":86,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,258,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[2,1,8,12,0,0,0,0,0]},"new":1,"old":764,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,0,1,0,3],"matrix_rows":[65,66,260,384,32,96,256,264,112],"offset":343,"phase":0,"quadratic_rows":[96,32,0,0,0,3,65,256,384]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,32,65,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1022,"old":764,"rank":2,"right":{"linear_Z4":[2,3,1,0,0,0,2,2,2],"matrix_rows":[66,260,3,64,388,8,80,32,256],"offset":69,"phase":3,"quadratic_rows":[2,3,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1028,"old":764,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[388,129,130,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[128,128,132,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[17,34,64,128,258,1,4,8,15],"offset":0,"phase":0,"quadratic_rows":[14,13,15,15,0,0,0,0,0]},"new":1,"old":765,"rank":4,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[257,258,320,384,32,288,4,8,304],"offset":51,"phase":0,"quadratic_rows":[288,32,0,0,0,3,256,256,449]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,64,128,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":1023,"old":765,"rank":2,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,1],"matrix_rows":[387,64,129,130,4,8,16,32,256],"offset":258,"phase":0,"quadratic_rows":[259,259,0,0,0,0,256,256,451]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1029,"old":765,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,1,2,2],"matrix_rows":[323,257,258,4,8,16,32,448,256],"offset":0,"phase":0,"quadratic_rows":[67,67,0,0,0,0,195,64,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,2,257,6,8,9],"offset":0,"phase":0,"quadratic_rows":[8,4,2,9,0,0,0,0,0]},"new":1,"old":766,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,1,0,3],"matrix_rows":[257,66,68,384,256,16,80,88,288],"offset":183,"phase":0,"quadratic_rows":[0,80,16,0,6,0,66,256,384]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,128,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1026,"old":766,"rank":2,"right":{"linear_Z4":[1,2,3,0,0,0,2,2,2],"matrix_rows":[257,68,385,6,64,72,16,32,256],"offset":42,"phase":3,"quadratic_rows":[129,4,6,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1032,"old":766,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,130,132,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,128,128,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,33,66,130,1,256,4,8,15],"offset":0,"phase":0,"quadratic_rows":[14,13,15,15,0,0,0,0,0]},"new":1,"old":767,"rank":4,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[258,260,320,384,1,16,272,280,32],"offset":99,"phase":0,"quadratic_rows":[0,272,16,0,6,0,256,256,450]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,128,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":1027,"old":767,"rank":2,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,1],"matrix_rows":[390,64,1,130,132,8,16,32,256],"offset":258,"phase":0,"quadratic_rows":[0,262,262,0,0,0,256,256,454]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1033,"old":767,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,1,2,2],"matrix_rows":[326,1,258,260,8,16,32,448,256],"offset":0,"phase":0,"quadratic_rows":[0,70,70,0,0,0,198,64,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,2,257,8,9,6],"offset":0,"phase":0,"quadratic_rows":[8,4,2,9,0,0,0,0,0]},"new":1,"old":768,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,0,3,1],"matrix_rows":[129,258,260,192,128,16,272,280,160],"offset":183,"phase":0,"quadratic_rows":[0,272,16,0,6,0,128,192,258]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,17,33,64,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1026,"old":768,"rank":2,"right":{"linear_Z4":[1,2,3,0,0,0,0,2,2],"matrix_rows":[260,193,129,6,256,264,16,32,128],"offset":41,"phase":3,"quadratic_rows":[65,4,6,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1033,"old":768,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,2,0],"matrix_rows":[65,128,2,4,8,16,160,192,256],"offset":64,"phase":3,"quadratic_rows":[192,0,0,0,0,0,193,65,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,2,257,8,6,9],"offset":0,"phase":0,"quadratic_rows":[8,4,2,9,0,0,0,0,0]},"new":1,"old":769,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,3],"matrix_rows":[257,130,132,320,256,16,144,152,288],"offset":183,"phase":0,"quadratic_rows":[0,144,16,0,6,0,256,130,320]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,32,64,129,2,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1027,"old":769,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[257,320,256,2,4,8,16,288,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1032,"old":769,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[321,257,66,68,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,64,64,0,0,0,7,0,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,258,1,8,12,3],"offset":0,"phase":0,"quadratic_rows":[2,1,8,12,0,0,0,0,0]},"new":1,"old":770,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,0,0,3,1],"matrix_rows":[257,258,132,192,32,288,128,136,304],"offset":343,"phase":0,"quadratic_rows":[288,32,0,0,0,3,128,192,257]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1022,"old":770,"rank":2,"right":{"linear_Z4":[2,3,1,0,0,0,0,2,2],"matrix_rows":[258,196,3,256,132,8,272,32,128],"offset":69,"phase":3,"quadratic_rows":[2,3,68,0,0,0,4,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1029,"old":770,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,2,0],"matrix_rows":[68,1,2,128,136,16,32,192,256],"offset":16,"phase":3,"quadratic_rows":[0,0,192,0,0,0,196,68,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,258,1,8,3,12],"offset":0,"phase":0,"quadratic_rows":[2,1,8,12,0,0,0,0,0]},"new":1,"old":771,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,3],"matrix_rows":[129,130,260,320,32,160,256,264,176],"offset":343,"phase":0,"quadratic_rows":[160,32,0,0,0,3,256,129,320]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,33,64,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1023,"old":771,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[260,320,1,2,256,264,16,32,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1028,"old":771,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[324,65,66,260,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,64,68,0,0,0,7,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":811,"old":772,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":868,"old":772,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,35,32,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,1,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":772,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,36,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":815,"old":773,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,145,2,4,8,128,32,192,256],"offset":35,"phase":3,"quadratic_rows":[145,0,0,0,1,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":880,"old":773,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":773,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,32,192,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":819,"old":774,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,32,64,384],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":892,"old":774,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":774,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,34,67,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":775,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,260,288,290,256,264,48,320,384],"offset":26,"phase":3,"quadratic_rows":[288,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":824,"old":775,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":4,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":911,"old":775,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,264,272,288,320,384],"offset":107,"phase":1,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":775,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":105,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":776,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,1,0,0],"matrix_rows":[65,66,96,32,4,8,112,128,256],"offset":75,"phase":0,"quadratic_rows":[32,96,0,0,0,3,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":822,"old":776,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[3,64,66,4,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":905,"old":776,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[3,65,64,4,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":776,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":823,"old":777,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,2,0,0,0],"matrix_rows":[3,32,34,4,40,16,64,128,256],"offset":22,"phase":1,"quadratic_rows":[34,35,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":904,"old":777,"rank":1,"right":{"linear_Z4":[3,2,0,0,2,0,0,0,0],"matrix_rows":[3,17,16,4,24,32,64,128,256],"offset":22,"phase":1,"quadratic_rows":[19,17,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":777,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":22,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":825,"old":778,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":910,"old":778,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,64,384],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":778,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":779,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,130,160,32,4,8,176,64,256],"offset":75,"phase":0,"quadratic_rows":[32,160,0,0,0,3,0,130,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":828,"old":779,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":923,"old":779,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,2,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":780,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,1],"matrix_rows":[257,258,288,32,4,8,304,64,128],"offset":75,"phase":0,"quadratic_rows":[32,288,0,0,0,3,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":826,"old":780,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,4,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":917,"old":780,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,4,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":780,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,288,64,128],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,32,65,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":781,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,260,32,34,256,8,48,320,128],"offset":22,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":827,"old":781,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":916,"old":781,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,320,128],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":781,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,320,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":829,"old":782,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,8,16,32,192,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":922,"old":782,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":782,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,34,1,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":783,"rank":2,"right":{"linear_Z4":[0,0,2,0,0,1,0,0,0],"matrix_rows":[34,36,1,16,48,56,64,128,256],"offset":43,"phase":0,"quadratic_rows":[0,48,16,0,6,34,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":832,"old":783,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[6,1,34,32,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[0,38,34,0,0,6,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":935,"old":783,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,0],"matrix_rows":[6,1,32,36,8,48,64,128,256],"offset":32,"phase":3,"quadratic_rows":[0,36,38,0,0,6,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":783,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":21,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":784,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[257,2,256,16,20,24,32,64,384],"offset":13,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":830,"old":784,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":929,"old":784,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":784,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":831,"old":785,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":8,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":928,"old":785,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":10,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":785,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":51,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,2,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":786,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,1,0,0],"matrix_rows":[66,68,1,80,16,88,32,128,256],"offset":51,"phase":0,"quadratic_rows":[0,16,80,0,6,0,68,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":833,"old":786,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[6,1,66,64,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[0,70,66,0,0,0,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":934,"old":786,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,0],"matrix_rows":[6,1,64,68,72,16,32,128,256],"offset":16,"phase":3,"quadratic_rows":[0,68,70,0,0,0,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":786,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":37,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":787,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[257,2,256,16,20,24,32,320,128],"offset":13,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":836,"old":787,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":947,"old":787,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":788,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,2,0],"matrix_rows":[129,2,128,16,20,24,32,192,256],"offset":13,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":834,"old":788,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":941,"old":788,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":788,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,2,64,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":789,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,0],"matrix_rows":[130,132,1,144,16,152,32,64,256],"offset":51,"phase":0,"quadratic_rows":[0,16,144,0,6,0,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":835,"old":789,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":940,"old":789,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":789,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,144,32,64,256],"offset":37,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,2,64,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":790,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,0,1],"matrix_rows":[258,260,1,272,16,280,32,64,128],"offset":51,"phase":0,"quadratic_rows":[0,16,272,0,6,0,0,0,260]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":837,"old":790,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,1,256,260,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[0,260,262,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":946,"old":790,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,1,258,256,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[0,262,258,0,0,0,0,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":790,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,272,32,64,128],"offset":37,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,34,3,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":791,"rank":2,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[257,2,256,272,20,280,288,320,384],"offset":37,"phase":3,"quadratic_rows":[0,272,0,0,2,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":840,"old":791,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":959,"old":791,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":18,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":791,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,272,288,320,384],"offset":43,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,2,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":792,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,1,0,0],"matrix_rows":[66,72,1,80,84,16,32,128,256],"offset":51,"phase":0,"quadratic_rows":[0,16,0,80,10,0,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":838,"old":792,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[10,1,66,4,64,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[0,74,0,66,0,0,10,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":953,"old":792,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[10,1,64,68,72,16,32,128,256],"offset":8,"phase":3,"quadratic_rows":[0,72,0,74,0,0,10,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":792,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":37,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":839,"old":793,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":30,"phase":0,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":952,"old":793,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":28,"phase":1,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":793,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":794,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[2,288,1,16,20,24,256,64,384],"offset":74,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":841,"old":794,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":958,"old":794,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,290,4,8,16,256,64,384],"offset":69,"phase":3,"quadratic_rows":[0,290,0,0,0,2,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":794,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,2,64,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":795,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,0],"matrix_rows":[130,136,1,144,148,16,32,64,256],"offset":51,"phase":0,"quadratic_rows":[0,16,0,144,10,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":844,"old":795,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[10,1,130,4,128,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[0,138,0,130,0,0,0,10,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":971,"old":795,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[10,1,128,132,136,16,32,64,256],"offset":8,"phase":3,"quadratic_rows":[0,136,0,138,0,0,0,10,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,2,64,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":796,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,0,1],"matrix_rows":[258,264,1,272,276,16,32,64,128],"offset":51,"phase":0,"quadratic_rows":[0,16,0,272,10,0,0,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":842,"old":796,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[10,1,256,260,264,16,32,64,128],"offset":8,"phase":3,"quadratic_rows":[0,264,0,266,0,0,0,0,10]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":965,"old":796,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[10,1,258,4,256,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[0,266,0,258,0,0,0,0,10]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":796,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,0,0,2],"matrix_rows":[264,1,10,4,256,272,32,64,128],"offset":37,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":797,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[2,288,1,16,20,24,256,320,128],"offset":74,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":843,"old":797,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":964,"old":797,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,290,4,8,16,256,320,128],"offset":69,"phase":3,"quadratic_rows":[0,290,0,0,0,2,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":797,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,320,128],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":798,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,2,0],"matrix_rows":[2,160,1,16,20,24,128,192,256],"offset":74,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":845,"old":798,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,162,4,8,16,128,192,256],"offset":69,"phase":3,"quadratic_rows":[0,162,0,0,0,2,0,2,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":970,"old":798,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":798,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,32,2,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":799,"rank":2,"right":{"linear_Z4":[2,2,0,0,3,3,0,0,0],"matrix_rows":[49,50,32,16,52,8,64,128,256],"offset":28,"phase":1,"quadratic_rows":[16,32,0,0,49,50,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":848,"old":799,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,2,0,0,0],"matrix_rows":[3,32,34,36,8,16,64,128,256],"offset":14,"phase":1,"quadratic_rows":[34,35,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":983,"old":799,"rank":1,"right":{"linear_Z4":[3,2,0,0,2,0,0,0,0],"matrix_rows":[3,17,16,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[19,17,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":799,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":800,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,264,32,34,4,256,48,64,384],"offset":38,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":846,"old":800,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":977,"old":800,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,32,64,384],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":800,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":847,"old":801,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,260,264,16,288,320,384],"offset":64,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":976,"old":801,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,260,264,272,32,320,384],"offset":32,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":801,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,260,264,16,288,320,384],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":849,"old":802,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[17,65,2,4,8,64,96,128,256],"offset":64,"phase":3,"quadratic_rows":[81,0,0,0,65,0,17,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":982,"old":802,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[17,64,66,4,8,80,32,128,256],"offset":4,"phase":3,"quadratic_rows":[80,0,0,0,81,0,17,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":802,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":803,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,264,32,34,4,256,48,320,128],"offset":38,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":852,"old":803,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":995,"old":803,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,32,320,128],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":804,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[1,136,32,34,4,128,48,192,256],"offset":38,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":850,"old":804,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,137,2,4,128,16,32,192,256],"offset":19,"phase":3,"quadratic_rows":[137,0,0,1,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":989,"old":804,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":804,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":805,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,144,160,162,4,8,32,64,256],"offset":75,"phase":0,"quadratic_rows":[32,0,0,0,160,17,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":851,"old":805,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[17,129,2,4,8,128,160,64,256],"offset":64,"phase":3,"quadratic_rows":[145,0,0,0,129,0,0,17,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":988,"old":805,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[17,128,130,4,8,144,32,64,256],"offset":4,"phase":3,"quadratic_rows":[144,0,0,0,145,0,0,17,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":805,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,2,0],"matrix_rows":[144,17,2,4,8,128,160,64,256],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":853,"old":806,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[17,256,258,4,8,272,32,64,128],"offset":4,"phase":3,"quadratic_rows":[272,0,0,0,273,0,0,0,17]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":994,"old":806,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[17,257,2,4,8,256,288,64,128],"offset":64,"phase":3,"quadratic_rows":[273,0,0,0,257,0,0,0,17]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":806,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,288,64,128],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":855,"old":807,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1000,"old":807,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":807,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,288,64,128],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":859,"old":808,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,0],"matrix_rows":[5,64,2,68,72,16,32,128,256],"offset":16,"phase":3,"quadratic_rows":[68,0,69,0,0,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1012,"old":808,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[5,65,2,64,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[69,0,65,0,0,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":808,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":863,"old":809,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,8,144,32,64,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1024,"old":809,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":809,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,144,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":810,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[17,16,2,20,8,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":811,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,36,8,16,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":812,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,32,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":813,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":814,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,132,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":815,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,132,136,144,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":816,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":817,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,272,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":818,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,8,272,288,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":819,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,272,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":820,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,68,8,16,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":821,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[10,1,8,12,16,32,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":822,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,8,16,96,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":823,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[18,1,16,4,24,32,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":824,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":825,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":826,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,272,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":827,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,320,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":828,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,160,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":829,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,8,144,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":830,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":831,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":832,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,4,8,48,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":833,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,72,16,32,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":834,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,136,144,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":835,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,136,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":836,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":837,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,272,32,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":838,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,68,8,16,32,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":839,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[17,16,18,4,8,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":840,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,272,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":841,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":842,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,272,32,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":843,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,320,128],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":844,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,132,8,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":845,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,132,136,144,160,192,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":846,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":847,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,272,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":848,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[18,1,16,20,8,32,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":849,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,66,4,8,16,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":850,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,4,136,144,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":851,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,4,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":852,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,320,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":853,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,288,64,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":854,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,16,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":855,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,288,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":856,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,136,16,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":857,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,160,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":858,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[20,1,2,16,24,32,64,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":859,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,16,96,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":860,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,16,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":861,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,272,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":862,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,136,16,32,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":863,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,136,144,160,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":864,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,272,288,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":865,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,16,32,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":810,"old":866,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,2,0,0,0],"matrix_rows":[3,33,32,36,8,16,64,128,256],"offset":14,"phase":1,"quadratic_rows":[35,33,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":811,"old":866,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[3,16,18,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[18,19,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":868,"old":867,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,0],"matrix_rows":[1,41,2,4,32,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[41,0,0,1,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":869,"old":867,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":4,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":868,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,10,4,16,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":869,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[40,1,2,4,32,48,64,128,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":811,"old":870,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[10,1,34,4,32,48,64,128,256],"offset":32,"phase":3,"quadratic_rows":[0,42,0,34,0,10,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":869,"old":870,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[10,1,32,36,40,16,64,128,256],"offset":8,"phase":3,"quadratic_rows":[0,40,0,42,0,10,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":810,"old":871,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":868,"old":871,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":18,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,2,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":812,"old":872,"rank":2,"right":{"linear_Z4":[0,3,2,0,0,0,0,0,2],"matrix_rows":[7,4,256,262,8,16,288,320,384],"offset":90,"phase":2,"quadratic_rows":[262,259,265,4,0,0,0,0,7]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,17,1,34,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":813,"old":872,"rank":2,"right":{"linear_Z4":[3,0,2,0,0,0,0,0,2],"matrix_rows":[4,7,261,256,8,272,32,320,384],"offset":53,"phase":2,"quadratic_rows":[259,261,266,4,0,0,0,0,7]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,2,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":874,"old":873,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,32,16,4,8,64,128,256],"offset":15,"phase":0,"quadratic_rows":[32,16,0,0,2,1,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,32,3,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":875,"old":873,"rank":2,"right":{"linear_Z4":[1,3,0,0,0,0,0,0,2],"matrix_rows":[1,2,323,16,4,8,32,256,384],"offset":138,"phase":3,"quadratic_rows":[323,339,0,0,2,0,3,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":874,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":129,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":875,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,8,272,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,3,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":812,"old":876,"rank":2,"right":{"linear_Z4":[0,1,3,0,0,0,0,0,2],"matrix_rows":[2,4,1,326,8,16,32,256,384],"offset":146,"phase":3,"quadratic_rows":[0,326,334,4,0,0,6,0,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,2,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":874,"old":876,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,1,16,8,32,64,128,256],"offset":27,"phase":0,"quadratic_rows":[0,16,8,4,2,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,17,33,2,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":813,"old":877,"rank":2,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,2],"matrix_rows":[1,7,261,16,272,280,32,320,384],"offset":44,"phase":1,"quadratic_rows":[258,21,22,0,6,0,0,0,1]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,1,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":875,"old":877,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,0,0,0,2],"matrix_rows":[1,7,259,16,272,280,32,320,384],"offset":44,"phase":1,"quadratic_rows":[260,278,275,0,6,0,0,0,7]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":814,"old":878,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":815,"old":878,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":880,"old":879,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[24,1,2,4,128,144,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,144,152,0,0,24,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":881,"old":879,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[24,1,2,4,136,128,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,0,0,152,136,0,0,24,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":880,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,32,192,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":881,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,160,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":815,"old":882,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,137,2,4,128,16,160,64,256],"offset":19,"phase":3,"quadratic_rows":[137,0,0,1,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":881,"old":882,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":814,"old":883,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[17,129,2,4,8,128,32,192,256],"offset":128,"phase":3,"quadratic_rows":[145,0,0,0,129,0,0,17,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":880,"old":883,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[17,128,2,132,8,144,32,64,256],"offset":8,"phase":3,"quadratic_rows":[144,0,0,0,145,0,0,17,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":816,"old":884,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":817,"old":884,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":886,"old":885,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[24,1,2,4,256,272,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,0,0,272,280,0,0,0,24]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":887,"old":885,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[24,1,2,4,264,256,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,0,0,280,264,0,0,0,24]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":886,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,320,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":887,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,288,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":816,"old":888,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[17,257,2,4,8,256,32,320,128],"offset":128,"phase":3,"quadratic_rows":[273,0,0,0,257,0,0,0,17]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":886,"old":888,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[17,256,2,260,8,272,32,64,128],"offset":8,"phase":3,"quadratic_rows":[272,0,0,0,273,0,0,0,17]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":817,"old":889,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,288,64,128],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":887,"old":889,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":818,"old":890,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,260,264,272,288,64,384],"offset":16,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":819,"old":890,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,260,8,272,288,320,384],"offset":128,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":892,"old":891,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":893,"old":891,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,32,64,384],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":892,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":893,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,272,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":819,"old":894,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":76,"phase":1,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":893,"old":894,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":78,"phase":0,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":818,"old":895,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,0],"matrix_rows":[2,1,274,4,8,256,32,64,384],"offset":37,"phase":3,"quadratic_rows":[0,274,0,0,2,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":892,"old":895,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":820,"old":896,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,0],"matrix_rows":[3,9,8,12,16,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[11,9,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":821,"old":896,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[3,64,66,68,8,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":898,"old":897,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,2,0,0],"matrix_rows":[9,65,2,4,64,16,96,128,256],"offset":82,"phase":1,"quadratic_rows":[73,0,0,65,0,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":899,"old":897,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[9,32,34,4,40,16,64,128,256],"offset":4,"phase":3,"quadratic_rows":[40,0,0,41,0,9,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":898,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,34,4,8,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":899,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,16,96,128,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":820,"old":900,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":898,"old":900,"rank":1,"right":{"linear_Z4":[2,1,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":66,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":821,"old":901,"rank":1,"right":{"linear_Z4":[0,3,0,2,0,0,0,0,0],"matrix_rows":[2,1,74,4,64,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,74,0,2,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":899,"old":901,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":8,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":822,"old":902,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":823,"old":902,"rank":1,"right":{"linear_Z4":[0,2,0,1,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":36,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":904,"old":903,"rank":1,"right":{"linear_Z4":[2,0,0,1,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":66,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":905,"old":903,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":904,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,4,40,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":905,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,8,80,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":823,"old":906,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[3,64,66,4,8,80,32,128,256],"offset":38,"phase":1,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":905,"old":906,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[3,17,16,4,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[19,17,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":822,"old":907,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[3,32,34,4,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[34,35,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":904,"old":907,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,2,0,0],"matrix_rows":[3,65,64,4,8,16,96,128,256],"offset":70,"phase":1,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":824,"old":908,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,2,0,0],"matrix_rows":[8,1,2,12,64,80,96,128,256],"offset":24,"phase":2,"quadratic_rows":[0,0,8,76,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":825,"old":908,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":910,"old":909,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":112,"phase":1,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":911,"old":909,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":114,"phase":0,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":910,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,272,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":911,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,16,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":824,"old":912,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":4,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":910,"old":912,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,264,272,288,320,384],"offset":155,"phase":1,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":825,"old":913,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":911,"old":913,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,64,384],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":826,"old":914,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":827,"old":914,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":916,"old":915,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,288,64,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":917,"old":915,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":916,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,272,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":917,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,288,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":827,"old":918,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,1,256,260,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,260,262,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":917,"old":918,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,1,258,256,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,262,258,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":826,"old":919,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":916,"old":919,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":828,"old":920,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":829,"old":920,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,8,16,160,64,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":922,"old":921,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":923,"old":921,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":922,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":923,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,144,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":828,"old":924,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":922,"old":924,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":829,"old":925,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":923,"old":925,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":830,"old":926,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":831,"old":926,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":928,"old":927,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":929,"old":927,"rank":1,"right":{"linear_Z4":[2,0,0,1,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":34,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":928,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":929,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,272,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":831,"old":930,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":8,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":929,"old":930,"rank":1,"right":{"linear_Z4":[2,1,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":10,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":830,"old":931,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":928,"old":931,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":832,"old":932,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":112,"phase":1,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":833,"old":932,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":116,"phase":0,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":934,"old":933,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":935,"old":933,"rank":1,"right":{"linear_Z4":[0,0,2,1,0,0,2,0,0],"matrix_rows":[8,1,2,12,64,80,96,128,256],"offset":72,"phase":2,"quadratic_rows":[0,0,8,76,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":934,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,80,32,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":935,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[36,1,2,32,40,16,64,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":832,"old":936,"rank":1,"right":{"linear_Z4":[0,3,2,0,0,0,2,0,0],"matrix_rows":[6,1,66,64,8,80,32,128,256],"offset":44,"phase":1,"quadratic_rows":[0,70,66,0,0,0,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":934,"old":936,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[6,1,32,36,8,48,64,128,256],"offset":44,"phase":1,"quadratic_rows":[0,36,38,0,0,6,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":833,"old":937,"rank":1,"right":{"linear_Z4":[0,3,2,0,0,2,0,0,0],"matrix_rows":[6,1,34,32,40,16,64,128,256],"offset":28,"phase":1,"quadratic_rows":[0,38,34,0,0,6,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":935,"old":937,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,2,0,0],"matrix_rows":[6,1,64,68,72,16,32,128,256],"offset":28,"phase":1,"quadratic_rows":[0,68,70,0,0,0,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":834,"old":938,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,136,16,32,64,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":835,"old":938,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":940,"old":939,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":941,"old":939,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":940,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,144,32,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":941,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":835,"old":942,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":941,"old":942,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":834,"old":943,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,8,144,32,64,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":940,"old":943,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":836,"old":944,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":837,"old":944,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":946,"old":945,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":947,"old":945,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,264,16,32,64,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":946,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":947,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,272,32,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":836,"old":948,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,4,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":946,"old":948,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,4,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":837,"old":949,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":947,"old":949,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,272,32,64,128],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":838,"old":950,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":839,"old":950,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,67,64,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[67,1,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":952,"old":951,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,0],"matrix_rows":[1,73,2,4,64,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[73,0,0,1,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":953,"old":951,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":8,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":952,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,2,12,16,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":953,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,80,32,128,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":839,"old":954,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,2,0,0],"matrix_rows":[9,65,2,4,64,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[73,0,0,65,0,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":953,"old":954,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,0],"matrix_rows":[9,16,18,4,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[24,0,0,25,9,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":838,"old":955,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,0],"matrix_rows":[3,8,10,12,16,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[10,11,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":952,"old":955,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,2,0,0],"matrix_rows":[3,65,64,68,8,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":840,"old":956,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,289,2,4,8,16,256,64,384],"offset":67,"phase":3,"quadratic_rows":[289,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":841,"old":956,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":958,"old":957,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":42,"phase":1,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":959,"old":957,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,264,272,288,64,384],"offset":47,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":958,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,288,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":959,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":840,"old":960,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,260,264,272,288,64,384],"offset":16,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":958,"old":960,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,260,8,272,288,320,384],"offset":128,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":841,"old":961,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":959,"old":961,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,289,2,4,8,16,256,64,384],"offset":67,"phase":3,"quadratic_rows":[289,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":842,"old":962,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[40,1,2,4,264,16,256,320,128],"offset":128,"phase":3,"quadratic_rows":[0,0,0,296,0,264,0,0,40]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":843,"old":962,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,0,2],"matrix_rows":[40,1,2,4,256,272,288,64,128],"offset":32,"phase":3,"quadratic_rows":[0,0,0,288,0,296,0,0,40]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":964,"old":963,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":20,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":965,"old":963,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":964,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,288,320,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":965,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,8,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":843,"old":966,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,0,2],"matrix_rows":[34,1,256,260,8,16,288,64,128],"offset":8,"phase":3,"quadratic_rows":[0,288,0,0,0,290,0,0,34]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":965,"old":966,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[34,1,258,4,8,16,256,320,128],"offset":128,"phase":3,"quadratic_rows":[0,290,0,0,0,258,0,0,34]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":842,"old":967,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":964,"old":967,"rank":1,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,0],"matrix_rows":[2,1,266,4,256,272,32,64,128],"offset":21,"phase":3,"quadratic_rows":[0,266,0,2,0,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":844,"old":968,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":845,"old":968,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":20,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":970,"old":969,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,2,0],"matrix_rows":[40,1,2,4,128,144,160,64,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,160,0,168,0,40,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":971,"old":969,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[40,1,2,4,136,16,128,192,256],"offset":128,"phase":3,"quadratic_rows":[0,0,0,168,0,136,0,40,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":970,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":971,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,144,32,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":844,"old":972,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[34,1,130,4,8,16,128,192,256],"offset":128,"phase":3,"quadratic_rows":[0,162,0,0,0,130,0,34,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":970,"old":972,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,2,0],"matrix_rows":[34,1,128,132,8,16,160,64,256],"offset":8,"phase":3,"quadratic_rows":[0,160,0,0,0,162,0,34,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":845,"old":973,"rank":1,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,0],"matrix_rows":[2,1,138,4,128,144,32,64,256],"offset":21,"phase":3,"quadratic_rows":[0,138,0,2,0,0,0,2,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":971,"old":973,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":846,"old":974,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":847,"old":974,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,32,64,384],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":976,"old":975,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":977,"old":975,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,264,16,288,320,384],"offset":143,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":976,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,16,288,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":977,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,272,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":847,"old":978,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":977,"old":978,"rank":1,"right":{"linear_Z4":[2,1,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":66,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":846,"old":979,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":976,"old":979,"rank":1,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,0],"matrix_rows":[2,1,266,4,256,16,32,64,384],"offset":21,"phase":3,"quadratic_rows":[0,266,0,2,0,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":848,"old":980,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":42,"phase":1,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":849,"old":980,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,19,16,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[19,1,0,0,1,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":982,"old":981,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,0],"matrix_rows":[17,32,2,36,8,48,64,128,256],"offset":8,"phase":3,"quadratic_rows":[48,0,0,0,49,17,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":983,"old":981,"rank":1,"right":{"linear_Z4":[3,0,0,0,2,0,2,0,0],"matrix_rows":[17,65,2,4,8,64,96,128,256],"offset":98,"phase":1,"quadratic_rows":[81,0,0,0,65,0,17,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":982,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[80,1,2,4,8,64,96,128,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":983,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,36,8,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":848,"old":984,"rank":1,"right":{"linear_Z4":[0,3,0,0,2,0,0,0,0],"matrix_rows":[2,1,82,4,8,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,82,0,0,2,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":982,"old":984,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":8,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":849,"old":985,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":78,"phase":0,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":983,"old":985,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":76,"phase":1,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":850,"old":986,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":851,"old":986,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":988,"old":987,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[24,1,2,4,128,144,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,0,0,144,152,0,0,24,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":989,"old":987,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[24,1,2,4,136,128,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,152,136,0,0,24,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":988,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,160,64,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":989,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":851,"old":990,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[9,129,2,4,128,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[137,0,0,129,0,0,0,9,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":989,"old":990,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[9,128,130,4,136,16,32,64,256],"offset":4,"phase":3,"quadratic_rows":[136,0,0,137,0,0,0,9,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":850,"old":991,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,145,2,4,8,128,160,64,256],"offset":35,"phase":3,"quadratic_rows":[145,0,0,0,1,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":988,"old":991,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":852,"old":992,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[24,1,2,4,264,256,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,0,0,280,264,0,0,0,24]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":853,"old":992,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[24,1,2,4,256,272,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,0,0,272,280,0,0,0,24]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":994,"old":993,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":995,"old":993,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":994,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":995,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,272,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":852,"old":996,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[9,256,258,4,264,16,32,64,128],"offset":4,"phase":3,"quadratic_rows":[264,0,0,265,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":994,"old":996,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[9,257,2,4,256,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[265,0,0,257,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":853,"old":997,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":995,"old":997,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,288,64,128],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":854,"old":998,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,288,64,128],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":855,"old":998,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1000,"old":999,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,4,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1001,"old":999,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,4,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1000,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1001,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,320,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":855,"old":1002,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,1,256,260,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,260,262,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1001,"old":1002,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,1,258,256,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,262,258,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":854,"old":1003,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1000,"old":1003,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":856,"old":1004,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,8,16,160,64,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":857,"old":1004,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1006,"old":1005,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1007,"old":1005,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1006,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,136,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1007,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,32,192,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":856,"old":1008,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1006,"old":1008,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":857,"old":1009,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1007,"old":1009,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":858,"old":1010,"rank":1,"right":{"linear_Z4":[0,0,2,1,0,0,2,0,0],"matrix_rows":[8,1,2,12,64,80,96,128,256],"offset":40,"phase":2,"quadratic_rows":[0,0,8,76,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":859,"old":1010,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1012,"old":1011,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":114,"phase":0,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1013,"old":1011,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":112,"phase":1,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1012,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,72,16,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1013,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,4,8,48,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":859,"old":1014,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,0],"matrix_rows":[5,32,2,36,8,48,64,128,256],"offset":32,"phase":3,"quadratic_rows":[36,0,37,0,0,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1013,"old":1014,"rank":1,"right":{"linear_Z4":[3,0,2,0,0,0,2,0,0],"matrix_rows":[5,65,2,64,8,16,96,128,256],"offset":74,"phase":1,"quadratic_rows":[69,0,65,0,0,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":858,"old":1015,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[5,64,2,68,72,16,32,128,256],"offset":26,"phase":1,"quadratic_rows":[68,0,69,0,0,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1012,"old":1015,"rank":1,"right":{"linear_Z4":[3,0,2,0,2,0,0,0,0],"matrix_rows":[5,17,2,16,24,32,64,128,256],"offset":26,"phase":1,"quadratic_rows":[21,0,17,0,5,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":860,"old":1016,"rank":1,"right":{"linear_Z4":[2,0,0,1,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":66,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":861,"old":1016,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1018,"old":1017,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":20,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1019,"old":1017,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1018,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1019,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":860,"old":1020,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,264,272,288,320,384],"offset":167,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1018,"old":1020,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":8,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":861,"old":1021,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,32,64,384],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1019,"old":1021,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":862,"old":1022,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":863,"old":1022,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,136,16,32,64,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1024,"old":1023,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1025,"old":1023,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1024,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,144,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1025,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,160,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":863,"old":1026,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1025,"old":1026,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":862,"old":1027,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1024,"old":1027,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,67,128,259,3,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":864,"old":1028,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,2],"matrix_rows":[6,5,263,128,384,392,144,32,192],"offset":82,"phase":3,"quadratic_rows":[259,387,128,0,0,0,0,6,3]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,32,66,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":865,"old":1028,"rank":2,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,0],"matrix_rows":[5,6,32,288,260,8,304,320,384],"offset":71,"phase":0,"quadratic_rows":[36,292,259,0,0,3,0,0,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":1030,"old":1029,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,64,257,256,4,8,272,32,128],"offset":322,"phase":3,"quadratic_rows":[259,257,0,0,0,0,128,64,3]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,64,129,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":1031,"old":1029,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,64,256,258,4,8,16,288,128],"offset":386,"phase":3,"quadratic_rows":[258,259,0,0,0,0,128,64,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1030,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,288,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1031,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,272,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,3,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":864,"old":1032,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,5,263,16,272,280,32,320,384],"offset":43,"phase":0,"quadratic_rows":[259,275,16,0,6,0,0,0,3]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,1,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":1030,"old":1032,"rank":2,"right":{"linear_Z4":[2,0,2,0,0,0,0,0,0],"matrix_rows":[3,5,257,16,272,280,32,320,384],"offset":43,"phase":0,"quadratic_rows":[262,17,273,0,6,0,0,0,5]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":865,"old":1033,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,64,1,256,260,8,272,32,128],"offset":322,"phase":3,"quadratic_rows":[0,260,262,0,0,0,128,64,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,64,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":1031,"old":1033,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,64,1,258,256,264,16,32,128],"offset":290,"phase":3,"quadratic_rows":[0,262,258,0,0,0,128,64,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1034,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1035,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1036,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}}],"endpoint_adapters":[{"frame":7,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,11,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":0,"rank":0,"right":null,"role":"source"},{"frame":868,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,16,32,64,128,256],"offset":11,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":0,"rank":0,"right":null,"role":"target"},{"frame":213,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,19,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":1,"rank":0,"right":null,"role":"source"},{"frame":839,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,17,32,64,128,256],"offset":19,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":1,"rank":0,"right":null,"role":"target"},{"frame":66,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,35,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":2,"rank":0,"right":null,"role":"source"},{"frame":898,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,33,64,128,256],"offset":35,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":2,"rank":0,"right":null,"role":"target"},{"frame":270,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,32,67,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":3,"rank":0,"right":null,"role":"source"},{"frame":849,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,32,65,128,256],"offset":67,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":3,"rank":0,"right":null,"role":"target"},{"frame":300,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,32,64,131,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":4,"rank":0,"right":null,"role":"source"},{"frame":851,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,32,64,129,256],"offset":131,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":4,"rank":0,"right":null,"role":"target"},{"frame":298,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,32,64,128,259],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":5,"rank":0,"right":null,"role":"source"},{"frame":994,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,32,64,128,257],"offset":259,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":5,"rank":0,"right":null,"role":"target"},{"frame":210,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,13,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":6,"rank":0,"right":null,"role":"source"},{"frame":952,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,16,32,64,128,256],"offset":13,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":6,"rank":0,"right":null,"role":"target"},{"frame":13,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,21,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":7,"rank":0,"right":null,"role":"source"},{"frame":810,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,17,32,64,128,256],"offset":21,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":7,"rank":0,"right":null,"role":"target"},{"frame":272,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,37,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":8,"rank":0,"right":null,"role":"source"},{"frame":983,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,33,64,128,256],"offset":37,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":8,"rank":0,"right":null,"role":"target"},{"frame":72,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,32,69,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":9,"rank":0,"right":null,"role":"source"},{"frame":820,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,32,65,128,256],"offset":69,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":9,"rank":0,"right":null,"role":"target"},{"frame":42,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,32,64,133,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":10,"rank":0,"right":null,"role":"source"},{"frame":814,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,32,64,129,256],"offset":133,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":10,"rank":0,"right":null,"role":"target"},{"frame":43,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,32,64,128,261],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":11,"rank":0,"right":null,"role":"source"},{"frame":816,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,32,64,128,257],"offset":261,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":11,"rank":0,"right":null,"role":"target"},{"frame":94,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,41,64,128,256],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":12,"rank":0,"right":null,"role":"source"},{"frame":904,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,33,64,128,256],"offset":41,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":12,"rank":0,"right":null,"role":"target"},{"frame":355,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,32,73,128,256],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":13,"rank":0,"right":null,"role":"source"},{"frame":1012,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,32,65,128,256],"offset":73,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":13,"rank":0,"right":null,"role":"target"},{"frame":327,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,32,64,137,256],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":14,"rank":0,"right":null,"role":"source"},{"frame":1006,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,32,64,129,256],"offset":137,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":14,"rank":0,"right":null,"role":"target"},{"frame":326,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,32,64,128,265],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":15,"rank":0,"right":null,"role":"source"},{"frame":1000,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,32,64,128,257],"offset":265,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":15,"rank":0,"right":null,"role":"target"},{"frame":360,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,49,64,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":16,"rank":0,"right":null,"role":"source"},{"frame":1013,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,33,64,128,256],"offset":49,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":16,"rank":0,"right":null,"role":"target"},{"frame":99,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,32,81,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":17,"rank":0,"right":null,"role":"source"},{"frame":905,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,32,65,128,256],"offset":81,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":17,"rank":0,"right":null,"role":"target"},{"frame":127,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,32,64,145,256],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":18,"rank":0,"right":null,"role":"source"},{"frame":923,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,32,64,129,256],"offset":145,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":18,"rank":0,"right":null,"role":"target"},{"frame":129,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,32,64,128,273],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":19,"rank":0,"right":null,"role":"source"},{"frame":826,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,32,64,128,257],"offset":273,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":19,"rank":0,"right":null,"role":"target"},{"frame":389,"left":{"linear_Z4":[1,0,0,0,0,1,0,0,0],"matrix_rows":[32,2,4,8,16,1,64,161,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"port":20,"rank":0,"right":null,"role":"source"},{"frame":1025,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,33,64,129,256],"offset":161,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":20,"rank":0,"right":null,"role":"target"},{"frame":385,"left":{"linear_Z4":[1,0,0,0,0,1,0,0,0],"matrix_rows":[32,2,4,8,16,1,64,128,289],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"port":21,"rank":0,"right":null,"role":"source"},{"frame":1030,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,33,64,128,257],"offset":289,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":21,"rank":0,"right":null,"role":"target"},{"frame":186,"left":{"linear_Z4":[1,0,0,0,0,0,1,0,0],"matrix_rows":[64,2,4,8,16,32,1,193,256],"offset":0,"phase":0,"quadratic_rows":[65,0,0,0,0,0,65,0,0]},"port":22,"rank":0,"right":null,"role":"source"},{"frame":941,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,65,129,256],"offset":193,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":22,"rank":0,"right":null,"role":"target"},{"frame":188,"left":{"linear_Z4":[1,0,0,0,0,0,1,0,0],"matrix_rows":[64,2,4,8,16,32,1,128,321],"offset":0,"phase":0,"quadratic_rows":[65,0,0,0,0,0,65,0,0]},"port":23,"rank":0,"right":null,"role":"source"},{"frame":836,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,65,128,257],"offset":321,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":23,"rank":0,"right":null,"role":"target"},{"frame":158,"left":{"linear_Z4":[1,0,0,0,0,0,0,1,0],"matrix_rows":[128,2,4,8,16,32,64,1,385],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,129,0]},"port":24,"rank":0,"right":null,"role":"source"},{"frame":830,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,129,257],"offset":385,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":24,"rank":0,"right":null,"role":"target"},{"frame":67,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,14,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":25,"rank":0,"right":null,"role":"source"},{"frame":821,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,16,32,64,128,256],"offset":14,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":25,"rank":0,"right":null,"role":"target"},{"frame":275,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,22,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":26,"rank":0,"right":null,"role":"source"},{"frame":848,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,18,32,64,128,256],"offset":22,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":26,"rank":0,"right":null,"role":"target"},{"frame":10,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,38,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":27,"rank":0,"right":null,"role":"source"},{"frame":811,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,34,64,128,256],"offset":38,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":27,"rank":0,"right":null,"role":"target"},{"frame":216,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,32,70,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":28,"rank":0,"right":null,"role":"source"},{"frame":838,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,32,66,128,256],"offset":70,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":28,"rank":0,"right":null,"role":"target"},{"frame":246,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,32,64,134,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":29,"rank":0,"right":null,"role":"source"},{"frame":844,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,32,64,130,256],"offset":134,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":29,"rank":0,"right":null,"role":"target"},{"frame":244,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,32,64,128,262],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":30,"rank":0,"right":null,"role":"source"},{"frame":965,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,32,64,128,258],"offset":262,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":30,"rank":0,"right":null,"role":"target"},{"frame":97,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,26,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":31,"rank":0,"right":null,"role":"source"},{"frame":823,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,18,32,64,128,256],"offset":26,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":31,"rank":0,"right":null,"role":"target"},{"frame":154,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,16,32,74,128,256],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":32,"rank":0,"right":null,"role":"source"},{"frame":833,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,16,32,66,128,256],"offset":74,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":32,"rank":0,"right":null,"role":"target"},{"frame":184,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,16,32,64,138,256],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":33,"rank":0,"right":null,"role":"source"},{"frame":835,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,16,32,64,130,256],"offset":138,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":33,"rank":0,"right":null,"role":"target"},{"frame":182,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,16,32,64,128,266],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":34,"rank":0,"right":null,"role":"source"},{"frame":946,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,16,32,64,128,258],"offset":266,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":34,"rank":0,"right":null,"role":"target"},{"frame":159,"left":{"linear_Z4":[0,1,0,0,1,0,0,0,0],"matrix_rows":[1,16,4,8,2,50,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"port":35,"rank":0,"right":null,"role":"source"},{"frame":832,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,18,34,64,128,256],"offset":50,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":35,"rank":0,"right":null,"role":"target"},{"frame":384,"left":{"linear_Z4":[0,1,0,0,1,0,0,0,0],"matrix_rows":[1,16,4,8,2,32,64,146,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"port":36,"rank":0,"right":null,"role":"source"},{"frame":1024,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,18,32,64,130,256],"offset":146,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":36,"rank":0,"right":null,"role":"target"},{"frame":388,"left":{"linear_Z4":[0,1,0,0,1,0,0,0,0],"matrix_rows":[1,16,4,8,2,32,64,128,274],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"port":37,"rank":0,"right":null,"role":"source"},{"frame":1031,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,18,32,64,128,258],"offset":274,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":37,"rank":0,"right":null,"role":"target"},{"frame":100,"left":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[1,32,4,8,16,2,98,128,256],"offset":0,"phase":0,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"port":38,"rank":0,"right":null,"role":"source"},{"frame":822,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,34,66,128,256],"offset":98,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":38,"rank":0,"right":null,"role":"target"},{"frame":130,"left":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[1,32,4,8,16,2,64,162,256],"offset":0,"phase":0,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"port":39,"rank":0,"right":null,"role":"source"},{"frame":828,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,34,64,130,256],"offset":162,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":39,"rank":0,"right":null,"role":"target"},{"frame":128,"left":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[1,32,4,8,16,2,64,128,290],"offset":0,"phase":0,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"port":40,"rank":0,"right":null,"role":"source"},{"frame":917,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,34,64,128,258],"offset":290,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":40,"rank":0,"right":null,"role":"target"},{"frame":330,"left":{"linear_Z4":[0,1,0,0,0,0,1,0,0],"matrix_rows":[1,64,4,8,16,32,2,194,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"port":41,"rank":0,"right":null,"role":"source"},{"frame":1007,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,66,130,256],"offset":194,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":41,"rank":0,"right":null,"role":"target"},{"frame":331,"left":{"linear_Z4":[0,1,0,0,0,0,1,0,0],"matrix_rows":[1,64,4,8,16,32,2,128,322],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"port":42,"rank":0,"right":null,"role":"source"},{"frame":1001,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,66,128,258],"offset":322,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":42,"rank":0,"right":null,"role":"target"},{"frame":359,"left":{"linear_Z4":[0,1,0,0,0,0,0,1,0],"matrix_rows":[1,128,4,8,16,32,64,2,386],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,130,0]},"port":43,"rank":0,"right":null,"role":"source"},{"frame":1019,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,130,258],"offset":386,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":43,"rank":0,"right":null,"role":"target"},{"frame":361,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,28,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":44,"rank":0,"right":null,"role":"source"},{"frame":858,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,20,32,64,128,256],"offset":28,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":44,"rank":0,"right":null,"role":"target"},{"frame":156,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,16,44,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":45,"rank":0,"right":null,"role":"source"},{"frame":935,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,16,36,64,128,256],"offset":44,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":45,"rank":0,"right":null,"role":"target"},{"frame":390,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,16,32,64,140,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":46,"rank":0,"right":null,"role":"source"},{"frame":862,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,16,32,64,132,256],"offset":140,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":46,"rank":0,"right":null,"role":"target"},{"frame":386,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,16,32,64,128,268],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":47,"rank":0,"right":null,"role":"source"},{"frame":865,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,16,32,64,128,260],"offset":268,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":47,"rank":0,"right":null,"role":"target"},{"frame":153,"left":{"linear_Z4":[0,0,1,0,1,0,0,0,0],"matrix_rows":[1,2,16,8,4,32,84,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"port":48,"rank":0,"right":null,"role":"source"},{"frame":934,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,20,32,68,128,256],"offset":84,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":48,"rank":0,"right":null,"role":"target"},{"frame":181,"left":{"linear_Z4":[0,0,1,0,1,0,0,0,0],"matrix_rows":[1,2,16,8,4,32,64,148,256],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"port":49,"rank":0,"right":null,"role":"source"},{"frame":940,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,20,32,64,132,256],"offset":148,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":49,"rank":0,"right":null,"role":"target"},{"frame":183,"left":{"linear_Z4":[0,0,1,0,1,0,0,0,0],"matrix_rows":[1,2,16,8,4,32,64,128,276],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"port":50,"rank":0,"right":null,"role":"source"},{"frame":837,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,20,32,64,128,260],"offset":276,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":50,"rank":0,"right":null,"role":"target"},{"frame":358,"left":{"linear_Z4":[0,0,1,0,0,1,0,0,0],"matrix_rows":[1,2,32,8,16,4,100,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"port":51,"rank":0,"right":null,"role":"source"},{"frame":859,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,36,68,128,256],"offset":100,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":51,"rank":0,"right":null,"role":"target"},{"frame":328,"left":{"linear_Z4":[0,0,1,0,0,1,0,0,0],"matrix_rows":[1,2,32,8,16,4,64,164,256],"offset":0,"phase":0,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"port":52,"rank":0,"right":null,"role":"source"},{"frame":857,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,36,64,132,256],"offset":164,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":52,"rank":0,"right":null,"role":"target"},{"frame":329,"left":{"linear_Z4":[0,0,1,0,0,1,0,0,0],"matrix_rows":[1,2,32,8,16,4,64,128,292],"offset":0,"phase":0,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"port":53,"rank":0,"right":null,"role":"source"},{"frame":855,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,36,64,128,260],"offset":292,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":53,"rank":0,"right":null,"role":"target"},{"frame":124,"left":{"linear_Z4":[0,0,1,0,0,0,1,0,0],"matrix_rows":[1,2,64,8,16,32,4,196,256],"offset":0,"phase":0,"quadratic_rows":[0,0,68,0,0,0,68,0,0]},"port":54,"rank":0,"right":null,"role":"source"},{"frame":922,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,68,132,256],"offset":196,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":54,"rank":0,"right":null,"role":"target"},{"frame":126,"left":{"linear_Z4":[0,0,1,0,0,0,1,0,0],"matrix_rows":[1,2,64,8,16,32,4,128,324],"offset":0,"phase":0,"quadratic_rows":[0,0,68,0,0,0,68,0,0]},"port":55,"rank":0,"right":null,"role":"source"},{"frame":827,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,68,128,260],"offset":324,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":55,"rank":0,"right":null,"role":"target"},{"frame":96,"left":{"linear_Z4":[0,0,1,0,0,0,0,1,0],"matrix_rows":[1,2,128,8,16,32,64,4,388],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,132,0]},"port":56,"rank":0,"right":null,"role":"source"},{"frame":825,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,132,260],"offset":388,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":56,"rank":0,"right":null,"role":"target"},{"frame":12,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,56,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":57,"rank":0,"right":null,"role":"source"},{"frame":869,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,40,64,128,256],"offset":56,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":57,"rank":0,"right":null,"role":"target"},{"frame":215,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,32,88,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":58,"rank":0,"right":null,"role":"source"},{"frame":953,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,32,72,128,256],"offset":88,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":58,"rank":0,"right":null,"role":"target"},{"frame":243,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,32,64,152,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":59,"rank":0,"right":null,"role":"source"},{"frame":971,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,32,64,136,256],"offset":152,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":59,"rank":0,"right":null,"role":"target"},{"frame":245,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,32,64,128,280],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":60,"rank":0,"right":null,"role":"source"},{"frame":842,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,32,64,128,264],"offset":280,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":60,"rank":0,"right":null,"role":"target"},{"frame":69,"left":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[1,2,4,32,16,8,104,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"port":61,"rank":0,"right":null,"role":"source"},{"frame":899,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,40,72,128,256],"offset":104,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":61,"rank":0,"right":null,"role":"target"},{"frame":41,"left":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[1,2,4,32,16,8,64,168,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"port":62,"rank":0,"right":null,"role":"source"},{"frame":881,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,40,64,136,256],"offset":168,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":62,"rank":0,"right":null,"role":"target"},{"frame":40,"left":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[1,2,4,32,16,8,64,128,296],"offset":0,"phase":0,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"port":63,"rank":0,"right":null,"role":"source"},{"frame":887,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,40,64,128,264],"offset":296,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":63,"rank":0,"right":null,"role":"target"},{"frame":302,"left":{"linear_Z4":[0,0,0,1,0,0,1,0,0],"matrix_rows":[1,2,4,64,16,32,8,200,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,0,0,72,0,0]},"port":64,"rank":0,"right":null,"role":"source"},{"frame":989,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,72,136,256],"offset":200,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":64,"rank":0,"right":null,"role":"target"},{"frame":304,"left":{"linear_Z4":[0,0,0,1,0,0,1,0,0],"matrix_rows":[1,2,4,64,16,32,8,128,328],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,0,0,72,0,0]},"port":65,"rank":0,"right":null,"role":"source"},{"frame":852,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,72,128,264],"offset":328,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":65,"rank":0,"right":null,"role":"target"},{"frame":274,"left":{"linear_Z4":[0,0,0,1,0,0,0,1,0],"matrix_rows":[1,2,4,128,16,32,64,8,392],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,136,0]},"port":66,"rank":0,"right":null,"role":"source"},{"frame":846,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,136,264],"offset":392,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":66,"rank":0,"right":null,"role":"target"},{"frame":269,"left":{"linear_Z4":[0,0,0,0,1,1,0,0,0],"matrix_rows":[1,2,4,8,32,16,112,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"port":67,"rank":0,"right":null,"role":"source"},{"frame":982,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,48,80,128,256],"offset":112,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":67,"rank":0,"right":null,"role":"target"},{"frame":297,"left":{"linear_Z4":[0,0,0,0,1,1,0,0,0],"matrix_rows":[1,2,4,8,32,16,64,176,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"port":68,"rank":0,"right":null,"role":"source"},{"frame":988,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,48,64,144,256],"offset":176,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":68,"rank":0,"right":null,"role":"target"},{"frame":299,"left":{"linear_Z4":[0,0,0,0,1,1,0,0,0],"matrix_rows":[1,2,4,8,32,16,64,128,304],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"port":69,"rank":0,"right":null,"role":"source"},{"frame":853,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,48,64,128,272],"offset":304,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":69,"rank":0,"right":null,"role":"target"},{"frame":36,"left":{"linear_Z4":[0,0,0,0,1,0,1,0,0],"matrix_rows":[1,2,4,8,64,32,16,208,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,80,0,0]},"port":70,"rank":0,"right":null,"role":"source"},{"frame":880,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,80,144,256],"offset":208,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":70,"rank":0,"right":null,"role":"target"},{"frame":37,"left":{"linear_Z4":[0,0,0,0,1,0,1,0,0],"matrix_rows":[1,2,4,8,64,32,16,128,336],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,80,0,0]},"port":71,"rank":0,"right":null,"role":"source"},{"frame":886,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,80,128,272],"offset":336,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":71,"rank":0,"right":null,"role":"target"},{"frame":65,"left":{"linear_Z4":[0,0,0,0,1,0,0,1,0],"matrix_rows":[1,2,4,8,128,32,64,16,400],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,144,0]},"port":72,"rank":0,"right":null,"role":"source"},{"frame":892,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,144,272],"offset":400,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":72,"rank":0,"right":null,"role":"target"},{"frame":240,"left":{"linear_Z4":[0,0,0,0,0,1,1,0,0],"matrix_rows":[1,2,4,8,16,64,32,224,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,96,96,0,0]},"port":73,"rank":0,"right":null,"role":"source"},{"frame":970,"left":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,2,4,8,16,32,96,160,256],"offset":224,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":73,"rank":0,"right":null,"role":"target"},{"frame":242,"left":{"linear_Z4":[0,0,0,0,0,1,1,0,0],"matrix_rows":[1,2,4,8,16,64,32,128,352],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,96,96,0,0]},"port":74,"rank":0,"right":null,"role":"source"},{"frame":843,"left":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,2,4,8,16,32,96,128,288],"offset":352,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":74,"rank":0,"right":null,"role":"target"},{"frame":212,"left":{"linear_Z4":[0,0,0,0,0,1,0,1,0],"matrix_rows":[1,2,4,8,16,128,64,32,416],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,160,0,160,0]},"port":75,"rank":0,"right":null,"role":"source"},{"frame":841,"left":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,160,288],"offset":416,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":75,"rank":0,"right":null,"role":"target"},{"frame":8,"left":{"linear_Z4":[0,0,0,0,0,0,1,1,0],"matrix_rows":[1,2,4,8,16,32,128,64,448],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,192,192,0]},"port":76,"rank":0,"right":null,"role":"source"},{"frame":874,"left":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,2,4,8,16,32,64,192,320],"offset":448,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":76,"rank":0,"right":null,"role":"target"},{"frame":101,"left":{"linear_Z4":[0,0,1,1,1,1,1,1,0],"matrix_rows":[1,2,248,244,236,220,188,124,508],"offset":0,"phase":0,"quadratic_rows":[0,0,252,252,252,252,252,252,0]},"port":77,"rank":0,"right":null,"role":"source"},{"frame":824,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,20,36,68,132,260],"offset":508,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":77,"rank":0,"right":null,"role":"target"},{"frame":356,"left":{"linear_Z4":[0,1,0,1,1,1,1,1,0],"matrix_rows":[1,248,4,242,234,218,186,122,506],"offset":0,"phase":0,"quadratic_rows":[0,250,0,250,250,250,250,250,0]},"port":78,"rank":0,"right":null,"role":"source"},{"frame":1018,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,18,34,66,130,258],"offset":506,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":78,"rank":0,"right":null,"role":"target"},{"frame":71,"left":{"linear_Z4":[0,1,1,0,1,1,1,1,0],"matrix_rows":[1,244,242,8,230,214,182,118,502],"offset":0,"phase":0,"quadratic_rows":[0,246,246,0,246,246,246,246,0]},"port":79,"rank":0,"right":null,"role":"source"},{"frame":818,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,18,34,66,130,258],"offset":502,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":79,"rank":0,"right":null,"role":"target"},{"frame":268,"left":{"linear_Z4":[0,1,1,1,0,1,1,1,0],"matrix_rows":[1,236,234,230,16,206,174,110,494],"offset":0,"phase":0,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"port":80,"rank":0,"right":null,"role":"source"},{"frame":976,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,16,34,66,130,258],"offset":494,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":80,"rank":0,"right":null,"role":"target"},{"frame":14,"left":{"linear_Z4":[0,1,1,1,1,0,1,1,0],"matrix_rows":[1,220,218,214,206,32,158,94,478],"offset":0,"phase":0,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"port":81,"rank":0,"right":null,"role":"source"},{"frame":812,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,32,66,130,258],"offset":478,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":81,"rank":0,"right":null,"role":"target"},{"frame":211,"left":{"linear_Z4":[0,1,1,1,1,1,0,1,0],"matrix_rows":[1,188,186,182,174,158,64,62,446],"offset":0,"phase":0,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"port":82,"rank":0,"right":null,"role":"source"},{"frame":958,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,34,64,130,258],"offset":446,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":82,"rank":0,"right":null,"role":"target"},{"frame":239,"left":{"linear_Z4":[0,1,1,1,1,1,1,0,0],"matrix_rows":[1,124,122,118,110,94,62,128,382],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"port":83,"rank":0,"right":null,"role":"source"},{"frame":964,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,34,66,128,258],"offset":382,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":83,"rank":0,"right":null,"role":"target"},{"frame":241,"left":{"linear_Z4":[0,1,1,1,1,1,1,0,0],"matrix_rows":[1,124,122,118,110,94,62,254,256],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"port":84,"rank":0,"right":null,"role":"source"},{"frame":845,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,34,66,130,256],"offset":254,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":84,"rank":0,"right":null,"role":"target"},{"frame":155,"left":{"linear_Z4":[1,0,0,1,1,1,1,1,0],"matrix_rows":[248,2,4,241,233,217,185,121,505],"offset":0,"phase":0,"quadratic_rows":[249,0,0,249,249,249,249,249,0]},"port":85,"rank":0,"right":null,"role":"source"},{"frame":831,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,17,33,65,129,257],"offset":505,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":85,"rank":0,"right":null,"role":"target"},{"frame":217,"left":{"linear_Z4":[1,0,1,0,1,1,1,1,0],"matrix_rows":[244,2,241,8,229,213,181,117,501],"offset":0,"phase":0,"quadratic_rows":[245,0,245,0,245,245,245,245,0]},"port":86,"rank":0,"right":null,"role":"source"},{"frame":840,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,17,33,65,129,257],"offset":501,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":86,"rank":0,"right":null,"role":"target"},{"frame":9,"left":{"linear_Z4":[1,0,1,1,0,1,1,1,0],"matrix_rows":[236,2,233,229,16,205,173,109,493],"offset":0,"phase":0,"quadratic_rows":[237,0,237,237,0,237,237,237,0]},"port":87,"rank":0,"right":null,"role":"source"},{"frame":813,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,16,33,65,129,257],"offset":493,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":87,"rank":0,"right":null,"role":"target"},{"frame":271,"left":{"linear_Z4":[1,0,1,1,1,0,1,1,0],"matrix_rows":[220,2,217,213,205,32,157,93,477],"offset":0,"phase":0,"quadratic_rows":[221,0,221,221,221,0,221,221,0]},"port":88,"rank":0,"right":null,"role":"source"},{"frame":847,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,32,65,129,257],"offset":477,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":88,"rank":0,"right":null,"role":"target"},{"frame":68,"left":{"linear_Z4":[1,0,1,1,1,1,0,1,0],"matrix_rows":[188,2,185,181,173,157,64,61,445],"offset":0,"phase":0,"quadratic_rows":[189,0,189,189,189,189,0,189,0]},"port":89,"rank":0,"right":null,"role":"source"},{"frame":819,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,33,64,129,257],"offset":445,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":89,"rank":0,"right":null,"role":"target"},{"frame":38,"left":{"linear_Z4":[1,0,1,1,1,1,1,0,0],"matrix_rows":[124,2,121,117,109,93,61,128,381],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,125,125,125,0,0]},"port":90,"rank":0,"right":null,"role":"source"},{"frame":817,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,33,65,128,257],"offset":381,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":90,"rank":0,"right":null,"role":"target"},{"frame":39,"left":{"linear_Z4":[1,0,1,1,1,1,1,0,0],"matrix_rows":[124,2,121,117,109,93,61,253,256],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,125,125,125,0,0]},"port":91,"rank":0,"right":null,"role":"source"},{"frame":815,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,33,65,129,256],"offset":253,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":91,"rank":0,"right":null,"role":"target"},{"frame":11,"left":{"linear_Z4":[1,1,0,0,1,1,1,1,0],"matrix_rows":[242,241,4,8,227,211,179,115,499],"offset":0,"phase":0,"quadratic_rows":[243,243,0,0,243,243,243,243,0]},"port":92,"rank":0,"right":null,"role":"source"},{"frame":875,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,17,33,65,129,257],"offset":499,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":92,"rank":0,"right":null,"role":"target"},{"frame":214,"left":{"linear_Z4":[1,1,0,1,0,1,1,1,0],"matrix_rows":[234,233,4,227,16,203,171,107,491],"offset":0,"phase":0,"quadratic_rows":[235,235,0,235,0,235,235,235,0]},"port":93,"rank":0,"right":null,"role":"source"},{"frame":959,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,16,33,65,129,257],"offset":491,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":93,"rank":0,"right":null,"role":"target"},{"frame":70,"left":{"linear_Z4":[1,1,0,1,1,0,1,1,0],"matrix_rows":[218,217,4,211,203,32,155,91,475],"offset":0,"phase":0,"quadratic_rows":[219,219,0,219,219,0,219,219,0]},"port":94,"rank":0,"right":null,"role":"source"},{"frame":893,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,32,65,129,257],"offset":475,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":94,"rank":0,"right":null,"role":"target"},{"frame":273,"left":{"linear_Z4":[1,1,0,1,1,1,0,1,0],"matrix_rows":[186,185,4,179,171,155,64,59,443],"offset":0,"phase":0,"quadratic_rows":[187,187,0,187,187,187,0,187,0]},"port":95,"rank":0,"right":null,"role":"source"},{"frame":977,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,33,64,129,257],"offset":443,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":95,"rank":0,"right":null,"role":"target"},{"frame":301,"left":{"linear_Z4":[1,1,0,1,1,1,1,0,0],"matrix_rows":[122,121,4,115,107,91,59,128,379],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,123,123,123,0,0]},"port":96,"rank":0,"right":null,"role":"source"},{"frame":995,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,33,65,128,257],"offset":379,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":96,"rank":0,"right":null,"role":"target"},{"frame":303,"left":{"linear_Z4":[1,1,0,1,1,1,1,0,0],"matrix_rows":[122,121,4,115,107,91,59,251,256],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,123,123,123,0,0]},"port":97,"rank":0,"right":null,"role":"source"},{"frame":850,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,33,65,129,256],"offset":251,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":97,"rank":0,"right":null,"role":"target"},{"frame":152,"left":{"linear_Z4":[1,1,1,0,0,1,1,1,0],"matrix_rows":[230,229,227,8,16,199,167,103,487],"offset":0,"phase":0,"quadratic_rows":[231,231,231,0,0,231,231,231,0]},"port":98,"rank":0,"right":null,"role":"source"},{"frame":928,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,16,33,65,129,257],"offset":487,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":98,"rank":0,"right":null,"role":"target"},{"frame":357,"left":{"linear_Z4":[1,1,1,0,1,0,1,1,0],"matrix_rows":[214,213,211,8,199,32,151,87,471],"offset":0,"phase":0,"quadratic_rows":[215,215,215,0,215,0,215,215,0]},"port":99,"rank":0,"right":null,"role":"source"},{"frame":861,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,32,65,129,257],"offset":471,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":99,"rank":0,"right":null,"role":"target"},{"frame":95,"left":{"linear_Z4":[1,1,1,0,1,1,0,1,0],"matrix_rows":[182,181,179,8,167,151,64,55,439],"offset":0,"phase":0,"quadratic_rows":[183,183,183,0,183,183,0,183,0]},"port":100,"rank":0,"right":null,"role":"source"},{"frame":910,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,33,64,129,257],"offset":439,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":100,"rank":0,"right":null,"role":"target"},{"frame":123,"left":{"linear_Z4":[1,1,1,0,1,1,1,0,0],"matrix_rows":[118,117,115,8,103,87,55,128,375],"offset":0,"phase":0,"quadratic_rows":[119,119,119,0,119,119,119,0,0]},"port":101,"rank":0,"right":null,"role":"source"},{"frame":916,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,33,65,128,257],"offset":375,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":101,"rank":0,"right":null,"role":"target"},{"frame":125,"left":{"linear_Z4":[1,1,1,0,1,1,1,0,0],"matrix_rows":[118,117,115,8,103,87,55,247,256],"offset":0,"phase":0,"quadratic_rows":[119,119,119,0,119,119,119,0,0]},"port":102,"rank":0,"right":null,"role":"source"},{"frame":829,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,33,65,129,256],"offset":247,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":102,"rank":0,"right":null,"role":"target"},{"frame":98,"left":{"linear_Z4":[1,1,1,1,0,0,1,1,0],"matrix_rows":[206,205,203,199,16,32,143,79,463],"offset":0,"phase":0,"quadratic_rows":[207,207,207,207,0,0,207,207,0]},"port":103,"rank":0,"right":null,"role":"source"},{"frame":911,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,32,65,129,257],"offset":463,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":103,"rank":0,"right":null,"role":"target"},{"frame":362,"left":{"linear_Z4":[1,1,1,1,0,1,0,1,0],"matrix_rows":[174,173,171,167,16,143,64,47,431],"offset":0,"phase":0,"quadratic_rows":[175,175,175,175,0,175,0,175,0]},"port":104,"rank":0,"right":null,"role":"source"},{"frame":860,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,33,64,129,257],"offset":431,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":104,"rank":0,"right":null,"role":"target"},{"frame":332,"left":{"linear_Z4":[1,1,1,1,0,1,1,0,0],"matrix_rows":[110,109,107,103,16,79,47,128,367],"offset":0,"phase":0,"quadratic_rows":[111,111,111,111,0,111,111,0,0]},"port":105,"rank":0,"right":null,"role":"source"},{"frame":854,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,33,65,128,257],"offset":367,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":105,"rank":0,"right":null,"role":"target"},{"frame":333,"left":{"linear_Z4":[1,1,1,1,0,1,1,0,0],"matrix_rows":[110,109,107,103,16,79,47,239,256],"offset":0,"phase":0,"quadratic_rows":[111,111,111,111,0,111,111,0,0]},"port":106,"rank":0,"right":null,"role":"source"},{"frame":856,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,33,65,129,256],"offset":239,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":106,"rank":0,"right":null,"role":"target"},{"frame":157,"left":{"linear_Z4":[1,1,1,1,1,0,0,1,0],"matrix_rows":[158,157,155,151,143,32,64,31,415],"offset":0,"phase":0,"quadratic_rows":[159,159,159,159,159,0,0,159,0]},"port":107,"rank":0,"right":null,"role":"source"},{"frame":929,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,32,64,129,257],"offset":415,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":107,"rank":0,"right":null,"role":"target"},{"frame":185,"left":{"linear_Z4":[1,1,1,1,1,0,1,0,0],"matrix_rows":[94,93,91,87,79,32,31,128,351],"offset":0,"phase":0,"quadratic_rows":[95,95,95,95,95,0,95,0,0]},"port":108,"rank":0,"right":null,"role":"source"},{"frame":947,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,32,65,128,257],"offset":351,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":108,"rank":0,"right":null,"role":"target"},{"frame":187,"left":{"linear_Z4":[1,1,1,1,1,0,1,0,0],"matrix_rows":[94,93,91,87,79,32,31,223,256],"offset":0,"phase":0,"quadratic_rows":[95,95,95,95,95,0,95,0,0]},"port":109,"rank":0,"right":null,"role":"source"},{"frame":834,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,32,65,129,256],"offset":223,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":109,"rank":0,"right":null,"role":"target"},{"frame":391,"left":{"linear_Z4":[1,1,1,1,1,1,0,0,0],"matrix_rows":[62,61,59,55,47,31,64,128,319],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"port":110,"rank":0,"right":null,"role":"source"},{"frame":864,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,33,64,128,257],"offset":319,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":110,"rank":0,"right":null,"role":"target"},{"frame":387,"left":{"linear_Z4":[1,1,1,1,1,1,0,0,0],"matrix_rows":[62,61,59,55,47,31,64,191,256],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"port":111,"rank":0,"right":null,"role":"source"},{"frame":863,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,33,64,129,256],"offset":191,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":111,"rank":0,"right":null,"role":"target"}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-REVIEW.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-REVIEW.json new file mode 100644 index 0000000000..6b12ae0e4b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/CLIFFORD-REVIEW.json @@ -0,0 +1,19 @@ +{ + "status": "PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES", + "canonical_word_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "frames": 1037, + "directed_edges": 3019, + "ranks": { + "1": 2029, + "2": 394, + "3": 412, + "8": 16, + "4": 154, + "5": 14 + }, + "endpoint_adapters": 224, + "all_child_equalities_include_global_phase": true, + "recipe_sha256": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "seconds": 198.28347681800005, + "scope": "Every local frame and center transition. Expanded scalar-interface integration and global emitted program are separate obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/FULL-WORD.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/FULL-WORD.json.gz new file mode 100644 index 0000000000..447d45d08b Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/FULL-WORD.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/INDEPENDENT-LOCAL-REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/INDEPENDENT-LOCAL-REPLAY.json new file mode 100644 index 0000000000..aa15edfba5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/INDEPENDENT-LOCAL-REPLAY.json @@ -0,0 +1,71 @@ +{ + "status": "PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY", + "canonical_word_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "local_programs_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "v": 112, + "helpers": 492, + "local": { + "forward": { + "all_exact_columns": 716, + "prefix_l1_upper": "2323449462751823289130723296176889733365478515961323543/64", + "prefix_bits_upper": 175, + "charged_payload_bits": 192, + "private_work_erased": true + }, + "backward": { + "all_exact_columns": 716, + "prefix_l1_upper": "600338326363508935771850050281004728884643/32", + "prefix_bits_upper": 134, + "charged_payload_bits": 192, + "private_work_erased": true + } + }, + "paid_profiles": { + "forward": { + "1": 2514, + "4": 160, + "8": 8, + "3": 448, + "2": 404, + "5": 56 + }, + "backward": { + "1": 2514, + "4": 160, + "8": 8, + "3": 448, + "2": 404, + "5": 56 + } + }, + "entering_helpers": 204, + "cold_hyperplane_ended_helpers": 44, + "negative_controls_rejected": [ + "wrong_scale", + "missing_center", + "wrong_common_frame", + "wrong_child_rank", + "missing_pre_wrapper", + "missing_post_wrapper", + "wrapper_with_wrong_frame", + "wrapper_in_wrong_phase", + "wrapper_on_a_data_register", + "wrapper_on_a_target_register", + "wrapper_on_a_centre_register", + "hpe_pre_wrapper_resolved_to_full_recipe", + "hpe_post_wrapper_without_terminal_frame", + "hpe_post_wrapper_wrong_terminal_frame", + "hpe_tail_gate_at_full_frame", + "hpe_tail_climb_dropped", + "hpe_helper_exit_adapter_to_full", + "hpe_tail_gate_moved_into_full_cleanup", + "cold_hpe_pre_wrapper_replaced_by_identity_entry_adapter", + "cold_hpe_pre_wrapper_dropped", + "cold_hpe_post_wrapper_replaced_by_exit_adapter", + "cold_hpe_pre_wrapper_resolved_to_cold_full_convention", + "cold_hpe_wrapper_with_nonzero_entrance", + "cold_hpe_post_wrapper_wrong_terminal_frame", + "cold_hpe_premix_gate_before_pre_wrapper" + ], + "scope": "Literal forward and inverse-transpose replay on every arbitrary data/helper column, physical frame incidence, ordered paid wrappers, cleared private work and prefix coefficients. Global hosting and outer exponent are separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-CHECKS.json new file mode 100644 index 0000000000..3872f0e596 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-CHECKS.json @@ -0,0 +1,36 @@ +{ + "forward": { + "sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "scalar_macros": 41570, + "real_component_primitive_bound": 420052, + "paid_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "all_columns": 716, + "private_centers_cleared": true, + "private_coefficient_stream_cleared_after_each_macro": true + }, + "backward": { + "sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "scalar_macros": 41570, + "real_component_primitive_bound": 420100, + "paid_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "all_columns": 716, + "private_centers_cleared": true, + "private_coefficient_stream_cleared_after_each_macro": true + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-PROGRAMS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-PROGRAMS.json.gz new file mode 100644 index 0000000000..d511f2afa4 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/LOCAL-PROGRAMS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/RESIDUAL-ADAPTERS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/RESIDUAL-ADAPTERS.json new file mode 100644 index 0000000000..9c66f92ffb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/RESIDUAL-ADAPTERS.json @@ -0,0 +1 @@ +{"recipes":{"0:122":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[18,33,68,136,10,9,11,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,1,3,1,1,1,2,3,2],"matrix_rows":[50,49,388,8,97,82,260,120,384],"offset":4,"phase":1,"quadratic_rows":[81,98,132,120,57,58,11,132,0]},"terminal":122,"terminal_rank":4,"terminal_vectors":[388,75,41,26],"vectors":[]},"0:151":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[30,35,69,128,270,3,5,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,2,2,0,1,2,2,3,0],"matrix_rows":[390,19,21,145,481,34,68,8,496],"offset":8,"phase":1,"quadratic_rows":[375,437,467,0,375,19,21,390,151]},"terminal":151,"terminal_rank":4,"terminal_vectors":[273,145,85,51],"vectors":[]},"0:180":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,36,66,136,14,12,10,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[3,1,1,1,2,1,1,3,2],"matrix_rows":[385,100,98,8,257,82,52,120,384],"offset":1,"phase":1,"quadratic_rows":[129,50,84,120,14,106,108,129,0]},"terminal":180,"terminal_rank":4,"terminal_vectors":[385,74,44,30],"vectors":[]},"0:209":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[19,45,70,141,6,256,3,10,2],"offset":0,"phase":0,"quadratic_rows":[1,10,4,2,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,1,2,1,2,0,2,3,0],"matrix_rows":[11,389,14,138,65,466,20,472,32],"offset":8,"phase":1,"quadratic_rows":[462,351,411,351,14,0,11,389,143]},"terminal":209,"terminal_rank":4,"terminal_vectors":[266,138,75,30],"vectors":[]},"0:238":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[22,33,71,5,3,136,2,264,8],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,3,1,2,2,3,2,3,2],"matrix_rows":[6,5,93,416,25,82,76,288,384],"offset":15,"phase":0,"quadratic_rows":[64,86,22,0,6,160,3,160,0]},"terminal":238,"terminal_rank":4,"terminal_vectors":[416,70,19,13],"vectors":[]},"0:267":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[16,46,78,131,3,261,5,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[0,1,1,2,2,2,2,3,0],"matrix_rows":[424,14,38,134,1,466,468,24,96],"offset":8,"phase":1,"quadratic_rows":[0,382,382,438,14,462,38,424,174]},"terminal":267,"terminal_rank":4,"terminal_vectors":[262,134,102,30],"vectors":[]},"0:296":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[18,41,75,132,10,1,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[3,2,1,3,2,2,2,3,2],"matrix_rows":[6,5,392,118,97,82,52,264,384],"offset":15,"phase":0,"quadratic_rows":[101,32,69,136,0,3,5,136,0]},"terminal":296,"terminal_rank":4,"terminal_vectors":[392,67,37,22],"vectors":[]},"0:325":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[30,46,64,131,261,5,3,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,1,0,2,2,2,2,3,0],"matrix_rows":[408,11,19,131,481,482,4,72,48],"offset":8,"phase":1,"quadratic_rows":[379,379,0,467,427,19,11,408,155]},"terminal":325,"terminal_rank":4,"terminal_vectors":[259,131,75,51],"vectors":[]},"0:35":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[22,37,67,7,1,2,136,264,8],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,2,2,2,2,2,3,3,2],"matrix_rows":[6,5,59,448,25,42,52,320,384],"offset":15,"phase":0,"quadratic_rows":[38,21,51,0,6,5,192,192,0]},"terminal":35,"terminal_rank":4,"terminal_vectors":[448,38,21,11],"vectors":[]},"0:354":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[30,35,69,142,256,5,3,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,2,2,1,0,2,2,3,0],"matrix_rows":[390,11,13,137,481,66,36,488,16],"offset":8,"phase":1,"quadratic_rows":[367,461,427,367,0,13,11,390,143]},"terminal":354,"terminal_rank":4,"terminal_vectors":[265,137,75,45],"vectors":[]},"0:383":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[20,34,65,136,12,13,9,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,3,1,1,1,2,1,3,2],"matrix_rows":[84,386,81,8,97,258,52,120,384],"offset":2,"phase":1,"quadratic_rows":[49,130,100,120,89,13,92,130,0]},"terminal":383,"terminal_rank":4,"terminal_vectors":[386,73,45,28],"vectors":[]},"0:412":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[21,38,75,139,6,5,256,12,4],"offset":0,"phase":0,"quadratic_rows":[1,2,12,4,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,2,1,1,2,2,0,3,0],"matrix_rows":[13,14,387,140,33,18,436,440,64],"offset":8,"phase":1,"quadratic_rows":[430,413,319,319,14,13,0,387,143]},"terminal":412,"terminal_rank":4,"terminal_vectors":[268,140,45,30],"vectors":[]},"0:64":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[30,32,78,131,261,3,5,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,0,1,2,2,2,2,3,0],"matrix_rows":[408,13,21,133,481,2,484,40,80],"offset":8,"phase":1,"quadratic_rows":[381,0,381,437,461,13,21,408,157]},"terminal":64,"terminal_rank":4,"terminal_vectors":[261,133,85,45],"vectors":[]},"0:93":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[18,37,71,6,136,3,1,264,8],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[3,2,1,2,3,2,2,3,2],"matrix_rows":[6,5,110,400,97,42,76,272,384],"offset":15,"phase":0,"quadratic_rows":[101,64,37,0,144,5,3,144,0]},"terminal":93,"terminal_rank":4,"terminal_vectors":[400,69,35,14],"vectors":[]},"2":{"entrance_rank":1,"frame":2,"left":{"linear_Z4":[3,3,2,3,2,2,3,3,0],"matrix_rows":[257,2,4,8,16,32,64,128,203],"offset":0,"phase":0,"quadratic_rows":[203,203,0,203,0,0,203,203,0]},"rank":8,"right":{"linear_Z4":[0,0,2,0,2,2,0,0,0],"matrix_rows":[1,258,4,264,16,32,320,384,256],"offset":309,"phase":3,"quadratic_rows":[256,256,0,256,0,0,256,256,203]},"vectors":[459]},"3":{"entrance_rank":1,"frame":3,"left":{"linear_Z4":[3,3,2,3,2,2,2,2,0],"matrix_rows":[257,2,4,8,16,32,11,64,128],"offset":0,"phase":0,"quadratic_rows":[11,11,0,11,0,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,0,2,0,2,2,0,2,2],"matrix_rows":[1,66,4,72,16,32,128,256,64],"offset":244,"phase":1,"quadratic_rows":[64,64,0,64,0,0,11,0,0]},"vectors":[75]},"4":{"entrance_rank":1,"frame":4,"left":{"linear_Z4":[2,3,3,2,2,3,2,2,0],"matrix_rows":[1,258,4,8,16,32,38,64,128],"offset":0,"phase":0,"quadratic_rows":[0,38,38,0,0,38,0,0,0]},"rank":8,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[1,2,68,8,16,96,128,256,64],"offset":217,"phase":1,"quadratic_rows":[0,64,64,0,0,64,38,0,0]},"vectors":[102]},"421":{"entrance_rank":1,"frame":421,"left":{"linear_Z4":[3,2,3,3,2,2,2,2,0],"matrix_rows":[257,2,4,8,16,13,32,64,128],"offset":0,"phase":0,"quadratic_rows":[13,0,13,13,0,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,2,0,0,2,0,2,2,2],"matrix_rows":[1,2,36,40,16,64,128,256,32],"offset":242,"phase":1,"quadratic_rows":[32,0,32,32,0,13,0,0,0]},"vectors":[45]},"421:1034":{"entrance_rank":1,"frame":421,"left":{"linear_Z4":[3,2,3,2,2,2,2,0,0],"matrix_rows":[128,2,261,1,8,4,16,32,64],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"rank":7,"right":{"linear_Z4":[2,2,0,3,2,3,2,2,2],"matrix_rows":[44,2,4,16,64,128,256,13,32],"offset":511,"phase":1,"quadratic_rows":[12,0,1,41,0,40,0,0,0]},"terminal":1034,"terminal_rank":8,"terminal_vectors":[256,128,64,33,16,9,5,2],"vectors":[45]},"422":{"entrance_rank":1,"frame":422,"left":{"linear_Z4":[3,3,2,2,3,2,2,2,0],"matrix_rows":[257,2,4,8,16,19,32,64,128],"offset":0,"phase":0,"quadratic_rows":[19,19,0,0,19,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,0,2,2,0,0,2,2,2],"matrix_rows":[1,34,4,8,48,64,128,256,32],"offset":236,"phase":1,"quadratic_rows":[32,32,0,0,32,19,0,0,0]},"vectors":[51]},"422:1035":{"entrance_rank":1,"frame":422,"left":{"linear_Z4":[3,3,2,2,2,2,2,0,0],"matrix_rows":[128,259,4,8,1,2,16,32,64],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"rank":7,"right":{"linear_Z4":[2,0,2,2,3,3,2,2,2],"matrix_rows":[50,2,4,8,64,128,256,19,32],"offset":511,"phase":1,"quadratic_rows":[18,1,0,0,49,48,0,0,0]},"terminal":1035,"terminal_rank":8,"terminal_vectors":[256,128,64,33,17,8,4,3],"vectors":[51]},"423":{"entrance_rank":1,"frame":423,"left":{"linear_Z4":[2,3,3,3,2,2,2,2,0],"matrix_rows":[1,258,4,8,14,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,14,14,14,0,0,0,0,0]},"rank":8,"right":{"linear_Z4":[2,0,0,0,0,2,2,2,2],"matrix_rows":[1,2,20,24,32,64,128,256,16],"offset":241,"phase":1,"quadratic_rows":[0,16,16,16,14,0,0,0,0]},"vectors":[30]},"423:1036":{"entrance_rank":1,"frame":423,"left":{"linear_Z4":[2,3,3,2,2,2,2,0,0],"matrix_rows":[1,128,262,2,4,8,16,32,64],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"rank":7,"right":{"linear_Z4":[2,2,0,3,3,2,2,2,2],"matrix_rows":[1,28,4,32,64,128,256,14,16],"offset":511,"phase":1,"quadratic_rows":[0,12,2,26,24,0,0,0,0]},"terminal":1036,"terminal_rank":8,"terminal_vectors":[256,128,64,32,18,10,6,1],"vectors":[30]},"424":{"entrance_rank":4,"frame":424,"left":{"linear_Z4":[2,3,2,2,3,0,0,0,0],"matrix_rows":[33,65,2,132,264,8,4,16,31],"offset":0,"phase":0,"quadratic_rows":[30,31,27,23,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,260,264,272,384,352,354,64,32],"offset":429,"phase":0,"quadratic_rows":[96,0,256,320,288,17,9,256,156]},"vectors":[413,72,48,3]},"425":{"entrance_rank":4,"frame":425,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,257,8,4,2,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,260,272,384,352,64,32,360],"offset":231,"phase":0,"quadratic_rows":[96,320,288,0,256,5,3,256,150]},"vectors":[407,66,36,9]},"426":{"entrance_rank":4,"frame":426,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,260,2,1,8,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,260,320,384,32,16,304,312],"offset":231,"phase":0,"quadratic_rows":[288,272,48,0,6,5,256,256,195]},"vectors":[455,33,18,12]},"427":{"entrance_rank":4,"frame":427,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,136,16,13,21,258,2],"offset":0,"phase":0,"quadratic_rows":[24,0,24,13,21,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[33,258,100,72,80,64,256,96,384],"offset":66,"phase":0,"quadratic_rows":[96,0,96,32,64,13,21,0,0]},"vectors":[258,130,85,45]},"428":{"entrance_rank":4,"frame":428,"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,4,136,16,19,21,264,8],"offset":0,"phase":0,"quadratic_rows":[6,19,21,0,6,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[33,66,68,264,112,64,96,256,384],"offset":136,"phase":0,"quadratic_rows":[96,32,64,0,96,19,21,0,0]},"vectors":[264,136,85,51]},"429":{"entrance_rank":4,"frame":429,"left":{"linear_Z4":[3,2,2,2,3,0,0,0,0],"matrix_rows":[33,66,2,132,4,264,8,16,31],"offset":0,"phase":0,"quadratic_rows":[31,29,27,23,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[85,258,264,288,384,340,4,16,64],"offset":462,"phase":0,"quadratic_rows":[256,260,258,272,264,320,288,256,255]},"vectors":[427,96,24,6]},"430":{"entrance_rank":4,"frame":430,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,258,4,8,1,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,260,288,384,64,336,16,344],"offset":231,"phase":0,"quadratic_rows":[320,80,272,0,6,256,3,256,165]},"vectors":[423,65,20,10]},"431":{"entrance_rank":4,"frame":431,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,136,14,16,22,257,1],"offset":0,"phase":0,"quadratic_rows":[0,24,24,14,22,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,18,84,72,96,256,64,80,384],"offset":33,"phase":0,"quadratic_rows":[0,80,80,16,14,64,38,0,0]},"vectors":[257,129,102,30]},"432":{"entrance_rank":4,"frame":432,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,1,2,4,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[257,258,260,120,384,16,32,64,368],"offset":231,"phase":0,"quadratic_rows":[272,288,320,256,257,258,260,256,255]},"vectors":[399,68,34,17]},"433":{"entrance_rank":4,"frame":433,"left":{"linear_Z4":[2,3,2,2,3,0,0,0,0],"matrix_rows":[33,66,1,132,264,4,8,16,31],"offset":0,"phase":0,"quadratic_rows":[30,31,27,23,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[257,102,264,272,384,4,356,32,64],"offset":429,"phase":0,"quadratic_rows":[260,256,257,288,320,264,272,256,255]},"vectors":[411,80,40,5]},"434":{"entrance_rank":4,"frame":434,"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,4,8,144,13,11,272,16],"offset":0,"phase":0,"quadratic_rows":[6,11,13,6,0,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[65,34,36,104,272,32,96,256,384],"offset":144,"phase":0,"quadratic_rows":[96,64,32,96,0,13,11,0,0]},"vectors":[272,144,75,45]},"435":{"entrance_rank":4,"frame":435,"left":{"linear_Z4":[3,3,2,2,2,0,0,0,0],"matrix_rows":[33,66,4,8,14,13,144,272,16],"offset":0,"phase":0,"quadratic_rows":[13,14,3,3,0,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[1,2,52,56,320,32,16,256,384],"offset":144,"phase":0,"quadratic_rows":[32,16,48,48,14,13,0,0,0]},"vectors":[320,192,45,30]},"436":{"entrance_rank":5,"frame":436,"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[17,34,67,4,5,136,7,264,8],"offset":0,"phase":0,"quadratic_rows":[1,4,2,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[0,2,0,0,3,0,3,0,2],"matrix_rows":[1,82,88,288,16,80,68,256,384],"offset":249,"phase":2,"quadratic_rows":[16,0,0,80,89,0,88,0,0]},"vectors":[288,160,75,25,7]},"437":{"entrance_rank":5,"frame":437,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,136,9,10,11,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[0,0,0,2,1,1,0,0,2],"matrix_rows":[49,50,260,8,96,80,256,112,384],"offset":127,"phase":1,"quadratic_rows":[80,96,0,112,57,58,11,0,0]},"vectors":[260,132,75,42,25]},"5":{"entrance_rank":1,"frame":5,"left":{"linear_Z4":[2,2,2,3,3,3,2,2,0],"matrix_rows":[1,2,4,264,16,32,56,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,56,56,56,0,0,0]},"rank":8,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[1,2,4,8,80,96,128,256,64],"offset":199,"phase":1,"quadratic_rows":[0,0,0,64,64,64,56,0,0]},"vectors":[120]},"6":{"entrance_rank":1,"frame":6,"left":{"linear_Z4":[3,2,3,2,3,2,2,2,0],"matrix_rows":[257,2,4,8,16,32,21,64,128],"offset":0,"phase":0,"quadratic_rows":[21,0,21,0,21,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,2,0,2,0,2,0,2,2],"matrix_rows":[1,2,68,8,80,32,128,256,64],"offset":234,"phase":1,"quadratic_rows":[64,0,64,0,64,0,21,0,0]},"vectors":[85]}},"status":"RESIDUAL_ADAPTER_RECIPES"} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/SCALAR-FRAME-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/SCALAR-FRAME-AUDIT.json new file mode 100644 index 0000000000..23bf3d263e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/SCALAR-FRAME-AUDIT.json @@ -0,0 +1,654 @@ +{ + "status": "PASS_CHANGED_WORD_ALL_COLUMNS_AND_NATIVE_FRAMES", + "input_content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "routing_content_sha256": "7c84ac65c8b37173aa4293934f041915895e8ec30595844cc1534e2a19ae0d25", + "canonical_content_sha256": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "live_columns_each_orientation": 716, + "helpers": 492, + "compensation_additions": 7348, + "scalar_operations": 41546, + "center_rank_sum": 64, + "local_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "local_rank_mass": 5650, + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "frames": 1037, + "directed_edges": 3019, + "tau": 43, + "target_port_order_matches_baseline": true, + "seconds": 4.39260065399958, + "scope": "Fresh exact forward and inverse-transpose scalar replay on every arbitrary input; all native frame chains and dyadic primitives. Phase lowering, wrappers, global owners and global assembly are separate.", + "hyperplane_ended_helpers": [ + 225, + 227, + 241, + 243, + 257, + 259, + 273, + 275, + 277, + 282, + 289, + 291, + 293, + 298, + 305, + 307, + 309, + 314, + 321, + 323, + 325, + 330, + 337, + 339, + 341, + 346, + 353, + 355, + 357, + 362, + 369, + 371, + 373, + 378, + 385, + 387, + 389, + 394, + 401, + 403, + 417, + 419, + 433, + 435, + 448, + 449, + 450, + 451, + 452, + 453, + 454, + 455, + 456, + 457, + 458, + 467, + 468, + 477, + 490, + 491, + 514, + 515, + 538, + 539, + 562, + 563, + 574, + 583, + 584, + 593, + 594, + 595, + 596, + 598, + 600, + 601, + 602, + 603 + ], + "early_cleanup_gates": 94, + "cold_hyperplane_ended_helpers": [ + 225, + 227, + 241, + 243, + 257, + 259, + 273, + 275, + 277, + 282, + 289, + 291, + 293, + 298, + 305, + 307, + 309, + 314, + 321, + 323, + 325, + 330, + 337, + 339, + 341, + 346, + 353, + 355, + 357, + 362, + 369, + 371, + 373, + 378, + 385, + 387, + 389, + 394, + 401, + 403, + 417, + 419, + 433, + 435 + ], + "refactored_cleanup_gates": 28150, + "refactored_cleanup": { + "exact_non_target_isolation_checked": true, + "high_inverse": "dyadic_sparse_Gauss_Jordan", + "kind": "source_branch_gauge_and_retired_completion_cold44", + "new_cold_ends": 44 + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/WRAPPER-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/WRAPPER-CHECKS.json new file mode 100644 index 0000000000..a18afd4fad --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/evidence/local/WRAPPER-CHECKS.json @@ -0,0 +1,413 @@ +{ + "status": "PASS_RESIDUAL_WRAPPERS_ARE_EXACT", + "frames": 22, + "hyperplane_end_pairs": [ + { + "frame": 0, + "terminal": 35, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 64, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 93, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 122, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 151, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 180, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 209, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 238, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 267, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 296, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 325, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 354, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 383, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 412, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 421, + "terminal": 1034, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + }, + { + "frame": 422, + "terminal": 1035, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + }, + { + "frame": 423, + "terminal": 1036, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + } + ], + "cold_hyperplane_end_pairs": 14, + "wrappers_reject": [ + "wrong global phase", + "wrong translation", + "wrong quadratic form", + "sides swapped", + "wrong width", + "hpe: U-wrapper decoded against a FULL ending", + "hpe: width misreported as 9 - dim E", + "hpe: wrong terminal hyperplane", + "hpe: pre wrapper resolved to the FULL recipe R_{E,FULL}", + "hpe: wrong global phase", + "cold hpe: identity pre wrapper instead of R_{0,U}", + "cold hpe: identity post wrapper instead of L_{0,U}", + "cold hpe: no wrappers (cold FULL convention L = R = I)", + "cold hpe: U-wrapper decoded against a FULL ending", + "cold hpe: width misreported as 9", + "cold hpe: wrong terminal hyperplane", + "cold hpe: wrong global phase" + ], + "all_even_weight": false, + "all_totally_isotropic": false, + "detail": [ + { + "frame": 2, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 459 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 3, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 75 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 4, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 102 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 5, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 120 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 6, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 85 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 421, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 45 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 422, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 51 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 423, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 30 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 424, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 413, + 72, + 48, + 3 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 425, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 407, + 66, + 36, + 9 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 426, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 455, + 33, + 18, + 12 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 427, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 258, + 130, + 85, + 45 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 428, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 264, + 136, + 85, + 51 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 429, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 427, + 96, + 24, + 6 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 430, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 423, + 65, + 20, + 10 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 431, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 257, + 129, + 102, + 30 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 432, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 399, + 68, + 34, + 17 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 433, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 411, + 80, + 40, + 5 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 434, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 272, + 144, + 75, + 45 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 435, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 320, + 192, + 45, + 30 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 436, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 288, + 160, + 75, + 25, + 7 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 437, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 260, + 132, + 75, + 42, + 25 + ], + "all_even_weight": false, + "totally_isotropic": false + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/PROOF.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/PROOF.md new file mode 100644 index 0000000000..b551b6d3e5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/PROOF.md @@ -0,0 +1,237 @@ +# Exact owner reuse and concave-cost matching + +## 1. Objects and interface assumptions + +The parent controller has 72 ordered calls, 112 source ports, 112 target ports, +and 492 helper roles per call. The ambient dimension is 73. A pending-child +group is a triple + +$$ +g=(\text{owner replica},\text{child},\text{port}). +$$ + +The parent window catalogue gives group capacity $C_g$, together with the call +times at which its physical stream is idle. The map from a group to its +physical family is + +$$ +F(g)=896\,\text{owner replica} + +112(2\,\text{pair(child)}+\text{side(child)})+\text{port}. +$$ + +At every call in this particular parent geometry, at most one pending child of +a physical family is eligible. Both the matcher and the independent frozen +audit check this condition. They also exclude both active data families of the +call. Consequently, injective assignment to eligible groups is equivalent to +assignment to distinct idle physical families at that call. + +Helper $h$ requests an integer width $w_h$, read afresh from the new local +word as the final-frame dimension minus the start-frame dimension. Native +program profiles are also recomputed from their paid edges. The finite local +compiler supplies the normalized helper chart and verifies its warm-start +semantics. A hosted width is a reservation in the pending child's address +coordinates on an existing physical stream; it is not a new physical stream. + +This proof concerns the discrete assignment and its moment contribution. It +uses the parent windows as input. Independent global admission must verify +those windows against the actual controller and construct the actual +73-column charts for the fresh native local word. + +## 2. Feasible shrinking on the original families + +For one call, sort the old slot widths and the new helper widths increasingly, +breaking ties by the old or new helper number. Suppose the new width in each +position is no larger than its matched old width. Assign that helper to the +matched old slot. + +This operation preserves the call time, stage, replica, pending child, port, +owner replica, and physical family. It preserves the set of 492 distinct +helper-owner families at the call, so the old window and active-data +exclusions still hold. In each pending-child group, the sum of new widths is +no larger than the old sum, hence remains within capacity. + +Now order the assignments in each group consistently and replace their +offsets by consecutive prefix sums. The occupied sets become pairwise +disjoint intervals whose union is exactly a prefix of length +$U_g=\sum w_h\le C_g$. The idle child retains rank $C_g-U_g$, with pending +offset $U_g$. Thus the shrinking operation has a direct capacity proof; it +requires neither an owner solver nor any change to the controller. + +The seed constructor applies this termwise argument to the 71 former `jp8` +calls. It keeps the remaining `ck` call provisionally unchanged. Two optional +fixed-family assignment passes redistribute the available capacity before +freezing the seed. Their result is audited using the same integer constraints. + +## 3. One call with all other calls fixed + +Fix one call $t$. Remove its existing assignments while keeping every other +call fixed. For each eligible group, define the available capacity + +$$ +c_g=C_g-\sum_{\substack{\text{assignments in }g\\\text{from calls other than }t}}w. +$$ + +The call must assign each of its 492 widths to a distinct eligible group with +$w\le c_g$. Unused groups can be viewed as receiving a dummy width zero. +After the assignment, group $g$'s idle rank is $c_g-w_g$. For any function +$\phi$, the portion of the idle objective affected by the call is exactly + +$$ +\sum_{g\text{ eligible at }t}\phi(c_g-w_g). +$$ + +All other idle contributions, and all local paid-edge contributions, are +constant in this single-call problem. + +### Greedy rule + +Sort eligible capacities increasingly. At each capacity, assign the largest +remaining helper width that fits; assign zero if none fits. Continue through +the remaining capacities. + +This rule has no floating parameter. Equal-capacity tie choices are used only +to limit changes to physical owners and make the artifact deterministic. + +### Exchange lemma + +Take two capacities $c_1\le c_2$ and two widths $w_1\le w_2\le c_1$. The +assignment of $w_1$ to $c_1$ and $w_2$ to $c_2$ has residual pair + +$$ +(c_1-w_1,\ c_2-w_2). +$$ + +Exchange the widths. Feasibility is preserved, and the new pair is + +$$ +(c_1-w_2,\ c_2-w_1). +$$ + +The total is unchanged. The first new component is no larger than either old +component, and the second is no smaller than either old component. Therefore +the new pair majorizes the old pair. Every concave $\phi$ has weakly smaller +sum on the new pair. + +### Consequence: feasibility and optimality + +Start from any feasible complete assignment. At the smallest remaining +capacity, its assigned width is no larger than the largest remaining width +that fits. The greedy width occurs at some later capacity. If the two differ, +the exchange lemma moves that width to the current capacity while preserving +feasibility and weakly decreasing every concave objective. Fix this first +position and repeat on the suffix. Dummy zero widths cover unused groups. + +Thus the greedy procedure succeeds whenever a feasible assignment exists, and +its remainder vector majorizes that of every feasible assignment. It +simultaneously minimizes every concave remainder objective for this call. +This proof depends on the absence of any eligibility restriction beyond the +capacity and the already fixed call window; that property is explicitly +checked for the present geometry. + +## 4. Exact majorization receipts + +Let $a_r$ and $b_r$ be the old and new remainder histograms for one update, +including zero remainders. When the helper-width multiset is unchanged, their +total numbers of groups and total ranks agree. Every remainder lies between +0 and 48. The implementation checks, with integers, that for each +$k=0,1,\ldots,48$, + +$$ +\sum_r b_r\max(r-k,0) +\;\ge\; +\sum_r a_r\max(r-k,0). +$$ + +These are the stored stop-loss margins. Between integer breakpoints the +difference is linear, so checking all integer breakpoints checks every real +threshold. With equal sums and equal lengths, the inequalities are the +standard majorization criterion: the new vector majorizes the old one. + +The transcript contains 288 such equal-width updates: four passes through 72 +calls. A single preceding update replaces the seed's last `ck` width multiset. +That bootstrap has different total width, so it is checked for exact +feasibility and is not represented as an equal-sum majorization step. + +`reproduce.py` reruns every update and compares the full transcript's semantic +hash. Independently, `audit_frozen.py` removes each final call in turn, computes +all available capacities directly from the frozen owner map, runs a separate +histogram-only greedy calculation, and verifies that it returns exactly the +existing remainder histogram. This checks all 72 final coordinate optima +without relying on the transcript or the discovery seed. + +## 5. Relation to the global moment + +For ambient dimension $M=73$, define + +$$ +\phi_b(r)=r\bigl((73/r)^b-1\bigr) + =73^b r^{1-b}-r,\qquad \phi_b(0)=0. +$$ + +For $0 used[g]) + paid = Counter({r: 72*n for r, n in sig['profile'].items()}) + paid.update(idle) + + # Independent cost-level fixed-point check. No helper-ID or family-ID + # tie-breaking is needed: equal capacities give the same histogram. + for t in range(72): + old = {g: w for g, w in bycall[t].values()} + assert len(old) == R + before = Counter(caps[g]-used[g] for g in eligible[t]) + available = sorted(caps[g]-used[g]+old.get(g, 0) for g in eligible[t]) + want = Counter(sig['widths']) + after = Counter() + for cap in available: + width = next((w for w in sorted(want, reverse=True) if want[w] and w <= cap), 0) + if width: + want[width] -= 1 + after[cap-width] += 1 + assert not any(want.values()), 'Greedy assignment unexpectedly infeasible' + assert after == before, ('Frozen map is not callwise optimal', t) + mass = sum(r*n for r, n in paid.items()) + assert 73*7168-mass == 2560 and max(paid) == 48 + return { + 'roles': len(owners), 'calls': 72, 'fixed_point_calls_checked': 72, + 'remainder_profile': dict(sorted(idle.items())), + 'global_profile': dict(sorted(paid.items())), + 'rank_mass': mass, 'deficit': 2560, 'maxchild': 48, + 'all_footprints_disjoint_compacted_prefixes': True, + 'all_helper_families_idle_and_outside_active_data': True, + 'one_helper_per_physical_family_per_call': True, + 'every_call_optimal_for_every_concave_remainder_cost': True, + 'global_optimality_claimed': False, + } + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + add_inputs(parser) + parser.add_argument('--owners', type=Path, default=HERE/'frozen/OWNERS.json.gz') + parser.add_argument('--majorization', type=Path, default=HERE/'frozen/MAJORIZATION.json.gz') + parser.add_argument('--out', type=Path, required=True) + args = parser.parse_args() + manifest = read(HERE/'frozen/MANIFEST.json') + plan, sig, provider_path = bound_inputs(args, manifest) + assert semantic_sha(args.owners) == manifest['artifacts']['OWNERS.json.gz']['semantic_sha256'] + assert semantic_sha(args.majorization) == manifest['artifacts']['MAJORIZATION.json.gz']['semantic_sha256'] + result = audit(plan, sig, read(args.owners)) + for key in ('remainder_profile', 'global_profile'): + assert result[key] == {int(r): n for r, n in manifest[key].items()} + moves = read(args.majorization) + checked = 0 + for move in moves: + if move['equal_width_multiset']: + margins = move['integer_stoploss_margins'] + assert len(margins) == 49 and all(type(x) is int and x >= 0 for x in margins) + assert margins[0] == margins[-1] == 0 + assert move['strict_majorization'] == bool(any(margins)) + checked += 1 + else: + assert move['bootstrap'] and move['integer_stoploss_margins'] is None + assert checked == 288 and len(moves) == 289 + result.update({ + 'status': 'PASS_FROZEN_HOSTING_AND_ALL_72_CALLWISE_FIXED_POINTS', + 'parent_plan_sha256': sha(args.parent_plan), + 'parent_owners_sha256': sha(args.parent_owners), + 'owners_semantic_sha256': semantic_sha(args.owners), + 'majorization_semantic_sha256': semantic_sha(args.majorization), + 'stored_integer_majorization_steps': checked, + 'majorization_replay': 'reproduce.py re-executes every step; this audit separately checks the final fixed point.', + 'remaining_scope': 'The package global verifier checks fresh local algebra, phases, windows, invoice, moment, and outer assembly.', + }) + args.out.parent.mkdir(parents=True, exist_ok=True) + args.out.write_text(json.dumps(result, indent=2)+'\n') + print(json.dumps(result, indent=2)) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/expand_owners.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/expand_owners.py new file mode 100644 index 0000000000..ee6c4c24e6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/expand_owners.py @@ -0,0 +1,186 @@ +"""Exact callwise concave-cost owner matching over every legal idle family. + +This is a finite integer nomination algorithm, not a MILP. Each greedy +matching is optimal for every concave remainder cost. Its majorization +receipt is checked with integers, independently of floating root screens. +""" +from collections import Counter, defaultdict, deque +from pathlib import Path +import argparse +import gzip +import hashlib +import json +import time + +from reuse_owners import read, packed, sha, signature, audit_roles, rate + + +def stoploss(hist,k):return sum(n*max(r-k,0) for r,n in hist.items()) + + +def main(): + ap=argparse.ArgumentParser(description=__doc__) + ap.add_argument('--plan',type=Path,required=True) + ap.add_argument('--owners',type=Path,required=True) + ap.add_argument('--signature',action='append',required=True,help='Existing PID=verified native directory or raw/signature JSON') + ap.add_argument('--max-passes',type=int,default=8) + ap.add_argument('--out',type=Path,required=True) + a=ap.parse_args();assert 1<=a.max_passes<=12 + a.out.mkdir(parents=True,exist_ok=False);beg=time.monotonic() + plan,oldroles=read(a.plan),read(a.owners);V,M=112,73 + assert (plan['K'],plan['T'],plan['M'],plan['L'])==(4,8,73,9) + sig={pid:{'widths':desc['widths'],'profile':{int(r):n for r,n in desc['actual_paid_profile'].items()},'source':'input PLAN'} for pid,desc in plan['provider_registry'].items()} + for spec in a.signature: + pid,path=spec.split('=',1);assert pid in sig;sig[pid]=signature(path) + R=len(next(iter(sig.values()))['widths']) + for s in sig.values(): + assert len(s['widths'])==R and all(type(w) is int and 0used[g]) + + def total_profile(): + p=Counter() + for c in plan['provider_calls']:p.update(sig[c['provider']]['profile']) + p.update(idle_profile());assert M*plan['live']-sum(r*n for r,n in p.items())==2560 + return p + + def update(call,bootstrap=False): + t=calls[call]['time'];gs=eligible[t] + old=current[call] + old_by_group={g:(h,w) for h,(g,w) in old.items()} + assert len(old_by_group)==R and set(old_by_group)<=set(gs) + oldhist=Counter(caps[g]-used[g] for g in gs) + for g,(h,w) in old_by_group.items():used[g]-=w + want=defaultdict(set) + for h,w in enumerate(widths[call]):want[w].add(h) + # Equal-capacity opportunities have identical costs. Preserve old + # matching widths first, then old owners, and finally family order. + buckets=defaultdict(lambda:defaultdict(deque)) + for g in sorted(gs,key=lambda g:(families[g],g[1])): + available=caps[g]-used[g];oldw=old_by_group.get(g,(None,0))[1] + buckets[available][oldw].append(g) + result={};unassigned=R + for c in sorted(buckets): + bucket=buckets[c] + while unassigned and any(bucket.values()): + w=next((w for w in sorted(want,reverse=True) if w<=c and want[w]),None) + if w is None:break + if bucket.get(w):q=w + else:q=next(q for q in sorted(bucket,reverse=True) if bucket[q]) + g=bucket[q].popleft() + h0=old_by_group.get(g,(None,0))[0] + h=h0 if h0 in want[w] else min(want[w]) + want[w].remove(h);result[h]=(g,w);used[g]+=w;unassigned-=1 + assert used[g]<=caps[g] + assert unassigned==0,('no legal family matching',call,{w:len(h) for w,h in want.items() if h}) + assert set(result)==set(range(R)) and len({families[g] for g,w in result.values()})==R + newhist=Counter(caps[g]-used[g] for g in gs) + equal_widths=Counter(w for g,w in old.values())==Counter(widths[call]) + strict=False + if equal_widths: + assert sum(oldhist.values())==sum(newhist.values()) + assert stoploss(oldhist,0)==stoploss(newhist,0) + margins=[stoploss(newhist,k)-stoploss(oldhist,k) for k in range(49)] + assert min(margins)>=0,('greedy did not majorize old assignment',call,margins) + strict=any(margins) + else: + assert bootstrap + margins=None + changed=sum(result[h]!=old[h] for h in result) + current[call]=result + moves.append({'stage':call[0],'replica':call[1],'time':t,'bootstrap':bootstrap, + 'equal_width_multiset':equal_widths,'integer_stoploss_margins':margins, + 'strict_majorization':strict,'changed_helper_owners':changed}) + return strict,changed + + changed_calls=[c for c in order if any(current[c][h][1]!=widths[c][h] for h in range(R))] + for c in changed_calls:update(c,bootstrap=True) + p=total_profile();baseline_b=rate(p,2560,M) + rounds=[{'pass':'bootstrap','changed_provider_calls':[list(c) for c in changed_calls], + 'floating_b':baseline_b,'remainder_profile':dict(sorted(idle_profile().items()))}] + print(json.dumps({'checkpoint':'all_goal_signatures_feasible','bootstrap_calls':len(changed_calls),'floating_b':baseline_b}),flush=True) + quiet=0 + for passno in range(a.max_passes): + strict=changed=0 + for c in (order if passno%2==0 else list(reversed(order))): + s,z=update(c);strict+=bool(s);changed+=z + p=total_profile();r={'pass':passno+1,'strictly_improved_calls':strict,'changed_helper_owners':changed, + 'floating_b':rate(p,2560,M),'remainder_profile':dict(sorted(idle_profile().items()))} + rounds.append(r);print(json.dumps({k:r[k] for k in ('pass','strictly_improved_calls','changed_helper_owners','floating_b')}),flush=True) + quiet=quiet+1 if not strict else 0 + if quiet>=2 or (not strict and not changed):break + + groups=defaultdict(list);roles=[] + for call in order: + s,rep=call;t=calls[call]['time'] + for h,(g,w) in current[call].items(): + orp,ch,port=g + z={'child':ch,'copy':orp*V+port,'family':families[g],'helper':h,'offset':0, + 'owner_replica':orp,'port':port,'replica':rep,'stage':s,'time':t,'width':w} + roles.append(z);groups[g].append(z) + for g,zs in groups.items(): + off=0 + for z in sorted(zs,key=lambda z:(z['time'],z['helper'])):z['offset']=off;off+=z['width'] + assert off==used[g]<=caps[g] + roles.sort(key=lambda z:(z['time'],z['helper'])) + cells,_=audit_roles(roles,plan,widths,V,R) + for z in roles: + active=max(0,(z['stage']-1)//2) + assert not (z['owner_replica']==z['replica'] and plan['pairs'][str(z['child'])]==active) + for g in caps:assert len(cells[g])==used[g] + remainder=[] + for g in caps: + left=caps[g]-used[g] + if left: + rep,ch,port=g + remainder.append({'child':ch,'port':port,'replica':rep,'replicas':1,'family':families[g], + 'rank':left,'hosted':used[g],'pending_offset':used[g]}) + profile=dict(sorted(total_profile().items()));assert M*M>2*max(profile)**2 + raw=packed(roles);compressed=bytearray(gzip.compress(raw,mtime=0));compressed[9]=255 + (a.out/'OWNERS.json.gz').write_bytes(bytes(compressed)) + (a.out/'MAJORIZATION.json.gz').write_bytes(gzip.compress(packed(moves),mtime=0)) + (a.out/'REMAINDERS.json').write_text(json.dumps(remainder,indent=2)+'\n') + (a.out/'PROFILE.json').write_text(json.dumps(profile,indent=2)+'\n') + fields={'profile':profile,'per_call_widths':[{'stage':s,'replica':r,'widths':widths[s,r]} for s,r in order], + 'assignment_sha256':hashlib.sha256(raw).hexdigest(),'assignment_sha256_semantics':'SHA256 sorted-key compact uncompressed OWNERS array', + 'source_owners_sha256':sha(a.owners),'provider_signatures':sig} + (a.out/'PLAN-OWNER-FIELDS.json').write_text(json.dumps(fields,indent=2)+'\n') + receipt={'status':'PASS_EXPANDED_OWNER_MATCHING_EXACT_COMBINATORICS_PENDING_GLOBAL_ADMISSION', + 'source_plan':str(a.plan),'source_plan_sha256':sha(a.plan),'source_owners':str(a.owners),'source_owners_sha256':sha(a.owners), + 'owners_sha256':sha(a.out/'OWNERS.json.gz'),'source_signatures':sig, + 'roles':len(roles),'calls':len(order),'unchanged_call_order_and_windows':True, + 'all_families_idle_and_outside_active_data':True,'one_helper_per_family_per_call':True, + 'all_footprints_disjoint_compacted_prefixes':True,'integer_majorization_steps':sum(z['equal_width_multiset'] for z in moves), + 'majorization_sha256':sha(a.out/'MAJORIZATION.json.gz'),'matching_rounds':rounds, + 'global_profile':profile,'rank_mass':sum(r*n for r,n in profile.items()),'deficit':2560, + 'remainder_profile':dict(sorted(idle_profile().items())),'maxchild':max(profile), + 'candidate_floating_screen_b':rate(profile,2560,M),'seconds':time.monotonic()-beg, + 'remaining_admission':'Fresh native-provider bindings, actual 73-column owner charts, independent full controller audit, finite invoice, exact moment and outer assembly.'} + (a.out/'EXPANDED-OWNER-REUSE.json').write_text(json.dumps(receipt,indent=2)+'\n') + print(json.dumps({k:receipt[k] for k in ('status','roles','remainder_profile','rank_mass','candidate_floating_screen_b','seconds')},indent=2),flush=True) + + +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/FROZEN-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/FROZEN-AUDIT.json new file mode 100644 index 0000000000..5f95552366 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/FROZEN-AUDIT.json @@ -0,0 +1,57 @@ +{ + "roles": 35424, + "calls": 72, + "fixed_point_calls_checked": 72, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "all_footprints_disjoint_compacted_prefixes": true, + "all_helper_families_idle_and_outside_active_data": true, + "one_helper_per_physical_family_per_call": true, + "every_call_optimal_for_every_concave_remainder_cost": true, + "global_optimality_claimed": false, + "status": "PASS_FROZEN_HOSTING_AND_ALL_72_CALLWISE_FIXED_POINTS", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "stored_integer_majorization_steps": 288, + "majorization_replay": "reproduce.py re-executes every step; this audit separately checks the final fixed point.", + "remaining_scope": "The package global verifier checks fresh local algebra, phases, windows, invoice, moment, and outer assembly." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MAJORIZATION.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MAJORIZATION.json.gz new file mode 100644 index 0000000000..047b1cfb67 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MAJORIZATION.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MANIFEST.json new file mode 100644 index 0000000000..291005722c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MANIFEST.json @@ -0,0 +1,114 @@ +{ + "schema": "gauge44-hosting-frozen-v1", + "parent_pr": 635, + "parent_paths": { + "plan": "research/complex-571-cold14-st2/data/PLAN.json", + "owners": "research/complex-571-cold14-st2/data/OWNERS.json.gz" + }, + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "artifacts": { + "OWNERS.json.gz": { + "sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d" + }, + "SEED-OWNERS.json.gz": { + "sha256": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "semantic_sha256": "beea695aa2e1ab973ad53f475b3e3e9cf6d0f8a9bca2033a445b64f3b3484e34" + }, + "MAJORIZATION.json.gz": { + "sha256": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc" + } + }, + "new_provider": { + "R": 492, + "h": 9, + "v": 112, + "width_histogram": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "width_sum": 3794, + "profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "rank_mass": 5650, + "raw_word_sha256": "3ef4e74e81e2f4621fc95272918ac7b8bb8858df0baa16cc6d91424d55aead9e", + "canonical_word_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "local_programs_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "width_vector_sha256": "b7fbefdb3af3942194ac9314c767c7812bd68adb734d4e00b70b2916bdb55de8" + }, + "seed_discovery": { + "provider_replaced": "jp8", + "unchanged_provider": "ck", + "passes": 2, + "price_b": 0.001638923, + "python": "3.12.14", + "numpy": "2.3.5", + "scipy": "1.17.0", + "note": "Only seed discovery uses floating-point Hungarian costs. Frozen seed and the expanded exact replay require the Python standard library." + }, + "expanded_replay": { + "providers_replaced": [ + "jp8", + "ck" + ], + "max_passes": 8, + "actual_passes": 4, + "integer_majorization_steps": 288, + "changed_width_bootstrap_calls": 1 + }, + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "live": 7168, + "roles": 35424, + "calls": 72, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "candidate_floating_screen_b": 0.0016522089943684115, + "screening_only": "The floating rate here is not a certified exponent. Exact supplier and outer admission belong to the package verifier." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MATCHING-RECEIPT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MATCHING-RECEIPT.json new file mode 100644 index 0000000000..993331090c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/MATCHING-RECEIPT.json @@ -0,0 +1,1205 @@ +{ + "status": "PASS_EXPANDED_OWNER_MATCHING_EXACT_COMBINATORICS_PENDING_GLOBAL_ADMISSION", + "source_plan": "explicit parent PLAN, with a temporary signature-only seed view for expanded replay", + "source_plan_sha256": "0d2b6a12d3450cfb78e556e80d34cabb8cd1a7f8aa85c1a712a5177236672a37", + "source_owners": "frozen/SEED-OWNERS.json.gz", + "source_owners_sha256": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "owners_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "source_signatures": { + "ck": { + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2514, + "4": 160, + "8": 8, + "3": 448, + "2": 404, + "5": 56 + }, + "source": "supplied new provider (raw or independently checked native)", + "canonical_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "program_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2" + }, + "jp8": { + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2514, + "4": 160, + "8": 8, + "3": 448, + "2": 404, + "5": 56 + }, + "source": "supplied new provider (raw or independently checked native)", + "canonical_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "program_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2" + } + }, + "roles": 35424, + "calls": 72, + "unchanged_call_order_and_windows": true, + "all_families_idle_and_outside_active_data": true, + "one_helper_per_family_per_call": true, + "all_footprints_disjoint_compacted_prefixes": true, + "integer_majorization_steps": 288, + "majorization_sha256": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "matching_rounds": [ + { + "pass": "bootstrap", + "changed_provider_calls": [ + [ + 2, + 0 + ] + ], + "floating_b": 0.0016448741407332063, + "remainder_profile": { + "1": 87, + "2": 111, + "3": 191, + "4": 160, + "5": 1, + "6": 2, + "7": 50, + "8": 127, + "10": 3, + "11": 23, + "12": 25, + "13": 1, + "14": 5, + "15": 9, + "16": 107, + "18": 1, + "19": 10, + "20": 15, + "23": 2, + "24": 52, + "32": 1, + "44": 1, + "48": 2221 + } + }, + { + "pass": 1, + "strictly_improved_calls": 70, + "changed_helper_owners": 1245, + "floating_b": 0.0016518485664379205, + "remainder_profile": { + "1": 83, + "2": 92, + "3": 167, + "4": 10, + "6": 3, + "7": 9, + "8": 13, + "11": 4, + "12": 11, + "15": 1, + "16": 35, + "24": 1, + "28": 7, + "32": 57, + "44": 11, + "48": 2284 + } + }, + { + "pass": 2, + "strictly_improved_calls": 41, + "changed_helper_owners": 169, + "floating_b": 0.0016521846143978994, + "remainder_profile": { + "1": 83, + "2": 80, + "3": 171, + "7": 7, + "8": 6, + "12": 14, + "16": 33, + "19": 1, + "20": 2, + "24": 2, + "28": 3, + "32": 61, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + } + }, + { + "pass": 3, + "strictly_improved_calls": 8, + "changed_helper_owners": 13, + "floating_b": 0.0016522089943684115, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + } + }, + { + "pass": 4, + "strictly_improved_calls": 0, + "changed_helper_owners": 0, + "floating_b": 0.0016522089943684115, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + } + } + ], + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "rank_mass": 520704, + "deficit": 2560, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "maxchild": 48, + "candidate_floating_screen_b": 0.0016522089943684115, + "remaining_admission": "Fresh native-provider bindings, actual 73-column owner charts, independent full controller audit, finite invoice, exact moment and outer assembly.", + "provenance_note": "Absolute discovery paths and wall time removed; original artifact hashes and all exact combinatorial fields preserved." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/OWNERS.json.gz new file mode 100644 index 0000000000..e9c7cfc72d Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/REPRODUCTION.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/REPRODUCTION.json new file mode 100644 index 0000000000..8ad59712b2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/REPRODUCTION.json @@ -0,0 +1,29 @@ +{ + "status": "PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY", + "seed_mode": "included_frozen_seed", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "owners_gzip_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "scope": "Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-OWNERS.json.gz new file mode 100644 index 0000000000..d61916a156 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-RECEIPT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-RECEIPT.json new file mode 100644 index 0000000000..82911f647b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-RECEIPT.json @@ -0,0 +1,1537 @@ +{ + "status": "PASS_OWNER_REUSE_NOMINATION_COMBINATORICS_NOT_FULL_SUPPLIER_ADMISSION", + "source_plan": "explicit parent PLAN", + "source_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "source_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_sha256": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "unchanged_owner_family_sets": true, + "unchanged_call_order_and_windows": true, + "all_footprints_are_disjoint_compacted_prefixes": true, + "local_signatures": { + "ck": { + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2600, + "2": 552, + "3": 304, + "4": 164, + "5": 70, + "6": 4, + "8": 8 + }, + "source": "inherited parent PLAN signature" + }, + "jp8": { + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "source": "supplied new provider (raw or independently checked native)", + "source_sha256": "3ef4e74e81e2f4621fc95272918ac7b8bb8858df0baa16cc6d91424d55aead9e" + } + }, + "sorted_initial_dominance": { + "(0, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 0)": { + "old_total": 3854, + "new_total": 3854, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + } + }, + "matching_passes": [ + { + "pass": "sorted", + "touched_group_idle_pressure": 44.06409529228022, + "calls_awaiting_capacity_matching": 0 + }, + { + "pass": 1, + "accepted_calls": 71, + "touched_group_idle_pressure": 24.92521223381306, + "decrease": 19.13888305846716 + }, + { + "pass": 2, + "accepted_calls": 58, + "touched_group_idle_pressure": 23.047886627886065, + "decrease": 1.8773256059269947 + } + ], + "roles": 35424, + "calls": 72, + "remainder_children": 3197, + "remainder_profile": { + "1": 83, + "2": 99, + "3": 197, + "4": 168, + "5": 6, + "6": 13, + "7": 16, + "8": 145, + "10": 4, + "11": 24, + "12": 19, + "13": 1, + "14": 3, + "15": 9, + "16": 107, + "18": 1, + "19": 10, + "20": 15, + "23": 2, + "24": 52, + "32": 1, + "44": 1, + "48": 2221 + }, + "global_profile": { + "1": 181177, + "2": 29335, + "3": 32309, + "4": 11692, + "5": 4052, + "6": 17, + "7": 16, + "8": 721, + "10": 4, + "11": 24, + "12": 19, + "13": 1, + "14": 3, + "15": 9, + "16": 107, + "18": 1, + "19": 10, + "20": 15, + "23": 2, + "24": 52, + "32": 1, + "44": 1, + "48": 2221 + }, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "source_floating_screen_b": 0.001638923175694355, + "candidate_floating_screen_b": 0.0016446065186552388, + "remaining_admission": "Bind freshly verified provider artifacts and their hashes; regenerate the global template, actual 73-column sigmas and remainder axes with the existing emitter; run independent owner/frame audit, finite invoice, and exact moment/outer assembly.", + "provenance_note": "Absolute discovery paths and wall time removed; original artifact hashes and all exact combinatorial fields preserved." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-REPRODUCTION.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-REPRODUCTION.json new file mode 100644 index 0000000000..91ee98cf70 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/frozen/SEED-REPRODUCTION.json @@ -0,0 +1,29 @@ +{ + "status": "PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY", + "seed_mode": "two_pass_hungarian_discovery_rebuilt", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "owners_gzip_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "scope": "Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/reproduce.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/reproduce.py new file mode 100644 index 0000000000..2f29a5ff13 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/reproduce.py @@ -0,0 +1,100 @@ +"""Reproduce the frozen all-cold44 owner nomination from explicit inputs. + +By default, replay the exact integer optimizer from the included frozen seed. +--rebuild-seed additionally repeats the original two floating-cost Hungarian +discovery passes; that optional route requires NumPy and SciPy. +""" +from pathlib import Path +from collections import Counter +import argparse +import copy +import json +import shutil +import subprocess +import sys + +from audit_frozen import HERE, add_inputs, bound_inputs, semantic_sha +from reuse_owners import audit_roles, read, sha + + +def run(name, *args): + subprocess.run([sys.executable, str(HERE/name), *map(str, args)], check=True) + + +def seed_plan(parent, seed_owners, new_signature): + """Build a signature-only resizer input; never an admitted provider PLAN.""" + plan = copy.deepcopy(parent) + plan['provider_registry']['jp8']['widths'] = new_signature['widths'] + plan['provider_registry']['jp8']['actual_paid_profile'] = new_signature['profile'] + call_widths = { + (c['stage'], c['replica']): plan['provider_registry'][c['provider']]['widths'] + for c in plan['provider_calls'] + } + used, families = audit_roles(seed_owners, plan, call_widths, 112, 492) + profile = Counter() + for c in plan['provider_calls']: + profile.update({int(r): n for r, n in plan['provider_registry'][c['provider']]['actual_paid_profile'].items()}) + for key, (cap, times) in plan['windows'].items(): + rep, child = map(int, key.split(',')) + for port in range(112): + left = cap-len(used[rep, child, port]) + if left: + profile[left] += 1 + assert 73*7168-sum(r*n for r, n in profile.items()) == 2560 + plan['profile'] = dict(sorted(profile.items())) + plan['per_call_widths'] = [ + {'stage': s, 'replica': r, 'widths': call_widths[s, r]} + for s, r in plan['order'] + ] + plan['status'] = 'INTERMEDIATE_SIGNATURE_ONLY_OWNER_SEED_NOT_PROVIDER_ADMISSION' + return plan + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + add_inputs(parser) + parser.add_argument('--rebuild-seed', action='store_true') + parser.add_argument('--out', type=Path, required=True, help='New output directory') + args = parser.parse_args() + manifest = read(HERE/'frozen/MANIFEST.json') + parent, sig, provider = bound_inputs(args, manifest) + args.out.mkdir(parents=True, exist_ok=False) + seed_dir = args.out/'seed' + if args.rebuild_seed: + run('reuse_owners.py', '--plan', args.parent_plan, '--owners', args.parent_owners, + '--signature', f'jp8={provider}', '--passes', '2', '--price-b', '0.001638923', '--out', seed_dir) + else: + seed_dir.mkdir() + shutil.copyfile(HERE/'frozen/SEED-OWNERS.json.gz', seed_dir/'OWNERS.json.gz') + assert semantic_sha(seed_dir/'OWNERS.json.gz') == manifest['artifacts']['SEED-OWNERS.json.gz']['semantic_sha256'], ( + 'Seed differs; use the default frozen-seed replay, or the recorded NumPy/SciPy versions for discovery replay.' + ) + plan = seed_plan(parent, read(seed_dir/'OWNERS.json.gz'), sig) + plan_path = seed_dir/'PLAN-FOR-RESIZER.json' + plan_path.write_text(json.dumps(plan, indent=2)+'\n') + final_dir = args.out/'all72' + run('expand_owners.py', '--plan', plan_path, '--owners', seed_dir/'OWNERS.json.gz', + '--signature', f'jp8={provider}', '--signature', f'ck={provider}', + '--max-passes', '8', '--out', final_dir) + for name in ('OWNERS.json.gz', 'MAJORIZATION.json.gz'): + assert semantic_sha(final_dir/name) == manifest['artifacts'][name]['semantic_sha256'], (name, 'Frozen semantic digest mismatch') + kwargs = ('--local44', args.local44) if args.local44 is not None else ('--raw-word', args.raw_word) + run('audit_frozen.py', '--parent-plan', args.parent_plan, '--parent-owners', args.parent_owners, + *kwargs, '--owners', final_dir/'OWNERS.json.gz', '--majorization', final_dir/'MAJORIZATION.json.gz', + '--out', args.out/'FROZEN-AUDIT.json') + receipt = { + 'status': 'PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY', + 'seed_mode': 'two_pass_hungarian_discovery_rebuilt' if args.rebuild_seed else 'included_frozen_seed', + 'parent_plan_sha256': sha(args.parent_plan), 'parent_owners_sha256': sha(args.parent_owners), + 'owners_semantic_sha256': semantic_sha(final_dir/'OWNERS.json.gz'), + 'owners_gzip_sha256': sha(final_dir/'OWNERS.json.gz'), + 'majorization_semantic_sha256': semantic_sha(final_dir/'MAJORIZATION.json.gz'), + 'global_profile': read(final_dir/'PROFILE.json'), + 'scope': 'Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate.', + } + (args.out/'REPRODUCTION.json').write_text(json.dumps(receipt, indent=2)+'\n') + print(json.dumps(receipt, indent=2)) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/reuse_owners.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/reuse_owners.py new file mode 100644 index 0000000000..234b831790 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/hosting/reuse_owners.py @@ -0,0 +1,230 @@ +"""Deterministic existing-family owner reuse and optional callwise matching. + +The output is a nomination, requiring the ordinary independent owner, phase, +finite-invoice, and exact-moment admission. No MILP or new owner family is used. +""" +from collections import Counter, defaultdict +from pathlib import Path +import argparse +import copy +import gzip +import hashlib +import json +import math +import time + + +def read(path): + raw=Path(path).read_bytes() + return json.loads(gzip.decompress(raw) if str(path).endswith('.gz') else raw) + + +def packed(obj):return json.dumps(obj,sort_keys=True,separators=(',',':')).encode() +def sha(path):return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def signature(path): + path=Path(path) + if path.is_dir(): + w=read(path/'CANONICAL-WORD.json.gz');V,R=w['v'],w['R'] + widths=[len(w['frames'][w['final'][2*V+h]])-len(w['frames'][w['start'][2*V+h]]) for h in range(R)] + programs=read(path/'LOCAL-PROGRAMS.json.gz') + profiles=[Counter(e[-1] for e in programs[o] if e[0] in ('climb','center')) for o in ('forward','backward')] + assert profiles[0]==profiles[1] + assert profiles[0]=={int(r):n for r,n in w['local_profile'].items()} + return {'widths':widths,'profile':dict(profiles[0]),'source':str(path), + 'canonical_sha256':sha(path/'CANONICAL-WORD.json.gz'), + 'program_sha256':sha(path/'LOCAL-PROGRAMS.json.gz')} + w=read(path) + if 'report' in w: + V,R=w['report']['v'],w['report']['R'] + widths=[len(w.get('helper_final',{}).get(str(2*V+h),range(9)))-len(w.get('start_extra',{}).get(str(2*V+h),[])) for h in range(R)] + profile={int(r):n for r,n in w['report']['local_profile'].items()} + else: + widths=w['widths'];profile={int(r):n for r,n in w['profile'].items()} + return {'widths':widths,'profile':profile,'source':str(path),'source_sha256':sha(path)} + + +def phi(rank,b,M):return rank*math.expm1(b*math.log(M/rank)) if rank else 0. + + +def rate(profile,deficit,M): + lo,hi=0.,.02 + for _ in range(58): + mid=(lo+hi)/2 + if sum(n*phi(r,mid,M) for r,n in profile.items())oldroles[i]['width']] + if failures: + # Keep this call's old widths provisionally; shrunk calls leave + # slack on their original owner families. A subsequent exact + # bipartite matching may use that slack for this call. + pending.append(call) + for i in ids:assigned_h[i]=oldroles[i]['helper'];assigned_w[i]=oldroles[i]['width'] + else: + for h,i in zip(helpers,slots):assigned_h[i]=h;assigned_w[i]=newwidths[call][h] + dominance[str(call)]={'old_total':sum(oldwidths[call]),'new_total':sum(newwidths[call]),'sorted_termwise_dominance':not failures,'failed_positions':failures} + used={g:sum(assigned_w[i] for i in ids) for g,ids in groups.items()} + assert all(used[g]<=cap[g] for g in groups) + cost_cache=[phi(r,a.price_b,M) for r in range(49)] + def current_cost():return sum(cost_cache[cap[g]-used[g]] for g in groups) + passes=[{'pass':'sorted','touched_group_idle_pressure':current_cost(),'calls_awaiting_capacity_matching':len(pending)}] + + if a.passes or pending: + import numpy as np + from scipy.optimize import linear_sum_assignment + def match_call(call,force=False): + ids=sorted(bycall[call],key=lambda i:oldroles[i]['helper']) + gs=[group_of[i] for i in ids] + assert len(set(gs))==R, 'one owner family per complete call is essential' + available=np.array([cap[g]-used[g]+assigned_w[i] for i,g in zip(ids,gs)],dtype=np.int64) + ws=np.array(newwidths[call],dtype=np.int64) + left=available[None,:]-ws[:,None] + matrix=np.full((R,R),np.inf) + valid=left>=0 + matrix[valid]=np.asarray(cost_cache)[left[valid]] + ri,ci=linear_sum_assignment(matrix) + assert len(ri)==R and np.all(np.isfinite(matrix[ri,ci])) + oldcost=sum(cost_cache[cap[g]-used[g]] for g in gs) + newcost=float(matrix[ri,ci].sum()) + if not force: + assert newcost<=oldcost+1e-10 + if oldcost-newcost<=1e-10:return False + for h,col in zip(ri,ci): + i=ids[int(col)];g=group_of[i];h=int(h);ww=int(ws[h]) + used[g]+=ww-assigned_w[i];assigned_w[i]=ww;assigned_h[i]=h + assert used[g]<=cap[g] + return True + for call in pending: + match_call(call,force=True) + dominance[str(call)]['capacity_matching_feasible']=True + if pending:passes.append({'pass':'capacity_bootstrap','touched_group_idle_pressure':current_cost(),'resolved_calls':[list(c) for c in pending]}) + for p in range(a.passes): + accepted=0;startcost=current_cost() + order=[tuple(k) for k in plan['order']] + if p%2:order.reverse() + for call in order: + accepted+=match_call(call) + finalcost=current_cost();assert finalcost<=startcost+1e-9 + passes.append({'pass':p+1,'accepted_calls':accepted,'touched_group_idle_pressure':finalcost,'decrease':startcost-finalcost}) + + # The inherited compiler requires each used coordinate set to be a + # prefix. Stable left compaction preserves every immutable owner field. + roles=copy.deepcopy(oldroles);matching=[] + for g,ids in groups.items(): + off=0 + for i in sorted(ids,key=lambda i:(oldroles[i]['offset'],oldroles[i]['time'],oldroles[i]['helper'])): + z=roles[i];z['helper']=assigned_h[i];z['width']=assigned_w[i];z['offset']=off;off+=z['width'] + matching.append({'stage':z['stage'],'replica':z['replica'],'old_helper':oldroles[i]['helper'], + 'new_helper':z['helper'],'old_width':oldroles[i]['width'],'new_width':z['width'], + 'family':z['family'],'child':z['child'],'old_offset':oldroles[i]['offset'],'new_offset':z['offset']}) + assert off==used[g]<=cap[g] + roles.sort(key=lambda z:(z['time'],z['helper'])) + newused,newfamilies=audit_roles(roles,plan,newwidths,V,R) + assert newfamilies==oldfamilies + paid=Counter();remainders=[] + for c in plan['provider_calls']:paid.update(signatures[c['provider']]['profile']) + idle=Counter() + for key,(capacity,window) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(V): + occupied=len(newused[rep,ch,port]);left=capacity-occupied + if left: + family=rep*(8*V)+(2*plan['pairs'][str(ch)]+plan['sides'][str(ch)])*V+port + remainders.append({'child':ch,'port':port,'replica':rep,'replicas':1,'family':family, + 'rank':left,'hosted':occupied,'pending_offset':occupied}) + idle[left]+=1 + paid.update(idle);mass=sum(r*n for r,n in paid.items()) + assert M*plan['live']-mass==plan['deficit']==2560 + assert M*M>2*max(paid)**2 + oldprofile={int(r):n for r,n in plan['profile'].items()} + ownerraw=packed(roles);gz=bytearray(gzip.compress(ownerraw,mtime=0));gz[9]=255 + (a.out/'OWNERS.json.gz').write_bytes(bytes(gz)) + (a.out/'MATCHING.json.gz').write_bytes(gzip.compress(packed(matching),mtime=0)) + (a.out/'REMAINDERS.json').write_text(json.dumps(remainders,indent=2)+'\n') + profile=dict(sorted(paid.items())) + (a.out/'PROFILE.json').write_text(json.dumps(profile,indent=2)+'\n') + owner_fields={'profile':profile, + 'per_call_widths':[{'stage':s,'replica':r,'widths':newwidths[s,r]} for s,r in plan['order']], + 'assignment_sha256':hashlib.sha256(ownerraw).hexdigest(), + 'assignment_sha256_semantics':'SHA256 of sorted-key compact uncompressed OWNERS array', + 'source_owners_sha256':sha(a.owners), + 'provider_signatures':signatures} + (a.out/'PLAN-OWNER-FIELDS.json').write_text(json.dumps(owner_fields,indent=2)+'\n') + rec={'status':'PASS_OWNER_REUSE_NOMINATION_COMBINATORICS_NOT_FULL_SUPPLIER_ADMISSION', + 'source_plan':str(a.plan),'source_plan_sha256':sha(a.plan),'source_owners_sha256':sha(a.owners), + 'owners_sha256':sha(a.out/'OWNERS.json.gz'),'unchanged_owner_family_sets':True, + 'unchanged_call_order_and_windows':True,'all_footprints_are_disjoint_compacted_prefixes':True, + 'local_signatures':signatures,'sorted_initial_dominance':dominance,'matching_passes':passes, + 'roles':len(roles),'calls':len(calls),'remainder_children':len(remainders),'remainder_profile':dict(sorted(idle.items())), + 'global_profile':profile,'rank_mass':mass,'deficit':2560,'maxchild':max(paid), + 'source_floating_screen_b':rate(oldprofile,2560,M), + 'candidate_floating_screen_b':rate(profile,2560,M), + 'seconds':time.monotonic()-beg, + 'remaining_admission':'Bind freshly verified provider artifacts and their hashes; regenerate the global template, actual 73-column sigmas and remainder axes with the existing emitter; run independent owner/frame audit, finite invoice, and exact moment/outer assembly.'} + (a.out/'OWNER-REUSE.json').write_text(json.dumps(rec,indent=2)+'\n') + print(json.dumps({k:rec[k] for k in ('status','roles','matching_passes','remainder_profile','rank_mass','source_floating_screen_b','candidate_floating_screen_b','seconds')},indent=2),flush=True) + + +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/CENTRE-GUARD-REVIEW.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/CENTRE-GUARD-REVIEW.md new file mode 100644 index 0000000000..6c62bd070e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/CENTRE-GUARD-REVIEW.md @@ -0,0 +1,79 @@ +# Independent review of the centre and admission interfaces + +**Finding:** the replacement of old local centre-carrier IDs by equality of the +eight ordered centre-frame bases preserves the inherited global contract. It +must be used together with the complete local scalar, frame, phase and wrapper +admission. No mathematical admission guard was found to have been removed. + +## Why source carriers may supply centres + +The transported gauge44 centre carriers are +`[92, 57, 81, 224, 11, 240, 9, 256]`. Five are source registers and three are +helper registers. All 112 transported port labels and all eight ordered +rank-eight centre-frame bases agree exactly with the retained parent. The +optional `--main` check in `audit_local.py` independently verifies that boundary +against a byte-pinned parent canonical word. + +The actual forward local program copies the current row of `L_r` into private +`C_k` at their common frame `F_k`. It then descends `C_k` from `F_k` to frame +zero, scatters to the targets, and clears `C_k`. The backward program performs +the corresponding reversed ascent and scatter. This construction depends on +the copied row, its frame and the exact local program, rather than on a +requirement that `r` be in the helper-ID interval. The source itself is not +cleared or treated as private work. + +The independently checked local contract retains every required obligation: +all 716 input columns in both orientations; the forward and backward shear +identities; arbitrary initial helper dirt; scalar/COPY common-frame legality; +centre lifetimes and nested steps; exact native phase identities; endpoint +and row/column cone conditions; and residual wrappers before and after every +relevant touch. Its finite invoice recounts the actual operations. + +The global controller addresses private centres by `k`, while the source or +helper `L_r` is mapped through the complete invocation's ordinary owner array. +The owner audit retains pairwise distinct owners for all active source, target +and helper roles. A helper therefore cannot borrow the family of an active +source centre. The private-centre namespace is disjoint from those owners and +the local program clears it. Each whole invocation finishes before another +begins, so no new interleaving or family lifetime assumption is introduced. + +## Admission guards and single-provider controls + +An AST comparison with PR635 found all **91 assertions in `code/assemble.py` +identical, in the same traversal order**, including constants. This includes +the unchanged PR543 bit input, deficit and surcharge, every finite-invoice +guard, both conservative and native complex moment checks, and the strict +outer assembly and its controls. The following files retain the reviewed PR635 code (the packaged +`bind_providers_portable.py` only trims trailing whitespace): `invoice_allcold.py` (67 assertions), +`bind_providers_portable.py` (22), `generated_identity.py` (4), and `witness.py` +(3). `review_guards.py` reproduces the assertion comparison and records the +file hashes. + +The controller still checks the complete serialized provider registry, +per-call program and dispatch, native phase and wrapper bindings, helper +widths, owner uniqueness, actual busy-family windows, spectator orthogonality, +and literal idle remainders. The single-provider branch replaces partner +substitutions by direct invalid-ID, program, width and hash mutations. Only +four assembly mutation scenarios requiring a second registered provider are +inapplicable. Their removal does not remove any admission predicate. Direct +forged program/phase tests, width-order and width-inventory tests, and +selected-call/order tests remain. + +## Price and bit headroom + +The frozen all72 profile gives the native complex root bracket +`(0.001652208994368411824947, 0.001652208994368411824948)` and +`kappa = 0.001649483702558979`. Both independent rational engines certify the +two signs. The seven-step outer driver passes all 47 strict constraints and +rejects its four standard mutations. The conservative complex price passes +separately at `kappa = 0.001649483699681650`. + +The achieved complex rate is below PR543's retained bit rate +`0.001653826988146798944268`. Using eumemic's independently reviewed PR555 bit +rate `0.001733052823330162099157` gives exactly the same attained kappa. PR543 +therefore remains the cited supplier for this delta; no bit improvement is +claimed here and no PR555 implementation is bundled. + +These receipts supplement the package's complete native, owner, phase and +finite-invoice replay. The inherited all-size realization and analytic +transfer assumptions remain conditional. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json new file mode 100644 index 0000000000..771faa86a7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "compressed_sha256": "3ef4e74e81e2f4621fc95272918ac7b8bb8858df0baa16cc6d91424d55aead9e", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 492, + "entering": 204, + "lowends": 78, + "coldends": 44, + "compensation_gates": 7348, + "local_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "checked_columns": 716, + "elapsed_seconds": 3.147683588000291, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json new file mode 100644 index 0000000000..e2df1dcca8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json @@ -0,0 +1,47 @@ +{ + "status": "PASS_PR635_ADMISSION_ASSERTION_PRESERVATION", + "files": [ + { + "file": "code/assemble.py", + "baseline_sha256": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "new_sha256": "7ac28118d69416e4fb67b61216285fb0823310b7635ce1b9025aa3f10119ef6a", + "byte_identical": false, + "assert_count": 91, + "all_assertions_identical_in_order": true + }, + { + "file": "code/invoice_allcold.py", + "baseline_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "new_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "byte_identical": true, + "assert_count": 67, + "all_assertions_identical_in_order": true + }, + { + "file": "code/bind_providers_portable.py", + "baseline_sha256": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "new_sha256": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "byte_identical": true, + "assert_count": 22, + "all_assertions_identical_in_order": true + }, + { + "file": "code/generated_identity.py", + "baseline_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "new_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "byte_identical": true, + "assert_count": 4, + "all_assertions_identical_in_order": true + }, + { + "file": "code/witness.py", + "baseline_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "new_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "byte_identical": true, + "assert_count": 3, + "all_assertions_identical_in_order": true + } + ], + "centre_interface_review": "CENTRE-GUARD-REVIEW.md", + "scope": "Exact syntax preservation for all admission assertions in these five files. The changed emitter/controller centre boundary and single-provider controls require the separate semantic review; assertion counts alone do not prove them." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-INDEPENDENT-PRICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-INDEPENDENT-PRICE.json new file mode 100644 index 0000000000..7aa86180dd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/GAUGE44-INDEPENDENT-PRICE.json @@ -0,0 +1,156 @@ +{ + "status": "PASS_FROZEN_PROFILE_TWO_EXACT_ENGINE_AND_OUTER47_CROSSCHECK", + "profile_input_file": "PLAN.json", + "profile_input_sha256": "7b3122026e82b9d9e964d2a50c7bffdc976ae3dfea64bb98b2fdad5cfbdbaa20", + "global_profile": { + "1": 174763, + "2": 30105, + "3": 30275, + "4": 12240, + "5": 4896, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "live": 7168, + "m": 73, + "rank_mass": 520704, + "deficit": 2560, + "prices": { + "native": { + "root": { + "lower": "0.001674185476674086429846", + "upper": "0.001674185476674086429847", + "lower_endpoint_residual_upper": "-9.258737006004892346173061244464039982798397391664878463422077941068021E-25", + "upper_endpoint_residual_lower": "2.005290772036567694936493754533147163786510359586083088453102073919377E-24", + "strict_rational_signs": true + }, + "exact_moments": [ + { + "endpoint": "837092738337043214923/500000000000000000000000", + "accept": true, + "mercator_residual": [ + "-24961505588706589063536270371864708160498115/26959946667150639794667015087019630673637144422540572481103610249216", + "-24961505588706589063536270371864708160498113/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "-462937/500000000000000000000000000000", + "-925873/1000000000000000000000000000000" + ] + }, + { + "endpoint": "1674185476674086429847/1000000000000000000000000", + "accept": false, + "mercator_residual": [ + "54062532266235196619370246291034158858524675/26959946667150639794667015087019630673637144422540572481103610249216", + "54062532266235196619370246291034158858524677/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "200529/100000000000000000000000000000", + "2005291/1000000000000000000000000000000" + ] + } + ], + "outer_with_bit": { + "complex_b": "837092738337043214923/500000000000000000000000", + "bit_c": "1733427039589844234749/1000000000000000000000000", + "kappa": "835693632195073/500000000000000000", + "kappa_decimal": "0.001671387264390146", + "binding": "complex", + "strict_constraints_passed": 47, + "controls_rejected": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ] + } + }, + "conservative": { + "root": { + "lower": "0.001674185473814575474867", + "upper": "0.001674185473814575474868", + "lower_endpoint_residual_upper": "-4.932703074050864500363221905991238131757959051186123070698964701314504E-25", + "upper_endpoint_residual_lower": "2.437894165237372647986425295760776771093048289170590753978317997095726E-24", + "strict_rational_signs": true + }, + "exact_moments": [ + { + "endpoint": "1674185473814575474867/1000000000000000000000000", + "accept": true, + "mercator_residual": [ + "-6649270590065065997663222052892326679295837/13479973333575319897333507543509815336818572211270286240551805124608", + "-1662317647516266499415805513223081669823959/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two_residual": [ + "-246635539906040992121/500000000000000000000000000000000000000000000", + "-2466350399060409921139/5000000000000000000000000000000000000000000000" + ] + }, + { + "endpoint": "418546368453643868717/250000000000000000000000", + "accept": false, + "mercator_residual": [ + "65725496674957295861389862879254608557678601/26959946667150639794667015087019630673637144422540572481103610249216", + "65725496674957295861389862879254608557678603/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "12189469601119396732213/5000000000000000000000000000000000000000000000", + "24378949202238793464567/10000000000000000000000000000000000000000000000" + ] + } + ], + "outer_with_bit": { + "complex_b": "1674185473814575474867/1000000000000000000000000", + "bit_c": "1733427039589844234749/1000000000000000000000000", + "kappa": "835693630770093/500000000000000000", + "kappa_decimal": "0.001671387261540186", + "binding": "complex", + "strict_constraints_passed": 47, + "controls_rejected": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ] + } + } + }, + "bit_supplier_pr": 589, + "bit_deficit": 10272, + "bit_moments_with_surcharge": [ + { + "endpoint": "1733427039589844234749/1000000000000000000000000", + "accept": true, + "mercator_residual": [ + "-43100600330766044577088869872467188970742291/26959946667150639794667015087019630673637144422540572481103610249216", + "-43100600330766044577088869872467188970742289/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "-799345163337715793503/500000000000000000000000000000000000000000000", + "-3197378653350863173989/2000000000000000000000000000000000000000000000" + ] + }, + { + "endpoint": "6933708158359376939/4000000000000000000000", + "accept": false, + "mercator_residual": [ + "22502934905675809315035333485365686073718547/13479973333575319897333507543509815336818572211270286240551805124608", + "5625733726418952328758833371341421518429637/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two_residual": [ + "8346798366759439729359/5000000000000000000000000000000000000000000000", + "16693606733518879458833/10000000000000000000000000000000000000000000000" + ] + } + ], + "gain_over_pr635_percent": "2.14795693544613460937516788041147829054201996498013663108098185775358537919", + "input_sha256": { + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4" + }, + "scope": "Independent arithmetic for the exact nominated all72 profile. Complete local, controller and finite invoice admission are separately replayed by the package driver; this receipt does not replace them. The cited PR589 bit supplier is unchanged and its exceptional-residue surcharge is retained. Any alternative c is only a headroom comparison." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/README.md new file mode 100644 index 0000000000..f97dcf81b1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/README.md @@ -0,0 +1,43 @@ +# Independent checks + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0, under the +package license. The scalar/frame audit imports no generator or supplier +checker. Pricing uses the pinned inherited rational engines and the retained +PR635 outer formula, with their original notices preserved in the main +dependency tree. + +From the delta package directory, using the pinned checkouts and a rebuilt +word: + +```sh +python independent/audit_local.py \ + --word /path/to/rebuild/cold44/FULL-WORD.json.gz \ + --main /path/to/main \ + --output /path/to/output/LOCAL-AUDIT.json + +python independent/price_profile.py \ + --main /path/to/main \ + --output /path/to/output/PRICE.json + +python independent/review_guards.py \ + --pr635 /path/to/pr635 \ + --output /path/to/output/GUARD-REVIEW.json +``` + +`audit_local.py` can run without `--main`; including it also verifies the +transported centre-frame and port boundary against the pinned parent. Its +receipt authenticates the supplied word by its content SHA256, independent +of its location. `price_profile.py` defaults to the package's `data/PLAN.json`; +`--profile` accepts another explicit profile for arithmetic only. The bit side is the cited merged PR589 supplier +(`inputs/PR589-EXPECTED.json`, git blob `e293ddc5…`); its rank-mass deficit +`T(2Kv - L*cst) = 32*(8*111 - 9*63) = 10272` is re-derived independently of +`code/assemble.py`, and the outer receipt key is `outer_with_bit`. The retained +`GAUGE44-INDEPENDENT-PRICE.json` is #645/PR543 historical evidence unless regenerated. The optional +`--headroom-c 0.001733052823330162099157` reproduces the unchanged-kappa +comparison with the reviewed PR555 rate without importing a second supplier. + +The retained receipts are `GAUGE-COLD44-INDEPENDENT-AUDIT.json`, +`GAUGE44-INDEPENDENT-PRICE.json`, and `GAUGE44-GLOBAL-GUARD-REVIEW.json`. +[CENTRE-GUARD-REVIEW.md](CENTRE-GUARD-REVIEW.md) gives the semantic argument +behind the changed centre boundary and the single-provider control branch. +The main package driver performs the separate complete global admission. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/audit_local.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/audit_local.py new file mode 100644 index 0000000000..4744d8783c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/audit_local.py @@ -0,0 +1,171 @@ +"""Independent exact scalar/frame audit of the changed forward supplier. + +This does not import a generator, builder, stored compensation, or price. +All claimed endpoint matrices are derived from the input word's gates. +Optional --main checks the transported boundary against the pinned parent. +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. +""" +import argparse,gzip,json,hashlib,time +from pathlib import Path +from fractions import Fraction as F +from collections import Counter + +def require(x,label): + if not x:raise RuntimeError(label) + +def basis(vs): + piv={} + for a in vs: + while a: + bit=a.bit_length()-1 + if bit in piv:a^=piv[bit] + else: + piv[bit]=a;break + for k in sorted(piv): + for j in piv: + if j>k and piv[j]>>k&1:piv[j]^=piv[k] + return tuple(piv[k] for k in sorted(piv,reverse=True)) + +def contained(a,b):return basis(a+b)==b + +def registers(e):return e[1:3] if e[0]=='add' else e[1:2] + +def apply(e,rows,dual=False): + if e[0]=='add': + t,s=e[1:3];q=F(e[3],e[4]);require(t!=s,'self add') + if dual:t,s,q=s,t,-q + dst=rows[t] + for k,x in list(rows[s].items()): + a=dst.get(k,F(0))+q*x + if a:dst[k]=a + else:dst.pop(k,None) + elif e[0]=='scale': + t=e[1];q=F(e[2],e[3]);require(q!=0,'zero scale') + if dual:q=1/q + rows[t]={k:q*x for k,x in rows[t].items()} + else:raise RuntimeError('unknown scalar primitive') + +def invert(e): + r=list(e) + if r[0]=='add':r[3]=-r[3] + else:r[2],r[3]=r[3],r[2] + return r + +def check_parent_interface(word,main): + # Read only the retained boundary data. No builder or local checker is imported. + relative="research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz" + path=main/relative;raw=path.read_bytes() + require(hashlib.sha256(raw).hexdigest()=="66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844",'parent canonical input pin') + parent=json.loads(gzip.decompress(raw)) + tau=lambda x:x^(43 if (x&43).bit_count()%2 else 0) + ports=parent['ports'];v=word['report']['v'] + require(len(ports)==len(set(ports))==v,'parent port count') + require(set(map(tau,word['ports']))==set(ports),'transported source/target ports') + moved={i:ports.index(tau(p)) for i,p in enumerate(word['ports'])} + centers=[moved.get(r,r) for r in word['centers']] + actual=[list(basis([tau(x) for x in frame])) for frame in word['center_frames']] + expected=[parent['frames'][f] for f in parent['center_frames']] + require(len(centers)==len(set(centers))==len(actual)==8,'eight distinct centre carriers') + require(actual==expected and all(len(f)==8 for f in actual),'ordered centre frame interface') + return dict(parent_path=relative,parent_file_sha256=hashlib.sha256(raw).hexdigest(), + transport_tau=43,ordered_frame_bases_match=True,all_ports_match=True, + transported_centers=centers,source_centers=[r for r in centers if r=2*v} + for e in w['precondition']:apply(e,dirt) + compensation=[['add',y,k,-a.numerator,a.denominator,[]] for y in range(v,2*v) for k,a in sorted(dirt[y].items())] + entering=set(map(int,w.get('start_extra',{})));lowends=set(map(int,w.get('helper_final',{}))) + coldends=lowends-entering + require(not any(e[2] in entering for e in compensation),'nonzero entrance response') + require(not any(r in entering|coldends for e in w['precondition']+compensation for r in registers(e)), 'pre-wrapper touch of residual helper') + require(all(e[-1]==[] for e in w['precondition']+compensation),'nonzero frame precondition') + early=w.get('early_cleanup',[]);earlyids={i for i,U in early} + require(len(earlyids)==len(early),'duplicate early cleanup gate') + tail=[w['cleanup'][i][:-1]+[U] for i,U in early] + cleanup=[e for i,e in enumerate(w['cleanup']) if i not in earlyids] + prefix=w['precondition']+compensation+main + program=prefix+tail+cleanup + for dual in (False,True): + actual=ident() + for e in program:apply(e,actual,dual) + expected=ident() + for t in range(v):expected[t if dual else v+t][v+t if dual else t]=F(-1 if dual else 1) + bad=[i for i in range(n) if actual[i]!=expected[i]] + require(not bad,'all-column endpoint failure '+str((dual,bad[:8]))) + print('endpoint', 'dual' if dual else 'forward','PASS',flush=True) + full=basis([1< 2*max(H)**2, 'halving guard') + rows = [] + for z, accept in [(lower, True), (lower+Q(1, 10**24), False)]: + l, u = M.moment(H, m, W, z, bad) + ll, uu = B.moment(m, W, list(H.items()), z) + if bad: + fl, fu = B.moment(m, W, [(1, 32*m*m*sum(H.values()))], z) + ll, uu = ll+fl/10**16, uu+fu/10**16 + require((u < 1 and uu < 1) if accept else (l > 1 and ll > 1), 'two exact moment signs') + rows.append(dict(endpoint=str(z), accept=accept, + mercator_residual=[str(l-1), str(u-1)], + base_two_residual=[str(ll-1), str(uu-1)])) + return rows + + +def outer47(c, b, engine): + eta = beta = Q(1, 10**24) + s = min(c, (1-beta)*b)-Q(1, 10**27) + require(0 < s < c and s < (1-beta)*b, 'strict common saving') + a = Q(384599, 10**10) + for _ in range(7): + old = a + a = (1-s)*s+s*old + gap = min(s-a, 1-a-s, 1-a-s*(1-old), 1-s) + require(old < a < s < 1-a and gap > 0, 'bootstrap gap') + ceil = lambda x: -(-x.numerator//x.denominator) + cut = max(ceil(36/gap**2), ceil(2*(4+512)/gap)) + require(cut*gap**2 >= 36 and cut*gap >= 2*(4+512), 'finite bootstrap cutoff') + q = a*(1-2*eta) + margin = (1-eta)*q/(1+q) + ticks = margin*10**18 + k = Q((ticks.numerator-1)//ticks.denominator, 10**18) + bridge = {'semantic': {'C0': {'base': 2, 'exponent': 210000}, 'strict_literal_gap': 1}, + 'rows': {'degree_gap': Q(10**6)-Q(51*20161, 25)}} + result = engine.assembly(a, b, bridge, k, eta=eta, beta=beta) + require(len(result['strict_constraints']) == 47, '47 outer constraints') + require(all(x > 0 for x in result['strict_constraints'].values()), 'strict outer constraints') + rejected = [] + for name, kk, ee, be in [('next_grid', k+Q(1, 10**18), eta, beta), + ('zero_eta', k, Q(0), beta), ('zero_beta', k, eta, Q(0)), + ('unit_beta', k, eta, Q(1))]: + try: + engine.assembly(a, b, bridge, kk, eta=ee, beta=be) + except AssertionError: + rejected.append(name) + else: + raise RuntimeError('accepted negative control: '+name) + return dict(complex_b=str(b), bit_c=str(c), kappa=str(k), kappa_decimal=decimal(k), + binding='bit' if c < (1-beta)*b else 'complex', + strict_constraints_passed=47, controls_rejected=rejected) + + +def main(): + require(__debug__, 'Do not use python -O: the retained outer engine requires assertions') + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--main', type=Path, required=True, help='Pinned main checkout') + parser.add_argument('--profile', type=Path, default=HERE.parent/'data/PLAN.json', + help='Raw profile or a JSON object containing profile/global_profile') + parser.add_argument('--output', type=Path, required=True) + parser.add_argument('--headroom-c', help='Optional alternative bit saving, for comparison only') + args = parser.parse_args() + inputs = json.loads((HERE.parent/'data/UPSTREAM-PINS.json').read_text()) + selected = [SOURCE/'engines'/(n+'.py') for n in ('moment', 'base_two_moment', 'outer')] + for relative in selected: + require(sha(args.main/relative) == inputs[relative.as_posix()], 'pinned input '+str(relative)) + M, B, A = [load(args.main/SOURCE/'engines', n) for n in ('moment', 'base_two_moment', 'outer')] + supplied = json.loads(args.profile.read_text()) + H = {int(r): n for r, n in supplied.get('profile', supplied.get('global_profile', supplied)).items()} + bit_data = BIT_PATH.read_bytes() + require(hashlib.sha1(b'blob '+str(len(bit_data)).encode()+b'\0'+bit_data).hexdigest() == BIT_BLOB, 'PR589 blob pin') + record = json.loads(bit_data) + bit = record['nine'] + require('nine-stage' in bit['pipeline'] and '32 replicas' in bit['pipeline'], 'nine-stage bit record') + bit_deficit = pr589_deficit(record['word'], bit['bit']['live']) + require(sum(int(r)*n for r, n in bit['profile'].items()) == bit['bit']['rank_mass'], 'bit rank mass') + c = Q(bit['bit_lower']) + bit_checks = moment_checks(M, B, {int(r): n for r, n in bit['profile'].items()}, + 64, bit['bit']['live'], c, bit_deficit, True) + prices = {} + for mode, bad in [('native', False), ('conservative', True)]: + root = M.certify(H, 73, 7168, bad) + root = {key: root[key] for key in ('lower', 'upper', 'lower_endpoint_residual_upper', + 'upper_endpoint_residual_lower', 'strict_rational_signs')} + b = Q(root['lower']) + row = dict(root=root, exact_moments=moment_checks(M, B, H, 73, 7168, b, 2560, bad), + outer_with_bit=outer47(c, b, A)) + if args.headroom_c: + alternate = outer47(Q(args.headroom_c), b, A) + require(alternate['kappa'] == row['outer_with_bit']['kappa'], 'headroom comparison changed kappa') + row.update(outer_with_alternative_bit_rate=alternate, same_kappa_with_either_bit_rate=True) + prices[mode] = row + native_k = Q(prices['native']['outer_with_bit']['kappa']) + result = dict(status='PASS_FROZEN_PROFILE_TWO_EXACT_ENGINE_AND_OUTER47_CROSSCHECK', + profile_input_file=args.profile.name, profile_input_sha256=sha(args.profile), + global_profile=H, live=7168, m=73, rank_mass=sum(r*n for r, n in H.items()), deficit=2560, + prices=prices, bit_supplier_pr=589, bit_deficit=bit_deficit, bit_moments_with_surcharge=bit_checks, + gain_over_pr635_percent=decimal(100*(native_k/Q('0.001636241501576388')-1)), + input_sha256={**{relative.as_posix(): sha(args.main/relative) for relative in selected}, 'package:inputs/PR589-EXPECTED.json': sha(BIT_PATH)}, + scope='Independent arithmetic for the exact nominated all72 profile. Complete local, controller and finite invoice admission are separately replayed by the package driver; this receipt does not replace them. The cited PR589 bit supplier is unchanged and its exceptional-residue surcharge is retained. Any alternative c is only a headroom comparison.') + args.output.write_text(json.dumps(result, indent=2)+'\n') + print(result['status'], prices['native']['outer_with_bit']['kappa_decimal'], result['gain_over_pr635_percent']) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/review_guards.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/review_guards.py new file mode 100644 index 0000000000..086dcf3d11 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/independent/review_guards.py @@ -0,0 +1,46 @@ +"""Reproduce the assertion-preservation part of the independent guard review. + +This compares complete assertion ASTs in their traversal order. It supplements +the semantic centre-interface argument in CENTRE-GUARD-REVIEW.md. +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. +""" +import argparse +import ast +import hashlib +import json +from pathlib import Path + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--pr635', type=Path, required=True, help='Pinned PR635 checkout or supplier directory') + parser.add_argument('--delta', type=Path, default=Path(__file__).resolve().parents[1]) + parser.add_argument('--output', type=Path, required=True) + args = parser.parse_args() + old = args.pr635 + if not (old/'code/assemble.py').exists(): + old = old/'research/complex-571-cold14-st2' + names = ['assemble.py', 'invoice_allcold.py', 'bind_providers_portable.py', + 'generated_identity.py', 'witness.py'] + records = [] + for name in names: + a, b = (old/'code'/name).read_bytes(), (args.delta/'code'/name).read_bytes() + assertions = lambda data: [ast.dump(n, include_attributes=False) for n in ast.walk(ast.parse(data)) + if isinstance(n, ast.Assert)] + aa, bb = assertions(a), assertions(b) + if aa != bb: + raise RuntimeError('Assertion sequence changed: '+name) + records.append(dict(file='code/'+name, baseline_sha256=hashlib.sha256(a).hexdigest(), + new_sha256=hashlib.sha256(b).hexdigest(), byte_identical=a == b, + assert_count=len(aa), all_assertions_identical_in_order=True)) + if records[0]['assert_count'] != 91: + raise RuntimeError('The expected PR635 assembly has 91 assertions') + result = dict(status='PASS_PR635_ADMISSION_ASSERTION_PRESERVATION', files=records, + centre_interface_review='CENTRE-GUARD-REVIEW.md', + scope='Exact syntax preservation for all admission assertions in these five files. The changed emitter/controller centre boundary and single-provider controls require the separate semantic review; assertion counts alone do not prove them.') + args.output.write_text(json.dumps(result, indent=2)+'\n') + print(result['status'], [r['assert_count'] for r in records]) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/inputs/PR589-EXPECTED.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/inputs/PR589-EXPECTED.json new file mode 100644 index 0000000000..e293ddc557 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/inputs/PR589-EXPECTED.json @@ -0,0 +1,222 @@ +{ + "word": { + "file": "tune/bitE8mut-p111-tuned.json.gz", + "file_sha256": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "content_sha256": "5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b", + "v": 111, + "R": 439, + "punctured": [ + 10, + 15, + 51, + 53, + 56, + 66, + 72, + 89, + 111 + ], + "retained_totals": 9, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ], + "decoder_constant": 63, + "gates": { + "D": 111, + "A": 2075, + "B": 712, + "C": 2574 + }, + "local_histogram": { + "1": 1323, + "2": 1342, + "3": 79, + "4": 44, + "5": 102, + "6": 11, + "7": 19 + }, + "legality": { + "records": 27234, + "common_frame_ADDs": 24305, + "rank_mass": 5129 + }, + "five_stage_columns": 883, + "five_stage_payload_bits": 93, + "nine_stage_columns": 1327, + "nine_stage_payload_bits": 93, + "eleven_stage_columns": 1549, + "eleven_stage_payload_bits": 93, + "base_content_sha256": "d0df3c89ae84989f4045ba1681a5e2e9fcdfa38ed0301c8abf5185537155cbe3" + }, + "interface": { + "hypotheses": { + "H1_no_target_feeds_z": true, + "H2_D_frame0_targets_from_helpers": true, + "H3_A_z_only_scatter_targets_B_split": true, + "H4_C_literal_reverse_at_full": true, + "H5_V_identity": true + }, + "conclusion": { + "U_block_form": true, + "J_identity": true, + "K_equals_D": true, + "C_is_U_inverse": true + }, + "interleaving": { + "z_gates_A": 2075, + "source_writes_A": 0, + "z_gates_B": 499, + "source_writes_B": 483, + "helper_writes_B": 16, + "sources_rewritten_B": 108, + "B_z_write_frame_dims": { + "4": 388, + "6": 111 + }, + "B_z_operand_kinds": { + "helper<-helper": 3, + "helper<-source": 13, + "source<-helper": 108, + "source<-source": 375 + }, + "B_z_operand_kinds_by_dim": { + "dim4:helper<-source": 13, + "dim4:source<-source": 375, + "dim6:helper<-helper": 3, + "dim6:source<-helper": 108 + }, + "B_z_writes_after_a_target_read_of_the_same_register": 454, + "B_target_reads_of_registers_rewritten_earlier_in_B": 111, + "target_reads_of_targets": 0, + "cleanup_gates": 2574 + } + }, + "nine": { + "pipeline": "PR #510 (PR #463 nine-stage template, 32 replicas, PR #442 hosting, PR #493 outer assembly), parameterised for v <= 120 by code/adapt9p.py", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_lower_decimal": "0.001733427039589844234749", + "profile": { + "1": 381024, + "2": 400416, + "3": 22752, + "4": 26880, + "5": 29376, + "6": 17376, + "7": 26784, + "42": 288 + }, + "bit": { + "live": 28416, + "physical": 28425, + "maxchild": 42, + "rank_mass": 1808352, + "hosted_residuals": 126432, + "bank_assignments": 0, + "prefix_bits": 177, + "charged_prefix_bits": 192, + "coefficient_bits": 177, + "two_level_coefficient_bits": 393, + "charged_two_level_coefficient_bits": 512, + "row_coefficient": 18355, + "halving_depth": 2 + }, + "kappa": { + "pr548": { + "kappa": "49718254847979/31250000000000000", + "kappa_decimal": "0.001590984155135328", + "complex_lower": "796759709641153381751/500000000000000000000000", + "binding_component": "complex" + }, + "pr544": { + "kappa": "397677800014309/250000000000000000", + "kappa_decimal": "0.001590711200057236", + "complex_lower": "31864911873350496687/20000000000000000000000", + "binding_component": "complex" + }, + "pr535": { + "kappa": "793733736881443/500000000000000000", + "kappa_decimal": "0.001587467473762886", + "complex_lower": "1589991533606044174031/1000000000000000000000000", + "binding_component": "complex" + }, + "pr531": { + "kappa": "1517760977820331/1000000000000000000", + "kappa_decimal": "0.001517760977820331", + "complex_lower": "304013615566499291631/200000000000000000000000", + "binding_component": "complex" + } + } + }, + "eleven": { + "pipeline": "PR #493 (PR #445 geometry, PR #472 emitter, audit and invoice, PR #442 hosting), parameterised by PR #545's code/adapt.py", + "bit_lower": "855475950388791987811/500000000000000000000000", + "bit_lower_decimal": "0.001710951900777583975622", + "profile": { + "1": 116424, + "2": 121648, + "3": 6952, + "4": 7424, + "5": 8976, + "6": 4520, + "7": 8776, + "56": 2600 + }, + "bit": { + "live": 8880, + "physical": 8889, + "maxchild": 56, + "rank_mass": 689304, + "hosted_residuals": 38632, + "prefix_bits": 4304, + "charged_prefix_bits": 4352, + "coefficient_bits": 4304, + "three_level_coefficient_bits": 12966, + "charged_three_level_coefficient_bits": 12992, + "row_coefficient": 19431, + "halving_depth": 3 + }, + "emitted_program_sha256": "793b6f40c9aa4b8db57fec0ac0973e16884dae28707e482ee8f7a2349a5d5a4b", + "kappa": { + "pr548": { + "kappa": "49718254847979/31250000000000000", + "kappa_decimal": "0.001590984155135328", + "complex_lower": "796759709641153381751/500000000000000000000000", + "binding_component": "complex" + }, + "pr544": { + "kappa": "397677800014309/250000000000000000", + "kappa_decimal": "0.001590711200057236", + "complex_lower": "31864911873350496687/20000000000000000000000", + "binding_component": "complex" + }, + "pr535": { + "kappa": "793733736881443/500000000000000000", + "kappa_decimal": "0.001587467473762886", + "complex_lower": "1589991533606044174031/1000000000000000000000000", + "binding_component": "complex" + }, + "pr531": { + "kappa": "1517760977820331/1000000000000000000", + "kappa_decimal": "0.001517760977820331", + "complex_lower": "304013615566499291631/200000000000000000000000", + "binding_component": "complex" + } + } + }, + "base": { + "nine_bit_lower": "1733052823330162099157/1000000000000000000000000", + "nine_bit_lower_decimal": "0.001733052823330162099157", + "eleven_bit_lower": "427652201524503168379/250000000000000000000000", + "eleven_bit_lower_decimal": "0.001710608806098012673516", + "note": "PR #555's EXPECTED.json (untuned word); the tune/ pipeline is the same, with the same frozen hosting selections" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/verify_global.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/verify_global.py new file mode 100644 index 0000000000..7ab79e3062 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/verify_global.py @@ -0,0 +1,112 @@ +"""Replay the changed global admission against pinned upstream dependencies. + +The local directory must contain the fresh canonical/native/phase/wrapper +artifacts produced by construction/reproduce.py. Frozen evidence may be used +for a short admission-only replay. No optimizer runs during this verifier. +""" +import argparse +import hashlib +import json +import os +from pathlib import Path +import subprocess +import sys +import time + +assert __debug__, 'Assertions required' +PACKAGE = Path(__file__).resolve().parent + + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def dump(path, value): + Path(path).write_text(json.dumps(value, indent=2) + '\n') + + +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--main', type=Path, required=True, help='Pinned CrocSwap main checkout') +ap.add_argument('--local', type=Path, required=True, help='Rebuilt or frozen native gauge44 directory') +ap.add_argument('--work', type=Path, required=True, help='New output directory') +ap.add_argument('--discover', action='store_true', help=argparse.SUPPRESS) +args = ap.parse_args() +main, local, work = args.main.resolve(), args.local.resolve(), args.work.resolve() +assert not work.exists(), 'Output directory must be new' +source = main/'research/complex-k492-owner-repair/vendor/multicold' +baseline = main/'research/community-k492-audit/pr622/replay/baseline558' +vendor = source/'vendor/pr558/vendor/pr552/complex-global/vendor531' +pins = PACKAGE/'data/UPSTREAM-PINS.json' +if pins.exists(): + for rel, expected in json.loads(pins.read_text()).items(): + assert sha(main/rel) == expected, 'Upstream dependency changed: ' + rel +else: + assert args.discover, 'Missing upstream pins' + paths = list((baseline/'complex-global/base').rglob('*')) + paths += [source/'code/run_portable.py', source/'inputs/PR543-EXPECTED.json', + vendor/'evidence/audit/PREFIX-AND-INVOICE.json'] + paths += [source/'vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz', + baseline/'complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz', + vendor/'code/prepare_supplier_base.py'] + paths += [source/'engines'/name for name in ('moment.py', 'base_two_moment.py', 'outer.py')] + dump(pins, {p.relative_to(main).as_posix(): sha(p) for p in sorted(paths) if p.is_file()}) +work.mkdir(parents=True) +env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', + PYTHONINTMAXSTRDIGITS='0', MULTICOLD_SOURCE=str(source), + GAIN_PR564_SOURCE=str(source), WITNESS_SPEC=str(PACKAGE/'data/SPEC.json')) +env.pop('PYTHONOPTIMIZE', None) +env.pop('WITNESS_DISCOVER', None) +env.pop('WITNESS_RECORD', None) +if args.discover: + env.update(WITNESS_DISCOVER='1', WITNESS_RECORD=str(work/'WITNESS-RECORD.jsonl')) +stages = [] + + +def run(name, script, *arguments): + started = time.monotonic() + log = work/(name + '.log') + with log.open('w') as stream: + result = subprocess.run([sys.executable, '-B', str(source/'code/run_portable.py'), + str(script), *map(str, arguments)], env=env, + stdout=stream, stderr=subprocess.STDOUT) + stages.append(dict(name=name, seconds=round(time.monotonic()-started, 3), + exit_code=result.returncode, log_sha256=sha(log))) + dump(work/'STAGES.json', stages) + if result.returncode: + raise RuntimeError(name + ' failed:\n' + log.read_text()[-7000:]) + print('PASS', name, stages[-1]['seconds'], flush=True) + + +code = PACKAGE/'code' +global_dir = work/'global' +run('restore-parent', code/'restore_parent.py', '--source', source, + '--baseline', baseline, '--out', work/'parent558') +run('bind', code/'bind_providers_portable.py', '--baseline', work/'parent558', + '--provider', 'gauge44='+str(local), '--plan', PACKAGE/'data/PLAN.json', '--out', global_dir) +run('emit', code/'emit_allcold.py', '--base', global_dir/'base', + '--owners', PACKAGE/'data/OWNERS.json.gz', '--plan', global_dir/'PLAN.json', '--out', global_dir/'hosted') +run('audit', code/'audit_allcold.py', global_dir/'base', global_dir/'hosted', + global_dir/'audit/ASYNC-AUDIT.json', '--mutation-controls') +run('invoice', code/'invoice_allcold.py', '--base', global_dir/'base', + '--hosted', global_dir/'hosted', '--audit', global_dir/'audit', '--out', global_dir/'audit', + '--retained-invoice', vendor/'evidence/audit/PREFIX-AND-INVOICE.json') +run('assembly', code/'assemble.py', source, global_dir, work/'ASSEMBLY.json') +if not args.discover: + run('admission-controls', code/'assembly_controls.py', '--source-package', source, + '--owner', global_dir/'audit/OWNERS-AND-PROFILE.json', + '--invoice', global_dir/'audit/PREFIX-AND-INVOICE.json', '--out', work/'ADMISSION-CONTROLS.json') + run('bit-supplier-controls', code/'bit_supplier_controls.py', '--source-package', source, + '--owner', global_dir/'audit/OWNERS-AND-PROFILE.json', + '--invoice', global_dir/'audit/PREFIX-AND-INVOICE.json', '--out', work/'BIT-SUPPLIER-CONTROLS.json') + bit_controls = json.loads((work/'BIT-SUPPLIER-CONTROLS.json').read_text()) + assert bit_controls['status'] == 'PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS' + assert len(bit_controls['rejected_controls']) == 12 and bit_controls['derived_deficit'] == 10272 +result = json.loads((work/'ASSEMBLY.json').read_text()) +dump(work/'REPLAY.json', dict(status='PASS_GAUGE44_DISCOVERY' if args.discover else 'PASS_GAUGE44_STRICT_GLOBAL_REPLAY', + kappa=result['kappa'], kappa_decimal=result['kappa_decimal'], + complex_lower=result['complex_lower'], bit_lower=result['bit_lower'], + bit_supplier=result['bit_supplier'], + gain_over_pr635_percent=result['gain_over_pr635_percent'], + spec_sha256=sha(PACKAGE/'data/SPEC.json'), stages=stages, + scope=result['scope'])) +print(result['status'], result['kappa_decimal'], result['gain_over_pr635_percent'], flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/verify_manifest.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/verify_manifest.py new file mode 100644 index 0000000000..8c2441d392 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-leaver8/verify_manifest.py @@ -0,0 +1,19 @@ +"""Verify the submitted package's exact file inventory and SHA256 bindings.""" +from hashlib import sha256 +import json +from pathlib import Path + +root = Path(__file__).resolve().parent +expected = json.loads((root / 'MANIFEST.json').read_text()) +actual = { + p.relative_to(root).as_posix(): sha256(p.read_bytes()).hexdigest() + for p in root.rglob('*') + if p.is_file() and '__pycache__' not in p.parts + and p != root / 'MANIFEST.json' +} +if actual != expected: + missing = sorted(expected.keys() - actual.keys()) + extra = sorted(actual.keys() - expected.keys()) + changed = sorted(k for k in expected.keys() & actual.keys() if expected[k] != actual[k]) + raise SystemExit(f'Manifest mismatch: missing={missing}, extra={extra}, changed={changed}') +print(f'PASS package manifest: {len(actual)} files') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/CONSTRUCTION.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/CONSTRUCTION.md new file mode 100644 index 0000000000..fa15676366 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/CONSTRUCTION.md @@ -0,0 +1,210 @@ +# Gauge44: a changed factory forward map with 44 rank-four cold ends + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. This note describes the new complex local construction. The package's global evidence supplies the resulting global bound and retains the upstream conditional assumptions. + +## 1. Exact result and comparison + +The final word has 112 source ports, 112 target ports and 492 helper registers. It implements the same arbitrary-dirt scalar endpoint as the upstream word, + +$$ +(X,Y,H)\longmapsto(X,Y+X,H), +$$ + +and its inverse-transpose orientation is checked separately. All 204 nonzero entrance frames remain valid. The new ending set consists of **44 cold helpers at rank-four frames**, together with the 34 entering-helper ends inherited from the JP8 HPE stage. + +The precise comparison is with the JP8 provider reconstructed from PR635, commit `a6895a69f8ad98ab45777b03e9e6f48888c39f6f`: + +| Local quantity | PR635 JP8 | Gauge44 | +|---|---:|---:| +| Helpers | 492 | 492 | +| Nonzero entrance frames | 204 | 204 | +| Rank-four cold ends | 22 | 44 | +| Rank-seven cold ends | 2 | 0 | +| Rank-eight cold ends | 4 | 0 | +| Entering helpers ending below FULL | 36 | 34 | +| Total residual helper width | 3894 | **3794** | +| Local paid rank mass | 5750 | **5650** | + +Thus the new word saves **100 units of residual width per invocation** against the complete PR635 provider. It replaces that provider's cold-end construction; the old six higher-rank cold ends and two additional entering ends are not added to the new count. + +The exact paid-child profiles are: + +| Child rank | PR635 count | Gauge44 count | +|---:|---:|---:| +| 1 | 2518 | 2514 | +| 2 | 402 | 404 | +| 3 | 448 | 448 | +| 4 | 164 | 160 | +| 5 | 68 | 56 | +| 6 | 4 | 0 | +| 8 | 8 | 8 | + +The final residual-width inventory is `{4:52, 5:48, 7:34, 8:114, 9:244}`. Both the profile and the inventory are recomputed from the literal native frame chains. They are not inferred from the nominal number of ended helpers. + +## 2. What changes in the forward factory + +The inherited K-triangle schedule and its 492-helper allocation remain the starting construction. Within each of the fourteen eight-source packet factories, three changes alter the arbitrary-dirt forward map while retaining the required clean packet values. + +### A. Exchange a source with an equal clean copy + +After the sixteen initial copy gates, local source position `j` and its two helper copies have clean values `(x_j,x_j,x_j)`. For positions `j = 4,5,6,7`, exchange the original source register with its second helper copy. The exact register pair in the constructor is `mp[j]` and `mp[2*j+9]`. + +For arbitrary helper dirt the triple is instead + +$$ +(x_j,\;x_j+h_{j,1},\;x_j+h_{j,2}). +$$ + +The exchange changes where the second dirty direction enters the subsequent factory. It does not change any clean operand. Both exchanged registers already have the same rank-one frame, so the exchange adds no frame climb. Each exchange is emitted as three additions and one sign change; these scalar operations remain part of the finite implementation invoice. + +This is a change of the forward map, not an output relabeling. In particular, the inverse recovery functional for the original source changes from the original branch to a different combination of the three equal-clean branches. That changes which cold input directions can have their entire final support inside a low frame. + +### B. Change the complement to the four coordinate totals + +Eight retired factory rows already span the eight source coordinates. The first four rows of their replacement basis are the four required coordinate totals. The remaining four rows are chosen by exact row-rank extension, first using the ordered clean linear forms recorded in `construction/COMPLETION-PRIORITY.json`, then using coordinate rows if an extension is still needed. + +These candidate forms are the future low-frame leaver forms used during discovery. The frozen priority data are the complete input to the final constructor: no discovery search is run in reproduction. Every accepted row must increase the rational rank; the resulting eight-by-eight basis is explicitly applied by elementary operations. + +All eight retired registers are already at the block's rank-four frame. Consequently this basis replacement also adds no frame climb. It gives the low final rows more independent linear combinations that annihilate the original source data. + +### C. Place coordinate totals on the available source carriers + +The retired registers are ordered with source registers first. Three available source carriers and one helper carry the four coordinate totals, leaving the four complementary rows on physical helper registers. This lets the new cold directions end on helper wires under the unchanged native endpoint interface. + +A carrier permutation alone does not increase the available cold space. Its role here is to realize the independent directions created jointly by the source-copy exchange and the new complementary basis. + +## 3. Exact cold-space calculation + +Let `P` be the non-target forward matrix after parts A and B and the 34 inherited HPE tail gates. It has 604 rows and columns: 112 original sources and 492 helpers. Let `J` be the 316 protected initial columns consisting of the 112 original sources and all 204 entering helpers. + +For a block frame `F`, let `I` be every non-target output register whose current frame is contained in `F`. Source output rows are included in this set. Define + +$$ +L=\operatorname{leftker} P[I,J],\qquad +K=\ker P^{-1}[J,I]. +$$ + +Rows of `L` are low output linear forms with no protected initial dependence. Columns of `K` are low-supported output directions whose inverse images have no protected component. The rank of the pairing `LK` counts the simultaneously usable cold directions in this fixed forward word. + +The changed forward map has the following exact block data: + +| Block indices | Number of blocks | Low registers `|I|` | `dim L` | `dim K` | `rank(LK)` | +|---|---:|---:|---:|---:|---:| +| 0, 1, 2, 11, 12, 13 | 6 | 6 | 2 | 4 | **2** | +| 3 through 10 | 8 | 8 | 4 | 4 | **4** | + +The count is therefore `6*2 + 8*4 = 44`. The fixed upstream rank-four cold construction supplied one and two directions respectively, for `6*1 + 8*2 = 22`. + +The complement change by itself improves the available low annihilating rows but leaves the inverse-support obstruction. The source-copy exchanges remove that obstruction: `K` has dimension four in every block and pairs with all the available rows of `L`. + +## 4. Realizing the directions with legal dyadic operations + +`construction/build_gauge_cold44.py` recomputes these spaces over exact rational numbers. It selects columns of `K` and normalizes them to a matrix `U` satisfying + +$$ +LU=I_r, +\qquad q=P^{-1}[:,I]U. +$$ + +The constructor checks that `q` is supported entirely on that block's sixteen initially cold factory helpers, denoted `H_b`. Put + +$$ +R_b=LP[I,H_b]. +$$ + +Then `R_b q[H_b,:] = I_r`. A sixteen-by-sixteen input basis `Q_b` places the columns `q[H_b,:]` at the designated ended-helper positions and fills the other columns with a basis of `ker R_b`. The resulting input basis is explicitly invertible. + +For the low-frame output transformation, the ended-helper rows are replaced by the rows of `L`; each remaining low row `i` becomes + +$$ +e_i-U_iL. +$$ + +The actual chosen helper positions give an invertible tail matrix. Its nonsingularity and dyadic implementation are checked by exact elimination, rather than assumed from a dimension count. The construction receipt records every `Q_b`, tail matrix and selected endpoint. + +Every `Q_b` is emitted at frame zero, at the head of A **after** the entry normalization wrappers. Every low tail is emitted at its block frame. The remaining cleanup is rebuilt as an exact dyadic Gauss-Jordan inverse on the non-ended registers at FULL. It is not obtained by blindly reversing a changed partial schedule. + +Before forming the FULL inverse, the constructor verifies both the row and the column identity of each of the 78 ended helpers. Thus no protected data or other helper dirt remains in an ended helper, and its initial dirt remains nowhere else. The FULL inverse skips these isolated rows and columns entirely. + +The realized word has: + +| Construction component | Scalar gates | +|---|---:| +| Frame-zero helper premix | 1489 | +| New rank-four tail | 60 | +| Inherited HPE tail | 34 | +| Refactored FULL inverse | 28056 | +| Additional target compensation after wrappers | **0** | + +All selected new cold directions have zero target response. The independent scalar auditor nevertheless recomputes the complete existing dirty-response compensation, obtaining 7348 additions, and checks both orientations on all 716 input columns. + +Relative to the HPE-stage word before any cold-end construction, the aggregate chain delta is `N_1 += 44, N_6 -= 44`, reducing rank mass and residual width by 220. PR635 had already saved 120 units through its complete cold/extra-HPE construction. The net new saving is therefore 100. There is no omitted cost for lifting the low tails: their rank-one increments are included explicitly. + +## 5. Native interface and validation + +The transport preserves the exact ordered list of 112 ports and the exact ordered eight center frames. The center carriers change because some totals now reside on sources. In native coordinates they are + +``` +[92, 57, 81, 224, 11, 240, 9, 256] +``` + +A global interface check must compare the ordered center frames and port geometry, and use the provider's actual center carriers. Equality of carrier numbers with an old provider is not a mathematical requirement. The local event ledgers explicitly clear all private center channels in both orientations. + +Completed checks for the frozen word include exact forward and inverse-transpose scalar replay on all 716 columns; every literal native frame chain; the 204 zero-response entrance conditions; the 44 cold and 34 entering endpoint cones; wrapper placement and normalized wrapper identities; both emitted local ledgers; and exact phase lowering for 3019 directed edges and 224 endpoint adapters. The independent audit does not import the new constructor. + +This local result does not by itself certify a global exponent. Physical whole-family owners, actual residual/spectator routing, idle remainders, global scalar assembly and the complete finite invoice are the separate global checks reported elsewhere in the package. + +## 6. Compact reproduction + +Only Python's standard library is needed for this construction and the retained local pipeline. Do not use `python -O`. The reproduction driver checks byte hashes of every named upstream input and the changed code, then checks the content hash after each construction step. Its two source checkouts are: + +| Argument | Repository commit | +|---|---| +| `--main` | `17ce0c79b7b51c2634b439ea5a2b754f09909693` | +| `--pr635` | `a6895a69f8ad98ab45777b03e9e6f48888c39f6f` | + +Starting from a clone of `https://github.com/CrocSwap/integer-mult-bounds` containing those commits, prepare detached worktrees: + +```bash +git -C integer-mult-bounds fetch origin main refs/pull/635/head +git -C integer-mult-bounds worktree add --detach ../integer-main 17ce0c79b7b51c2634b439ea5a2b754f09909693 +git -C integer-mult-bounds worktree add --detach ../integer-pr635 a6895a69f8ad98ab45777b03e9e6f48888c39f6f +``` + +From the directory containing those worktrees and this delta package, run: + +```bash +python -B research/gauge44-global/construction/reproduce.py \ + --main integer-main \ + --pr635 integer-pr635 \ + --out gauge44-reproduction +``` + +The default stops after regenerating the exact final scalar word and comparing the newly derived cold recipe with the frozen recipe. It rebuilds only the two short shadow steps needed by the four port transfers. It does not rerun the ancestor admission stack, search for a basis, optimize owners, or replay global assembly. + +Use `--frozen-cold` to splice the included recipe instead of re-deriving its small exact linear systems. Use `--until local` to add native transport, emitted ledgers, independent local replay and wrappers. Use `--until phases` to add the complete phase lowering. Every invocation needs a fresh output directory; these are alternatives, not resumable increments. On the research machine, exact cold derivation took about 2.6 seconds, native transport/ledgers/replay/wrappers about 41 seconds, and complete phase lowering about 198 seconds. + +The exact dependency chain is: + +1. Construct the changed raw R492 factory from the pinned Hamming inputs, frozen priority and pinned K-triangle schedule. +2. Apply the four inherited port stages. +3. Apply the inherited B-frame regroup and 34-HPE construction. +4. Derive the exact block premixes, cold44 tails and FULL inverse. +5. Optionally emit and check the native ledgers, wrappers and complete phase lowering. + +`construction/INPUTS.json` gives the input hashes and every intermediate content hash. The key decompressed content identities are: + +| Word | SHA-256 | +|---|---| +| Changed raw factory | `0ac47f92fc2e3f5aa457d78f7b8a5c785bf140c546932b9dfcd9e610ad319180` | +| Changed HPE forward | `42fb8b3aa314593fe976820cf65824f5fce0ee4f95281796992d4809709864cc` | +| Final cold44 word | `78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290` | +| Native canonical word | `e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f` | + +## 7. Attribution + +The original 504-helper factory and borrowed-register construction are icekylinx's PR531 lineage, prepared with OpenAI Codex/GPT assistance and retaining the earlier PR425/PR514 credits. The inherited K-triangle atom and frozen read schedule are credited in PR635 to AtomScout, a Claude Code research agent. The porting routine is credited there to Port480. This package does not claim those as new work. + +The reused JP8 ancestry includes the PR558/PR552 supplier, the earlier-cut and multicold kernels, and the joint prefix adapted from Dominik Scholz's PR571 work. Native HPE and cold-end transport, frame and wrapper machinery come from the credited PR635 lineage, including DreamingOfClouds, jeremykothe2, chafreaky and their disclosed assistants. The retained `construction/UPSTREAM-NOTICE.md` and `construction/LICENSE` preserve the upstream notice and Apache-2.0 license. + +The new contribution here is the combination of source-copy exchange, changed retired-row completion, source-carried coordinate totals, and the explicit exact cold44 realization. Those changes were developed for icekylinx with OpenAI GPT-6 Astra assistance. The upstream notices, proof scope and conditional assumptions continue to apply. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/LICENSE b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/LOCAL-VALIDATION.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/LOCAL-VALIDATION.json new file mode 100644 index 0000000000..5973645e1a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/LOCAL-VALIDATION.json @@ -0,0 +1,356 @@ +{ + "status": "PASS_LOCAL_INCREMENTAL_GAUGE44", + "python": "3.14.8", + "upstream_main": "17ce0c79b7b51c2634b439ea5a2b754f09909693", + "pr635": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f", + "construction_steps": [ + { + "step": "shadow-early", + "exit_code": 0, + "seconds": 0.322 + }, + { + "step": "shadow-prefix", + "exit_code": 0, + "seconds": 0.429 + }, + { + "step": "gauge-forward", + "exit_code": 0, + "seconds": 0.474 + }, + { + "step": "port0", + "exit_code": 0, + "seconds": 0.388 + }, + { + "step": "port1", + "exit_code": 0, + "seconds": 0.407 + }, + { + "step": "port2", + "exit_code": 0, + "seconds": 0.403 + }, + { + "step": "port3", + "exit_code": 0, + "seconds": 0.389 + }, + { + "step": "cold44-exact", + "exit_code": 0, + "seconds": 2.544 + }, + { + "step": "native", + "exit_code": 0, + "seconds": 3.63 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 2.759 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 15.924 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 2.706 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 186.772 + } + ], + "five_mathematical_local_artifacts_match_frozen_evidence": true, + "phase_edges": 3019, + "endpoint_adapters": 224, + "independent_scalar_audit": { + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "compressed_sha256": "0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 492, + "entering": 204, + "lowends": 78, + "coldends": 44, + "compensation_gates": 7348, + "local_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "checked_columns": 716, + "elapsed_seconds": 2.443164045999765, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." + }, + "independent_guard_review": { + "status": "PASS_PR635_ADMISSION_ASSERTION_PRESERVATION", + "files": [ + { + "file": "code/assemble.py", + "baseline_sha256": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "new_sha256": "7ac28118d69416e4fb67b61216285fb0823310b7635ce1b9025aa3f10119ef6a", + "byte_identical": false, + "assert_count": 91, + "all_assertions_identical_in_order": true + }, + { + "file": "code/invoice_allcold.py", + "baseline_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "new_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "byte_identical": true, + "assert_count": 67, + "all_assertions_identical_in_order": true + }, + { + "file": "code/bind_providers_portable.py", + "baseline_sha256": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "new_sha256": "7c9aba6c7f138d270852d859d902f905a15598b6263567700b5b08a153823cb6", + "byte_identical": false, + "assert_count": 22, + "all_assertions_identical_in_order": true + }, + { + "file": "code/generated_identity.py", + "baseline_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "new_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "byte_identical": true, + "assert_count": 4, + "all_assertions_identical_in_order": true + }, + { + "file": "code/witness.py", + "baseline_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "new_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "byte_identical": true, + "assert_count": 3, + "all_assertions_identical_in_order": true + } + ], + "centre_interface_review": "CENTRE-GUARD-REVIEW.md", + "scope": "Exact syntax preservation for all admission assertions in these five files. The changed emitter/controller centre boundary and single-provider controls require the separate semantic review; assertion counts alone do not prove them." + }, + "owner_replay": { + "status": "PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY", + "seed_mode": "included_frozen_seed", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "owners_gzip_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "scope": "Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate." + }, + "global_replay": { + "status": "PASS_GAUGE44_STRICT_GLOBAL_REPLAY", + "kappa": "1649483702558979/1000000000000000000", + "kappa_decimal": "0.001649483702558979", + "complex_lower": "1652208994368411824947/1000000000000000000000000", + "bit_lower": "413456747036699736067/250000000000000000000000", + "gain_over_pr635_percent": "0.8093060205252829126484020359439672024956960385078942889840023844750830", + "spec_sha256": "fee57674a7f36b30b1e7eb96a8f567a90a522217bc644c1a6a1f8bff85196fbf", + "stages": [ + { + "name": "restore-parent", + "seconds": 2.089, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind", + "seconds": 0.962, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 4.817, + "exit_code": 0, + "log_sha256": "90ce07d06a8eaffdb66201e8346021183e5a803395fb9f6d8ceb0e5ff068ef2c" + }, + { + "name": "audit", + "seconds": 19.625, + "exit_code": 0, + "log_sha256": "66b4abb2a88a4eaba8a8baa3585ef4aa819be5f8acb7947bae734b3478280456" + }, + { + "name": "invoice", + "seconds": 1.804, + "exit_code": 0, + "log_sha256": "5d10712d494304287749dd7a6c3369f9b707bba30e9f567b68230669dcf5418a" + }, + { + "name": "assembly", + "seconds": 0.808, + "exit_code": 0, + "log_sha256": "768d3215f1918117dc6c33b4cfeaf0b5f5da9ba5c77178db4bb1d08d000e226f" + }, + { + "name": "admission-controls", + "seconds": 0.885, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the same cited unchanged PR543 bit supplier as PR635. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." + }, + "admission_mutations_rejected": 69, + "controller_mutations_rejected": 15, + "frozen_template_content_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "fresh_template_content_sha256": "a1692259fb5a06bbebdc1049a7f757c6d2fc79ff8c31ed0c25b38fe9f98ed051", + "template_comparison": { + "sole_changed_field": "async_schedule.source_plan_sha256", + "frozen_plan_sha256": "609adb126d7d3de2abdd9275f9015589c0b137d0d19821c2c3e7c1a8541c18d2", + "fresh_plan_sha256": "b2e4b1f063250c40e0087f77e896882c60f36ed8764e86ba1610dec9bdff7394", + "explanation": "Fresh phase review differs only in its measured seconds. Runtime provider binding consequently changes the plan byte hash. All remaining serialized template fields match exactly; each runtime hash is checked against its own file." + }, + "assembly_matches_frozen_rates_and_profile": true, + "post_replay_packaging": "Four files received trailing-whitespace cleanup only; complete parsed ASTs were checked unchanged. Constructor input pin refreshed. Admission assertion comparison rerun.", + "scope": "Changed construction and exact recipe, fresh native ledgers/wrappers/phases, independent scalar and guard audits, integer owner reproduction, strict global admission and independent pricing. No predecessor full replay, seed-discovery optimizer or PDF generation. Local Python 3.14; Python 3.11 is covered by CI." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/MANIFEST.json new file mode 100644 index 0000000000..6daa9abfd6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/MANIFEST.json @@ -0,0 +1,174 @@ +{ + "CONSTRUCTION.md": "7d96eb958a6b4274ea4c4c539b585f8ae2e89363b76aef930f90d2d513e164ea", + "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "LOCAL-VALIDATION.json": "f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e", + "NOTICE.md": "7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf", + "PROOF-NOTE-BARCH.md": "c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d", + "PROOF-NOTE-BIT.md": "dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7", + "PROOF-NOTE-FRAMES-X4.md": "39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036", + "PROOF-NOTE-LAYERS.md": "92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f", + "PROOF-NOTE-LEAVER.md": "e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3", + "PROOF-NOTE-NOTRI.md": "774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414", + "PROOF-NOTE-P6N.md": "cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d", + "PROOF-NOTE-PROMO.md": "c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae", + "PROOF-NOTE-SW4.md": "d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d", + "README.md": "bd4248499e577321f17aacba1d7815a5eb0f9cbe88faeb8fef38b71bdf3a684c", + "RESULT.json": "6cbc5f16cb2bdc279cf518b8670cedec1869069daa609a6803d4d377f13b813c", + "SOURCES.json": "abb903d9b46388f99325a3939eb68171ac163c66b4b62b7961ea46daa20a88f0", + "UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "construction/COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "construction/COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "construction/INPUTS.json": "edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99", + "construction/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "construction/NOTICE.md": "defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816", + "construction/REBUILD-CHECKS.json": "1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91", + "construction/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "construction/barch/LOCAL-PINS-barch-U8.json": "2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5", + "construction/barch/RECIPE-U8.json": "292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652", + "construction/barch/build_tri.py": "0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e", + "construction/barch/reproduce_barch.py": "19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1", + "construction/barch/run_controls.py": "42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476", + "construction/build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "construction/construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "construction/frames/FRAME-RECIPE-sw4.json": "a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473", + "construction/frames/LOCAL-PINS-frames-sw4.json": "bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f", + "construction/frames/build_frames.py": "200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb", + "construction/frames/frame_controls.py": "477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77", + "construction/frames/reproduce_frames.py": "dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832", + "construction/jx/LOCAL-PINS-jx-X4.json": "95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974", + "construction/jx/RECIPE-X4.json": "9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd", + "construction/jx/build_jx.py": "3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916", + "construction/jx/reproduce_jx.py": "5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c", + "construction/layers/build_pivot_swap.py": "8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8", + "construction/layers/layer_end_controls.py": "7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef", + "construction/layers/reproduce_layers.py": "435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e", + "construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz": "3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0", + "construction/layers_np/HPE-RECIPE-NP.json": "43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1", + "construction/layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "construction/layers_np/reproduce_np.py": "1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c", + "construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz": "17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4", + "construction/layers_p6n/P6N-SPEC.json": "132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1", + "construction/layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "construction/layers_p6n/reproduce_p6n.py": "aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca", + "construction/leaver/CHAIN-PINS-k8.json": "9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9", + "construction/leaver/CODED-CELLS-k8.json": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz": "6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33", + "construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz": "24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb", + "construction/leaver/FRAME-RECIPE-LV-k8.json": "b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065", + "construction/leaver/HPE-RECIPE-k8.json": "907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9", + "construction/leaver/LEAVER-PINS-k8.json": "ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6", + "construction/leaver/LEC-REASON-PINS-STACK-k8.json": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "construction/leaver/LEC-REASON-PINS-k8.json": "b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914", + "construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "construction/leaver/PROMO-RECIPE-k8.json": "bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83", + "construction/leaver/RECIPE-U8-k8.json": "51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e", + "construction/leaver/RECIPE-X4-k8.json": "4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1", + "construction/leaver/REGROUP-LEAVER-k8.json": "b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e", + "construction/leaver/TRI-LEAVER-k8.json": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "construction/leaver/build_frames_lv.py": "2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b", + "construction/leaver/cells-k8/CORE-01+.json": "3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c", + "construction/leaver/cells-k8/CORE-01-.json": "8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927", + "construction/leaver/cells-k8/CORE-23+.json": "53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d", + "construction/leaver/cells-k8/CORE-23-.json": "e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d", + "construction/leaver/cells-k8/CORE-45+.json": "ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9", + "construction/leaver/cells-k8/CORE-45-.json": "302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7", + "construction/leaver/cells-k8/CORE-67+.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "construction/leaver/cells-k8/CORE-67-.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "construction/leaver/cgx_leaver.py": "3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c", + "construction/leaver/layer_end_controls_leaver.py": "4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206", + "construction/leaver/reproduce_leaver.py": "831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30", + "construction/leaver/reproduce_leaver_chain.py": "2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5", + "construction/notri/PRIO6.json": "de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15", + "construction/notri/cgx.py": "3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418", + "construction/notri/cold44x.py": "f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296", + "construction/notri/port_stage_x.py": "38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7", + "construction/notri/reproduce_notri.py": "90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8", + "construction/promo/LOCAL-PINS-p6n-k4.json": "a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f", + "construction/promo/PROMO-RECIPE-p6n-k4.json": "fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90", + "construction/promo/build_promotion.py": "9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf", + "construction/promo/make_recipe.py": "ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122", + "construction/promo/promo_controls.py": "786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372", + "construction/promo/reproduce_promo.py": "f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026", + "construction/reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92", + "construction/slots/RECIPE-SLOTS-k8.json": "0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b", + "construction/slots/SLOT-PINS-k8.json": "55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2", + "construction/slots/verify_slots.py": "bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be", + "construction/sw4/LOCAL-PINS-sw4-P6k4.json": "3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327", + "construction/sw4/NOTES.md": "3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446", + "construction/sw4/SW4-RECIPE-P6k4.json": "fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa", + "construction/sw4/build_sw4.py": "9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66", + "construction/sw4/reproduce_sw4.py": "3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac", + "data/FRONTIER.json": "56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2", + "data/OWNERS.json.gz": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a", + "data/PLAN.json": "1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08", + "data/PREPARATION.json": "1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9", + "data/SPEC.json": "8e95ae8087124189cbd366d0e9d1c5ebededff536ff3501927b4b2a2e8dac70e", + "data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "evidence/ADMISSION-CONTROLS.json": "5ebcc945c53f8279ac3bb6249e1d46422b7c7ddeb41c580ab5cbb3ca886dcf28", + "evidence/ASSEMBLY.json": "847f339db218f62ffabacb4655ba4dc6e8a15f67014ca01b1146083f393b009f", + "evidence/BINDING.json": "f80ad585c9cf94989d459971189fbb176084aedbe27edf5b5cccc5c2a44de43b", + "evidence/CENTER-COMPATIBILITY.json": "c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3", + "evidence/LOCAL-STAGES.json": "64165b81b7119a2b23e99d3f3dfe8aa1702f373efe90d82d136c17786ffb6591", + "evidence/REPLAY.json": "45a6065c41df0c2b04e185b4727c7ad8eac5ebeb637dbb7bebffc184415b49a2", + "evidence/STAGES.json": "09d7c6daf1e93c58863267141dedc3873264d3baede0cddefda0d56ecb560458", + "evidence/audit/ASYNC-AUDIT.json": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662", + "evidence/audit/GLOBAL-PREFIX.json": "5a6fd0d91a650ad5aa830771fb4333b015f06bc4ded02807d65aee260ce9e671", + "evidence/audit/IDLE-REMAINDER-FRAMES.json": "95f5165a10dd187000dba9e55afbc1b7dce5a315cfedfa72e4f8344471149048", + "evidence/audit/OWNERS-AND-PROFILE.json": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "evidence/audit/PREFIX-AND-INVOICE.json": "14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582", + "evidence/global/ACTUAL-SIGMAS.json.gz": "bf3b7814b54b30c726cae1dfabd3c09211c8f34cc943534565b131a0006b483f", + "evidence/global/GLOBAL-TEMPLATE.json.gz": "f713f8e66aaeaebb8202fe72bf36c7d23497152497342c27892e0fda3092f95b", + "evidence/global/HOSTED.json": "60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e", + "evidence/global/IDLE-REMAINDER-FRAMES.json.gz": "734fd9bbe0afa2cc1e492bb7effef1aa8f0d8926ab1d9420d64c30045b30e784", + "evidence/layers/LOCAL-AUDIT-LAYERED.json": "a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff", + "evidence/leaver/CELL-MUTANTS-LV.json": "308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220", + "evidence/leaver/FRAME-CONTROLS-LV-k8.json": "9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd", + "evidence/local/CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "evidence/local/CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "evidence/local/CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12", + "evidence/local/FULL-WORD.json.gz": "0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e", + "evidence/local/INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "evidence/local/LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "evidence/local/LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "evidence/local/RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "evidence/local/SCALAR-FRAME-AUDIT.json": "cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb", + "evidence/local/WRAPPER-CHECKS.json": "84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7", + "hosting/PROOF.md": "45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0", + "hosting/README.md": "004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1", + "hosting/audit_frozen.py": "a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659", + "hosting/expand_owners.py": "0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70", + "hosting/frozen/FROZEN-AUDIT.json": "df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b", + "hosting/frozen/MAJORIZATION.json.gz": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "hosting/frozen/MANIFEST.json": "9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967", + "hosting/frozen/MATCHING-RECEIPT.json": "e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2", + "hosting/frozen/OWNERS.json.gz": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "hosting/frozen/REPRODUCTION.json": "8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81", + "hosting/frozen/SEED-OWNERS.json.gz": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "hosting/frozen/SEED-RECEIPT.json": "aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba", + "hosting/frozen/SEED-REPRODUCTION.json": "4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194", + "hosting/reproduce.py": "7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82", + "hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "independent/CENTRE-GUARD-REVIEW.md": "7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897", + "independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json": "9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9", + "independent/GAUGE44-GLOBAL-GUARD-REVIEW.json": "631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b", + "independent/GAUGE44-INDEPENDENT-PRICE.json": "6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683", + "independent/README.md": "25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89", + "independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "independent/price_profile.py": "d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf", + "independent/review_guards.py": "b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d", + "inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/NOTICE.md new file mode 100644 index 0000000000..30d0c8cd3c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/NOTICE.md @@ -0,0 +1,24 @@ +# Gauge44 attribution and scope + +New contributions by icekylinx, with OpenAI GPT-6 Astra assistance. +Local review and packaging used OpenAI Codex. Apache-2.0 applies; +the license is included. The full original PR635 notice is preserved as +UPSTREAM-NOTICE.md and construction/UPSTREAM-NOTICE.md. + +The new contribution is the changed source-branch gauge and retired-row +completion, source-carried coordinate totals, exact 44-cold-end realization, +and explicit all72 whole-family assignment using concave capacity matching +with integer majorization certificates. The center-carrier generalization +retains the exact ordered common frames and complete native local contract. +Independent local, price, interface and owner fixed-point checks are included. + +The construction retains the credited PR635 K-triangle and porting machinery, +earlier joint-prefix/HPE/frame ancestry and icekylinx's prior factory work. +#645 used the same cited PR543 bit supplier as PR635. This package (research/gauge44-leaver8) cites the merged PR589 bit supplier instead, with a derived rank-mass deficit (PROOF-NOTE-BIT.md); #645's retained PR543-based evidence is historical. It builds #645's word without K-triangles (PartialK) and stacks earlier community jp8 layers on it (G44Stack), adds the p6n ends (NoTriReopen), entrance promotions (BlockInvert) a read-set exchange (BRoute), chafreaky's #741 frames, JointXF's joint exchange, NewBArch's triangle-hybrid B rewrite and LeaverSAT's eight k8 leaver cells (with LeaverSAT2's frame re-optimisation); see README. All-size, realization, +hosting, precision/tape, analytic-transfer and bit H1-H5 assumptions remain +conditional. No upstream license, credit, source pin or AI disclosure is +replaced by this notice. + +PR641 and PR642 were checked as concurrent reported frontier comparisons. +Their endpoints and owner maps are not included here. See CONSTRUCTION.md, +hosting/PROOF.md, independent/ and README.md for the exact contribution scope. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BARCH.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BARCH.md new file mode 100644 index 0000000000..8cea5a6846 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BARCH.md @@ -0,0 +1,43 @@ +# PROOF-NOTE-BARCH: width-neutral triangle-hybrid B-delivery rewrite (U8) + +Construction by NewBArch (`construction/barch/`, builder `build_tri.py`, controls `run_controls.py`, recipe +`RECIPE-U8.json`). Driver: `construction/barch/reproduce_barch.py`, chained after `construction/jx`. + +## The move +On research/gauge44-frames-x's X4 word (`1e1d99ba…`), eight disjoint slots are rewritten. In each slot X an entering +copy E donates into a halves-copy X: 231 (E 450), 230 (E 452), 232 (E 454), 236 (E 456), 226 (E 451), 228 (E 453), 62 (E 455), 238 (E 457). That way, so that one target +read takes X + H in a single gate. A holder pair (for example 496/484) carries the value. Each holder is restored by a +low-end tail at its frame (early cleanup) and a FULL-cleanup restore. Entrance pre-reads keep the entering helper's +start value away from every target. + +The recipe is explicit, with every index referring to the X4 word: +- 40 B deletions; +- 40 B insertions, each with its frame; +- 32 explicit re-chosen B frames; +- 8 early-cleanup tails; +- 8 FULL-cleanup restores. + +The A section and X4's tail frames are untouched. The width is unchanged at 3778. The profile goes +{1:2548, 2:338, 3:430, 4:194, 5:56, 8:8} → {1:2548, 2:338, 3:446, 4:162, 5:72, 8:8}, a delta of {3:+16, 4:−32, 5:+16}. +The eight slots are additive (8 × 3.925e-8 ideal = 3.140e-7). Output word `090fd574…`. U8 contains B0's four slots +(231, 230, 226, 228) plus 232, 236, 62 and 238. + +## Checks rerun on every rebuild +- `build_tri.py` (standard library only) checks the base sha (`1e1d99ba…`) and the result sha (`090fd574…`). +- `run_controls.py` produces 38 outcomes, all required. The control set is pinned in `LOCAL-PINS-barch-U8.json`. + - C0 identity reproduces the input. + - The recipe word PASSes #645's independent `audit_local.py`. + - Four mutants must each FAIL `audit_local` with a pinned message, both globally and for each of the eight slots + (NAME@X): + - drop_restore: the holder is not restored, giving "all-column endpoint failure"; + - restore_full: the low-end restore is moved into the FULL cleanup, giving "all-column endpoint failure"; + - drop_preread: the inserted entrance pre-reads are omitted, giving "nonzero entrance response"; + - donation_after: the donation is placed after the target read, giving "nonzero entrance response". +- The per-end layer-end controls (`../layers_p6n/layer_end_controls.py`) reject 95. +- PR635's native chain runs, with the canonical word, local programs and Clifford recipes pinned. + +## Strict +NewBArch's strict replay: the #741 map (`G44Pack/m741`, byte-identical OWNERS) is rebound to the U8 locals with +`rewidth.py` and admitted with this package's own code (NEWWORD `admit645.py` on research/gauge44-frames-x's tree). +The result is κ 0.001661948695165034, +3.1404e-7 over research/gauge44-frames-x. The four-slot subset B0 strict-passes +at 0.001661791659578416 and the single slot V1 at 0.001661673902364948. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BIT.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BIT.md new file mode 100644 index 0000000000..da06360da0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-BIT.md @@ -0,0 +1,112 @@ +# PROOF-NOTE-BIT: citing the PR589 bit supplier with a derived rank-mass deficit (gauge44) + +This note is BitCap's `PROOF-NOTE-BIT.md` from `complex-571-cold14-k492-bit589`, adapted to the gauge44 package. It +covers the only verifier change relative to #645's package (`research/gauge44-global`): the bit supplier changes from +PR543 to PR589. The complex side is #645's construction, unchanged: supplier word, recipes and every complex check in +`code/assemble.py`. The only complex-side change is the repacked owner map (`data/PLAN.json`, `data/OWNERS.json.gz`), +with expected values re-derived in `data/SPEC.json`. + +## Changed sites + +The changes are in `code/assemble.py`, plus one new stage in `verify_global.py` and a new file +`code/bit_supplier_controls.py`. The independent (non-verifier) `independent/price_profile.py` is ported to PR589 as well. Every other `.py` file equals #645's. + +| # | site | before (#645) | after | +|---|---|---|---| +| S1 | bit input | `inputs/PR543-EXPECTED.json` from the multicold source, blob pin `b61d8598…` | `inputs/PR589-EXPECTED.json`, shipped in this package, blob pin `e293ddc5…`, through `load_bit` | +| S2 | bit deficit | literal `9984` | `bit_deficit(word, live)` = T(2Kv − L·cst), with L = 9, T = 32, K = (L−1)/2 = 4 | +| S3 | profile binding | (none) | Σ r·n of the bit profile = `bit.rank_mass`; moment width `BIT_M = 1 + 7L` asserted = 64 | +| S4 | pipeline binding | (none) | the record's `nine.pipeline` names the nine-stage template with 32 replicas | +| S5 | citation / receipt | input hash names the PR543 file | `bit_supplier` cites PR589 (head `a5afc8c6`, merged as `b3eb785a`, path `research/e8-bit-p111-tuned/tune/EXPECTED.json`) and records v = 111, cst = 63, COPY ranks [7×9] and the derived deficit 10272 | +| S6 | `verify_global.py` | (none) | stage `bit-supplier-controls` runs `code/bit_supplier_controls.py`; it requires status `PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS`, exactly 12 rejected controls and derived deficit 10272 | + +The shipped `inputs/PR589-EXPECTED.json` has git blob `e293ddc557742637f9f679f083a1a282d87b1b13`, which equals +`origin/main:research/e8-bit-p111-tuned/tune/EXPECTED.json`. + +## Why the derived deficit is correct + +**The identity.** The rank-mass identity of #545 and #555 is M·live − mass = T(2Kv − L·cst). Its source is +#555's README, "Rank-mass identity", and `code/adapt9p.py`, whose audit carries `DEFICIT=T*(2*K*V-L*CST)`. + +**The parameters.** The bit word has v live ports and decoder constant cst, the sum of the nine retained totals' COPY +ranks. The nine-stage chain is #463/#510 with 32 replicas, so L = 9, T = 32, K = 4 and M = 1 + 7L = 64. The live data +wires number 2KvT. + +**The constraints checked.** The verifier asserts all of: +1. cst = Σ copy_ranks, with exactly `retained_totals` = 9 entries, each in (0, 8]. +2. live = 2KvT. For #589: 2·4·111·32 = 28416. +3. Σ r·n over the priced profile = the record's `rank_mass` = 1808352. +4. M·live − Σ r·n = T(2Kv − L·cst). For #589: 64·28416 − 1808352 = 10272 = 32·(888 − 567). + +Check (4) is #645's `check_moment` guard, unchanged. So v, cst, the profile and live must all agree. + +**PR543 consistency.** The same formula reproduces #645's constant: PR543 has live = 30720, so v = 120; its nine +totals have COPY rank 8, so cst = 72; 32·(960 − 648) = 9984. + +**The deficit does not raise c.** `check_moment` uses the deficit only as an equality guard. The moment engines +compute from (profile, m = 64, live, z) and never read it. The bit value c is established only by the unchanged +acceptance tests at the same exact endpoints, with the bit bad-residue surcharge retained: accept at c and reject at +c + 10⁻²⁴, by both engines. + +## Effect on the outer chain (differs from the k492 package) + +In the k492 package the complex side bound under either supplier, so κ did not move. Here it does. With the +gm3 map the complex side certifies b = 0.001654663299688920102557, with research/gauge44-bit589's dz1 map +b = 0.00165526410310589140991, and with research/gauge44-bit589b's L1g4 map b = 0.001655496738330440231813. PR543's c = 0.001653826988146798944268 is +below b, so under PR543 the bit side would bind. BitCap's table gives the PR543 bit-side κ cap as +0.001651096360425895, which is exactly the κ of `research/gauge44-repack`. PR589's c = 0.001733427039589844234749 +exceeds b, so the complex side binds again (`binding = complex` in `ASSEMBLY.json`): κ = 0.001651929911890057 for gm3 +(conservative 0.001651929909011672) κ = 0.001652528731617094 for dz1 (conservative 0.001652528728737236), and +κ = 0.001652760598550299 for L1g4 (conservative 0.001652760595670246). +Bit589Reviewer recomputed both suppliers with the outer engine and confirmed this. The gain over gauge44-repack therefore depends on this change and on the +assumptions below. + +## Negative controls (all must be rejected; the verifier requires exactly these 12) + +Each control runs the real `assemble()` on the fresh owner/invoice receipts with one input mutated. The strict run's +`BIT-SUPPLIER-CONTROLS.json` lists all 12 as rejected. + +| control | site | rejected at | +|---|---|---| +| `revert_hardcoded_9984` | S2 | `check_moment` deficit guard (10272 ≠ 9984) | +| `ports_112` | S2 | `bit_deficit`: live ≠ 2KvT | +| `decoder_constant_64_copy_ranks_unchanged` | S2 | `bit_deficit`: cst ≠ Σ COPY ranks | +| `decoder_constant_64_with_one_copy_rank_8` (derives exactly 9984) | S2 | `check_moment` deficit guard | +| `eight_retained_totals` | S2 | `bit_deficit`: totals count ≠ 9 | +| `live_minus_one` | S2 | `bit_deficit`: live ≠ 2KvT | +| `profile_rank_mass_plus_one` | S2/S3 | `check_moment` deficit guard | +| `profile_rank_mass_receipt_mismatch` | S3 | profile mass ≠ `rank_mass` | +| `bit_lower_next_grid` | endpoint | `check_moment` reject-side moment test | +| `not_nine_stage_record` | S4 | pipeline binding | +| `tampered_bytes_next_grid` | S1 | blob pin | +| `pr543_file_under_pr589_pin` | S1 | blob pin | + +Bit589Reviewer re-traced all 12 rejection sites on the gauge44 word (b589gm3), and they match the table: `code/assemble.py` L191 (`revert_hardcoded_9984`, `decoder_constant_64_with_one_copy_rank_8`, `profile_rank_mass_plus_one`), L48 (`ports_112`, `live_minus_one`), L47 (`decoder_constant_64_copy_ranks_unchanged`, `eight_retained_totals`), L201 (`profile_rank_mass_receipt_mismatch`), L197 (`bit_lower_next_grid`), L179 (`not_nine_stage_record`) and L39 (both blob controls). dz1 and L1g4 run the same code. + +The ported `independent/price_profile.py` re-derives the deficit separately (`pr589_deficit`) and checks the same blob pin. Its regenerated receipt on this package's PLAN gives the same κ. + +## Inherited assumptions + +**PR merge status (`gh pr view`, 2026-10-13):** #589 MERGED 2026-10-12T17:00:38Z. #555 was merged 2026-10-12. #645 +is OPEN. Main's review replayed #589 freshly as "supplier-only headroom", and main's *selected* composition still +cites #543. + +**Unmerged assumptions:** +1. **#645 itself (open):** the gauge44 factory, its construction steps and all of its retained interfaces and notes. + These are unchanged here. +2. **This verifier change (S1–S6):** under review (Bit589Reviewer). The PR589 record replaces PR543 as an *input of + the gauge44 assembly*, a composition main has not selected. + +**Assumptions carried by #555/#589 (merged, stated there as review points, not theorems):** +3. #545's punctured unit: a 111-port unit with decoder constant 63 is an admissible bit supplier on the same hypotheses + as v = 120. +4. #510's nine-stage chain as re-parameterised for v ≤ 120 by #555's `code/adapt9p.py`, including the rank-mass + identity used in S2. +5. #543's interleaved scalar-interface lemma (H1–H5) for phase-B source rewrites. This is not new: #645 already + inherits it through PR543. +6. #589's two A-section transports. +7. The same bit bad-residue surcharge model as PR543 (`surcharge_model = {'complex': False, 'bit': True}`). + +## Result + +The bit-supplier change is the same as in research/gauge44-bit589 and gauge44-bit589b: the code is byte-identical and was signed by Bit589Reviewer. For this package (k8 leaver word db2c7cfb, K8c8 map), the complex side certifies b = 0.001674185476674086429846 and binds under PR589. Under PR543 the bit side would cap κ at 0.001651096360425895. κ is given in the README and `RESULT.json`. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-FRAMES-X4.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-FRAMES-X4.md new file mode 100644 index 0000000000..a456a8127b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-FRAMES-X4.md @@ -0,0 +1,58 @@ +# PROOF-NOTE-FRAMES-X4: chafreaky's #741 frames and JointXF's joint exchange (X4) + +Two construction steps on top of research/gauge44-promo-p6k4sw's SW4 word P6k4sw4 (`d232183f…`). + +## 1. #741's eight B frames (`construction/frames/`) +The eight B-gate frame raises are by **chafreaky**, [#741](https://github.com/CrocSwap/integer-mult-bounds/pull/741) +(`research/complex-sw4-frame8`, commit e516b146). `FRAME-RECIPE-sw4.json` is byte-identical to #741's +`data/FRAME-RECIPE.json` (a2c7ca4d…). CompetitorMine ported #741's builder and controls; only package paths are adapted. +The step applies the frames with BlockInvert's `build_promotion.apply` and checks: +- the scalar program of A, cut, B, precondition and cleanup is unchanged; +- start and end frames are unchanged; +- the profile, the widths and the output word `e7804702…` are pinned; +- 3 pin controls are rejected; +- #741's 10 focused native controls are rejected (8 frames emptied, a changed read coefficient, paid-profile tampering); +- the per-end layer-end controls reject 95; +- the native chain matches its pins. + +The rebuilt locals equal G44Pack's F741 locals except the `seconds` field in CLIFFORD-REVIEW. +This step reproduces #741's word. The final word is built by step 2, which contains these frames. + +## 2. Joint exchange X4 (`construction/jx/`, JointXF) +There are four disjoint instances of BRoute's sw4 read-set exchange rule. Each one exchanges *two* copy pairs that +share targets: (448, 472), (458, 592), (470, 604) and (482, 614), with face registers 235, 267, 58, 427, 26, 443, 18 +and 50. #741's eight frames sit on top. The 16 moved reads keep their original stored dim-6 frames: they are +monotone-repaired rather than refitted to the plain join. The recipe `RECIPE-X4.json` is explicit: +- 32 replaced gates, 16 deleted gates and 16 inserted gates, each with its old gate asserted; +- #741's 8 frames, listed with their source; +- 16 explicit frames at the moved reads, each asserted equal to the recomputed frame. + +The builder `build_jx.py` uses only the standard library. It checks: +- target frames lie inside u_t^⊥; +- tails and ends; +- exactness of the whole B segment's rational linear map against the input (a Fraction replay); +- the recomputed paid profile and the output sha `1e1d99ba…`. + +Effect against #741's word: the profile goes {1:2556, 2:334, 3:430, 4:194, 5:56, 8:8} → {1:2548, 2:338, 3:430, +4:194, 5:56, 8:8}. The width inventory is unchanged, and each instance gives +1.0798e-7 at ideal, exactly additive. + +**Controls**, each pinned in the recipe and rerun by `reproduce_jx.py`: + +| control | outcome | +|---|---| +| C0 identity | returns the input `d232183f` | +| C1 #741 only | `e7804702`, #741's word (ties step 1 to step 2) | +| M1 one pair (448) with frames retained | `5fb6fb2e`, neutral (profile = #741) | +| N1 pre-read dropped | rejected: exactness rows [132, 135] | +| N2 pre-read with wrong sign | rejected: exactness rows [132, 135] | +| N3 plain-join refit of the moved reads | `7241cd59`, strictly worse | +| N4 a raise made dim-7 at B855 | rejected: cap at (1302, 174) | + +N3 and M1 are pinned-outcome controls (a specific different word), not rejections. They show the gain needs both the +target-sharing pair and the retained frames. + +**Other checks (JointXF):** +- `audit_local` PASS; +- native chain PASS; +- FrameCoal's global frame optimiser reaches the same profile on this move set, so X4 is frame-optimal for these moves; +- SW4Extend found the same word independently. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LAYERS.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LAYERS.md new file mode 100644 index 0000000000..c4b4e85b6a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LAYERS.md @@ -0,0 +1,129 @@ +# PROOF-NOTE-LAYERS: earlier jp8 layers, here stacked on the no-triangle gauge44 word + +> In this package the layers sit on the no-triangle word (R = 504), not on #645's 492-helper word. The mapping, the +> NP chain (regroup `864ff4a1` → swap `beb3579f` → layered `a9de804f`), the per-layer status on this base and the +> checks are in `PROOF-NOTE-NOTRI.md` ("Layers on this word"). The text below is research/gauge44-layered's note. It +> describes the same layers and controls on the 492-helper word; its word shas, helper numbers, counts and result +> table refer to that word. + + +This note covers the second change of research/gauge44-layered relative to research/gauge44-bit589. The first change, +the PR589 bit supplier, is covered unchanged by `PROOF-NOTE-BIT.md`. Here the community jp8 layers that were reviewed +on the k492 words (#629/#637/#641 lineage) are re-applied to #645's gauge44 provider word. The layers, their +construction code and their recipes were all reviewed earlier, on k492 words. This note says what carries over +unchanged, what is re-checked on the gauge44 word, and what is new. Sources: G44Stack's report (porting and checks on +gauge44); PivotReviewer's report (sections 1-4, Addenda 3-5); H4aReviewer's report (Addenda 7-8); JP8Ends' report. + +## What the layered word is + +`construction/layers/reproduce_layers.py` builds the layered word from a fresh `construction/reproduce.py --until word` +output. Each step is checked exactly: + +1. **Pivot swaps** (`build_pivot_swap.py`, PR641's constructor, LF sha256 `8e8bced8…`, the file PivotReviewer signed for + st2s4). It reads `PIVOT-SWAP-S6.json` and runs on #645's `regroup/FULL-WORD`. There are six pivot-role swaps: 488→560, + 489→561, 500→572, 501→573 (s4) and 513→537, 525→549 (s6). The `swaps` list is identical, gate for gate, to S6Ship's + s6/s6j3 recipe (`k492-jp8-pivot_swap.json`); only `input_content_sha256` differs, because the base word is #645's + regroup word. The constructor replays the zero response exactly, keeps the profile and width multiset unchanged, and + rejects its 30 negative controls. +2. **HPE.** PR635's `build_hpe.apply` applies the inherited jp8 hyperplane-end changes (`HYPERPLANE-END-S6.json`). Its + LF sha256 `23c9d7ce…` equals the k492 jp8 hyperplane_end recipe committed in s6j3 and earlier. +3. **cold44, exactly.** #645's `build_gauge_cold44.py` runs on the swapped HPE word. Its 44 rank-four cold ends, premix + and low tails must equal the unswapped (pinned) cold44 construction; only the FULL inverse differs. Consequently the + swaps touch no factory block. +4. **Layers.** PR635's unchanged `build_cold_end.apply(HPE, COLD-LAYERS-RECIPE)` applies the cold44 recipe plus: + - 8 entering ends: 560/561/572/573 at U24 (s4) and 597/599/537/549 at U30 (x30: #629's E1 pair, which #645 dropped, + plus s6's two ends); + - 10 factored dim-8 cold ends: p123 (310/506, 311/504, 516/327) and q4 (579, 592, 589, 518). + The output word's sha256 is pinned (`0be48b1d…`), as are its local profile `{1:2542, 2:414, 3:434, 4:154, 5:56, + 8:8}` and width inventory `{4:52, 5:48, 7:42, 8:116, 9:234}`. The recipe's `refactored_cleanup` meta lists the 8 + entering ends in `entering_low_frame_ended_helpers` (LayerReviewer's fix). That meta is copied into the word, which + is why the pinned word sha moved from `b25f0ed9…` to `0be48b1d…`; gates, frames and report are unchanged. +5. **Layer-end controls** (`layer_end_controls.py`, LayerReviewer's adaptation of PR635's `cold_end_controls.py` + d966e29a). These are raw-word negative controls on the layered word, judged by PR635's unchanged + `hpe_audit_and_transport.py`. Each mutant must be rejected at its pinned reason. The adaptation has three parts: the + lower→FULL mutant is pinned at "cleanup on non-FULL end", where gauge44 rejects it; entering ends come from the + recipe meta; and the premix-gate controls are skipped for entering ends that have no premix gate. `reproduce_layers.py` + requires exactly 59 rejections. +6. **Native locals.** PR635's native audit and transport, ledgers, local replay (the 192-bit payload bound), wrappers and + phases all pass. The result is the `--local` that `verify_global.py` consumes. + +G44Stack's run of this driver (`rlayers2`, all steps exit 0, 59 controls rejected) reproduces `locs/pq/local`, the +local G44Pack's strict runs used. Every SPEC-pinned artifact is byte-identical: CANONICAL-WORD, LOCAL-PROGRAMS, +LOCAL-CHECKS, INDEPENDENT-LOCAL-REPLAY, CLIFFORD-RECIPES, RESIDUAL-ADAPTERS and WRAPPER-CHECKS. CLIFFORD-REVIEW differs +only in a seconds field; its semantic hash is what SPEC pins. The two unpinned files that embed the word, +FULL-WORD and SCALAR-FRAME-AUDIT, differ because of the meta. + +## Per-layer status on gauge44 (G44Stack, ideal Δκ at ×72) + +| layer | prior review (k492 words) | on gauge44 | per-call Δ profile | ideal Δκ | +|---|---|---|---|---| +| pivot swaps (6) | PivotReviewer §1-2 (s4), Addenda 4-5 (s6): exact; omitting any rewritten gate is rejected; cost-neutral | all 6 recipe `before` gates match the regroup word; 30 controls rejected; cold44 rebuilds the same 44 ends | neutral | 0 | +| s4 ends 560/561/572/573 @U24 | PivotReviewer §3: (N) exact for ([24], U24) and its canonical pair; climbs paid | positive | {1:+8, 2:−4, 3:+4, 4:−4}, w −4 | +7.0e-8 | +| x30: E1 597/599 + 537/549 @U30 | #629 (E1); PivotReviewer Addenda 4-5 (537/549 end monotonically at the E1 hyperplane, whose (N) is exact) | positive | {1:+10, 2:−6, 3:+2, 4:−2}, w −4 | +2.0e-7 | +| p123 | H4aReviewer Addendum 7: 0 bad rows, dyadic, exact in all 3 orientations; (N) for (0,1039)-(0,1041); Δ recomputed | positive | {1:+6, 2:+12, 3:−12}, w −6 | +2.0e-8 | +| q4 (after p123) | H4aReviewer Addendum 8 (n_q4): exact; (N) for the 310/311/327 frames and 518's (0,1042); independent of u4 | positive | {1:+4, 2:+8, 3:−8}, w −4 | +1.4e-8 | +| **stack T_pq** | — | built and audited | {1:+28, 2:+10, 3:−14, 4:−6}, w 3794→3776 | **+3.08e-7** | + +These layers were left out because they are negative or dead on gauge44: u4 (−1.2e-6), the 249 end (−3.2e-7), a joint +p123+q4 (−2.6e-7, worse than sequential), and #627's dim-7 ends 581/590 (no dyadic basis). j3 is dead: its st2 partner +403 is one of #645's 44 ends, and cold44's block premix uses up the row space. + +**Payload.** H4aReviewer's Addendum 8 correction found that the k492 word n_q4 broke the 192-bit local payload bound +(backward prefix 280 bits). On gauge44 the layered word passes PR635's `hpe_audit_local.py` local-replay stage +(`prefix < 2**192`), both in G44Stack's `localchain.py` and as step 5 of `reproduce_layers.py`. So the q4 layer here +does not repeat that failure. + +## Verifier changes (spot widths) + +A swapped-out pivot p becomes an ordinary cold helper, and its width goes from 8 to 9. #645's global code checks the +spot helpers' widths as all 8, so the five global files gain the spot-width rule PivotReviewer signed as SOUND for +S4Ship (Addendum 3), ported to gauge44: + +- `code/witness.py`: `spot_widths(v)` gives 9 at a spot helper h with 2v+h among the swapped-out pivots and 8 + elsewhere. The swapped-out pivots are read from the recipe that SPEC key `pivot_swap` names (path and sha256; the + sha256 is asserted). Without `pivot_swap` the tuple is all 8, the same as #645. +- `code/bind_providers_portable.py`, `code/audit_allcold.py`, `code/assemble.py`: the `all(... == 8)` spot checks become + tuple equality with `spot_widths()`, which pins every spot width exactly. +- `code/assembly_controls.py`: the `cold_swap` control picks a swap partner whose width differs, so the mutant can + never be the identity. + +Here the spot helpers 264 and 276 (pivots 488 and 500) expect width 9 and the other spot helpers expect 8. The k492 +spot-width review (PivotReviewer Addendum 3) covered the same rule on k492 code. Its gauge44 port is part of this +package's review (LayerReviewer). + +## Controls and what is not re-run + +- The pivot-swap constructor's 30 controls run inside `reproduce_layers.py` (step 1). +- `verify_global.py`'s strict controls are unchanged, including the 12 bit-supplier controls and #645's admission + controls. They run on the layered locals. +- Layer-end controls: 59 raw-word mutants, all rejected at pinned reasons, run as step 5 of `reproduce_layers.py` + (see above). They cover the cold low-frame ends, the refactored cleanup, every entering end (its lower-frame gate, + profile pin and hyperplane, plus its premix gate where it has one) and each distinct dim-8 frame. LayerReviewer ran + them on the layered word (59 rejected). The k492 version (d966e29a) rejected 103-112 on the p123/q4 words; the + k492-only primitives (absorptions, factored accumulators, target writes) are absent from this word. +- #645's independent audit `independent/audit_local.py` on the layered word: PASS, with 204 entering helpers, 96 low ends, + 54 cold ends and 716 columns. Its receipt is `evidence/layers/LOCAL-AUDIT-LAYERED.json` (word `0be48b1d…`, run with + `--main`). The README's clean-clone command reruns it; only `elapsed_seconds` varies. The other `independent/` + receipts are #645's own. +- The prior (N), exactness and pricing checks for each layer were done on k492 words. On gauge44 they are covered by + the native chain (native audit, local replay, wrappers, phases) on the layered word, together with the pinned + profile and width inventory. + +## Inherited assumptions + +These are the same as `PROOF-NOTE-BIT.md` (#645 open; PR589 citation; #545/#555/#589 review points; H1-H5). In +addition: + +1. **(N) for the entering-end pairs outside #599's three Lean-covered pairs** (U24, U30, the dim-8 frames). As on + k492, these are covered by the tool check (clifford_exact / `nchk.py`) and by the native wrappers, not by a Lean + proof (PivotReviewer §3). +2. **The reviews of PR641's pivot-swap constructor and PR635's `build_cold_end.apply` / `build_hpe.apply`**, which this + package uses unchanged. + +## Result + +| | gauge44-bit589b (L1g4 map) | this package (layered, LN5c map) | +|---|---|---| +| κ | 0.001652760598550299 | 0.00165395497190225 | +| per-call width | 3794 | 3776 | +| local profile | #645's {1:2514, 2:404, 3:448, 4:160, 5:56, 8:8} | {1:2542, 2:414, 3:434, 4:154, 5:56, 8:8} | diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LEAVER.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LEAVER.md new file mode 100644 index 0000000000..b34a289c48 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-LEAVER.md @@ -0,0 +1,82 @@ +# PROOF-NOTE-LEAVER: no-helper mutable-leaver all-K cells, re-stacked layers, hybrids and a frame re-optimisation (k8) + +Construction: LeaverSAT (cells, layer re-indexing, frozen recipes) and LeaverSAT2 (frame re-optimisation). +Drivers: `construction/leaver/reproduce_leaver.py` (cell word) and `construction/leaver/reproduce_leaver_chain.py` +(everything after it). Reviews: PromoReviewer (leaver chain, k8 cells and frames, k8 clean rebuild), SW4Reviewer (hybrid structure), Q6Reviewer +(`layer_end_controls_leaver.py` v2, `LEC-REASON-PINS-k8.json`), LecReviewer (`LEC-REASON-PINS-STACK-k8.json`). + +## 1. The cell (set model, LeaverSAT) +In #781's all-K cell, a pair p with sign e replaces three face events and three packet copies. Direct delivery uses +15 reads y_i += c x_j. LeaverSAT's 21-gate circuit uses the six leaver sources x_j (face-event operands with no later +reads, restored at FULL by the inherited cleanup) as mutable intermediates. It has 3 leaver gates x_k += c x_m, +3 target gates y_a += c y_b (inverted at frame zero in the precondition and scatter, #781's recipe) and 15 reads. +Coefficients are rescaled exactly per cell, C_ij = r_i c_j. The driver re-derives the scaled gates from the unit +circuit and checks the clean map Y_i = Σ_j C_ij X_j in exact rationals. + +Native legality needs one relabelling: the plain circuit fails the native audit, because a y += y source carries +port-stage entering-helper dirt. Each cell is therefore relabelled by S6 so that y–y sources avoid targets carrying +entering dirt at that time. + +**Set k8:** all eight cells (01±, 23±, 45±, 67±), R = 480. The cores are in `construction/leaver/cells-k8/` (documentary; +the driver re-derives every scaled gate from `CODED-CELLS-k8.json`). The regroup word is `00aeefe0…` and the cell word is +cold44 `58e14a02…`. Its pairing ranks are pinned to [0,0,0,4,4,4,4,4,4,4,4,0,0,0] in `cold44x.py` and checked again in +the driver. + +## 2. Re-stacked layers (LeaverSAT; signed builders unchanged, recipes re-indexed) +| step | recipe (data) | word | +|---|---|---| +| pivot swaps (6), mapped through the leaver helper map | `PIVOT-SWAP-k8.json` | `377ab10c…` | +| HPE, greedy (22) | `HPE-RECIPE-k8.json` | `598543fa…` | +| cold44, exact (same ends, premix and tails as the unswapped cell word) | — | — | +| NP layers (s4, x30, b6, q4) | `COLD-LAYERS-RECIPE-NP-k8` | `2c1740f6…` | +| p6n ends | `COLD-LAYERS-RECIPE-P6N-k8` | `25c40614…` | +| promotions (16, minimal) | `PROMO-RECIPE-k8.json` | `84d4da2e…` | +| joint exchange (re-indexed X4) | `RECIPE-X4-k8.json` | `84d4da2e…` (identity) | +| U8-style hybrids ×6 (NewBArch's builder; instances 62, 226, 228, 230, 231, 232) | `RECIPE-U8-k8.json` | `c836d892…` | +| frame re-optimisation (exact global frame optimum, gopt2; 137 B and 2 T frames) | `FRAME-RECIPE-LV-k8.json` | **`db2c7cfb…`** | + +Three steps don't apply to k8. The sw4 exchanges use copy helpers 461, 581, 591 and 603, which the cells drop. Of +#741's eight frames, none survives. All four X4 exchange groups use dropped helpers, so the joint exchange is the +identity (0 raises, 0 frames); it is still run, with its three remaining controls (C0, C1, N3) at their pins. + +The two cold-layer recipes are LeaverSAT's frozen k8 recipes (`fea82fb8…`, `76aedf23…` as .gz) with one key added, +`input_content_sha256` = the swapped HPE word `598543fa…`, as in the k5 package. Removing the key gives the frozen +recipe content exactly. + +## 3. Controls rerun on every rebuild +- **Cell stage:** the exact clean-map check; native audit, ledgers, local replay, wrappers and phases on the cell word. +- **Pivot swaps:** the swap constructor's 30 controls. +- **Promotions:** BlockInvert's `promo_controls.py`, 11 mutants rejected at pinned sites. +- **Joint exchange:** the 3 `RECIPE-X4-k8` controls reproduce their pinned outcomes. +- **Hybrids:** `run_controls.py` gives 30 outcomes, all required. These are C0, the recipe word passing audit_local, + and 4 mutants, each run both globally and per instance. +- **Frames:** `build_frames_lv.py`'s 3 pin controls. LeaverSAT2's 6 frame-recipe mutants are rejected by the builder; + that receipt was reviewed by PromoReviewer and is not rerun. +- **Layer-end controls:** `layer_end_controls_leaver.py` v2 (`4ba676f1…`), Q6Reviewer-signed. It is the signed + per-end controls with per-word reason re-pins and **declared not-applicable sites**. A vacuous mutant site is never + skipped silently: the pins file must declare it, the declared set must equal the detected set, an identity is proven by + sha equality of the mutated and honest words, and a same-class substitute mutant is built and must be rejected at the + class's pinned reason. The count stays 95 on every word. The controls run on all five words: + - p6n, promoted, jx and hybrid words, with `LEC-REASON-PINS-STACK-k8.json`: `extra_end` only. h0 273's first + premixed partner 282 is already cold-ended at h0's frame, so the mutant is the identity (sha-proven per word); the + substitute is partner 281, cold-ended at h0's frame. + - the re-framed final word, with `LEC-REASON-PINS-k8.json`: `extra_end` as above, and `other_hp:554`. The frame + re-optimisation lowers entering end 554's tail frame to dimension 5, and no helper_final frame has dimension 5, so + the 'end at another hyperplane' mutant cannot be built; the substitute moves 554's end to another dim-8 frame and + must be rejected at the cone pre-check. This replaces the interim skip of research/gauge44-leaver. + No reason re-pins are needed on the k8 words. The receipts (`COLD-END-CONTROLS.json`) carry the not-applicable list; + the counts, the not-applicable sites with their reasons and the sha256 of each pins file (`LEC-REASON-PINS-STACK-k8.json` + d87ed7b5…, signed by LecReviewer; `LEC-REASON-PINS-k8.json` b07279e4…, signed by Q6Reviewer) are pinned in + `CHAIN-PINS-k8.json`. +- **Native chain on the final word:** the canonical word, local programs and Clifford recipes are pinned in + `CHAIN-PINS-k8.json`, which also pins every count above. + +## 4. Cell mutants (evidence, not rerun) +LeaverSAT2's `CELL-MUTANTS-LV.json` (in `evidence/leaver/`) records PromoReviewer's cell mutants M1–M6, generalised +to every cell sign. All 42 are rejected by both audit_local and the native audit, on single-cell builds. + +## 5. Strict +The owner map is G44Pack3's K8c8: its pattern-flow LNS on the R = 480 k8 word. Admitted on this package's own code, +with SPEC `width_spot_helpers` [258,270,282,294] and `pivot_swap` → `construction/leaver/PIVOT-SWAP-k8.json` (NEWWORD +discovery, freeze, strict), it gives κ 0.001671387264390146. That is +7.154e-6 over research/gauge44-leaver (k5, +0.001664233607446043). diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-NOTRI.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-NOTRI.md new file mode 100644 index 0000000000..54bd84e01d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-NOTRI.md @@ -0,0 +1,53 @@ +# PROOF-NOTE-NOTRI: #645's gauge44 word without K-triangles (R = 504) + +Construction by PartialK; review by NotriReviewer (scratch/NotriReviewer/FINAL-REPORT.md). Drivers: +`construction/notri/reproduce_notri.py` (this word) and `construction/layers_np/reproduce_np.py` (layers on it). + +## Why the triangles were the blocker +- In #645's gauge44, a K-block has I = 6 low registers with rank C = 4, so L = 2. Only the 2-row priority completion + fits there. The (p,−) triangle reads climb copies loc17/19/21 and source loc2. +- Without the triangles, I = 8. With the 2-row completion, rank C stays 6 (L = 2), which is why the plain removal sweep + restored nothing. With the 6-row completion (`PRIO6.json`, the list blocks 3–10 already use), rank C = 4, so L = 4, + the cap. All 14 blocks then pair at rank 4: 56 rank-four cold ends, R = 504, width 3818, profile + {1:2506, 2:336, 3:472, 4:184, 5:56, 8:8}, rank mass 5674. + +## Constructor changes (NotriReviewer §1) +- **`cgx.py`** is #645's `construct_gauge_xcentre.py`, parameterised by XPARAM. On this path the only change that takes + effect is the K-block priority: `PRIO[c]` is placed in front of the inherited rows. The prepended rows equal the + shared 6-row list of blocks 3–10 (all 8 lists identical). Every completion assert is kept (`qr_rank(M)==4`, + `len(M)==8`, the exact block-total rows). An empty TRI schedule is an input #645 already supports (`NH = 504 − 3·0`). + `HELPER-MAP` is the identity on 728. The `exch`, `COPYL` and `hyb` branches are inert here (defaults, empty, not + reached). +- **`port_stage_x.py`** is PR635's `build_port_stage.py`. The helper map only has to be injective rather than onto; + with no triangles it is onto again. +- **`cold44x.py`** is #645's `build_gauge_cold44.py`. Its per-block pin `r == len(L) == (2 if K-block else 4)` is + replaced by `r == len(L)` together with the explicit per-block pin `PAIRING_RANKS` (set by the driver to [4]*14, + and to #645's pattern in `--control-g44`). Helpers outside the 224+16b ranges join their blocks (EXTRAH, empty here). + Every other assert is kept (U, nonlocal premix, `rank(Qmat) == NB`). +- **Control.** `reproduce_notri.py --control-g44` runs the same scripts with #645's four triangles and no XPARAM. It + reproduces #645's gauge44 word `78c7aada…` exactly, with ranks [2,2,2,4,4,4,4,4,4,4,4,2,2,2]. + +## Exactness and locals (NotriReviewer §2) +- Replay: 0 bad rows over 27,932 gates, all dyadic; forward, inverse and adjoint are exact. None of the 6,448 + compensation additions reads an ended helper, and the precondition never touches one. +- 0 FULL-remainder gates touch an ended helper; E⊂U holds for every entering end. The delta against gauge44 + ({1:−8, 2:−68, 3:+24, 4:+24}, width +24) matches the reported profiles. +- (N): all 17 pairs pass (14 cold dim-4 pairs with 4 helpers each, plus 3 dim-8 entering pairs). +- `audit_local.py --main`: PASS. Payload: prefix bits 66 forward and 72 backward, against 192. +- Native locals: 25 controls rejected, Lemma A on 22 frames, 17 wrapper mutants rejected. The rebuilt locals equal + the strict locals (`PartialK/runs/none_p6/local`): byte-identical except CLIFFORD-REVIEW and SCALAR-FRAME-AUDIT, + which differ only in their `seconds` field. + +## Layers on this word (G44Stack) +The layers are research/gauge44-layered's (see `PROOF-NOTE-LAYERS.md`), mapped to the 504 numbering: +- the 6 pivot swaps 494→566, 495→567, 506→578, 507→579, 519→543, 531→555, which are neutral (same 46 HPE helpers, + same 56 cold ends); +- s4 566/567/578/579 at U24; +- x30 608/610/543/555 at U30; +- BlockCombine's b6; +- q4. + +p123 is negative on this base and dropped; j3 is dead (L = 0 at U24 and U30). The chain is regroup `864ff4a1` → swap +`beb3579f` → layered `a9de804f`, with profile {1:2534, 2:346, 3:458, 4:178, 5:56, 8:8} and width 3800. On that word +the signed `layer_end_controls.py` rejects 59/59 and `audit_local.py` passes with 216 entering helpers, 120 low ends, +66 cold ends and 728 columns. NotriReviewer independently reproduced a9de804f from the packaged recipes. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-P6N.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-P6N.md new file mode 100644 index 0000000000..bef9ad2de0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-P6N.md @@ -0,0 +1,34 @@ +# PROOF-NOTE-P6N: six b-type dim-8 cold ends on the layered no-triangle word (p6n) + +Construction by NoTriReopen. Driver: `construction/layers_p6n/reproduce_p6n.py`. Review: Q6Reviewer. + +## What p6n adds +On research/gauge44-notri-layered's word NP (`a9de804f…`), p123's lane is rebuilt as three factored dim-8 pairs +(`P6N-SPEC.json`): +- [512, 513] at U = (256,128,66,34,16,8,6,1). The old pair [310,512] split a rank-3 end; [512,513] replaces it; +- [311, 510] at U = (256,128,72,40,24,4,2,1); +- [522, 327] at U = (256,128,66,34,18,10,6,1). + +They are built with the same premix-only factored construction as p123/q4/b6 (JP8Ends' stackJ/stackE, CarrierBypass +pattern; PR635's unchanged `build_cold_end.apply`). The cold-layer recipe `COLD-LAYERS-RECIPE-P6N.json.gz` is NP's +recipe plus these six ends; its meta lists 72 cold ends and the 8 entering ends. Applied to NP's swapped HPE word, it +gives p6n `34b683fa…`: +- profile {1:2540, 2:358, 3:446, 4:178, 5:56, 8:8}; +- widths {4:64, 5:48, 7:54, 8:122, 9:216}; +- width 3794 (NP 3800); +- Δ per call {1:+6, 2:+12, 3:−12}, w −6, every end b-type. + +## Checks +- **NoTriReopen:** native chain including phases PASS; audit_local PASS; 95/95 layer-end controls rejected. +- **Q6Reviewer:** + - exact; + - (N) passes on all 21 pairs; + - payload 55/72 bits, against 192; + - the per-end control variant `layer_end_controls.py` (fc58c569…, which Q6Reviewer signed for research/gauge44-pq6) rejects 95/95; + - 165 further mutants on the six ends are all rejected. + The LayerReviewer-signed `../layers/layer_end_controls.py` controls one end per dim-8 frame family, so it would not + control each new end. This package therefore uses the per-end variant for p6n and for the promoted word built on it. +- **Rebuild:** `reproduce_p6n.py` pins the input NP word, the output sha, profile and widths, and 95 controls. + +## Remaining capacity (NoTriReopen) +After p6n, the only residual cold capacity on the word is 2 a-type units, and every end there prices about −9e-7. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-PROMO.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-PROMO.md new file mode 100644 index 0000000000..8233bbd6b8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-PROMO.md @@ -0,0 +1,46 @@ +# PROOF-NOTE-PROMO: entrance promotions E4 → E5 on the p6n word + +Construction by BlockInvert (`construction/promo/`); driver `construction/promo/reproduce_promo.py`. + +## What a promotion is +An entering helper h starts at an entrance frame E (its `start_extra`) and climbs to its final frame. Promotion +enlarges E to E′ ⊃ E (here dim 4 → dim 5). That removes one paid climb from h's chain (width −1 per helper) at the +cost of re-choosing the frames of the gates on h's early chain. It is the time-reverse dual of end deepening. Two +conditions make it legal: +1. **Zero target response for h's dirt.** This condition does not depend on E, so it is inherited unchanged from the + input word. +2. **Monotone frames.** Every gate's frame must contain its registers' current frames. +Only frame annotations and start frames change. The scalar program (every gate's registers and coefficients) is +untouched, so the endpoint, every cone and the compensation are those of the input word. + +## The recipe (`PROMO-RECIPE-p6n-k4.json`, data only, minimal) +- Input: the p6n word `34b683fa…` (`PROOF-NOTE-P6N.md`), pinned. +- `entrances`: the 16 entering helpers 627, 629–631, 635, 637–639, 651, 653–655, 659 and 661–663 (four E4 kernel groups) go E4 → E5. +- `gate_frames`: 48 frame re-choices, the promotion's own entry-gate raises (12 per group); each records the old frame, + which must equal the input's exactly. This is BlockInvert's **minimal** recipe: the deterministic rule + E′ = E + ⟨smallest x⟩ on each group's entry gates (PromoReviewer). Unlike research/gauge44-promo's k3 recipe, it + carries none of the 72 price-neutral CP-SAT re-choices. +- `expected`: output `0390ec65…`, profile {1:2572, 2:326, 3:430, 4:194, 5:56, 8:8}, widths + {4:80, 5:32, 7:54, 8:122, 9:216} (width 3778). Against p6n the delta is {1:+32, 2:−32, 3:−16, 4:+16}, width −16. + +## Checks rerun on every rebuild (`reproduce_promo.py`) +- `build_promotion.py`: input pin; each old frame matches; each new entrance strictly contains the old one; the + profile and widths are recomputed from the chains, including target end climbs; output pins. +- `promo_controls.py`: the honest word passes #645's independent `audit_local.py` (exact forward and dual endpoint + frames, entrances, cones). For p6n-k4, 11 mutants are rejected at pinned sites (the count is pinned in `LOCAL-PINS-p6n-k4.json`): + - entrance outside the first gate frame; + - raised gate missing, once per promoted group; + - entrance reverted, so the profile does not match; + - ungrouped promotion; + - a recipe gate whose old frame is wrong; + - a recipe entry that is not a promotion; + - a tampered input word (the constructor's own `__main__` must refuse it at the input pin); + - a scalar tamper on a raised gate. +- The per-end layer-end controls (`../layers_p6n/layer_end_controls.py`, Q6Reviewer-signed): 95 rejected. +- PR635's native chain: transport audit (all columns, native frames), ledgers, local replay (192-bit payload), + wrappers and phases, with the canonical word, local programs and Clifford recipes pinned (`LOCAL-PINS-p6n-k4.json`). + +## Search (not run by the rebuild) +`make_recipe.py` writes the recipe from BlockInvert's CP-SAT solution (`prom.py` with `exactframe2.py`, using MinCutSel's +chain model). These promotions were priced negative before (MinCutSel #3, under a fixed-window arc-flow packer). Under +near-ideal packing (G44Pack's dissolve/gapmerge) they price positive; the strict replay confirms the gain. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-SW4.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-SW4.md new file mode 100644 index 0000000000..a064cc54cc --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/PROOF-NOTE-SW4.md @@ -0,0 +1,44 @@ +# PROOF-NOTE-SW4: read-set exchange on four entering-copy pairs + +Construction by BRoute (`construction/sw4/`, with the author's notes in `construction/sw4/NOTES.md`). Driver: +`construction/sw4/reproduce_sw4.py`. + +## The move +In P6k4 (`0390ec65…`; research/gauge44-promo-p6sw applied the same exchange to P6k3 `a38bb414…`), each of four entering packet copies h is written first as h = E_h + r: copy gate add(h, r, 1) +from a non-target face register r, with E_h being h's entering content. The pairs are (h, r) = +(461, 25), (581, 89), (591, 415), (603, 431). For each pair the read sets of h and r are exchanged in phase B: +- every post-copy target read add(t, h, c) becomes add(t, r, c), and t's entrance pre-read add(t, h, −c) (taken + while h = E_h) is deleted; +- every target read add(t, r, c) becomes add(t, h, c), with a pre-read add(t, h, −c) inserted after h's last existing + pre-read and before h's copy gate. + +Since h − r = E_h after the copy, each target's value is unchanged at the end of B. The builder checks this for every +register mod p (p = 2147483629). Moved and inserted gates take the plain join of their operands' current frames. +Every other B gate and every early-cleanup tail keeps span(old frame + current operand frames). Targets must stay +inside u_t^⊥, and tails and ends must contain the current frame. start_extra, helper_final, cleanup and the helper +numbering are unchanged. + +## Effect +Output `d232183f…`. Width 3778 is unchanged. The profile goes from {1:2572, 2:326, 3:430, 4:194, 5:56, 8:8} to +{1:2548, 2:342, 3:438, 4:186, 5:56, 8:8}, a delta of {1:−24, 2:+16, 3:+8, 4:−8}, the same as on P6k3. The four +exchanges are additive. The fourth promotion group (659, 661–663; gates B420–431) commutes exactly with the exchange: +there is no index or register overlap, and SW4Reviewer checked that applying the k3→k4 frame and start differences +to f35a852b gives d232183f. Ideal κ +3.271e-7 over P6k4. + +## Checks rerun on every rebuild +- `build_sw4.py` (standard library only): the input sha pin; the 16 explicit moves of `SW4-RECIPE-P6k4.json`; B-end + state exactness mod p; frame caps, tails and ends; the output sha, profile and W. It also runs 4 controls, all of + which must hold, each at the exact site pinned in the recipe's `rejection_expected` (all three keys N1, N2 and N3 are required): + - C0: the identity recipe reproduces the input B and early_cleanup byte for byte; + - N1: h2r without deleting the pre-read is rejected by exactness, with changed B-end rows exactly {168, 171}; + - N2: a partial exchange (one read only) is rejected by the frame cap, first at ('cap', B1192, register 169), 10 violations; + - N3: an inserted pre-read with the wrong sign is rejected by exactness, with changed rows exactly {129, 130, 169, 170}. +- The per-end layer-end controls (`../layers_p6n/layer_end_controls.py`, Q6Reviewer-signed): 95 rejected. +- PR635's native chain, with the canonical word, local programs and Clifford recipes pinned (`LOCAL-PINS-sw4-P6k4.json`). + The native transport audit re-checks every column and native frame of the exchanged word. + +## Scope of the search (BRoute) +The search was exhaustive within the single-pair family only. NP has 107 copy pairs, and 54 of them have movable +reads. Over those, every nonempty subset of one pair's movable reads gives 602 candidates: 564 are frame-illegal, and +the 38 legal ones are all full single-pair exchanges, of which exactly these 4 are positive. Cross-pair combinations +of partial moves were not enumerated. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/README.md new file mode 100644 index 0000000000..8b48510939 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/README.md @@ -0,0 +1,265 @@ +# Seven triangle-hybrid slots on the k8 leaver word: conditional κ = 0.00167166528321877 + +This package adds one construction layer to [research/gauge44-leaver8](../gauge44-leaver8) (#1005): seven +additional triangle-hybrid B-delivery slots on #1005's final word `db2c7cfb…`. **Credit:** the slot search and +the first two slots (X = 444, 446) are **rohanarun's #987**; the other five (X = 236, 238, 434, 436, 439) were found by +running #987's search on the k8 word. The mechanism is NewBArch's #869 triangle-hybrid delivery. + +- **κ = 0.00167166528321877**. That is +2.78×10⁻⁷ over #1005 (0.001671387264390146). The complex side binds; the bit + supplier is PR589's, unchanged. +- **Construction:** #1005's reviewed `construction/barch/build_tri.py` and `run_controls.py`, both **unchanged**, + with the new recipe `construction/slots/RECIPE-SLOTS-k8.json`. The output word is `c2b29430…`, profile + `{1:2412, 2:418, 3:432, 4:142, 5:82, 8:8}`, and widths are unchanged. +- **Controls:** 34. These are C0 identity, the recipe, and the four mutants (`drop_restore`, `restore_full`, `drop_preread`, + `donation_after`) applied globally and to each of the seven slots. Every mutant is rejected and pinned in + `construction/slots/SLOT-PINS-k8.json`. +- **Frames:** the exact global frame optimiser (gopt2) finds no gain on the slot word, so there is no frame step. +- **Owners:** #1005's K8c8 owner map is rebound to the new word (widths and idle counts are unchanged). The admitted + data in `data/` passes the strict replay. + +## Verification (explicit reuse of a completed #1005 replay, as research/complex-t37-owners does for #799) + +```sh +# Completed #1005 chain (the README commands of research/gauge44-leaver8), or any completed run of it: +python -B research/gauge44-leaver8/construction/leaver/reproduce_leaver_chain.py \ + --main . --pr635 /tmp/gauge44-pr635 --leaver-dir /tmp/lv --hamming /tmp/notri-base/hamming --id k8 --out /tmp/lvc +# This package (about 3 minutes): +python -B research/gauge44-slots/verify_manifest.py +python -B research/gauge44-slots/construction/slots/verify_slots.py \ + --main . --pr635 /tmp/gauge44-pr635 --baseline /tmp/lvc --work /tmp/slots +# PASS_SLOTS_ON_CHECKED_K8_BASELINE 0.00167166528321877 +``` + +`verify_slots.py` rechecks the baseline: its complete step receipt (every chain step exited 0), the final word against +#1005's frame-recipe pin, its canonical, program and Clifford locals against `CHAIN-PINS-k8`, and all five +layer-end control counts. It then rebuilds only the slot layer and its controls, the native locals of the new word, the +independent `audit_local`, and the strict global replay of this package's data. Everything below is #1005's README, +unchanged; this package differs from it only in `construction/slots/`, `data/`, this section, `RESULT.json` and `MANIFEST.json`. + +--- + +# Gauge44 without K-triangles, with earlier jp8 layers, the p6n ends, entrance promotions, a read-set exchange, #741's frames, a joint exchange, a triangle-hybrid B rewrite, no-helper mutable-leaver cells and PR589's bit supplier: conditional κ = 0.001671387264390146 + +Under the retained all-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape, exact-recovery, analytic-transfer and bit H1–H5 interfaces (as in #645), and the PR589 bit supplier, + +$$ +T(n)=O\!\left(n(\log n)^{1-\kappa}\right),\qquad +\kappa=\frac{1671387264390146}{10^{18}}=0.001671387264390146. +$$ + +**The construction is icekylinx's [#645](https://github.com/CrocSwap/integer-mult-bounds/pull/645) (`research/gauge44-global`).** This package builds the research/gauge44-barch construction (items 1–8) and then rebuilds its word around **no-helper mutable-leaver cells** (item 9): +1. **No-triangle word (PartialK).** #645's gauge44 chain is run with **none** of the four (p,−1) K-triangles, so there are R = 504 helpers. In the six K-blocks {0,1,2,11,12,13}, the completion priority is extended by the 6-row list `construction/notri/PRIO6.json`. Every block then pairs at rank 4, giving **56** rank-four cold ends instead of 44. `construction/notri/reproduce_notri.py` rebuilds this word from a #645 `reproduce.py --until word` output. It uses PartialK's generalisations of #645's and PR635's constructors (`cgx.py`, `port_stage_x.py`, `cold44x.py`; each differs from its original only in the documented parameters). It pins: + - the pairing ranks [4]*14, inside `cold44x.py` and again in the driver; + - the word (`3e99ba77…`); + - the canonical word, the local programs and the Clifford recipes. + `--control-g44` instead rebuilds #645's own gauge44 word (`78c7aada…`) with the same scripts. +2. **Layers on the no-triangle word (G44Stack).** `construction/layers_np/reproduce_np.py` applies to the no-triangle regroup word (`864ff4a1…`): + - research/gauge44-layered's six pivot swaps, mapped to the 504-helper numbering (`PIVOT-SWAP-NP.json`, swap word `beb3579f…`); + - the greedy HPE (46, `HPE-RECIPE-NP.json`); + - the exact cold44 (same 56 ends); + - the entering ends s4 (566/567/578/579 at U24) and x30 (608/610/543/555 at U30), plus BlockCombine's b6 and q4 dim-8 cold ends (`COLD-LAYERS-RECIPE-NP.json.gz`). p123 is negative on this base and dropped; j3 is dead. + The layered word is pinned (`a9de804f…`): profile `{1:2534, 2:346, 3:458, 4:178, 5:56, 8:8}`, width 3800. The signed research/gauge44-layered files `construction/layers/build_pivot_swap.py` and `construction/layers/layer_end_controls.py` are used unchanged, and the latter must reject exactly 59 controls. The global code is research/gauge44-layered's (spot-width rule): SPEC `width_spot_helpers` [270,282,294,306] and `pivot_swap` → `construction/layers_np/PIVOT-SWAP-NP.json`, giving spot widths [9,9,8,8]. +3. **p6n ends (NoTriReopen).** `construction/layers_p6n/reproduce_p6n.py` applies `COLD-LAYERS-RECIPE-P6N.json.gz` to the NP swapped HPE word with PR635's unchanged `build_cold_end.apply`. That is NP's cold-layer recipe plus six b-type dim-8 cold ends: [512,513], [311,510] and [522,327], which rebuild p123's lane as clean pairs. The result is the p6n word (`34b683fa…`): profile `{1:2540, 2:358, 3:446, 4:178, 5:56, 8:8}`, width 3794. The per-end layer-end controls (`construction/layers_p6n/layer_end_controls.py`, the variant Q6Reviewer signed for research/gauge44-pq6) must reject exactly 95 mutants. See `PROOF-NOTE-P6N.md`. +4. **Entrance promotions (BlockInvert).** `construction/promo/reproduce_promo.py --base p6n --k p6n-k4` applies the minimal recipe `PROMO-RECIPE-p6n-k4.json` to the p6n word with BlockInvert's deterministic constructor `build_promotion.py`. The recipe promotes the 16 entering helpers 627, 629–631, 635, 637–639, 651, 653–655, 659 and 661–663 (four E4 kernel groups) from E4 to E5, the time-reverse dual of end deepening. It re-chooses the frames of the gates affected. Only frame annotations and start frames move; the scalar program is unchanged. The promoted word is pinned (`0390ec65…`): profile `{1:2572, 2:326, 3:430, 4:194, 5:56, 8:8}`, widths `{4:80, 5:32, 7:54, 8:122, 9:216}`, width 3778. BlockInvert's `promo_controls.py` runs #645's independent `audit_local.py` on the honest word and must reject 11 recipe- and word-level mutants at pinned sites. The per-end layer-end controls (95) and the native chain then run with pins. The recipe is minimal: 48 entry-gate frame raises and no other frame re-choices. See `PROOF-NOTE-PROMO.md`. +5. **Read-set exchange (BRoute).** `construction/sw4/reproduce_sw4.py` runs BRoute's standard-library builder `build_sw4.py` with `SW4-RECIPE-P6k4.json`, 16 explicit moves, on the promoted word (`0390ec65…`). For the entering-copy pairs (h, r) = (461,25), (581,89), (591,415) and (603,431), the phase-B target read sets of h and its face register r are exchanged. The entrance pre-reads are deleted or inserted so that every register's value at the end of B is unchanged; the builder checks this mod p. Frames are repaired monotonically, and the width is unchanged. The SW4 word is pinned (`d232183f…`): profile `{1:2548, 2:342, 3:438, 4:186, 5:56, 8:8}`, width 3778. Four controls (C0 identity, N1 kept pre-read, N2 partial exchange, N3 wrong sign) must all hold, each at its exact rejection site pinned in the recipe. The per-end layer-end controls (95) and the native chain then run with pins. See `PROOF-NOTE-SW4.md` and `construction/sw4/NOTES.md`. +6. **#741's eight B frames (chafreaky).** `construction/frames/reproduce_frames.py` applies chafreaky's [#741](https://github.com/CrocSwap/integer-mult-bounds/pull/741) frame recipe, `FRAME-RECIPE-sw4.json`, byte-identical to #741's. Ported by CompetitorMine, it raises eight B-gate frames with the scalar program unchanged, giving #741's word `e7804702…`. It runs 3 pin controls, #741's 10 focused native controls, 95 layer-end controls and the native chain with pins. +7. **Joint exchange X4 (JointXF).** `construction/jx/reproduce_jx.py` runs JointXF's standard-library builder `build_jx.py` with `RECIPE-X4.json` on #741's word (step 6's output). It makes four disjoint instances of the read-set exchange, each over two target-sharing copy pairs: (448,472), (458,592), (470,604) and (482,614). The moved reads keep their stored frames, and #741's frames are included. All edits are explicit, and B-segment exactness is checked by Fraction replay. The final word is pinned (`1e1d99ba…`): profile `{1:2548, 2:338, 3:430, 4:194, 5:56, 8:8}`, width 3778. All seven pinned controls are rerun; C1 reproduces #741's word. See `PROOF-NOTE-FRAMES-X4.md`. +8. **Triangle-hybrid B rewrite (NewBArch).** `construction/barch/reproduce_barch.py` runs NewBArch's standard-library builder `build_tri.py` with `RECIPE-U8.json` on the X4 word (step 7's output). Eight disjoint slots receive a width-neutral B-delivery rewrite: an entering copy donates into a halves-copy so that one target read gets X+H, with holder restores and entrance pre-reads. The U8 word is pinned (`090fd574…`): profile `{1:2548, 2:338, 3:446, 4:162, 5:72, 8:8}`, width 3778. All 38 pinned controls are rerun (identity, the recipe word passing audit_local, and four audit_local-rejected mutants, globally and per slot). See `PROOF-NOTE-BARCH.md`. +9. **Leaver cells, re-stacked (LeaverSAT, LeaverSAT2).** `construction/leaver/reproduce_leaver.py --id k8` replaces the no-triangle word's construction with all eight all-K cells (01±, 23±, 45±, 67±). Each cell is LeaverSAT's 21-gate circuit, which uses the face-event leaver sources as mutable intermediates (R = 480, cell word `58e14a02…`). `construction/leaver/reproduce_leaver_chain.py --id k8` then re-applies items 2–8 with the signed builders unchanged and LeaverSAT's re-indexed recipes: swap, HPE, cold44, NP, p6n, 16 promotions, the re-indexed X4 exchange (the identity on this word) and 6 U8-style hybrids (`c836d892…`). It adds LeaverSAT2's exact global frame re-optimisation (`FRAME-RECIPE-LV-k8.json`), which gives the final word **`db2c7cfb…`**. Every intermediate word, control count and native pin is pinned (`LEAVER-PINS-k8.json`, `CHAIN-PINS-k8.json`). The per-word layer-end controls are the Q6Reviewer-signed `layer_end_controls_leaver.py` v2 (95 each), on the p6n, promoted, jx and hybrid words (`LEC-REASON-PINS-STACK-k8.json`) and on the re-framed final word (`LEC-REASON-PINS-k8.json`); its declared not-applicable sites are sha-proven identities or unbuildable mutants, each replaced by a same-class substitute that must be rejected. Items 5 and 6 don't apply on this word: the sw4 copies are dropped, and none of #741's frames survive. Items 1–8 remain in the package as the construction record of research/gauge44-barch. See `PROOF-NOTE-LEAVER.md`. +10. **Owner map (chafreaky's [#685](https://github.com/CrocSwap/integer-mult-bounds/pull/685), adapted by G44Pack).** The map is G44Pack3's K8c8, from its pattern-flow LNS (`pflns`) on the R = 480 k8 word. Its lineage is the #685/#741 map (chafreaky) via G44Pack's relabel and rewidth, followed by G44Pack3's LNS. It was admitted with this package's own code (NEWWORD discovery, `freeze_spec.py`, strict) at κ 0.001671387264390146. Only PLAN and OWNERS change. These are search inputs only; no verifier reads them. +11. **Expected values.** `data/SPEC.json` is re-derived by #645's discovery → `code/freeze_spec.py` → strict chain. + +- **κ = 0.001671387264390146** (conservative 0.001671387261540186). That is +0.4298% over research/gauge44-leaver (k5 cells, κ 0.001664233607446043; same chain on five cells, FO_c1 map) and +0.5672% over [#942](https://github.com/CrocSwap/integer-mult-bounds/pull/942) (κ 0.001661960547713947) and +1.3279% over #645, +0.9174% over research/gauge44-notri-layered (0.001656193765416678) and +0.7701% over research/gauge44-promo (0.00165861362787227) and +0.7273% over research/gauge44-promo-p6 (0.001659319032684569) and +0.7075% over research/gauge44-promo-p6sw (0.001659645685315104) and +0.5869% over research/gauge44-frames-x (0.001661634653669567) and +0.5679% over research/gauge44-barch (0.001661948695165034) and +0.6131% over [#741](https://github.com/CrocSwap/integer-mult-bounds/pull/741) (chafreaky, κ 0.001661202643272239) and +0.6654% over [#685](https://github.com/CrocSwap/integer-mult-bounds/pull/685) (chafreaky, κ 0.001660339298410333). The complex side certifies 0.001674185476674086429846 and PR589's bit supplier gives 0.001733427039589844234749, so **the complex side binds**. Under PR543 the bit side would cap κ at 0.001651096360425895 (`PROOF-NOTE-BIT.md`). +- **Evidence.** This package's own code admitted G44Pack3's K8c8 map (NEWWORD discovery → `freeze_spec.py` → strict): `verify_global.py` passes (`PASS_GAUGE44_STRICT_GLOBAL_REPLAY`, κ 0.001671387264390146) against G44Pack3's k8 locals, with SPEC `width_spot_helpers` [258,270,282,294] and `pivot_swap` → `construction/leaver/PIVOT-SWAP-k8.json`. It equals G44Pack3's own strict κ for K8c8. `RESULT.json` is that replay's `REPLAY.json`, converted to LF. The locals rebuilt by `reproduce_leaver_chain.py --id k8` match G44Pack3's strict locals byte for byte in every file except CLIFFORD-REVIEW and SCALAR-FRAME-AUDIT. Those two differ only in their `seconds` field, and the comparison normalises only that field (canonical `d1bf3c6f…`, programs `683f8323…`/`2d184e4d…`, Clifford `e3bfdfa2…`, pinned in `CHAIN-PINS-k8.json`). For this package, `data/SPEC.json` and a fresh `verify_global.py` replay on locals rebuilt by the two drivers are the binding record. +- **Independent price.** `independent/GAUGE44-INDEPENDENT-PRICE.json` is regenerated on this package's `data/PLAN.json` with the ported `independent/price_profile.py`: `PASS_FROZEN_PROFILE_TWO_EXACT_ENGINE_AND_OUTER47_CROSSCHECK`, κ equal to the strict replay. +- **Independent local audit.** `evidence/layers/LOCAL-AUDIT-LAYERED.json` is #645's `independent/audit_local.py`, run with `--main` on the final leaver word (content `db2c7cfb…`): `PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES`, 192 entering helpers, 78 low ends, 48 cold ends, 704 checked columns. Rerunning it reproduces the receipt except `elapsed_seconds` and, across zlib versions, `compressed_sha256`. +- **Historical #645 files (PR543-based, 492 helpers).** These are #645's files, retained unchanged and **not** updated for this package: `LOCAL-VALIDATION.json`, `CONSTRUCTION.md`, `hosting/`, `evidence/` (except `evidence/layers/`), the rest of `independent/`, `construction/reproduce.py` and its inputs, and `code/prepare_global.py`. They describe #645's word, owner map, PR543 supplier and κ 0.001649483702558979. `code/prepare_global.py` is #645's one-shot owner-map preparer, hard-wired to #645's parent plan and R = 492. No verifier imports it. This package's PLAN/OWNERS are frozen search output, and the strict replay checks them. `construction/reproduce.py` is still used for its `--until word` shadow and hamming inputs; its 492-word output is then superseded by `construction/notri/`. `construction/layers/reproduce_layers.py` is research/gauge44-layered's driver for the 492-helper layered word, shipped unchanged as signed; it is not used here. +- **Construction and code files** by committed LF SHA-256: + - `construction/notri/reproduce_notri.py` 90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8 (no-triangle driver) + - `construction/notri/cgx.py` 3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418 (PartialK's generalised construct_gauge_xcentre.py) + - `construction/notri/port_stage_x.py` 38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7 (PartialK's generalised build_port_stage.py) + - `construction/notri/cold44x.py` f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296 (PartialK's generalised build_gauge_cold44.py plus the PAIRING_RANKS pin) + - `construction/notri/PRIO6.json` de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15 (completion priority) + - `construction/layers_np/reproduce_np.py` 1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c (NP layer driver) + - `construction/layers_np/PIVOT-SWAP-NP.json` d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5 (layer input) + - `construction/layers_np/HPE-RECIPE-NP.json` 43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1 (layer input) + - `construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz` 3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0 (layer input) + - `construction/layers/build_pivot_swap.py` 8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8 (signed, unchanged) + - `construction/layers/layer_end_controls.py` 7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef (signed, unchanged) + - `construction/layers/reproduce_layers.py` 435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e (signed, unchanged, unused here) + - `construction/promo/reproduce_promo.py` f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026 (promotion driver) + - `construction/promo/build_promotion.py` 9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf (BlockInvert's constructor) + - `construction/promo/promo_controls.py` 786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372 (BlockInvert's controls) + - `construction/promo/make_recipe.py` ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122 (discovery-side recipe writer (search, not run)) + - `construction/promo/PROMO-RECIPE-p6n-k4.json` fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90 (minimal recipe) + - `construction/promo/LOCAL-PINS-p6n-k4.json` a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f (native pins) + - `construction/layers_p6n/reproduce_p6n.py` aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca (p6n driver) + - `construction/layers_p6n/layer_end_controls.py` fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e (per-end controls (Q6Reviewer-signed variant)) + - `construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz` 17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4 (p6n recipe) + - `construction/layers_p6n/P6N-SPEC.json` 132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1 (p6n end spec) + - `construction/sw4/reproduce_sw4.py` 3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac (SW4 driver) + - `construction/sw4/build_sw4.py` 9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66 (BRoute's builder (stdlib)) + - `construction/sw4/SW4-RECIPE-P6k4.json` fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa (16-move recipe with pinned rejection sites) + - `construction/sw4/LOCAL-PINS-sw4-P6k4.json` 3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327 (native pins) + - `construction/frames/reproduce_frames.py` dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832 (#741 frames driver) + - `construction/frames/build_frames.py` 200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb (#741's builder (chafreaky; ported)) + - `construction/frames/frame_controls.py` 477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77 (#741's controls (chafreaky; ported)) + - `construction/frames/FRAME-RECIPE-sw4.json` a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473 (#741's recipe, byte-identical) + - `construction/frames/LOCAL-PINS-frames-sw4.json` bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f (native pins) + - `construction/jx/reproduce_jx.py` 5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c (X4 driver) + - `construction/jx/build_jx.py` 3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916 (JointXF's builder (stdlib)) + - `construction/jx/RECIPE-X4.json` 9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd (explicit recipe with pinned controls) + - `construction/jx/LOCAL-PINS-jx-X4.json` 95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974 (native pins) + - `construction/barch/reproduce_barch.py` 19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1 (U8 driver) + - `construction/barch/build_tri.py` 0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e (NewBArch's builder (stdlib)) + - `construction/barch/run_controls.py` 42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476 (NewBArch's controls (38 outcomes)) + - `construction/barch/RECIPE-U8.json` 292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652 (explicit recipe) + - `construction/barch/LOCAL-PINS-barch-U8.json` 2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5 (control set and native pins) + - `construction/leaver/reproduce_leaver.py` 831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30 (cell driver) + - `construction/leaver/cgx_leaver.py` 3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c (cell constructor) + - `construction/leaver/reproduce_leaver_chain.py` 2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5 (chain driver) + - `construction/leaver/layer_end_controls_leaver.py` 4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206 (per-word reason re-pins and declared not-applicable sites, v2 (Q6Reviewer-signed)) + - `construction/leaver/build_frames_lv.py` 2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b (LeaverSAT2's frame builder) + The global code is research/gauge44-layered's, unchanged: assemble 4c270a99, assembly_controls e4c0f782, audit_allcold a87d7f48, bind 1d39bcc7, witness 779c5172. The bit-supplier code is research/gauge44-bit589's, unchanged: verify_global 16bd5e54, bit_supplier_controls e6d33fb6, price_profile d2f548ad. +- **Line endings.** These files had CRLF in the admitted trees and are committed as LF only (`crlf.replace(b'\r\n', b'\n') == lf`, no lone `\r`): + - `construction/jx/build_jx.py`: CRLF 775c2ae60eec9abc…, committed (LF) 3cc7550b0c24bb54… + - `construction/jx/RECIPE-X4.json`: CRLF 228079b304358500…, committed (LF) 9d42c6b38e8124f5… + - `construction/barch/build_tri.py`: CRLF 2432372f148a4d34…, committed (LF) 0fba65b31c2fd718… + - `construction/barch/run_controls.py`: CRLF 18e1f5953403784f…, committed (LF) 42639bf62bf57795… + - `construction/barch/RECIPE-U8.json`: CRLF 3e97088ad641eb6e…, committed (LF) 292f0e9f82824c41… + - `data/SPEC.json`: CRLF b2515d29d54e5027…, committed (LF) 1208c7c3ae84c158… + - `RESULT.json`: CRLF 454c25d5b0cd7df7…, committed (LF) 72bf797ce995ff61… + - `independent/GAUGE44-INDEPENDENT-PRICE.json`: CRLF 0b8482888e64327f…, committed (LF) 6e222b252f345344… + - `evidence/layers/LOCAL-AUDIT-LAYERED.json`: CRLF 6b63fc2bbea96cb5…, committed (LF) a596d7262374a023… + + +Clean-clone verification, from the repository root (Python 3.11+, assertions on; prepare the pinned #635 supplier as in the #645 section below): + +```sh +python -B research/gauge44-leaver8/verify_manifest.py +python -B research/gauge44-leaver8/construction/reproduce.py \ + --main . --pr635 /tmp/gauge44-pr635 --out /tmp/notri-base --until word +python -B research/gauge44-leaver8/construction/notri/reproduce_notri.py \ + --main . --pr635 /tmp/gauge44-pr635 --word-dir /tmp/notri-base --out /tmp/notri-word --word-only +python -B research/gauge44-leaver8/construction/layers_np/reproduce_np.py \ + --main . --pr635 /tmp/gauge44-pr635 --notri-dir /tmp/notri-word --hamming /tmp/notri-base/hamming --out /tmp/notri-np +python -B research/gauge44-leaver8/construction/layers_p6n/reproduce_p6n.py \ + --main . --pr635 /tmp/gauge44-pr635 --np-dir /tmp/notri-np --out /tmp/p6n +python -B research/gauge44-leaver8/construction/promo/reproduce_promo.py \ + --main . --pr635 /tmp/gauge44-pr635 --base p6n --base-dir /tmp/p6n --k p6n-k4 --out /tmp/promo +python -B research/gauge44-leaver8/construction/sw4/reproduce_sw4.py \ + --main . --pr635 /tmp/gauge44-pr635 --promo-dir /tmp/promo --recipe P6k4 --out /tmp/sw4 +python -B research/gauge44-leaver8/construction/frames/reproduce_frames.py \ + --main . --pr635 /tmp/gauge44-pr635 --sw4-dir /tmp/sw4 --out /tmp/frames +python -B research/gauge44-leaver8/construction/jx/reproduce_jx.py \ + --main . --pr635 /tmp/gauge44-pr635 --frames-dir /tmp/frames --out /tmp/x4 +python -B research/gauge44-leaver8/construction/leaver/reproduce_leaver.py \ + --main . --pr635 /tmp/gauge44-pr635 --word-dir /tmp/notri-base --id k8 --out /tmp/lv --word-only +python -B research/gauge44-leaver8/construction/leaver/reproduce_leaver_chain.py \ + --main . --pr635 /tmp/gauge44-pr635 --leaver-dir /tmp/lv --hamming /tmp/notri-base/hamming --id k8 --out /tmp/lvc +python -B research/gauge44-leaver8/independent/audit_local.py \ + --word /tmp/lvc/frames/FULL-WORD.json.gz --main . --output /tmp/lvc-audit.json +python -B research/gauge44-leaver8/verify_global.py \ + --main . --local /tmp/lvc/local --work /tmp/lvc-global +# kappa 0.001671387264390146 +``` + +Optional control: `reproduce_notri.py ... --control-g44 --out /tmp/notri-ctl` rebuilds #645's gauge44 word `78c7aada…`. + +## Predecessor: #645's README (unchanged below; paths read `research/gauge44-global`) + +### Gauge44: conditional κ = 0.001649483702558979 + +New contributions by **icekylinx**, with **OpenAI GPT-6 Astra** assistance. +Local review and packaging used OpenAI Codex. Original notices and Apache-2.0 licenses are retained. + +Under the retained all-size compiler, common-label/mutable-source realization, +whole-call hosting, precision/tape, exact-recovery, analytic-transfer and bit +H1–H5 interfaces, + +$$ +T(n)=O\!\left(n(\log n)^{1-\kappa_{645}}\right),\qquad +\kappa_{645}=\frac{1649483702558979}{10^{18}}=0.001649483702558979 +$$ + +(This is #645's own κ. **This package's κ is the one at the top of this README.**) + +The certified complex saving is `0.001652208994368411824947`. The unchanged +[#543](https://github.com/CrocSwap/integer-mult-bounds/pull/543) bit supplier gives +`0.001653826988146798944268`, so the complex side binds. The conservative complex +model separately certifies κ `0.001649483699681650`. + +### Construction + +This replaces the local supplier and all 72 owner assignments of pinned +[#635](https://github.com/CrocSwap/integer-mult-bounds/pull/635). Source/copy exchanges +at equal rank-one frames alter the factory's arbitrary-helper-input propagation. +An invertible completion of the retired rows and source-carried coordinate totals +then expose 44 rank-four cold endpoints. Exact input premixes, low-frame tails +and a recomputed full inverse realize them. + +| Per-invocation quantity | Complete #635 JP8 | Gauge44 | +| --- | ---: | ---: | +| Source / target ports | 112 / 112 | 112 / 112 | +| Helpers | 492 | 492 | +| Rank-four cold endpoints | 22 | 44 | +| Helper residual width | 3,894 | 3,794 | +| Paid local rank mass | 5,750 | 5,650 | + +The new paid local profile is `{1:2514, 2:404, 3:448, 4:160, 5:56, 8:8}`. +The explicit whole-family assignment covers 35,424 helper roles on 7,168 live +and 7,670 physical families. It retains the rank deficit 2,560 and charges every +idle remainder. Exact integer majorization certificates justify the owner +updates; the resulting map is a coordinate fixed point, with no claim of joint +optimality. + +The assembled κ is 0.809306% above #635. `data/FRONTIER.json` records Pro's dated +comparison snapshot; it is not a live ranking of community results. + +### Proof and evidence + +- `CONSTRUCTION.md`: exact cold-space calculation, dyadic realization and attribution. +- `hosting/PROOF.md`: capacity, exchange and majorization arguments. +- `independent/CENTRE-GUARD-REVIEW.md`: ordered center-frame interface and source carriers. +- `data/SPEC.json`, `evidence/ASSEMBLY.json`: strict component moments and outer parameters. +- `evidence/audit/`: actual controller, physical charts and finite invoice. +- `construction/INPUTS.json`, `data/UPSTREAM-PINS.json`: inherited input hashes. +- `MANIFEST.json`, `SOURCES.json`, `LOCAL-VALIDATION.json`: submitted bytes, provenance and local checks. + +Original Pro run receipts are retained as evidence; their raw logs remain in +the original archive outside the submission. Fresh replay writes new logs to +the selected output directory. + +### Incremental reproduction + +Use Python 3.11 or newer with assertions enabled. The required replay uses only +the standard library. The optional historical seed-discovery optimizer is not +part of admission. + +Prepare the pinned #635 supplier in a separate directory (the main dependencies +are already present in this repository): + +```sh +git fetch https://github.com/CrocSwap/integer-mult-bounds.git a6895a69f8ad98ab45777b03e9e6f48888c39f6f +mkdir -p /tmp/gauge44-pr635 +git archive FETCH_HEAD research/complex-571-cold14-st2 | tar -x -C /tmp/gauge44-pr635 +``` + +From the repository root, with fresh output directories: + +```sh +python -B research/gauge44-global/verify_manifest.py +python -B research/gauge44-global/construction/reproduce.py \ + --main . --pr635 /tmp/gauge44-pr635 \ + --out /tmp/gauge44-local --until phases +python -B research/gauge44-global/verify_global.py \ + --main . --local /tmp/gauge44-local/local --work /tmp/gauge44-global +``` + +The dedicated workflow also runs the independent literal-word audit, exact owner +reproduction, preserved-assertion comparison and independent pricing on Python +3.11 and 3.14. `hosting/README.md` and `independent/README.md` give those commands. +No ancestral full replay, optimizer search or PDF generation is required. + +The result remains a finite conditional witness. It does not establish an +unconditional multiplication theorem or a complete Lean formalization. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/RESULT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/RESULT.json new file mode 100644 index 0000000000..89be708d9c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/RESULT.json @@ -0,0 +1,86 @@ +{ + "status": "PASS_GAUGE44_STRICT_GLOBAL_REPLAY", + "kappa": "167166528321877/100000000000000000", + "kappa_decimal": "0.00167166528321877", + "complex_lower": "837232213634911250061/500000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "gain_over_pr635_percent": "2.164948243169117498148727559671554388312775174640418891709408020842883", + "spec_sha256": "d77c577278e68874444e1619e0762d0f3daa5d8d2bc985bb64eabae7e5ef3c44", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.406, + "exit_code": 0, + "log_sha256": "3aea2a4b68e7aaeadd9ffef649be0d25e2dff1535d9a61bffeaf6d92e55ba6a8" + }, + { + "name": "bind", + "seconds": 0.437, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "emit", + "seconds": 2.891, + "exit_code": 0, + "log_sha256": "faeccc2ac1d112bac2aa82080c12e064130fa3a86c07649abcc8e7fa1378a49c" + }, + { + "name": "audit", + "seconds": 12.484, + "exit_code": 0, + "log_sha256": "bdafdea32540bcb0d099a42bf4885382696f24741313b6f046d6a73f666525cf" + }, + { + "name": "invoice", + "seconds": 1.016, + "exit_code": 0, + "log_sha256": "439ce483feb3c79a1c8da5015e86db0958c0e5d91bf6f5b2f23c9f0c11b26531" + }, + { + "name": "assembly", + "seconds": 0.343, + "exit_code": 0, + "log_sha256": "2f59f1b00b2f789547daaf9a0480e866e30a5e3ee13ca0a17503e5728a47fa44" + }, + { + "name": "admission-controls", + "seconds": 0.422, + "exit_code": 0, + "log_sha256": "34527ddfe1e53bec71dc5759eb9a26417be6d4e93e76cbf80575d9bafebd876b" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.625, + "exit_code": 0, + "log_sha256": "c648542cd6dddbb154af7d02a41aaed1025603d9a4ab54f7c249d2b683e22249" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/SOURCES.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/SOURCES.json new file mode 100644 index 0000000000..0d69845db9 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/SOURCES.json @@ -0,0 +1,36 @@ +{ + "contributor": "icekylinx", + "research_assistance": "OpenAI GPT-6 Astra", + "local_review_and_packaging": "OpenAI Codex", + "original_archive": { + "filename": "integer_mult_round23_gauge44_delta.zip", + "sha256": "40a20a120f51cbed3c9ae4017603be74a9e9332ad4068bd914bf3e81bf8be6b4", + "manifest_sha256": "ffa23eb668ad558ebb5601470fc1997a9fb8cea0e188aa3c5d61318be9000603" + }, + "upstream_main": "17ce0c79b7b51c2634b439ea5a2b754f09909693", + "construction_parent": { + "pr": 635, + "commit": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f" + }, + "bit_supplier_pr": 589, + "packaging_changes": [ + "Omit original run logs; retain their original receipts as historical evidence.", + "Use repository paths and dollar-delimited Markdown mathematics.", + "Add manifest verification, incremental CI and local validation record.", + "Trim trailing whitespace in four Python files; complete ASTs are unchanged. Refresh the corresponding constructor input hash.", + "research/gauge44-bit589: PR589 bit supplier (G44Stack port, Bit589Reviewer SOUND-WITH-FIXES), G44Pack dz1 owner map, re-derived SPEC, LF line endings, regenerated MANIFEST.", + "research/gauge44-leaver: research/gauge44-barch tree plus construction/leaver (k5 cells, chain, frames); G44Pack3 FO_c1 owner map, re-derived SPEC, regenerated independent price receipt, RESULT.json = strict REPLAY, LF, regenerated MANIFEST.", + "research/gauge44-leaver8: research/gauge44-leaver tree with the k8 cell set (all eight cells, R = 480) and its chain recipes (LeaverSAT/LeaverSAT2 pkg_k8), layer_end_controls_leaver v2 with declared not-applicable sites on all five stack words (replacing the final-word interim skip), CHAIN-PINS-k8; G44Pack3 K8c8 owner map, re-derived SPEC, regenerated independent price receipt and local audit, RESULT.json = strict REPLAY, LF, regenerated MANIFEST." + ], + "attribution": "Original notices and licenses retained. See NOTICE.md, UPSTREAM-NOTICE.md and CONSTRUCTION.md.", + "whitespace_only_python_files": [ + "code/audit_allcold.py", + "code/bind_providers_portable.py", + "construction/construct_gauge_xcentre.py", + "independent/audit_local.py" + ], + "historical_bit_supplier_pr": 543, + "bit_supplier_note": "This package cites PR589 (inputs/PR589-EXPECTED.json, git blob e293ddc5…). PR543 is the supplier of #645's retained historical evidence (LOCAL-VALIDATION.json, independent/ audit files, hosting/, evidence/). RESULT.json is this package's strict replay.", + "owner_map": "G44Pack/G44Pack3: The map is G44Pack3's K8c8, from its pattern-flow LNS (`pflns`) on the R = 480 k8 word. Its lineage is the #685/#741 map (chafreaky) via G44Pack's relabel and rewidth, followed by G44Pack3's LNS. It was admitted with this package's own code (NEWWORD discovery, `freeze_spec.py`, strict) at κ 0.001671387264390146.", + "construction_changes": "PartialK: no-triangle gauge44 word (R=504, PRIO6, ranks [4]*14); G44Stack: layers on it (pivot swaps, s4, x30, b6, q4); LeaverSAT: no-helper mutable-leaver cells and re-stacked recipes, LeaverSAT2: frame re-optimisation (construction/leaver); NewBArch: triangle-hybrid B rewrite U8 (construction/barch); chafreaky #741: eight B frames (construction/frames, ported by CompetitorMine) and the owner map; JointXF: joint exchange X4 (construction/jx); BRoute: read-set exchange SW4 (construction/sw4); NoTriReopen: p6n ends (construction/layers_p6n); BlockInvert: entrance promotions E4->E5 (construction/promo, minimal recipe p6n-k4); drivers construction/notri/reproduce_notri.py, construction/layers_np/reproduce_np.py, construction/promo/reproduce_promo.py" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/UPSTREAM-NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/UPSTREAM-NOTICE.md @@ -0,0 +1,34 @@ +# Attribution and scope + +Four verified provider types are offered to every call: PR571's prefix word with twelve multi-cut cold kernels (PR568's unchanged constructor), the same word with forty width-five entrance promotions (PR569's unchanged frame constructor) before those kernels, PR575's plain joint-prefix provider, and PR568's eight-cold provider. A window MILP with an exact per-pattern model chooses the dispatch and a literal owner map. PR583's six source-bound kernel frame coalescences (its unchanged constructor and negative controls) are applied to every PR571-prefix provider word (ck and atm3), followed by two further coalescences that each first move one addition past two commuting additions (package code/build_gate_moves.py, extending PR583's constructor); a final hyperplane_end step (package code/build_hpe.py) then runs 46 single-gate cleanups h -= p right after part B at the dim-8 join U of their registers, so 46 width-8 entering helpers per call end at U with width 7; each such gate commutes with every earlier cleanup gate on its registers (for 8 of them the partner's one earlier gate x -= p only reads p), and the reordered program is replayed exactly. A window MILP (exact windows, RINS around an LP vertex) gives the dispatch ck 45 / atm3 21 / jp8 6 and the literal owner map. + +Pinned external sources (unchanged; `verify.py` checks their manifests and every file it uses): +- PR568 (`research/complex-multicold`, commit `71c99ac935a33bb7b59a1b4a7af8725a939b0b90`). +- PR571 (`research/structural-gain`, commit `b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3`). +- PR569 (`research/larger-gain`, commit `897213a855b7fb8a1b8b0e552a2f5c42e6c1b326`). +- PR575 (`research/complex-joint-prefix`, commit `eac6f7e378ab622dac50a2fd4b7ef6eab014de44`). +- PR583 (`research/kernel-frame-coalescing`, commit `89be768f0157f5a3d8e4db69cf1748768605eac9`). + +Provider construction is described as typed steps in `data/SPEC.json` (`build`); `verify.py` runs only allowlisted step types with their paired omission audits and checks every input and output content hash. `code/` holds the spec-driven global admission scripts adapted from PR571's `frontier-composition/global-code/` (OpenAI Codex assisted, Apache-2.0): every expected value is read from `data/SPEC.json` and compared only after independent recomputation. `code/generated_identity.py` and `code/generated_identity_controls.py`, and the decompressed-content artifact identities in the bind, audit, invoice, assembly and phase-timing scripts, are taken unchanged from PR586 by chafreaky (`research/promoted-kernel-coalescing`, commit `4846fee5b06af770e9b3a10c36200f673d656725`, OpenAI Codex assisted, Apache-2.0), including its proof-content and reference/metadata mutation controls; the normalization of descriptive width metadata after frame changes follows the same PR. + +In PR601, the owner map was nominated by a HiGHS window MILP (adapted from PR569's `global/nominate_width7.py`) with lazy cross-time Hall cuts; this package's re-solved map is described below. Neither is an admission dependency. + +DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. (The PR601 package this one starts from states: "Prepared by Claude Code (Anthropic) research agents.") Apache-2.0 applies; LICENSE is included. All notices, licenses, source pins and AI disclosures of the pinned sources and their ancestry are retained in those packages and are not replaced by this notice. All inherited conditional assumptions remain conditional. + +**This package (complex-571-cold14, DreamingOfClouds).** It starts from PR601 (jeremykothe2, `research/complex-571-hpem46`, commit `529ab7dcb59d5ea7a5798e9e06cf5b3aee8a1550`). Everything above is kept unchanged except the following: +- every provider chain (ck, atm3, jp8) gains the typed step `cold_end` (`code/build_cold_end.py`, `code/cold_end_controls.py`; recipes `data/recipes/*-cold_end.json.gz`); +- the generalised native chain and the global admission scripts accept cold helpers that end below FULL (with `0:U` wrappers), a refactored exact cleanup, and check the wrapper order; +- `data/PLAN.json` / `data/OWNERS.json.gz` (dispatch and literal owner map) come from a relocate/swap/ejection-chain/provider-flip annealing search started from PR601's map, refined by an exact pattern-restricted owner model (CP-SAT) with a literal edge-colouring expansion (not an admission dependency); +- `data/SPEC.json` holds the expected values, recorded by a discovery run and then checked by a strict run. + +The cold-end construction (a row-plus-column cone condition for low-frame ends, a rank-0 dirt-spread premix and multi-gate lower-frame cleanup) builds on PR591 / PR592 / PR593 / PR601 (jeremykothe2) and our PR599 (Lean: multi-gate and cold hyperplane-end tails). DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. Build on this at your own risk. + +**This package (complex-571-cold14-b3, jeremykothe2).** It is PR604's `complex-571-cold14` (DreamingOfClouds) with ColdBeyond's second cold end per block (two new `cold_end` A-gate primitives, `PROOF-NOTE.md`), ColdSupply's E1 entering pair and reviewed controls, a free dispatch (jp8 ×60, atm3 ×12) and a literal owner map from an exact per-time-Hall window MIP. All other construction, code, controls and proofs are PR604's and earlier contributors', unchanged. + +**This package (complex-571-cold14-k492).** It is complex-571-cold14-b3 with these changes: +- **K-triangle base words.** The leaver-read K-triangle skeleton atom and its read schedule (`data/TRI-SCHEDULE.json`) are by AtomScout, a Claude Code research agent. `code/construct_k_triangle.py` is PR531's `code/construct_504.py` (icekylinx, OpenAI Codex / GPT assisted, Apache-2.0; pinned source `direct_delivery`) extended with that atom. +- **Ported chains.** The PR604/B3 chains are ported stage by stage onto the K-triangle words by `code/build_port_stage.py` (Port480, a Claude Code research agent). `code/build_frame_regroup.py` extends PR583's `build_frames.py` (chafreaky). +- **Helper count R.** The generalisation of the global scripts to the provider helper count R is by GlobalR (a Claude Code research agent), with AtomReviewer's fixes (PROOF-NOTE-R.md). +- **Owner map.** The owner map, the cold_end recipes on the K-triangle words and the package assembly are by Stack492, Port480 and ColdBeyond (Claude Code research agents). + +Build on this at your own risk. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/assemble.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/assemble.py new file mode 100644 index 0000000000..8cee90b50e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/assemble.py @@ -0,0 +1,241 @@ +"""Gauge44 complete global admission with the retained native exact-complex moment. + +Prepared with OpenAI Codex assistance. The rational engines and outer +constraints are retained from PR547/PR548 and their preserved ancestry. +The bit operator is the cited unchanged PR589 supplier (PR555's punctured +R439 word, v = 111, decoder constant 63, two A-section transports), shipped +as inputs/PR589-EXPECTED.json and pinned by git blob id. Its rank-mass +deficit is derived from the word's parameters, T(2Kv - L*cst) at nine +stages (PR545/PR555 rank-mass identity), not hard-coded. The complex owner +and invoice inputs must be freshly emitted by the packaged physical replay. +All conservative admission guards and conservative moment/outer witnesses run +before the PR559 native-complex correction. The bit surcharge is retained. +""" +from pathlib import Path +from fractions import Fraction as Q +from decimal import Decimal, localcontext +import argparse,json,hashlib,importlib.util,os,sys +from collections import Counter +assert __debug__, 'Assertions required' +P=Path(sys.argv[1] if __name__=='__main__' else os.environ['GAIN_PR564_SOURCE']).resolve() +read=lambda p:json.loads(p.read_text()) +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +hash_ok=lambda x:isinstance(x,str) and len(x)==64 and all(t in '0123456789abcdef'for t in x) +digest=lambda x:hashlib.sha256(json.dumps(x,separators=(',',':')).encode()).hexdigest() +def load(n): + s=importlib.util.spec_from_file_location(n,P/'engines'/(n+'.py'));m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m +M,B,A=[load(n)for n in ('moment','base_two_moment','outer')] +def dec(x): + with localcontext()as ctx:ctx.prec=70;return str(Decimal(x.numerator)/Decimal(x.denominator)) +from witness import DISPATCH,CALL_ORDER,COUNTS,PIDS,X,DISCOVER,pin,SPOT,spot_widths +# Cited bit supplier: PR589's tune/EXPECTED.json (merged on main as research/e8-bit-p111-tuned/tune/EXPECTED.json). +BIT_PATH=Path(__file__).resolve().parents[1]/'inputs/PR589-EXPECTED.json' +BIT_BLOB='e293ddc557742637f9f679f083a1a282d87b1b13' +# Nine-stage bit template (PR463/PR510 chain, 32 replicas): L stages, T replicas, K=(L-1)//2 pairs, moment width M=1+7L. +BIT_L,BIT_T=9,32;BIT_K=(BIT_L-1)//2;BIT_M=1+7*BIT_L +def git_blob(data):return hashlib.sha1(b'blob '+str(len(data)).encode()+b'\0'+data).hexdigest() +def load_bit(data): + """The pinned supplier record: its full record (word parameters) and its nine-stage price.""" + assert git_blob(data)==BIT_BLOB,'bit supplier blob pin' + return json.loads(data) +def bit_deficit(word,live): + """Rank-mass deficit M*live - mass = T(2Kv - L*cst) of a v-port bit word with decoder constant cst (PR545/PR555). + cst is the sum of the retained totals' COPY ranks and live = 2KvT data wires; both are cross-checked here, and the + caller checks the result against the priced profile, so neither v nor cst is free.""" + v,cst,ranks=word['v'],word['decoder_constant'],word['copy_ranks'] + assert type(v)is int and type(cst)is int and all(type(r)is int and 00;return d + + +def assemble(owner,invoice,owner_sha,invoice_sha): + # These are admission receipts, not optional collections of successful rows. + # Require both orientations and every finite check before pricing anything. + assert owner['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert invoice['status']=='PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE' + assert all(hash_ok(x)for x in (owner_sha,invoice_sha,owner['template_sha256'],owner['controller_audit_sha256'],invoice['parent_template_sha256'])) + checks={'local_primitive_bound','logical','router','literal','mass','precision','tape','row','halving'} + assert set(invoice['strict_checks'])==checks + assert all(invoice['strict_checks'][name] is True for name in checks) + assert set(invoice['providers'])==set(PIDS) + assert invoice['provider_counts']==COUNTS + assert owner['all_live_owners_per_call_distinct'] is True + # R (helpers per provider word) is read from the invoice and must be shared by every provider; n=2v+R. + R=invoice['helpers'];assert type(R) is int and R>0 and all(p['helpers']==R for p in invoice['providers'].values()) + assert owner['owners_per_call']==2*112+R and owner['actual_helper_owner_charts']==owner['hosted_residuals']==72*R==pin('expected.hosted_residuals',owner['hosted_residuals']) + pin('expected.rank_mass',owner['rank_mass']) + pin('expected.actual_73column_sigmas',owner['actual_73column_sigmas']);pin('expected.cross_replica_helper_roles',owner['cross_replica_helper_roles']) + pin('expected.idle_remainders',owner['explicit_idle_remainder_children']) + assert invoice['complete_invocation_sweeps']==invoice['bridge_sweeps']==72 + assert invoice['live']==owner['live'] and invoice['physical']==owner['physical'] + assert invoice['centres']==8 + assert invoice['physical_stock_identity']==dict(data_and_owner_families=7168,local_helpers=R,private_centres=8,coefficient_work=2) + assert sum(invoice['physical_stock_identity'].values())==invoice['physical'] + assert invoice['controller_audit_sha256']==owner['controller_audit_sha256'] + for pid,p in invoice['providers'].items(): + assert set(p['local'])=={'forward','backward'} + assert p['helpers']==R and p['centres']==8 and p['n']==2*112+R and p['v']==112 and p['h']==9 + K='providers.'+pid+'.';pin(K+'entering',p['entering_helpers']);pin(K+'entrance',p['entrance_rank']) + pin(K+'inventory',p['width_inventory']) + assert all(type(w) is int and 0=0 for n in idle.values()) + idle=+idle;assert sum(idle.values())==owner['explicit_idle_remainder_children'] + pin('expected.idle_remainder_profile',{str(r):n for r,n in sorted(idle.items())}) + paid.update(idle) + assert dict(paid)=={int(r):n for r,n in owner['paid_profile'].items()} + assert invoice['compiler']==64*74**3 + assert invoice['local_adapters']==max(p['local_adapters']for p in invoice['providers'].values()) + assert invoice['local_primitive_bound']==max(p['local_primitive_bound']for p in invoice['providers'].values()) + # Recount the retained dedicated-bank envelope independently. Its geometry + # stays fixed, while every local primitive and wrapper comes from the actual + # selected provider/orientation sums above. + parent_live,parent_physical,parent_idle=11704,12218,16128 + parent_banks,rem=divmod(parent_live-2*112*4*8,9);assert rem==0 and parent_physical==parent_live+parent_banks+8+2 # parent R0=504 dedicated helpers per stage bank + assert owner['source_idle_children_charged']==parent_idle + bridges,shifts=2*112*72,4*112*8;moves=2*shifts + nonlocal_items=(4*112*8*9+2*112*8*9+2*72*R+parent_idle+9*parent_banks+bridges+shifts+moves+parent_live+parent_physical+invoice['wrapper_elementary_factors_charged']) + outside=8*nonlocal_items+64*73 + pervertex=(invoice['selected_real_component_primitives']+bridges+shifts+moves+parent_live+(72*invoice['local_adapters']+outside)*invoice['compiler']+64*parent_physical) + rebased=pervertex+65*(invoice['physical']-parent_physical)+(invoice['live']-parent_live) + assert invoice['unhosted_pervertex']==pervertex and invoice['hosted_rebased_pervertex']==rebased + used=max(pervertex,rebased) + prior=invoice['retained_prior_overcharge'] + if prior is not None: + assert hash_ok(prior['sha256']) and type(prior['previous_pervertex_allowance']) is int and prior['previous_pervertex_allowance']>0 + assert prior['added_complete_new_pervertex']==pervertex + assert prior['policy']=='Retain old allowance and add entire fresh mixed recount.' + used=max(used,prior['previous_pervertex_allowance']+pervertex) + assert invoice['conservative_pervertex_used']==used + finite=invoice['finite'] + assert 02*48*48) + assert actual_checks==invoice['strict_checks'] and all(actual_checks.values()) + bit_record=load_bit(BIT_PATH.read_bytes()) + bit=bit_record['nine'] + assert 'nine-stage' in bit['pipeline'] and '32 replicas' in bit['pipeline'] + c=Q(bit['bit_lower']) + bit_D=bit_deficit(bit_record['word'],bit['bit']['live']) + H={int(r):n for r,n in owner['paid_profile'].items()};pin('expected.global_profile',owner['paid_profile']) + # Claimed lower endpoints come from the spec; discovery derives them with the same certified moment engine. + # Either way they are verified below (accepted at b, rejected at b+1e-24). + if DISCOVER:b=Q(M.certify(H,73,owner['live'],False)['lower']);conservative_b=Q(M.certify(H,73,owner['live'],True)['lower']) + else:b=Q(X['complex_lower']);conservative_b=Q(X['conservative_complex_lower']) + assert owner['template_sha256']==invoice['template_sha256'] and owner_sha==invoice['owner_audit_sha256'] + pin('expected.live',owner['live']);pin('expected.physical',owner['physical']);assert owner['deficit']==2560 + assert owner['banked_residuals']==0 + def check_moment(side,h,m,W,lower,deficit,bad): + assert m*W-sum(r*n for r,n in h.items())==deficit and m*m>2*max(h)**2 + rows=[] + for z,accept in [(lower,True),(lower+Q(1,10**24),False)]: + l,u=M.moment(h,m,W,z,bad);ll,uu=B.moment(m,W,list(h.items()),z) + if bad: + fl,fu=B.moment(m,W,[(1,32*m*m*sum(h.values()))],z);ll+=fl/10**16;uu+=fu/10**16 + assert (u<1 and uu<1)if accept else(l>1 and ll>1) + rows.append(dict(side=side,surcharge=bad,endpoint=str(z),accept=accept,mercator=[str(l-1),str(u-1)],base_two=[str(ll-1),str(uu-1)])) + return rows + bitH={int(r):n for r,n in bit['profile'].items()} + assert BIT_M==64 and sum(r*n for r,n in bitH.items())==bit['bit']['rank_mass'] + bit_moments=check_moment('bit',bitH,BIT_M,bit['bit']['live'],c,bit_D,True) + conservative_moments=check_moment('conservative_complex',H,73,owner['live'],conservative_b,2560,True) + assert bit['bit']['two_level_coefficient_bits']0 + ceil=lambda x:-(-x.numerator//x.denominator);cut=max(ceil(36/gap**2),ceil(2*(4+512)/gap));assert cut*gap**2>=36 and cut*gap>=2*(4+512) + cuts.append(dict(exponent=str(a),gap=str(gap),cutoff_log2=str(cut)));chain.append(a) + q=chain[-1]*(1-2*eta);margin=(1-eta)*q/(1+q);ticks=margin*10**18;k=Q((ticks.numerator-1)//ticks.denominator,10**18) + bridge={'semantic':{'C0':{'base':2,'exponent':210000},'strict_literal_gap':1},'rows':{'degree_gap':Q(10**6)-Q(51*20161,25)}} + outer=A.assembly(chain[-1],bb,bridge,k,eta=eta,beta=beta);assert len(outer['strict_constraints'])==47 and all(v>0 for v in outer['strict_constraints'].values()) + controls=[] + for name,kk,ee,be in [('next_grid',k+Q(1,10**18),eta,beta),('zero_eta',k,Q(0),beta),('zero_beta',k,eta,Q(0)),('unit_beta',k,eta,Q(1))]: + try:A.assembly(chain[-1],bb,bridge,kk,eta=ee,beta=be) + except AssertionError:controls.append(name) + else:raise AssertionError(name) + return k,cuts,outer,controls + conservative_k,conservative_cuts,conservative_outer,conservative_controls=outer_witness(conservative_b) + pin('expected.conservative_kappa_decimal',dec(conservative_k)) + # Only after every conservative supplier/admission/outer check succeeds is + # the reviewed native exact-complex recurrence selected. Bit charge stays. + native_moments=check_moment('complex',H,73,owner['live'],b,2560,False) + k,cuts,outer,controls=outer_witness(b) + pin('expected.kappa_decimal',dec(k)) + assert M.moment(H,73,owner['live'],b,True)[0]>1 + assert M.moment(bitH,64,bit['bit']['live'],c+Q(1,10**24),False)[1]<1 + model_controls=['native_complex_endpoint_rejected_with_old_surcharge','omitting_bit_surcharge_would_fail_next_endpoint_rejection'] + moments=bit_moments+native_moments + input_hashes={'owner_audit':owner_sha,'fresh_invoice':invoice_sha,'package:inputs/PR589-EXPECTED.json':sha(BIT_PATH)} + input_hashes.update({'engines/'+name+'.py':sha(P/'engines'/(name+'.py'))for name in ('moment','base_two_moment','outer')}) + return dict(status='PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY',kappa=str(k),kappa_decimal=dec(k),complex_lower=str(b),complex_decimal=dec(b),bit_lower=str(c),bit_decimal=dec(c),binding='complex',gain_over_pr635_percent=dec(100*(k/Q(X['gain_baseline_kappa'])-1)),complex_profile=H,provider_counts=invoice['provider_counts'],surcharge_model={'complex':False,'bit':True},conservative_complex_lower=str(conservative_b),conservative_complex_decimal=dec(conservative_b),conservative_kappa=str(conservative_k),conservative_kappa_decimal=dec(conservative_k),conservative_moments=conservative_moments,conservative_bootstrap=conservative_cuts,conservative_outer={n:str(v)for n,v in conservative_outer['strict_constraints'].items()},conservative_controls=conservative_controls,model_controls=model_controls,native_correction_gain=dec(k-conservative_k),template_sha256=owner['template_sha256'],input_sha256=input_hashes,bit_supplier=dict(pr=589,repository='CrocSwap/integer-mult-bounds',commit='a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46',merged_as='b3eb785ac5b4b1ca2beea0f80db078a505626a90',path='research/e8-bit-p111-tuned/tune/EXPECTED.json',git_blob_sha1=BIT_BLOB,word=dict(v=bit_record['word']['v'],decoder_constant=bit_record['word']['decoder_constant'],copy_ranks=bit_record['word']['copy_ranks']),derived_deficit=bit_D,deficit_formula='T(2Kv-L*cst), L=%d T=%d K=%d M=%d'%(BIT_L,BIT_T,BIT_K,BIT_M),replay_scope='Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit.'),moments=moments,bootstrap=cuts,outer={n:str(v)for n,v in outer['strict_constraints'].items()},controls=controls,scope='Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification.') +if __name__=='__main__': + import sys + package,C,out=map(Path,sys.argv[1:4]);assert package.resolve()==P and not out.exists() + owner_path=C/'audit/OWNERS-AND-PROFILE.json';invoice_path=C/'audit/PREFIX-AND-INVOICE.json' + owner,invoice=read(owner_path),read(invoice_path) + assert owner['template_sha256']==read(C/'hosted/HOSTED.json')['template_sha256'] + r=assemble(owner,invoice,sha(owner_path),sha(invoice_path));out.write_text(json.dumps(r,indent=2)+'\n');print(r['status'],r['kappa_decimal']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/assembly_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/assembly_controls.py new file mode 100644 index 0000000000..93bca1ce6f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/assembly_controls.py @@ -0,0 +1,260 @@ +"""Independent admission controls for the N-provider native-complex assembly (per-provider controls). + +Prepared with OpenAI Codex assistance; Apache-2.0. Mutation receipts are +rebound to their new owner digest, so unrelated stale hashes cannot conceal +an incomplete width, provider, orientation, paid-profile or finite check. +The fresh physical replay remains a separate prerequisite. +""" +import argparse +import copy +import itertools +import math +import hashlib +import json +import os +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * + +assert __debug__, 'Assertions required' +P = Path(__file__).resolve().parent +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() +digest = lambda x: hashlib.sha256(json.dumps(x, sort_keys=True, separators=(',', ':')).encode()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + from assemble import assemble + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + baseline = assemble(owner, invoice, sha(owner_path), sha(invoice_path)) + + def empty_maps(o, i): + i['strict_checks'] = {} + i['providers'] = {} + + def understated_stock(o, i): + o['physical'] -= 1 + i['physical'] -= 1 + i['physical_stock_identity']['coefficient_work'] -= 1 + + def changed_profile(o, i): + o['paid_profile']['1'] += 2 + o['paid_profile']['2'] -= 1 + + def wrong_orientation(o, i): + c = next(c for c in i['selected_calls'] if c['stage'] == 0) + c['orientation'] = 'backward' + p = i['providers'][c['provider_id']] + z = p['local']['backward'] + c['program_sha256'] = p['program_hashes']['backward'] + for name in ('events', 'macros', 'real_component_primitives', + 'coefficient_work_primitive_count', 'pre_wrappers', 'post_wrappers'): + c[name] = z[name] + i['selected_real_component_primitives'] = sum(c['real_component_primitives'] for c in i['selected_calls']) + i['selected_coefficient_work_primitive_count'] = sum(c['coefficient_work_primitive_count'] for c in i['selected_calls']) + + def understated_prefix(o, i): + for p in i['providers'].values(): + for z in p['local'].values(): + z['prefix_bits'], z['prefix_l1'] = 1, '1' + i['global_prefix_bits'] = 1 + 37 + 72 + 72 + 4 + + def reordered_calls(o, i): + i['selected_calls'][0], i['selected_calls'][1] = i['selected_calls'][1], i['selected_calls'][0] + + def no_cold_wrappers(o, i): + for p in i['providers'].values(): + p['entering_helpers'] -= 4 + for z in p['local'].values():z['pre_wrappers'] = z['post_wrappers'] = p['entering_helpers'] + for c in i['selected_calls']: + c['entering_helpers'] = c['pre_wrappers'] = c['post_wrappers'] = i['providers'][c['provider_id']]['entering_helpers'] + i['wrapper_elementary_factors_charged'] = sum(2*c['pre_wrappers'] for c in i['selected_calls'])*i['factors_per_wrapper'] + + controls = [ + ('empty_certification_maps', empty_maps), + ('failed_invoice_status', lambda o, i: i.__setitem__('status', 'FAIL')), + ('nonboolean_precision_check', lambda o, i: i['strict_checks'].__setitem__('precision', 'true')), + ('wrong_owner_role_count', lambda o, i: o.__setitem__('actual_helper_owner_charts', o['actual_helper_owner_charts'] - 1)), + ('understated_physical_stock', understated_stock), + ('changed_profile_same_rank_mass', changed_profile), + ('insufficient_finite_C0', lambda o, i: i['finite'].__setitem__('required_C0_bits', 210001)), + ('missing_finite_check', lambda o, i: i['strict_checks'].pop('halving')), + ('wrong_reflected_orientation_selfconsistent_totals', wrong_orientation), + ('missing_selected_call', lambda o, i: i['selected_calls'].pop()), + ('wrong_selected_primitive_sum', lambda o, i: i.__setitem__('selected_real_component_primitives', i['selected_real_component_primitives'] - 1)), + ('wrong_selected_coefficient_work_sum', lambda o, i: i.__setitem__('selected_coefficient_work_primitive_count', i['selected_coefficient_work_primitive_count'] - 1)), + ('unpaid_wrapper_factors', lambda o, i: i.__setitem__('wrapper_elementary_factors_charged', i['wrapper_elementary_factors_charged'] - 144)), + ('wrong_global_compiler', lambda o, i: i.__setitem__('compiler', 1)), + ('wrong_global_adapter_maximum', lambda o, i: i.__setitem__('local_adapters', 1)), + ('understated_exact_prefix_and_global_sum', understated_prefix), + ('wrong_global_prefix_sum', lambda o, i: i.__setitem__('global_prefix_bits', 224)), + ('wrong_row_prefix_reserve', lambda o, i: i.__setitem__('row_prefix_extra', 0)), + ('wrong_parent_geometry_charge', lambda o, i: i.__setitem__('unhosted_pervertex', 1)), + ('wrong_rebased_geometry_charge', lambda o, i: i.__setitem__('hosted_rebased_pervertex', 1)), + ('wrong_complete_pervertex_envelope', lambda o, i: i.__setitem__('conservative_pervertex_used', 1)), + ('wrong_prior_added_complete_invoice', lambda o, i: i['retained_prior_overcharge'].__setitem__('added_complete_new_pervertex', 1)), + ('wrong_finite_router_bits', lambda o, i: i['finite'].__setitem__('router_bits', 1)), + ('wrong_finite_literal_bits', lambda o, i: i['finite'].__setitem__('literal_bits', 1)), + ('wrong_finite_physical_stock_bits', lambda o, i: i['finite'].__setitem__('physical_stock_bits', 1)), + ('wrong_finite_row_coefficient', lambda o, i: i['finite'].__setitem__('physical_row_coefficient', 1)), + ('reordered_complete_calls', reordered_calls), + ('understated_explicit_idle_remainders', lambda o, i: o.__setitem__('explicit_idle_remainder_children', o['explicit_idle_remainder_children']-1)), + ('understated_actual_chart_types', lambda o, i: o.__setitem__('actual_73column_sigmas', o['actual_73column_sigmas']-1)), + ('wrong_cross_replica_role_count', lambda o, i: o.__setitem__('cross_replica_helper_roles', o['cross_replica_helper_roles']-1)), + ('old_no_cold_wrapper_counts_selfconsistent', no_cold_wrappers), + ] + + def resync(i, c): + p = i['providers'][c['provider_id']] + c['program_sha256'] = p['program_hashes'][c['orientation']] + c['entering_helpers'], c['entrance_rank'] = p['entering_helpers'], p['entrance_rank'] + for name in ('events','macros','real_component_primitives','coefficient_work_primitive_count','pre_wrappers','post_wrappers'): + c[name] = p['local'][c['orientation']][name] + + # Every provider gets the full per-provider control set, substituting a partner provider where needed. + for P in PIDS: + Qp = partner(P) if len(PIDS)>1 else '__unregistered__' + widths = invoice['providers'][P]['widths'] + + def forged_program_hash(o, i, P=P): + i['providers'][P]['program_hashes']['forward'] = '0' * 64 + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = '0' * 64 + + def wrong_selected_call(o, i, P=P): + c = next(c for c in i['selected_calls'] if c['provider_id'] == P) + d = next(d for d in i['selected_calls'] if d is not c and (d['provider_id'] != P or len(PIDS)==1) and (d['stage'] - c['stage']) % 2 == 0) + c['stage'], d['stage'], c['replica'], d['replica'] = d['stage'], c['stage'], d['replica'], c['replica'] + + def stale_program(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['program_hashes'] = copy.deepcopy(i['providers'][Qp]['program_hashes']) + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = p['program_hashes'][c['orientation']] + + def stale_profile(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['paid_profile'] = copy.deepcopy(i['providers'][Qp]['paid_profile']) + p['children'] = sum(p['paid_profile'].values()) + + def moved(o, i, P=P): + a = next(c for c in i['selected_calls'] if c['provider_id'] == P) + b = next(c for c in i['selected_calls'] if c['provider_id'] != P and c['orientation'] == a['orientation']) + a['provider_id'], b['provider_id'] = b['provider_id'], a['provider_id'] + resync(i, a); resync(i, b) + + def compensating(o, i, P=P, Qp=Qp): + # Two dishonest profiles that cancel exactly in the dispatch-weighted aggregate. + g = math.gcd(COUNTS[P], COUNTS[Qp]); dp, dq = COUNTS[Qp] // g, COUNTS[P] // g + p, q = i['providers'][P], i['providers'][Qp] + p['paid_profile']['1'] += dp; q['paid_profile']['1'] -= dq + p['children'] += dp; q['children'] -= dq + + def forged_recipe(o, i, P=P): + name = 'CLIFFORD-RECIPES.json' + i['providers'][P]['artifacts'][name] = '0'*64 + o['source_artifacts']['providers/'+P+'/'+name] = '0'*64 + + def forged_phase(o, i, P=P): + i['providers'][P]['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] = '0'*64 + o['provider_phase_semantic_sha256'][P] = i['provider_phase_semantic_sha256'][P] = '0'*64 + + controls += [ + (P + ':missing_provider', lambda o, i, P=P: i['providers'].pop(P)), + (P + ':missing_backward_orientation', lambda o, i, P=P: i['providers'][P]['local'].pop('backward')), + (P + ':unpaid_scalar_primitive', lambda o, i, P=P: i['providers'][P]['local']['forward'].__setitem__('real_component_primitives', i['providers'][P]['local']['forward']['real_component_primitives'] - 1)), + (P + ':wrong_local_artifact_binding', lambda o, i, P=P: i['providers'][P]['artifacts'].__setitem__('LOCAL-PROGRAMS.json.gz', '0' * 64)), + (P + ':false_dirty_restoration', lambda o, i, P=P: i['providers'][P]['local']['backward'].__setitem__('all_dirty_helper_columns_restored', False)), + (P + ':wrong_declared_provider_count', lambda o, i, P=P: i['provider_counts'].__setitem__(P, i['provider_counts'][P] + 1)), + (P + ':wrong_local_compiler', lambda o, i, P=P: i['providers'][P].__setitem__('compiler', 1)), + (P + ':wrong_local_adapter_charge', lambda o, i, P=P: i['providers'][P].__setitem__('local_adapters', 1)), + (P + ':wrong_local_primitive_bound', lambda o, i, P=P: i['providers'][P].__setitem__('local_primitive_bound', 1)), + (P + ':forged_provider_and_call_program_hash', forged_program_hash), + (P + ':provider_at_wrong_call', wrong_selected_call), + (P + ':stale_partner_program_consistent_call_hashes', stale_program), + (P + ':stale_partner_profile_consistent_child_total', stale_profile), + (P + ':relocated_against_partner_same_counts', moved), + (P + ':compensating_false_profiles_with_' + Qp, compensating), + (P + ':synchronized_forged_source_recipe_hash', forged_recipe), + (P + ':synchronized_forged_phase_review_semantics', forged_phase), + ] + if len(PIDS)==1: + # Cross-provider substitutions require a second actual supplier. + # All single-provider program, phase, profile and dispatch bindings + # retain their direct mutations above and in the controller audit. + partner_only = {P+':stale_partner_program_consistent_call_hashes', + P+':stale_partner_profile_consistent_child_total', + P+':relocated_against_partner_same_counts', + P+':compensating_false_profiles_with_'+Qp} + controls = [(name, fn) for name, fn in controls if name not in partner_only] + # Width order and inventory: swap the first helper of every pair of distinct widths (same inventory), + # and shift one unit between them (same total). + first = {} + for h, w in enumerate(widths): + first.setdefault(w, h) + for wa, wb in itertools.combinations(sorted(first), 2): + def swap(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a], w[b] = w[b], w[a] + def shift(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a] += 1; w[b] -= 1 + controls.append((P + ':width_order_swap_%d_%d' % (wa, wb), swap)) + controls.append((P + ':width_inventory_shift_%d_%d' % (wa, wb), shift)) + for h in SPOT: + def cold_swap(o, i, P=P, h=h): + w = i['providers'][P]['widths']; j = w.index(9 if w[h] != 9 else 8); w[h], w[j] = w[j], w[h] # never the identity + controls.append((P + ':cold_helper_width_swap_%d' % h, cold_swap)) + rejected = [] + accepted = [] + for name, mutate in controls: + o, i = copy.deepcopy(owner), copy.deepcopy(invoice) + mutate(o, i) + oh = digest(o) + i['owner_audit_sha256'] = oh + try: + assemble(o, i, oh, digest(i)) + except (AssertionError, KeyError): + rejected.append(name) + else: + # Discovery has no pinned values to reject spec-only mutations; the strict run must reject every control. + if not DISCOVER: + raise AssertionError('Invalid admission receipt accepted: ' + name) + accepted.append(name) + try: + assemble(owner, invoice, '0' * 64, sha(invoice_path)) + except AssertionError: + rejected.append('wrong_owner_receipt_hash') + else: + raise AssertionError('Wrong owner digest accepted') + pin('expected.assembly_controls_rejected', len(rejected)) + assert baseline['controls'] == ['next_grid', 'zero_eta', 'zero_beta', 'unit_beta'] + assert baseline['conservative_controls'] == baseline['controls'] + assert baseline['surcharge_model'] == {'complex': False, 'bit': True} + assert len(baseline['model_controls']) == 2 + return dict( + status='PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS', + valid_receipt_kappa=baseline['kappa'], + input_sha256=baseline['input_sha256'], + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + rejected_controls=rejected, + discovery_accepted_controls=accepted, + exact_outer_controls=baseline['controls'], + conservative_outer_controls=baseline['conservative_controls'], + recurrence_model_controls=baseline['model_controls'], + scope='Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay.', + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/audit_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/audit_allcold.py new file mode 100644 index 0000000000..c86f7b0235 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/audit_allcold.py @@ -0,0 +1,254 @@ +"""OpenAI Codex independent serialized ASYNCHRONOUS controller/spectator audit. +Imports no emitter, optimizer, expander, edge-coloring, or source hosting code. +CLI: BASE HOSTED REPORT [--mutation-controls] +Each provider is independently read from BASE/providers, never from a baseline width histogram. +OpenAI Codex two-provider width-seven extension; retains all inherited independent controller checks. +The exact 63 width-seven and 9 plain calls are frozen below. +""" +import sys,json,gzip,hashlib,copy +assert __debug__, 'Assertions must remain enabled' +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +BASE,OUT,REPORT=map(lambda p:Path(p).resolve(),sys.argv[1:4]);read=lambda p:json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +parent=read(BASE/'split-centres/GLOBAL-TEMPLATE.json.gz') +ph=read(BASE/'work/complex-nine-native/DATA-PHASES.json') +ct=read(OUT/'GLOBAL-TEMPLATE.json.gz');summary=read(OUT/'HOSTED.json') +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +provider_ids=PIDS +providers={};registry={};phase_semantic_hashes={};artifact_semantic_hashes={} +required_artifacts={'work/complex-nine-native/DATA-PHASES.json'} +provider_files=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json') +for pid in provider_ids: + p=BASE/'providers'/pid + c=read(p/'CANONICAL-WORD.json.gz');checks=read(p/'LOCAL-CHECKS.json') + programs=read(p/'LOCAL-PROGRAMS.json.gz');replay=read(p/'INDEPENDENT-LOCAL-REPLAY.json') + phase=read(p/'CLIFFORD-REVIEW.json');adapters=read(p/'RESIDUAL-ADAPTERS.json')['recipes'] + widths=[len(c['frames'][c['final'][2*c['v']+h]])-len(c['frames'][c['start'][2*c['v']+h]])for h in range(c['R'])] # HPE: residual width |final|-|start| + assert tuple(widths[h]for h in SPOT)==spot_widths();pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + canonical_sha=sha(p/'CANONICAL-WORD.json.gz');programs_sha=sha(p/'LOCAL-PROGRAMS.json.gz') + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==canonical_sha and replay['local_programs_sha256']==programs_sha + assert replay['v']==c['v'] and replay['helpers']==c['R'] + assert set(programs)==set(checks)==set(replay['local'])==set(replay['paid_profiles'])=={'forward','backward'} + for orientation,events in programs.items(): + ck=checks[orientation];rr=replay['local'][orientation] + assert hashlib.sha256(json.dumps(events,sort_keys=True,separators=(',',':')).encode()).hexdigest()==ck['sha256'] + assert ck['events']==len(events) and ck['all_columns']==2*c['v']+c['R'] + assert ck['private_centers_cleared'] and ck['private_coefficient_stream_cleared_after_each_macro'] + assert rr['all_exact_columns']==2*c['v']+c['R'] and rr['private_work_erased'] + literal=Counter(e[-1]for e in events if e[0]in('climb','center')) + assert dict(literal)=={int(r):n for r,n in ck['paid_profile'].items()}=={int(r):n for r,n in c['local_profile'].items()} + assert ck['paid_profile']==replay['paid_profiles'][orientation] + assert phase['canonical_word_sha256']==canonical_sha and phase['recipe_sha256']==sha(p/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] + artifact_semantic_hashes[pid]=artifact_identities(p) + pin('providers.%s.artifact_semantic_sha256'%pid,artifact_semantic_hashes[pid]) + phase_semantic_hashes[pid]=artifact_semantic_hashes[pid]['CLIFFORD-REVIEW.json'] + for h,w in enumerate(widths): + assert 0>i)&1==0);a=q^(1<>i&1 else 0)for i in order]+[1<2*max(paid)**2 + return dict(profile=dict(sorted(paid.items())),mass=mass,hosted=HOSTED,entering=entering,cross_replica=cross,sigma_digest=digest.hexdigest(),sigmas=sigmas,idle_remainders=len(wanted),busy_family_checks=len(roles),invocations=72) + +r=audit(ct);raw=gzip.decompress((OUT/'GLOBAL-TEMPLATE.json.gz').read_bytes());assert hashlib.sha256(raw).hexdigest()==summary['template_sha256'];assert r['profile']=={int(k):v for k,v in summary['global_profile'].items()};assert r['sigmas']==read(OUT/'ACTUAL-SIGMAS.json.gz');assert r['sigma_digest']==summary['sigma_stream_sha256'] +assert all(hashlib.sha256((BASE/name).read_bytes()).hexdigest()==value for name,value in summary['source_artifacts'].items()) +controls=[] +def reject(name,mut): + if '--mutation-controls' not in sys.argv[4:]:return + q=copy.deepcopy(ct);mut(q) + try:audit(q) + except(AssertionError,KeyError,IndexError,ValueError,TypeError):controls.append(name) + else:raise AssertionError('ACCEPTED '+name) +enter=lambda q:next(o for c in q['calls']for o in c['owners'][(2*V):]if o[1][0]==4) +reject('alias two whole owners',lambda q:q['calls'][0]['owners'].__setitem__((2*V+1),q['calls'][0]['owners'][(2*V)])) +reject('helper on active data family',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,q['calls'][0]['owners'][0][0])) +reject('owner in private namespace',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,DATA)) +reject('wrong residual width',lambda q:enter(q)[1].__setitem__(3,enter(q)[1][3]-1)) +reject('wrong spectator coordinate',lambda q:enter(q)[1][4].__setitem__(0,72)) +reject('omit idle remainder',lambda q:q['idle_children'].pop()) +reject('understate physical reserve',lambda q:q.__setitem__('physical',PHYSICAL-1)) +# Single-provider dispatch still has all source/program/width binding controls. +if len(provider_ids)==1: + P=provider_ids[0] + at_p=lambda q:next(c for c in q['calls']if c['provider_id']==P) + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q:at_p(q).__setitem__('provider_id','__unregistered__')) + reject(P+': stale per-call local program hash',lambda q:at_p(q).__setitem__('local_program_sha256','0'*64)) + reject(P+': stale serialized provider program',lambda q:q['local_providers'][P]['local_programs']['forward'].pop()) + reject(P+': unbound residual adapter hash',lambda q:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + reject(P+': wrong provider width registry',lambda q:q['local_providers'][P]['widths'].__setitem__(narrow,providers[P]['widths'][narrow]-1)) + reject(P+': wrong per-call residual width',lambda q:at_p(q)['owners'][2*V+narrow][1].__setitem__(3,at_p(q)['owners'][2*V+narrow][1][3]-1)) + reject(P+': wrong sweep provider',lambda q:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep').__setitem__('provider_id','__unregistered__')) + reject(P+': entering helper width silently restored to nine',lambda q:q['local_providers'][P]['widths'].__setitem__(narrow,9)) +else: + # Per-provider substitution controls: every provider is swapped against a partner provider. + for P in provider_ids: + Qp=partner(P) + at_p=lambda q,P=P:next(c for c in q['calls']if c['provider_id']==P) + diff=[h for h in range(R)if providers[P]['widths'][h]!=providers[Qp]['widths'][h]] + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q,P=P,Qp=Qp,at_p=at_p:at_p(q).__setitem__('provider_id',Qp)) + reject(P+': stale per-call local program hash',lambda q,Qp=Qp,at_p=at_p:at_p(q).__setitem__('local_program_sha256',registry[Qp]['local_program_checks'][at_p(q)['orientation']]['sha256'])) + reject(P+': stale serialized provider program',lambda q,P=P,Qp=Qp:q['local_providers'][P].__setitem__('local_programs',registry[Qp]['local_programs'])) + reject(P+': unbound residual adapter hash',lambda q,P=P:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + if diff:reject(P+': partner width in provider width registry',lambda q,P=P,Qp=Qp,h=diff[0]:q['local_providers'][P]['widths'].__setitem__(h,providers[Qp]['widths'][h])) + reject(P+': wrong per-call residual width',lambda q,at_p=at_p,h=narrow:at_p(q)['owners'][2*V+h][1].__setitem__(3,at_p(q)['owners'][2*V+h][1][3]-1)) + reject(P+': wrong sweep provider',lambda q,P=P,Qp=Qp:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep'and DISPATCH[e['stage'],e['replica']]==P).__setitem__('provider_id',Qp)) + reject(P+': entering helper width silently restored to nine',lambda q,P=P,h=narrow:q['local_providers'][P]['widths'].__setitem__(h,9)) + +report=dict(status='PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS',template_sha256=summary['template_sha256'],complex_template_sha256=summary['template_sha256'],complex_live=DATA,complex_profile=r['profile'],complex_hosted_residuals=HOSTED,physical=PHYSICAL,rank_mass=r['mass'],deficit=2560,entering_helper_roles=r['entering'],cross_replica_helper_roles=r['cross_replica'],one_owner_per_complete_invocation=True,helper_busy_family_window_checks=r['busy_family_checks'],complete_invocations=r['invocations'],actual_orthogonal_73column_maps=len(r['sigmas']),actual_sigma_stream_sha256=r['sigma_digest'],all_actual_residual_and_spectator_charts=True,idle_remainders=r['idle_remainders'],mutations_rejected=controls,mutation_controls_run='--mutation-controls' in sys.argv[4:],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,widths_by_provider={pid:dict(sorted(Counter(providers[pid]['widths']).items()))for pid in provider_ids},provider_counts=dict(Counter(c['provider_id']for c in ct['calls'])),all_provider_program_phase_and_wrapper_bindings=True,scope='Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations.') +REPORT.parent.mkdir(parents=True,exist_ok=True) +REPORT.write_text(json.dumps(report,indent=2)+'\n');print(json.dumps(report,indent=2)) + +owners=dict(status='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE',template_sha256=summary['template_sha256'],paid_profile=r['profile'],live=DATA,physical=PHYSICAL,rank_mass=r['mass'],deficit=2560,hosted_residuals=HOSTED,banked_residuals=0,all_live_owners_per_call_distinct=True,owners_per_call=N,actual_helper_owner_charts=HOSTED,actual_73column_sigmas=len(r['sigmas']),cross_replica_helper_roles=r['cross_replica'],explicit_idle_remainder_children=r['idle_remainders'],source_idle_children_charged=sum(x['replicas']for x in parent['idle_children']),source_artifacts=summary['source_artifacts'],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,controller_audit_sha256=hashlib.sha256(REPORT.read_bytes()).hexdigest()) +(REPORT.parent/'OWNERS-AND-PROFILE.json').write_text(json.dumps(owners,indent=2)+'\n') + +# Literal residual frames are a compact export of the already checked offsets, +# not another global replay. Every row names its actual inherited axes. +frames=[] +for z in ct['idle_children']: + axes=list(map(int,ph['recipes'][z['port']]['idle_children'][z['child']]['orthogonal_axes'])) + tail=axes[z['pending_offset']:] + assert len(tail)==z['rank'] + frames.append(dict(z,orthogonal_axes=tail)) +frame_raw=json.dumps(frames,sort_keys=True,separators=(',',':')).encode() +portable=bytearray(gzip.compress(frame_raw,mtime=0));portable[9]=255 +(OUT/'IDLE-REMAINDER-FRAMES.json.gz').write_bytes(bytes(portable)) +frame_receipt=dict(status='PASS_LITERAL_IDLE_REMAINDER_FRAMES',template_sha256=summary['template_sha256'], + uncompressed_frames_sha256=hashlib.sha256(frame_raw).hexdigest(),children=len(frames), + rank_profile=dict(sorted(Counter(z['rank']for z in frames).items())), + source_data_phase_sha256=hashlib.sha256((BASE/'work/complex-nine-native/DATA-PHASES.json').read_bytes()).hexdigest(), + scope='Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child.') +(REPORT.parent/'IDLE-REMAINDER-FRAMES.json').write_text(json.dumps(frame_receipt,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/bind_providers_portable.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/bind_providers_portable.py new file mode 100644 index 0000000000..97e28da17e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/bind_providers_portable.py @@ -0,0 +1,67 @@ +"""Bind freshly verified plain and width-seven four-cold providers to the frozen literal owner plan. +Prepared with OpenAI Codex assistance; Apache-2.0. All byte-stable native +files are pinned to the plan. Only validated phase-receipt timing/serialization +and directory fields are rebound; no dispatch, width or owner choice changes. +""" +import argparse,copy,gzip,hashlib,json,shutil +from collections import Counter +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +assert __debug__, 'Assertions required' +ap=argparse.ArgumentParser(description=__doc__) +for name in ('baseline','plan','out'):ap.add_argument('--'+name,type=Path,required=True) +ap.add_argument('--provider',action='append',required=True,help='PID=DIR');a=ap.parse_args();assert not a.out.exists();a.out.mkdir(parents=True) +def read(p):return json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +base=a.out/'base';shutil.copytree(a.baseline/'complex-global/base',base) +ap2=dict(x.split('=',1)for x in a.provider);dirs={k:Path(v)for k,v in ap2.items()};assert set(dirs)==set(PIDS) +for pid,src in dirs.items():shutil.copytree(src,base/'providers'/pid) +pin('data.plan_sha256',sha(a.plan)) +plan=read(a.plan);original=copy.deepcopy(plan);sources={};helpers=set() # R: helper count per provider word; all providers must agree +assert set(plan['provider_registry'])==set(dirs) +assert {(c['stage'],c['replica']):c['provider']for c in plan['provider_calls']}==DISPATCH,'PLAN dispatch differs from spec dispatch' +stable=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json') +for pid,desc in plan['provider_registry'].items(): + d=base/'providers'/pid + word,program,checks,native,phase=[read(d/name)for name in('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-REVIEW.json')] + assert (word['v'],word['h'],len(word['centers']))==(112,9,8) and type(word['R']) is int and word['R']>0;helpers.add(word['R']) + assert word['ports']==desc['ports'] and word['centers']==desc['centers'] + widths=[len(word['frames'][word['final'][r]])-len(word['frames'][word['start'][r]])for r in range(2*112,2*112+word['R'])] # HPE: residual width |final|-|start| + assert tuple(widths[h]for h in SPOT)==spot_widths() + assert widths==desc['widths'];pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + assert native['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + pin('providers.%s.native_negative_controls'%pid,len(native['negative_controls_rejected'])) + assert native['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and native['local_programs_sha256']==sha(d/'LOCAL-PROGRAMS.json.gz') + assert phase['status']=='PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES' + assert phase['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and phase['recipe_sha256']==sha(d/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] is True and phase['endpoint_adapters']==224 + pin('providers.%s.phase_edges'%pid,phase['directed_edges']) + assert set(program)==set(checks)=={'forward','backward'} + expected={int(r):n for r,n in checks['forward']['paid_profile'].items()};pin('providers.%s.expected_profile'%pid,checks['forward']['paid_profile']) + for orientation,events in program.items(): + profile=Counter() + for e in events: + if e[0]=='climb':profile[e[5]]+=1 + elif e[0]=='center':profile[e[4]]+=1 + assert dict(profile)==expected=={int(r):n for r,n in checks[orientation]['paid_profile'].items()}=={int(r):n for r,n in native['paid_profiles'][orientation].items()} + assert hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest()==checks[orientation]['sha256'] + identities=artifact_identities(d) + pin('providers.%s.artifact_semantic_sha256'%pid,identities) + assert identities==desc['artifact_semantic_sha256'] + for name in ('LOCAL-CHECKS.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json'): + assert sha(d/name)==desc['artifact_sha256'][name],(pid,name,'changed non-reference artifact') + for c in plan['provider_calls']: + if c['provider']==pid: + assert c['orientation']==('forward'if c['stage']%2==0 else'backward') + assert c['local_program_sha256']==checks[c['orientation']]['sha256'] + desc['directory']='providers/'+pid + desc['artifact_sha256']={name:sha(d/name)for name in desc['artifact_sha256']} + sources[pid]=dict(artifact_sha256=desc['artifact_sha256'],canonical_content_sha256=hashlib.sha256(json.dumps(word,sort_keys=True,separators=(',',':')).encode()).hexdigest(),all_phase_edges=phase['directed_edges']) +assert len(helpers)==1,'providers disagree on helper count R: %s'%sorted(helpers) +plan['runtime_source_plan_sha256']=sha(a.plan) +(a.out/'PLAN.json').write_text(json.dumps(plan,indent=2)+'\n') +receipt=dict(status='PASS_FROZEN_048_ALLCOLD_DISPATCH_FRESH_PROVIDER_BINDING',source_plan_sha256=sha(a.plan),runtime_plan_sha256=sha(a.out/'PLAN.json'),providers=sources,only_rebound_fields=['provider_registry.directory','provider_registry.artifact_sha256','runtime_source_plan_sha256']) +(a.out/'BINDING.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(receipt['status']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/bit_supplier_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/bit_supplier_controls.py new file mode 100644 index 0000000000..e86b8527b4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/bit_supplier_controls.py @@ -0,0 +1,111 @@ +"""Negative controls for the cited PR589 bit supplier and its derived rank-mass deficit. + +Apache-2.0. Each control mutates one input of the changed bit-supplier sites in assemble.py (the pinned record, the +deficit derivation from the word's parameters, the profile/live binding, the claimed endpoint) and runs the unchanged +assemble() on the fresh owner/invoice receipts. Every control must be rejected; the unmutated run must pass. +`revert_hardcoded_9984` restores the PR543 constant the parent package hard-coded: with PR589's word it must fail. +""" +import argparse +import copy +import hashlib +import json +import os +import tempfile +from fractions import Fraction as Q +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) + +assert __debug__, 'Assertions required' +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + import assemble as A + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + args = (owner, invoice, sha(owner_path), sha(invoice_path)) + baseline = A.assemble(*args) + data = A.BIT_PATH.read_bytes() + record = A.load_bit(data) + word = record['word'] + assert A.bit_deficit(word, record['nine']['bit']['live']) == 10272 == 32 * (8 * 111 - 9 * 63) + + real_load, real_deficit = A.load_bit, A.bit_deficit + + def with_record(mutate): + def load(d): + r = copy.deepcopy(real_load(d)); mutate(r); return r + return load + + def shift_profile(r): # one rank-1 child becomes rank 2: rank mass +1, totals unchanged + p = r['nine']['profile']; p['1'] -= 1; p['2'] += 1; r['nine']['bit']['rank_mass'] += 1 + + bumped = data.replace(record['nine']['bit_lower'].encode(), + str(Q(record['nine']['bit_lower']) + Q(1, 10**24)).encode(), 1) + assert bumped != data + pr543 = (source_package / 'inputs/PR543-EXPECTED.json').read_bytes() + controls = [ + # deficit site: the parent's hard-coded constant, restored + ('revert_hardcoded_9984', dict(bit_deficit=lambda w, live: 9984)), + # deficit site: each word parameter perturbed alone + ('ports_112', dict(load_bit=with_record(lambda r: r['word'].__setitem__('v', 112)))), + ('decoder_constant_64_copy_ranks_unchanged', dict(load_bit=with_record(lambda r: r['word'].__setitem__('decoder_constant', 64)))), + # v=111, cst=64 derives 32*(888-576)=9984: consistent word, wrong for the priced profile + ('decoder_constant_64_with_one_copy_rank_8', dict(load_bit=with_record(lambda r: (r['word'].__setitem__('decoder_constant', 64), r['word']['copy_ranks'].__setitem__(0, 8))))), + ('eight_retained_totals', dict(load_bit=with_record(lambda r: (r['word'].__setitem__('copy_ranks', [7] * 8), r['word'].__setitem__('decoder_constant', 56))))), + ('live_minus_one', dict(load_bit=with_record(lambda r: r['nine']['bit'].__setitem__('live', r['nine']['bit']['live'] - 1)))), + # profile binding: same totals, rank mass +1 + ('profile_rank_mass_plus_one', dict(load_bit=with_record(shift_profile))), + ('profile_rank_mass_receipt_mismatch', dict(load_bit=with_record(lambda r: r['nine']['bit'].__setitem__('rank_mass', r['nine']['bit']['rank_mass'] + 1)))), + # endpoint: the next 1e-24 grid point + ('bit_lower_next_grid', dict(load_bit=with_record(lambda r: r['nine'].__setitem__('bit_lower', str(Q(r['nine']['bit_lower']) + Q(1, 10**24)))))), + ('not_nine_stage_record', dict(load_bit=with_record(lambda r: r['nine'].__setitem__('pipeline', r['nine']['pipeline'].replace('nine-stage', 'eleven-stage'))))), + # pinned-input site: tampered bytes and the parent's PR543 file under the PR589 pin + ('tampered_bytes_next_grid', dict(read=bumped)), + ('pr543_file_under_pr589_pin', dict(read=pr543)), + ] + rejected = [] + scratch = Path(tempfile.mkdtemp(prefix='bitctl-')) + for name, patch in controls: + saved_path = A.BIT_PATH + try: + if 'read' in patch: + tmp = scratch / (name + '.json'); tmp.write_bytes(patch['read']); A.BIT_PATH = tmp + A.load_bit = patch.get('load_bit', real_load) + A.bit_deficit = patch.get('bit_deficit', real_deficit) + try: + A.assemble(*args) + except (AssertionError, KeyError): + rejected.append(name) + else: + raise AssertionError('Invalid bit supplier accepted: ' + name) + finally: + A.load_bit, A.bit_deficit, A.BIT_PATH = real_load, real_deficit, saved_path + if 'read' in patch: + tmp.unlink() + scratch.rmdir() + assert rejected == [n for n, _ in controls] + again = A.assemble(*args) + assert again['kappa'] == baseline['kappa'] and again['bit_lower'] == baseline['bit_lower'] + return dict( + status='PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS', + kappa=baseline['kappa_decimal'], bit_lower=baseline['bit_lower'], bit_decimal=baseline['bit_decimal'], + binding=baseline['binding'], bit_supplier=baseline['bit_supplier'], + derived_deficit=baseline['bit_supplier']['derived_deficit'], + rejected_controls=rejected, + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n', newline='\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/emit_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/emit_allcold.py new file mode 100644 index 0000000000..8e147f80a6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/emit_allcold.py @@ -0,0 +1,150 @@ +"""Two-provider width-seven whole-owner derivative, adapted with OpenAI Codex assistance. +Based on PR514 and its credited PR484/507 lineage. +CLI: --base VERIFIED_VARIANT --owners ASYNC-OWNERS.json.gz --plan ASYNC-PLAN.json --out OUT +No optimizer or unpublished word builder runs. The frozen map explicitly names +one whole helper per family per complete invocation, plus borrowed spectators. +""" +import sys,json,gzip,hashlib,copy,argparse +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +parser=argparse.ArgumentParser(description=__doc__) +parser.add_argument('--base',type=Path,required=True);parser.add_argument('--owners',type=Path,required=True);parser.add_argument('--plan',type=Path,required=True);parser.add_argument('--out',type=Path,required=True) +a=parser.parse_args();BASE,MAP,PLAN,OUT=(p.resolve()for p in(a.base,a.owners,a.plan,a.out));assert not OUT.exists();OUT.mkdir(parents=True) +class OH: + @staticmethod + def idle_basis(q): + z=next(i for i in range(9)if not(q>>i)&1);u=q^(1<>i&1 else 0)for i in order]+[1<0 and all(x['R']==R for x in registry.values()),'providers disagree on helper count R' + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz')and replay['local_programs_sha256']==sha(directory/'LOCAL-PROGRAMS.json.gz') + widths=[len(pc['frames'][pc['final'][2*V+h]])-len(pc['frames'][pc['start'][2*V+h]])for h in range(R)] # HPE: residual width |final|-|start| + assert widths==plan['provider_registry'][provider_id]['widths'] + for name in provider_files: + value=sha(directory/name);assert value==plan['provider_registry'][provider_id]['artifact_sha256'][name] + source_artifacts[f'providers/{provider_id}/{name}']=value + registry[provider_id]=dict(local_programs=programs,canonical_word_sha256=sha(directory/'CANONICAL-WORD.json.gz'),local_programs_sha256=sha(directory/'LOCAL-PROGRAMS.json.gz'),local_program_checks=checks,exact_local_clifford_recipe_sha256=sha(directory/'CLIFFORD-RECIPES.json'),residual_adapter_sha256=sha(directory/'RESIDUAL-ADAPTERS.json'),v=V,h=9,R=R,ports=pc['ports'],centers=pc['centers'],widths=widths) +assert len(roles)==72*R # one whole-owner role per (call, provider helper) +selected={(c['stage'],c['replica']):c for c in plan['provider_calls']} +assert len(selected)==72 and set(selected)==set(call_order) +assert Counter(c['provider']for c in selected.values())==COUNTS +per_call_widths={(c['stage'],c['replica']):c['widths']for c in plan['per_call_widths']} +for key,c in selected.items(): + assert c['time']==at[key] and c['provider']in registry + assert per_call_widths[key]==registry[c['provider']]['widths'] +for key in('local_programs','exact_local_clifford_recipe_sha256','residual_adapter_sha256'):t.pop(key) +t['local_providers']=registry +rank={z['child']:z['rank']for z in parent['idle_children']};side={};pairs={} +for e in parent['execution_schedule']: + if e['kind']=='idle_cover_sweep': + for sd,ch in enumerate(e['child_indices']):side[ch]=sd;pairs[ch]=e['pair'] +bycall=defaultdict(dict);used=defaultdict(set);sigmas={};digest=hashlib.sha256();entering=0 +for z in roles: + s,rep,h=z['stage'],z['replica'],z['helper'];i,cp,off,w,f=z['child'],z['copy'],z['offset'],z['width'],z['family'];orp,port=divmod(cp,V) + assert 0<=s<9 and 0<=rep=0 and off+w<=rank[i] + assert z['time']==at[s,rep] and z['time'] in plan['windows'][f'{orp},{i}'][1] + B=OH.idle_basis(canon['ports'][port]);pending=list(map(int,ph['recipes'][port]['idle_children'][i]['orthogonal_axes']));assert len(pending)==rank[i] + occ=[B.index(v)for v in pending[off:off+w]];sp=OH.spectators(canon['ports'][port],pending,off,w)if w<9 else[] + order=occ+sp+[j for j in range(M)if j not in occ and j not in sp];assert len(order)==len(set(order))==M + sigma=[B[j]for j in order];sigmahash=hashlib.sha256(json.dumps(sigma,separators=(',',':')).encode()).hexdigest();sigmas[sigmahash]=sigma + route=[4,i,off,w,sp]if w<9 else[3,i,off];bycall[s,rep][h]=[f,route];entering+=w<9 + cells=set(range(off,off+w));assert not used[i,orp,port]&cells;used[i,orp,port]|=cells + digest.update(json.dumps([s,rep,h,f,sigmahash],separators=(',',':')).encode()+b'\n') +for c in t['calls']: + k=(c['stage'],c['replica']);assert set(bycall[k])==set(range(R)) + c['owners']=c['owners'][:(2*V)]+[bycall[k][h]for h in range(R)];assert len({f for f,r in c['owners']})==2*V+R and all(f2*max(paid)**2 + +assert all(c['local_program_sha256']==registry[c['provider_id']]['local_program_checks'][c['orientation']]['sha256']for c in t['calls']) +t['provider_dispatch']='For each indivisible local_cover_sweep, execute local_providers[call.provider_id].local_programs[call.orientation] with that provider residual adapters and Clifford recipes. The sweep provider_id must equal its call provider_id.' +raw=json.dumps(t,sort_keys=True,separators=(',',':')).encode();(OUT/'GLOBAL-TEMPLATE.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +res=dict(status='EMITTED_MIXED_PROVIDER_ASYNCHRONOUS_WHOLE_OWNER_COMPLEX_TEMPLATE', + template_sha256=hashlib.sha256(raw).hexdigest(), + parent_template_sha256=hashlib.sha256(gzip.decompress((BASE/'split-centres/GLOBAL-TEMPLATE.json.gz').read_bytes())).hexdigest(), + live=DATA,physical=physical,global_profile=dict(sorted(paid.items())), + rank_mass=sum(r*n for r,n in paid.items()),deficit=2560,maxchild=max(paid), + hosted_residuals=len(roles),banks_per_stage=[0]*9,entering_helper_roles=entering, + unique_actual_73column_sigmas=len(sigmas),sigma_stream_sha256=digest.hexdigest(), + cross_replica_helper_roles=sum(z['replica']!=z['owner_replica']for z in roles), + asynchronous_order_sha256=hashlib.sha256(json.dumps(call_order,separators=(',',':')).encode()).hexdigest(), + source_artifacts=source_artifacts,provider_counts=dict(Counter(c['provider_id']for c in t['calls'])), + scope='Two actual verified plain/width-seven providers dispatched per complete invocation; independent controller/spectator/normalization and complete finite invoice admission required.') +(OUT/'HOSTED.json').write_text(json.dumps(res,indent=2)+'\n');(OUT/'ACTUAL-SIGMAS.json.gz').write_bytes(gzip.compress(json.dumps(sigmas,separators=(',',':')).encode(),mtime=0));print(json.dumps(res,indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/freeze_spec.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/freeze_spec.py new file mode 100644 index 0000000000..dd0358d396 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/freeze_spec.py @@ -0,0 +1,29 @@ +"""Freeze independently recomputed discovery values before strict replay.""" +import argparse +import json +from pathlib import Path + +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--spec', type=Path, required=True) +ap.add_argument('--discovery', type=Path, required=True) +a = ap.parse_args() +spec = json.loads(a.spec.read_text()) +for line in (a.discovery/'WITNESS-RECORD.jsonl').read_text().splitlines(): + key, value = json.loads(line) + parts = key.split('.') + if len(parts)>3 and parts[0]=='providers' and parts[2]=='artifacts': + parts = parts[:3] + ['.'.join(parts[3:])] + target = spec + for part in parts[:-1]: + target = target.setdefault(part, {}) + if parts[-1] in target: + assert target[parts[-1]]==value, 'Conflicting independent recomputations: '+key + target[parts[-1]] = value +assembly = json.loads((a.discovery/'ASSEMBLY.json').read_text()) +for key in ('complex_lower','conservative_complex_lower','kappa','kappa_decimal','conservative_kappa_decimal'): + spec['expected'][key] = assembly[key] +spec['expected']['assembly_controls_rejected'] = 69 +spec['expected']['provider_counts'] = {'gauge44':72} +spec['expected']['mutations_rejected'] = 15 +a.spec.write_text(json.dumps(spec, indent=2)+'\n') +print('Frozen exact witness for strict replay:', assembly['kappa_decimal']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/generated_identity.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/generated_identity.py new file mode 100644 index 0000000000..74a9b60479 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/generated_identity.py @@ -0,0 +1,62 @@ +"""Proof-relevant identities for generated artifacts, independent of gzip streams. + +Immutable source archives retain their exact byte hashes. For freshly emitted +artifacts, gzip identity is the exact decompressed payload and JSON identity +retains every field. Only CLIFFORD-REVIEW's root timing field is excluded. +Literal receipt references are checked against actual files before replacing +the three gzip references (and the phase recipe reference) with content hashes. +Prepared with OpenAI Codex assistance; Apache-2.0. +""" +from pathlib import Path +import copy +import gzip +import hashlib +import json +import math + +if not __debug__: + raise RuntimeError('Assertions must remain enabled') + +FILES=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json') + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + +def json_identity(value): + return hashlib.sha256(json.dumps(value,sort_keys=True,separators=(',',':'),allow_nan=False).encode('utf-8')).hexdigest() + +def payload_identity(path): + return hashlib.sha256(gzip.decompress(Path(path).read_bytes())).hexdigest() + +def phase_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'CLIFFORD-REVIEW.json').read_bytes())if value is None else value) + assert value['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz'),'stale phase canonical word reference' + assert value['recipe_sha256']==sha(directory/'CLIFFORD-RECIPES.json'),'stale phase recipe reference' + seconds=value.pop('seconds') + assert type(seconds)in(int,float) and math.isfinite(seconds) and seconds>=0,'invalid phase timing metadata' + value['canonical_word_sha256']=payload_identity(directory/'CANONICAL-WORD.json.gz') + value['recipe_sha256']=json_identity(json.loads((directory/'CLIFFORD-RECIPES.json').read_bytes())) + return value + +def native_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'INDEPENDENT-LOCAL-REPLAY.json').read_bytes())if value is None else value) + for field,name in [('canonical_word_sha256','CANONICAL-WORD.json.gz'),('local_programs_sha256','LOCAL-PROGRAMS.json.gz')]: + assert value[field]==sha(directory/name),'stale native artifact reference: '+field + value[field]=payload_identity(directory/name) + return value + +def artifact_identities(directory): + directory=Path(directory) + result={} + for name in FILES: + path=directory/name + if name.endswith('.gz'): + result[name]=payload_identity(path) + else: + value=phase_value(directory)if name=='CLIFFORD-REVIEW.json'else native_value(directory)if name=='INDEPENDENT-LOCAL-REPLAY.json'else json.loads(path.read_bytes()) + result[name]=json_identity(value) + return result diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/invoice_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/invoice_allcold.py new file mode 100644 index 0000000000..b244cd5994 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/code/invoice_allcold.py @@ -0,0 +1,329 @@ +"""Fresh call-specific mixed-provider finite invoice. + +Prepared with OpenAI Codex assistance, Apache-2.0. The scalar/Horner recount +and finite inequalities are adapted from the retained PR558 -> PR552 -> +PR531 invoice_final.py, whose notices and sources are preserved in the package. +Every call selects a hash-bound provider. Shared compiler reserves use maxima; +primitive work, coefficient work, local children and wrappers are also summed +from actual selected provider/orientation records. +""" +import argparse, gzip, hashlib, json +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path +assert __debug__, 'Assertions required' + +def read(path): + data=path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix=='.gz' else data) +def filehash(path): return hashlib.sha256(path.read_bytes()).hexdigest() +def contenthash(path): + data=path.read_bytes() + return hashlib.sha256(gzip.decompress(data) if path.suffix=='.gz' else data).hexdigest() +def programhash(events): + return hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest() + +def recount_provider(local_dir, registry): + cp=local_dir/'CANONICAL-WORD.json.gz'; pp=local_dir/'LOCAL-PROGRAMS.json.gz' + rp=local_dir/'INDEPENDENT-LOCAL-REPLAY.json' + w,programs,replay=read(cp),read(pp),read(rp) + checks=read(local_dir/'LOCAL-CHECKS.json') + assert set(programs)=={'forward','backward'} + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==filehash(cp)==registry['canonical_word_sha256'] + assert replay['local_programs_sha256']==filehash(pp)==registry['local_programs_sha256'] + assert programs==registry['local_programs'] + assert checks==registry['local_program_checks'] + assert filehash(local_dir/'CLIFFORD-RECIPES.json')==registry['exact_local_clifford_recipe_sha256'] + assert filehash(local_dir/'RESIDUAL-ADAPTERS.json')==registry['residual_adapter_sha256'] + v,helpers,h,m=w['v'],w['R'],w['h'],73 + assert (v,h)==(112,9) and type(helpers) is int and helpers>0 + assert registry['v']==v and registry['R']==helpers and registry['h']==h + assert registry['ports']==w['ports'] and registry['centers']==w['centers'] + assert replay['v']==v and replay['helpers']==helpers + n=2*v+helpers + widths = [len(w['frames'][w['final'][r]])-len(w['frames'][w['start'][r]]) for r in range(2*v, 2*v+helpers)] # HPE: |final|-|start| + terminal_codim = sum(h-len(w['frames'][w['final'][r]]) for r in range(2*v, 2*v+helpers)) # HPE: 0 for FULL-ended helpers + ends = {r: f for r, f in enumerate(w['final']) if r >= 2*v and f != 1} + assert len(widths) == helpers + entrances = {r: f for r, f in enumerate(w['start']) if r >= 2*v and f != 0} + entering = len(entrances) + wrapped = {**entrances, **{r: 0 for r in ends if r not in entrances}} # COLD-HPE: cold hyperplane-ended helpers carry wrappers too + cold_ends = len(wrapped) - len(entrances) + assert entering == replay['entering_helpers'] + local = {} + for orientation, events in programs.items(): + # Endpoint equality and native frames were already independently + # replayed on all n columns in the hash-bound receipt above. + env = {('L', r): Q(1) for r in range(n)} + peak = Q(1) + real = macros = workops = 0 + paid = Counter() + wrappers = {'pre': set(), 'post': set()} + for event in events: + tag = event[0] + if tag == 'climb': + paid[event[5]] += 1 + elif tag == 'center': + paid[event[4]] += 1 + elif tag == 'residual_adapter': + _, kind, register, frame, *end = event + assert kind in wrappers and wrapped.get(register) == frame + assert end == ([ends[register]] if register in ends else []) # HPE: R_{E,U}^-1 and L_{E,U}^-1 name U + assert register not in wrappers[kind] + wrappers[kind].add(register) + elif tag == 'scalar': + macros += 1 + scalar = event[1] + op, target = scalar[0], tuple(scalar[1]) + if op == 'clear': + env[target] = Q(0) + count = 1 + elif op == 'copy': + env[target] = env[tuple(scalar[2])] + count = 1 + elif op == 'scale': + q = Q(scalar[2], scalar[3]) + numerator, denominator = abs(q.numerator), q.denominator + assert numerator and numerator & (numerator-1) == 0 + assert denominator & (denominator-1) == 0 + env[target] *= abs(q) + count = abs(numerator.bit_length()-denominator.bit_length()) + int(q < 0) + elif op == 'add': + source = tuple(scalar[2]) + q = Q(scalar[3], scalar[4]) + numerator, denominator = abs(q.numerator), q.denominator + assert source != target and numerator > 0 + assert denominator & (denominator-1) == 0 + acc, count = 0, 1 # clear coefficient work + for i, bit in enumerate(bin(numerator)[2:]): + if i: + acc *= 2 + count += 1 + peak = max(peak, acc*env[source]) + if bit == '1': + acc += 1 + count += 1 + peak = max(peak, acc*env[source]) + value = Q(acc) + for _ in range(denominator.bit_length()-1): + value /= 2 + count += 1 + peak = max(peak, value*env[source]) + assert value == abs(q) + count += 2 # signed accumulation and work clear + env[target] = env.get(target, Q(0)) + abs(q)*env[source] + workops += count + else: + raise AssertionError(op) + real += 2*count + peak = max(peak, env[target]) + else: + assert tag in ('adapter', 'phase') + assert wrappers['pre'] == wrappers['post'] == set(wrapped) + assert all(value == 0 for register, value in env.items() if register[0] == 'C') + prior = replay['local'][orientation] + assert prior['all_exact_columns'] == n and prior['private_work_erased'] + assert peak == Q(prior['prefix_l1_upper']) and peak < 2**prior['charged_payload_bits'] + bits = peak.numerator.bit_length()-peak.denominator.bit_length()+1 + assert bits == prior['prefix_bits_upper'] + assert real == checks[orientation]['real_component_primitive_bound'] + assert macros == checks[orientation]['scalar_macros'] + assert dict(paid) == {int(r): count for r, count in checks[orientation]['paid_profile'].items()} + assert dict(paid) == {int(r): count for r, count in replay['paid_profiles'][orientation].items()} + local[orientation] = dict( + events=len(events), macros=macros, real_component_primitives=real, + prefix_l1=str(peak), prefix_bits=bits, + coefficient_work_primitive_count=workops, all_exact_columns=n, + dirty_helper_columns=helpers, all_dirty_helper_columns_restored=True, + private_centres_and_coefficient_work_cleared=True, + pre_wrappers=len(wrappers['pre']), post_wrappers=len(wrappers['post']), + endpoint_evidence='Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json') + + centres = len(w['centers']) + children = sum(checks['forward']['paid_profile'].values()) + assert checks['forward']['paid_profile'] == checks['backward']['paid_profile'] + macro_bound = max(row['macros'] for row in local.values()) + compiler = 64*(m+1)**3 + adapters = 16*(macro_bound+children+n+centres)+64*m + primitive_bound = max(row['real_component_primitives'] for row in local.values())+adapters*compiler + + assert widths==registry['widths'] + artifacts={f.name:filehash(f) for f in local_dir.iterdir() if f.is_file()} + phase_review=read(local_dir/'CLIFFORD-REVIEW.json') + return dict(local=local,helpers=helpers,centres=centres,v=v,h=h,n=n, + entering_helpers=entering,entrance_rank=sum(len(w['frames'][f]) for f in w['start'][2*v:]), + terminal_codimension=terminal_codim, hyperplane_ended_helpers=len(ends), # HPE: always reported (0 for FULL-ended words) + **({'cold_hyperplane_ended_helpers': cold_ends} if cold_ends else {}), # COLD-HPE: absent without cold ends + width_inventory=dict(sorted(Counter(widths).items())),widths=widths, + local_adapters=adapters,local_primitive_bound=primitive_bound, + compiler=compiler,children=children,artifacts=artifacts, + paid_profile=checks['forward']['paid_profile'], + program_hashes={o:programhash(events) for o,events in programs.items()},semantic_artifact_sha256=artifact_identities(local_dir)) + + +def run(base, hosted, audit, out, retained_invoice=None): + local_dir=base/'split-centres' + parent=read(local_dir/'GLOBAL-TEMPLATE.json.gz') + template_path=hosted/'GLOBAL-TEMPLATE.json.gz' + template=read(template_path); summary=read(hosted/'HOSTED.json') + owners=read(audit/'OWNERS-AND-PROFILE.json'); control=read(audit/'ASYNC-AUDIT.json') + template_hash=contenthash(template_path) + assert template_hash==control['complex_template_sha256']==owners['template_sha256']==summary['template_sha256'] + assert owners['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert template['recipe']==parent['recipe'] + assert 'local_programs' not in template + assert set(template['local_providers'])==set(PIDS) + providers={pid:recount_provider(base/'providers'/pid,registry) + for pid,registry in template['local_providers'].items()} + for pid,p in providers.items(): + assert owners['provider_phase_semantic_sha256'][pid]==control['provider_phase_semantic_sha256'][pid]==p['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] + # The fresh controller admission must cite precisely these provider bytes. + for name in ('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json'): + path='providers/'+pid+'/'+name + assert summary['source_artifacts'][path]==p['artifacts'][name] + assert owners['source_artifacts'][path]==p['artifacts'][name] + # R is read from the provider words (all must agree); the parent dedicated-bank + # envelope keeps its own helper count R0 from the parent split-centres word. + assert len({p['helpers'] for p in providers.values()})==1,'providers disagree on helper count R' + v,h,m,centres=112,9,73,8 + helpers=next(iter(providers.values()))['helpers']; n=2*v+helpers + assert all((p['v'],p['h'],p['centres'],p['n'])==(v,h,centres,n) for p in providers.values()) + parent_helpers=read(local_dir/'CANONICAL-WORD.json.gz')['R'] + stages,replicas,blocks_per_stream=9,8,4 + call_count=len(template['calls']) + assert call_count==stages*replicas==control['complete_invocations'] + assert control['one_owner_per_complete_invocation'] + assert len({(c['stage'],c['replica']) for c in template['calls']})==call_count + parent_calls={(c['stage'],c['replica']):c for c in parent['calls']} + sweeps=[e for e in template['execution_schedule'] if e['kind']=='local_cover_sweep'] + assert len(sweeps)==call_count + selected=[]; selected_paid=Counter(); provider_counts=Counter(); orientation_counts=Counter() + scalar=coefficient_work=macros=0; wrapper_factors=0 + factors_per_wrapper=2*(m-1) + for c in template['calls']: + pid,orientation=c['provider_id'],c['orientation']; p=providers[pid] + old=parent_calls[(c['stage'],c['replica'])] + assert orientation==old['orientation'] and c['owners'][:2*v]==old['owners'][:2*v] + assert c['local_program_sha256']==p['program_hashes'][orientation] + r=p['local'][orientation] + scalar+=r['real_component_primitives']; coefficient_work+=r['coefficient_work_primitive_count']; macros+=r['macros'] + wrapper_factors+=(r['pre_wrappers']+r['post_wrappers'])*factors_per_wrapper + provider_counts[pid]+=1; orientation_counts[(pid,orientation)]+=1 + selected_paid.update({int(k):v for k,v in p['paid_profile'].items()}) + selected.append(dict(stage=c['stage'],replica=c['replica'],provider_id=pid,orientation=orientation, + program_sha256=c['local_program_sha256'],events=r['events'],macros=r['macros'], + real_component_primitives=r['real_component_primitives'], + coefficient_work_primitive_count=r['coefficient_work_primitive_count'], + entering_helpers=p['entering_helpers'],entrance_rank=p['entrance_rank'], + pre_wrappers=r['pre_wrappers'],post_wrappers=r['post_wrappers'])) + assert provider_counts==COUNTS + # The sweep registry is executable: no hidden use of the historical supplier. + by_call={(c['stage'],c['replica']):c for c in template['calls']} + for e in sweeps: + c=by_call[(e['stage'],e['replica'])] + assert e['provider_id']==c['provider_id'] + assert set(p['compiler'] for p in providers.values())=={64*(m+1)**3} + compiler=64*(m+1)**3 + adapters=max(p['local_adapters'] for p in providers.values()) + primitive_bound=max(p['local_primitive_bound'] for p in providers.values()) + bridge_steps=sum(event['kind']=='bridge' for event in parent['recipe']) + bridge_sweeps=sum(event['kind']=='bridge' for event in template['execution_schedule']) + assert bridge_sweeps==replicas*bridge_steps + bridge_additions=2*v*bridge_sweeps + shifts=blocks_per_stream*v*replicas; moves=2*shifts + parent_live,parent_physical=parent['live'],parent['physical'] + data_stock=2*v*blocks_per_stream*replicas + assert (parent_live-data_stock)%stages==0 + parent_banks=(parent_live-data_stock)//stages + assert parent_banks>=0 and parent_physical==parent_live+parent_helpers+centres+2 + nonlocal_items=(4*v*replicas*stages+2*v*replicas*stages+2*call_count*helpers + +sum(child['replicas'] for child in parent['idle_children'])+stages*parent_banks + +bridge_additions+shifts+moves+parent_live+parent_physical+wrapper_factors) + outside=8*nonlocal_items+64*m + parent_pervertex=(scalar+bridge_additions+shifts+moves+parent_live + +(call_count*adapters+outside)*compiler+64*parent_physical) + live,physical=template['live'],template['physical'] + mass,profile=owners['rank_mass'],owners['paid_profile'] + assert m*live-mass==owners['deficit']==2560 + assert mass==sum(int(r)*count for r,count in profile.items()) + assert physical==live+helpers+centres+2 + assert live==owners['live'] and physical==owners['physical'] + assert live<=parent_live and physical<=parent_physical + assert not template['bank_padding']['families'] + assert owners['explicit_idle_remainder_children']<=owners['source_idle_children_charged'] + # The old dedicated-bank geometry is only a conservative reserve envelope. + # Its singular program is never used as evidence for a mixed invocation. + rebased=parent_pervertex+65*(physical-parent_physical)+(live-parent_live) + used=max(rebased,parent_pervertex); retained=None; payload=512 + if retained_invoice is not None: + previous=read(retained_invoice) + assert previous['compiler']==compiler and previous['charged_prefix_bits']==payload + previous_bound=previous['conservative_pervertex_used'] + used=max(used,previous_bound+parent_pervertex) + retained=dict(sha256=filehash(retained_invoice),previous_pervertex_allowance=previous_bound, + added_complete_new_pervertex=parent_pervertex,policy='Retain old allowance and add entire fresh mixed recount.') + half=m//2; group=2**(half*half) + for i in range(1,half+1): group*=2**(2*i)-1 + stock,streamed_mass=group*physical,group*mass + logical=group*used+64; router=compiler*(logical+1)*(stock+1)**2 + g_bound,e_bound,c0=2**30000,2**100000,2**210000 + total_mass=streamed_mass+e_bound + literal=2*g_bound*stock**2+8*streamed_mass+4*stock+4+32*m + row=2*stock.bit_length()+9909+252+2*payload + maxchild=max(map(int,profile)) + inequalities=dict(local_primitive_bound=primitive_bound<2**48, + logical=logical<2**6050,router=router2*maxchild*maxchild) + assert all(inequalities.values()) + localbits=max(r['prefix_bits'] for p in providers.values() for r in p['local'].values()) + input_l2_bits=(m+1)//2 + required_prefix=localbits+input_l2_bits+call_count+bridge_sweeps+4 + assert required_prefix R helper map +# (verify.py checks the spec value against the constructor's HELPER-MAP.json) +SPOT=tuple(SPEC.get('width_spot_helpers',(270,282,294,306))) +# A pivot swap moves a kernel family's pivot role p -> x; the old pivot p becomes an ordinary cold helper and its width +# goes 8 -> 9 (construction/layers, PR641 PROOF-NOTE-PIVOT). Expected spot widths are derived from the package's pinned +# pivot-swap recipe (path and sha256 in the spec), not from free data: 9 at a swapped-out pivot, 8 otherwise. +_PKG=Path(os.environ['WITNESS_SPEC']).resolve().parents[1] +def _old_pivots(): + ps=SPEC.get('pivot_swap') + if not ps:return frozenset() + raw=(_PKG/ps['recipe']).read_bytes();import hashlib + assert hashlib.sha256(raw).hexdigest()==ps['sha256'],'pivot-swap recipe pin' + return frozenset(s['pivot']for s in json.loads(raw)['swaps']) +OLD_PIVOTS=_old_pivots() +def spot_widths(v=112): + """Expected residual widths at the spot helpers (helper indices) of the gauge44 provider.""" + return tuple(9 if 2*v+h in OLD_PIVOTS else 8 for h in SPOT) +PIDS=tuple(sorted(set(DISPATCH.values()))) +COUNTS=dict(Counter(DISPATCH.values())) +assert DISCOVER or set(PROVIDERS)==set(PIDS),'spec providers differ from dispatch providers' +def lookup(key): + """Dotted spec path; a segment may itself contain dots when it names a file (split at most once per known file suffix).""" + v=SPEC;parts=key.split('.') + while parts: + for n in range(len(parts),0,-1): + k='.'.join(parts[:n]) + if isinstance(v,dict) and k in v:v=v[k];parts=parts[n:];break + else:raise KeyError('spec has no key %s'%key) + return v +def pin(key,got): + """Strict mode: got must equal the spec value at dotted key; the failure names the key.""" + if DISCOVER: + if os.environ.get('WITNESS_RECORD'): # discovery bookkeeping only: append (key, value) for the spec writer + with open(os.environ['WITNESS_RECORD'],'a')as f:f.write(json.dumps([key,got],default=str)+chr(10)) + return got + want=lookup(key) + assert got==want,'SPEC MISMATCH %s: expected %s got %s'%(key,json.dumps(want)[:400],json.dumps(got,default=str)[:400]) + return got +def partner(pid): + """A different provider for substitution controls (next in sorted order).""" + assert len(PIDS)>1 + return PIDS[(PIDS.index(pid)+1)%len(PIDS)] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/COLD44-RECIPE.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/COLD44-RECIPE.json.gz new file mode 100644 index 0000000000..6f59d88920 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/COLD44-RECIPE.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/COMPLETION-PRIORITY.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/COMPLETION-PRIORITY.json new file mode 100644 index 0000000000..e0df30aeef --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/COMPLETION-PRIORITY.json @@ -0,0 +1,746 @@ +{ + "0,1,2,3": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 64, + 67 + ] + }, + "0,1,4,5": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 32, + 35 + ] + }, + "0,1,6,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 24, + 27 + ] + }, + "0,2,4,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 16, + 18, + 19, + 297, + 301, + 303 + ] + }, + "0,2,5,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 40, + 42, + 43, + 313, + 317, + 319 + ] + }, + "0,3,4,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 72, + 74, + 75, + 329, + 333, + 335 + ] + }, + "0,3,5,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 112, + 114, + 115, + 345, + 349, + 351 + ] + }, + "1,2,4,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 8, + 10, + 11, + 361, + 365, + 367 + ] + }, + "1,2,5,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 48, + 50, + 51, + 377, + 381, + 383 + ] + }, + "1,3,4,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 80, + 82, + 83, + 393, + 397, + 399 + ] + }, + "1,3,5,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 104, + 106, + 107, + 409, + 413, + 415 + ] + }, + "2,3,4,5": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 96, + 99 + ] + }, + "2,3,6,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 88, + 91 + ] + }, + "4,5,6,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 56, + 59 + ] + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/INPUTS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/INPUTS.json new file mode 100644 index 0000000000..2b12294b58 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/INPUTS.json @@ -0,0 +1,65 @@ +{ + "schema": "gauge44-compact-construction-v1", + "repository": "https://github.com/CrocSwap/integer-mult-bounds", + "commits": { + "main": "17ce0c79b7b51c2634b439ea5a2b754f09909693", + "pr635": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f" + }, + "files": { + "main": { + "research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PACKET-PROGRAMS.json.gz": "d833ae0390d165d7da0c639a3c7aeb77156c2ddb52447087cb49b9d03b19e9b9", + "research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PROTOTYPE.json": "327d2a868043e846381aa58a33053c24425e8cad522ff401b10ec8af1d649a3f", + "research/complex-k492-owner-repair/vendor/joint_prefix/code/build_joint_prefix.py": "d7804669e528b6fd8d80195a4a2e76efac9bc67440b82c73973f4bc9fe273783", + "research/complex-k492-owner-repair/vendor/joint_prefix/data/JOINT-PREFIX.json": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2", + "research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-COLD.json": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/vendor/clifford/clifford_exact.py": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz": "e070ae2c78b4a1b644b418774af62b40d8d16e6ba89602f0474afb557d507c37", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_common.py": "e68d190fd436b2f3955decb590adb53344d5d4ea0a19d62d86df1e4b55ecd198", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_word.py": "f027a9273bcf4e0971258c160b7d3b3c196366b32a529cff6e6a0e666b03826b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/RAW504.json.gz": "1c6144791dbedf6427e3ee7b4c24fb05b5bf407f6346592f50f8dd8d9638108d", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/FULL-WORD.json.gz": "375bd23001cd805707968005a9342827d5464e3f8e3a754197b31c46fc3f63c2", + "research/structural-gain/frontier-composition/multicold-eight-word/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77" + }, + "pr635": { + "research/complex-571-cold14-st2/code/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-571-cold14-st2/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-571-cold14-st2/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-571-cold14-st2/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-571-cold14-st2/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-571-cold14-st2/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-571-cold14-st2/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-571-cold14-st2/data/TRI-SCHEDULE.json": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e", + "research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json": "9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a", + "research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json": "e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1" + }, + "delta": { + "COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92" + } + }, + "word_content_sha256": { + "shadow-early": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d", + "shadow-prefix": "6c361b33967bb62d878b3acef44a4ac2c70970e99f36a11906b03811495de533", + "raw": "0ac47f92fc2e3f5aa457d78f7b8a5c785bf140c546932b9dfcd9e610ad319180", + "port0": "7086d4309f145f0bf85b97f567e2cbeeaca9fc5011f62c86c805bfadeb0300fc", + "port1": "8f47545698a11072f8c6a0b50ae9c8acf8e4e2b0e35a0e8c672bbca216b04534", + "port2": "4e4919c140e07f6c820bea4aae83565b3b4967ffbfbb907611216ff6e2e6105d", + "port3": "9774dca3e4295e2eb9171a9cf34e1973bc72bad38eddec2cc0fc498bd9e041f3", + "regroup": "989082402d2292a18328e86927c0a12d34fcab18ef4ff724bd1ce691cf4e7531", + "hpe": "42fb8b3aa314593fe976820cf65824f5fce0ee4f95281796992d4809709864cc", + "cold44": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290" + }, + "helper_map_sha256": "688d5115b221be68c96970822cc04ff698e2a84432fa7db9cb59057f6fe55def", + "canonical_content_sha256": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "local_program_sha256": { + "forward": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "backward": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4" + }, + "clifford_recipes_sha256": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/LICENSE b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/NOTICE.md new file mode 100644 index 0000000000..16b0507070 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/NOTICE.md @@ -0,0 +1,9 @@ +# Construction delta notice + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. + +`construct_gauge_xcentre.py` modifies PR635's credited `construct_k_triangle.py`, which in turn extends icekylinx's PR531/PR514/PR425 factory lineage. Its original source comments are retained. The K-triangle schedule and the upstream porting, JP8 frame, kernel and HPE procedures are reused from the pinned source checkouts and are not new contributions of this delta. + +The new source-copy exchanges, complementary factory basis, carrier assignment, exact cold44 constructor and compact reproduction driver are described in `../CONSTRUCTION.md`. + +`UPSTREAM-NOTICE.md` is the complete unmodified notice from the pinned PR635 package. `LICENSE` is that package's Apache-2.0 license. All further notices and source credits of the referenced upstream packages remain applicable and are retained in the source checkouts rather than vendored again here. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/REBUILD-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/REBUILD-CHECKS.json new file mode 100644 index 0000000000..0801f35da7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/REBUILD-CHECKS.json @@ -0,0 +1,51 @@ +{ + "status": "PASS_COMPACT_SCALAR_REPRODUCTION_AND_FROZEN_RECIPE_SPLICE", + "steps": [ + { + "step": "shadow-early", + "exit_code": 0, + "seconds": 0.355 + }, + { + "step": "shadow-prefix", + "exit_code": 0, + "seconds": 0.511 + }, + { + "step": "gauge-forward", + "exit_code": 0, + "seconds": 0.527 + }, + { + "step": "port0", + "exit_code": 0, + "seconds": 0.468 + }, + { + "step": "port1", + "exit_code": 0, + "seconds": 0.636 + }, + { + "step": "port2", + "exit_code": 0, + "seconds": 0.474 + }, + { + "step": "port3", + "exit_code": 0, + "seconds": 0.497 + }, + { + "step": "cold44-exact", + "exit_code": 0, + "seconds": 2.754 + } + ], + "constructor_seconds": 6.222, + "word_content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "all_step_input_and_output_pins_checked": true, + "regenerated_recipe_equals_frozen_recipe": true, + "frozen_splice_matches_exact_constructor": true, + "scope": "One portable scalar reconstruction from pinned main and PR635 inputs; existing native and independent mathematical receipts accompany the package separately." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/UPSTREAM-NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/UPSTREAM-NOTICE.md @@ -0,0 +1,34 @@ +# Attribution and scope + +Four verified provider types are offered to every call: PR571's prefix word with twelve multi-cut cold kernels (PR568's unchanged constructor), the same word with forty width-five entrance promotions (PR569's unchanged frame constructor) before those kernels, PR575's plain joint-prefix provider, and PR568's eight-cold provider. A window MILP with an exact per-pattern model chooses the dispatch and a literal owner map. PR583's six source-bound kernel frame coalescences (its unchanged constructor and negative controls) are applied to every PR571-prefix provider word (ck and atm3), followed by two further coalescences that each first move one addition past two commuting additions (package code/build_gate_moves.py, extending PR583's constructor); a final hyperplane_end step (package code/build_hpe.py) then runs 46 single-gate cleanups h -= p right after part B at the dim-8 join U of their registers, so 46 width-8 entering helpers per call end at U with width 7; each such gate commutes with every earlier cleanup gate on its registers (for 8 of them the partner's one earlier gate x -= p only reads p), and the reordered program is replayed exactly. A window MILP (exact windows, RINS around an LP vertex) gives the dispatch ck 45 / atm3 21 / jp8 6 and the literal owner map. + +Pinned external sources (unchanged; `verify.py` checks their manifests and every file it uses): +- PR568 (`research/complex-multicold`, commit `71c99ac935a33bb7b59a1b4a7af8725a939b0b90`). +- PR571 (`research/structural-gain`, commit `b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3`). +- PR569 (`research/larger-gain`, commit `897213a855b7fb8a1b8b0e552a2f5c42e6c1b326`). +- PR575 (`research/complex-joint-prefix`, commit `eac6f7e378ab622dac50a2fd4b7ef6eab014de44`). +- PR583 (`research/kernel-frame-coalescing`, commit `89be768f0157f5a3d8e4db69cf1748768605eac9`). + +Provider construction is described as typed steps in `data/SPEC.json` (`build`); `verify.py` runs only allowlisted step types with their paired omission audits and checks every input and output content hash. `code/` holds the spec-driven global admission scripts adapted from PR571's `frontier-composition/global-code/` (OpenAI Codex assisted, Apache-2.0): every expected value is read from `data/SPEC.json` and compared only after independent recomputation. `code/generated_identity.py` and `code/generated_identity_controls.py`, and the decompressed-content artifact identities in the bind, audit, invoice, assembly and phase-timing scripts, are taken unchanged from PR586 by chafreaky (`research/promoted-kernel-coalescing`, commit `4846fee5b06af770e9b3a10c36200f673d656725`, OpenAI Codex assisted, Apache-2.0), including its proof-content and reference/metadata mutation controls; the normalization of descriptive width metadata after frame changes follows the same PR. + +In PR601, the owner map was nominated by a HiGHS window MILP (adapted from PR569's `global/nominate_width7.py`) with lazy cross-time Hall cuts; this package's re-solved map is described below. Neither is an admission dependency. + +DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. (The PR601 package this one starts from states: "Prepared by Claude Code (Anthropic) research agents.") Apache-2.0 applies; LICENSE is included. All notices, licenses, source pins and AI disclosures of the pinned sources and their ancestry are retained in those packages and are not replaced by this notice. All inherited conditional assumptions remain conditional. + +**This package (complex-571-cold14, DreamingOfClouds).** It starts from PR601 (jeremykothe2, `research/complex-571-hpem46`, commit `529ab7dcb59d5ea7a5798e9e06cf5b3aee8a1550`). Everything above is kept unchanged except the following: +- every provider chain (ck, atm3, jp8) gains the typed step `cold_end` (`code/build_cold_end.py`, `code/cold_end_controls.py`; recipes `data/recipes/*-cold_end.json.gz`); +- the generalised native chain and the global admission scripts accept cold helpers that end below FULL (with `0:U` wrappers), a refactored exact cleanup, and check the wrapper order; +- `data/PLAN.json` / `data/OWNERS.json.gz` (dispatch and literal owner map) come from a relocate/swap/ejection-chain/provider-flip annealing search started from PR601's map, refined by an exact pattern-restricted owner model (CP-SAT) with a literal edge-colouring expansion (not an admission dependency); +- `data/SPEC.json` holds the expected values, recorded by a discovery run and then checked by a strict run. + +The cold-end construction (a row-plus-column cone condition for low-frame ends, a rank-0 dirt-spread premix and multi-gate lower-frame cleanup) builds on PR591 / PR592 / PR593 / PR601 (jeremykothe2) and our PR599 (Lean: multi-gate and cold hyperplane-end tails). DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. Build on this at your own risk. + +**This package (complex-571-cold14-b3, jeremykothe2).** It is PR604's `complex-571-cold14` (DreamingOfClouds) with ColdBeyond's second cold end per block (two new `cold_end` A-gate primitives, `PROOF-NOTE.md`), ColdSupply's E1 entering pair and reviewed controls, a free dispatch (jp8 ×60, atm3 ×12) and a literal owner map from an exact per-time-Hall window MIP. All other construction, code, controls and proofs are PR604's and earlier contributors', unchanged. + +**This package (complex-571-cold14-k492).** It is complex-571-cold14-b3 with these changes: +- **K-triangle base words.** The leaver-read K-triangle skeleton atom and its read schedule (`data/TRI-SCHEDULE.json`) are by AtomScout, a Claude Code research agent. `code/construct_k_triangle.py` is PR531's `code/construct_504.py` (icekylinx, OpenAI Codex / GPT assisted, Apache-2.0; pinned source `direct_delivery`) extended with that atom. +- **Ported chains.** The PR604/B3 chains are ported stage by stage onto the K-triangle words by `code/build_port_stage.py` (Port480, a Claude Code research agent). `code/build_frame_regroup.py` extends PR583's `build_frames.py` (chafreaky). +- **Helper count R.** The generalisation of the global scripts to the provider helper count R is by GlobalR (a Claude Code research agent), with AtomReviewer's fixes (PROOF-NOTE-R.md). +- **Owner map.** The owner map, the cold_end recipes on the K-triangle words and the package assembly are by Stack492, Port480 and ColdBeyond (Claude Code research agents). + +Build on this at your own risk. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/LOCAL-PINS-barch-U8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/LOCAL-PINS-barch-U8.json new file mode 100644 index 0000000000..4028b95c0e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/LOCAL-PINS-barch-U8.json @@ -0,0 +1,50 @@ +{ + "word": "U8", + "barch_controls": [ + "C0_identity", + "recipe", + "drop_restore", + "restore_full", + "drop_preread", + "donation_after", + "drop_restore@231", + "restore_full@231", + "drop_preread@231", + "donation_after@231", + "drop_restore@230", + "restore_full@230", + "drop_preread@230", + "donation_after@230", + "drop_restore@232", + "restore_full@232", + "drop_preread@232", + "donation_after@232", + "drop_restore@236", + "restore_full@236", + "drop_preread@236", + "donation_after@236", + "drop_restore@226", + "restore_full@226", + "drop_preread@226", + "donation_after@226", + "drop_restore@228", + "restore_full@228", + "drop_preread@228", + "donation_after@228", + "drop_restore@62", + "restore_full@62", + "drop_preread@62", + "donation_after@62", + "drop_restore@238", + "restore_full@238", + "drop_preread@238", + "donation_after@238" + ], + "layer_controls": 95, + "canonical_sha256": "24db880b7dab31e6af4eec8a1aba1bbbae29cd50d9a7b77cf0e9b571b3e5ae7c", + "program_sha256": { + "forward": "83d65a63f51bd1ce7f3dd4e4d3597311e065b4775796cd87aea3e3a62689047c", + "backward": "e4e483b764e9a85f84a04425e57d73ecdcc72eb2e4d97a64f17d9da58fa5ace0" + }, + "clifford_recipes_sha256": "4629507dcbdd516457c001ff8f9dbe750d1a0cbfa5cfa3c6be003d45804ba0c5" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/RECIPE-U8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/RECIPE-U8.json new file mode 100644 index 0000000000..ee215a805a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/RECIPE-U8.json @@ -0,0 +1,1528 @@ +{ + "base_sha256": "1e1d99ba7aab877d6b573c41f7030ee73de9a52fee51d0a822ddaae71251999f", + "B_delete": [ + 5, + 7, + 9, + 11, + 13, + 15, + 17, + 19, + 878, + 880, + 886, + 888, + 894, + 896, + 902, + 904, + 910, + 912, + 918, + 920, + 926, + 928, + 934, + 936, + 1215, + 1217, + 1223, + 1225, + 1231, + 1233, + 1239, + 1241, + 1247, + 1249, + 1255, + 1257, + 1263, + 1265, + 1271, + 1273 + ], + "B_insert": [ + [ + 5, + [ + "add", + 125, + 450, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 7, + [ + "add", + 121, + 451, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 9, + [ + "add", + 181, + 452, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 11, + [ + "add", + 177, + 453, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 13, + [ + "add", + 117, + 454, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 15, + [ + "add", + 113, + 455, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 17, + [ + "add", + 189, + 456, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 19, + [ + "add", + 185, + 457, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 676, + [ + "add", + 484, + 231, + 1, + 1, + [ + 386, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 677, + [ + "add", + 485, + 226, + 1, + 1, + [ + 388, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 693, + [ + "add", + 496, + 450, + 1, + 1, + [ + 260, + 132, + 70, + 38, + 24, + 1 + ] + ] + ], + [ + 694, + [ + "add", + 497, + 451, + 1, + 1, + [ + 260, + 132, + 64, + 32, + 24, + 1 + ] + ] + ], + [ + 711, + [ + "add", + 508, + 230, + 1, + 1, + [ + 390, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 712, + [ + "add", + 509, + 228, + 1, + 1, + [ + 390, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 729, + [ + "add", + 520, + 452, + 1, + 1, + [ + 268, + 140, + 64, + 38, + 30, + 1 + ] + ] + ], + [ + 730, + [ + "add", + 521, + 453, + 1, + 1, + [ + 266, + 138, + 70, + 32, + 30, + 1 + ] + ] + ], + [ + 747, + [ + "add", + 532, + 232, + -2, + 1, + [ + 385, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 748, + [ + "add", + 533, + 62, + -2, + 1, + [ + 385, + 65, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 763, + [ + "add", + 544, + 454, + -2, + 1, + [ + 267, + 139, + 65, + 33, + 25, + 7 + ] + ] + ], + [ + 764, + [ + "add", + 545, + 455, + -2, + 1, + [ + 267, + 139, + 64, + 32, + 25, + 7 + ] + ] + ], + [ + 779, + [ + "add", + 556, + 236, + -2, + 1, + [ + 385, + 65, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 780, + [ + "add", + 557, + 238, + -2, + 1, + [ + 385, + 64, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 795, + [ + "add", + 568, + 456, + -2, + 1, + [ + 258, + 130, + 64, + 33, + 24, + 7 + ] + ] + ], + [ + 796, + [ + "add", + 569, + 457, + -2, + 1, + [ + 259, + 131, + 65, + 32, + 24, + 7 + ] + ] + ], + [ + 1215, + [ + "add", + 125, + 450, + -1, + 2, + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1217, + [ + "add", + 121, + 451, + -1, + 2, + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1223, + [ + "add", + 149, + 231, + -1, + 2, + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1225, + [ + "add", + 145, + 226, + -1, + 2, + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1231, + [ + "add", + 181, + 452, + -1, + 2, + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1233, + [ + "add", + 177, + 453, + -1, + 2, + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1239, + [ + "add", + 221, + 230, + -1, + 2, + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1241, + [ + "add", + 217, + 228, + -1, + 2, + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1247, + [ + "add", + 117, + 454, + 1, + 1, + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1249, + [ + "add", + 113, + 455, + 1, + 1, + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 1255, + [ + "add", + 157, + 232, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1257, + [ + "add", + 153, + 62, + 1, + 1, + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 1263, + [ + "add", + 189, + 456, + 1, + 1, + [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 1265, + [ + "add", + 185, + 457, + 1, + 1, + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1271, + [ + "add", + 213, + 236, + 1, + 1, + [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 1273, + [ + "add", + 209, + 238, + 1, + 1, + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + ] + ] + ], + "B_frames": { + "1340": [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ], + "1343": [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ], + "1346": [ + 260, + 132, + 68, + 36, + 24, + 2, + 1 + ], + "1349": [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ], + "1352": [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ], + "1355": [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ], + "1358": [ + 256, + 130, + 64, + 34, + 24, + 4, + 1 + ], + "1361": [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ], + "1364": [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ], + "1367": [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ], + "1370": [ + 256, + 128, + 64, + 38, + 18, + 12, + 1 + ], + "1373": [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ], + "1376": [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ], + "1379": [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ], + "1382": [ + 262, + 128, + 70, + 38, + 20, + 10, + 1 + ], + "1385": [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ], + "1388": [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ], + "1391": [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ], + "1394": [ + 257, + 129, + 65, + 33, + 19, + 10, + 7 + ], + "1397": [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ], + "1400": [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ], + "1403": [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ], + "1406": [ + 256, + 129, + 64, + 33, + 18, + 11, + 7 + ], + "1409": [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ], + "1412": [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ], + "1415": [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ], + "1418": [ + 256, + 128, + 64, + 33, + 24, + 5, + 2 + ], + "1421": [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ], + "1424": [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ], + "1427": [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ], + "1430": [ + 257, + 128, + 65, + 33, + 24, + 4, + 3 + ], + "1433": [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + }, + "tail_insert": [ + [ + 7, + [ + "add", + 496, + 450, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 6, + [ + "add", + 497, + 451, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 5, + [ + "add", + 520, + 452, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 4, + [ + "add", + 521, + 453, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 3, + [ + "add", + 544, + 454, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 2, + [ + "add", + 545, + 455, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 1, + [ + "add", + 568, + 456, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 0, + [ + "add", + 569, + 457, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ] + ], + "cleanup_prepend": [ + [ + "add", + 484, + 231, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 485, + 226, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 508, + 230, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 509, + 228, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 532, + 232, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 533, + 62, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 556, + 236, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 557, + 238, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ] + ], + "local_profile": { + "1": 2548, + "2": 338, + "3": 446, + "4": 162, + "5": 72, + "8": 8 + }, + "expect_sha256": "090fd574747fbf9628e70cb9beb792732914cfa52e1df147579fe4dbccc68c5a", + "priced": { + "dk_ideal": 3.140480230774418e-07, + "dP": { + "5": 16, + "4": -32, + "3": 16 + } + }, + "variants": [ + { + "X": 231, + "E": 450, + "dsides": [ + 878, + 886 + ], + "donors": [ + 450, + 231 + ], + "hold": [ + 496, + 484 + ], + "kept": { + "1215": 450, + "1223": 231 + }, + "when": "mid" + }, + { + "X": 230, + "E": 452, + "dsides": [ + 894, + 902 + ], + "donors": [ + 452, + 230 + ], + "hold": [ + 520, + 508 + ], + "kept": { + "1231": 452, + "1239": 230 + }, + "when": "mid" + }, + { + "X": 232, + "E": 454, + "dsides": [ + 910, + 918 + ], + "donors": [ + 454, + 232 + ], + "hold": [ + 544, + 532 + ], + "kept": { + "1247": 454, + "1255": 232 + }, + "when": "mid" + }, + { + "X": 236, + "E": 456, + "dsides": [ + 926, + 934 + ], + "donors": [ + 456, + 236 + ], + "hold": [ + 568, + 556 + ], + "kept": { + "1263": 456, + "1271": 236 + }, + "when": "mid" + }, + { + "X": 226, + "E": 451, + "dsides": [ + 880, + 888 + ], + "donors": [ + 451, + 226 + ], + "hold": [ + 497, + 485 + ], + "kept": { + "1217": 451, + "1225": 226 + }, + "when": "mid" + }, + { + "X": 228, + "E": 453, + "dsides": [ + 896, + 904 + ], + "donors": [ + 453, + 228 + ], + "hold": [ + 521, + 509 + ], + "kept": { + "1233": 453, + "1241": 228 + }, + "when": "mid" + }, + { + "X": 62, + "E": 455, + "dsides": [ + 912, + 920 + ], + "donors": [ + 455, + 62 + ], + "hold": [ + 545, + 533 + ], + "kept": { + "1249": 455, + "1257": 62 + }, + "when": "mid" + }, + { + "X": 238, + "E": 457, + "dsides": [ + 928, + 936 + ], + "donors": [ + 457, + 238 + ], + "hold": [ + 569, + 557 + ], + "kept": { + "1265": 457, + "1273": 238 + }, + "when": "mid" + } + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/build_tri.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/build_tri.py new file mode 100644 index 0000000000..11c4371114 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/build_tri.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python3 +"""build_tri.py BASE_WORD RECIPE OUT_WORD [--control NAME] + +Standard library only. Applies a NewBArch triangle-hybrid recipe to the X4 word (1e1d99ba) and writes a FULL-WORD.json.gz. +Recipe keys (all indices refer to the BASE word): + base_sha256 sha256 of the decompressed base JSON (checked) + B_delete list of B indices removed + B_insert list of [pos, gate]: gate (with frame) inserted before base B gate pos (list order kept) + B_frames {index: frame}: explicit re-chosen frame of a kept base B gate + tail_insert list of [early_index, gate]: gates appended to cleanup in list order, then registered as early cleanup at early_index (ascending) + cleanup_prepend list of gates prepended to the full cleanup (early indices are shifted) + local_profile report.local_profile of the result + expect_sha256 sha256 of the decompressed result (checked unless a control is requested) +Controls (each must be REJECTED by audit_local; see controls.json): + drop_restore omit cleanup_prepend (end value of the holder not restored) + restore_full move tail_insert gates into the full cleanup (FULL frame) instead of early cleanup + drop_preread omit the inserted entrance pre-reads (inserted target += E gates at pos < first donation) + donation_after insert each donation after its reading target's read instead of before it + NAME@X the same control restricted to the instance whose packet register is X (recipe 'variants') +""" +import sys, json, gzip, hashlib, copy + +FULL = [256, 128, 64, 32, 16, 8, 4, 2, 1] + +def load(p): + raw = gzip.decompress(open(p, 'rb').read()); return json.loads(raw), hashlib.sha256(raw).hexdigest() + +def apply(w, rc, control=None): + w = copy.deepcopy(w); B = w['B'] + S = None + if control and '@' in control: # per-instance control: name@X mutates only instance X's gates + control, x = control.split('@'); x = int(x) + vv = [s for s in rc['variants'] if s['X'] == x][0]; S = {vv['X'], vv['E'], *vv['hold']} + sel = lambda g: S is None or bool({g[1], g[2]} & S) + dele = set(rc['B_delete']); fr = {int(k): f for k, f in rc['B_frames'].items()} + ins = [list(x) for x in rc['B_insert']] + don = [x for x in ins if not (112 <= x[1][1] < 224)] # donations: destination is not a target + first_don = min(p for p, _ in don) if don else 0 + if control == 'drop_preread': + ins = [x for x in ins if not (x[0] < first_don and 112 <= x[1][1] < 224 and sel(x[1]))] + if control == 'donation_after': + new = [] + for p, g in ins: + if g in [d[1] for d in don] and sel(g): + rd = [i for i, e in enumerate(B) if i >= p and e[0] == 'add' and e[2] == g[1] and 112 <= e[1] < 224] + p = rd[0] + 1 + new.append([p, g]) + ins = new + at = {} + for p, g in ins: at.setdefault(p, []).append(list(g)) + out = [] + for i, e in enumerate(B): + out.extend(at.get(i, [])) + if i in dele: continue + e = list(e) + if i in fr: e = e[:-1] + [list(fr[i])] + out.append(e) + out.extend(at.get(len(B), [])) + w['B'] = out + pre = [list(g) for g in rc['cleanup_prepend'] if not (control == 'drop_restore' and sel(g))] + tails = [list(x) for x in rc['tail_insert']] + if control == 'restore_full': + pre = pre + [g[1][:-1] + [FULL] for g in tails if sel(g[1])]; tails = [g for g in tails if not sel(g[1])] + C = pre + w['cleanup']; sh = len(pre) + early = [[i + sh, U] for i, U in w['early_cleanup']] + idx = [] + for j, g in tails: C.append(list(g)); idx.append((j, len(C) - 1, list(g[-1]))) # appended in recipe order + for j, ci, U in sorted(idx): early.insert(j, [ci, U]) # then registered at their early index + w['cleanup'] = C; w['early_cleanup'] = early + w['report'] = dict(w['report']); w['report']['local_profile'] = rc['local_profile'] + return w + +def main(): + a = sys.argv[1:]; control = None + if '--control' in a: k = a.index('--control'); control = a[k + 1]; del a[k:k + 2] + base, out = a[0], a[2] + w, sha = load(base); rc = json.load(open(a[1])) + if sha != rc['base_sha256']: raise SystemExit('base sha mismatch ' + sha) + w2 = apply(w, rc, control) + raw = json.dumps(w2, separators=(',', ':')).encode() + open(out, 'wb').write(gzip.compress(raw, mtime=0)) + s = hashlib.sha256(raw).hexdigest() + if control is None and s != rc['expect_sha256']: raise SystemExit('result sha mismatch ' + s) + print(json.dumps(dict(control=control, sha256=s))) + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/reproduce_barch.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/reproduce_barch.py new file mode 100644 index 0000000000..22f15b491d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/reproduce_barch.py @@ -0,0 +1,92 @@ +#!/usr/bin/env python3 +"""Rebuild the B0 word (NewBArch's width-neutral triangle-hybrid B-delivery rewrite on X4) and its native locals. + +Input: a fresh `construction/jx/reproduce_jx.py` output directory; its X4 word (1e1d99ba...) is pinned there and by +RECIPE-B0.json (base_sha256). Steps, each checked exactly: + 1. barch: build_tri.py (standard library only; NewBArch) applies the recipe's explicit B deletes and inserts (with frames), + re-chosen B frames, early-cleanup tails and FULL-cleanup restores; it checks the base and result shas (d9ba0942...). + 2. barch-controls: run_controls.py rebuilds C0 (identity, must reproduce the input), the recipe word (must PASS #645's + independent audit_local.py) and four mutants (drop_restore, restore_full, drop_preread, donation_after), globally + and for each recipe variant (NAME@X); each mutant must FAIL audit_local with its pinned message. Every outcome is + required and the control set is pinned (LOCAL-PINS). + 3. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant) on the B0 word; count pinned. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs; canonical word, local programs and + Clifford recipes pinned (LOCAL-PINS-barch-.json). +Apache-2.0. Driver by ColdWitness around NewBArch's builder and controls. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +PKG = HERE.parents[1] +P6 = HERE.parent / 'layers_p6n' +MUTANTS = ('drop_restore', 'restore_full', 'drop_preread', 'donation_after') + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--jx-dir', type=Path, required=True, help='construction/jx/reproduce_jx.py output') + ap.add_argument('--recipe', default='U8', help='RECIPE-.json and LOCAL-PINS-barch-.json') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-barch-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + inp = a.jx_dir.resolve() / 'jx/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['base_sha256'], 'input must be the pinned X4 word' + (out / 'barch').mkdir(); word = out / 'barch/FULL-WORD.json.gz' + run('barch', HERE / 'build_tri.py', inp, rfile, word, portable=False) + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['expect_sha256'] + run('barch-controls', HERE / 'run_controls.py', inp, rfile, PKG / 'independent/audit_local.py', out / 'barch-controls', portable=False) + res = read(out / 'barch-controls/controls.json') + want = ['C0_identity', 'recipe', *MUTANTS] + [m + '@' + str(v['X']) for v in rec.get('variants', []) for m in MUTANTS] + assert sorted(res) == sorted(want) == sorted(pins['barch_controls']) and all(x['ok'] for x in res.values()), res + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/run_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/run_controls.py new file mode 100644 index 0000000000..f1ce999bfb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/barch/run_controls.py @@ -0,0 +1,33 @@ +#!/usr/bin/env python3 +"""run_controls.py BASE_WORD RECIPE AUDIT_LOCAL_PY OUTDIR : C0 identity, the recipe word (must PASS) and the four negative +controls (each must FAIL audit_local with its pinned message prefix). Standard library only; writes OUTDIR/controls.json.""" +import sys, json, subprocess, os, gzip, hashlib +base, recipe, audit, out = sys.argv[1:5] +here = os.path.dirname(os.path.abspath(__file__)); os.makedirs(out, exist_ok=True) +# pinned rejection sites (observed on RECIPE-V1 and RECIPE-B0; the failing rows are recorded in controls.json): the holder 485 is not restored; the low-end restore 497-=451 moved to the +# FULL cleanup runs after 451's own tail and leaves 497 wrong; without the pre-read (or with the donation after the read) +# the entering helper's start value reaches a target. +EXPECT = {None: 'PASS', 'drop_restore': 'all-column endpoint failure (False, ', + 'restore_full': 'all-column endpoint failure (False, ', + 'drop_preread': 'nonzero entrance response', 'donation_after': 'nonzero entrance response'} +res = {} +ident = os.path.join(out, 'C0.json') +json.dump(dict(json.load(open(recipe)), B_delete=[], B_insert=[], B_frames={}, tail_insert=[], cleanup_prepend=[], + local_profile=json.loads(gzip.decompress(open(base, 'rb').read()))['report']['local_profile'], + expect_sha256=hashlib.sha256(gzip.decompress(open(base, 'rb').read())).hexdigest()), open(ident, 'w')) +r = subprocess.run([sys.executable, '-B', os.path.join(here, 'build_tri.py'), base, ident, os.path.join(out, 'C0.json.gz')], capture_output=True, text=True) +res['C0_identity'] = dict(ok=r.returncode == 0, out=r.stdout.strip() or r.stderr.strip()[-200:]) +ctls = list(EXPECT) + [c + '@' + str(s['X']) for s in json.load(open(recipe)).get('variants', []) for c in EXPECT if c] +for ctl in ctls: + name = ctl or 'recipe'; wp = os.path.join(out, name + '.json.gz') + cmd = [sys.executable, '-B', os.path.join(here, 'build_tri.py'), base, recipe, wp] + (['--control', ctl] if ctl else []) + b = subprocess.run(cmd, capture_output=True, text=True) + if b.returncode: res[name] = dict(ok=False, build=b.stderr[-300:]); continue + a = subprocess.run([sys.executable, '-B', audit, '--word', wp, '--output', os.path.join(out, name + '.audit.json')], capture_output=True, text=True) + txt = a.stdout + a.stderr + if ctl is None: ok = a.returncode == 0 and 'PASS_INDEPENDENT' in txt + else: ok = a.returncode != 0 and EXPECT[ctl.split('@')[0]] in txt + res[name] = dict(ok=ok, build=json.loads(b.stdout), audit_tail=txt.strip().splitlines()[-1][:200]) +json.dump(res, open(os.path.join(out, 'controls.json'), 'w'), indent=1) +print(json.dumps({k: x['ok'] for k, x in res.items()})) +sys.exit(0 if all(x['ok'] for x in res.values()) else 1) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/build_gauge_cold44.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/build_gauge_cold44.py new file mode 100644 index 0000000000..72d2945f6b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/build_gauge_cold44.py @@ -0,0 +1,210 @@ +"""Exact dyadic cold-end realization of the source-branch/factory-completion word. +Prepared for icekylinx with OpenAI Codex assistance; Apache-2.0. +This is a constructor: independent endpoint/frame audits remain required. +""" +from pathlib import Path +from fractions import Fraction as Q +from collections import Counter +import copy,gzip,json,hashlib,time,sys,argparse,importlib.util +D=Path(__file__).resolve().parent +ap=argparse.ArgumentParser(description=__doc__) +for name in ('input','out','hamming','upstream-package'):ap.add_argument('--'+name,type=Path,required=True) +args=ap.parse_args();WPATH=args.input;OUT=args.out +assert __debug__, 'Assertions are required' +OUT.mkdir(exist_ok=False,parents=True) +def rd(p):return json.loads(gzip.decompress(p.read_bytes()) if p.suffix=='.gz' else p.read_bytes()) +w=rd(WPATH);v=w['report']['v'];n=2*v+w['report']['R'];N=list(range(v))+list(range(2*v,n));ix={x:i for i,x in enumerate(N)} +F9=[256,128,64,32,16,8,4,2,1];t0=time.monotonic() +def basis(vs): + d={} + for a in vs: + for k in sorted(d,reverse=True): + if a>>k&1:a^=d[k] + if a: + k=a.bit_length()-1 + for j in d: + if d[j]>>k&1:d[j]^=a + d[k]=a + return tuple(d[k] for k in sorted(d,reverse=True)) +def inside(a,b):return basis(a+b)==b +def regs(e):return e[1:3] if e[0]=='add' else e[1:2] +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]=-e[3] + else:e[2],e[3]=e[3],e[2] + return e +def apply(e,M,mapping=None): + t=mapping[e[1]] if mapping is not None else e[1] + if e[0]=='add': + s=mapping[e[2]] if mapping is not None else e[2];q=Q(e[3],e[4]) + for j,a in M[s].items(): + x=M[t].get(j,Q(0))+q*a + if x:M[t][j]=x + else:M[t].pop(j,None) + else: + q=Q(e[2],e[3]);M[t]={j:q*a for j,a in M[t].items()} +def rref(A): + a=[list(map(Q,row)) for row in A];nr=len(a);nc=len(a[0]) if nr else 0;row=0;piv=[] + for c in range(nc): + k=next((i for i in range(row,nr) if a[i][c]),None) + if k is None:continue + a[row],a[k]=a[k],a[row];q=a[row][c];a[row]=[x/q for x in a[row]] + for i in range(nr): + if i!=row and a[i][c]:q=a[i][c];a[i]=[x-q*y for x,y in zip(a[i],a[row])] + piv.append(c);row+=1 + if row==nr:break + return a,piv +def rank(A):return len(rref(A)[1]) +def null(A,nc=None): + if A:a,piv=rref(A);nc=len(a[0]) + else:a=[];piv=[];assert nc is not None + free=[j for j in range(nc) if j not in piv];out=[[Q(0) for j in free] for i in range(nc)] + for k,c in enumerate(free):out[c][k]=Q(1) + for i,c in enumerate(piv): + for k,j in enumerate(free):out[c][k]=-a[i][j] + return out +def mm(A,B): + if not A:return [] + if not B:return [[] for row in A] + bt=list(zip(*B));return [[sum((a*b for a,b in zip(row,col)),Q(0)) for col in bt] for row in A] +def tr(A):return list(map(list,zip(*A))) +def inv(A): + n0=len(A);a,p=rref([row+[Q(i==j) for j in range(n0)] for i,row in enumerate(A)]) + assert p[:n0]==list(range(n0)) + return [row[n0:] for row in a] +def unit(q): + if not q:return False + a=abs(q.numerator);b=q.denominator + return not a&(a-1) and not b&(b-1) +def dyadic(q):return not q.denominator&(q.denominator-1) +def opadd(t,s,q,F):return ['add',t,s,q.numerator,q.denominator,list(F)] +def opscale(t,q,F):return ['scale',t,q.numerator,q.denominator,list(F)] +def eliminate(M,ids,F,skip=()): + """Return legal dyadic row operations taking an invertible sparse matrix to I.""" + skip=set(skip);ops=[];dim=len(M) + def add(i,j,q): + if q: + assert dyadic(q);e=opadd(ids[i],ids[j],q,F);ops.append(e) + for c,x in M[j].items(): + z=M[i].get(c,Q(0))+q*x + if z:M[i][c]=z + else:M[i].pop(c,None) + def scale(i,q): + if q!=1: + assert unit(q);ops.append(opscale(ids[i],q,F));M[i]={c:q*x for c,x in M[i].items()} + def swap(i,j): + if i!=j: + add(i,j,Q(1));add(j,i,Q(-1));add(i,j,Q(1));scale(j,Q(-1)) + for c in range(dim): + if c in skip: + assert M[c]=={c:Q(1)} and all(not M[i].get(c) for i in range(dim) if i!=c) + continue + cand=[i for i in range(c,dim) if i not in skip and M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + if k is None: + # Elementary Euclidean row additions reduce the pivot-column numerator gcd. + assert cand,('singular',c) + while k is None: + cand.sort(key=lambda i:abs(M[i][c]));a=cand[0] + b=next((i for i in cand[1:] if M[i][c]),None) + if b is None:raise ValueError(('non-dyadic determinant pivot',c,M[a][c])) + rat=M[b][c]/M[a][c];q=rat.numerator//rat.denominator + if q==0:q=1 if rat>0 else -1 + add(b,a,Q(-q));cand=[i for i in cand if M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + swap(c,k);scale(c,1/M[c][c]) + for i in range(dim): + if i!=c and M[i].get(c): + assert i not in skip + add(i,c,-M[i][c]) + assert all(row=={i:Q(1)} for i,row in enumerate(M)) + return ops +def realize(A,ids,F): + M=[{j:Q(x) for j,x in enumerate(row) if x} for row in A] + return [inverse(e) for e in reversed(eliminate(M,ids,F))] +# Reconstruct the actual non-target map after the inherited HPE tail. +inherited_tail=[w['cleanup'][i][:-1]+[list(f)] for i,f in w.get('early_cleanup',[])] +mainN=[e for e in w['A']+w['B'] if not v<=e[1]<2*v] +M=[{i:Q(1)} for i in range(len(N))] +for e in mainN+inherited_tail:apply(e,M,ix) +MI=[{i:Q(1)} for i in range(len(N))] +for e in reversed(mainN+inherited_tail):apply(inverse(e),MI,ix) +cur={x:(w['ports'][x],) if xlen(ih):ih.append(j) + if len(ih)==r:break + assert len(ih)==r + endhs=[N[I[j]] for j in ih];endhidx=[hs.index(h) for h in endhs] + kerR=null(RR,16);Qmat=[[Q(0) for j in range(16)] for i in range(16)] + for j,hj in enumerate(endhidx): + for i in range(16):Qmat[i][hj]=qH[i][j] + other=[j for j in range(16) if j not in endhidx] + for k,j in enumerate(other): + for i in range(16):Qmat[i][j]=kerR[i][k] + assert rank(Qmat)==16 + pops=realize(Qmat,hs,());premix+=pops + T=[[Q(i==j)-sum((U[i][k]*L[k][j] for k in range(r)),Q(0)) for j in range(len(I))] for i in range(len(I))] + for k,i in enumerate(ih):T[i]=L[k] + tops=realize(T,[N[i] for i in I],F);tail+=tops + # Right-compose this initial helper premix; other blocks have disjoint H sets. + for row in Mafter: + vals=[row.get(h,Q(0)) for h in H] + if any(vals): + for hj in H:row.pop(hj,None) + for j,hj in enumerate(H): + z=sum((vals[i]*Qmat[i][j] for i in range(16)),Q(0)) + if z:row[hj]=z + for e in tops:apply(e,Mafter,ix) + ends.update({h:list(F) for h in endhs}) + plans.append(dict(block=b,frame=list(F),registers=[N[i] for i in I],ends=endhs,pairing_rank=r,premix_gates=len(pops),tail_gates=len(tops),Q=[[str(x) for x in row] for row in Qmat],T=[[str(x) for x in row] for row in T])) + print('BLOCK',b,'ends',endhs,'Qops',len(pops),'Tops',len(tops),flush=True) +# Check actual post-tail isolation before constructing the high-frame inverse. +allends=set(ends)|set(map(int,w.get('helper_final',{}))) +for h in allends: + j=ix[h];assert Mafter[j]=={j:Q(1)},('row not isolated',h,Mafter[j]);assert all(not row.get(j) for i,row in enumerate(Mafter) if i!=j),('column not isolated',h) +print('EXACT_ISOLATED',len(ends),'new;',len(allends),'total',round(time.monotonic()-t0,3),flush=True) +fullops=eliminate(copy.deepcopy(Mafter),N,F9,[ix[x] for x in allends]) +print('FULL_INVERSE',len(fullops),round(time.monotonic()-t0,3),flush=True) +# Cancel new cold-axis target responses inside A, after their wrappers. +Dirt=[({h:Q(1)} if h in ends else {}) for h in range(n)] +for e in premix+w['A']+w['cut']+w['B']:apply(e,Dirt) +for e in w['precondition']:apply(e,Dirt) +postcomp=[opadd(y,h,-a,()) for y in range(v,2*v) for h,a in sorted(Dirt[y].items()) if a] +assert all(h in ends for e in postcomp for h in [e[2]]) +new=copy.deepcopy(w);new['A']=postcomp+premix+w['A'];new['cleanup']=inherited_tail+tail+fullops +new['early_cleanup']=[[i,e[-1]] for i,e in enumerate(inherited_tail+tail)] +new['helper_final'].update({str(h):f for h,f in ends.items()}) +new['refactored_cleanup']={'kind':'source_branch_gauge_and_retired_completion_cold44','new_cold_ends':len(ends),'exact_non_target_isolation_checked':True,'high_inverse':'dyadic_sparse_Gauss_Jordan'} +# Derive paid profile by subtracting and adding literal frame-chain counts. +spec=importlib.util.spec_from_file_location('upstream_cold_end',args.upstream_package/'code/build_cold_end.py') +profile_module=importlib.util.module_from_spec(spec);spec.loader.exec_module(profile_module) +oldprof,_=profile_module.chain_profile(w);newprof,_=profile_module.chain_profile(new) +prof=Counter({int(k):z for k,z in w['report']['local_profile'].items()});prof.subtract(oldprof);prof.update(newprof) +widths=Counter(len(basis(new['helper_final'].get(str(h),F9)))-len(basis(new.get('start_extra',{}).get(str(h),[]))) for h in range(224,n)) +new['report'].update(local_profile={str(k):z for k,z in sorted(prof.items()) if z},local_rank_mass=sum(k*z for k,z in prof.items()),width_inventory={str(k):z for k,z in sorted(widths.items()) if z},status='EXACT_COLD44_CONSTRUCTED_PENDING_INDEPENDENT_AUDIT') +raw=json.dumps(new,sort_keys=True,separators=(',',':')).encode();sha=hashlib.sha256(raw).hexdigest();(OUT/'FULL-WORD.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +recipe={'premix':postcomp+premix,'cleanup':new['cleanup'],'early_cleanup':new['early_cleanup'],'cold_ends':{str(h):f for h,f in ends.items()},'refactored_cleanup':new['refactored_cleanup'],'output_content_sha256':sha} +(OUT/'RECIPE.json.gz').write_bytes(gzip.compress(json.dumps(recipe,sort_keys=True,separators=(',',':')).encode(),mtime=0)) +receipt=dict(input_content_sha256=hashlib.sha256(gzip.decompress(WPATH.read_bytes())).hexdigest(),output_content_sha256=sha,blocks=plans,new_cold_ends=len(ends),all_low_ended_helpers=len(allends),premix_gates=len(premix),postwrapper_compensation_gates=len(postcomp),tail_gates=len(tail),inherited_tail_gates=len(inherited_tail),full_inverse_gates=len(fullops),profile=new['report']['local_profile'],width_inventory=new['report']['width_inventory'],rank_mass=new['report']['local_rank_mass'],seconds=time.monotonic()-t0) +(OUT/'CONSTRUCTION.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(json.dumps({k:z for k,z in receipt.items() if k!='blocks'},indent=2),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/construct_gauge_xcentre.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/construct_gauge_xcentre.py new file mode 100644 index 0000000000..1010d86746 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/construct_gauge_xcentre.py @@ -0,0 +1,381 @@ +# Round20 early-coordinate-center / own-Y variant, prepared for icekylinx +# with OpenAI Codex assistance. Apache-2.0. Scalar elementary-operation +# helpers below are retained from the attributed PR514 construct_partial.py. +# Adapted by OpenAI Codex for isolated structural research. +# Modified from PR425 by icekylinx with Codex assistance. +"""Full discovery word for Hamming packets with borrowed X and Y registers. + +This changes the scalar architecture. It is not accepted by the old restricted +gx interface: source bases may change until full-frame cleanup, and targets use +an explicitly inverted output basis. No supplier admission is asserted. +""" +import copy,gzip,json,math,time +import itertools as it +from collections import Counter,defaultdict +from fractions import Fraction as Q +from pathlib import Path + +import sys +INPUT=Path(sys.argv[1]);OUT=Path(sys.argv[2]);OUT.mkdir(parents=True,exist_ok=False);D=json.loads((INPUT/'PROTOTYPE.json').read_text()) +P=D['binary_ports'];R=D['root_lines'];v=120;h=9 +modules=json.load(gzip.open(INPUT/'PACKET-PROGRAMS.json.gz')) +# AtomScout: leaver-read K-triangles (schedule from atom1.py / rog.py CP-SAT) +TRI=json.loads(Path(sys.argv[3]).read_text()) +FULLT={(tuple(tr['p']),tr['e']) for tr in TRI['triangles']} +TRI_COORDS={t+8 for tr in TRI['triangles'] for t,_,_ in tr['reads']} +COPYL=[] +NH=504-3*len(FULLT)+len(COPYL) + +def basis(vectors): + b={} + for x in vectors: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def inside(a,b):return basis(a+b)==b +def hyper(p):return basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) +FULL=basis([1<=v,r)) + for col,s in enumerate(ids): + k=next(i for i in range(col,len(regs)) if rows[regs[i]].get(s,Q(0))) + swap(regs[k],regs[col],F) + scale(regs[col],1/rows[regs[col]][s],F) + for i in range(len(regs)): + if i!=col and rows[regs[i]].get(s,Q(0)):add(regs[i],regs[col],-rows[regs[i]][s],F) + assert all(rows[regs[i]]=={s:Q(1)} for i,s in enumerate(ids)) + M=[[Q(R[s][i]) for s in ids] for i in c] + def qr_rank(rs): + bs={} + for r in rs: + r=r.copy() + for i,b in sorted(bs.items()): + if r[i]:q=r[i];r=[x-q*y for x,y in zip(r,b)] + i=next((i for i,x in enumerate(r) if x),None) + if i is not None:q=r[i];bs[i]=[x/q for x in r] + return len(bs) + assert qr_rank(M)==4 + for rr0 in PRIORITY[",".join(map(str,c))]["rows"]: + rr=list(map(Q,rr0)) + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + for i in range(8): + if len(M)==8:break + rr=[Q(i==j) for j in range(8)] + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + assert len(M)==8 + linear(regs,M,F) + for i,r in zip(c,regs): + assert rows[r]=={s:Q(R[s][i]) for s in ids} + block_totals[c,i]=r + +# All centers are complete while Y is still at zero. This is the crucial +# difference from an illegal early-own-Y prefix using the old center order. +centers=[] +for i in range(8): + regs=[block_totals[c,i] for c in sorted(blocks) if i in c] + F=hyper(P[frame[i]]);a=regs[0] + for b in regs[1:]:add(a,b,1,F) + centers.append(a) +centers += [frame[i] for i in range(8)] +center_frames=[cur[r] for r in centers] +assert list(map(len,center_frames))==[8]*8+[1]*8 +assert all(cur[v+t]==() for t in range(v)) + +phase=B +for t,(r,coef,F) in sorted(own_rows.items()): + if t in TRI_COORDS:continue + assert cur[r]==F + add(v+t,r,coef,F) +# requests are needed for TRI coefficients +requests=defaultdict(list) +for pid,pair in enumerate(pairs): + if not pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + requests[key1].append((t,-Q(mat[0][0],2))) + requests[key2].append((u,-Q(mat[0][1],2))) +reqcoef={t:(key,coef) for key,reqs in requests.items() for t,coef in reqs} +def face_info(c,p,eps): + z=blocks[c];keys=[(pp,ee) for pp in it.combinations(c,2) for ee in (-1,1)] + r_local,alpha=z['outputs'][keys.index((p,eps))] + j=[j for j in range(40,len(z['events'])) if z['events'][j][0]==r_local];assert len(j)==1 + return j[0],Q(alpha) +tri_join_counts=Counter() +lcopy={} +for s8 in COPYL: + r=s8+8;c=alloc();add(c,r,1,cur[r]);lcopy[r]=c +for tr in TRI['triangles']: + p,eps=tuple(tr['p']),tr['e'] + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];r0=r;r=lcopy.get(r,r) + key,coef=reqcoef[t];assert key[1]==p and key[2]==eps,(key,p,eps) + if blk==key[0]: + rr,c0,F0=own_rows[t];assert rr==r0;q=c0 + else: + j,alpha=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert loc in ev[:2] + q=coef*alpha + F=basis(cur[v+t]+cur[r]);assert inside(F,hyper(P[t])),('TRI frame',t) + tri_join_counts[len(F)]+=1;add(v+t,r,q,F) + +packets={} +for c,z in sorted(blocks.items()): + mp=maps[c] + keys=[(p,eps) for p in it.combinations(c,2) for eps in (-1,1)] + skipev={face_info(c,p,eps)[0] for p,eps in keys if (p,eps) in FULLT} + for j,(e,F) in enumerate(list(zip(z['events'],z['event_frames']))[40:]): + if j not in early[c] and 40+j not in skipev: + t,s,a,b=e;add(mp[t],mp[s],Q(a,b),tuple(F)) + for key,(r,alpha) in zip(keys,z['outputs']): + if tuple(key) in FULLT:skip();continue + a=mp[r];b=alloc();add(b,a,1,cur[a]) + consumers=sorted(d for d in blocks if d!=c and set(key[0])<=set(d)) + assert len(consumers)==2 + for target,r in zip(consumers,(a,b)):packets[c,key[0],key[1],target]=(r,Q(alpha)) + +# Both tetrahedra use the same partition. A selected key has exactly two +# selected Y loads and no ordinary M consumer. Supply its two raw halves in +# opposite orders and never form that M. Other keys retain the old M path. +second=[];first_join_counts=Counter() +for key,reqs in sorted(requests.items()): + assert len(reqs)==2 + c,p,eps=key + if (p,eps) in FULLT:continue + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d));a,b=ds + for j,(target,coef) in enumerate(sorted(reqs)): + first_source,second_source=(a,b) if j==0 else (b,a) + r,alpha=packets[first_source,p,eps,second_source] + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + first_join_counts[len(F)]+=1;add(v+target,r,coef*alpha,F) + r,alpha=packets[second_source,p,eps,c] + second.append((target,r,coef*alpha)) + +Ms={} +for c in sorted(blocks): + for p in it.combinations(c,2): + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d)) + for eps in (-1,1): + if (c,p,eps) in requests:continue + (a,alpha),(b,beta)=[packets[d,p,eps,c] for d in ds] + F=basis(cur[a]+cur[b]);add(a,b,beta/alpha,F) + Ms[c,p,eps]=(a,alpha) + +consumers=defaultdict(list) +for pid,pair in enumerate(pairs): + for key in pair['keys']:consumers[key].append(pid) +slots={} +for key,uses in sorted(consumers.items()): + assert len(uses)==2 + if key in requests: + assert all(pairs[i]['selected'] for i in uses) + continue + assert all(not pairs[i]['selected'] for i in uses) + a,alpha=Ms[key] + for j,pid in enumerate(uses): + if j==0:r=a + else:r=alloc();add(r,a,1,cur[a]) + slots[pid,key]=(r,alpha) +assert len(cur)-240==NH,len(cur)-240 + +selected_join_counts=Counter() +for target,r,coef in second: + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + selected_join_counts[len(F)]+=1;add(v+target,r,coef,F) +output_basis=[] +for pair in pairs: + if not pair['selected']:continue + (t,u),mat=pair['targets'],pair['matrix'] + F=basis(cur[v+t]+cur[v+u]);assert inside(F,hyper(P[t])) and inside(F,hyper(P[u])) + add(v+t,v+u,1,F);add(v+u,v+t,-Q(1,2),F) + z=-Q(2*mat[1][0],mat[0][0]);scale(v+u,z,F);output_basis.append((t,u,z)) + +for pid,pair in enumerate(pairs): + if pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + (a,alpha),(b,beta)=slots[pid,key1],slots[pid,key2] + F=basis(cur[a]+cur[b]);aa,ab=Q(mat[0][0])*alpha,Q(mat[0][1])*beta + ba,bb=Q(mat[1][0])*alpha,Q(mat[1][1])*beta + add(a,b,ab/aa,F);q=ba/(bb-ba*ab/aa);add(b,a,q,F) + add(v+t,a,-aa/2,hyper(P[t]));add(v+u,b,-(bb-ba*ab/aa)/2,hyper(P[u])) + +for t in range(v): + expected={s:-Q(G[t][s],2) for s in range(v) if s!=t and G[t][s] and s not in frame.values()} if t not in frame.values() else {} + assert rows[v+t]==expected,('side identity',t) + +scatter=[[Q(r[i],4) if t not in frame.values() else Q(0) for i in range(8)]+[Q(t==frame[i]) for i in range(8)] for t,r in enumerate(R)] +precondition=[] +for t,u,z in output_basis: + a,b=scatter[t].copy(),scatter[u].copy() + scatter[t]=[x/2-y/z for x,y in zip(a,b)] + scatter[u]=[x/2+y/z for x,y in zip(a,b)] + precondition.extend([['scale',v+u,(1/z).numerator,(1/z).denominator,[]], + ['add',v+u,v+t,1,2,[]],['add',v+t,v+u,-1,1,[]]]) +for r in range(len(cur)):climb(r,hyper(P[r-v]) if v<=r<2*v else FULL) +H[8]+=8;H[1]+=8 +assert sum(r*z for r,z in H.items())==9*NH+240*8+72,sum(r*z for r,z in H.items()) + +def apply(e,matrix): + if e[0]=='add': + _,t,s,a,b,*_=e;q=Q(a,b) + for j,x in list(matrix[s].items()): + z=matrix[t].get(j,Q(0))+q*x + if z:matrix[t][j]=z + else:matrix[t].pop(j,None) + else: + _,t,a,b,*_=e;q=Q(a,b);matrix[t]={j:q*x for j,x in matrix[t].items()} +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + e[-1]=list(FULL);return e +cut=[['add',v+t,centers[i],q.numerator,q.denominator,None] for t,row in enumerate(scatter) for i,q in enumerate(row) if q] +cleanup=[inverse(e) for e in reversed(A+B) if not v<=e[1]<2*v] +matrix=[{r:Q(1)} if r.json. Steps, each checked exactly: + 1. frames: build_frames.py (standard library only) applies the eight 'B' gate_frames with BlockInvert's + build_promotion.apply. Scalar program, start and end frames unchanged; profile, widths and output sha pinned; + three pin controls must be rejected (count pinned). + 2. frame-controls: frame_controls.py, PR741's ten focused mutants judged by PR635's unchanged native audit. + 3. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant) on the SW4F8 word; count pinned. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs, with the canonical word, local + programs and Clifford recipes pinned (LOCAL-PINS-frames-.json). +Apache-2.0. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +P6 = HERE.parent / 'layers_p6n' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--sw4-dir', type=Path, required=True, help='construction/sw4/reproduce_sw4.py output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--recipe', default='sw4', help='FRAME-RECIPE-.json and LOCAL-PINS-frames-.json') + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('FRAME-RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-frames-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + inp = a.sw4_dir.resolve() / 'sw4/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['input_content_sha256'], 'input must be the pinned SW4 word' + run('frames', HERE / 'build_frames.py', inp, out / 'frames', rfile, portable=False) + b = read(out / 'frames/BUILD.json') + assert b['status'] == 'PASS_EIGHT_FRAME_EXACT_CONSTRUCTION' and len(b['rejected_controls']) == pins['frame_build_controls'], b + word = out / 'frames/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['expected']['output_content_sha256'] + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('frame-controls', HERE / 'frame_controls.py', word, routing, out / 'FRAME-CONTROLS.json', rfile, portable=False) + fc = read(out / 'FRAME-CONTROLS.json') + assert fc['status'] == 'PASS_FOCUSED_EIGHT_FRAME_NATIVE_CONTROLS' and len(fc['rejected']) == pins['frame_controls'], len(fc['rejected']) + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/LOCAL-PINS-jx-X4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/LOCAL-PINS-jx-X4.json new file mode 100644 index 0000000000..417e4ba7a1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/LOCAL-PINS-jx-X4.json @@ -0,0 +1,11 @@ +{ + "word": "X4", + "jx_controls": 7, + "layer_controls": 95, + "canonical_sha256": "1c0e9da767d4418f70016af599e4a447a3f7777acabe930318459c0fbbd260aa", + "program_sha256": { + "forward": "076a2d428f97abb30473df05110998efbe5ac809885bae4ceb1b8bd81329a1e6", + "backward": "7915679ee305927463d19725360cc15132dd21ede18897d09a935dca1df0d55d" + }, + "clifford_recipes_sha256": "20dddfce0ded7e41dc507939df7297bd98aec1286e05d7dbf18000d57e69a0b7" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/RECIPE-X4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/RECIPE-X4.json new file mode 100644 index 0000000000..30f7fa5948 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/RECIPE-X4.json @@ -0,0 +1,1412 @@ +{ + "input_content_sha256": "d232183f233899961bf55cac67a18545ed33548d9a7ca7078990d1a83d557c59", + "input_word": "P6k4sw4 (BRoute w/P6k4sw4, d232183f)", + "frames_741_source": { + "pr": 741, + "commit": "e516b146", + "recipe": "scratch/WasteAttack/FRAME-RECIPE-741.json", + "frames_only_output_sha": "e78047028c7dcd25fb1b6216c2b53eda76d2f91292b21d43f5d1903cc13a5c6c" + }, + "frames_741": [ + [ + 856, + [ + 272, + 144, + 64, + 8, + 6, + 1 + ] + ], + [ + 860, + [ + 256, + 128, + 65, + 16, + 9, + 6 + ] + ], + [ + 868, + [ + 256, + 144, + 81, + 33, + 9, + 6 + ] + ], + [ + 873, + [ + 320, + 192, + 32, + 16, + 6, + 1 + ] + ], + [ + 876, + [ + 273, + 144, + 64, + 33, + 9, + 6 + ] + ], + [ + 953, + [ + 265, + 137, + 73, + 32, + 25, + 6 + ] + ], + [ + 961, + [ + 265, + 128, + 64, + 41, + 16, + 6 + ] + ], + [ + 965, + [ + 257, + 128, + 73, + 40, + 17, + 6 + ] + ] + ], + "raises": [ + [ + 855, + [ + 280, + 128, + 64, + 40, + 6, + 1 + ] + ], + [ + 859, + [ + 256, + 129, + 65, + 40, + 25, + 6 + ] + ], + [ + 862, + [ + 280, + 144, + 80, + 56, + 6, + 1 + ] + ], + [ + 863, + [ + 272, + 136, + 80, + 56, + 6, + 1 + ] + ], + [ + 867, + [ + 256, + 136, + 64, + 41, + 16, + 6 + ] + ], + [ + 870, + [ + 256, + 200, + 40, + 16, + 6, + 1 + ] + ], + [ + 875, + [ + 272, + 144, + 80, + 49, + 8, + 6 + ] + ], + [ + 942, + [ + 256, + 136, + 72, + 33, + 25, + 6 + ] + ], + [ + 943, + [ + 320, + 193, + 33, + 16, + 9, + 6 + ] + ], + [ + 946, + [ + 256, + 129, + 64, + 41, + 16, + 6 + ] + ], + [ + 947, + [ + 273, + 128, + 81, + 33, + 9, + 6 + ] + ], + [ + 950, + [ + 257, + 193, + 33, + 16, + 9, + 6 + ] + ], + [ + 954, + [ + 272, + 129, + 80, + 49, + 8, + 6 + ] + ], + [ + 955, + [ + 256, + 128, + 64, + 33, + 17, + 6 + ] + ], + [ + 958, + [ + 257, + 128, + 81, + 33, + 9, + 6 + ] + ], + [ + 962, + [ + 273, + 128, + 64, + 33, + 8, + 6 + ] + ] + ], + "edits": { + "replace": [ + { + "h": 448, + "i": 862, + "old": [ + "add", + 140, + 448, + -1, + 2 + ], + "new": [ + "add", + 140, + 235, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 448, + "i": 1207, + "old": [ + "add", + 133, + 448, + -1, + 2 + ], + "new": [ + "add", + 133, + 235, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 448, + "i": 870, + "old": [ + "add", + 132, + 235, + -1, + 2 + ], + "new": [ + "add", + 132, + 448, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 448, + "i": 1199, + "old": [ + "add", + 141, + 235, + -1, + 2 + ], + "new": [ + "add", + 141, + 448, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 472, + "i": 855, + "old": [ + "add", + 173, + 472, + -1, + 2 + ], + "new": [ + "add", + 173, + 267, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 472, + "i": 1198, + "old": [ + "add", + 140, + 472, + -1, + 2 + ], + "new": [ + "add", + 140, + 267, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 472, + "i": 863, + "old": [ + "add", + 141, + 267, + -1, + 2 + ], + "new": [ + "add", + 141, + 472, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 472, + "i": 1190, + "old": [ + "add", + 172, + 267, + -1, + 2 + ], + "new": [ + "add", + 172, + 472, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 458, + "i": 942, + "old": [ + "add", + 204, + 458, + 1, + 1 + ], + "new": [ + "add", + 204, + 58, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 458, + "i": 1287, + "old": [ + "add", + 197, + 458, + 1, + 1 + ], + "new": [ + "add", + 197, + 58, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 458, + "i": 950, + "old": [ + "add", + 196, + 58, + 1, + 1 + ], + "new": [ + "add", + 196, + 458, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 458, + "i": 1279, + "old": [ + "add", + 205, + 58, + 1, + 1 + ], + "new": [ + "add", + 205, + 458, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 592, + "i": 859, + "old": [ + "add", + 174, + 592, + -1, + 2 + ], + "new": [ + "add", + 174, + 427, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 592, + "i": 1278, + "old": [ + "add", + 204, + 592, + -1, + 2 + ], + "new": [ + "add", + 204, + 427, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 592, + "i": 943, + "old": [ + "add", + 205, + 427, + -1, + 2 + ], + "new": [ + "add", + 205, + 592, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 592, + "i": 1194, + "old": [ + "add", + 170, + 427, + -1, + 2 + ], + "new": [ + "add", + 170, + 592, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 470, + "i": 946, + "old": [ + "add", + 202, + 470, + 1, + 1 + ], + "new": [ + "add", + 202, + 26, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 470, + "i": 1295, + "old": [ + "add", + 165, + 470, + 1, + 1 + ], + "new": [ + "add", + 165, + 26, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 470, + "i": 958, + "old": [ + "add", + 164, + 26, + 1, + 1 + ], + "new": [ + "add", + 164, + 470, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 470, + "i": 1283, + "old": [ + "add", + 206, + 26, + 1, + 1 + ], + "new": [ + "add", + 206, + 470, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 604, + "i": 867, + "old": [ + "add", + 142, + 604, + -1, + 2 + ], + "new": [ + "add", + 142, + 443, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 604, + "i": 1282, + "old": [ + "add", + 202, + 604, + -1, + 2 + ], + "new": [ + "add", + 202, + 443, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 604, + "i": 947, + "old": [ + "add", + 206, + 443, + -1, + 2 + ], + "new": [ + "add", + 206, + 604, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 604, + "i": 1202, + "old": [ + "add", + 138, + 443, + -1, + 2 + ], + "new": [ + "add", + 138, + 604, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 482, + "i": 954, + "old": [ + "add", + 194, + 482, + 1, + 1 + ], + "new": [ + "add", + 194, + 18, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 482, + "i": 1299, + "old": [ + "add", + 166, + 482, + 1, + 1 + ], + "new": [ + "add", + 166, + 18, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 482, + "i": 962, + "old": [ + "add", + 162, + 18, + 1, + 1 + ], + "new": [ + "add", + 162, + 482, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 482, + "i": 1291, + "old": [ + "add", + 198, + 18, + 1, + 1 + ], + "new": [ + "add", + 198, + 482, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 614, + "i": 875, + "old": [ + "add", + 134, + 614, + 1, + 1 + ], + "new": [ + "add", + 134, + 50, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 614, + "i": 1290, + "old": [ + "add", + 194, + 614, + 1, + 1 + ], + "new": [ + "add", + 194, + 50, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 614, + "i": 955, + "old": [ + "add", + 198, + 50, + 1, + 1 + ], + "new": [ + "add", + 198, + 614, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 614, + "i": 1210, + "old": [ + "add", + 130, + 50, + 1, + 1 + ], + "new": [ + "add", + 130, + 614, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + } + ], + "delete": [ + { + "h": 448, + "i": 1, + "old": [ + "add", + 140, + 448, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 448, + "i": 0, + "old": [ + "add", + 133, + 448, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 472, + "i": 33, + "old": [ + "add", + 173, + 472, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 472, + "i": 32, + "old": [ + "add", + 140, + 472, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 458, + "i": 21, + "old": [ + "add", + 204, + 458, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 458, + "i": 20, + "old": [ + "add", + 197, + 458, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 592, + "i": 64, + "old": [ + "add", + 174, + 592, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 592, + "i": 65, + "old": [ + "add", + 204, + 592, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 470, + "i": 29, + "old": [ + "add", + 202, + 470, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 470, + "i": 28, + "old": [ + "add", + 165, + 470, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 604, + "i": 72, + "old": [ + "add", + 142, + 604, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 604, + "i": 73, + "old": [ + "add", + 202, + 604, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 482, + "i": 37, + "old": [ + "add", + 194, + 482, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 482, + "i": 36, + "old": [ + "add", + 166, + 482, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 614, + "i": 95, + "old": [ + "add", + 134, + 614, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 614, + "i": 96, + "old": [ + "add", + 194, + 614, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + } + ], + "insert": [ + { + "h": 448, + "before": 2, + "gate": [ + "add", + 132, + 448, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 448, + "before": 2, + "gate": [ + "add", + 141, + 448, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 472, + "before": 34, + "gate": [ + "add", + 141, + 472, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 472, + "before": 34, + "gate": [ + "add", + 172, + 472, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 458, + "before": 22, + "gate": [ + "add", + 196, + 458, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 458, + "before": 22, + "gate": [ + "add", + 205, + 458, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 592, + "before": 66, + "gate": [ + "add", + 205, + 592, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 592, + "before": 66, + "gate": [ + "add", + 170, + 592, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 470, + "before": 30, + "gate": [ + "add", + 164, + 470, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 470, + "before": 30, + "gate": [ + "add", + 206, + 470, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 604, + "before": 74, + "gate": [ + "add", + 206, + 604, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 604, + "before": 74, + "gate": [ + "add", + 138, + 604, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 482, + "before": 38, + "gate": [ + "add", + 162, + 482, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 482, + "before": 38, + "gate": [ + "add", + 198, + 482, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 614, + "before": 97, + "gate": [ + "add", + 198, + 614, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 614, + "before": 97, + "gate": [ + "add", + 130, + 614, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + } + ] + }, + "pairs": { + "448": 235, + "458": 58, + "470": 26, + "472": 267, + "482": 18, + "592": 427, + "604": 443, + "614": 50 + }, + "expected": { + "output_content_sha256": "1e1d99ba7aab877d6b573c41f7030ee73de9a52fee51d0a822ddaae71251999f", + "local_profile": { + "1": 2548, + "2": 338, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + } + }, + "controls": { + "C0_identity": { + "mutation": { + "kind": "empty" + }, + "expected_sha": "d232183f233899961bf55cac67a18545ed33548d9a7ca7078990d1a83d557c59", + "local_profile": { + "1": 2548, + "2": 342, + "3": 438, + "4": 186, + "5": 56, + "8": 8 + } + }, + "C1_741_only": { + "mutation": { + "kind": "only_edits_of", + "h": [], + "raises": [] + }, + "expected_sha": "e78047028c7dcd25fb1b6216c2b53eda76d2f91292b21d43f5d1903cc13a5c6c", + "local_profile": { + "1": 2556, + "2": 334, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + } + }, + "M1_one_pair_448": { + "mutation": { + "kind": "only_edits_of", + "h": [ + 448 + ], + "raises": [ + 862, + 870 + ] + }, + "expected_sha": "5fb6fb2e5e63d18b865535c1dbd3dbaddab530c39429a4b09f11ac96723257c9", + "local_profile": { + "1": 2556, + "2": 334, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + } + }, + "N1_drop_preread": { + "mutation": { + "kind": "drop_insert", + "k": 0 + }, + "rejection_expected": [ + "exactness rows", + [ + 132, + 135 + ] + ] + }, + "N2_wrong_sign_preread": { + "mutation": { + "kind": "flip_insert_sign", + "k": 0 + }, + "rejection_expected": [ + "exactness rows", + [ + 132, + 135 + ] + ] + }, + "N3_plain_join_moved_reads": { + "mutation": { + "kind": "drop_raises" + }, + "expected_sha": "7241cd59dd0376e0b2e1b5ba8403c5423d247ddd7cbcc2f02bdc353752806f30", + "local_profile": { + "1": 2532, + "2": 378, + "3": 430, + "4": 178, + "5": 56, + "8": 8 + } + }, + "N4_raise_dim7_at_855": { + "mutation": { + "kind": "frame", + "i": 855, + "frame": [ + 280, + 128, + 64, + 40, + 4, + 2, + 1 + ] + }, + "rejection_expected": [ + "cap", + 1302, + 174 + ] + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/build_jx.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/build_jx.py new file mode 100644 index 0000000000..f8d74a6324 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/build_jx.py @@ -0,0 +1,167 @@ +#!/usr/bin/env python3 +"""build_jx.py --input WORD --recipe RECIPE.json --out OUT.json.gz [--control NAME] [--no-pin] + +Stdlib-only builder: joint read-set exchange (copy pairs, BRoute sw4 rule) + explicit B frame raises on P6k4sw4. +Steps: + 1. input content sha256 must equal recipe.input_content_sha256. + 2. explicit B edits: replace (old gate asserted), delete (old gate asserted), insert (before an original index). + 3. frames: replaced/inserted gates take the plain join of their operands' current frames; gates listed in + frames_741 / raises take base = the listed frame and the resulting frame must EQUAL it (explicit frames); + every other gate keeps span(stored frame + operand frames) (monotone repair). Early cleanup likewise. + 4. legality: target frames inside u_t^perp at every gate; tails inside helper_final; every end frame contains the + final frame; the explicit frame must contain the join (enforced by equality in 3). + 5. exactness: the rational linear map of the whole B segment is identical to the input's (Fraction replay). + 6. paid profile recomputed (A + centre levels + B + tails + ends) and written to report.local_profile. +Output: canonical json (sort_keys, compact) gzip mtime=0. Exit 0 and prints output sha; exit 2 with the first +rejection (site) on failure. --control applies a named mutation from recipe.controls (expected to be rejected +or to give a pinned sha).""" +import argparse, gzip, json, hashlib, sys, copy +from fractions import Fraction as Fr +from collections import Counter + +V, H = 112, 9 + +def basis(vs): + piv = {} + for a in vs: + while a: + b = a.bit_length() - 1 + if b in piv: a ^= piv[b] + else: piv[b] = a; break + for k in sorted(piv): + for j in sorted(piv): + if j > k and (piv[j] >> k) & 1: piv[j] ^= piv[k] + return tuple(piv[k] for k in sorted(piv, reverse=True)) + +def contained(a, b): return basis(list(a) + list(b)) == tuple(b) +def registers(e): return e[1:3] if e[0] == 'add' else e[1:2] +def hyper(p): return basis([x for x in range(1, 1 << H) if (x & p).bit_count() % 2 == 0]) +FULL = basis([1 << i for i in range(H)]) +def csha(w): return hashlib.sha256(json.dumps(w, sort_keys=True, separators=(',', ':')).encode()).hexdigest() + +class Reject(Exception): pass + +def symstate(gs): + rows = {} + for e in gs: + for q in registers(e): rows.setdefault(q, {q: Fr(1)}) + if e[0] == 'add': + t, s = e[1], e[2]; c = Fr(e[3], e[4]); d = rows[t] + for k, x in list(rows[s].items()): + a = d.get(k, 0) + c * x + if a: d[k] = a + else: d.pop(k, None) + else: + t = e[1]; c = Fr(e[2], e[3]); rows[t] = {k: c * x for k, x in rows[t].items()} + return rows + +def build(w, rc, control=None): + w = copy.deepcopy(w); B0 = w['B'] + edits = copy.deepcopy(rc['edits']); explicit = {int(i): f for i, f in rc['frames_741']} + for i, f in rc['raises']: + if int(i) in explicit: raise Reject(('duplicate frame', i)) + explicit[int(i)] = f + if control: + c = rc['controls'][control]['mutation'] + if c['kind'] == 'drop_insert': edits['insert'] = [x for k, x in enumerate(edits['insert']) if k != c['k']] + elif c['kind'] == 'flip_insert_sign': edits['insert'][c['k']]['gate'][3] *= -1 + elif c['kind'] == 'frame': explicit[c['i']] = c['frame'] + elif c['kind'] == 'drop_edits': edits = dict(replace=[], delete=[], insert=[]) + elif c['kind'] == 'drop_raises': explicit = {int(i): f for i, f in rc['frames_741']} + elif c['kind'] == 'only_edits_of': + hs = set(c['h']) + edits = {k: [x for x in v if x['h'] in hs] for k, v in edits.items()} + explicit = {i: f for i, f in explicit.items() if i in {int(j) for j, _ in rc['frames_741']} or i in set(c['raises'])} + elif c['kind'] == 'empty': edits = dict(replace=[], delete=[], insert=[]); explicit = {} + else: raise SystemExit('unknown control') + B = [list(e) for e in B0]; tag = set(); dele = set(); ins = {} + for x in edits['replace']: + i = x['i'] + if B[i][:-1] != x['old']: raise Reject(('replace old mismatch', i)) + B[i] = list(x['new']) + [B[i][-1]]; tag.add(i) + for x in edits['delete']: + i = x['i'] + if B[i][:-1] != x['old']: raise Reject(('delete old mismatch', i)) + dele.add(i) + for x in edits['insert']: ins.setdefault(x['before'], []).append(list(x['gate']) + [None]) + NB, nt, key = [], set(), [] + for i, e in enumerate(B): + for g in ins.get(i, []): nt.add(len(NB)); NB.append(g); key.append(None) + if i in dele: continue + if i in tag: nt.add(len(NB)) + NB.append(e); key.append(i) + # frames + paid + R = w['report']['R']; n = 2 * V + R + END = [FULL] * V + [hyper(p) for p in w['ports']] + [FULL] * R + for q, U in w['helper_final'].items(): END[int(q)] = basis(U) + cur = [(p,) for p in w['ports']] + [()] * (V + R) + for q, U in w['start_extra'].items(): cur[int(q)] = basis(U) + paid = Counter() + for e in w['A']: + for q in registers(e): + U = basis(e[-1]); d = len(U) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = U + lev = {int(t): basis(U) for t, U in w.get('target_levels', {}).items()} + for q, U in zip(w['centers'], w['center_frames']): + U = basis(U); served = {lev.get(e[1] - V, ()) for e in w['cut'] if e[2] == q} + for T in sorted(served, key=lambda x: -len(x)): + if T != U: paid[len(U) - len(T)] += 1 + U = T + used = set() + for j, e in enumerate(NB): + rs = registers(e); k = key[j] + if k is not None and k in explicit: base = list(explicit[k]); used.add(k) + elif j in nt or e[-1] is None: base = [] + else: base = list(e[-1]) + F = basis(base + [x for q in rs for x in cur[q]]) + if k is not None and k in explicit and F != basis(explicit[k]): raise Reject(('explicit frame below join', k)) + for q in rs: + if V <= q < 2 * V and not contained(F, END[q]): raise Reject(('cap', j, q)) + d = len(F) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = F + NB[j] = list(e[:-1]) + [list(F)] + if used != set(explicit): raise Reject(('unused explicit frame', sorted(set(explicit) - used))) + newearly = [] + for i, U in w['early_cleanup']: + rs = registers(w['cleanup'][i]); F = basis(list(U) + [x for q in rs for x in cur[q]]) + for q in rs: + if w['helper_final'].get(str(q)) is not None and not contained(F, END[q]): raise Reject(('tailend', i, q)) + d = len(F) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = F + newearly.append([i, list(F)]) + for q in range(n): + if not contained(cur[q], END[q]): raise Reject(('end', q)) + d = len(END[q]) - len(cur[q]) + if d: paid[d] += 1 + # exactness of the B segment + a, b = symstate([e[:-1] for e in B0]), symstate([e[:-1] for e in NB]) + bad = sorted(q for q in set(a) | set(b) if a.get(q, {q: Fr(1)}) != b.get(q, {q: Fr(1)})) + if bad: raise Reject(('exactness rows', bad)) + w['B'] = NB; w['early_cleanup'] = newearly + w['report'] = dict(w['report']); w['report']['local_profile'] = {str(k): v for k, v in sorted(paid.items())} + return w + +def main(): + ap = argparse.ArgumentParser(); ap.add_argument('--input', required=True); ap.add_argument('--recipe', required=True) + ap.add_argument('--out'); ap.add_argument('--control'); ap.add_argument('--no-pin', action='store_true') + a = ap.parse_args() + w = json.loads(gzip.decompress(open(a.input, 'rb').read())); rc = json.load(open(a.recipe)) + if csha(w) != rc['input_content_sha256']: print('REJECT input pin'); sys.exit(2) + pin = rc['controls'][a.control].get('rejection_expected') if a.control else None + try: o = build(w, rc, a.control) + except Reject as r: + got = json.loads(json.dumps(r.args[0])); print('REJECT', json.dumps(got)) + if pin is not None: + print('CONTROL', 'PINNED' if got == pin else 'PIN MISMATCH %s' % json.dumps(pin)); sys.exit(0 if got == pin else 4) + sys.exit(2) + if pin is not None and not a.no_pin: print('CONTROL NOT REJECTED, pinned', json.dumps(pin)); sys.exit(4) + s = csha(o) + exp = rc['controls'][a.control].get('expected_sha') if a.control else rc['expected']['output_content_sha256'] + print('OK', s, o['report']['local_profile']) + if a.out: open(a.out, 'wb').write(gzip.compress(json.dumps(o, sort_keys=True, separators=(',', ':')).encode(), mtime=0)) + if not a.no_pin and exp and s != exp: print('REJECT output pin', exp); sys.exit(3) + +if __name__ == '__main__': main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/reproduce_jx.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/reproduce_jx.py new file mode 100644 index 0000000000..6829a1b25d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/jx/reproduce_jx.py @@ -0,0 +1,99 @@ +#!/usr/bin/env python3 +"""Rebuild the X4 word (JointXF: joint read-set exchange on four further copy-pair instances plus explicit B frame +raises, including chafreaky's PR741 eight frames) and its native locals. + +Input: a fresh `construction/sw4/reproduce_sw4.py --recipe P6k4` output directory; its SW4 word (d232183f...) is pinned +there and by RECIPE-X4.json. Steps, each checked exactly: + 1. jx: build_jx.py (standard library only; JointXF) applies the recipe's explicit B edits (replace / delete / insert, + each old gate asserted), the PR741 frames and the explicit raises, repairs all other frames monotonically, checks + target frames inside u_t^perp, tails and ends, and the exactness of the whole B segment (rational replay), and + pins the output sha. + 2. jx-controls: every control in the recipe is rebuilt and must reproduce its pinned outcome exactly: a pinned + rejection site (exit 0 with CONTROL PINNED) or a pinned output sha. C1_741_only must reproduce PR741's word + e78047028c... (the construction/frames step's output); C0_identity reproduces the input. + 3. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant) on the X4 word; count pinned. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs; canonical word, local programs + and Clifford recipes pinned (LOCAL-PINS-jx-X4.json). +Apache-2.0. Driver by ColdWitness around JointXF's builder. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +P6 = HERE.parent / 'layers_p6n' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--sw4-dir', type=Path, required=True, help='construction/sw4/reproduce_sw4.py output') + ap.add_argument('--recipe', default='X4', help='RECIPE-.json and LOCAL-PINS-jx-.json') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-jx-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True, ok=(0,)): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc in ok, (label, rc) + print('PASS', label, flush=True) + return (out / (label + '.log')).read_text() + + inp = a.sw4_dir.resolve() / 'sw4/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['input_content_sha256'], 'input must be the pinned SW4 word' + (out / 'jx').mkdir(); word = out / 'jx/FULL-WORD.json.gz' + run('jx', HERE / 'build_jx.py', '--input', inp, '--recipe', rfile, '--out', word, portable=False) + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['expected']['output_content_sha256'] + assert len(rec['controls']) == pins['jx_controls'], len(rec['controls']) + results = {} + for name, c in sorted(rec['controls'].items()): + log = run('jx-control-' + name, HERE / 'build_jx.py', '--input', inp, '--recipe', rfile, '--control', name, portable=False) + if 'rejection_expected' in c: + assert 'CONTROL PINNED' in log, (name, log[-300:]); results[name] = dict(rejected=c['rejection_expected']) + else: + assert ('OK ' + c['expected_sha']) in log, (name, log[-300:]); results[name] = dict(sha=c['expected_sha']) + assert rec['controls']['C1_741_only']['expected_sha'] == rec['frames_741_source']['frames_only_output_sha'] + (out / 'JX-CONTROLS.json').write_text(json.dumps(dict(status='PASS_JX_PINNED_CONTROLS', controls=results), indent=1) + '\n') + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers/build_pivot_swap.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers/build_pivot_swap.py new file mode 100644 index 0000000000..b225601c01 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers/build_pivot_swap.py @@ -0,0 +1,160 @@ +"""Cost-neutral pivot-role swaps inside existing entrance-kernel families. Apache-2.0. Prepared with Claude Code +assistance. The pivot/donor role exchange follows PR266's "pivot role is moved" idea (bit side), applied here to the +complex supplier's multicut kernel families (PR568 build_multicut_kernels.py shape). + +A kernel family on the input word is an entering helper p (start_extra E) together with the gates that read p at frame +E before any other touch of p: d += c_d * p @E (d a helper or, in B, a target). They cancel p's complete dirty +response: col(p) + sum_d c_d * col_{g_d}(d) = 0, where col_{g}(d) is d's suffix response from gate g on. + +Swap to the new pivot x (a helper donor of the family with exactly one family gate g_x = x's FIRST touch, and no other +touch of x up to the family's last gate): + g_x : x += c_x p -> p += (1/c_x) x + g_d : d += c_d p -> d += (c_d/c_x) x (d != x, same position and frame E) + start_extra: p -> x (same E); cleanup regenerated by the inherited inverse rule. +Exactness (PROOF-NOTE-PIVOT.md): x holds only its initial dirt at every rewritten gate, and p holds only its initial dirt +until g_x, so x's new response is col(x) + col(p)/c_x + sum_d (c_d/c_x) col_{g_d}(d) = (c_x col(x) + col(p) + +sum_d c_d col_{g_d}(d)) / c_x = 0, because col(x) = col_{g_x}(x). This script checks it by exact rational replay anyway. +Cost: the frame chains of p and x are exchanged (p now climbs [] -> E at g_x where x did; x starts at E where p did), so +gk_word.profile and the width multiset are unchanged; both are asserted. + +Recipe: {input_content_sha256, output_content_sha256, swaps: [{pivot, new_pivot, entrance, gates: [{part, index, +before, after}]}]}. Every expected `after` gate is recomputed from the rule above and must equal the recipe. + +Negative controls (--controls): mutated recipes/words that must be rejected at pinned reasons: + * nonzero response: another family gate's rescaled coefficient has the wrong sign; + * wrong pivot coefficient: g_x's new coefficient doubled; + * wrong entrance: the recipe's entrance is not p's start_extra; + * non-family gate: a recipe gate whose `before` is not the word's gate; + * new pivot touched in the window: x replaced by a family donor that is not a fresh helper (a target donor, or the + first other helper donor when the family has no target donor). +""" +from pathlib import Path +from collections import Counter +from fractions import Fraction as Q +import argparse, copy, gzip, hashlib, json, sys +assert __debug__, 'Assertions required' +ap = argparse.ArgumentParser() +for k in ('--input', '--recipe', '--gk-dir', '--out'): ap.add_argument(k, type=Path, required=True) +a = ap.parse_args(); assert not a.out.exists() +sys.path.insert(0, str(a.gk_dir)); import gk_word as G, gk_common as C +G.V = C.V = 112; G.DATA = C.DATA = 7168 +V = 112 +raw = json.loads(gzip.decompress(a.input.read_bytes())); recipe = json.loads(a.recipe.read_text()) +enc = lambda x: json.dumps(x, sort_keys=True, separators=(',', ':')).encode(); sha = lambda x: hashlib.sha256(x).hexdigest() +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +inv_rule = lambda w: [G.inverse(e, G.FULL) for e in reversed(w['A'] + w['B']) if not V <= e[1] < 2 * V] +dy = lambda q: q != 0 and q.denominator & (q.denominator - 1) == 0 + + +def response(w, h): + rows = {} + def get(r): return rows.setdefault(r, {r: Q(1)}) + for e in w['A'] + w['cut'] + w['B']: + if e[0] == 'scale': + q = Q(e[2], e[3]); rows[e[1]] = {j: q * x for j, x in get(e[1]).items()} + else: + t, s = e[1], e[2]; q = Q(e[3], e[4]); src = get(s); tgt = get(t) + for j, x in list(src.items()): + z = tgt.get(j, Q(0)) + q * x + if z: tgt[j] = z + else: tgt.pop(j, None) + return {r: rows[r][h] for r in range(V, 2 * V) if r in rows and rows[r].get(h)} + + +def build(w0, rec): + w = copy.deepcopy(w0); n = 2 * V + w['report']['R'] + assert w['cleanup'] == inv_rule(w), 'input cleanup is not the inherited inverse rule' + P0 = G.profile(w); W0 = Counter(C.widths_of(w)) + AB = [('A', i) for i in range(len(w['A']))] + [('B', i) for i in range(len(w['B']))] + pos = {k: j for j, k in enumerate(AB)} + seen = set(); receipts = []; rules = [] + for s in rec['swaps']: + p, x, E = s['pivot'], s['new_pivot'], s['entrance'] + assert 2 * V <= p < n and w['start_extra'].get(str(p)) == E, 'pivot is not an entering helper at the entrance' + assert 2 * V <= x < n and x not in w['centers'], 'new pivot must be a helper' + assert str(x) not in w['start_extra'], 'new pivot already entering' + assert not {p, x} & seen, 'registers shared between swaps'; seen |= {p, x} + gs = s['gates']; ks = [pos[(g['part'], g['index'])] for g in gs] + assert ks == sorted(ks) and len(set(ks)) == len(ks) + for g in gs: + e = w[g['part']][g['index']] + assert e == g['before'], 'recipe gate is not the word gate' + assert e[0] == 'add' and e[2] == p and e[1] != p and list(e[-1]) == list(E), 'not a family gate (d += c p @E)' + touch = lambda r: [j for j, (part, i) in enumerate(AB) if r in regs(w[part][i])] + tp = touch(p); assert tp[:len(ks)] == ks, 'family gates must be all touches of the pivot up to its first other touch' + gx = [k for k, g in zip(ks, gs) if g['before'][1] == x]; assert len(gx) == 1, 'new pivot must have exactly one family gate' + tx = touch(x); assert tx[0] == gx[0], 'new pivot touched before its family gate' + assert len(tx) == 1 or tx[1] > ks[-1], 'new pivot touched inside the family window' + cx = Q(*[g['before'][3:5] for g in gs if g['before'][1] == x][0]) + for g in gs: + d, f = g['before'][1], g['after'] + assert f[0] == 'add' and list(f[-1]) == list(E) and (f[1:3] == [p, x] if d == x else f[1:3] == [d, x]), 'after-gate shape' + assert dy(Q(f[3], f[4])), 'non-dyadic swapped coefficient' + w[g['part']][g['index']] = f + q = 1 / cx if d == x else Q(g['before'][3], g['before'][4]) / cx + rules.append((f, ['add', p, x, q.numerator, q.denominator, list(E)] if d == x else ['add', d, x, q.numerator, q.denominator, list(E)])) + w['start_extra'][str(x)] = w['start_extra'].pop(str(p)) + receipts.append(dict(pivot=p, new_pivot=x, entrance=E, family_gates=len(gs))) + w['cleanup'] = inv_rule(w) + for s in rec['swaps']: + assert not response(w, s['new_pivot']), 'new pivot dirty response not zero' + assert all(f == e for f, e in rules), 'recipe after-gate is not the swap rule' + P1 = G.profile(w) + assert P1 == P0, 'paid profile not identical (swap is not cost-neutral)' + assert Counter(C.widths_of(w)) == W0, 'width multiset changed' + w['report']['local_profile'] = {str(k): v for k, v in sorted(P1.items())} + w['report']['local_rank_mass'] = sum(k * v for k, v in P1.items()) + return w, receipts + + +assert sha(enc(raw)) == recipe['input_content_sha256'], 'input content' +out, receipts = build(raw, recipe) +o = enc(out); assert sha(o) == recipe['output_content_sha256'], sha(o) + +# ---- negative controls ------------------------------------------------------------------------------------------- +WHY = dict(nonzero='new pivot dirty response not zero', coef='new pivot dirty response not zero', + entrance='paid profile not identical', nonfamily='recipe gate is not the word gate', + window='new pivot') +controls = [] + + +def reject(name, mut, why): + r = copy.deepcopy(recipe); w = copy.deepcopy(raw) + mut(r, w) + try: + build(w, r) + except AssertionError as ex: + msg = str(ex) + assert why in msg, ('control rejected for the wrong reason', name, msg) + controls.append(dict(control=name, reason=msg)); return + raise AssertionError('control accepted: ' + name) + + +for si, s in enumerate(recipe['swaps']): + x = s['new_pivot']; tag = '%d->%d' % (s['pivot'], x) + def m_other(r, w, si=si): + g = [g for g in r['swaps'][si]['gates'] if g['before'][1] != r['swaps'][si]['new_pivot']][0] + g['after'] = list(g['after']); g['after'][3] = -g['after'][3] + def m_coef(r, w, si=si): + g = [g for g in r['swaps'][si]['gates'] if g['before'][1] == r['swaps'][si]['new_pivot']][0] + g['after'] = list(g['after']); g['after'][3] *= 2 + def m_nonfamily(r, w, si=si): + g = r['swaps'][si]['gates'][0]; g['before'] = list(g['before']); g['before'][3] = -g['before'][3] + def m_window(r, w, si=si): + S = r['swaps'][si]; S['new_pivot'] = [g['before'][1] for g in S['gates'] if g['before'][1] != S['new_pivot']][0] + def m_entrance(r, w, si=si): + S = r['swaps'][si]; S['entrance'] = [1] + reject('swap %s: another family gate keeps a wrong (unrescaled-sign) coefficient: new pivot response nonzero' % tag, m_other, WHY['nonzero']) + reject('swap %s: wrong pivot coefficient (1/c doubled) on the new pivot gate' % tag, m_coef, WHY['coef']) + reject('swap %s: non-family gate in the recipe' % tag, m_nonfamily, WHY['nonfamily']) + reject('swap %s: new pivot replaced by another family donor (not a fresh cold helper)' % tag, m_window, WHY['window']) + reject('swap %s: wrong entrance frame for the moved entrance' % tag, m_entrance, 'pivot is not an entering helper at the entrance') +controls_receipt = list(controls) + +a.out.mkdir(parents=True); (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(o, mtime=0)) +rc = dict(status='PASS_COST_NEUTRAL_PIVOT_SWAPS', input_content_sha256=recipe['input_content_sha256'], + output_content_sha256=recipe['output_content_sha256'], swaps=receipts, local_profile=out['report']['local_profile'], + negative_controls_rejected=controls_receipt, + scope='Exact family rewrite, exact zero dirty response of every new pivot, identical paid profile and widths, ' + 'regenerated inverse-rule cleanup. Native all-column audit, HPE/cold steps and global checks remain separate.') +(a.out / 'PIVOT-SWAP.json').write_text(json.dumps(rc, indent=2, sort_keys=True) + '\n', newline='\n'); print(json.dumps(rc, indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers/layer_end_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers/layer_end_controls.py new file mode 100644 index 0000000000..317da36d95 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers/layer_end_controls.py @@ -0,0 +1,201 @@ +"""layer_end_controls.py LAYERED-WORD.json.gz ROUTING OUTDIR (env PR635_CODE): adapted PR635 cold_end_controls.py (LayerReviewer): raw-word negative controls for the cold low-frame ends and the +refactored cleanup accepted by hpe_audit_and_transport.py. Every mutation MUST be rejected (AssertionError); the +unmutated word MUST pass. Apache-2.0. DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code.""" +import copy, gzip, json, shutil, sys, tempfile +from pathlib import Path +import os +sys.path.insert(0, os.environ['PR635_CODE']) # PR635's unchanged hpe_audit_and_transport.py +import hpe_audit_and_transport as atc + +src, routing, outdir = Path(sys.argv[1]), Path(sys.argv[2]), Path(sys.argv[3]) +word = json.load(gzip.open(src)) +v, R = word['report']['v'], word['report']['R']; n = 2*v + R +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +meta = word['refactored_cleanup'] +cold = [int(h) for h in meta['cold_low_frame_ended_helpers']] +npre = meta['premix_gates']; nlow = meta['lower_frame_gates'] +early = word['early_cleanup']; eidx = {i for i, _ in early} +rest = [i for i in range(len(word['cleanup'])) if i not in eidx] + + +def trial(w): + """None if the transport audit accepts w, else the AssertionError message.""" + tmp = Path(tempfile.mkdtemp()) + p = tmp/'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w).encode(), mtime=0)) + try: + atc.run(p, routing, tmp/'out') + return None + except AssertionError as e: + return repr(e.args[0]) if e.args else 'AssertionError' + finally: + shutil.rmtree(tmp, ignore_errors=True) + + +# Pinned rejection reasons: each mutant must fail at this assertion of hpe_audit_and_transport.py (message substring). +ENDPOINT, COLDPRE, CONE = "'arbitrary-dirt endpoint'", 'touches a cold hyperplane-ended helper', 'hpe cone pre-check (row / column)' +WHY = dict(premix_to_precondition=COLDPRE, premix_dropped=COLDPRE, e_premix_dropped=ENDPOINT, lower_dropped=ENDPOINT, + remainder_dropped=ENDPOINT, coefficient=ENDPOINT, into_full='cleanup on non-FULL end', dyadic=ENDPOINT, frame_below="'nonmonotone'", + nonmonotone="'nonmonotone'", other_frame=CONE, cone=CONE, extra_end=COLDPRE, marker='cleanup is not the literal reversed inverse', + target='refactored cleanup touches a target', profile_pin='paid local profile differs from the reported local_profile', + entering_precondition='zero-frame precondition/compensation touches an entering helper') +assert trial(word) is None, 'unmutated cold-end word must pass' +results = [] + + +def reject(name, mut, why): + """the mutation must be rejected, and for the pinned reason (a substring of the audit's assertion message).""" + w = copy.deepcopy(word); mut(w) + msg = trial(w) + assert msg is not None, 'cold-end mutation accepted: ' + name + assert why in msg, 'cold-end mutation %r rejected for the wrong reason: %s' % (name, msg[:300]) + results.append(name); print('rejected', name, '|', why, flush=True) + + +h0 = cold[0] +i0, U0 = next((i, f) for i, f in early if h0 in regs(word['cleanup'][i])) +r0 = rest[len(rest)//2] + + +def premix_to_precondition(w): # premix before the wrappers; compensation then reads the cold ends + w['precondition'] = w['precondition'] + w['A'][:npre]; w['A'] = w['A'][npre:] + + +def lower_gate_into_full(w): # a lower-frame gate on a cold-ended helper executed in the FULL remainder instead + w['early_cleanup'] = [x for x in w['early_cleanup'] if x[0] != i0] + + +def drop_cleanup_gate(w, i): # remove the gate AND its early_cleanup entry: a structurally valid word missing one gate + w['cleanup'].pop(i) + w['early_cleanup'] = [[j - (j > i), f] for j, f in w['early_cleanup'] if j != i] + + +def other_frame(w): # a different frame of the same dimension as the cold end (another cold helper's) + f = next(w['helper_final'][str(h)] for h in cold if w['helper_final'][str(h)] != w['helper_final'][str(h0)]) + w['helper_final'][str(h0)] = f + + +def extra_cold_end(w): # declare a premixed partner of h0 cold-ended at h0's frame: fails the row/column cone + p = next(r for e in w['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + w['helper_final'][str(p)] = w['helper_final'][str(h0)] + + +reject('premix placed in the zero-frame precondition (before the cold wrappers)', premix_to_precondition, WHY['premix_to_precondition']) +reject('one premix gate dropped (the compensation then reads a cold-ended helper)', lambda w: w['A'].pop(npre - 1), WHY['premix_dropped']) +reject('one lower-frame cleanup gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, i0), WHY['lower_dropped']) +reject('one FULL-remainder gate dropped', lambda w: drop_cleanup_gate(w, r0), WHY['remainder_dropped']) +reject('lower-frame gate coefficient changed', lambda w: w['cleanup'][i0].__setitem__(3, w['cleanup'][i0][3] * 2), WHY['coefficient']) +reject('lower-frame gate moved into the FULL remainder (touches a cold-ended helper at FULL)', lower_gate_into_full, WHY['into_full']) +reject('lower-frame gate frame below its registers\' frames', lambda w: next(x for x in w['early_cleanup'] if x[0] == i0).__setitem__(1, U0[:-1]), WHY['frame_below']) +reject('cold end at another dim-4 frame', other_frame, WHY['other_frame']) +# PROFILE-PIN control: without its helper_final entry the cold-ended helper is a valid FULL-ended helper; the word is +# rejected because its reported paid profile (which counts the low end) no longer matches the frame chains. +reject('profile pin: cold end dropped (valid FULL end, but the reported profile counts the low end)', lambda w: w['helper_final'].pop(str(h0)), WHY['profile_pin']) +reject('extra cold end on a premixed partner (the compensation reads it before its wrapper)', extra_cold_end, WHY['extra_end']) +reject('refactored-cleanup marker removed (literal-inverse rule applies)', lambda w: w.pop('refactored_cleanup'), WHY['marker']) +reject('remainder gate retargeted to a target register', lambda w: w['cleanup'][r0].__setitem__(1, v + 3), WHY['target']) +reject('non-dyadic remainder coefficient', lambda w: w['cleanup'][r0].__setitem__(4 if w['cleanup'][r0][0] == 'add' else 3, 3 * w['cleanup'][r0][4 if w['cleanup'][r0][0] == 'add' else 3]), WHY['dyadic']) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('5', w['report']['local_profile']['5'] - 1), WHY['profile_pin']) +ent = [int(h) for h in sys.argv[4].split(',')] if len(sys.argv) > 4 else [int(h) for h in meta.get('entering_low_frame_ended_helpers', [])] +for e0 in ent: # ENTERING LOW-FRAME ENDS (ColdSupply extension; every entering end; absent for words without them) + j0 = next((i for i, e in enumerate(word['A'][:npre]) if e0 in regs(e)), None) + print('entering end', e0, 'premix gate', j0, flush=True) + k0, Ue = next((i, f) for i, f in early if e0 in regs(word['cleanup'][i])) + def to_pre(w, j0=j0): w['precondition'].append(w['A'][j0]); w['A'].pop(j0) + def other_hp(w, e0=e0, Ue=Ue): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Ue) and sorted(f) != sorted(Ue)) + if j0 is not None: reject('entering end %d: premix gate dropped' % e0, lambda w, j0=j0: w['A'].pop(j0), WHY['e_premix_dropped']) + if j0 is not None: reject('entering end %d: premix gate at frame [] instead of its entrance E' % e0, lambda w, j0=j0: w['A'][j0].__setitem__(-1, []), WHY['nonmonotone']) + if j0 is not None: reject('entering end %d: premix gate moved into the zero-frame precondition' % e0, to_pre, WHY['entering_precondition']) + reject('entering end %d: lower-frame gate dropped (gate and its early_cleanup entry)' % e0, lambda w, k0=k0: drop_cleanup_gate(w, k0), WHY['lower_dropped']) + reject('entering end %d: profile pin: end dropped (valid FULL end, but the reported profile counts the low end)' % e0, lambda w, e0=e0: w['helper_final'].pop(str(e0)), WHY['profile_pin']) + reject('entering end %d: end at another hyperplane' % e0, other_hp, WHY['cone']) +# Pinned rejection reasons of the COLD-BEYOND mutants (substrings of hpe_audit_and_transport.py assertion messages). +MYWHY = dict(tw_precondition=COLDPRE, tw_dropped=COLDPRE, tw_coefficient=COLDPRE, tw_other_block=COLDPRE, + tw_entering='zero-frame compensation reads an entering helper', + ab_dropped=ENDPOINT, ab_coefficient=ENDPOINT, ab_early=ENDPOINT, ab_live=ENDPOINT, ab_centre=ENDPOINT, + ab_lower="'nonmonotone'", ab_higher="'nonmonotone'", + sh_dropped=ENDPOINT, sh_coefficient=ENDPOINT, rel_dropped=ENDPOINT, rel_coefficient=ENDPOINT, rel_live=ENDPOINT, + h8_other=CONE, h8_lower=ENDPOINT) +# COLD-BEYOND primitives (present only when the word carries them): frame-[] target writes in the premix (explicit +# post-wrapper compensation of an ended helper's dirt) and forward absorptions into dead registers. +nw = meta.get('premix_target_writes', 0) +if nw: + wi = [i for i in range(npre) if v <= word['A'][i][1] < 2*v] + assert len(wi) == nw + + def writes_to_precondition(w): # the target writes run before the cold wrappers (inside the zero-frame precondition) + g = [w['A'][i] for i in wi]; w['precondition'] = w['precondition'] + g + w['A'] = [e for i, e in enumerate(w['A']) if i not in set(wi)] + reject('premix target writes placed in the zero-frame precondition (before the cold wrappers)', writes_to_precondition, MYWHY['tw_precondition']) + reject('one premix target write dropped (compensation must read an ended helper)', lambda w: w['A'].pop(wi[0]), MYWHY['tw_dropped']) + reject('premix target write coefficient changed', lambda w: w['A'][wi[0]].__setitem__(3, w['A'][wi[0]][3] * 2), MYWHY['tw_coefficient']) + # (reading another register that carries the SAME weight of the ended helper's dirt is a valid variant, so the mutant reads + # the same factory slot of the next block, which carries none of it) + entering_regs = sorted(int(r) for r in word.get('start_extra', {})) + reject('premix target write reads an entering helper', lambda w: w['A'][wi[0]].__setitem__(2, entering_regs[0]), MYWHY['tw_entering']) + reject('premix target write reads a cold helper of another block', lambda w: w['A'][wi[0]].__setitem__(2, 2*v + (w['A'][wi[0]][2] - 2*v + 16) % 224), MYWHY['tw_other_block']) +ab = meta.get('forward_absorption_A_indices', []) +if any(len(word['helper_final'][str(h)]) == 8 for h in cold): + # with dim-8 cold ends, the centre-retargeted absorption first leaks an ended helper's dirt into the cut's targets + MYWHY['ab_centre'] = COLDPRE +if ab: + # the ColdBeyond U_b absorption (q += -1/2 g); ColdThird's extra absorptions have their own controls below + a0 = next(a for a in ab if word['A'][a][3] * 2 == -word['A'][a][4]); g0 = word['A'][a0] + + def absorption_moved_early(w): # absorbed before the absorbed register's last kernel write + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[2] == w['A'][i][1] and w['A'][i][-1] == g0[-1]) + w['A'].insert(j, e) + + def absorption_into_live(w): # q += a g moved right after g's previous frame-mate gate, while q is still live + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[1] in regs(w['A'][i])) + w['A'].insert(j, e) + reject('forward absorption dropped', lambda w: w['A'].pop(a0), MYWHY['ab_dropped']) + reject('forward absorption into a centre (a live register read by the cut)', lambda w: w['A'][a0].__setitem__(1, next(c for c in word['centers'] if c not in g0[1:3] and c not in cold)), MYWHY['ab_centre']) + reject('forward absorption coefficient changed', lambda w: w['A'][a0].__setitem__(3, w['A'][a0][3] * 2), MYWHY['ab_coefficient']) + reject('forward absorption placed before the absorbed register\'s last kernel write', absorption_moved_early, MYWHY['ab_early']) + reject('forward absorption placed while the absorbing register is still live', absorption_into_live, MYWHY['ab_live']) + reject('forward absorption at a lower frame than its registers', lambda w: w['A'][a0].__setitem__(-1, w['A'][a0][-1][:-1]), MYWHY['ab_lower']) + reject('forward absorption at a higher frame (FULL) than its registers', lambda w: w['A'][a0].__setitem__(-1, [256, 128, 64, 32, 16, 8, 4, 2, 1]), MYWHY['ab_higher']) +# COLD-THIRD primitives (present only when the word carries them): several absorptions after one input gate, dirt-release +# absorptions (a dead port takes a live helper's value so that a hyperplane unit's column has no dirt on it), and cold ends at +# a dim-8 frame with lifted partners. +hyper = [h for h in cold if len(word['helper_final'][str(h)]) == 8] +if hyper and ab: + sh = next(a for a, b in zip(ab, ab[1:]) if b == a + 1) # two absorptions sharing one input anchor + rel = next(a for a in ab if a - 1 not in ab and a + 1 not in ab and word['A'][a][2] in hyper and word['A'][a][3] * 2 != -word['A'][a][4]) + hh = hyper[0]; ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + reject('second absorption sharing an input anchor dropped', lambda w: w['A'].pop(sh + 1), MYWHY['sh_dropped']) + reject('shared-anchor absorption coefficient changed', lambda w: w['A'][sh + 1].__setitem__(3, w['A'][sh + 1][3] * 2), MYWHY['sh_coefficient']) + reject('dirt-release absorption dropped', lambda w: w['A'].pop(rel), MYWHY['rel_dropped']) + reject('dirt-release absorption coefficient changed', lambda w: w['A'][rel].__setitem__(3, w['A'][rel][3] * 2), MYWHY['rel_coefficient']) + jr = max(i for i in range(npre, rel) if word['A'][i][0] == 'add' and word['A'][i][2] == word['A'][rel][1]) + + def release_while_read(w): # the release runs before a kernel gate that still READS the port (port live) + e = w['A'].pop(rel); w['A'].insert(jr, e) + reject('dirt-release absorption moved before a kernel gate that still reads the port', release_while_read, MYWHY['rel_live']) +if hyper: + # dim-8 cold-end controls once PER DISTINCT dim-8 terminal frame (each family of dim-8 cold ends keeps its own controls) + fams = [] + for h in hyper: + if sorted(word['helper_final'][str(h)]) not in [sorted(word['helper_final'][str(x)]) for x in fams]: fams.append(h) + for hh in fams: + ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + Uh = word['helper_final'][str(hh)] + reject('dim-8 cold end %d (frame %s) at another dim-8 frame' % (hh, Uh), lambda w, hh=hh: w['helper_final'].__setitem__(str(hh), next(f for h, f in w['helper_final'].items() if len(f) == 8 and sorted(f) != sorted(w['helper_final'][str(hh)]))), MYWHY['h8_other']) + reject('dim-8 cold end %d (frame %s): one lower-frame gate dropped (gate and its early_cleanup entry)' % (hh, Uh), lambda w, ih=ih: drop_cleanup_gate(w, ih), MYWHY['h8_lower']) + reject('dim-8 cold end %d (frame %s): profile pin (end dropped)' % (hh, Uh), lambda w, hh=hh: w['helper_final'].pop(str(hh)), WHY['profile_pin']) +# FACTORED ACCUMULATOR (CarrierBypass; present only when the word carries one): a lower-frame tail gate a += x*g on two +# non-ended registers whose accumulator a is afterwards read by a dim-8 cold end's tail gate (h += y*a at its U). +ended_all = {int(h) for h in word['helper_final']} +tailg = [(i, word['cleanup'][i]) for i, _ in early] +accs = [] # EVERY factored accumulator gate (one per accumulator register a), each controlled on its own +for k, (i, e) in enumerate(tailg): + if e[0] == 'add' and e[1] not in ended_all and e[2] not in ended_all and len(next(f for j, f in early if j == i)) < 8: + if e[1] not in [word['cleanup'][j][1] for j in accs] and any(t[0] == 'add' and t[2] == e[1] and t[1] in hyper for _, t in tailg[k + 1:]): + accs.append(i) +for acc in accs: + a = word['cleanup'][acc][1] + reject('factored accumulator %d (gate %d) zeroed' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, 0), ENDPOINT) + reject('factored accumulator %d (gate %d) coefficient doubled' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, w['cleanup'][acc][3] * 2), ENDPOINT) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'COLD-END-CONTROLS.json').write_text(json.dumps(dict(status='PASS_COLD_END_RAW_WORD_CONTROLS', word=str(src), rejected=results), indent=1) + '\n') +print('PASS', len(results), 'cold-end raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers/reproduce_layers.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers/reproduce_layers.py new file mode 100644 index 0000000000..ed517ba1dd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers/reproduce_layers.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python3 +"""Rebuild the layered gauge44 word (pivot swaps + entering ends + factored dim-8 cold ends) and its native locals. + +Input: a fresh `construction/reproduce.py --until word` output directory (its regroup/ and cold44/ words are pinned +by reproduce.py itself). Steps, each checked exactly: + 1. pivot-swap: construction/layers/build_pivot_swap.py on regroup/FULL-WORD (six cost-neutral pivot-role swaps, + exact zero-response replay, unchanged profile and width multiset, 30 negative controls); + 2. hpe: the inherited jp8 hyperplane-end changes (HYPERPLANE-END-S6.json) applied with PR635's build_hpe.apply; + 3. cold44-exact: #645's build_gauge_cold44.py on the swapped HPE word; its 44 rank-four cold ends, premix and tail + must equal the unswapped cold44 construction's (the swaps touch no factory block); + 4. layers: PR635's unchanged build_cold_end.apply(HPE, COLD-LAYERS-RECIPE) - the cold44 recipe plus 8 entering ends + (560/561/572/573 at U24, 597/599/537/549 at U30) and 10 factored dim-8 cold ends; output sha pinned; + 5. layer-end-controls: raw-word negative controls on the layered word (PR635 cold_end_controls adapted by + LayerReviewer: lower->FULL pinned at 'cleanup on non-FULL end', entering ends from the recipe); 59 rejected; + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs (as in reproduce.py). +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +LAYERED_SHA = '0be48b1d8a6105059addf3f0d5e420c27ae3398b3a1186b6b11e9c4aa9e3f3d4' +LAYER_CONTROLS = 59 + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--word-dir', type=Path, required=True, help='construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + env.pop('PYTHONOPTIMIZE', None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + wd = a.word_dir.resolve() + run('pivot-swap', HERE / 'build_pivot_swap.py', '--input', wd / 'regroup/FULL-WORD.json.gz', + '--recipe', HERE / 'PIVOT-SWAP-S6.json', '--gk-dir', gk, '--out', out / 'swap') + hpe = load('upstream_hpe', up / 'code/build_hpe.py') + w = hpe.apply(read(out / 'swap/FULL-WORD.json.gz'), read(HERE / 'HYPERPLANE-END-S6.json')['changes']) + (out / 'hpe').mkdir(); (out / 'hpe/FULL-WORD.json.gz').write_bytes(gzip.compress(enc(w), mtime=0)) + run('cold44-exact', HERE.parent / 'build_gauge_cold44.py', '--input', out / 'hpe/FULL-WORD.json.gz', + '--out', out / 'cold44', '--hamming', wd / 'hamming', '--upstream-package', up) + new, old = read(out / 'cold44/RECIPE.json.gz'), read(wd / 'cold44/RECIPE.json.gz') + # The swaps touch no factory block: the 44 ends, their premix and their low tails are identical; only the FULL + # inverse (rebuilt from the whole word) differs. + for key in ('premix', 'early_cleanup', 'cold_ends'): + assert new[key] == old[key], ('swapped cold44 differs from the pinned cold44 construction', key) + tail = len(new['early_cleanup']); assert new['cleanup'][:tail] == old['cleanup'][:tail], 'low tails' + bce = load('upstream_cold', up / 'code/build_cold_end.py') + layered = bce.apply(w, read(HERE / 'COLD-LAYERS-RECIPE.json.gz')) + raw = enc(layered); assert hashlib.sha256(raw).hexdigest() == LAYERED_SHA, 'layered word' + rep = layered['report'] + assert rep['local_profile'] == {'1': 2542, '2': 414, '3': 434, '4': 154, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 52, '5': 48, '7': 42, '8': 116, '9': 234}, rep['width_inventory'] + (out / 'layers').mkdir(); word = out / 'layers/FULL-WORD.json.gz'; word.write_bytes(gzip.compress(raw, mtime=0)) + print('PASS layered scalar word', word, flush=True) + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', HERE / 'layer_end_controls.py', word, routing, out / 'controls') + ctl = json.loads((out / 'controls/COLD-END-CONTROLS.json').read_text()) + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == LAYER_CONTROLS, len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', routing, '--out', local) + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz new file mode 100644 index 0000000000..f9155e3079 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/HPE-RECIPE-NP.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/HPE-RECIPE-NP.json new file mode 100644 index 0000000000..2605d199ed --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/HPE-RECIPE-NP.json @@ -0,0 +1 @@ +{"changes": [{"helper": 448, "cleanup_index": 674, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 449, "cleanup_index": 673, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 450, "cleanup_index": 672, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 451, "cleanup_index": 671, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 452, "cleanup_index": 670, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 453, "cleanup_index": 669, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 454, "cleanup_index": 668, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 455, "cleanup_index": 667, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 456, "cleanup_index": 666, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 457, "cleanup_index": 665, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 458, "cleanup_index": 664, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 459, "cleanup_index": 663, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 460, "cleanup_index": 658, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 461, "cleanup_index": 657, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 470, "cleanup_index": 648, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 471, "cleanup_index": 647, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 472, "cleanup_index": 642, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 473, "cleanup_index": 641, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 482, "cleanup_index": 632, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 483, "cleanup_index": 631, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 496, "cleanup_index": 609, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 497, "cleanup_index": 608, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 520, "cleanup_index": 573, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 521, "cleanup_index": 572, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 544, "cleanup_index": 539, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 545, "cleanup_index": 538, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 568, "cleanup_index": 507, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 569, "cleanup_index": 506, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 580, "cleanup_index": 491, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 581, "cleanup_index": 490, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 590, "cleanup_index": 481, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 591, "cleanup_index": 480, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 592, "cleanup_index": 475, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 593, "cleanup_index": 474, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 602, "cleanup_index": 465, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 603, "cleanup_index": 464, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 604, "cleanup_index": 459, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 605, "cleanup_index": 458, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 606, "cleanup_index": 457, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 607, "cleanup_index": 456, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 609, "cleanup_index": 454, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 611, "cleanup_index": 452, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 612, "cleanup_index": 451, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 613, "cleanup_index": 450, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 614, "cleanup_index": 449, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 615, "cleanup_index": 448, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/PIVOT-SWAP-NP.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/PIVOT-SWAP-NP.json new file mode 100644 index 0000000000..4e0d846426 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/PIVOT-SWAP-NP.json @@ -0,0 +1,588 @@ +{ + "input_content_sha256": "864ff4a19987bcb27016367801a98ca50dae69eafe01d3614f8bae69f5713d6d", + "output_content_sha256": "beb3579fce83cb3b70f4e85761cbb3b8c91d711d4b9cf473074269b8447fc4e4", + "swaps": [ + { + "pivot": 494, + "new_pivot": 566, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 379, + "before": [ + "add", + 566, + 494, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 494, + 566, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 380, + "before": [ + "add", + 640, + 494, + 2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 640, + 566, + -2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 381, + "before": [ + "add", + 642, + 494, + -2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 642, + 566, + 2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 382, + "before": [ + "add", + 688, + 494, + 1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 688, + 566, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 383, + "before": [ + "add", + 690, + 494, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 690, + 566, + 1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 495, + "new_pivot": 567, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 516, + "before": [ + "add", + 123, + 495, + 1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 123, + 567, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 584, + "before": [ + "add", + 187, + 495, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 187, + 567, + 1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 686, + "before": [ + "add", + 567, + 495, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 495, + 567, + -1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 506, + "new_pivot": 578, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 176, + "before": [ + "add", + 652, + 506, + 2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 652, + 578, + -2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 178, + "before": [ + "add", + 652, + 506, + -2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 652, + 578, + 2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 278, + "before": [ + "add", + 700, + 506, + -2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 700, + 578, + 2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 280, + "before": [ + "add", + 700, + 506, + 2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 700, + 578, + -2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 702, + "before": [ + "add", + 578, + 506, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 506, + 578, + -1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 507, + "new_pivot": 579, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 93, + "before": [ + "add", + 211, + 507, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 211, + 579, + 1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 541, + "before": [ + "add", + 147, + 507, + 1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 147, + 579, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 704, + "before": [ + "add", + 579, + 507, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 507, + 579, + -1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 519, + "new_pivot": 543, + "entrance": [ + 30 + ], + "gates": [ + { + "part": "B", + "index": 507, + "before": [ + "add", + 115, + 519, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 115, + 543, + 1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 575, + "before": [ + "add", + 179, + 519, + 1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 179, + 543, + -1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 722, + "before": [ + "add", + 543, + 519, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 519, + 543, + -1, + 1, + [ + 30 + ] + ] + } + ] + }, + { + "pivot": 531, + "new_pivot": 555, + "entrance": [ + 30 + ], + "gates": [ + { + "part": "B", + "index": 550, + "before": [ + "add", + 155, + 531, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 155, + 555, + 1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 617, + "before": [ + "add", + 219, + 531, + 1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 219, + 555, + -1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 740, + "before": [ + "add", + 555, + 531, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 531, + 555, + -1, + 1, + [ + 30 + ] + ] + } + ] + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/reproduce_np.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/reproduce_np.py new file mode 100644 index 0000000000..79cb6fa912 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_np/reproduce_np.py @@ -0,0 +1,149 @@ +#!/usr/bin/env python3 +"""Rebuild the layered no-triangle word (NP) and its native locals. + +Input: a fresh `construction/notri/reproduce_notri.py --word-only` output directory. That driver pins the +no-triangle word (3e99ba77...) and writes its regroup/ and cold44/ words. Steps, each checked exactly: + 1. pivot-swap: ../layers/build_pivot_swap.py (PR641's constructor, signed, unchanged) on the no-triangle regroup word, with PIVOT-SWAP-NP.json: + the six pivot-role swaps of research/gauge44-layered, mapped through the 504-helper map (494->566, 495->567, + 506->578, 507->579, 519->543, 531->555). Exact zero-response replay, unchanged profile and width multiset, + 30 negative controls. + 2. hpe: PR635's build_hpe.candidates, greedy with disjoint registers. Must equal HPE-RECIPE-NP.json (46 changes, + the same helpers as the unswapped word); applied with build_hpe.apply. + 3. cold44-exact: notri/cold44x.py on the swapped HPE word, pairing ranks pinned [4]*14. Its 56 cold ends, premix + and low tails must equal the unswapped no-triangle construction's. + 4. layers: PR635's unchanged build_cold_end.apply(HPE, COLD-LAYERS-RECIPE-NP): cold44 plus the entering ends + 566/567/578/579 at U24 (s4) and 608/610/543/555 at U30 (x30), BlockCombine's b6 and the q4 dim-8 cold ends. + The output word sha and its profile and widths are pinned. + 5. layer-end-controls: ../layers/layer_end_controls.py (LayerReviewer's signed adaptation of PR635's + cold_end_controls.py, unchanged) on the layered word; exactly 59 rejections at pinned reasons. +../layers/reproduce_layers.py is research/gauge44-layered's driver for the 492-helper word, shipped unchanged as +signed; it is not used for this word. + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs, with pins. +Apache-2.0. Driver by ColdWitness after G44Stack's NP chain (NP/chain.py, seq.py). +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NOTRI = HERE.parent / 'notri' +LAYERS = HERE.parent / 'layers' # the signed research/gauge44-layered files, unchanged +REGROUP_SHA = '864ff4a1' # prefix; full value checked against PIVOT-SWAP-NP.json's input_content_sha256 +SWAP_SHA = 'beb3579f' +NP_SHA = 'a9de804f194eeb39f52a4c6e54c14d93e881bec4b632694249733ed410b58113' +LAYER_CONTROLS = 59 +CANONICAL_SHA = '1ae812a336178760071efe347e876e0102b5b71f799d957db15c5f3004c19d7a' +PROGRAM_SHA = {'forward': 'a3882a428bdafab888072211d4ed8d34572746873d77c6ef900495853cc3fa11', + 'backward': 'f67a3dc20c27fb39295b8030e951e9779109ef1537f6f8de9d08510b9ad6792a'} +CLIFFORD_SHA = '890b60fc4ae183c773c51405e0f4ef6a945dc2aae55ba2480f134602e8296cda' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def dump(p, v): + p.parent.mkdir(parents=True, exist_ok=True); p.write_bytes(gzip.compress(enc(v), mtime=0)) + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--notri-dir', type=Path, required=True, help='construction/notri/reproduce_notri.py --word-only output') + ap.add_argument('--hamming', type=Path, required=True, help='hamming/ of the construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + nd = a.notri_dir.resolve() + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + # the input must be the pinned no-triangle construction + nr = load('notri_driver', NOTRI / 'reproduce_notri.py') + assert hashlib.sha256(enc(read(nd / 'cold44/FULL-WORD.json.gz'))).hexdigest() == nr.NOTRI_SHA, 'notri word' + # 1. pivot swaps on the regroup word + rg = hashlib.sha256(enc(read(nd / 'regroup/FULL-WORD.json.gz'))).hexdigest() + assert rg.startswith(REGROUP_SHA) and rg == read(HERE / 'PIVOT-SWAP-NP.json')['input_content_sha256'], ('regroup word', rg) + run('pivot-swap', LAYERS / 'build_pivot_swap.py', '--input', nd / 'regroup/FULL-WORD.json.gz', + '--recipe', HERE / 'PIVOT-SWAP-NP.json', '--gk-dir', gk, '--out', out / 'swap') + w = read(out / 'swap/FULL-WORD.json.gz') + sw = hashlib.sha256(enc(w)).hexdigest(); assert sw.startswith(SWAP_SHA) and sw == read(HERE / 'PIVOT-SWAP-NP.json')['output_content_sha256'], ('swap word', sw) + # 2. HPE (greedy, must equal the pinned recipe) + h = load('upstream_hpe', up / 'code/build_hpe.py') + used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + assert ch == read(HERE / 'HPE-RECIPE-NP.json')['changes'], 'HPE recipe' + w = h.apply(w, ch); dump(out / 'hpe/FULL-WORD.json.gz', w) + # 3. cold44 on the swapped word: same ends, premix and tails as the unswapped no-triangle construction + hm = set(read(nd / 'raw/HELPER-MAP.json')['map'].values()) + env['EXTRAH'] = json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)) + env['PAIRING_RANKS'] = json.dumps([4] * 14) + run('cold44-exact', NOTRI / 'cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', a.hamming.resolve(), '--upstream-package', up) + for k in ('EXTRAH', 'PAIRING_RANKS'): env.pop(k) + new, old = read(out / 'cold44/RECIPE.json.gz'), read(nd / 'cold44/RECIPE.json.gz') + for key in ('premix', 'early_cleanup', 'cold_ends'): + assert new[key] == old[key], ('swapped cold44 differs from the pinned no-triangle construction', key) + tail = len(new['early_cleanup']); assert new['cleanup'][:tail] == old['cleanup'][:tail], 'low tails' + # 4. layers + bce = load('upstream_cold', up / 'code/build_cold_end.py') + layered = bce.apply(w, read(HERE / 'COLD-LAYERS-RECIPE-NP.json.gz')) + raw = enc(layered); assert hashlib.sha256(raw).hexdigest() == NP_SHA, ('layered word', hashlib.sha256(raw).hexdigest()) + rep = layered['report'] + assert rep['local_profile'] == {'1': 2534, '2': 346, '3': 458, '4': 178, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 64, '5': 48, '7': 54, '8': 116, '9': 222}, rep['width_inventory'] + (out / 'layers').mkdir(); word = out / 'layers/FULL-WORD.json.gz'; word.write_bytes(gzip.compress(raw, mtime=0)) + print('PASS layered no-triangle word', NP_SHA, flush=True) + # 5. layer-end controls + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', LAYERS / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = json.loads((out / 'controls/COLD-END-CONTROLS.json').read_text()) + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == LAYER_CONTROLS, len(ctl['rejected']) + # 6. native locals + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == CANONICAL_SHA, 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in PROGRAM_SHA.items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == CLIFFORD_SHA, 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz new file mode 100644 index 0000000000..a408c95816 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/P6N-SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/P6N-SPEC.json new file mode 100644 index 0000000000..43c3ec265c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/P6N-SPEC.json @@ -0,0 +1 @@ +{"ends":[{"U":[256,128,66,34,16,8,6,1],"labels":[512,513]},{"U":[256,128,72,40,24,4,2,1],"labels":[311,510]},{"U":[256,128,66,34,18,10,6,1],"labels":[522,327]}]} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/layer_end_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/layer_end_controls.py new file mode 100644 index 0000000000..dd321fe255 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/layer_end_controls.py @@ -0,0 +1,199 @@ +"""layer_end_controls.py LAYERED-WORD.json.gz ROUTING OUTDIR (env PR635_CODE): adapted PR635 cold_end_controls.py (LayerReviewer): raw-word negative controls for the cold low-frame ends and the +refactored cleanup accepted by hpe_audit_and_transport.py. Every mutation MUST be rejected (AssertionError); the +unmutated word MUST pass. Apache-2.0. DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code.""" +import copy, gzip, json, shutil, sys, tempfile +from pathlib import Path +import os +sys.path.insert(0, os.environ['PR635_CODE']) # PR635's unchanged hpe_audit_and_transport.py +import hpe_audit_and_transport as atc + +src, routing, outdir = Path(sys.argv[1]), Path(sys.argv[2]), Path(sys.argv[3]) +word = json.load(gzip.open(src)) +v, R = word['report']['v'], word['report']['R']; n = 2*v + R +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +meta = word['refactored_cleanup'] +cold = [int(h) for h in meta['cold_low_frame_ended_helpers']] +npre = meta['premix_gates']; nlow = meta['lower_frame_gates'] +early = word['early_cleanup']; eidx = {i for i, _ in early} +rest = [i for i in range(len(word['cleanup'])) if i not in eidx] + + +def trial(w): + """None if the transport audit accepts w, else the AssertionError message.""" + tmp = Path(tempfile.mkdtemp()) + p = tmp/'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w).encode(), mtime=0)) + try: + atc.run(p, routing, tmp/'out') + return None + except AssertionError as e: + return repr(e.args[0]) if e.args else 'AssertionError' + finally: + shutil.rmtree(tmp, ignore_errors=True) + + +# Pinned rejection reasons: each mutant must fail at this assertion of hpe_audit_and_transport.py (message substring). +ENDPOINT, COLDPRE, CONE = "'arbitrary-dirt endpoint'", 'touches a cold hyperplane-ended helper', 'hpe cone pre-check (row / column)' +WHY = dict(premix_to_precondition=COLDPRE, premix_dropped=COLDPRE, e_premix_dropped=ENDPOINT, lower_dropped=ENDPOINT, + remainder_dropped=ENDPOINT, coefficient=ENDPOINT, into_full='cleanup on non-FULL end', dyadic=ENDPOINT, frame_below="'nonmonotone'", + nonmonotone="'nonmonotone'", other_frame=CONE, cone=CONE, extra_end=COLDPRE, marker='cleanup is not the literal reversed inverse', + target='refactored cleanup touches a target', profile_pin='paid local profile differs from the reported local_profile', + entering_precondition='zero-frame precondition/compensation touches an entering helper') +assert trial(word) is None, 'unmutated cold-end word must pass' +results = [] + + +def reject(name, mut, why): + """the mutation must be rejected, and for the pinned reason (a substring of the audit's assertion message).""" + w = copy.deepcopy(word); mut(w) + msg = trial(w) + assert msg is not None, 'cold-end mutation accepted: ' + name + assert why in msg, 'cold-end mutation %r rejected for the wrong reason: %s' % (name, msg[:300]) + results.append(name); print('rejected', name, '|', why, flush=True) + + +h0 = cold[0] +i0, U0 = next((i, f) for i, f in early if h0 in regs(word['cleanup'][i])) +r0 = rest[len(rest)//2] + + +def premix_to_precondition(w): # premix before the wrappers; compensation then reads the cold ends + w['precondition'] = w['precondition'] + w['A'][:npre]; w['A'] = w['A'][npre:] + + +def lower_gate_into_full(w): # a lower-frame gate on a cold-ended helper executed in the FULL remainder instead + w['early_cleanup'] = [x for x in w['early_cleanup'] if x[0] != i0] + + +def drop_cleanup_gate(w, i): # remove the gate AND its early_cleanup entry: a structurally valid word missing one gate + w['cleanup'].pop(i) + w['early_cleanup'] = [[j - (j > i), f] for j, f in w['early_cleanup'] if j != i] + + +def other_frame(w): # a different frame of the same dimension as the cold end (another cold helper's) + f = next(w['helper_final'][str(h)] for h in cold if w['helper_final'][str(h)] != w['helper_final'][str(h0)]) + w['helper_final'][str(h0)] = f + + +def extra_cold_end(w): # declare a premixed partner of h0 cold-ended at h0's frame: fails the row/column cone + p = next(r for e in w['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + w['helper_final'][str(p)] = w['helper_final'][str(h0)] + + +reject('premix placed in the zero-frame precondition (before the cold wrappers)', premix_to_precondition, WHY['premix_to_precondition']) +reject('one premix gate dropped (the compensation then reads a cold-ended helper)', lambda w: w['A'].pop(npre - 1), WHY['premix_dropped']) +reject('one lower-frame cleanup gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, i0), WHY['lower_dropped']) +reject('one FULL-remainder gate dropped', lambda w: drop_cleanup_gate(w, r0), WHY['remainder_dropped']) +reject('lower-frame gate coefficient changed', lambda w: w['cleanup'][i0].__setitem__(3, w['cleanup'][i0][3] * 2), WHY['coefficient']) +reject('lower-frame gate moved into the FULL remainder (touches a cold-ended helper at FULL)', lower_gate_into_full, WHY['into_full']) +reject('lower-frame gate frame below its registers\' frames', lambda w: next(x for x in w['early_cleanup'] if x[0] == i0).__setitem__(1, U0[:-1]), WHY['frame_below']) +reject('cold end at another dim-4 frame', other_frame, WHY['other_frame']) +# PROFILE-PIN control: without its helper_final entry the cold-ended helper is a valid FULL-ended helper; the word is +# rejected because its reported paid profile (which counts the low end) no longer matches the frame chains. +reject('profile pin: cold end dropped (valid FULL end, but the reported profile counts the low end)', lambda w: w['helper_final'].pop(str(h0)), WHY['profile_pin']) +reject('extra cold end on a premixed partner (the compensation reads it before its wrapper)', extra_cold_end, WHY['extra_end']) +reject('refactored-cleanup marker removed (literal-inverse rule applies)', lambda w: w.pop('refactored_cleanup'), WHY['marker']) +reject('remainder gate retargeted to a target register', lambda w: w['cleanup'][r0].__setitem__(1, v + 3), WHY['target']) +reject('non-dyadic remainder coefficient', lambda w: w['cleanup'][r0].__setitem__(4 if w['cleanup'][r0][0] == 'add' else 3, 3 * w['cleanup'][r0][4 if w['cleanup'][r0][0] == 'add' else 3]), WHY['dyadic']) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('5', w['report']['local_profile']['5'] - 1), WHY['profile_pin']) +ent = [int(h) for h in sys.argv[4].split(',')] if len(sys.argv) > 4 else [int(h) for h in meta.get('entering_low_frame_ended_helpers', [])] +for e0 in ent: # ENTERING LOW-FRAME ENDS (ColdSupply extension; every entering end; absent for words without them) + j0 = next((i for i, e in enumerate(word['A'][:npre]) if e0 in regs(e)), None) + print('entering end', e0, 'premix gate', j0, flush=True) + k0, Ue = next((i, f) for i, f in early if e0 in regs(word['cleanup'][i])) + def to_pre(w, j0=j0): w['precondition'].append(w['A'][j0]); w['A'].pop(j0) + def other_hp(w, e0=e0, Ue=Ue): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Ue) and sorted(f) != sorted(Ue)) + if j0 is not None: reject('entering end %d: premix gate dropped' % e0, lambda w, j0=j0: w['A'].pop(j0), WHY['e_premix_dropped']) + if j0 is not None: reject('entering end %d: premix gate at frame [] instead of its entrance E' % e0, lambda w, j0=j0: w['A'][j0].__setitem__(-1, []), WHY['nonmonotone']) + if j0 is not None: reject('entering end %d: premix gate moved into the zero-frame precondition' % e0, to_pre, WHY['entering_precondition']) + reject('entering end %d: lower-frame gate dropped (gate and its early_cleanup entry)' % e0, lambda w, k0=k0: drop_cleanup_gate(w, k0), WHY['lower_dropped']) + reject('entering end %d: profile pin: end dropped (valid FULL end, but the reported profile counts the low end)' % e0, lambda w, e0=e0: w['helper_final'].pop(str(e0)), WHY['profile_pin']) + reject('entering end %d: end at another hyperplane' % e0, other_hp, WHY['cone']) +# Pinned rejection reasons of the COLD-BEYOND mutants (substrings of hpe_audit_and_transport.py assertion messages). +MYWHY = dict(tw_precondition=COLDPRE, tw_dropped=COLDPRE, tw_coefficient=COLDPRE, tw_other_block=COLDPRE, + tw_entering='zero-frame compensation reads an entering helper', + ab_dropped=ENDPOINT, ab_coefficient=ENDPOINT, ab_early=ENDPOINT, ab_live=ENDPOINT, ab_centre=ENDPOINT, + ab_lower="'nonmonotone'", ab_higher="'nonmonotone'", + sh_dropped=ENDPOINT, sh_coefficient=ENDPOINT, rel_dropped=ENDPOINT, rel_coefficient=ENDPOINT, rel_live=ENDPOINT, + h8_other=CONE, h8_lower=ENDPOINT) +# COLD-BEYOND primitives (present only when the word carries them): frame-[] target writes in the premix (explicit +# post-wrapper compensation of an ended helper's dirt) and forward absorptions into dead registers. +nw = meta.get('premix_target_writes', 0) +if nw: + wi = [i for i in range(npre) if v <= word['A'][i][1] < 2*v] + assert len(wi) == nw + + def writes_to_precondition(w): # the target writes run before the cold wrappers (inside the zero-frame precondition) + g = [w['A'][i] for i in wi]; w['precondition'] = w['precondition'] + g + w['A'] = [e for i, e in enumerate(w['A']) if i not in set(wi)] + reject('premix target writes placed in the zero-frame precondition (before the cold wrappers)', writes_to_precondition, MYWHY['tw_precondition']) + reject('one premix target write dropped (compensation must read an ended helper)', lambda w: w['A'].pop(wi[0]), MYWHY['tw_dropped']) + reject('premix target write coefficient changed', lambda w: w['A'][wi[0]].__setitem__(3, w['A'][wi[0]][3] * 2), MYWHY['tw_coefficient']) + # (reading another register that carries the SAME weight of the ended helper's dirt is a valid variant, so the mutant reads + # the same factory slot of the next block, which carries none of it) + entering_regs = sorted(int(r) for r in word.get('start_extra', {})) + reject('premix target write reads an entering helper', lambda w: w['A'][wi[0]].__setitem__(2, entering_regs[0]), MYWHY['tw_entering']) + reject('premix target write reads a cold helper of another block', lambda w: w['A'][wi[0]].__setitem__(2, 2*v + (w['A'][wi[0]][2] - 2*v + 16) % 224), MYWHY['tw_other_block']) +ab = meta.get('forward_absorption_A_indices', []) +if any(len(word['helper_final'][str(h)]) == 8 for h in cold): + # with dim-8 cold ends, the centre-retargeted absorption first leaks an ended helper's dirt into the cut's targets + MYWHY['ab_centre'] = COLDPRE +if ab: + # the ColdBeyond U_b absorption (q += -1/2 g); ColdThird's extra absorptions have their own controls below + a0 = next(a for a in ab if word['A'][a][3] * 2 == -word['A'][a][4]); g0 = word['A'][a0] + + def absorption_moved_early(w): # absorbed before the absorbed register's last kernel write + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[2] == w['A'][i][1] and w['A'][i][-1] == g0[-1]) + w['A'].insert(j, e) + + def absorption_into_live(w): # q += a g moved right after g's previous frame-mate gate, while q is still live + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[1] in regs(w['A'][i])) + w['A'].insert(j, e) + reject('forward absorption dropped', lambda w: w['A'].pop(a0), MYWHY['ab_dropped']) + reject('forward absorption into a centre (a live register read by the cut)', lambda w: w['A'][a0].__setitem__(1, next(c for c in word['centers'] if c not in g0[1:3] and c not in cold)), MYWHY['ab_centre']) + reject('forward absorption coefficient changed', lambda w: w['A'][a0].__setitem__(3, w['A'][a0][3] * 2), MYWHY['ab_coefficient']) + reject('forward absorption placed before the absorbed register\'s last kernel write', absorption_moved_early, MYWHY['ab_early']) + reject('forward absorption placed while the absorbing register is still live', absorption_into_live, MYWHY['ab_live']) + reject('forward absorption at a lower frame than its registers', lambda w: w['A'][a0].__setitem__(-1, w['A'][a0][-1][:-1]), MYWHY['ab_lower']) + reject('forward absorption at a higher frame (FULL) than its registers', lambda w: w['A'][a0].__setitem__(-1, [256, 128, 64, 32, 16, 8, 4, 2, 1]), MYWHY['ab_higher']) +# COLD-THIRD primitives (present only when the word carries them): several absorptions after one input gate, dirt-release +# absorptions (a dead port takes a live helper's value so that a hyperplane unit's column has no dirt on it), and cold ends at +# a dim-8 frame with lifted partners. +hyper = [h for h in cold if len(word['helper_final'][str(h)]) == 8] +if hyper and ab: + sh = next(a for a, b in zip(ab, ab[1:]) if b == a + 1) # two absorptions sharing one input anchor + rel = next(a for a in ab if a - 1 not in ab and a + 1 not in ab and word['A'][a][2] in hyper and word['A'][a][3] * 2 != -word['A'][a][4]) + hh = hyper[0]; ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + reject('second absorption sharing an input anchor dropped', lambda w: w['A'].pop(sh + 1), MYWHY['sh_dropped']) + reject('shared-anchor absorption coefficient changed', lambda w: w['A'][sh + 1].__setitem__(3, w['A'][sh + 1][3] * 2), MYWHY['sh_coefficient']) + reject('dirt-release absorption dropped', lambda w: w['A'].pop(rel), MYWHY['rel_dropped']) + reject('dirt-release absorption coefficient changed', lambda w: w['A'][rel].__setitem__(3, w['A'][rel][3] * 2), MYWHY['rel_coefficient']) + jr = max(i for i in range(npre, rel) if word['A'][i][0] == 'add' and word['A'][i][2] == word['A'][rel][1]) + + def release_while_read(w): # the release runs before a kernel gate that still READS the port (port live) + e = w['A'].pop(rel); w['A'].insert(jr, e) + reject('dirt-release absorption moved before a kernel gate that still reads the port', release_while_read, MYWHY['rel_live']) +if hyper: + # dim-8 cold-end controls for EVERY dim-8 cold end of the word (read from the word's helper_final and the recipe meta's + # cold_low_frame_ended_helpers), not one representative per terminal frame + for hh in hyper: + ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + Uh = word['helper_final'][str(hh)] + reject('dim-8 cold end %d (frame %s) at another dim-8 frame' % (hh, Uh), lambda w, hh=hh: w['helper_final'].__setitem__(str(hh), next(f for h, f in w['helper_final'].items() if len(f) == 8 and sorted(f) != sorted(w['helper_final'][str(hh)]))), MYWHY['h8_other']) + reject('dim-8 cold end %d (frame %s): one lower-frame gate dropped (gate and its early_cleanup entry)' % (hh, Uh), lambda w, ih=ih: drop_cleanup_gate(w, ih), MYWHY['h8_lower']) + reject('dim-8 cold end %d (frame %s): profile pin (end dropped)' % (hh, Uh), lambda w, hh=hh: w['helper_final'].pop(str(hh)), WHY['profile_pin']) +# FACTORED ACCUMULATOR (CarrierBypass; present only when the word carries one): a lower-frame tail gate a += x*g on two +# non-ended registers whose accumulator a is afterwards read by a dim-8 cold end's tail gate (h += y*a at its U). +ended_all = {int(h) for h in word['helper_final']} +tailg = [(i, word['cleanup'][i]) for i, _ in early] +accs = [] # EVERY factored accumulator gate (one per accumulator register a), each controlled on its own +for k, (i, e) in enumerate(tailg): + if e[0] == 'add' and e[1] not in ended_all and e[2] not in ended_all and len(next(f for j, f in early if j == i)) < 8: + if e[1] not in [word['cleanup'][j][1] for j in accs] and any(t[0] == 'add' and t[2] == e[1] and t[1] in hyper for _, t in tailg[k + 1:]): + accs.append(i) +for acc in accs: + a = word['cleanup'][acc][1] + reject('factored accumulator %d (gate %d) zeroed' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, 0), ENDPOINT) + reject('factored accumulator %d (gate %d) coefficient doubled' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, w['cleanup'][acc][3] * 2), ENDPOINT) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'COLD-END-CONTROLS.json').write_text(json.dumps(dict(status='PASS_COLD_END_RAW_WORD_CONTROLS', word=str(src), rejected=results), indent=1) + '\n') +print('PASS', len(results), 'cold-end raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/reproduce_p6n.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/reproduce_p6n.py new file mode 100644 index 0000000000..f9eb173bc1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/layers_p6n/reproduce_p6n.py @@ -0,0 +1,78 @@ +#!/usr/bin/env python3 +"""Rebuild the p6n word (NoTriReopen): the layered no-triangle word with p123's lane rebuilt as three factored dim-8 pairs. + +Input: a fresh `construction/layers_np/reproduce_np.py` output directory. Its swapped HPE word (hpe/) and its +layered word a9de804f... are pinned there. Steps, each checked exactly: + 1. layers: PR635's unchanged build_cold_end.apply(swapped HPE word, COLD-LAYERS-RECIPE-P6N.json.gz). The recipe is + NP's cold-layer recipe (cold44, s4, x30, b6, q4) plus the six cold ends of P6N-SPEC.json, built by NoTriReopen + with JP8Ends' stackJ/stackE (the CarrierBypass premix-only factored construction): [512,513] at + U(256,128,66,34,16,8,6,1), [311,510] at U(256,128,72,40,24,4,2,1), [522,327] at U(256,128,66,34,18,10,6,1). + The output word sha (34b683fa...), profile and widths are pinned. + 2. layer-end-controls: layer_end_controls.py (Q6Reviewer-signed variant fc58c569..., which controls every dim-8 + cold end individually) on the p6n word; exactly 95 rejections at pinned reasons. +The promotion step (construction/promo/reproduce_promo.py --base p6n) builds the final word and its native locals. +Apache-2.0. Driver by ColdWitness after NoTriReopen's runspec.py. +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NP_SHA = 'a9de804f194eeb39f52a4c6e54c14d93e881bec4b632694249733ed410b58113' +P6N_SHA = '34b683fa08f0' # prefix; full value is the recipe's output_content_sha256 (asserted equal below) +LAYER_CONTROLS = 95 + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--np-dir', type=Path, required=True, help='construction/layers_np/reproduce_np.py output') + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + parent = src / 'vendor/pr558/vendor/pr552' + npd = a.np_dir.resolve() + assert hashlib.sha256(enc(read(npd / 'layers/FULL-WORD.json.gz'))).hexdigest() == NP_SHA, 'np-dir must hold the pinned NP word' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src), PR635_CODE=str(up / 'code')) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + bce = load('upstream_cold', up / 'code/build_cold_end.py') + rec = read(HERE / 'COLD-LAYERS-RECIPE-P6N.json.gz') + w = bce.apply(read(npd / 'hpe/FULL-WORD.json.gz'), rec) + raw = enc(w); got = hashlib.sha256(raw).hexdigest() + assert got == rec['output_content_sha256'] and got.startswith(P6N_SHA), ('p6n word', got) + rep = w['report'] + assert rep['local_profile'] == {'1': 2540, '2': 358, '3': 446, '4': 178, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 64, '5': 48, '7': 54, '8': 122, '9': 216}, rep['width_inventory'] + (out / 'p6n').mkdir(); word = out / 'p6n/FULL-WORD.json.gz'; word.write_bytes(gzip.compress(raw, mtime=0)) + print('PASS p6n word', got, flush=True) + t = time.monotonic() + with (out / 'layer-end-controls.log').open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(HERE / 'layer_end_controls.py'), str(word), + str(parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz'), str(out / 'controls')], + env=env, stdout=f, stderr=subprocess.STDOUT) + (out / 'STEPS.json').write_text(json.dumps([dict(step='layer-end-controls', exit_code=rc, seconds=round(time.monotonic() - t, 3))], indent=2) + '\n') + assert rc == 0, 'layer-end-controls' + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == LAYER_CONTROLS, len(ctl['rejected']) + print('PASS layer-end-controls', LAYER_CONTROLS, flush=True) + print('DONE', word, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/CHAIN-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/CHAIN-PINS-k8.json new file mode 100644 index 0000000000..afd0467911 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/CHAIN-PINS-k8.json @@ -0,0 +1,89 @@ +{ + "np_profile": { + "1": 2422, + "2": 408, + "3": 494, + "4": 136, + "5": 56, + "8": 8 + }, + "p6n_profile": { + "1": 2428, + "2": 420, + "3": 482, + "4": 136, + "5": 56, + "8": 8 + }, + "lec-p6n_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-p6n": 95, + "lec-p6n_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "promo_controls": 11, + "lec-promo_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-promo": 95, + "lec-promo_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "jx_controls": [ + "C0_identity", + "C1_741_only", + "N3_plain_join_moved_reads" + ], + "lec-jx_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-jx": 95, + "lec-jx_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "hybrid_controls": [ + "C0_identity", + "donation_after", + "donation_after@226", + "donation_after@228", + "donation_after@230", + "donation_after@231", + "donation_after@232", + "donation_after@62", + "drop_preread", + "drop_preread@226", + "drop_preread@228", + "drop_preread@230", + "drop_preread@231", + "drop_preread@232", + "drop_preread@62", + "drop_restore", + "drop_restore@226", + "drop_restore@228", + "drop_restore@230", + "drop_restore@231", + "drop_restore@232", + "drop_restore@62", + "recipe", + "restore_full", + "restore_full@226", + "restore_full@228", + "restore_full@230", + "restore_full@231", + "restore_full@232", + "restore_full@62" + ], + "lec-hyb_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-hyb": 95, + "lec-hyb_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "frame_build_controls": 3, + "lec-frames_pins_sha256": "b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914", + "lec-frames": 95, + "lec-frames_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)", + "other_hp:554": "tail frame dim 5; no other helper_final frame of that dim" + }, + "canonical_sha256": "d1bf3c6f250a61be7421ce566668092f362c465274fb472d4bb01fc80cba9b23", + "program_sha256": { + "forward": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c", + "backward": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + "clifford_recipes_sha256": "e3bfdfa2c044f14c00a8706950c8ae838ceeedd9ca78a83bffefe7886219516a" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/CODED-CELLS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/CODED-CELLS-k8.json new file mode 100644 index 0000000000..cd23561e0b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/CODED-CELLS-k8.json @@ -0,0 +1,2826 @@ +[ + { + "cell": "01+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 1 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 0 + ], + "x2": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 1 + ], + "x3": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 0 + ], + "x4": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 65 + ], + "y1": [ + "target", + 64 + ], + "y2": [ + "target", + 33 + ], + "y3": [ + "target", + 32 + ], + "y4": [ + "target", + 25 + ], + "y5": [ + "target", + 24 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "-1/2" + ], + [ + "y0", + "x1", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "-1/2" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "23+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 1 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 0 + ], + "x4": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 71 + ], + "y1": [ + "target", + 67 + ], + "y2": [ + "target", + 97 + ], + "y3": [ + "target", + 96 + ], + "y4": [ + "target", + 89 + ], + "y5": [ + "target", + 88 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "45+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 23 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 3 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 39 + ], + "y1": [ + "target", + 35 + ], + "y2": [ + "target", + 103 + ], + "y3": [ + "target", + 99 + ], + "y4": [ + "target", + 57 + ], + "y5": [ + "target", + 56 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "-1/2" + ], + [ + "x4", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "0", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "-1/2", + "0" + ] + ] + }, + { + "cell": "67+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 23 + ], + "x3": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 3 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 23 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 3 + ], + "y0": [ + "target", + 31 + ], + "y1": [ + "target", + 27 + ], + "y2": [ + "target", + 95 + ], + "y3": [ + "target", + 91 + ], + "y4": [ + "target", + 63 + ], + "y5": [ + "target", + 59 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "1", + "1" + ], + [ + "1", + "0", + "1", + "1", + "1", + "1" + ], + [ + "1", + "1", + "0", + "1", + "1", + "1" + ], + [ + "1", + "1", + "1", + "0", + "1", + "1" + ], + [ + "1", + "1", + "1", + "1", + "0", + "1" + ], + [ + "1", + "1", + "1", + "1", + "1", + "0" + ] + ] + }, + { + "cell": "67-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 2 + ], + "x3": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 21 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 2 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 21 + ], + "y0": [ + "target", + 26 + ], + "y1": [ + "target", + 30 + ], + "y2": [ + "target", + 90 + ], + "y3": [ + "target", + 94 + ], + "y4": [ + "target", + 58 + ], + "y5": [ + "target", + 62 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "1", + "1" + ], + [ + "1", + "0", + "1", + "1", + "1", + "1" + ], + [ + "1", + "1", + "0", + "1", + "1", + "1" + ], + [ + "1", + "1", + "1", + "0", + "1", + "1" + ], + [ + "1", + "1", + "1", + "1", + "0", + "1" + ], + [ + "1", + "1", + "1", + "1", + "1", + "0" + ] + ] + }, + { + "cell": "01-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 19 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 17 + ], + "x2": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 19 + ], + "x3": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 17 + ], + "x4": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 69 + ], + "y1": [ + "target", + 68 + ], + "y2": [ + "target", + 37 + ], + "y3": [ + "target", + 36 + ], + "y4": [ + "target", + 29 + ], + "y5": [ + "target", + 28 + ] + }, + "scaled": [ + [ + "y0", + "x1", + "-1/2" + ], + [ + "y1", + "x0", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x1", + "x0", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y0", + "x3", + "-1/2" + ], + [ + "y2", + "x1", + "-1/2" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y1", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y0", + "1" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ] + ], + "unit": [ + [ + "y0", + "x1", + 1 + ], + [ + "y1", + "x0", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x1", + "x0", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y0", + "x3", + 1 + ], + [ + "y2", + "x1", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y1", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y0", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x0", + 1 + ], + [ + "y4", + "x1", + 1 + ] + ], + "coefficients": [ + [ + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "23-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 19 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 17 + ], + "x4": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 66 + ], + "y1": [ + "target", + 70 + ], + "y2": [ + "target", + 101 + ], + "y3": [ + "target", + 100 + ], + "y4": [ + "target", + 93 + ], + "y5": [ + "target", + 92 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y1", + "x3", + "-1/2" + ], + [ + "y2", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y1", + "x3", + 1 + ], + [ + "y2", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "45-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 2 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 21 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 34 + ], + "y1": [ + "target", + 38 + ], + "y2": [ + "target", + 98 + ], + "y3": [ + "target", + 102 + ], + "y4": [ + "target", + 61 + ], + "y5": [ + "target", + 60 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x4", + "-1/2" + ], + [ + "y3", + "x5", + "-1/2" + ], + [ + "y5", + "x3", + "1" + ], + [ + "y4", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x4", + "-1/2" + ], + [ + "x5", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x4", + 1 + ], + [ + "y3", + "x5", + 1 + ], + [ + "y5", + "x3", + 1 + ], + [ + "y4", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x4", + 1 + ], + [ + "x5", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "0", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "-1/2", + "0" + ] + ] + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz new file mode 100644 index 0000000000..6850696b19 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz new file mode 100644 index 0000000000..dc0275695d Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/FRAME-RECIPE-LV-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/FRAME-RECIPE-LV-k8.json new file mode 100644 index 0000000000..982bd357da --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/FRAME-RECIPE-LV-k8.json @@ -0,0 +1,2987 @@ +{ + "input_content_sha256": "c836d8922fc9e50529e006488ca2ce4a542a93150de0e0e8f7d3955ad991968f", + "gate_frames": [ + [ + "B", + 539, + [ + 336, + 208, + 32, + 8, + 6 + ], + [ + 336, + 208, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 540, + [ + 400, + 80, + 32, + 8, + 6 + ], + [ + 400, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 541, + [ + 256, + 128, + 64, + 16, + 6 + ], + [ + 256, + 128, + 64, + 16, + 6, + 1 + ] + ], + [ + "B", + 542, + [ + 256, + 128, + 64, + 16, + 8, + 6 + ], + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 545, + [ + 256, + 144, + 80, + 32, + 8, + 6 + ], + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 547, + [ + 272, + 144, + 64, + 32, + 8, + 6 + ], + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 557, + [ + 280, + 137, + 73, + 6 + ], + [ + 257, + 137, + 73, + 25, + 6 + ] + ], + [ + "B", + 559, + [ + 265, + 137, + 81, + 6 + ], + [ + 265, + 137, + 72, + 25, + 6 + ] + ], + [ + "B", + 560, + [ + 265, + 137, + 81, + 32, + 6 + ], + [ + 265, + 137, + 72, + 32, + 25, + 6 + ] + ], + [ + "B", + 561, + [ + 401, + 64, + 32, + 9, + 6 + ], + [ + 385, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 562, + [ + 265, + 137, + 73, + 17, + 6 + ], + [ + 257, + 129, + 65, + 17, + 8, + 6 + ] + ], + [ + "B", + 563, + [ + 256, + 128, + 64, + 17, + 9, + 6 + ], + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 564, + [ + 265, + 137, + 73, + 32, + 24, + 6 + ], + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + [ + "B", + 566, + [ + 273, + 128, + 64, + 32, + 9, + 6 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 567, + [ + 265, + 137, + 73, + 32, + 17, + 6 + ], + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + [ + "B", + 568, + [ + 256, + 128, + 81, + 32, + 9, + 6 + ], + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 580, + [ + 265, + 193, + 40, + 6 + ], + [ + 265, + 144, + 81, + 40, + 6 + ] + ], + [ + "B", + 581, + [ + 265, + 193, + 40, + 17, + 6 + ], + [ + 265, + 129, + 64, + 40, + 17, + 6 + ] + ], + [ + "B", + 582, + [ + 289, + 176, + 96, + 9, + 6 + ], + [ + 289, + 160, + 96, + 16, + 9, + 6 + ] + ], + [ + "B", + 583, + [ + 265, + 152, + 80, + 33, + 6 + ], + [ + 257, + 144, + 80, + 33, + 8, + 6 + ] + ], + [ + "B", + 584, + [ + 256, + 145, + 80, + 33, + 9, + 6 + ], + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 585, + [ + 265, + 128, + 65, + 40, + 17, + 6 + ], + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 586, + [ + 256, + 145, + 65, + 33, + 9, + 6 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 587, + [ + 273, + 128, + 80, + 48, + 9, + 6 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 589, + [ + 256, + 193, + 33, + 17, + 9, + 6 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 602, + [ + 256, + 144, + 73, + 57, + 6 + ], + [ + 256, + 129, + 73, + 40, + 17, + 6 + ] + ], + [ + "B", + 603, + [ + 297, + 169, + 104, + 16, + 6 + ], + [ + 288, + 160, + 97, + 16, + 9, + 6 + ] + ], + [ + "B", + 604, + [ + 272, + 152, + 73, + 33, + 6 + ], + [ + 272, + 145, + 64, + 33, + 9, + 6 + ] + ], + [ + "B", + 605, + [ + 272, + 144, + 65, + 33, + 8, + 6 + ], + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 606, + [ + 256, + 128, + 73, + 41, + 16, + 6 + ], + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 607, + [ + 264, + 136, + 73, + 33, + 16, + 6 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 609, + [ + 264, + 128, + 73, + 33, + 24, + 6 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 610, + [ + 256, + 136, + 73, + 33, + 24, + 6 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 620, + [ + 368, + 161, + 8, + 6 + ], + [ + 273, + 161, + 97, + 8, + 6 + ] + ], + [ + "B", + 623, + [ + 256, + 193, + 33, + 16, + 6 + ], + [ + 256, + 129, + 64, + 33, + 16, + 6 + ] + ], + [ + "B", + 624, + [ + 289, + 161, + 112, + 8, + 6 + ], + [ + 289, + 161, + 97, + 17, + 8, + 6 + ] + ], + [ + "B", + 625, + [ + 321, + 144, + 49, + 8, + 6 + ], + [ + 273, + 144, + 80, + 49, + 8, + 6 + ] + ], + [ + "B", + 626, + [ + 272, + 144, + 81, + 49, + 8, + 6 + ], + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + [ + "B", + 627, + [ + 256, + 128, + 65, + 33, + 16, + 6 + ], + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + [ + "B", + 629, + [ + 256, + 128, + 81, + 33, + 8, + 6 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 630, + [ + 321, + 128, + 33, + 16, + 8, + 6 + ], + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 631, + [ + 256, + 193, + 33, + 16, + 8, + 6 + ], + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 641, + [ + 256, + 216, + 40, + 6 + ], + [ + 256, + 216, + 40, + 6, + 1 + ] + ], + [ + "B", + 644, + [ + 272, + 144, + 80, + 56, + 6 + ], + [ + 272, + 144, + 80, + 56, + 6, + 1 + ] + ], + [ + "B", + 645, + [ + 392, + 64, + 40, + 16, + 6 + ], + [ + 392, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 646, + [ + 256, + 128, + 88, + 40, + 6 + ], + [ + 256, + 128, + 88, + 40, + 6, + 1 + ] + ], + [ + "B", + 648, + [ + 264, + 136, + 72, + 32, + 24, + 6 + ], + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + [ + "B", + 649, + [ + 264, + 128, + 64, + 40, + 16, + 6 + ], + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 651, + [ + 256, + 128, + 72, + 40, + 16, + 6 + ], + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 665, + [ + 320, + 192, + 41, + 17, + 6 + ], + [ + 320, + 192, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 666, + [ + 401, + 81, + 49, + 9, + 6 + ], + [ + 385, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 667, + [ + 280, + 152, + 64, + 49, + 6 + ], + [ + 257, + 129, + 64, + 40, + 25, + 6 + ] + ], + [ + "B", + 668, + [ + 256, + 128, + 64, + 41, + 24, + 6 + ], + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + [ + "B", + 669, + [ + 320, + 192, + 32, + 17, + 9, + 6 + ], + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 670, + [ + 256, + 145, + 81, + 49, + 9, + 6 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 672, + [ + 273, + 145, + 64, + 49, + 9, + 6 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 673, + [ + 256, + 128, + 64, + 41, + 17, + 6 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 686, + [ + 280, + 137, + 80, + 33, + 6 + ], + [ + 272, + 129, + 80, + 33, + 8, + 6 + ] + ], + [ + "B", + 687, + [ + 304, + 161, + 96, + 9, + 6 + ], + [ + 288, + 161, + 96, + 16, + 9, + 6 + ] + ], + [ + "B", + 688, + [ + 321, + 137, + 40, + 17, + 6 + ], + [ + 257, + 137, + 64, + 40, + 17, + 6 + ] + ], + [ + "B", + 689, + [ + 256, + 137, + 65, + 40, + 17, + 6 + ], + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 690, + [ + 273, + 128, + 80, + 33, + 9, + 6 + ], + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 691, + [ + 256, + 145, + 80, + 48, + 9, + 6 + ], + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 692, + [ + 273, + 128, + 65, + 33, + 9, + 6 + ], + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 693, + [ + 321, + 128, + 33, + 17, + 9, + 6 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 1232, + [ + 256, + 128, + 64, + 34, + 18, + 10, + 6, + 1 + ], + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + [ + "B", + 1235, + [ + 256, + 128, + 64, + 34, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 1238, + [ + 258, + 130, + 66, + 32, + 18, + 10, + 6, + 1 + ], + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + [ + "B", + 1241, + [ + 258, + 130, + 66, + 32, + 16, + 8, + 6, + 1 + ], + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 1244, + [ + 256, + 130, + 64, + 34, + 16, + 10, + 6, + 1 + ], + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 1247, + [ + 256, + 130, + 66, + 32, + 18, + 8, + 6, + 1 + ], + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 1250, + [ + 258, + 128, + 64, + 34, + 16, + 10, + 6, + 1 + ], + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 1253, + [ + 258, + 128, + 66, + 32, + 18, + 8, + 6, + 1 + ], + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 1256, + [ + 258, + 130, + 66, + 34, + 18, + 8, + 6, + 1 + ], + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + [ + "B", + 1259, + [ + 258, + 130, + 64, + 32, + 18, + 8, + 6, + 1 + ], + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 1262, + [ + 256, + 128, + 66, + 34, + 16, + 10, + 6, + 1 + ], + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 1265, + [ + 256, + 128, + 64, + 32, + 16, + 10, + 6, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + [ + "B", + 1268, + [ + 256, + 128, + 66, + 34, + 16, + 8, + 4, + 1 + ], + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ] + ], + [ + "B", + 1271, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ] + ], + [ + "B", + 1274, + [ + 260, + 132, + 68, + 36, + 20, + 12, + 2, + 1 + ], + [ + 260, + 132, + 68, + 36, + 24, + 2, + 1 + ] + ], + [ + "B", + 1277, + [ + 260, + 132, + 64, + 32, + 16, + 8, + 2, + 1 + ], + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ], + [ + "B", + 1280, + [ + 258, + 128, + 64, + 34, + 18, + 10, + 4, + 1 + ], + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ] + ], + [ + "B", + 1283, + [ + 260, + 128, + 68, + 32, + 16, + 8, + 2, + 1 + ], + [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ] + ], + [ + "B", + 1286, + [ + 256, + 130, + 64, + 34, + 16, + 8, + 4, + 1 + ], + [ + 256, + 130, + 64, + 34, + 24, + 4, + 1 + ] + ], + [ + "B", + 1289, + [ + 256, + 132, + 68, + 32, + 20, + 12, + 2, + 1 + ], + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ], + [ + "B", + 1292, + [ + 258, + 130, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ] + ], + [ + "B", + 1295, + [ + 258, + 130, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ] + ], + [ + "B", + 1298, + [ + 256, + 128, + 64, + 34, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 64, + 38, + 18, + 12, + 1 + ] + ], + [ + "B", + 1301, + [ + 256, + 128, + 66, + 32, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ] + ], + [ + "B", + 1304, + [ + 256, + 132, + 68, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ] + ], + [ + "B", + 1307, + [ + 256, + 130, + 64, + 32, + 16, + 10, + 4, + 1 + ], + [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ] + ], + [ + "B", + 1310, + [ + 258, + 128, + 66, + 34, + 16, + 10, + 4, + 1 + ], + [ + 262, + 128, + 70, + 38, + 20, + 10, + 1 + ] + ], + [ + "B", + 1313, + [ + 260, + 128, + 64, + 32, + 20, + 8, + 2, + 1 + ], + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ] + ], + [ + "B", + 1316, + [ + 256, + 128, + 65, + 33, + 16, + 9, + 5, + 2 + ], + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ] + ], + [ + "B", + 1319, + [ + 256, + 128, + 64, + 32, + 17, + 8, + 4, + 3 + ], + [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ] + ], + [ + "B", + 1322, + [ + 257, + 129, + 65, + 33, + 17, + 8, + 5, + 2 + ], + [ + 257, + 129, + 65, + 33, + 19, + 10, + 7 + ] + ], + [ + "B", + 1325, + [ + 257, + 129, + 64, + 32, + 16, + 9, + 4, + 3 + ], + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ] + ], + [ + "B", + 1328, + [ + 257, + 128, + 64, + 33, + 17, + 8, + 4, + 3 + ], + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ] + ], + [ + "B", + 1331, + [ + 257, + 128, + 65, + 32, + 16, + 9, + 4, + 3 + ], + [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ] + ], + [ + "B", + 1334, + [ + 256, + 129, + 64, + 33, + 16, + 9, + 5, + 2 + ], + [ + 256, + 129, + 64, + 33, + 18, + 11, + 7 + ] + ], + [ + "B", + 1337, + [ + 256, + 129, + 65, + 32, + 17, + 8, + 5, + 2 + ], + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ] + ], + [ + "B", + 1340, + [ + 257, + 129, + 64, + 33, + 16, + 8, + 4, + 3 + ], + [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ] + ], + [ + "B", + 1343, + [ + 257, + 129, + 65, + 32, + 17, + 9, + 5, + 2 + ], + [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ] + ], + [ + "B", + 1346, + [ + 256, + 128, + 64, + 33, + 17, + 9, + 5, + 2 + ], + [ + 256, + 128, + 64, + 33, + 24, + 5, + 2 + ] + ], + [ + "B", + 1349, + [ + 256, + 128, + 65, + 32, + 16, + 8, + 4, + 3 + ], + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ] + ], + [ + "B", + 1352, + [ + 256, + 129, + 65, + 33, + 17, + 9, + 4, + 3 + ], + [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ] + ], + [ + "B", + 1355, + [ + 256, + 129, + 64, + 32, + 16, + 8, + 4, + 3 + ], + [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ] + ], + [ + "B", + 1358, + [ + 257, + 128, + 65, + 33, + 16, + 8, + 4, + 3 + ], + [ + 257, + 128, + 65, + 33, + 24, + 4, + 3 + ] + ], + [ + "B", + 1361, + [ + 257, + 128, + 64, + 32, + 17, + 9, + 4, + 3 + ], + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + ], + [ + "B", + 1364, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 5, + 3 + ], + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 1367, + [ + 257, + 128, + 64, + 32, + 16, + 9, + 5, + 3 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 1370, + [ + 256, + 129, + 65, + 33, + 16, + 9, + 5, + 3 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 1373, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 5, + 3 + ], + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 1376, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 1379, + [ + 256, + 128, + 65, + 32, + 16, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 1382, + [ + 257, + 129, + 64, + 33, + 16, + 9, + 5, + 3 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 1385, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 5, + 3 + ], + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + [ + "B", + 1388, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 5, + 3 + ], + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 1391, + [ + 256, + 129, + 64, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 1394, + [ + 257, + 128, + 64, + 33, + 17, + 9, + 5, + 3 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 1397, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 5, + 3 + ], + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 1398, + [ + 256, + 128, + 64, + 34, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 35, + 24, + 6 + ] + ], + [ + "B", + 1399, + [ + 256, + 128, + 64, + 34, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 35, + 24, + 6 + ] + ], + [ + "B", + 1402, + [ + 256, + 128, + 64, + 24, + 4, + 2, + 1 + ], + [ + 257, + 129, + 65, + 24, + 4, + 2 + ] + ], + [ + "B", + 1403, + [ + 256, + 128, + 64, + 24, + 4, + 2, + 1 + ], + [ + 257, + 129, + 65, + 24, + 4, + 2 + ] + ], + [ + "B", + 1406, + [ + 256, + 128, + 64, + 42, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 42, + 24, + 6 + ] + ], + [ + "B", + 1407, + [ + 256, + 128, + 64, + 42, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 42, + 24, + 6 + ] + ], + [ + "B", + 1410, + [ + 256, + 128, + 64, + 18, + 10, + 6, + 1 + ], + [ + 257, + 129, + 65, + 19, + 11, + 6 + ] + ], + [ + "B", + 1411, + [ + 256, + 128, + 64, + 18, + 10, + 6, + 1 + ], + [ + 257, + 129, + 65, + 19, + 11, + 6 + ] + ], + [ + "B", + 1814, + [ + 256, + 129, + 64, + 33, + 24, + 5, + 3 + ], + [ + 259, + 129, + 67, + 33, + 24, + 6 + ] + ], + [ + "B", + 1815, + [ + 256, + 129, + 64, + 33, + 24, + 5, + 3 + ], + [ + 259, + 129, + 67, + 33, + 24, + 6 + ] + ], + [ + "B", + 1818, + [ + 256, + 129, + 64, + 33, + 24, + 4, + 2 + ], + [ + 320, + 129, + 33, + 24, + 4, + 2 + ] + ], + [ + "B", + 1819, + [ + 256, + 129, + 64, + 33, + 24, + 4, + 2 + ], + [ + 320, + 129, + 33, + 24, + 4, + 2 + ] + ], + [ + "B", + 1822, + [ + 256, + 129, + 64, + 33, + 18, + 10, + 6 + ], + [ + 266, + 129, + 74, + 33, + 24, + 6 + ] + ], + [ + "B", + 1823, + [ + 256, + 129, + 64, + 33, + 18, + 10, + 6 + ], + [ + 266, + 129, + 74, + 33, + 24, + 6 + ] + ], + [ + "B", + 1826, + [ + 256, + 129, + 64, + 33, + 19, + 11, + 6 + ], + [ + 320, + 129, + 33, + 19, + 11, + 6 + ] + ], + [ + "B", + 1827, + [ + 256, + 129, + 64, + 33, + 19, + 11, + 6 + ], + [ + 320, + 129, + 33, + 19, + 11, + 6 + ] + ], + [ + "T", + 76, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + [ + 386, + 67, + 33, + 24, + 6 + ] + ], + [ + "T", + 97, + [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ], + [ + 386, + 74, + 40, + 26, + 6, + 1 + ] + ] + ], + "expected": { + "output_content_sha256": "db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83", + "local_profile": { + "1": 2412, + "2": 418, + "3": 418, + "4": 170, + "5": 68, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/HPE-RECIPE-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/HPE-RECIPE-k8.json new file mode 100644 index 0000000000..94d36f2279 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/HPE-RECIPE-k8.json @@ -0,0 +1 @@ +{"changes": [{"helper": 448, "cleanup_index": 630, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 449, "cleanup_index": 629, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 450, "cleanup_index": 628, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 451, "cleanup_index": 627, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 452, "cleanup_index": 626, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 453, "cleanup_index": 625, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 454, "cleanup_index": 624, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 455, "cleanup_index": 623, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 484, "cleanup_index": 585, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 485, "cleanup_index": 584, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 508, "cleanup_index": 549, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 509, "cleanup_index": 548, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 532, "cleanup_index": 515, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 533, "cleanup_index": 514, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 556, "cleanup_index": 483, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 557, "cleanup_index": 482, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 584, "cleanup_index": 455, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 585, "cleanup_index": 454, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 587, "cleanup_index": 452, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 589, "cleanup_index": 450, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 590, "cleanup_index": 449, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 591, "cleanup_index": 448, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEAVER-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEAVER-PINS-k8.json new file mode 100644 index 0000000000..b22678629c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEAVER-PINS-k8.json @@ -0,0 +1,45 @@ +{ + "raw_sha256": "85c0e64718a9ceafe094e7152ea27ec9d7f804e514b5efaab085a94b7ef1841f", + "regroup_count": 12, + "regroup_sha256": "00aeefe0c778ff64125628d7c869ae1aa27db60911f0289a2d4283af5cff85d2", + "hpe_recipe_sha256": "f04e4d152a9169726d0afabd7c6e0fd2e17388707dd6d10c7b51593e360ab38a", + "pairing_ranks": [ + 0, + 0, + 0, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 0, + 0, + 0 + ], + "cold44_sha256": "58e14a02f2c1d4dcfeb363ebd5fa2e713064b5c724d90f6721419a8cfa67729b", + "R": 480, + "local_profile": { + "1": 2394, + "2": 398, + "3": 508, + "4": 142, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 40, + "5": 48, + "7": 22, + "8": 114, + "9": 256 + }, + "canonical_sha256": "854c4cfa867bb75b63412044235c3df5af00b3470c3b310aff4df839a1d71c6e", + "program_sha256": { + "forward": "f0e42fdb881155e7712220e1469452f04343b98c5b414ddd1271d80c9fa2a6f1", + "backward": "95df892bdee54f5700780c989edc9bf7618efaa56058af63a946aff63f5dbeb4" + }, + "clifford_recipes_sha256": "aab63b0a825fdf0ca504038a78b7371310eaef2748fbf80af74f7e4e47abce76" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEC-REASON-PINS-STACK-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEC-REASON-PINS-STACK-k8.json new file mode 100644 index 0000000000..820ee8d63a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEC-REASON-PINS-STACK-k8.json @@ -0,0 +1,5 @@ +{ + "not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEC-REASON-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEC-REASON-PINS-k8.json new file mode 100644 index 0000000000..5218a5f096 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/LEC-REASON-PINS-k8.json @@ -0,0 +1,6 @@ +{ + "not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)", + "other_hp:554": "tail frame dim 5; no other helper_final frame of that dim" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json new file mode 100644 index 0000000000..7a8edeb1e4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json @@ -0,0 +1 @@ +{"input_content_sha256": "00aeefe0c778ff64125628d7c869ae1aa27db60911f0289a2d4283af5cff85d2", "output_content_sha256": "377ab10c2bf6173498c8af15f8654060331ec9ee232e58cc75956dc015b23685", "swaps": [{"pivot": 482, "new_pivot": 554, "entrance": [24], "gates": [{"part": "B", "index": 331, "before": ["add", 554, 482, -1, 1, [24]], "after": ["add", 482, 554, -1, 1, [24]]}, {"part": "B", "index": 332, "before": ["add", 616, 482, 2, 1, [24]], "after": ["add", 616, 554, -2, 1, [24]]}, {"part": "B", "index": 333, "before": ["add", 618, 482, -2, 1, [24]], "after": ["add", 618, 554, 2, 1, [24]]}, {"part": "B", "index": 334, "before": ["add", 664, 482, 1, 1, [24]], "after": ["add", 664, 554, -1, 1, [24]]}, {"part": "B", "index": 335, "before": ["add", 666, 482, -1, 1, [24]], "after": ["add", 666, 554, 1, 1, [24]]}]}, {"pivot": 483, "new_pivot": 555, "entrance": [24], "gates": [{"part": "B", "index": 468, "before": ["add", 123, 483, 1, 1, [24]], "after": ["add", 123, 555, -1, 1, [24]]}, {"part": "B", "index": 504, "before": ["add", 187, 483, -1, 1, [24]], "after": ["add", 187, 555, 1, 1, [24]]}, {"part": "B", "index": 734, "before": ["add", 555, 483, -1, 1, [24]], "after": ["add", 483, 555, -1, 1, [24]]}]}, {"pivot": 494, "new_pivot": 566, "entrance": [24], "gates": [{"part": "B", "index": 128, "before": ["add", 628, 494, 2, 1, [24]], "after": ["add", 628, 566, -2, 1, [24]]}, {"part": "B", "index": 130, "before": ["add", 628, 494, -2, 1, [24]], "after": ["add", 628, 566, 2, 1, [24]]}, {"part": "B", "index": 230, "before": ["add", 676, 494, -2, 1, [24]], "after": ["add", 676, 566, 2, 1, [24]]}, {"part": "B", "index": 232, "before": ["add", 676, 494, 2, 1, [24]], "after": ["add", 676, 566, -2, 1, [24]]}, {"part": "B", "index": 750, "before": ["add", 566, 494, -1, 1, [24]], "after": ["add", 494, 566, -1, 1, [24]]}]}, {"pivot": 495, "new_pivot": 567, "entrance": [24], "gates": [{"part": "B", "index": 49, "before": ["add", 211, 495, -1, 1, [24]], "after": ["add", 211, 567, 1, 1, [24]]}, {"part": "B", "index": 477, "before": ["add", 147, 495, 1, 1, [24]], "after": ["add", 147, 567, -1, 1, [24]]}, {"part": "B", "index": 752, "before": ["add", 567, 495, -1, 1, [24]], "after": ["add", 495, 567, -1, 1, [24]]}]}, {"pivot": 507, "new_pivot": 531, "entrance": [30], "gates": [{"part": "B", "index": 459, "before": ["add", 115, 507, -1, 1, [30]], "after": ["add", 115, 531, 1, 1, [30]]}, {"part": "B", "index": 495, "before": ["add", 179, 507, 1, 1, [30]], "after": ["add", 179, 531, -1, 1, [30]]}, {"part": "B", "index": 770, "before": ["add", 531, 507, -1, 1, [30]], "after": ["add", 507, 531, -1, 1, [30]]}]}, {"pivot": 519, "new_pivot": 543, "entrance": [30], "gates": [{"part": "B", "index": 486, "before": ["add", 155, 519, -1, 1, [30]], "after": ["add", 155, 543, 1, 1, [30]]}, {"part": "B", "index": 521, "before": ["add", 219, 519, 1, 1, [30]], "after": ["add", 219, 543, -1, 1, [30]]}, {"part": "B", "index": 788, "before": ["add", 543, 519, -1, 1, [30]], "after": ["add", 519, 543, -1, 1, [30]]}]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/PROMO-RECIPE-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/PROMO-RECIPE-k8.json new file mode 100644 index 0000000000..1952580fc8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/PROMO-RECIPE-k8.json @@ -0,0 +1,971 @@ +{ + "input_content_sha256": "25c406149bd3fddf8548ea03521983720d88b11096ce1c1f01e6d480ce50ce18", + "groups": [ + 627, + 629, + 630, + 631, + 635, + 637, + 638, + 639, + 651, + 653, + 654, + 655, + 659, + 661, + 662, + 663 + ], + "entrances": { + "603": [ + 408, + 80, + 40, + 6, + 1 + ], + "605": [ + 408, + 80, + 40, + 6, + 1 + ], + "606": [ + 408, + 80, + 40, + 6, + 1 + ], + "607": [ + 408, + 80, + 40, + 6, + 1 + ], + "611": [ + 272, + 144, + 96, + 6, + 1 + ], + "613": [ + 272, + 144, + 96, + 6, + 1 + ], + "614": [ + 272, + 144, + 96, + 6, + 1 + ], + "615": [ + 272, + 144, + 96, + 6, + 1 + ], + "627": [ + 390, + 68, + 34, + 24, + 1 + ], + "629": [ + 390, + 68, + 34, + 24, + 1 + ], + "630": [ + 390, + 68, + 34, + 24, + 1 + ], + "631": [ + 390, + 68, + 34, + 24, + 1 + ], + "635": [ + 298, + 170, + 102, + 30, + 1 + ], + "637": [ + 298, + 170, + 102, + 30, + 1 + ], + "638": [ + 298, + 170, + 102, + 30, + 1 + ], + "639": [ + 298, + 170, + 102, + 30, + 1 + ] + }, + "gate_frames": [ + [ + "B", + 372, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 373, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 374, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 375, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 376, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 377, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 378, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 379, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 380, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 381, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 382, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 383, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 384, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 385, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 386, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 387, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 388, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 389, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 390, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 391, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 392, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 393, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 394, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 395, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 396, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 397, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 398, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 399, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 400, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 401, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 402, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 403, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 404, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 405, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 406, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 407, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 408, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 409, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 410, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 411, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 412, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 413, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 414, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 415, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 416, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 417, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 418, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 419, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ] + ], + "expected": { + "output_content_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/RECIPE-U8-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/RECIPE-U8-k8.json new file mode 100644 index 0000000000..98ea6e3d23 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/RECIPE-U8-k8.json @@ -0,0 +1,933 @@ +{ + "base_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "B_delete": [ + 1, + 3, + 5, + 7, + 9, + 11, + 878, + 880, + 886, + 888, + 894, + 896, + 902, + 904, + 910, + 912, + 918, + 920, + 1167, + 1169, + 1175, + 1177, + 1183, + 1185, + 1191, + 1193, + 1199, + 1201, + 1207, + 1209 + ], + "B_insert": [ + [ + 1, + [ + "add", + 125, + 448, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 3, + [ + "add", + 121, + 449, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 5, + [ + "add", + 181, + 450, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 7, + [ + "add", + 177, + 451, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 9, + [ + "add", + 117, + 452, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 11, + [ + "add", + 113, + 453, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 724, + [ + "add", + 472, + 231, + 1, + 1, + [ + 386, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 725, + [ + "add", + 473, + 226, + 1, + 1, + [ + 388, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 741, + [ + "add", + 484, + 448, + 1, + 1, + [ + 260, + 132, + 70, + 38, + 24, + 1 + ] + ] + ], + [ + 742, + [ + "add", + 485, + 449, + 1, + 1, + [ + 260, + 132, + 64, + 32, + 24, + 1 + ] + ] + ], + [ + 759, + [ + "add", + 496, + 230, + 1, + 1, + [ + 390, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 760, + [ + "add", + 497, + 228, + 1, + 1, + [ + 390, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 777, + [ + "add", + 508, + 450, + 1, + 1, + [ + 268, + 140, + 64, + 38, + 30, + 1 + ] + ] + ], + [ + 778, + [ + "add", + 509, + 451, + 1, + 1, + [ + 266, + 138, + 70, + 32, + 30, + 1 + ] + ] + ], + [ + 795, + [ + "add", + 520, + 232, + -2, + 1, + [ + 385, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 796, + [ + "add", + 521, + 62, + -2, + 1, + [ + 385, + 65, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 811, + [ + "add", + 532, + 452, + -2, + 1, + [ + 267, + 139, + 65, + 33, + 25, + 7 + ] + ] + ], + [ + 812, + [ + "add", + 533, + 453, + -2, + 1, + [ + 267, + 139, + 64, + 32, + 25, + 7 + ] + ] + ], + [ + 1167, + [ + "add", + 125, + 448, + -1, + 2, + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1169, + [ + "add", + 121, + 449, + -1, + 2, + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1175, + [ + "add", + 149, + 231, + -1, + 2, + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1177, + [ + "add", + 145, + 226, + -1, + 2, + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1183, + [ + "add", + 181, + 450, + -1, + 2, + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1185, + [ + "add", + 177, + 451, + -1, + 2, + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1191, + [ + "add", + 221, + 230, + -1, + 2, + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1193, + [ + "add", + 217, + 228, + -1, + 2, + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1199, + [ + "add", + 117, + 452, + 1, + 1, + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1201, + [ + "add", + 113, + 453, + 1, + 1, + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 1207, + [ + "add", + 157, + 232, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1209, + [ + "add", + 153, + 62, + 1, + 1, + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ] + ] + ] + ], + "B_frames": {}, + "tail_insert": [ + [ + 5, + [ + "add", + 484, + 448, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 3, + [ + "add", + 508, + 450, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 1, + [ + "add", + 532, + 452, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 4, + [ + "add", + 485, + 449, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 2, + [ + "add", + 509, + 451, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 0, + [ + "add", + 533, + 453, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ] + ], + "cleanup_prepend": [ + [ + "add", + 472, + 231, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 496, + 230, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 520, + 232, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 473, + 226, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 497, + 228, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 521, + 62, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ] + ], + "local_profile": { + "1": 2460, + "2": 388, + "3": 478, + "4": 128, + "5": 68, + "8": 8 + }, + "expect_sha256": "c836d8922fc9e50529e006488ca2ce4a542a93150de0e0e8f7d3955ad991968f", + "priced": { + "dk_ideal_stored_frames": 2.38661054604997e-07 + }, + "variants": [ + { + "X": 231, + "E": 448, + "dsides": [ + 878, + 886 + ], + "donors": [ + 448, + 231 + ], + "hold": [ + 484, + 472 + ], + "kept": { + "1167": 448, + "1175": 231 + }, + "when": "mid" + }, + { + "X": 230, + "E": 450, + "dsides": [ + 894, + 902 + ], + "donors": [ + 450, + 230 + ], + "hold": [ + 508, + 496 + ], + "kept": { + "1183": 450, + "1191": 230 + }, + "when": "mid" + }, + { + "X": 232, + "E": 452, + "dsides": [ + 910, + 918 + ], + "donors": [ + 452, + 232 + ], + "hold": [ + 532, + 520 + ], + "kept": { + "1199": 452, + "1207": 232 + }, + "when": "mid" + }, + { + "X": 226, + "E": 449, + "dsides": [ + 880, + 888 + ], + "donors": [ + 449, + 226 + ], + "hold": [ + 485, + 473 + ], + "kept": { + "1169": 449, + "1177": 226 + }, + "when": "mid" + }, + { + "X": 228, + "E": 451, + "dsides": [ + 896, + 904 + ], + "donors": [ + 451, + 228 + ], + "hold": [ + 509, + 497 + ], + "kept": { + "1185": 451, + "1193": 228 + }, + "when": "mid" + }, + { + "X": 62, + "E": 453, + "dsides": [ + 912, + 920 + ], + "donors": [ + 453, + 62 + ], + "hold": [ + 533, + 521 + ], + "kept": { + "1201": 453, + "1209": 62 + }, + "when": "mid" + } + ], + "source": "NewBArch RECIPE-U8 (X4 1e1d99ba), instances [62, 226, 228, 230, 231, 232] ported by LeaverSAT/hyb.py; X=236 dropped (its tail uses dropped copy helper 449)" +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/RECIPE-X4-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/RECIPE-X4-k8.json new file mode 100644 index 0000000000..3483acd5a5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/RECIPE-X4-k8.json @@ -0,0 +1,75 @@ +{ + "input_content_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "input_word": "leaver k8 sw4-stage word", + "frames_741_source": { + "pr": 741, + "commit": "e516b146", + "recipe": "scratch/WasteAttack/FRAME-RECIPE-741.json", + "frames_only_output_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "note": "leaver: surviving #741 frames only" + }, + "frames_741": [], + "raises": [], + "edits": { + "replace": [], + "delete": [], + "insert": [] + }, + "expected": { + "output_content_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + }, + "controls": { + "C0_identity": { + "mutation": { + "kind": "empty" + }, + "expected_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + }, + "C1_741_only": { + "mutation": { + "kind": "only_edits_of", + "h": [], + "raises": [] + }, + "expected_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + }, + "N3_plain_join_moved_reads": { + "mutation": { + "kind": "drop_raises" + }, + "expected_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/REGROUP-LEAVER-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/REGROUP-LEAVER-k8.json new file mode 100644 index 0000000000..d482da23a8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/REGROUP-LEAVER-k8.json @@ -0,0 +1,725 @@ +{ + "source": "PR635 k492-jp8-frame_regroup + PR646 k480-jp8-frame_regroup, changes whose before gate occurs in the leaver port3 word", + "changes": [ + { + "section": "B", + "index": 600, + "before": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6 + ] + ], + "after": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 601, + "before": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 602, + "before": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6 + ] + ], + "after": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 631, + "before": [ + "add", + 205, + 409, + -1, + 2, + [ + 273, + 128, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 205, + 409, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 663, + "before": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 137, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 685, + "before": [ + "add", + 194, + 429, + 1, + 1, + [ + 272, + 144, + 65, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 194, + 429, + 1, + 1, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 552, + "before": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6 + ] + ], + "after": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 553, + "before": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 554, + "before": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6 + ] + ], + "after": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 582, + "before": [ + "add", + 129, + 56, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 6 + ] + ], + "after": [ + "add", + 129, + 56, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 583, + "before": [ + "add", + 137, + 24, + -1, + 2, + [ + 272, + 128, + 80, + 32, + 8, + 6 + ] + ], + "after": [ + "add", + 137, + 24, + -1, + 2, + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 584, + "before": [ + "add", + 169, + 16, + -1, + 2, + [ + 320, + 192, + 32, + 16, + 8, + 6 + ] + ], + "after": [ + "add", + 169, + 16, + -1, + 2, + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 613, + "before": [ + "add", + 205, + 409, + -1, + 2, + [ + 273, + 128, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 205, + 409, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 643, + "before": [ + "add", + 201, + 88, + -1, + 2, + [ + 256, + 145, + 64, + 32, + 9, + 6 + ] + ], + "after": [ + "add", + 201, + 88, + -1, + 2, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 675, + "before": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 137, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 705, + "before": [ + "add", + 161, + 27, + 1, + 1, + [ + 265, + 128, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 161, + 27, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 727, + "before": [ + "add", + 194, + 429, + 1, + 1, + [ + 272, + 144, + 65, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 194, + 429, + 1, + 1, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 757, + "before": [ + "add", + 195, + 431, + 1, + 1, + [ + 256, + 128, + 65, + 41, + 16, + 6 + ] + ], + "after": [ + "add", + 195, + 431, + 1, + 1, + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/TRI-LEAVER-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/TRI-LEAVER-k8.json new file mode 100644 index 0000000000..e3bb24cc49 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/TRI-LEAVER-k8.json @@ -0,0 +1,590 @@ +{ + "full_pairs": [ + [ + 0, + 1 + ], + [ + 2, + 3 + ], + [ + 4, + 5 + ], + [ + 6, + 7 + ] + ], + "triangles": [ + { + "p": [ + 0, + 1 + ], + "e": 1, + "reads": [ + [ + 57, + [ + 0, + 1, + 2, + 3 + ], + 0 + ], + [ + 56, + [ + 0, + 1, + 2, + 3 + ], + 1 + ], + [ + 25, + [ + 0, + 1, + 4, + 5 + ], + 0 + ], + [ + 24, + [ + 0, + 1, + 4, + 5 + ], + 1 + ], + [ + 17, + [ + 0, + 1, + 6, + 7 + ], + 0 + ], + [ + 16, + [ + 0, + 1, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 0 + }, + { + "p": [ + 2, + 3 + ], + "e": 1, + "reads": [ + [ + 63, + [ + 0, + 1, + 2, + 3 + ], + 3 + ], + [ + 59, + [ + 0, + 1, + 2, + 3 + ], + 23 + ], + [ + 89, + [ + 2, + 3, + 4, + 5 + ], + 0 + ], + [ + 88, + [ + 2, + 3, + 4, + 5 + ], + 1 + ], + [ + 81, + [ + 2, + 3, + 6, + 7 + ], + 0 + ], + [ + 80, + [ + 2, + 3, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 1 + }, + { + "p": [ + 4, + 5 + ], + "e": 1, + "reads": [ + [ + 31, + [ + 0, + 1, + 4, + 5 + ], + 3 + ], + [ + 27, + [ + 0, + 1, + 4, + 5 + ], + 23 + ], + [ + 95, + [ + 2, + 3, + 4, + 5 + ], + 3 + ], + [ + 91, + [ + 2, + 3, + 4, + 5 + ], + 23 + ], + [ + 49, + [ + 4, + 5, + 6, + 7 + ], + 0 + ], + [ + 48, + [ + 4, + 5, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 2 + }, + { + "p": [ + 6, + 7 + ], + "e": 1, + "reads": [ + [ + 23, + [ + 0, + 1, + 6, + 7 + ], + 3 + ], + [ + 19, + [ + 0, + 1, + 6, + 7 + ], + 23 + ], + [ + 87, + [ + 2, + 3, + 6, + 7 + ], + 3 + ], + [ + 83, + [ + 2, + 3, + 6, + 7 + ], + 23 + ], + [ + 55, + [ + 4, + 5, + 6, + 7 + ], + 3 + ], + [ + 51, + [ + 4, + 5, + 6, + 7 + ], + 23 + ] + ], + "coded": true, + "cell": 3 + }, + { + "p": [ + 6, + 7 + ], + "e": -1, + "reads": [ + [ + 18, + [ + 0, + 1, + 6, + 7 + ], + 21 + ], + [ + 22, + [ + 0, + 1, + 6, + 7 + ], + 2 + ], + [ + 82, + [ + 2, + 3, + 6, + 7 + ], + 21 + ], + [ + 86, + [ + 2, + 3, + 6, + 7 + ], + 2 + ], + [ + 50, + [ + 4, + 5, + 6, + 7 + ], + 21 + ], + [ + 54, + [ + 4, + 5, + 6, + 7 + ], + 2 + ] + ], + "coded": true, + "cell": 4 + }, + { + "p": [ + 0, + 1 + ], + "e": -1, + "reads": [ + [ + 61, + [ + 0, + 1, + 2, + 3 + ], + 17 + ], + [ + 60, + [ + 0, + 1, + 2, + 3 + ], + 19 + ], + [ + 29, + [ + 0, + 1, + 4, + 5 + ], + 17 + ], + [ + 28, + [ + 0, + 1, + 4, + 5 + ], + 19 + ], + [ + 21, + [ + 0, + 1, + 6, + 7 + ], + 17 + ], + [ + 20, + [ + 0, + 1, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 5 + }, + { + "p": [ + 2, + 3 + ], + "e": -1, + "reads": [ + [ + 58, + [ + 0, + 1, + 2, + 3 + ], + 21 + ], + [ + 62, + [ + 0, + 1, + 2, + 3 + ], + 2 + ], + [ + 93, + [ + 2, + 3, + 4, + 5 + ], + 17 + ], + [ + 92, + [ + 2, + 3, + 4, + 5 + ], + 19 + ], + [ + 85, + [ + 2, + 3, + 6, + 7 + ], + 17 + ], + [ + 84, + [ + 2, + 3, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 6 + }, + { + "p": [ + 4, + 5 + ], + "e": -1, + "reads": [ + [ + 26, + [ + 0, + 1, + 4, + 5 + ], + 21 + ], + [ + 30, + [ + 0, + 1, + 4, + 5 + ], + 2 + ], + [ + 90, + [ + 2, + 3, + 4, + 5 + ], + 21 + ], + [ + 94, + [ + 2, + 3, + 4, + 5 + ], + 2 + ], + [ + 53, + [ + 4, + 5, + 6, + 7 + ], + 17 + ], + [ + 52, + [ + 4, + 5, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 7 + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/build_frames_lv.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/build_frames_lv.py new file mode 100644 index 0000000000..5f8aa7a24b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/build_frames_lv.py @@ -0,0 +1,64 @@ +#!/usr/bin/env python3 +"""Apply the pinned gate/tail frame re-optimisation of FRAME-RECIPE-LV-k5.json (exact global frame optimum, gopt2) to the +leaver U8 word. + +usage: build_frames_lv.py INPUT_WORD.json.gz OUT_DIR RECIPE.json + +Standard library only. The frames are applied by BlockInvert's `../promo/build_promotion.apply` (no entrances; 'B' gate +frames and 'T' tail frames), which checks each old frame and recomputes the local profile and widths. This builder then checks: +input sha pin; the scalar program of A, cut, B, precondition and cleanup unchanged (every field but the frame); start +and end frames unchanged; local profile and width inventory equal to the recipe's; output sha pin. Three pin controls +(input pin, wrong old frame, output pin) must be rejected at their pinned reasons on every build. +Adapted from ../frames/build_frames.py (from PR741's extras/build_frames.py, chafreaky). Apache-2.0. +""" +import copy, gzip, hashlib, importlib.util, json, sys +from pathlib import Path + +HERE = Path(__file__).resolve().parent +_s = importlib.util.spec_from_file_location('promotion', HERE.parent / 'promo/build_promotion.py') +B = importlib.util.module_from_spec(_s); _s.loader.exec_module(B) + + +def construct(raw, recipe): + assert hashlib.sha256(raw).hexdigest() == recipe['input_content_sha256'], 'input word pin' + w = json.loads(raw) + assert recipe['gate_frames'] and all(c[0] in ('B', 'T') for c in recipe['gate_frames']), 'B and T frames only' + out = B.apply(w, dict(entrances={}, gate_frames=recipe['gate_frames'])) + for section in ('A', 'cut', 'B', 'precondition', 'cleanup'): + assert [e[:-1] for e in w[section]] == [e[:-1] for e in out[section]], 'scalar program unchanged' + assert out['start_extra'] == w['start_extra'] and out['helper_final'] == w['helper_final'], 'endpoint frames unchanged' + assert out['report']['local_profile'] == recipe['expected']['local_profile'] and \ + out['report']['width_inventory'] == recipe['expected']['width_inventory'], 'profile and width pins' + data = json.dumps(out, sort_keys=True, separators=(',', ':')).encode() + assert hashlib.sha256(data).hexdigest() == recipe['expected']['output_content_sha256'], 'output word pin' + return data + + +def main(): + assert __debug__, 'Assertions are required' + inp, outd, rfile = map(Path, sys.argv[1:4]) + raw = gzip.decompress(inp.read_bytes()); recipe = json.loads(rfile.read_text()) + data = construct(raw, recipe) + rejected = [] + for name, change, reason in [ + ('input-pin', lambda r: r.__setitem__('input_content_sha256', '0' * 64), 'input word pin'), + ('old-frame', lambda r: r['gate_frames'][0].__setitem__(2, []), 'gate frame mismatch'), + ('output-pin', lambda r: r['expected'].__setitem__('output_content_sha256', '0' * 64), 'output word pin')]: + r = copy.deepcopy(recipe); change(r) + try: + construct(raw, r) + except AssertionError as e: + assert reason in str(e), (name, str(e)); rejected.append(dict(name=name, reason=reason)) + else: + raise AssertionError('accepted ' + name) + outd.mkdir(parents=True) + (outd / 'FULL-WORD.json.gz').write_bytes(gzip.compress(data, mtime=0)) + (outd / 'BUILD.json').write_text(json.dumps(dict( + status='PASS_FRAME_REOPT_EXACT_CONSTRUCTION', input_sha256=hashlib.sha256(raw).hexdigest(), + output_sha256=hashlib.sha256(data).hexdigest(), scalar_program_unchanged=True, frames=len(recipe['gate_frames']), + rejected_controls=rejected), indent=2) + '\n') + print('PASS', len(recipe['gate_frames']), 'frames and three pin controls') + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-01+.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-01+.json new file mode 100644 index 0000000000..bfef820f29 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-01+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "-1/2" + ], + [ + "y0", + "x1", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "-1/2" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-01-.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-01-.json new file mode 100644 index 0000000000..3afa894b20 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-01-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y0", + "x1", + 1 + ], + [ + "y1", + "x0", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x1", + "x0", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y0", + "x3", + 1 + ], + [ + "y2", + "x1", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y1", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y0", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x0", + 1 + ], + [ + "y4", + "x1", + 1 + ] + ], + "scaled": [ + [ + "y0", + "x1", + "-1/2" + ], + [ + "y1", + "x0", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x1", + "x0", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y0", + "x3", + "-1/2" + ], + [ + "y2", + "x1", + "-1/2" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y1", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y0", + "1" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-23+.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-23+.json new file mode 100644 index 0000000000..98ff8050e7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-23+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-23-.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-23-.json new file mode 100644 index 0000000000..517b89d382 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-23-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y1", + "x3", + 1 + ], + [ + "y2", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y1", + "x3", + "-1/2" + ], + [ + "y2", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-45+.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-45+.json new file mode 100644 index 0000000000..2bc89e1de1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-45+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "-1/2" + ], + [ + "x4", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-45-.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-45-.json new file mode 100644 index 0000000000..b9c1904b83 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-45-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x4", + 1 + ], + [ + "y3", + "x5", + 1 + ], + [ + "y5", + "x3", + 1 + ], + [ + "y4", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x4", + 1 + ], + [ + "x5", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x4", + "-1/2" + ], + [ + "y3", + "x5", + "-1/2" + ], + [ + "y5", + "x3", + "1" + ], + [ + "y4", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x4", + "-1/2" + ], + [ + "x5", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-67+.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-67+.json new file mode 100644 index 0000000000..7d756cb19d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-67+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-67-.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-67-.json new file mode 100644 index 0000000000..7d756cb19d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cells-k8/CORE-67-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cgx_leaver.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cgx_leaver.py new file mode 100644 index 0000000000..e686c66306 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/cgx_leaver.py @@ -0,0 +1,491 @@ +# LeaverSAT: no-helper mutable-leaver all-K cells (coded triangles) on the no-triangle word. Generated by +# LeaverSAT/mkpkg.py from construction/notri/cgx.py with the leaver edits (lv.leaver_source); Apache-2.0. +import json as _lj, os as _lo, sys as _ls +from fractions import Fraction as _lF +CODED_CELLS=[(c['bindings'],[[t,s,_lF(q)] for t,s,q in c['scaled']]) for c in _lj.load(open(_lo.path.join(_lo.path.dirname(_lo.path.abspath(_ls.argv[3])),'CODED-CELLS.json')))] +# Round20 early-coordinate-center / own-Y variant, prepared for icekylinx +# with OpenAI Codex assistance. Apache-2.0. Scalar elementary-operation +# helpers below are retained from the attributed PR514 construct_partial.py. +# Adapted by OpenAI Codex for isolated structural research. +# Modified from PR425 by icekylinx with Codex assistance. +"""Full discovery word for Hamming packets with borrowed X and Y registers. + +This changes the scalar architecture. It is not accepted by the old restricted +gx interface: source bases may change until full-frame cleanup, and targets use +an explicitly inverted output basis. No supplier admission is asserted. +""" +import copy,gzip,json,math,time +import itertools as it +from collections import Counter,defaultdict +from fractions import Fraction as Q +from pathlib import Path + +import sys +INPUT=Path(sys.argv[1]);OUT=Path(sys.argv[2]);OUT.mkdir(parents=True,exist_ok=False);D=json.loads((INPUT/'PROTOTYPE.json').read_text()) +P=D['binary_ports'];R=D['root_lines'];v=120;h=9 +modules=json.load(gzip.open(INPUT/'PACKET-PROGRAMS.json.gz')) +# AtomScout: leaver-read K-triangles (schedule from atom1.py / rog.py CP-SAT) +TRI=json.loads(Path(sys.argv[3]).read_text()) +FULLT={(tuple(tr['p']),tr['e']) for tr in TRI['triangles']} +TRI_COORDS={t+8 for tr in TRI['triangles'] for t,_,_ in tr['reads']} +import os as _o +COPYL=json.loads(open(_o.environ['XPARAM']).read()).get('copyl',[]) if _o.environ.get('XPARAM') else [] +NH=504-3*len(FULLT)+len(COPYL) + +def basis(vectors): + b={} + for x in vectors: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def inside(a,b):return basis(a+b)==b +def hyper(p):return basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) +FULL=basis([1<=v,r)) + for col,s in enumerate(ids): + k=next(i for i in range(col,len(regs)) if rows[regs[i]].get(s,Q(0))) + swap(regs[k],regs[col],F) + scale(regs[col],1/rows[regs[col]][s],F) + for i in range(len(regs)): + if i!=col and rows[regs[i]].get(s,Q(0)):add(regs[i],regs[col],-rows[regs[i]][s],F) + assert all(rows[regs[i]]=={s:Q(1)} for i,s in enumerate(ids)) + M=[[Q(R[s][i]) for s in ids] for i in c] + def qr_rank(rs): + bs={} + for r in rs: + r=r.copy() + for i,b in sorted(bs.items()): + if r[i]:q=r[i];r=[x-q*y for x,y in zip(r,b)] + i=next((i for i,x in enumerate(r) if x),None) + if i is not None:q=r[i];bs[i]=[x/q for x in r] + return len(bs) + assert qr_rank(M)==4 + for rr0 in PRIO.get(",".join(map(str,c)),[])+PRIORITY[",".join(map(str,c))]["rows"]: + rr=list(map(Q,rr0)) + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + for i in range(8): + if len(M)==8:break + rr=[Q(i==j) for j in range(8)] + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + assert len(M)==8 + linear(regs,M,F) + for i,r in zip(c,regs): + assert rows[r]=={s:Q(R[s][i]) for s in ids} + block_totals[c,i]=r + +# All centers are complete while Y is still at zero. This is the crucial +# difference from an illegal early-own-Y prefix using the old center order. +centers=[] +for i in range(8): + regs=[block_totals[c,i] for c in sorted(blocks) if i in c] + F=hyper(P[frame[i]]);a=regs[0] + for b in regs[1:]:add(a,b,1,F) + centers.append(a) +centers += [frame[i] for i in range(8)] +center_frames=[cur[r] for r in centers] +assert list(map(len,center_frames))==[8]*8+[1]*8 +assert all(cur[v+t]==() for t in range(v)) + +phase=B +for t,(r,coef,F) in sorted(own_rows.items()): + if t in TRI_COORDS:continue + assert cur[r]==F + add(v+t,r,coef,F) +# requests are needed for TRI coefficients +requests=defaultdict(list) +for pid,pair in enumerate(pairs): + if not pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + requests[key1].append((t,-Q(mat[0][0],2))) + requests[key2].append((u,-Q(mat[0][1],2))) +reqcoef={t:(key,coef) for key,reqs in requests.items() for t,coef in reqs} +def face_info(c,p,eps): + z=blocks[c];keys=[(pp,ee) for pp in it.combinations(c,2) for ee in (-1,1)] + r_local,alpha=z['outputs'][keys.index((p,eps))] + j=[j for j in range(40,len(z['events'])) if z['events'][j][0]==r_local];assert len(j)==1 + return j[0],Q(alpha) +tri_join_counts=Counter() +coded_shadow_slot={} +coded_target_edges=[];TRILOG=[] +lcopy={} +for s8 in COPYL: + r=s8+8;c=len(cur);cur.append(());rows.append({});shadow.append(None);add(c,r,1,cur[r]);lcopy[r]=c +BF={c:basis([P[x] for x in z['receipt']['source_lines']]) for c,z in blocks.items()} +HYB={(tuple(map(int,h[0])),tuple(map(int,h[1])),int(h[2])) for h in XP.get('hyb',[])} +HYBLOG=[] +def triread(t,blk,r,q): + F=basis(cur[v+t]+cur[r]);assert inside(F,hyper(P[t])),('TRI frame',t,blk,r,cur[v+t],cur[r],hyper(P[t]),[x for x in TRILOG if x[2]==r],HYBLOG) + tri_join_counts[len(F)]+=1;add(v+t,r,q,F);TRILOG.append([t,list(blk),r,str(q),list(F),list(cur[r])]) +for tr in TRI['triangles']: + if tr.get('coded'): + bindings={} + for name,binding in CODED_CELLS[tr['cell']][0].items(): + bindings[name]=maps[tuple(binding[1])][binding[2]] if binding[0]=='source' else v+binding[1] + for tn,sn,q in CODED_CELLS[tr['cell']][1]: + target,source=bindings[tn],bindings[sn] + F=basis(cur[target]+cur[source]) + for register in (target,source): + if v<=register<2*v:assert inside(F,hyper(P[register-v])),('coded frame',register,F) + add(target,source,q,F) + if sn.startswith('y'):coded_target_edges.append((target,source,Q(q))) + continue + p,eps=tuple(tr['p']),tr['e'] + hb={blk for _,blk,_ in map(lambda x:(x[0],tuple(x[1]),x[2]),tr['reads']) if (blk,p,eps) in HYB} + own=[];rest=[] + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];r0=r;r=lcopy.get(r,r) + key,coef=reqcoef[t];assert key[1]==p and key[2]==eps,(key,p,eps) + if blk==key[0]: + rr,c0,F0=own_rows[t];assert rr==r0;own.append((t,blk,r,c0)) + else: + j,alpha=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert loc in ev[:2] + rest.append((t,blk,loc,r,coef*alpha)) + if not hb: + # original interleaved order + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:q=own_rows[t][1] + else:j,alpha=face_info(blk,p,eps);q=coef*alpha + triread(t,blk,r,q) + continue + items=[] # (kind, t, reg, q, blk) + for t,blk,r,q in own:items.append(('r',t,r,q,blk,blk in hb)) + for blk in sorted(hb):items.append(('e',None,None,None,blk,True)) + done=set() + for t,blk,loc,r,q in rest: + if blk in hb: + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j] + ws=[x for x in rest if x[0]==t and x[1]==blk];assert len(ws)==2 and ws[0][4]==ws[1][4] and {ws[0][2],ws[1][2]}==set(ev[:2]) + if (t,blk) in done:continue + done.add((t,blk));items.append(('m',t,maps[blk][ev[0]],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + # Original read order with the two half reads collapsed into one M read at the first half's slot; the face event goes + # just before the first M read of its block; own reads of the M register are hoisted ahead of that event. + def evinfo(blk): + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert ev[2]==ev[3]==1,ev + mpb=maps[blk];return mpb[ev[0]],mpb[ev[1]],tuple(blocks[blk]['event_frames'][j]) + items=[] + seen=set() + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:items.append(('r',t,r,own_rows[t][1],blk,blk in hb)) + else: + j,alpha=face_info(blk,p,eps);q=coef*alpha + if blk in hb: + if (t,blk) not in seen:seen.add((t,blk));continue + items.append(('m',t,evinfo(blk)[0],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + for blk in sorted(hb): + k0=min(i for i,x in enumerate(items) if x[0]=='m' and x[4]==blk) + items.insert(k0,('e',None,None,None,blk,True)) + n=len(items) + def step(it,st): + k,t,r,q,blk,h=it;g=lambda x:st.get(x,cur[x]) + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(g(a_))+list(g(b_))) + return {a_:FF,b_:FF} if inside(FF,BF[blk]) else None + F=basis(list(g(v+t))+list(g(r))) + if not inside(F,hyper(P[t])):return None + if h and k=='r' and r==evinfo(blk)[1] and not inside(F,BF[blk]):return None + return {v+t:F,r:F} + def allowed(i,used): + k,t,r,q,blk,h=items[i] + evi=[j for j,x in enumerate(items) if x[0]=='e' and x[4]==blk] if h else [] + if k=='e':return all(j in used for j,x in enumerate(items) if x[0]=='r' and x[4]==blk and x[5] and x[2]==evinfo(blk)[0]) + if k=='m':return evi[0] in used + if k=='r' and h and r==evinfo(blk)[0]:return evi[0] not in used + return True + budget=[int(os.environ.get('HYBBUDGET','300000'))];memo=set() + def dfs(st,used,order): + if len(order)==n:return order + budget[0]-=1 + if budget[0]<0:return None + sig=(used,tuple(sorted(st.items()))) + if sig in memo:return None + memo.add(sig) + for i in range(n): + if i in used or not allowed(i,used):continue + d=step(items[i],st) + if d is None:continue + ns=dict(st);ns.update(d);res=dfs(ns,used|{i},order+[i]) + if res:return res + return None + import sys as _s;_s.setrecursionlimit(20000) + order=dfs({},frozenset(),[]) + assert order,('no feasible hybrid order',p,eps,sorted(hb),budget) + for i in order: + k,t,r,q,blk,h=items[i] + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(cur[a_])+list(cur[b_]));add(a_,b_,1,FF);HYBLOG.append([list(blk),list(p),eps,list(FF)]) + else:triread(t,blk,r,q) + +packets={} +for c,z in sorted(blocks.items()): + mp=maps[c] + keys=[(p,eps) for p in it.combinations(c,2) for eps in (-1,1)] + skipev={face_info(c,p,eps)[0] for p,eps in keys if (p,eps) in FULLT} + for j,(e,F) in enumerate(list(zip(z['events'],z['event_frames']))[40:]): + if j not in early[c] and 40+j not in skipev: + t,s,a,b=e;add(mp[t],mp[s],Q(a,b),tuple(F)) + for key,(r,alpha) in zip(keys,z['outputs']): + if tuple(key) in FULLT:skip();continue + a=mp[r];b=alloc();add(b,a,1,cur[a]) + consumers=sorted(d for d in blocks if d!=c and set(key[0])<=set(d)) + assert len(consumers)==2 + for target,r in zip(consumers,(a,b)):packets[c,key[0],key[1],target]=(r,Q(alpha)) + +# Both tetrahedra use the same partition. A selected key has exactly two +# selected Y loads and no ordinary M consumer. Supply its two raw halves in +# opposite orders and never form that M. Other keys retain the old M path. +second=[];first_join_counts=Counter() +for key,reqs in sorted(requests.items()): + assert len(reqs)==2 + c,p,eps=key + if (p,eps) in FULLT:continue + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d));a,b=ds + for j,(target,coef) in enumerate(sorted(reqs)): + first_source,second_source=(a,b) if j==0 else (b,a) + r,alpha=packets[first_source,p,eps,second_source] + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + first_join_counts[len(F)]+=1;add(v+target,r,coef*alpha,F) + r,alpha=packets[second_source,p,eps,c] + second.append((target,r,coef*alpha)) + +Ms={} +for c in sorted(blocks): + for p in it.combinations(c,2): + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d)) + for eps in (-1,1): + if (c,p,eps) in requests:continue + (a,alpha),(b,beta)=[packets[d,p,eps,c] for d in ds] + F=basis(cur[a]+cur[b]);add(a,b,beta/alpha,F) + Ms[c,p,eps]=(a,alpha) + +consumers=defaultdict(list) +for pid,pair in enumerate(pairs): + for key in pair['keys']:consumers[key].append(pid) +slots={} +for key,uses in sorted(consumers.items()): + assert len(uses)==2 + if key in requests: + assert all(pairs[i]['selected'] for i in uses) + continue + assert all(not pairs[i]['selected'] for i in uses) + a,alpha=Ms[key] + for j,pid in enumerate(uses): + if j==0:r=a + else:r=alloc();add(r,a,1,cur[a]) + slots[pid,key]=(r,alpha) +assert len(cur)-240==NH,len(cur)-240 + +selected_join_counts=Counter() +for target,r,coef in second: + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + selected_join_counts[len(F)]+=1;add(v+target,r,coef,F) +output_basis=[] +for pair in pairs: + if not pair['selected']:continue + (t,u),mat=pair['targets'],pair['matrix'] + F=basis(cur[v+t]+cur[v+u]);assert inside(F,hyper(P[t])) and inside(F,hyper(P[u])) + add(v+t,v+u,1,F);add(v+u,v+t,-Q(1,2),F) + z=-Q(2*mat[1][0],mat[0][0]);scale(v+u,z,F);output_basis.append((t,u,z)) + +for pid,pair in enumerate(pairs): + if pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + (a,alpha),(b,beta)=slots[pid,key1],slots[pid,key2] + F=basis(cur[a]+cur[b]);aa,ab=Q(mat[0][0])*alpha,Q(mat[0][1])*beta + ba,bb=Q(mat[1][0])*alpha,Q(mat[1][1])*beta + add(a,b,ab/aa,F);q=ba/(bb-ba*ab/aa);add(b,a,q,F) + add(v+t,a,-aa/2,hyper(P[t]));add(v+u,b,-(bb-ba*ab/aa)/2,hyper(P[u])) + +for t in range(v): + expected={s:-Q(G[t][s],2) for s in range(v) if s!=t and G[t][s] and s not in frame.values()} if t not in frame.values() else {} + assert rows[v+t]==expected,('side identity',t) + +scatter=[[Q(r[i],4) if t not in frame.values() else Q(0) for i in range(8)]+[Q(t==frame[i]) for i in range(8)] for t,r in enumerate(R)] +precondition=[] +for t,u,z in output_basis: + a,b=scatter[t].copy(),scatter[u].copy() + scatter[t]=[x/2-y/z for x,y in zip(a,b)] + scatter[u]=[x/2+y/z for x,y in zip(a,b)] + precondition.extend([['scale',v+u,(1/z).numerator,(1/z).denominator,[]], + ['add',v+u,v+t,1,2,[]],['add',v+t,v+u,-1,1,[]]]) +for target,source,q in reversed(coded_target_edges): + scatter[target-v]=[a-q*b for a,b in zip(scatter[target-v],scatter[source-v])] + precondition.append(['add',target,source,-q.numerator,q.denominator,[]]) +for r in range(len(cur)):climb(r,hyper(P[r-v]) if v<=r<2*v else FULL) +H[8]+=8;H[1]+=8 +assert sum(r*z for r,z in H.items())==9*NH+240*8+72,sum(r*z for r,z in H.items()) + +def apply(e,matrix): + if e[0]=='add': + _,t,s,a,b,*_=e;q=Q(a,b) + for j,x in list(matrix[s].items()): + z=matrix[t].get(j,Q(0))+q*x + if z:matrix[t][j]=z + else:matrix[t].pop(j,None) + else: + _,t,a,b,*_=e;q=Q(a,b);matrix[t]={j:q*x for j,x in matrix[t].items()} +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + e[-1]=list(FULL);return e +cut=[['add',v+t,centers[i],q.numerator,q.denominator,None] for t,row in enumerate(scatter) for i,q in enumerate(row) if q] +cleanup=[inverse(e) for e in reversed(A+B) if not v<=e[1]<2*v] +matrix=[{r:Q(1)} if r - entering end e's tail frame has a dimension that no helper_final frame has, so the mutant cannot be built. +Such a site is never skipped silently: the pins file MUST declare it under "not_applicable" ({site: reason}), the +declared set MUST equal the detected set, an identity is PROVEN by byte equality of the mutated and honest words (both +sha256 recorded), and a substitute mutant of the same class is built and MUST be rejected at the class's pinned reason: + extra_end -> the first premixed partner of h0 that is not yet ended, cold-ended at h0's frame; + other_hp: -> e's end moved to another helper_final frame of the dimension of e's own end frame. +Original docstring: layer_end_controls.py LAYERED-WORD.json.gz ROUTING OUTDIR (env PR635_CODE): adapted PR635 cold_end_controls.py (LayerReviewer): raw-word negative controls for the cold low-frame ends and the +refactored cleanup accepted by hpe_audit_and_transport.py. Every mutation MUST be rejected (AssertionError); the +unmutated word MUST pass. Apache-2.0. DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code.""" +import copy, gzip, hashlib, json, shutil, sys, tempfile +from pathlib import Path +import os +sys.path.insert(0, os.environ['PR635_CODE']) # PR635's unchanged hpe_audit_and_transport.py +import hpe_audit_and_transport as atc + +src, routing, outdir = Path(sys.argv[1]), Path(sys.argv[2]), Path(sys.argv[3]) +word = json.load(gzip.open(src)) +v, R = word['report']['v'], word['report']['R']; n = 2*v + R +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +meta = word['refactored_cleanup'] +cold = [int(h) for h in meta['cold_low_frame_ended_helpers']] +npre = meta['premix_gates']; nlow = meta['lower_frame_gates'] +early = word['early_cleanup']; eidx = {i for i, _ in early} +rest = [i for i in range(len(word['cleanup'])) if i not in eidx] + + +def trial(w): + """None if the transport audit accepts w, else the AssertionError message.""" + tmp = Path(tempfile.mkdtemp()) + p = tmp/'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w).encode(), mtime=0)) + try: + atc.run(p, routing, tmp/'out') + return None + except AssertionError as e: + return repr(e.args[0]) if e.args else 'AssertionError' + finally: + shutil.rmtree(tmp, ignore_errors=True) + + +# Pinned rejection reasons: each mutant must fail at this assertion of hpe_audit_and_transport.py (message substring). +ENDPOINT, COLDPRE, CONE = "'arbitrary-dirt endpoint'", 'touches a cold hyperplane-ended helper', 'hpe cone pre-check (row / column)' +WHY = dict(premix_to_precondition=COLDPRE, premix_dropped=COLDPRE, e_premix_dropped=ENDPOINT, lower_dropped=ENDPOINT, + remainder_dropped=ENDPOINT, coefficient=ENDPOINT, into_full='cleanup on non-FULL end', dyadic=ENDPOINT, frame_below="'nonmonotone'", + nonmonotone="'nonmonotone'", other_frame=CONE, cone=CONE, extra_end=COLDPRE, marker='cleanup is not the literal reversed inverse', + target='refactored cleanup touches a target', profile_pin='paid local profile differs from the reported local_profile', + entering_precondition='zero-frame precondition/compensation touches an entering helper') +_REASONS = dict(ENDPOINT=ENDPOINT, COLDPRE=COLDPRE, CONE=CONE) +NA_DECLARED = {} +if os.environ.get('LEC_REASON_PINS'): + for _k, _v in json.loads(Path(os.environ['LEC_REASON_PINS']).read_text()).items(): + if _k == 'not_applicable': NA_DECLARED = dict(_v); continue + assert _k in WHY, ('unknown mutant key', _k); WHY[_k] = _REASONS.get(_v, _v) +assert trial(word) is None, 'unmutated cold-end word must pass' +results = [] + + +def reject(name, mut, why): + """the mutation must be rejected, and for the pinned reason (a substring of the audit's assertion message).""" + w = copy.deepcopy(word); mut(w) + msg = trial(w) + assert msg is not None, 'cold-end mutation accepted: ' + name + assert why in msg, 'cold-end mutation %r rejected for the wrong reason: %s' % (name, msg[:300]) + results.append(name); print('rejected', name, '|', why, flush=True) + + +h0 = cold[0] +i0, U0 = next((i, f) for i, f in early if h0 in regs(word['cleanup'][i])) +r0 = rest[len(rest)//2] + + +def premix_to_precondition(w): # premix before the wrappers; compensation then reads the cold ends + w['precondition'] = w['precondition'] + w['A'][:npre]; w['A'] = w['A'][npre:] + + +def lower_gate_into_full(w): # a lower-frame gate on a cold-ended helper executed in the FULL remainder instead + w['early_cleanup'] = [x for x in w['early_cleanup'] if x[0] != i0] + + +def drop_cleanup_gate(w, i): # remove the gate AND its early_cleanup entry: a structurally valid word missing one gate + w['cleanup'].pop(i) + w['early_cleanup'] = [[j - (j > i), f] for j, f in w['early_cleanup'] if j != i] + + +def other_frame(w): # a different frame of the same dimension as the cold end (another cold helper's) + f = next(w['helper_final'][str(h)] for h in cold if w['helper_final'][str(h)] != w['helper_final'][str(h0)]) + w['helper_final'][str(h0)] = f + + +NA = [] # detected not-applicable sites: dict(site, reason, ...) +wsha = lambda w: hashlib.sha256(json.dumps(w, sort_keys=True, separators=(',', ':')).encode()).hexdigest() +HONEST_SHA = wsha(word) + + +def extra_cold_end(w): # declare a premixed partner of h0 cold-ended at h0's frame: fails the row/column cone + p = next(r for e in w['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + w['helper_final'][str(p)] = w['helper_final'][str(h0)] + + +_m = copy.deepcopy(word); extra_cold_end(_m) +if wsha(_m) == HONEST_SHA: # identity: the first partner is already ended at h0's frame + _p = next(r for e in word['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + _q = next(r for e in word['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e) and str(r) not in word['helper_final'] and not v <= r < 2*v) + NA.append(dict(site='extra_end', reason='partner %d already cold-ended at h0 %d frame (identity)' % (_p, h0), + honest_sha256=HONEST_SHA, mutated_sha256=wsha(_m), substitute='partner %d' % _q)) + + def extra_cold_end(w, q=_q): w['helper_final'][str(q)] = w['helper_final'][str(h0)] + assert wsha((lambda x: (extra_cold_end(x), x)[1])(copy.deepcopy(word))) != HONEST_SHA + + +reject('premix placed in the zero-frame precondition (before the cold wrappers)', premix_to_precondition, WHY['premix_to_precondition']) +reject('one premix gate dropped (the compensation then reads a cold-ended helper)', lambda w: w['A'].pop(npre - 1), WHY['premix_dropped']) +reject('one lower-frame cleanup gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, i0), WHY['lower_dropped']) +reject('one FULL-remainder gate dropped', lambda w: drop_cleanup_gate(w, r0), WHY['remainder_dropped']) +reject('lower-frame gate coefficient changed', lambda w: w['cleanup'][i0].__setitem__(3, w['cleanup'][i0][3] * 2), WHY['coefficient']) +reject('lower-frame gate moved into the FULL remainder (touches a cold-ended helper at FULL)', lower_gate_into_full, WHY['into_full']) +reject('lower-frame gate frame below its registers\' frames', lambda w: next(x for x in w['early_cleanup'] if x[0] == i0).__setitem__(1, U0[:-1]), WHY['frame_below']) +reject('cold end at another dim-4 frame', other_frame, WHY['other_frame']) +# PROFILE-PIN control: without its helper_final entry the cold-ended helper is a valid FULL-ended helper; the word is +# rejected because its reported paid profile (which counts the low end) no longer matches the frame chains. +reject('profile pin: cold end dropped (valid FULL end, but the reported profile counts the low end)', lambda w: w['helper_final'].pop(str(h0)), WHY['profile_pin']) +reject('extra cold end on a premixed partner (the compensation reads it before its wrapper)', extra_cold_end, WHY['extra_end']) +reject('refactored-cleanup marker removed (literal-inverse rule applies)', lambda w: w.pop('refactored_cleanup'), WHY['marker']) +reject('remainder gate retargeted to a target register', lambda w: w['cleanup'][r0].__setitem__(1, v + 3), WHY['target']) +reject('non-dyadic remainder coefficient', lambda w: w['cleanup'][r0].__setitem__(4 if w['cleanup'][r0][0] == 'add' else 3, 3 * w['cleanup'][r0][4 if w['cleanup'][r0][0] == 'add' else 3]), WHY['dyadic']) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('5', w['report']['local_profile']['5'] - 1), WHY['profile_pin']) +ent = [int(h) for h in sys.argv[4].split(',')] if len(sys.argv) > 4 else [int(h) for h in meta.get('entering_low_frame_ended_helpers', [])] +for e0 in ent: # ENTERING LOW-FRAME ENDS (ColdSupply extension; every entering end; absent for words without them) + j0 = next((i for i, e in enumerate(word['A'][:npre]) if e0 in regs(e)), None) + print('entering end', e0, 'premix gate', j0, flush=True) + k0, Ue = next((i, f) for i, f in early if e0 in regs(word['cleanup'][i])) + def to_pre(w, j0=j0): w['precondition'].append(w['A'][j0]); w['A'].pop(j0) + def other_hp(w, e0=e0, Ue=Ue): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Ue) and sorted(f) != sorted(Ue)) + if not any(len(f) == len(Ue) and sorted(f) != sorted(Ue) for f in word['helper_final'].values()): # unbuildable + Uh = word['helper_final'][str(e0)] + NA.append(dict(site='other_hp:%d' % e0, reason='tail frame dim %d; no other helper_final frame of that dim' % len(Ue), + dims_available=sorted({len(f) for f in word['helper_final'].values()}), substitute='end-frame dim %d' % len(Uh))) + + def other_hp(w, e0=e0, Uh=Uh): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Uh) and sorted(f) != sorted(Uh)) + if j0 is not None: reject('entering end %d: premix gate dropped' % e0, lambda w, j0=j0: w['A'].pop(j0), WHY['e_premix_dropped']) + if j0 is not None: reject('entering end %d: premix gate at frame [] instead of its entrance E' % e0, lambda w, j0=j0: w['A'][j0].__setitem__(-1, []), WHY['nonmonotone']) + if j0 is not None: reject('entering end %d: premix gate moved into the zero-frame precondition' % e0, to_pre, WHY['entering_precondition']) + reject('entering end %d: lower-frame gate dropped (gate and its early_cleanup entry)' % e0, lambda w, k0=k0: drop_cleanup_gate(w, k0), WHY['lower_dropped']) + reject('entering end %d: profile pin: end dropped (valid FULL end, but the reported profile counts the low end)' % e0, lambda w, e0=e0: w['helper_final'].pop(str(e0)), WHY['profile_pin']) + reject('entering end %d: end at another hyperplane' % e0, other_hp, WHY['cone']) +# Pinned rejection reasons of the COLD-BEYOND mutants (substrings of hpe_audit_and_transport.py assertion messages). +MYWHY = dict(tw_precondition=COLDPRE, tw_dropped=COLDPRE, tw_coefficient=COLDPRE, tw_other_block=COLDPRE, + tw_entering='zero-frame compensation reads an entering helper', + ab_dropped=ENDPOINT, ab_coefficient=ENDPOINT, ab_early=ENDPOINT, ab_live=ENDPOINT, ab_centre=ENDPOINT, + ab_lower="'nonmonotone'", ab_higher="'nonmonotone'", + sh_dropped=ENDPOINT, sh_coefficient=ENDPOINT, rel_dropped=ENDPOINT, rel_coefficient=ENDPOINT, rel_live=ENDPOINT, + h8_other=CONE, h8_lower=ENDPOINT) +# COLD-BEYOND primitives (present only when the word carries them): frame-[] target writes in the premix (explicit +# post-wrapper compensation of an ended helper's dirt) and forward absorptions into dead registers. +nw = meta.get('premix_target_writes', 0) +if nw: + wi = [i for i in range(npre) if v <= word['A'][i][1] < 2*v] + assert len(wi) == nw + + def writes_to_precondition(w): # the target writes run before the cold wrappers (inside the zero-frame precondition) + g = [w['A'][i] for i in wi]; w['precondition'] = w['precondition'] + g + w['A'] = [e for i, e in enumerate(w['A']) if i not in set(wi)] + reject('premix target writes placed in the zero-frame precondition (before the cold wrappers)', writes_to_precondition, MYWHY['tw_precondition']) + reject('one premix target write dropped (compensation must read an ended helper)', lambda w: w['A'].pop(wi[0]), MYWHY['tw_dropped']) + reject('premix target write coefficient changed', lambda w: w['A'][wi[0]].__setitem__(3, w['A'][wi[0]][3] * 2), MYWHY['tw_coefficient']) + # (reading another register that carries the SAME weight of the ended helper's dirt is a valid variant, so the mutant reads + # the same factory slot of the next block, which carries none of it) + entering_regs = sorted(int(r) for r in word.get('start_extra', {})) + reject('premix target write reads an entering helper', lambda w: w['A'][wi[0]].__setitem__(2, entering_regs[0]), MYWHY['tw_entering']) + reject('premix target write reads a cold helper of another block', lambda w: w['A'][wi[0]].__setitem__(2, 2*v + (w['A'][wi[0]][2] - 2*v + 16) % 224), MYWHY['tw_other_block']) +ab = meta.get('forward_absorption_A_indices', []) +if any(len(word['helper_final'][str(h)]) == 8 for h in cold): + # with dim-8 cold ends, the centre-retargeted absorption first leaks an ended helper's dirt into the cut's targets + MYWHY['ab_centre'] = COLDPRE +if ab: + # the ColdBeyond U_b absorption (q += -1/2 g); ColdThird's extra absorptions have their own controls below + a0 = next(a for a in ab if word['A'][a][3] * 2 == -word['A'][a][4]); g0 = word['A'][a0] + + def absorption_moved_early(w): # absorbed before the absorbed register's last kernel write + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[2] == w['A'][i][1] and w['A'][i][-1] == g0[-1]) + w['A'].insert(j, e) + + def absorption_into_live(w): # q += a g moved right after g's previous frame-mate gate, while q is still live + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[1] in regs(w['A'][i])) + w['A'].insert(j, e) + reject('forward absorption dropped', lambda w: w['A'].pop(a0), MYWHY['ab_dropped']) + reject('forward absorption into a centre (a live register read by the cut)', lambda w: w['A'][a0].__setitem__(1, next(c for c in word['centers'] if c not in g0[1:3] and c not in cold)), MYWHY['ab_centre']) + reject('forward absorption coefficient changed', lambda w: w['A'][a0].__setitem__(3, w['A'][a0][3] * 2), MYWHY['ab_coefficient']) + reject('forward absorption placed before the absorbed register\'s last kernel write', absorption_moved_early, MYWHY['ab_early']) + reject('forward absorption placed while the absorbing register is still live', absorption_into_live, MYWHY['ab_live']) + reject('forward absorption at a lower frame than its registers', lambda w: w['A'][a0].__setitem__(-1, w['A'][a0][-1][:-1]), MYWHY['ab_lower']) + reject('forward absorption at a higher frame (FULL) than its registers', lambda w: w['A'][a0].__setitem__(-1, [256, 128, 64, 32, 16, 8, 4, 2, 1]), MYWHY['ab_higher']) +# COLD-THIRD primitives (present only when the word carries them): several absorptions after one input gate, dirt-release +# absorptions (a dead port takes a live helper's value so that a hyperplane unit's column has no dirt on it), and cold ends at +# a dim-8 frame with lifted partners. +hyper = [h for h in cold if len(word['helper_final'][str(h)]) == 8] +if hyper and ab: + sh = next(a for a, b in zip(ab, ab[1:]) if b == a + 1) # two absorptions sharing one input anchor + rel = next(a for a in ab if a - 1 not in ab and a + 1 not in ab and word['A'][a][2] in hyper and word['A'][a][3] * 2 != -word['A'][a][4]) + hh = hyper[0]; ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + reject('second absorption sharing an input anchor dropped', lambda w: w['A'].pop(sh + 1), MYWHY['sh_dropped']) + reject('shared-anchor absorption coefficient changed', lambda w: w['A'][sh + 1].__setitem__(3, w['A'][sh + 1][3] * 2), MYWHY['sh_coefficient']) + reject('dirt-release absorption dropped', lambda w: w['A'].pop(rel), MYWHY['rel_dropped']) + reject('dirt-release absorption coefficient changed', lambda w: w['A'][rel].__setitem__(3, w['A'][rel][3] * 2), MYWHY['rel_coefficient']) + jr = max(i for i in range(npre, rel) if word['A'][i][0] == 'add' and word['A'][i][2] == word['A'][rel][1]) + + def release_while_read(w): # the release runs before a kernel gate that still READS the port (port live) + e = w['A'].pop(rel); w['A'].insert(jr, e) + reject('dirt-release absorption moved before a kernel gate that still reads the port', release_while_read, MYWHY['rel_live']) +if hyper: + # dim-8 cold-end controls for EVERY dim-8 cold end of the word (read from the word's helper_final and the recipe meta's + # cold_low_frame_ended_helpers), not one representative per terminal frame + for hh in hyper: + ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + Uh = word['helper_final'][str(hh)] + reject('dim-8 cold end %d (frame %s) at another dim-8 frame' % (hh, Uh), lambda w, hh=hh: w['helper_final'].__setitem__(str(hh), next(f for h, f in w['helper_final'].items() if len(f) == 8 and sorted(f) != sorted(w['helper_final'][str(hh)]))), MYWHY['h8_other']) + reject('dim-8 cold end %d (frame %s): one lower-frame gate dropped (gate and its early_cleanup entry)' % (hh, Uh), lambda w, ih=ih: drop_cleanup_gate(w, ih), MYWHY['h8_lower']) + reject('dim-8 cold end %d (frame %s): profile pin (end dropped)' % (hh, Uh), lambda w, hh=hh: w['helper_final'].pop(str(hh)), WHY['profile_pin']) +# FACTORED ACCUMULATOR (CarrierBypass; present only when the word carries one): a lower-frame tail gate a += x*g on two +# non-ended registers whose accumulator a is afterwards read by a dim-8 cold end's tail gate (h += y*a at its U). +ended_all = {int(h) for h in word['helper_final']} +tailg = [(i, word['cleanup'][i]) for i, _ in early] +accs = [] # EVERY factored accumulator gate (one per accumulator register a), each controlled on its own +for k, (i, e) in enumerate(tailg): + if e[0] == 'add' and e[1] not in ended_all and e[2] not in ended_all and len(next(f for j, f in early if j == i)) < 8: + if e[1] not in [word['cleanup'][j][1] for j in accs] and any(t[0] == 'add' and t[2] == e[1] and t[1] in hyper for _, t in tailg[k + 1:]): + accs.append(i) +for acc in accs: + a = word['cleanup'][acc][1] + reject('factored accumulator %d (gate %d) zeroed' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, 0), ENDPOINT) + reject('factored accumulator %d (gate %d) coefficient doubled' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, w['cleanup'][acc][3] * 2), ENDPOINT) +assert {x['site']: x['reason'] for x in NA} == NA_DECLARED, ('not-applicable sites differ from the pins file', NA, NA_DECLARED) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'COLD-END-CONTROLS.json').write_text(json.dumps(dict(status='PASS_COLD_END_RAW_WORD_CONTROLS', word=str(src), rejected=results, not_applicable=NA), indent=1) + '\n') +print('PASS', len(results), 'cold-end raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver.py new file mode 100644 index 0000000000..bc4360ef93 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver.py @@ -0,0 +1,177 @@ +#!/usr/bin/env python3 +"""Rebuild the leaver word: the no-triangle word with no-helper mutable-leaver all-K cells, and its native locals. + +Each cell (pair p, sign e) replaces the three face events of the blocks containing p and their three packet copies +by a 21-gate circuit on the cell's six leaver sources x_j (the face-event operands, which have no later reads and are +restored by the inherited cleanup at FULL) and its six targets y_i: 3 leaver gates x_k += c x_m, 3 target gates +y_a += c y_b (inverted at frame zero in the precondition and scatter, #781's recipe) and 15 reads y_i += c x_j. +Unit circuit (LeaverSAT, layered CP-SAT on the exact set model), relabelled per cell so that no y += y source carries +port-stage entering-helper dirt at the gate; coefficients rescaled exactly to the cell (C_ij = r_i c_j). +Input: a fresh `construction/reproduce.py --until word` output directory (hamming/, shadow-early/, shadow-prefix/). +Steps, each checked exactly (pins in LEAVER-PINS.json): + 0. cells: CODED-CELLS.json's scaled gates are re-derived from the unit circuits and the cell coefficients, and the + clean map Y_i = sum_j C_ij X_j is checked in exact rationals. + 1. gauge-forward: cgx_leaver.py (notri/cgx.py + the leaver edits) with TRI-LEAVER.json, XPARAM = notri/PRIO6.json. + 2. port0-3: notri/port_stage_x.py. + 3. regroup: REGROUP-LEAVER.json's changes where their `before` gate occurs (count pinned). + 4. hpe: PR635's build_hpe.candidates greedy with disjoint registers, build_hpe.apply (recipe pinned). + 5. cold44: notri/cold44x.py with EXTRAH and pinned pairing ranks; output sha, profile and widths pinned. + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs (pins). +Apache-2.0. LeaverSAT (Claude Code research agent), driver after construction/notri/reproduce_notri.py. +""" +import argparse, gzip, hashlib, importlib.util, json, os, shutil, subprocess, sys, time +from fractions import Fraction +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NOTRI = HERE.parent / 'notri' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def dump(p, v): + p.parent.mkdir(parents=True, exist_ok=True); p.write_bytes(gzip.compress(enc(v), mtime=0)) + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def check_cells(cells): + for c in cells: + C = [[Fraction(q) for q in r] for r in c['coefficients']] + col = [None] * 6; row = [Fraction(1)] + [None] * 5 + for j in range(1, 6): col[j] = C[0][j] + col[0] = C[1][0] / (C[1][2] / col[2]) + for i in range(1, 6): row[i] = C[i][(i + 1) % 6] / col[(i + 1) % 6] + assert all(C[i][j] == row[i] * col[j] for i in range(6) for j in range(6) if i != j), ('rank-one cell', c['cell']) + idx = lambda s: int(s[1:]) + scaled = [] + for t, s, q in c['unit']: + assert Fraction(q) == 1 + if t[0] == 'x': assert s[0] == 'x'; q = col[idx(s)] / col[idx(t)] + elif s[0] == 'y': q = row[idx(t)] / row[idx(s)] + else: q = row[idx(t)] * col[idx(s)] + scaled.append([t, s, str(q)]) + assert scaled == c['scaled'], ('scaled gates', c['cell']) + R = {f'x{j}': {j: Fraction(1)} for j in range(6)}; R.update({f'y{i}': {} for i in range(6)}) + for t, s, q in scaled: + for k, x in list(R[s].items()): R[t][k] = R[t].get(k, 0) + Fraction(q) * x + for i in range(6): + assert {k: x for k, x in R[f'y{i}'].items() if x} == {j: C[i][j] for j in range(6) if j != i}, ('clean map', c['cell'], i) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--word-dir', type=Path, required=True, help='construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + ap.add_argument('--word-only', action='store_true', help='stop after the pinned scalar word (input to the layers)') + ap.add_argument('--id', default='k5', help='cell set: TRI-LEAVER-, CODED-CELLS-, REGROUP-LEAVER-, LEAVER-PINS-') + ap.add_argument('--record-pins', action='store_true', help='write LEAVER-PINS.json from this run instead of checking') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + pins = {} if a.record_pins else read(HERE / ('LEAVER-PINS-%s.json' % a.id)); got = {} + def pin(k, v): + got[k] = v + if not a.record_pins: assert pins[k] == v, ('pin', k, v, pins[k]) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + structural = a.main.resolve() / 'research/structural-gain/frontier-composition' + wd = a.word_dir.resolve() + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + # 0. cells + cells = read(HERE / ('CODED-CELLS-%s.json' % a.id)); check_cells(cells); print('PASS cells', [c['cell'] for c in cells], flush=True) + # 1. gauge-forward + shutil.copy(HERE / ('TRI-LEAVER-%s.json' % a.id), out / 'TRI.json'); shutil.copy(HERE / ('CODED-CELLS-%s.json' % a.id), out / 'CODED-CELLS.json') + env['XPARAM'] = str(NOTRI / 'PRIO6.json') + raw = out / 'raw' + run('gauge-forward', HERE / 'cgx_leaver.py', wd / 'hamming', raw, out / 'TRI.json') + word = raw / 'FULL-WORD.json.gz'; pin('raw_sha256', hashlib.sha256(enc(read(word))).hexdigest()) + # 2. port stages + chain = [parent / 'complex-local/static44/inputs/RAW504.json.gz', structural / 'global-replay/base/split-centres/FULL-WORD.json.gz', + wd / 'shadow-early/FULL-WORD.json.gz', structural / 'multicold-eight-word/FULL-WORD.json.gz', + wd / 'shadow-prefix/FULL-WORD.json.gz'] + for i, (b, c) in enumerate(zip(chain, chain[1:])): + t = out / ('port%d' % i) + run('port%d' % i, NOTRI / 'port_stage_x.py', '--shadow-input', b, '--shadow-output', c, '--input', word, + '--map', raw / 'HELPER-MAP.json', '--gk-dir', gk, '--out', t) + word = t / 'FULL-WORD.json.gz' + # 3. regroup + w = read(word); rg = {json.dumps(c['before']): c['after'] for c in read(HERE / ('REGROUP-LEAVER-%s.json' % a.id))['changes']} + n = 0 + for part in ('A', 'B'): + for i, e in enumerate(w[part]): + k = json.dumps(e) + if k in rg: w[part][i] = rg[k]; n += 1 + sys.path.insert(0, str(gk)); import gk_word as GW, gk_common as GC + GW.V = GC.V = 112; GW.DATA = GC.DATA = 7168 + H = GW.profile(w) + w['report'].update(local_profile={str(k): z for k, z in sorted(H.items()) if z}, local_rank_mass=sum(r * z for r, z in H.items())) + pin('regroup_count', n); dump(out / 'regroup/FULL-WORD.json.gz', w); pin('regroup_sha256', hashlib.sha256(enc(w)).hexdigest()) + # 4. HPE + h = load('upstream_hpe', up / 'code/build_hpe.py') + used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + (out / 'HPE-RECIPE.json').write_text(json.dumps(dict(changes=ch))) + pin('hpe_recipe_sha256', hashlib.sha256(enc(dict(changes=ch))).hexdigest()) + w = h.apply(w, ch); dump(out / 'hpe/FULL-WORD.json.gz', w) + # 5. cold44 + hm = set(read(raw / 'HELPER-MAP.json')['map'].values()) + env['EXTRAH'] = json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)) + if not a.record_pins: env['PAIRING_RANKS'] = json.dumps(pins['pairing_ranks']) + run('cold44', NOTRI / 'cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', wd / 'hamming', '--upstream-package', up) + pin('pairing_ranks', [b['pairing_rank'] for b in read(out / 'cold44/CONSTRUCTION.json')['blocks']]) + word = out / 'cold44/FULL-WORD.json.gz'; w = read(word) + pin('cold44_sha256', hashlib.sha256(enc(w)).hexdigest()); rep = w['report'] + pin('R', rep['R']); pin('local_profile', rep['local_profile']); pin('width_inventory', rep['width_inventory']) + print('PASS leaver scalar word', got['cold44_sha256'], flush=True) + if not a.word_only: + for k in ('XPARAM', 'EXTRAH', 'PAIRING_RANKS'): env.pop(k, None) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz', '--out', local) + pin('canonical_sha256', hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest()) + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + pin('program_sha256', {o: checks[o]['sha256'] for o in ('forward', 'backward')}) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + pin('clifford_recipes_sha256', hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest()) + if a.record_pins: (HERE / ('LEAVER-PINS-%s.json' % a.id)).write_text(json.dumps(got, indent=1) + '\n') + print('DONE', out, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver_chain.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver_chain.py new file mode 100644 index 0000000000..19fcd28f4d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/leaver/reproduce_leaver_chain.py @@ -0,0 +1,187 @@ +#!/usr/bin/env python3 +"""Rebuild the leaver stack on top of the leaver cell word: layers (NP, p6n), promotions, joint exchange and U8-style +hybrids, and the final word's native locals. + +Input: a fresh `construction/leaver/reproduce_leaver.py --word-only` output directory (raw/HELPER-MAP.json, regroup/, +cold44/; the cell word and its regroup word are pinned there by LEAVER-PINS.json). Each step uses an unchanged signed +builder with a LeaverSAT recipe (data only), and every intermediate word is pinned: + 1. pivot-swap: ../layers/build_pivot_swap.py with PIVOT-SWAP-.json on the regroup word (its own 30 controls). + 2. hpe: PR635's build_hpe.candidates (greedy, disjoint registers) must equal HPE-RECIPE-.json; build_hpe.apply. + The swapped HPE word is pinned by the cold-layer recipes' input_content_sha256. + 3. cold44-exact: ../notri/cold44x.py on the swapped HPE word (pairing ranks pinned to LEAVER-PINS); its cold ends, + premix and low tails must equal the unswapped leaver construction's. + 4. layers: PR635's build_cold_end.apply(HPE, COLD-LAYERS-RECIPE-NP-) -> NP word and (.., -P6N-) -> p6n word; + output shas pinned by the recipes. + 5. promotion: ../promo/build_promotion.py with PROMO-RECIPE-.json on the p6n word; ../promo/promo_controls.py. + 6. jx: ../jx/build_jx.py with RECIPE-X4-.json on the promoted word; all recipe controls rerun at their pins. + 7. hybrids: ../barch/build_tri.py with RECIPE-U8-.json on the jx word; ../barch/run_controls.py (all outcomes). + 8. frames: build_frames_lv.py (LeaverSAT2) applies FRAME-RECIPE-LV-.json (B/T frame changes, exact global frame + optimum) with ../promo/build_promotion.apply; scalar program unchanged; 3 pin controls; output pinned. + 8b. layer-end-controls: layer_end_controls_leaver.py (v2: the signed per-end controls with per-word reason re-pins + and declared not-applicable sites, each replaced by a same-class substitute mutant) on the p6n, promoted, jx and + hybrid words with LEC-REASON-PINS-STACK-.json, and on the re-framed final word with LEC-REASON-PINS-.json; + counts, not-applicable sites and the sha256 of each pins file pinned. + 9. native, ledgers, local-replay, wrappers, phases on the final word; canonical, programs, Clifford pinned. +All counts and native pins are in CHAIN-PINS-.json (--record-pins writes it from a run instead of checking; +a checking run requires its pins to equal the file exactly). +Apache-2.0. Driver by ColdWitness over LeaverSAT's frozen recipes and the signed builders. +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +C = HERE.parent +MUTANTS = ('drop_restore', 'restore_full', 'drop_preread', 'donation_after') + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def csha(p): return hashlib.sha256(gzip.decompress(Path(p).read_bytes())).hexdigest() + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--leaver-dir', type=Path, required=True, help='construction/leaver/reproduce_leaver.py --word-only output') + ap.add_argument('--hamming', type=Path, required=True, help='hamming/ of the construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + ap.add_argument('--id', default='k5', help='recipe set id: every recipe and pin file below is -') + ap.add_argument('--record-pins', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + lp = read(HERE / ('LEAVER-PINS-%s.json' % a.id)) + pins = {} if a.record_pins else read(HERE / ('CHAIN-PINS-%s.json' % a.id)); got = {} + + def pin(key, value): + got[key] = value + if not a.record_pins: assert pins[key] == value, (key, value, pins.get(key)) + + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE', 'LEC_REASON_PINS', 'SW4_PIN'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True, extra=None): + t = time.monotonic(); e = dict(env, **(extra or {})) + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=e, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + return (out / (label + '.log')).read_text() + + def lec(label, word, pins_name): + pf = HERE / ('%s-%s.json' % (pins_name, a.id)); pin(label + '_pins_sha256', hashlib.sha256(pf.read_bytes()).hexdigest()) + run(label, HERE / 'layer_end_controls_leaver.py', word, routing, out / label, + extra=dict(PR635_CODE=str(up / 'code'), LEC_REASON_PINS=str(pf))) + c = read(out / label / 'COLD-END-CONTROLS.json'); assert c['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' + pin(label, len(c['rejected'])); pin(label + '_not_applicable', {x['site']: x['reason'] for x in c['not_applicable']}) + + ld = a.leaver_dir.resolve() + assert hashlib.sha256(enc(read(ld / 'cold44/FULL-WORD.json.gz'))).hexdigest() == lp['cold44_sha256'], 'leaver cell word' + rg = ld / 'regroup/FULL-WORD.json.gz' + sw = read(HERE / ('PIVOT-SWAP-%s.json' % a.id)) + assert hashlib.sha256(enc(read(rg))).hexdigest() == lp['regroup_sha256'] == sw['input_content_sha256'], 'regroup word' + # 1. pivot swaps + run('pivot-swap', C / 'layers/build_pivot_swap.py', '--input', rg, '--recipe', HERE / ('PIVOT-SWAP-%s.json' % a.id), '--gk-dir', gk, '--out', out / 'swap') + w = read(out / 'swap/FULL-WORD.json.gz'); assert hashlib.sha256(enc(w)).hexdigest() == sw['output_content_sha256'], 'swap word' + # 2. HPE + h = load('upstream_hpe', up / 'code/build_hpe.py'); used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + assert ch == read(HERE / ('HPE-RECIPE-%s.json' % a.id))['changes'], 'HPE recipe' + w = h.apply(w, ch); (out / 'hpe').mkdir(); (out / 'hpe/FULL-WORD.json.gz').write_bytes(gzip.compress(enc(w), mtime=0)) + rnp, rp6 = read(HERE / ('COLD-LAYERS-RECIPE-NP-%s.json.gz' % a.id)), read(HERE / ('COLD-LAYERS-RECIPE-P6N-%s.json.gz' % a.id)) + assert hashlib.sha256(enc(w)).hexdigest() == rnp['input_content_sha256'] == rp6['input_content_sha256'], 'swapped HPE word' + # 3. cold44 on the swapped word: same ends, premix and tails + hm = set(read(ld / 'raw/HELPER-MAP.json')['map'].values()) + run('cold44-exact', C / 'notri/cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', a.hamming.resolve(), '--upstream-package', up, + extra=dict(EXTRAH=json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)), PAIRING_RANKS=json.dumps(lp['pairing_ranks']))) + new, old = read(out / 'cold44/RECIPE.json.gz'), read(ld / 'cold44/RECIPE.json.gz') + for key in ('premix', 'early_cleanup', 'cold_ends'): assert new[key] == old[key], ('swapped cold44 differs', key) + tail = len(new['early_cleanup']); assert new['cleanup'][:tail] == old['cleanup'][:tail], 'low tails' + # 4. NP and p6n layers + bce = load('upstream_cold', up / 'code/build_cold_end.py') + for name, r in (('np', rnp), ('p6n', rp6)): + lw = bce.apply(w, r); raw = enc(lw); assert hashlib.sha256(raw).hexdigest() == r['output_content_sha256'], (name, 'word') + (out / name).mkdir(); (out / name / 'FULL-WORD.json.gz').write_bytes(gzip.compress(raw, mtime=0)) + pin(name + '_profile', lw['report']['local_profile']) + p6n = out / 'p6n/FULL-WORD.json.gz'; lec('lec-p6n', p6n, 'LEC-REASON-PINS-STACK') + # 5. promotion + pr = HERE / ('PROMO-RECIPE-%s.json' % a.id) + run('promotion', C / 'promo/build_promotion.py', '--input', p6n, '--recipe', pr, '--out', out / 'promo', portable=False) + assert csha(out / 'promo/FULL-WORD.json.gz') == read(pr)['expected']['output_content_sha256'] + run('promo-controls', C / 'promo/promo_controls.py', '--input', p6n, '--recipe', pr, '--audit', C.parent / 'independent/audit_local.py', + '--out', out / 'PROMO-CONTROLS.json', portable=False) + pc = read(out / 'PROMO-CONTROLS.json'); assert pc['honest'] == 'PASS'; pin('promo_controls', pc['rejected']) + lec('lec-promo', out / 'promo/FULL-WORD.json.gz', 'LEC-REASON-PINS-STACK') + # 6. jx + xr = HERE / ('RECIPE-X4-%s.json' % a.id); rec = read(xr); inp = out / 'promo/FULL-WORD.json.gz' + (out / 'jx').mkdir(); jw = out / 'jx/FULL-WORD.json.gz' + run('jx', C / 'jx/build_jx.py', '--input', inp, '--recipe', xr, '--out', jw, portable=False) + assert csha(jw) == rec['expected']['output_content_sha256'] + for name, cc in sorted(rec['controls'].items()): + log = run('jx-control-' + name, C / 'jx/build_jx.py', '--input', inp, '--recipe', xr, '--control', name, portable=False) + if 'rejection_expected' in cc: assert 'CONTROL PINNED' in log, (name, log[-300:]) + else: assert ('OK ' + cc['expected_sha']) in log, (name, log[-300:]) + pin('jx_controls', sorted(rec['controls'])) + lec('lec-jx', jw, 'LEC-REASON-PINS-STACK') + # 7. hybrids + ur = HERE / ('RECIPE-U8-%s.json' % a.id); u = read(ur); (out / 'hyb').mkdir(); fw = out / 'hyb/FULL-WORD.json.gz' + run('hybrids', C / 'barch/build_tri.py', jw, ur, fw, portable=False) + assert csha(fw) == u['expect_sha256'] + run('hybrid-controls', C / 'barch/run_controls.py', jw, ur, C.parent / 'independent/audit_local.py', out / 'hybrid-controls', portable=False) + res = read(out / 'hybrid-controls/controls.json') + want = ['C0_identity', 'recipe', *MUTANTS] + [m + '@' + str(v['X']) for v in u.get('variants', []) for m in MUTANTS] + assert sorted(res) == sorted(want) and all(x['ok'] for x in res.values()), res + pin('hybrid_controls', sorted(want)) + lec('lec-hyb', fw, 'LEC-REASON-PINS-STACK') + # 8. frame re-optimisation (LeaverSAT2): exact global frame optimum of the hybrid word; scalar program unchanged + fr = HERE / ('FRAME-RECIPE-LV-%s.json' % a.id); frec = read(fr) + run('frames', HERE / 'build_frames_lv.py', fw, out / 'frames', fr, portable=False) + fw = out / 'frames/FULL-WORD.json.gz'; assert csha(fw) == frec['expected']['output_content_sha256'] + pin('frame_build_controls', len(read(out / 'frames/BUILD.json')['rejected_controls'])) + # 8b. layer-end controls on the re-framed final word (v2, not-applicable sites declared in LEC-REASON-PINS-): + # the frame re-optimisation lowers an entering-end tail frame to a dimension no helper_final frame has, so that + # site's 'end at another hyperplane' mutant is replaced by its same-class substitute. + lec('lec-frames', fw, 'LEC-REASON-PINS') + # 9. native locals of the final word + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', fw, '--routing', routing, '--out', local) + pin('canonical_sha256', hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest()) + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json'); pin('program_sha256', {o: checks[o]['sha256'] for o in ('forward', 'backward')}) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + pin('clifford_recipes_sha256', hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest()) + if a.record_pins: (out / ('CHAIN-PINS-%s.json' % a.id)).write_bytes((json.dumps(got, indent=1) + '\n').encode()) + else: assert got == pins, ('chain pins differ', sorted(set(got) ^ set(pins))) + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/PRIO6.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/PRIO6.json new file mode 100644 index 0000000000..069a7bf5a5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/PRIO6.json @@ -0,0 +1 @@ +{"prio": {"0,1,2,3": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "0,1,4,5": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "0,1,6,7": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "2,3,4,5": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "2,3,6,7": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "4,5,6,7": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]]}} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/cgx.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/cgx.py new file mode 100644 index 0000000000..08e80804eb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/cgx.py @@ -0,0 +1,469 @@ +# Round20 early-coordinate-center / own-Y variant, prepared for icekylinx +# with OpenAI Codex assistance. Apache-2.0. Scalar elementary-operation +# helpers below are retained from the attributed PR514 construct_partial.py. +# Adapted by OpenAI Codex for isolated structural research. +# Modified from PR425 by icekylinx with Codex assistance. +"""Full discovery word for Hamming packets with borrowed X and Y registers. + +This changes the scalar architecture. It is not accepted by the old restricted +gx interface: source bases may change until full-frame cleanup, and targets use +an explicitly inverted output basis. No supplier admission is asserted. +""" +import copy,gzip,json,math,time +import itertools as it +from collections import Counter,defaultdict +from fractions import Fraction as Q +from pathlib import Path + +import sys +INPUT=Path(sys.argv[1]);OUT=Path(sys.argv[2]);OUT.mkdir(parents=True,exist_ok=False);D=json.loads((INPUT/'PROTOTYPE.json').read_text()) +P=D['binary_ports'];R=D['root_lines'];v=120;h=9 +modules=json.load(gzip.open(INPUT/'PACKET-PROGRAMS.json.gz')) +# AtomScout: leaver-read K-triangles (schedule from atom1.py / rog.py CP-SAT) +TRI=json.loads(Path(sys.argv[3]).read_text()) +FULLT={(tuple(tr['p']),tr['e']) for tr in TRI['triangles']} +TRI_COORDS={t+8 for tr in TRI['triangles'] for t,_,_ in tr['reads']} +import os as _o +COPYL=json.loads(open(_o.environ['XPARAM']).read()).get('copyl',[]) if _o.environ.get('XPARAM') else [] +NH=504-3*len(FULLT)+len(COPYL) + +def basis(vectors): + b={} + for x in vectors: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def inside(a,b):return basis(a+b)==b +def hyper(p):return basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) +FULL=basis([1<=v,r)) + for col,s in enumerate(ids): + k=next(i for i in range(col,len(regs)) if rows[regs[i]].get(s,Q(0))) + swap(regs[k],regs[col],F) + scale(regs[col],1/rows[regs[col]][s],F) + for i in range(len(regs)): + if i!=col and rows[regs[i]].get(s,Q(0)):add(regs[i],regs[col],-rows[regs[i]][s],F) + assert all(rows[regs[i]]=={s:Q(1)} for i,s in enumerate(ids)) + M=[[Q(R[s][i]) for s in ids] for i in c] + def qr_rank(rs): + bs={} + for r in rs: + r=r.copy() + for i,b in sorted(bs.items()): + if r[i]:q=r[i];r=[x-q*y for x,y in zip(r,b)] + i=next((i for i,x in enumerate(r) if x),None) + if i is not None:q=r[i];bs[i]=[x/q for x in r] + return len(bs) + assert qr_rank(M)==4 + for rr0 in PRIO.get(",".join(map(str,c)),[])+PRIORITY[",".join(map(str,c))]["rows"]: + rr=list(map(Q,rr0)) + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + for i in range(8): + if len(M)==8:break + rr=[Q(i==j) for j in range(8)] + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + assert len(M)==8 + linear(regs,M,F) + for i,r in zip(c,regs): + assert rows[r]=={s:Q(R[s][i]) for s in ids} + block_totals[c,i]=r + +# All centers are complete while Y is still at zero. This is the crucial +# difference from an illegal early-own-Y prefix using the old center order. +centers=[] +for i in range(8): + regs=[block_totals[c,i] for c in sorted(blocks) if i in c] + F=hyper(P[frame[i]]);a=regs[0] + for b in regs[1:]:add(a,b,1,F) + centers.append(a) +centers += [frame[i] for i in range(8)] +center_frames=[cur[r] for r in centers] +assert list(map(len,center_frames))==[8]*8+[1]*8 +assert all(cur[v+t]==() for t in range(v)) + +phase=B +for t,(r,coef,F) in sorted(own_rows.items()): + if t in TRI_COORDS:continue + assert cur[r]==F + add(v+t,r,coef,F) +# requests are needed for TRI coefficients +requests=defaultdict(list) +for pid,pair in enumerate(pairs): + if not pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + requests[key1].append((t,-Q(mat[0][0],2))) + requests[key2].append((u,-Q(mat[0][1],2))) +reqcoef={t:(key,coef) for key,reqs in requests.items() for t,coef in reqs} +def face_info(c,p,eps): + z=blocks[c];keys=[(pp,ee) for pp in it.combinations(c,2) for ee in (-1,1)] + r_local,alpha=z['outputs'][keys.index((p,eps))] + j=[j for j in range(40,len(z['events'])) if z['events'][j][0]==r_local];assert len(j)==1 + return j[0],Q(alpha) +tri_join_counts=Counter();TRILOG=[] +lcopy={} +for s8 in COPYL: + r=s8+8;c=len(cur);cur.append(());rows.append({});shadow.append(None);add(c,r,1,cur[r]);lcopy[r]=c +BF={c:basis([P[x] for x in z['receipt']['source_lines']]) for c,z in blocks.items()} +HYB={(tuple(map(int,h[0])),tuple(map(int,h[1])),int(h[2])) for h in XP.get('hyb',[])} +HYBLOG=[] +def triread(t,blk,r,q): + F=basis(cur[v+t]+cur[r]);assert inside(F,hyper(P[t])),('TRI frame',t,blk,r,cur[v+t],cur[r],hyper(P[t]),[x for x in TRILOG if x[2]==r],HYBLOG) + tri_join_counts[len(F)]+=1;add(v+t,r,q,F);TRILOG.append([t,list(blk),r,str(q),list(F),list(cur[r])]) +for tr in TRI['triangles']: + p,eps=tuple(tr['p']),tr['e'] + hb={blk for _,blk,_ in map(lambda x:(x[0],tuple(x[1]),x[2]),tr['reads']) if (blk,p,eps) in HYB} + own=[];rest=[] + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];r0=r;r=lcopy.get(r,r) + key,coef=reqcoef[t];assert key[1]==p and key[2]==eps,(key,p,eps) + if blk==key[0]: + rr,c0,F0=own_rows[t];assert rr==r0;own.append((t,blk,r,c0)) + else: + j,alpha=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert loc in ev[:2] + rest.append((t,blk,loc,r,coef*alpha)) + if not hb: + # original interleaved order + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:q=own_rows[t][1] + else:j,alpha=face_info(blk,p,eps);q=coef*alpha + triread(t,blk,r,q) + continue + items=[] # (kind, t, reg, q, blk) + for t,blk,r,q in own:items.append(('r',t,r,q,blk,blk in hb)) + for blk in sorted(hb):items.append(('e',None,None,None,blk,True)) + done=set() + for t,blk,loc,r,q in rest: + if blk in hb: + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j] + ws=[x for x in rest if x[0]==t and x[1]==blk];assert len(ws)==2 and ws[0][4]==ws[1][4] and {ws[0][2],ws[1][2]}==set(ev[:2]) + if (t,blk) in done:continue + done.add((t,blk));items.append(('m',t,maps[blk][ev[0]],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + # Original read order with the two half reads collapsed into one M read at the first half's slot; the face event goes + # just before the first M read of its block; own reads of the M register are hoisted ahead of that event. + def evinfo(blk): + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert ev[2]==ev[3]==1,ev + mpb=maps[blk];return mpb[ev[0]],mpb[ev[1]],tuple(blocks[blk]['event_frames'][j]) + items=[] + seen=set() + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:items.append(('r',t,r,own_rows[t][1],blk,blk in hb)) + else: + j,alpha=face_info(blk,p,eps);q=coef*alpha + if blk in hb: + if (t,blk) not in seen:seen.add((t,blk));continue + items.append(('m',t,evinfo(blk)[0],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + for blk in sorted(hb): + k0=min(i for i,x in enumerate(items) if x[0]=='m' and x[4]==blk) + items.insert(k0,('e',None,None,None,blk,True)) + n=len(items) + def step(it,st): + k,t,r,q,blk,h=it;g=lambda x:st.get(x,cur[x]) + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(g(a_))+list(g(b_))) + return {a_:FF,b_:FF} if inside(FF,BF[blk]) else None + F=basis(list(g(v+t))+list(g(r))) + if not inside(F,hyper(P[t])):return None + if h and k=='r' and r==evinfo(blk)[1] and not inside(F,BF[blk]):return None + return {v+t:F,r:F} + def allowed(i,used): + k,t,r,q,blk,h=items[i] + evi=[j for j,x in enumerate(items) if x[0]=='e' and x[4]==blk] if h else [] + if k=='e':return all(j in used for j,x in enumerate(items) if x[0]=='r' and x[4]==blk and x[5] and x[2]==evinfo(blk)[0]) + if k=='m':return evi[0] in used + if k=='r' and h and r==evinfo(blk)[0]:return evi[0] not in used + return True + budget=[int(os.environ.get('HYBBUDGET','300000'))];memo=set() + def dfs(st,used,order): + if len(order)==n:return order + budget[0]-=1 + if budget[0]<0:return None + sig=(used,tuple(sorted(st.items()))) + if sig in memo:return None + memo.add(sig) + for i in range(n): + if i in used or not allowed(i,used):continue + d=step(items[i],st) + if d is None:continue + ns=dict(st);ns.update(d);res=dfs(ns,used|{i},order+[i]) + if res:return res + return None + import sys as _s;_s.setrecursionlimit(20000) + order=dfs({},frozenset(),[]) + assert order,('no feasible hybrid order',p,eps,sorted(hb),budget) + for i in order: + k,t,r,q,blk,h=items[i] + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(cur[a_])+list(cur[b_]));add(a_,b_,1,FF);HYBLOG.append([list(blk),list(p),eps,list(FF)]) + else:triread(t,blk,r,q) + +packets={} +for c,z in sorted(blocks.items()): + mp=maps[c] + keys=[(p,eps) for p in it.combinations(c,2) for eps in (-1,1)] + skipev={face_info(c,p,eps)[0] for p,eps in keys if (p,eps) in FULLT} + for j,(e,F) in enumerate(list(zip(z['events'],z['event_frames']))[40:]): + if j not in early[c] and 40+j not in skipev: + t,s,a,b=e;add(mp[t],mp[s],Q(a,b),tuple(F)) + for key,(r,alpha) in zip(keys,z['outputs']): + if tuple(key) in FULLT:skip();continue + a=mp[r];b=alloc();add(b,a,1,cur[a]) + consumers=sorted(d for d in blocks if d!=c and set(key[0])<=set(d)) + assert len(consumers)==2 + for target,r in zip(consumers,(a,b)):packets[c,key[0],key[1],target]=(r,Q(alpha)) + +# Both tetrahedra use the same partition. A selected key has exactly two +# selected Y loads and no ordinary M consumer. Supply its two raw halves in +# opposite orders and never form that M. Other keys retain the old M path. +second=[];first_join_counts=Counter() +for key,reqs in sorted(requests.items()): + assert len(reqs)==2 + c,p,eps=key + if (p,eps) in FULLT:continue + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d));a,b=ds + for j,(target,coef) in enumerate(sorted(reqs)): + first_source,second_source=(a,b) if j==0 else (b,a) + r,alpha=packets[first_source,p,eps,second_source] + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + first_join_counts[len(F)]+=1;add(v+target,r,coef*alpha,F) + r,alpha=packets[second_source,p,eps,c] + second.append((target,r,coef*alpha)) + +Ms={} +for c in sorted(blocks): + for p in it.combinations(c,2): + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d)) + for eps in (-1,1): + if (c,p,eps) in requests:continue + (a,alpha),(b,beta)=[packets[d,p,eps,c] for d in ds] + F=basis(cur[a]+cur[b]);add(a,b,beta/alpha,F) + Ms[c,p,eps]=(a,alpha) + +consumers=defaultdict(list) +for pid,pair in enumerate(pairs): + for key in pair['keys']:consumers[key].append(pid) +slots={} +for key,uses in sorted(consumers.items()): + assert len(uses)==2 + if key in requests: + assert all(pairs[i]['selected'] for i in uses) + continue + assert all(not pairs[i]['selected'] for i in uses) + a,alpha=Ms[key] + for j,pid in enumerate(uses): + if j==0:r=a + else:r=alloc();add(r,a,1,cur[a]) + slots[pid,key]=(r,alpha) +assert len(cur)-240==NH,len(cur)-240 + +selected_join_counts=Counter() +for target,r,coef in second: + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + selected_join_counts[len(F)]+=1;add(v+target,r,coef,F) +output_basis=[] +for pair in pairs: + if not pair['selected']:continue + (t,u),mat=pair['targets'],pair['matrix'] + F=basis(cur[v+t]+cur[v+u]);assert inside(F,hyper(P[t])) and inside(F,hyper(P[u])) + add(v+t,v+u,1,F);add(v+u,v+t,-Q(1,2),F) + z=-Q(2*mat[1][0],mat[0][0]);scale(v+u,z,F);output_basis.append((t,u,z)) + +for pid,pair in enumerate(pairs): + if pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + (a,alpha),(b,beta)=slots[pid,key1],slots[pid,key2] + F=basis(cur[a]+cur[b]);aa,ab=Q(mat[0][0])*alpha,Q(mat[0][1])*beta + ba,bb=Q(mat[1][0])*alpha,Q(mat[1][1])*beta + add(a,b,ab/aa,F);q=ba/(bb-ba*ab/aa);add(b,a,q,F) + add(v+t,a,-aa/2,hyper(P[t]));add(v+u,b,-(bb-ba*ab/aa)/2,hyper(P[u])) + +for t in range(v): + expected={s:-Q(G[t][s],2) for s in range(v) if s!=t and G[t][s] and s not in frame.values()} if t not in frame.values() else {} + assert rows[v+t]==expected,('side identity',t) + +scatter=[[Q(r[i],4) if t not in frame.values() else Q(0) for i in range(8)]+[Q(t==frame[i]) for i in range(8)] for t,r in enumerate(R)] +precondition=[] +for t,u,z in output_basis: + a,b=scatter[t].copy(),scatter[u].copy() + scatter[t]=[x/2-y/z for x,y in zip(a,b)] + scatter[u]=[x/2+y/z for x,y in zip(a,b)] + precondition.extend([['scale',v+u,(1/z).numerator,(1/z).denominator,[]], + ['add',v+u,v+t,1,2,[]],['add',v+t,v+u,-1,1,[]]]) +for r in range(len(cur)):climb(r,hyper(P[r-v]) if v<=r<2*v else FULL) +H[8]+=8;H[1]+=8 +assert sum(r*z for r,z in H.items())==9*NH+240*8+72,sum(r*z for r,z in H.items()) + +def apply(e,matrix): + if e[0]=='add': + _,t,s,a,b,*_=e;q=Q(a,b) + for j,x in list(matrix[s].items()): + z=matrix[t].get(j,Q(0))+q*x + if z:matrix[t][j]=z + else:matrix[t].pop(j,None) + else: + _,t,a,b,*_=e;q=Q(a,b);matrix[t]={j:q*x for j,x in matrix[t].items()} +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + e[-1]=list(FULL);return e +cut=[['add',v+t,centers[i],q.numerator,q.denominator,None] for t,row in enumerate(scatter) for i,q in enumerate(row) if q] +cleanup=[inverse(e) for e in reversed(A+B) if not v<=e[1]<2*v] +matrix=[{r:Q(1)} if r>k&1:a^=d[k] + if a: + k=a.bit_length()-1 + for j in d: + if d[j]>>k&1:d[j]^=a + d[k]=a + return tuple(d[k] for k in sorted(d,reverse=True)) +def inside(a,b):return basis(a+b)==b +def regs(e):return e[1:3] if e[0]=='add' else e[1:2] +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]=-e[3] + else:e[2],e[3]=e[3],e[2] + return e +def apply(e,M,mapping=None): + t=mapping[e[1]] if mapping is not None else e[1] + if e[0]=='add': + s=mapping[e[2]] if mapping is not None else e[2];q=Q(e[3],e[4]) + for j,a in M[s].items(): + x=M[t].get(j,Q(0))+q*a + if x:M[t][j]=x + else:M[t].pop(j,None) + else: + q=Q(e[2],e[3]);M[t]={j:q*a for j,a in M[t].items()} +def rref(A): + a=[list(map(Q,row)) for row in A];nr=len(a);nc=len(a[0]) if nr else 0;row=0;piv=[] + for c in range(nc): + k=next((i for i in range(row,nr) if a[i][c]),None) + if k is None:continue + a[row],a[k]=a[k],a[row];q=a[row][c];a[row]=[x/q for x in a[row]] + for i in range(nr): + if i!=row and a[i][c]:q=a[i][c];a[i]=[x-q*y for x,y in zip(a[i],a[row])] + piv.append(c);row+=1 + if row==nr:break + return a,piv +def rank(A):return len(rref(A)[1]) +def null(A,nc=None): + if A:a,piv=rref(A);nc=len(a[0]) + else:a=[];piv=[];assert nc is not None + free=[j for j in range(nc) if j not in piv];out=[[Q(0) for j in free] for i in range(nc)] + for k,c in enumerate(free):out[c][k]=Q(1) + for i,c in enumerate(piv): + for k,j in enumerate(free):out[c][k]=-a[i][j] + return out +def mm(A,B): + if not A:return [] + if not B:return [[] for row in A] + bt=list(zip(*B));return [[sum((a*b for a,b in zip(row,col)),Q(0)) for col in bt] for row in A] +def tr(A):return list(map(list,zip(*A))) +def inv(A): + n0=len(A);a,p=rref([row+[Q(i==j) for j in range(n0)] for i,row in enumerate(A)]) + assert p[:n0]==list(range(n0)) + return [row[n0:] for row in a] +def unit(q): + if not q:return False + a=abs(q.numerator);b=q.denominator + return not a&(a-1) and not b&(b-1) +def dyadic(q):return not q.denominator&(q.denominator-1) +def opadd(t,s,q,F):return ['add',t,s,q.numerator,q.denominator,list(F)] +def opscale(t,q,F):return ['scale',t,q.numerator,q.denominator,list(F)] +def eliminate(M,ids,F,skip=()): + """Return legal dyadic row operations taking an invertible sparse matrix to I.""" + skip=set(skip);ops=[];dim=len(M) + def add(i,j,q): + if q: + assert dyadic(q);e=opadd(ids[i],ids[j],q,F);ops.append(e) + for c,x in M[j].items(): + z=M[i].get(c,Q(0))+q*x + if z:M[i][c]=z + else:M[i].pop(c,None) + def scale(i,q): + if q!=1: + assert unit(q);ops.append(opscale(ids[i],q,F));M[i]={c:q*x for c,x in M[i].items()} + def swap(i,j): + if i!=j: + add(i,j,Q(1));add(j,i,Q(-1));add(i,j,Q(1));scale(j,Q(-1)) + for c in range(dim): + if c in skip: + assert M[c]=={c:Q(1)} and all(not M[i].get(c) for i in range(dim) if i!=c) + continue + cand=[i for i in range(c,dim) if i not in skip and M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + if k is None: + # Elementary Euclidean row additions reduce the pivot-column numerator gcd. + assert cand,('singular',c) + while k is None: + cand.sort(key=lambda i:abs(M[i][c]));a=cand[0] + b=next((i for i in cand[1:] if M[i][c]),None) + if b is None:raise ValueError(('non-dyadic determinant pivot',c,M[a][c])) + rat=M[b][c]/M[a][c];q=rat.numerator//rat.denominator + if q==0:q=1 if rat>0 else -1 + add(b,a,Q(-q));cand=[i for i in cand if M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + swap(c,k);scale(c,1/M[c][c]) + for i in range(dim): + if i!=c and M[i].get(c): + assert i not in skip + add(i,c,-M[i][c]) + assert all(row=={i:Q(1)} for i,row in enumerate(M)) + return ops +def realize(A,ids,F): + M=[{j:Q(x) for j,x in enumerate(row) if x} for row in A] + return [inverse(e) for e in reversed(eliminate(M,ids,F))] +# Reconstruct the actual non-target map after the inherited HPE tail. +inherited_tail=[w['cleanup'][i][:-1]+[list(f)] for i,f in w.get('early_cleanup',[])] +mainN=[e for e in w['A']+w['B'] if not v<=e[1]<2*v] +M=[{i:Q(1)} for i in range(len(N))] +for e in mainN+inherited_tail:apply(e,M,ix) +MI=[{i:Q(1)} for i in range(len(N))] +for e in reversed(mainN+inherited_tail):apply(inverse(e),MI,ix) +cur={x:(w['ports'][x],) if xlen(ih):ih.append(j) + if len(ih)==r:break + assert len(ih)==r + endhs=[N[I[j]] for j in ih];endhidx=[hs.index(h) for h in endhs] + kerR=null(RR,NB);Qmat=[[Q(0) for j in range(NB)] for i in range(NB)] + for j,hj in enumerate(endhidx): + for i in range(NB):Qmat[i][hj]=qH[i][j] + other=[j for j in range(NB) if j not in endhidx] + for k,j in enumerate(other): + for i in range(NB):Qmat[i][j]=kerR[i][k] + assert rank(Qmat)==NB + pops=realize(Qmat,hs,());premix+=pops + T=[[Q(i==j)-sum((U[i][k]*L[k][j] for k in range(r)),Q(0)) for j in range(len(I))] for i in range(len(I))] + for k,i in enumerate(ih):T[i]=L[k] + tops=realize(T,[N[i] for i in I],F);tail+=tops + # Right-compose this initial helper premix; other blocks have disjoint H sets. + for row in Mafter: + vals=[row.get(h,Q(0)) for h in H] + if any(vals): + for hj in H:row.pop(hj,None) + for j,hj in enumerate(H): + z=sum((vals[i]*Qmat[i][j] for i in range(NB)),Q(0)) + if z:row[hj]=z + for e in tops:apply(e,Mafter,ix) + ends.update({h:list(F) for h in endhs}) + plans.append(dict(block=b,frame=list(F),registers=[N[i] for i in I],ends=endhs,pairing_rank=r,premix_gates=len(pops),tail_gates=len(tops),Q=[[str(x) for x in row] for row in Qmat],T=[[str(x) for x in row] for row in T])) + print('BLOCK',b,'ends',endhs,'Qops',len(pops),'Tops',len(tops),flush=True) +# Check actual post-tail isolation before constructing the high-frame inverse. +allends=set(ends)|set(map(int,w.get('helper_final',{}))) +for h in allends: + j=ix[h];assert Mafter[j]=={j:Q(1)},('row not isolated',h,Mafter[j]);assert all(not row.get(j) for i,row in enumerate(Mafter) if i!=j),('column not isolated',h) +print('EXACT_ISOLATED',len(ends),'new;',len(allends),'total',round(time.monotonic()-t0,3),flush=True) +fullops=eliminate(copy.deepcopy(Mafter),N,F9,[ix[x] for x in allends]) +print('FULL_INVERSE',len(fullops),round(time.monotonic()-t0,3),flush=True) +# Cancel new cold-axis target responses inside A, after their wrappers. +Dirt=[({h:Q(1)} if h in ends else {}) for h in range(n)] +for e in premix+w['A']+w['cut']+w['B']:apply(e,Dirt) +for e in w['precondition']:apply(e,Dirt) +postcomp=[opadd(y,h,-a,()) for y in range(v,2*v) for h,a in sorted(Dirt[y].items()) if a] +assert all(h in ends for e in postcomp for h in [e[2]]) +new=copy.deepcopy(w);new['A']=postcomp+premix+w['A'];new['cleanup']=inherited_tail+tail+fullops +new['early_cleanup']=[[i,e[-1]] for i,e in enumerate(inherited_tail+tail)] +new['helper_final'].update({str(h):f for h,f in ends.items()}) +new['refactored_cleanup']={'kind':'source_branch_gauge_and_retired_completion_cold44','new_cold_ends':len(ends),'exact_non_target_isolation_checked':True,'high_inverse':'dyadic_sparse_Gauss_Jordan'} +# Derive paid profile by subtracting and adding literal frame-chain counts. +spec=importlib.util.spec_from_file_location('upstream_cold_end',args.upstream_package/'code/build_cold_end.py') +profile_module=importlib.util.module_from_spec(spec);spec.loader.exec_module(profile_module) +oldprof,_=profile_module.chain_profile(w);newprof,_=profile_module.chain_profile(new) +prof=Counter({int(k):z for k,z in w['report']['local_profile'].items()});prof.subtract(oldprof);prof.update(newprof) +widths=Counter(len(basis(new['helper_final'].get(str(h),F9)))-len(basis(new.get('start_extra',{}).get(str(h),[]))) for h in range(224,n)) +new['report'].update(local_profile={str(k):z for k,z in sorted(prof.items()) if z},local_rank_mass=sum(k*z for k,z in prof.items()),width_inventory={str(k):z for k,z in sorted(widths.items()) if z},status='EXACT_COLD44_CONSTRUCTED_PENDING_INDEPENDENT_AUDIT') +raw=json.dumps(new,sort_keys=True,separators=(',',':')).encode();sha=hashlib.sha256(raw).hexdigest();(OUT/'FULL-WORD.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +recipe={'premix':postcomp+premix,'cleanup':new['cleanup'],'early_cleanup':new['early_cleanup'],'cold_ends':{str(h):f for h,f in ends.items()},'refactored_cleanup':new['refactored_cleanup'],'output_content_sha256':sha} +(OUT/'RECIPE.json.gz').write_bytes(gzip.compress(json.dumps(recipe,sort_keys=True,separators=(',',':')).encode(),mtime=0)) +receipt=dict(input_content_sha256=hashlib.sha256(gzip.decompress(WPATH.read_bytes())).hexdigest(),output_content_sha256=sha,blocks=plans,new_cold_ends=len(ends),all_low_ended_helpers=len(allends),premix_gates=len(premix),postwrapper_compensation_gates=len(postcomp),tail_gates=len(tail),inherited_tail_gates=len(inherited_tail),full_inverse_gates=len(fullops),profile=new['report']['local_profile'],width_inventory=new['report']['width_inventory'],rank_mass=new['report']['local_rank_mass'],seconds=time.monotonic()-t0) +(OUT/'CONSTRUCTION.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(json.dumps({k:z for k,z in receipt.items() if k!='blocks'},indent=2),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/port_stage_x.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/port_stage_x.py new file mode 100644 index 0000000000..81ac65ceff --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/port_stage_x.py @@ -0,0 +1,125 @@ +"""Port one 504-helper construction stage onto the K-triangle word. Apache-2.0. Prepared with Claude Code assistance. + +usage: build_port_stage.py --shadow-input I4 --shadow-output O4 --input I8 --map HELPER-MAP.json --gk-dir GK --out DIR + +The shadow pair (I4 -> O4) is one stage of a 504-helper chain, rebuilt in the same run from pinned sources. I8 is the +K-triangle word at the matching point of its own chain, and HELPER-MAP.json is the 504 -> R register map written by +construct_k_triangle.py. Registers below 448 keep their ids; the removed packet copies have no image. + +The port does the following: +* It renumbers I4 and O4 through the map and drops their gates that touch a removed register. +* It matches gates by scalar operation (the gate without its frame), aligning I4 with O4 and I4 with I8 separately. +* It builds O8 in O4 gate order: + * each matched gate is taken from I8, with O4's frame wherever the stage changed that frame; + * each gate the stage introduced is taken from O4; + * each I8-only gate (the K-triangle reads) stays after the O4 image of its I8 predecessor. +* It replays the stage's entrance (start_extra) and target_levels changes. +* It rebuilds the cleanup with the inherited inverse rule. + +The constructor is a search transfer only. The verifier certifies the output independently: the generalised native +audit (exact forward and inverse replay of every column, native frame chains) runs on every ported word, and every +input and output is pinned by content hash.""" +import argparse, copy, difflib, gzip, hashlib, json, sys +from collections import Counter +from pathlib import Path + +assert __debug__, 'Assertions required' +FULL = [256, 128, 64, 32, 16, 8, 4, 2, 1] + + +def regs(g): return (g[1], g[2]) if g[0] == 'add' else (g[1],) + + +def key(g): return json.dumps(g[:-1]) + + +def inverse(e): + e = copy.deepcopy(e) + if e[0] == 'add': e[3] *= -1 + else: e[2], e[3] = e[3], e[2] + e[-1] = list(FULL); return e + + +def align(xs, ys): + """index map xs -> ys over runs of equal scalar operations""" + sm = difflib.SequenceMatcher(None, [key(g) for g in xs], [key(g) for g in ys], autojunk=False) + return {i1 + k: j1 + k for tag, i1, i2, j1, j2 in sm.get_opcodes() if tag == 'equal' for k in range(i2 - i1)} + + +def transfer_section(I4, O4, I8, stats): + a, b = align(I4, O4), align(I4, I8) + o2i = {j: i for i, j in a.items()}; i8from4 = {j: i for i, j in b.items()} + anchor = {j8: a[i4] for j8, i4 in i8from4.items() if i4 in a} + pending, last = {}, -1 + for j8, g in enumerate(I8): + if j8 in anchor: last = anchor[j8] + elif j8 not in i8from4: pending.setdefault(last, []).append(copy.deepcopy(g)); stats['kept_own'] += 1 + else: stats['dropped_by_stage'] += 1 + out = list(pending.get(-1, [])) + for k, g in enumerate(O4): + if k in o2i: + i4 = o2i[k] + if i4 in b: + g8 = copy.deepcopy(I8[b[i4]]) + if I4[i4][-1] != g[-1]: g8[-1] = copy.deepcopy(g[-1]); stats['frames_changed'] += 1 + out.append(g8) + else: + out.append(copy.deepcopy(g)); stats['introduced'] += 1 + out.extend(pending.get(k, [])) + return out + + +def main(): + ap = argparse.ArgumentParser() + for k in ('--shadow-input', '--shadow-output', '--input', '--map', '--gk-dir', '--out'): ap.add_argument(k, type=Path, required=True) + a = ap.parse_args(); assert not a.out.exists() + sys.path.insert(0, str(a.gk_dir)); import gk_word as G, gk_common as C + G.V = C.V = 112 + rd = lambda p: json.loads(gzip.decompress(p.read_bytes())) + enc = lambda x: json.dumps(x, sort_keys=True, separators=(',', ':')).encode(); sha = lambda x: hashlib.sha256(x).hexdigest() + I4, O4, I8 = rd(a.shadow_input), rd(a.shadow_output), rd(a.input) + fm = {int(k): int(v) for k, v in json.loads(a.map.read_text())['map'].items()} + assert all(fm[k] == k for k in fm if k < 448), 'only ids >= 448 may move' + R = I8['report']['R']; EXTRA = set(range(224 + R)) - set(fm.values()); assert len(set(fm.values())) == len(fm) and set(fm.values()) <= set(range(224 + R)), 'map is not injective into the K-triangle registers' + assert I4['report'].get('R', 504) == 504 and len(fm) + len(set(range(728)) - set(fm)) == 728 + rem = set(range(728)) - set(fm) + rn = lambda r: fm[r] + touches = lambda g: any(r in rem for r in regs(g)) + def rg(g): + g = copy.deepcopy(g); g[1] = rn(g[1]) + if g[0] == 'add': g[2] = rn(g[2]) + return g + def rn_word(w): + w = copy.deepcopy(w) + for s in ('A', 'B', 'cut', 'precondition', 'cleanup'): + if s in w: w[s] = [rg(g) for g in w[s] if not touches(g)] + for k in ('start_extra', 'helper_final'): + if k in w: w[k] = {str(rn(int(r))): f for r, f in w[k].items() if int(r) not in rem} + return w + I4r, O4r = rn_word(I4), rn_word(O4) + O8 = copy.deepcopy(I8); stats = {s: Counter() for s in ('A', 'B')} + for s in ('A', 'B'): O8[s] = transfer_section(I4r[s], O4r[s], I8[s], stats[s]) + for k in ('start_extra', 'target_levels'): + x, y = I4r.get(k, {}), O4r.get(k, {}); d = dict(I8.get(k, {})) + for r in set(x) | set(y): + if x.get(r) != y.get(r): + if r in y: d[r] = y[r] + else: d.pop(r, None) + if k in O4 or k in I8: O8[k] = dict(sorted(d.items(), key=lambda kv: int(kv[0]))) + for k in O4: + if k not in ('A', 'B', 'cleanup', 'report', 'start_extra', 'target_levels', 'cut', 'precondition'): + assert O4r[k] == I4r[k], 'stage changed an unported field: ' + k + O8['cleanup'] = [inverse(e) for e in reversed(O8['A'] + O8['B']) if not 112 <= e[1] < 224] + H = G.profile(O8) + ws = [9 - len(G.basis(O8['start_extra'].get(str(224 + h), []))) for h in range(R)] + O8['report'] = dict(I8['report'], local_profile={str(k): v for k, v in sorted(H.items())}, local_rank_mass=sum(k * v for k, v in H.items()), + width_inventory={str(k): v for k, v in sorted(Counter(ws).items())}) + a.out.mkdir(parents=True); (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(enc(O8), mtime=0)) + receipt = dict(status='PORTED_STAGE_PENDING_NATIVE_AUDIT', R=R, removed_504_helpers=sorted(rem), + shadow_input_content_sha256=sha(enc(I4)), shadow_output_content_sha256=sha(enc(O4)), input_content_sha256=sha(enc(I8)), + output_content_sha256=sha(enc(O8)), sections={s: dict(v) for s, v in stats.items()}, local_profile=O8['report']['local_profile'], + scope='Transfer construction only; exactness, frame chains and profile are certified by the native audit run on the output.') + (a.out / 'PORT-STAGE.json').write_text(json.dumps(receipt, indent=2, sort_keys=True) + '\n', newline='\n'); print(json.dumps(receipt, indent=2)) + + +main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/reproduce_notri.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/reproduce_notri.py new file mode 100644 index 0000000000..a85f2acf15 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/notri/reproduce_notri.py @@ -0,0 +1,166 @@ +#!/usr/bin/env python3 +"""Rebuild the no-triangle gauge44 word (R = 504) and its native locals. + +The no-triangle word is #645's gauge44 chain with none of the four (p,-1) K-triangles. In the six K-blocks +{0,1,2,11,12,13}, the completion priority is extended by the 6-row list PRIO6.json, the list blocks 3-10 already use. +Each block then pairs at rank 4, giving 56 rank-four cold ends instead of 44 (PartialK). + +Input: a fresh `construction/reproduce.py --until word` output directory. Its shadow-early and shadow-prefix words and +its hamming inputs are pinned by reproduce.py itself. Steps, each checked exactly: + 1. gauge-forward: cgx.py, #645's construct_gauge_xcentre.py generalised by PartialK. The extra rows come from XPARAM, + and the K-triangle schedule comes from the TRI file. Run on the triangle set {} with XPARAM = PRIO6.json. + 2. port0-3: port_stage_x.py, PR635's build_port_stage.py with the helper map allowed to be injective rather than onto. + With R = 504 and no triangles, the map is onto again. + 3. regroup: PR635's k492 frame-regroup changes, applied where their `before` gate occurs. For this word none occurs, + and that count (0) is pinned. + 4. hpe: PR635's build_hpe.candidates, taken greedily with disjoint registers, and build_hpe.apply. 46 changes, pinned. + 5. cold44: cold44x.py, #645's build_gauge_cold44.py generalised by PartialK to blocks whose helper list includes the + helpers outside the 224+16b ranges (EXTRAH). 56 cold ends; the 14 pairing ranks are pinned to [4]*14 inside cold44x (PAIRING_RANKS) and rechecked here. The output word content sha256 is pinned (3e99ba77...). + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs, as in reproduce.py. +--control-g44 instead runs steps 1-5 with #645's four triangles and no XPARAM. It must reproduce #645's pinned gauge44 +cold44 word (78c7aada...), the same word #645's own reproduce.py builds. This shows the generalised scripts reduce to +#645's constructors. +Apache-2.0. Driver by ColdWitness from PartialK's variant.py; constructors credited above. +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NOTRI_SHA = '3e99ba778ab8a97853f50912776247802b529439937176363f6c42786163b1f9' +G44_SHA = '78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290' +# native-local pins (the strict locals the SPEC was frozen against: PartialK runs/none_p6/local) +CANONICAL_SHA = '4265a3bb7f9b46967dfadfca5f2cc1f5b3e6e8681f16c02590f1b9430c013637' +PROGRAM_SHA = {'forward': '0afda28699e15cf5a5a17aee5475ac608c9fb68b15766d463b93ec8e2df4ae85', + 'backward': '5be6cb4ea7a1da36d7bbe7eb2392873c058dd3cbb3cc2eeadd55ecca9310ca8a'} +CLIFFORD_SHA = '4b5789e43e04d71f02c2d480450ec0b354007d9cf523bda76c7345730806344b' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def dump(p, v): + p.parent.mkdir(parents=True, exist_ok=True); p.write_bytes(gzip.compress(enc(v), mtime=0)) + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--word-dir', type=Path, required=True, help='construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--control-g44', action='store_true', help='rebuild #645 gauge44 (4 triangles) instead; word only') + ap.add_argument('--skip-phases', action='store_true') + ap.add_argument('--word-only', action='store_true', help='stop after the pinned scalar word (input to construction/layers_np)') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + structural = a.main.resolve() / 'research/structural-gain/frontier-composition' + wd = a.word_dir.resolve() + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + # 1. gauge-forward on the chosen K-triangle set + tri = read(up / 'data/TRI-SCHEDULE.json') + if not a.control_g44: + tri = dict(full_pairs=tri['full_pairs'], triangles=[]) + env['XPARAM'] = str(HERE / 'PRIO6.json') + (out / 'TRI.json').write_text(json.dumps(tri)) + raw = out / 'raw' + run('gauge-forward', HERE / 'cgx.py', wd / 'hamming', raw, out / 'TRI.json') + word = raw / 'FULL-WORD.json.gz' + # 2. port stages (same chain as reproduce.py) + chain = [parent / 'complex-local/static44/inputs/RAW504.json.gz', structural / 'global-replay/base/split-centres/FULL-WORD.json.gz', + wd / 'shadow-early/FULL-WORD.json.gz', structural / 'multicold-eight-word/FULL-WORD.json.gz', + wd / 'shadow-prefix/FULL-WORD.json.gz'] + for i, (b, c) in enumerate(zip(chain, chain[1:])): + t = out / ('port%d' % i) + run('port%d' % i, HERE / 'port_stage_x.py', '--shadow-input', b, '--shadow-output', c, '--input', word, + '--map', raw / 'HELPER-MAP.json', '--gk-dir', gk, '--out', t) + word = t / 'FULL-WORD.json.gz' + # 3. PR635 frame regroup where its `before` gate occurs + w = read(word); rg = {json.dumps(c['before']): c['after'] for c in read(up / 'data/recipes/k492-jp8-frame_regroup.json')['changes']} + n = 0 + for part in ('A', 'B'): + for i, e in enumerate(w[part]): + k = json.dumps(e) + if k in rg: w[part][i] = rg[k]; n += 1 + sys.path.insert(0, str(gk)); import gk_word as GW, gk_common as GC + GW.V = GC.V = 112; GW.DATA = GC.DATA = 7168 + H = GW.profile(w) + w['report'].update(local_profile={str(k): z for k, z in sorted(H.items()) if z}, local_rank_mass=sum(r * z for r, z in H.items())) + assert n == (24 if a.control_g44 else 0), ('regroup count', n) + dump(out / 'regroup/FULL-WORD.json.gz', w) + # 4. HPE: PR635's candidates, greedy with disjoint registers + h = load('upstream_hpe', up / 'code/build_hpe.py') + used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + assert len(ch) == (34 if a.control_g44 else 46), ('hpe count', len(ch)) + (out / 'HPE-RECIPE.json').write_text(json.dumps(dict(changes=ch))) + w = h.apply(w, ch); dump(out / 'hpe/FULL-WORD.json.gz', w) + # 5. cold44 (generalised): helpers outside the 224+16b ranges join their blocks + hm = set(read(raw / 'HELPER-MAP.json')['map'].values()) + env['EXTRAH'] = json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)) + ranks = [2, 2, 2, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2] if a.control_g44 else [4] * 14 + env['PAIRING_RANKS'] = json.dumps(ranks) # cold44x asserts every block's pairing rank + run('cold44', HERE / 'cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', wd / 'hamming', '--upstream-package', up) + assert [b['pairing_rank'] for b in read(out / 'cold44/CONSTRUCTION.json')['blocks']] == ranks, 'pairing ranks' + word = out / 'cold44/FULL-WORD.json.gz'; w = read(word) + got = hashlib.sha256(enc(w)).hexdigest() + assert got == (G44_SHA if a.control_g44 else NOTRI_SHA), ('word', got) + rep = w['report'] + if a.control_g44: + print('PASS control: #645 gauge44 word reproduced', got, flush=True); return + assert rep['R'] == 504 and rep['local_rank_mass'] == 5674 + assert rep['local_profile'] == {'1': 2506, '2': 336, '3': 472, '4': 184, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 64, '5': 48, '7': 46, '8': 114, '9': 232}, rep['width_inventory'] + print('PASS no-triangle scalar word', got, flush=True) + if a.word_only: + return + # 6. native locals (PR635, as in reproduce.py) + for k in ('XPARAM', 'EXTRAH', 'PAIRING_RANKS'): env.pop(k, None) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz', '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == CANONICAL_SHA, 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in PROGRAM_SHA.items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == CLIFFORD_SHA, 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/LOCAL-PINS-p6n-k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/LOCAL-PINS-p6n-k4.json new file mode 100644 index 0000000000..c43b391a43 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/LOCAL-PINS-p6n-k4.json @@ -0,0 +1,11 @@ +{ + "word": "P6k4", + "layer_controls": 95, + "promo_controls": 11, + "canonical_sha256": "c0c5734a2eb6984ccd1e314dbcea2a6971b9708e5f611aa8912fcf47f02de61d", + "program_sha256": { + "forward": "6cfedac02e899df7fa50a3e38845982a4e9dbc866e9decc4052e011532bdb30f", + "backward": "207d9352aeea7d56a6da865745a1ad756e28531fbf9bcb0cd54950aac7270381" + }, + "clifford_recipes_sha256": "1c1d037d602b503b35f01a65d0ccc07ac63fde9df501b0a61e3e189a44a779de" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/PROMO-RECIPE-p6n-k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/PROMO-RECIPE-p6n-k4.json new file mode 100644 index 0000000000..3f336c07ea --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/PROMO-RECIPE-p6n-k4.json @@ -0,0 +1,971 @@ +{ + "input_content_sha256": "34b683fa08f054fe725704ec15b1c8da42f846430999d14d0cae0fcd42296fe2", + "groups": [ + 627, + 629, + 630, + 631, + 635, + 637, + 638, + 639, + 651, + 653, + 654, + 655, + 659, + 661, + 662, + 663 + ], + "entrances": { + "627": [ + 408, + 80, + 40, + 6, + 1 + ], + "629": [ + 408, + 80, + 40, + 6, + 1 + ], + "630": [ + 408, + 80, + 40, + 6, + 1 + ], + "631": [ + 408, + 80, + 40, + 6, + 1 + ], + "635": [ + 272, + 144, + 96, + 6, + 1 + ], + "637": [ + 272, + 144, + 96, + 6, + 1 + ], + "638": [ + 272, + 144, + 96, + 6, + 1 + ], + "639": [ + 272, + 144, + 96, + 6, + 1 + ], + "651": [ + 390, + 68, + 34, + 24, + 1 + ], + "653": [ + 390, + 68, + 34, + 24, + 1 + ], + "654": [ + 390, + 68, + 34, + 24, + 1 + ], + "655": [ + 390, + 68, + 34, + 24, + 1 + ], + "659": [ + 298, + 170, + 102, + 30, + 1 + ], + "661": [ + 298, + 170, + 102, + 30, + 1 + ], + "662": [ + 298, + 170, + 102, + 30, + 1 + ], + "663": [ + 298, + 170, + 102, + 30, + 1 + ] + }, + "gate_frames": [ + [ + "B", + 420, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 421, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 422, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 423, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 424, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 425, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 426, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 427, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 428, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 429, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 430, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 431, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 432, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 433, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 434, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 435, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 436, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 437, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 438, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 439, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 440, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 441, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 442, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 443, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 444, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 445, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 446, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 447, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 448, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 449, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 450, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 451, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 452, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 453, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 454, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 455, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 456, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 457, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 458, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 459, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 460, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 461, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 462, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 463, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 464, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 465, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 466, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 467, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ] + ], + "expected": { + "output_content_sha256": "0390ec65dc4d47df1887aabdc2ec5b6ddea3cfc8e65582873fdfeba81d100073", + "local_profile": { + "1": 2572, + "2": 326, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 80, + "5": 32, + "7": 54, + "8": 122, + "9": 216 + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/build_promotion.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/build_promotion.py new file mode 100644 index 0000000000..f1daad34c2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/build_promotion.py @@ -0,0 +1,109 @@ +"""Entrance promotions E4 -> E5 of whole kernel groups: deterministic constructor. Apache-2.0. +BlockInvert (Claude Code research agent) for the gauge44 lineage. + +usage: build_promotion.py --input FULL-WORD.json.gz --recipe PROMO-RECIPE.json --out DIR + +The recipe is data only: + input_content_sha256 sha256 of the decompressed input word (pinned); + entrances {helper: frame vectors}: new start frames (each strictly contains the old one); + gate_frames [[section, index, old frame, new frame], ...]: section 'A' / 'B' (main gates) or 'T' + (early_cleanup entry index); the old frame must match the input exactly (as a span); + expected output_content_sha256, local_profile, width_inventory. +The scalar program is unchanged (only frame annotations and start frames move), so the endpoint, the +zero-target-response entrance condition and every cone are those of the input; the independent audit +(audit_local.py) re-checks all of them, plus monotone chains and the recomputed profile/widths.""" +import argparse, gzip, hashlib, json +from collections import Counter +from pathlib import Path + + +def span(vs): + p = {} + for x in vs: + for k in sorted(p, reverse=True): + if x >> k & 1: x ^= p[k] + if x: + k = x.bit_length() - 1 + for j in list(p): + if p[j] >> k & 1: p[j] ^= x + p[k] = x + return tuple(p[k] for k in sorted(p, reverse=True)) + + +def regs(e): return [e[1]] + ([e[2]] if e[0] == 'add' else []) + + +def chain_profile(w): + """paid climbs of the A, B, early-tail and final chains, target ends included (centre descents unchanged, not counted).""" + v, R = w['report']['v'], w['report']['R']; n = 2*v + R + cur = [() for _ in range(n)] + for i, p in enumerate(w['ports']): cur[i] = span([p]) + for r, f in w.get('start_extra', {}).items(): cur[int(r)] = span(f) + prof = Counter() + + def climb(r, F): + assert span(list(cur[r]) + list(F)) == F, ('nonmonotone', r) + if len(F) > len(cur[r]): prof[len(F) - len(cur[r])] += 1 + cur[r] = F + for part in ('A', 'B'): + for e in w[part]: + for r in regs(e): climb(r, span(e[-1])) + for i, f in w.get('early_cleanup', []): + for r in regs(w['cleanup'][i]): climb(r, span(f)) + full = span([1 << i for i in range(9)]) + final = {int(r): span(f) for r, f in w.get('helper_final', {}).items()} + for r in range(n): + if v <= r < 2*v: # targets end at their port hyperplane (as in the independent audit); counted on both sides + climb(r, span([x for x in range(1, 512) if (x & w['ports'][r - v]).bit_count() % 2 == 0])); continue + climb(r, final.get(r, full)) + return prof + + +def widths(w): + v, R = w['report']['v'], w['report']['R']; full = [1 << i for i in range(9)] + return Counter(len(span(w['helper_final'].get(str(r), full))) - len(span(w['start_extra'].get(str(r), []))) + for r in range(2*v, 2*v + R)) + + +def apply(w, r): + nw = json.loads(json.dumps(w)) + for h, F in r['entrances'].items(): + assert h in nw['start_extra'], ('not an entering helper', h) + old, new = span(nw['start_extra'][h]), span(F) + assert len(new) > len(old) and span(list(old) + list(new)) == new, ('not a promotion', h) + nw['start_extra'][h] = list(new) + for sec, i, old, new in r['gate_frames']: + if sec in ('A', 'B'): + assert span(nw[sec][i][-1]) == span(old), ('gate frame mismatch', sec, i) + nw[sec][i][-1] = list(span(new)) + else: + assert sec == 'T' and span(nw['early_cleanup'][i][1]) == span(old), ('tail frame mismatch', i) + nw['early_cleanup'][i][1] = list(span(new)) + old_prof, new_prof = chain_profile(w), chain_profile(nw) + lp = Counter({int(k): c for k, c in w['report']['local_profile'].items()}); lp.subtract(old_prof); lp.update(new_prof) + assert min(lp.values()) >= 0 + inv = widths(nw) + rep = dict(w['report']) + rep['local_profile'] = {str(k): c for k, c in sorted(lp.items()) if c} + rep['local_rank_mass'] = sum(k*c for k, c in lp.items()) + rep['width_inventory'] = {str(k): c for k, c in sorted(inv.items()) if c} + nw['report'] = rep + return nw + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(); ap.add_argument('--input', type=Path, required=True) + ap.add_argument('--recipe', type=Path, required=True); ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + raw = gzip.decompress(a.input.read_bytes()); r = json.loads(a.recipe.read_text()) + assert hashlib.sha256(raw).hexdigest() == r['input_content_sha256'], 'input word pin' + nw = apply(json.loads(raw), r) + data = json.dumps(nw, separators=(',', ':')).encode() + x = r['expected'] + assert nw['report']['local_profile'] == x['local_profile'], 'profile pin' + assert nw['report']['width_inventory'] == x['width_inventory'], 'width pin' + assert hashlib.sha256(data).hexdigest() == x['output_content_sha256'], 'output word pin' + a.out.mkdir(parents=True, exist_ok=True) + (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(data, mtime=0)) + print('PASS', len(r['entrances']), 'promoted entrances;', len(r['gate_frames']), 'gate frames;', + 'profile', x['local_profile'], 'sha', x['output_content_sha256']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/make_recipe.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/make_recipe.py new file mode 100644 index 0000000000..618d609453 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/make_recipe.py @@ -0,0 +1,12 @@ +"""make_recipe.py BASEWORD SOLUTION.json BUILTWORD OUT: discovery-side recipe writer (CP-SAT solution -> data recipe).""" +import sys, json, gzip, hashlib +base = gzip.decompress(open(sys.argv[1], 'rb').read()); s = json.load(open(sys.argv[2])) +built = gzip.decompress(open(sys.argv[3], 'rb').read()); bw = json.loads(built) +key = {'A': 0, 'B': 1, 'T': 2} +r = dict(input_content_sha256=hashlib.sha256(base).hexdigest(), + groups=sorted(int(h) for h in s['newstarts']), + entrances={h: s['newstarts'][h] for h in sorted(s['newstarts'], key=int)}, + gate_frames=sorted(s['changed'], key=lambda c: (key[c[0]], c[1])), + expected=dict(output_content_sha256=hashlib.sha256(built).hexdigest(), + local_profile=bw['report']['local_profile'], width_inventory=bw['report']['width_inventory'])) +json.dump(r, open(sys.argv[4], 'w'), indent=1) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/promo_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/promo_controls.py new file mode 100644 index 0000000000..20ee51f7db --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/promo_controls.py @@ -0,0 +1,115 @@ +"""Promotion controls: mutate the promoted word / recipe and require rejection at a pinned site. Apache-2.0. +BlockInvert (Claude Code research agent). + +usage: promo_controls.py --input BASE-FULL-WORD.json.gz --recipe PROMO-RECIPE.json --audit audit_local.py --out CONTROLS.json + +Word-level mutants are checked by the independent audit (audit_local.py, imported from the given path; it shares no +code with the constructor); recipe-level mutants by build_promotion.apply / its pins. Each mutant must raise with the +pinned message prefix; the honest word must pass both.""" +import argparse, gzip, hashlib, importlib.util, json, sys, tempfile +from pathlib import Path +sys.path.insert(0, str(Path(__file__).resolve().parent)) +import build_promotion as B + +ap = argparse.ArgumentParser() +for k in ('input', 'recipe', 'audit', 'out'): ap.add_argument('--' + k, type=Path, required=True) +a = ap.parse_args() +s = importlib.util.spec_from_file_location('audit_local', a.audit); AL = importlib.util.module_from_spec(s); s.loader.exec_module(AL) +raw = gzip.decompress(a.input.read_bytes()); base = json.loads(raw); r = json.loads(a.recipe.read_text()) +assert hashlib.sha256(raw).hexdigest() == r['input_content_sha256'] +honest = B.apply(base, r) +v = base['report']['v'] +tmp = Path(tempfile.mkdtemp()) + + +def audit(w): + p = tmp / 'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w, separators=(',', ':')).encode(), mtime=0)) + import io, contextlib + with contextlib.redirect_stdout(io.StringIO()): + AL.run(p, tmp / 'r.json') + + +def first_gate(w, h): + for sec in ('A', 'B'): + for i, e in enumerate(w[sec]): + if h in B.regs(e): return sec, i + raise AssertionError(h) + + +results = [] + + +def expect(name, fn, prefix): + try: + fn(); got = 'ACCEPTED' + except (RuntimeError, AssertionError) as e: + got = str(e.args[0]) if e.args else type(e).__name__ + ok = got.startswith(prefix) + results.append(dict(control=name, expected=prefix, got=got[:160], rejected_at_pinned_site=ok)) + print(('OK ' if ok else 'BAD ') + name + ': ' + got[:120], flush=True) + + +# honest +audit(honest); print('honest word: audit PASS', flush=True) +H = sorted(int(h) for h in r['entrances']) +h0 = str(H[0]); E5 = B.span(r['entrances'][h0]); sec, i = first_gate(honest, int(h0)); F1 = B.span(honest[sec][i][-1]) +full = B.span([1 << k for k in range(9)]) + + +def mut(f): + w = json.loads(json.dumps(honest)); f(w); return w + + +# 1. promoted entrance moved to a dim-5 frame NOT inside its first gate frame +def bad_entrance(w): + for x in range(1, 512): + G = B.span(list(B.span(base['start_extra'][h0])) + [x]) + if len(G) == 5 and B.span(list(G) + list(F1)) != F1: + w['start_extra'][h0] = list(G); return + raise AssertionError('no frame') +expect('entrance_outside_first_gate_frame', lambda: audit(mut(bad_entrance)), 'frame not monotone') +# 2. a raised gauge gate of a promoted helper left at its old (E4) frame +old_of = {(c[0], c[1]): c[2] for c in r['gate_frames']} +assert (sec, i) in old_of, 'first gate of a promoted helper is a raised gate' +expect('raised_gate_missing', lambda: audit(mut(lambda w: w[sec][i].__setitem__(-1, list(B.span(old_of[(sec, i)]))))), 'frame not monotone') +# 2b. per promoted group: its first helper's raised entry gate left at the old frame +for hg in H[4::4]: + sg, ig = first_gate(honest, hg) + if (sg, ig) in old_of: + expect('raised_gate_missing_group_%d' % hg, lambda sg=sg, ig=ig: audit(mut(lambda w: w[sg][ig].__setitem__(-1, list(B.span(old_of[(sg, ig)]))))), 'frame not monotone') +# 3. every raised gate kept but one entrance reverted to E4 (report kept): the paid profile no longer matches +expect('entrance_reverted_profile', lambda: audit(mut(lambda w: w['start_extra'].__setitem__(h0, list(B.span(base['start_extra'][h0]))))), 'paid profile mismatch') +# 4. an E4 helper outside the promoted groups promoted alone (no raised gates) +others = sorted(int(h) for h, f in base['start_extra'].items() if len(B.span(f)) == 4 and h not in r['entrances']) +if others: + h1 = str(others[0]) + expect('ungrouped_promotion', lambda: audit(mut(lambda w: w['start_extra'].__setitem__(h1, list(E5)))), 'frame not monotone') +# 5. recipe-level: wrong old frame for a raised gate; non-promotion entrance; input pin +def r_bad_old(): + q = json.loads(json.dumps(r)); q['gate_frames'][0][2] = list(full); B.apply(base, q) +expect('recipe_gate_old_frame', r_bad_old, "('gate frame mismatch'" if r['gate_frames'][0][0] != 'T' else "('tail frame mismatch'") +def r_demote(): + q = json.loads(json.dumps(r)); q['entrances'][h0] = base['start_extra'][h0]; B.apply(base, q) +expect('recipe_not_a_promotion', r_demote, "('not a promotion'") +def r_pin(): # the driver's own __main__ path on a tampered input word (one gate scalar changed) + import subprocess + t = json.loads(raw); e = t['B'][0] + if e[0] == 'add': e[3] += e[4] + else: e[2] = -e[2] + p = tmp / 'tampered.json.gz'; p.write_bytes(gzip.compress(json.dumps(t, separators=(',', ':')).encode(), mtime=0)) + q = subprocess.run([sys.executable, '-B', str(Path(B.__file__)), '--input', str(p), '--recipe', str(a.recipe), '--out', str(tmp / 'o')], + capture_output=True, text=True) + assert q.returncode == 0, q.stderr.strip().splitlines()[-1].split('AssertionError: ', 1)[-1] +expect('recipe_input_pin', r_pin, 'input word pin') +# 6. scalar tamper inside a promoted group's raised gate (frames intact): exactness must fail +def scal(w): + e = w[sec][i] + if e[0] == 'add': e[3] = e[3] + e[4] + else: e[2] = -e[2] +expect('raised_gate_scalar_tamper', lambda: audit(mut(scal)), '') +results[-1]['rejected_at_pinned_site'] = results[-1]['got'] != 'ACCEPTED' +bad = [x for x in results if not x['rejected_at_pinned_site']] +a.out.write_text(json.dumps(dict(recipe=r['expected']['output_content_sha256'], honest='PASS', controls=results, + rejected=len(results) - len(bad)), indent=1)) +assert not bad, bad +print('PASS', len(results), 'controls rejected at pinned sites') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/reproduce_promo.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/reproduce_promo.py new file mode 100644 index 0000000000..6e04aa71b1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/promo/reproduce_promo.py @@ -0,0 +1,99 @@ +#!/usr/bin/env python3 +"""Rebuild a promoted no-triangle layered word (entrance promotions E4 -> E5) and its native locals. + +Input (--base): `np` = a fresh `construction/layers_np/reproduce_np.py` output (word a9de804f...), or `p6n` = a fresh +`construction/layers_p6n/reproduce_p6n.py` output (word 34b683fa...). Recipe k: PROMO-RECIPE-.json (BlockInvert; +data only; it pins its input word) and LOCAL-PINS-.json. Steps, each +checked exactly: + 1. promotion: BlockInvert's build_promotion.py. It pins the input word and the recipe's output sha, profile and + widths; every old frame must match the input; only frame annotations and start frames move (no scalar change). + 2. promo-controls: BlockInvert's promo_controls.py. The honest word must pass #645's independent audit_local.py, + and its recipe- and word-level mutants must be rejected at their pinned sites (count pinned in LOCAL-PINS). + 3. layer-end-controls on the promoted word, pinned count: ../layers/layer_end_controls.py (LayerReviewer-signed) for + base np; ../layers_p6n/layer_end_controls.py (Q6Reviewer-signed per-end variant) for base p6n. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs; the canonical word, local + programs and Clifford recipes are pinned (LOCAL-PINS). +Moving to another recipe k is a recipe and pins swap; this driver does not change. +Apache-2.0. Driver by ColdWitness around BlockInvert's constructor and controls. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +PKG = HERE.parents[1] +LAYERS = HERE.parent / 'layers' +BASES = {'np': ('layers/FULL-WORD.json.gz', 'a9de804f194eeb39f52a4c6e54c14d93e881bec4b632694249733ed410b58113'), + 'p6n': ('p6n/FULL-WORD.json.gz', '34b683fa08f0')} # p6n: prefix; full pin is the p6n recipe's output sha + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--base', choices=sorted(BASES), default='p6n') + ap.add_argument('--base-dir', type=Path, required=True, help='reproduce_np.py (np) or reproduce_p6n.py (p6n) output') + ap.add_argument('--k', default='p6n-k4', help='recipe id (PROMO-RECIPE-.json)') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + recipe = HERE / ('PROMO-RECIPE-%s.json' % a.k); pins = read(HERE / ('LOCAL-PINS-%s.json' % a.k)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + rel, pin = BASES[a.base]; inp = a.base_dir.resolve() / rel + got = hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() + assert got.startswith(pin) and got == read(recipe)['input_content_sha256'], ('input must be the pinned base word', a.base, got) + if a.base == 'p6n': + assert got == read(HERE.parent / 'layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz')['output_content_sha256'] + run('promotion', HERE / 'build_promotion.py', '--input', inp, '--recipe', recipe, '--out', out / 'promo', portable=False) + word = out / 'promo/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == read(recipe)['expected']['output_content_sha256'] + run('promo-controls', HERE / 'promo_controls.py', '--input', inp, '--recipe', recipe, + '--audit', PKG / 'independent/audit_local.py', '--out', out / 'PROMO-CONTROLS.json', portable=False) + pc = read(out / 'PROMO-CONTROLS.json'); assert pc['honest'] == 'PASS' and pc['rejected'] == pins['promo_controls'], pc['rejected'] + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + ctlpy = (HERE.parent / 'layers_p6n/layer_end_controls.py') if a.base == 'p6n' else (LAYERS / 'layer_end_controls.py') + run('layer-end-controls', ctlpy, word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/reproduce.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/reproduce.py new file mode 100644 index 0000000000..8b51efa646 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/reproduce.py @@ -0,0 +1,194 @@ +#!/usr/bin/env python3 +"""Rebuild the frozen gauge44 delta from two pinned upstream checkouts. + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. +This driver calls the credited upstream constructors unchanged; it runs no +search or optimizer. See ../CONSTRUCTION.md and INPUTS.json. +""" +import argparse +import gzip +import hashlib +import importlib.util +import json +import os +from pathlib import Path +import shutil +import subprocess +import sys +import time + +HERE = Path(__file__).resolve().parent + + +def read(path): + raw = path.read_bytes() + return json.loads(gzip.decompress(raw) if path.suffix == '.gz' else raw) + + +def sha(path, content=False): + raw = path.read_bytes() + if content and path.suffix == '.gz': + raw = gzip.decompress(raw) + return hashlib.sha256(raw).hexdigest() + + +def dump(path, value): + path.parent.mkdir(parents=True, exist_ok=True) + raw = json.dumps(value, sort_keys=True, separators=(',', ':')).encode() + path.write_bytes(gzip.compress(raw, mtime=0) if path.suffix == '.gz' else raw) + + +def load_module(name, path): + spec = importlib.util.spec_from_file_location(name, path) + module = importlib.util.module_from_spec(spec) + spec.loader.exec_module(module) + return module + + +def main(): + assert __debug__, 'Assertions are required; do not use python -O.' + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--main', type=Path, required=True, + help='integer-mult-bounds checkout at the pinned main commit') + parser.add_argument('--pr635', type=Path, required=True, + help='integer-mult-bounds checkout at the pinned PR635 commit') + parser.add_argument('--out', type=Path, required=True, + help='new output directory outside both checkouts') + parser.add_argument('--until', choices=('word', 'local', 'phases'), default='word', + help='default: scalar constructor only; local adds exact native replay and wrappers') + parser.add_argument('--frozen-cold', action='store_true', + help='splice the pinned cold recipe instead of deriving its exact Q/T matrices again') + args = parser.parse_args() + roots = {'main': args.main.resolve(), 'pr635': args.pr635.resolve(), 'delta': HERE} + out = args.out.resolve() + assert not out.exists(), 'Use a new output directory.' + assert not any(out.is_relative_to(root) for root in roots.values()) + pins = read(HERE / 'INPUTS.json') + for family, files in pins['files'].items(): + for relative, expected in files.items(): + path = roots[family] / relative + assert sha(path) == expected, ('input pin', family, relative) + out.mkdir(parents=True) + upstream = roots['pr635'] / 'research/complex-571-cold14-st2' + source = roots['main'] / 'research/complex-k492-owner-repair/vendor/multicold' + joint = source.parent / 'joint_prefix' + base = source / 'vendor/pr558' + parent = base / 'vendor/pr552' + gk = parent / 'complex-local/static44/gk' + hamming = source.parent / 'direct_delivery/inputs/hamming' + structural = roots['main'] / 'research/structural-gain/frontier-composition' + runner = source / 'code/run_portable.py' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', + PYTHONINTMAXSTRDIGITS='0', MULTICOLD_SOURCE=str(source), + GAIN_PR564_SOURCE=str(source)) + env.pop('PYTHONOPTIMIZE', None) + records = [] + + def run(label, script, *arguments): + start = time.monotonic() + log = out / (label + '.log') + print('RUN', label, flush=True) + with log.open('w', encoding='utf-8') as stream: + result = subprocess.run([sys.executable, '-B', str(runner), str(script), + *map(str, arguments)], env=env, stdout=stream, + stderr=subprocess.STDOUT) + records.append({'step': label, 'exit_code': result.returncode, + 'seconds': round(time.monotonic() - start, 3)}) + (out / 'STEPS.json').write_text(json.dumps(records, indent=2) + '\n') + if result.returncode: + raise RuntimeError(label + '\n' + log.read_text()[-6000:]) + print('PASS', label, flush=True) + + def check_word(label, path): + assert sha(path, content=True) == pins['word_content_sha256'][label], ('step pin', label) + return path + + raw504 = parent / 'complex-local/static44/inputs/RAW504.json.gz' + promoted = structural / 'global-replay/base/split-centres/FULL-WORD.json.gz' + multi = structural / 'multicold-eight-word/FULL-WORD.json.gz' + early = out / 'shadow-early' + run('shadow-early', source / 'code/build_cold_kernel.py', '--input', promoted, + '--recipe', source / 'data/EIGHT-COLD.json', '--gk-dir', gk, '--out', early) + early_word = check_word('shadow-early', early / 'FULL-WORD.json.gz') + prefix = out / 'shadow-prefix' + run('shadow-prefix', joint / 'code/build_joint_prefix.py', '--input', multi, + '--recipe', joint / 'data/JOINT-PREFIX.json', '--variant', 'eightcold', + '--gk-dir', gk, '--out', prefix) + prefix_word = check_word('shadow-prefix', prefix / 'FULL-WORD.json.gz') + + inputs = out / 'hamming' + inputs.mkdir() + for name in ('PROTOTYPE.json', 'PACKET-PROGRAMS.json.gz'): + shutil.copyfile(hamming / name, inputs / name) + shutil.copyfile(HERE / 'COMPLETION-PRIORITY.json', inputs / 'COMPLETION-PRIORITY.json') + raw = out / 'raw' + run('gauge-forward', HERE / 'construct_gauge_xcentre.py', inputs, raw, + upstream / 'data/TRI-SCHEDULE.json') + word = check_word('raw', raw / 'FULL-WORD.json.gz') + assert sha(raw / 'HELPER-MAP.json') == pins['helper_map_sha256'] + chain = [raw504, promoted, early_word, multi, prefix_word] + for i, (before, after) in enumerate(zip(chain, chain[1:])): + target = out / ('port' + str(i)) + run('port' + str(i), upstream / 'code/build_port_stage.py', + '--shadow-input', before, '--shadow-output', after, '--input', word, + '--map', raw / 'HELPER-MAP.json', '--gk-dir', gk, '--out', target) + word = check_word('port' + str(i), target / 'FULL-WORD.json.gz') + + changed = read(word) + regroup = read(upstream / 'data/recipes/k492-jp8-frame_regroup.json') + # The inherited changes are B-only and are checked against the actual new gates. + for edit in regroup['changes']: + assert changed[edit['section']][edit['index']] == edit['before'] + changed[edit['section']][edit['index']] = edit['after'] + changed['report'].update(local_profile=regroup['after'], + local_rank_mass=sum(int(r)*n for r, n in regroup['after'].items())) + word = out / 'regroup/FULL-WORD.json.gz' + dump(word, changed) + check_word('regroup', word) + hpe = load_module('upstream_hpe', upstream / 'code/build_hpe.py') + changed = hpe.apply(changed, read(upstream / 'data/recipes/k492-jp8-hyperplane_end.json')['changes']) + word = out / 'hpe/FULL-WORD.json.gz' + dump(word, changed) + check_word('hpe', word) + + target = out / 'cold44' + if args.frozen_cold: + cold = load_module('upstream_cold', upstream / 'code/build_cold_end.py') + changed = cold.apply(changed, read(HERE / 'COLD44-RECIPE.json.gz')) + # Match the exact constructor's descriptive status; this is not an audit assertion. + changed['report']['status'] = 'EXACT_COLD44_CONSTRUCTED_PENDING_INDEPENDENT_AUDIT' + dump(target / 'FULL-WORD.json.gz', changed) + else: + run('cold44-exact', HERE / 'build_gauge_cold44.py', '--input', word, + '--out', target, '--hamming', inputs, '--upstream-package', upstream) + assert read(target / 'RECIPE.json.gz') == read(HERE / 'COLD44-RECIPE.json.gz') + word = check_word('cold44', target / 'FULL-WORD.json.gz') + report = read(word)['report'] + assert report['local_rank_mass'] == 5650 + assert report['local_profile'] == {'1': 2514, '2': 404, '3': 448, '4': 160, '5': 56, '8': 8} + assert report['width_inventory'] == {'4': 52, '5': 48, '7': 34, '8': 114, '9': 244} + print('PASS exact frozen scalar word', word, flush=True) + if args.until == 'word': + return + + local = out / 'local' + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + run('native', upstream / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', routing, '--out', local) + assert sha(local / 'CANONICAL-WORD.json.gz', content=True) == pins['canonical_content_sha256'] + run('ledgers', upstream / 'code/hpe_emit_local.py', local) + run('local-replay', upstream / 'code/hpe_audit_local.py', local) + run('wrappers', upstream / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for orientation, expected in pins['local_program_sha256'].items(): + assert checks[orientation]['sha256'] == expected + if args.until == 'phases': + clifford = parent / 'complex-global/vendor531/vendor/clifford' + run('phases', base / 'code/phases_full.py', local, clifford) + assert sha(local / 'CLIFFORD-RECIPES.json') == pins['clifford_recipes_sha256'] + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/slots/RECIPE-SLOTS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/slots/RECIPE-SLOTS-k8.json new file mode 100644 index 0000000000..acc1a733d6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/slots/RECIPE-SLOTS-k8.json @@ -0,0 +1,991 @@ +{ + "base_sha256": "db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83", + "B_delete": [ + 13, + 15, + 33, + 35, + 39, + 47, + 50, + 893, + 895, + 899, + 901, + 907, + 919, + 926, + 928, + 931, + 933, + 934, + 936, + 939, + 941, + 1170, + 1172, + 1178, + 1180, + 1188, + 1204, + 1215, + 1217, + 1218, + 1220, + 1223, + 1225, + 1226, + 1228 + ], + "B_insert": [ + [ + 13, + [ + "add", + 189, + 454, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 15, + [ + "add", + 185, + 455, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 32, + [ + "add", + 122, + 584, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 33, + [ + "add", + 123, + 585, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 39, + [ + "add", + 179, + 587, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 46, + [ + "add", + 146, + 590, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 47, + [ + "add", + 147, + 591, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 839, + [ + "add", + 544, + 236, + -2, + 1, + [ + 385, + 65, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 840, + [ + "add", + 545, + 238, + -2, + 1, + [ + 385, + 64, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 855, + [ + "add", + 556, + 454, + -2, + 1, + [ + 258, + 130, + 64, + 33, + 24, + 7 + ] + ] + ], + [ + 856, + [ + "add", + 557, + 455, + -2, + 1, + [ + 259, + 131, + 65, + 32, + 24, + 7 + ] + ] + ], + [ + 883, + [ + "add", + 74, + 584, + -1, + 2, + [ + 260, + 132, + 66, + 34, + 24, + 1 + ] + ] + ], + [ + 883, + [ + "add", + 10, + 439, + -1, + 2, + [ + 288, + 160, + 97, + 24, + 4, + 3 + ] + ] + ], + [ + 884, + [ + "add", + 383, + 585, + -1, + 2, + [ + 260, + 132, + 68, + 36, + 24, + 1 + ] + ] + ], + [ + 884, + [ + "add", + 287, + 434, + -1, + 2, + [ + 289, + 161, + 97, + 24, + 5, + 2 + ] + ] + ], + [ + 886, + [ + "add", + 351, + 587, + -1, + 2, + [ + 294, + 166, + 102, + 18, + 12, + 1 + ] + ] + ], + [ + 886, + [ + "add", + 319, + 436, + -1, + 2, + [ + 267, + 139, + 75, + 43, + 25, + 7 + ] + ] + ], + [ + 889, + [ + "add", + 98, + 590, + 1, + 1, + [ + 258, + 132, + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 889, + [ + "add", + 34, + 444, + 1, + 1, + [ + 289, + 160, + 96, + 24, + 4, + 3 + ] + ] + ], + [ + 890, + [ + "add", + 399, + 591, + 1, + 1, + [ + 260, + 130, + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 890, + [ + "add", + 303, + 446, + 1, + 1, + [ + 288, + 161, + 96, + 24, + 4, + 3 + ] + ] + ], + [ + 1170, + [ + "add", + 122, + 584, + -1, + 2, + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1172, + [ + "add", + 123, + 585, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ] + ] + ], + [ + 1178, + [ + "add", + 146, + 590, + 1, + 1, + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1180, + [ + "add", + 147, + 591, + 1, + 1, + [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1188, + [ + "add", + 179, + 587, + -1, + 2, + [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ] + ] + ], + [ + 1204, + [ + "add", + 115, + 436, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ] + ] + ], + [ + 1215, + [ + "add", + 189, + 454, + 1, + 1, + [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 1217, + [ + "add", + 185, + 455, + 1, + 1, + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1217, + [ + "add", + 186, + 439, + -1, + 2, + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1220, + [ + "add", + 187, + 434, + -1, + 2, + [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ] + ] + ], + [ + 1223, + [ + "add", + 213, + 236, + 1, + 1, + [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 1225, + [ + "add", + 209, + 238, + 1, + 1, + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1225, + [ + "add", + 210, + 444, + 1, + 1, + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1228, + [ + "add", + 211, + 446, + 1, + 1, + [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ] + ] + ] + ], + "B_frames": {}, + "tail_insert": [ + [ + 6, + [ + "add", + 98, + 590, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 5, + [ + "add", + 399, + 591, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 4, + [ + "add", + 557, + 455, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 3, + [ + "add", + 383, + 585, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 2, + [ + "add", + 351, + 587, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 1, + [ + "add", + 556, + 454, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 0, + [ + "add", + 74, + 584, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ] + ], + "cleanup_prepend": [ + [ + "add", + 10, + 439, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 544, + 236, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 319, + 436, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 287, + 434, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 545, + 238, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 303, + 446, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 34, + 444, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ] + ], + "local_profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "expect_sha256": "c2b294300760e1fd6eeab8c22c4d13e4633dca40e52cac8da0d68163a76e3ca8", + "variants": [ + { + "X": 444, + "E": 590, + "hold": [ + 34, + 98 + ] + }, + { + "X": 446, + "E": 591, + "hold": [ + 303, + 399 + ] + }, + { + "X": 238, + "E": 455, + "hold": [ + 545, + 557 + ] + }, + { + "X": 434, + "E": 585, + "hold": [ + 287, + 383 + ] + }, + { + "X": 436, + "E": 587, + "hold": [ + 319, + 351 + ] + }, + { + "X": 236, + "E": 454, + "hold": [ + 544, + 556 + ] + }, + { + "X": 439, + "E": 584, + "hold": [ + 10, + 74 + ] + } + ], + "source": "PR #987 (rohanarun) triangle-hybrid slots, transferred to k8 db2c7cfb by MineB; recipe U10k8", + "note": "early-cleanup gate frames in cleanup are kept as in base (package T-frame convention)" +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/slots/SLOT-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/slots/SLOT-PINS-k8.json new file mode 100644 index 0000000000..2702c368f4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/slots/SLOT-PINS-k8.json @@ -0,0 +1,47 @@ +{ + "base_sha256": "db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83", + "word_sha256": "c2b294300760e1fd6eeab8c22c4d13e4633dca40e52cac8da0d68163a76e3ca8", + "canonical_sha256": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "program_sha256": { + "forward": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "backward": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + "clifford_recipes_sha256": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "slot_controls": [ + "C0_identity", + "donation_after", + "donation_after@236", + "donation_after@238", + "donation_after@434", + "donation_after@436", + "donation_after@439", + "donation_after@444", + "donation_after@446", + "drop_preread", + "drop_preread@236", + "drop_preread@238", + "drop_preread@434", + "drop_preread@436", + "drop_preread@439", + "drop_preread@444", + "drop_preread@446", + "drop_restore", + "drop_restore@236", + "drop_restore@238", + "drop_restore@434", + "drop_restore@436", + "drop_restore@439", + "drop_restore@444", + "drop_restore@446", + "recipe", + "restore_full", + "restore_full@236", + "restore_full@238", + "restore_full@434", + "restore_full@436", + "restore_full@439", + "restore_full@444", + "restore_full@446" + ], + "kappa_decimal": "0.00167166528321877" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/slots/verify_slots.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/slots/verify_slots.py new file mode 100644 index 0000000000..fd06b654af --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/slots/verify_slots.py @@ -0,0 +1,122 @@ +#!/usr/bin/env python3 +"""Slot layer on research/gauge44-leaver8 with explicit, hash-checked reuse of a completed k8 chain replay. + +Follows the repository's baseline-reuse pattern (cf. research/complex-t37-owners/verify.py --baseline799): +the completed k8 replay is rechecked against the parent package's pins, and only the new layer is rebuilt. + + 1. parent manifest, then baseline: the completed reproduce_leaver_chain.py --id k8 output; its final word and its + canonical/program/Clifford locals must equal CHAIN-PINS-k8 and the final frame recipe's output pin. + 2. slots: the reviewed construction/barch/build_tri.py (unchanged) with RECIPE-SLOTS-k8.json; output pinned. + All per-slot controls (run_controls.py, unchanged) must reject exactly as pinned. + 3. native locals of the new word (the same steps as reproduce_leaver_chain step 9); canonical/programs/Clifford pinned. + 4. independent audit_local on the new word. + 5. strict global replay (verify_global.py) of this package's data on the new locals. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +PKG = HERE.parents[1] +MUTANTS = ('drop_restore', 'restore_full', 'drop_preread', 'donation_after') # as reproduce_leaver_chain.py +# Complete step receipt of reproduce_leaver_chain.py --id k8 (unchanged driver of the parent package). +CHAIN_STEPS = ['pivot-swap', 'cold44-exact', 'lec-p6n', 'promotion', 'promo-controls', 'lec-promo', 'jx', + 'jx-control-C0_identity', 'jx-control-C1_741_only', 'jx-control-N3_plain_join_moved_reads', 'lec-jx', + 'hybrids', 'hybrid-controls', 'lec-hyb', 'frames', 'lec-frames', + 'native', 'ledgers', 'local-replay', 'wrappers', 'phases'] + + +def read(p): + b = Path(p).read_bytes() + return json.loads(gzip.decompress(b) if str(p).endswith('.gz') else b) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() +def csha(p): return hashlib.sha256(gzip.decompress(Path(p).read_bytes())).hexdigest() +def fsha(p): return hashlib.sha256(Path(p).read_bytes()).hexdigest() + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True, help='repository root') + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--baseline', type=Path, required=True, + help='completed research/gauge44-leaver8 reproduce_leaver_chain.py --id k8 --out directory') + ap.add_argument('--work', type=Path, required=True) + a = ap.parse_args() + root = a.main.resolve(); work = a.work.resolve(); assert not work.exists(); work.mkdir(parents=True) + parent_pkg = root / 'research/gauge44-leaver8' + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = root / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; par = base / 'vendor/pr552' + routing = par / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + env.pop('PYTHONOPTIMIZE', None) + pins = read(HERE / 'SLOT-PINS-k8.json'); steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (work / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT, cwd=root) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (work / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + return (work / (label + '.log')).read_text() + + # 1. parent package and baseline coverage + run('parent-manifest', parent_pkg / 'verify_manifest.py', portable=False) + cp = read(parent_pkg / 'construction/leaver/CHAIN-PINS-k8.json') + fr = read(parent_pkg / 'construction/leaver/FRAME-RECIPE-LV-k8.json') + bl = a.baseline.resolve(); bw = bl / 'frames/FULL-WORD.json.gz'; blocal = bl / 'local' + bsteps = read(bl / 'STEPS.json') + assert [s['step'] for s in bsteps] == CHAIN_STEPS and all(s['exit_code'] == 0 for s in bsteps), 'baseline is not a complete k8 chain replay' + assert csha(bw) == fr['expected']['output_content_sha256'] == pins['base_sha256'], 'baseline final word' + assert hashlib.sha256(gzip.decompress((blocal / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == cp['canonical_sha256'], 'baseline canonical' + chk = read(blocal / 'LOCAL-CHECKS.json') + assert {o: chk[o]['sha256'] for o in ('forward', 'backward')} == cp['program_sha256'], 'baseline programs' + assert fsha(blocal / 'CLIFFORD-RECIPES.json') == cp['clifford_recipes_sha256'], 'baseline Clifford' + for lab in ('lec-p6n', 'lec-promo', 'lec-jx', 'lec-hyb', 'lec-frames'): + c = read(bl / lab / 'COLD-END-CONTROLS.json') + assert c['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(c['rejected']) == cp[lab], 'baseline ' + lab + print('PASS baseline', flush=True) + + # 2. slot layer with the reviewed builder and controls (unchanged files from research/gauge44-leaver8) + barch = parent_pkg / 'construction/barch'; rec = HERE / 'RECIPE-SLOTS-k8.json'; r = read(rec) + assert r['base_sha256'] == pins['base_sha256'] and r['expect_sha256'] == pins['word_sha256'] + (work / 'slots').mkdir(); fw = work / 'slots/FULL-WORD.json.gz' + run('slots', barch / 'build_tri.py', bw, rec, fw, portable=False) + assert csha(fw) == pins['word_sha256'], 'slot word' + run('slot-controls', barch / 'run_controls.py', bw, rec, parent_pkg / 'independent/audit_local.py', work / 'slot-controls', portable=False) + res = read(work / 'slot-controls/controls.json') + want = ['C0_identity', 'recipe', *MUTANTS] + [m + '@' + str(v['X']) for v in r.get('variants', []) for m in MUTANTS] + assert sorted(res) == sorted(want) == sorted(pins['slot_controls']) and all(x['ok'] for x in res.values()), res + + # 3. native locals of the new word + local = work / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', fw, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'] + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + chk = read(local / 'LOCAL-CHECKS.json') + assert {o: chk[o]['sha256'] for o in ('forward', 'backward')} == pins['program_sha256'] + run('phases', base / 'code/phases_full.py', local, par / 'complex-global/vendor531/vendor/clifford') + assert fsha(local / 'CLIFFORD-RECIPES.json') == pins['clifford_recipes_sha256'] + + # 4. independent local audit; 5. strict global replay of this package's data + run('audit-local', PKG / 'independent/audit_local.py', '--word', fw, '--main', root, '--output', work / 'AUDIT-LOCAL.json', portable=False) + assert read(work / 'AUDIT-LOCAL.json')['status'] == 'PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES' + out = run('strict', PKG / 'verify_global.py', '--main', root, '--local', local, '--work', work / 'global', portable=False) + last = [l for l in out.splitlines() if l.startswith('PASS_GAUGE44')][-1] + assert last.split()[1] == pins['kappa_decimal'], last + res = dict(status='PASS_SLOTS_ON_CHECKED_K8_BASELINE', kappa_decimal=pins['kappa_decimal'], strict=last, + baseline=str(bl), steps=steps) + (work / 'RESULT.json').write_text(json.dumps(res, indent=1) + '\n') + print(res['status'], pins['kappa_decimal'], flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/LOCAL-PINS-sw4-P6k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/LOCAL-PINS-sw4-P6k4.json new file mode 100644 index 0000000000..ae26a0f2f1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/LOCAL-PINS-sw4-P6k4.json @@ -0,0 +1,11 @@ +{ + "word": "P6k4sw4", + "sw4_controls": 4, + "layer_controls": 95, + "canonical_sha256": "5f5f163e43e8c21c16e2f10aef0078131d127a1ccacc39e0238d111fbd29f195", + "program_sha256": { + "forward": "36e75fc972766fa42f1b371a055e74976a165c894b816911c3510a88b431ea09", + "backward": "3176ccde98d90e754105e60096598fee348e2455e046290d3674b79dd6b402df" + }, + "clifford_recipes_sha256": "202eeaf5fac0c801b98811c1e140fd0af443090d7f7e05c7b55a4ddc6f6acdab" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/NOTES.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/NOTES.md new file mode 100644 index 0000000000..2a53ffb3b8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/NOTES.md @@ -0,0 +1,21 @@ +# SW4: read-set exchange on 4 entering-copy pairs + +- **Input.** P6k3, sha a38bb414. +- **Output.** sha f35a852b. Strict PASS at κ 0.001659645685315104, which is +3.267e-7 over P6k3 and equal to the ideal. +- **Width.** W 3782 is unchanged, as are start_extra, helper_final, cleanup and the helper numbering. +- **Rebuild.** `python build_sw4.py INPUT OUT [SW4-RECIPE.json]`. It is a deterministic apply of the 16 explicit moves, with 4 pinned controls: C0 (identity), N1 (keeping the pre-read is rejected), N2 (a partial exchange is rejected) and N3 (a wrong-sign pre-read is rejected). + +## Move +For each pair (h,r) in {(461,25), (581,89), (591,415), (603,431)}, where h = E_h + r after h's copy gate: +- every post-copy target read of h becomes a read of r, and that target's entrance pre-read of h is deleted; +- every target read of r becomes a read of h, with the pre-read add(t,h,−c) inserted after h's last pre-read, while h = E_h. + +The B-end state of every register is unchanged (checked mod p). + +## How exhaustive the search was +These 4 are the only positives within an exactly defined family. +- **Copy pair.** h is an entering helper whose first B write is add(h,r,1/1) from a non-target r, and whose only earlier B gates are single target pre-reads. NP has 107 such pairs. +- **Candidates.** Every nonempty subset of one pair's movable reads (target reads of h or r between the copy and the next write of h or r), with all other pairs left unchanged. That is 602 candidates over the 54 pairs that have reads. +- **Outcome.** 564 are frame-illegal. The 38 legal ones are all full single-pair exchanges, and only these 4 are positive. Their gains are additive. + +**What is not covered.** Cross-pair combinations of partial moves were not enumerated. Without a decomposition proof (moves can shrink as well as grow target frames), the result is exhaustive only within this single-pair family. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/SW4-RECIPE-P6k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/SW4-RECIPE-P6k4.json new file mode 100644 index 0000000000..b9dea4152a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/SW4-RECIPE-P6k4.json @@ -0,0 +1,314 @@ +{ + "name": "SW4", + "description": "BRoute read-set exchange on entering-copy pairs (h,r); indices refer to the input word B section", + "input_sha256": "0390ec65dc4d47df1887aabdc2ec5b6ddea3cfc8e65582873fdfeba81d100073", + "output_sha256": "d232183f233899961bf55cac67a18545ed33548d9a7ca7078990d1a83d557c59", + "pairs": { + "461": 25, + "581": 89, + "591": 415, + "603": 431 + }, + "moves": [ + { + "kind": "h2r", + "h": 461, + "r": 25, + "read_index": 856, + "target": 168, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 27 + }, + { + "kind": "h2r", + "h": 461, + "r": 25, + "read_index": 1208, + "target": 128, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 26 + }, + { + "kind": "r2h", + "h": 461, + "r": 25, + "read_index": 873, + "target": 129, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 28, + "preread": [ + "add", + 129, + 461, + 1, + 2 + ] + }, + { + "kind": "r2h", + "h": 461, + "r": 25, + "read_index": 1193, + "target": 169, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 28, + "preread": [ + "add", + 169, + 461, + 1, + 2 + ] + }, + { + "kind": "h2r", + "h": 581, + "r": 89, + "read_index": 860, + "target": 171, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 58 + }, + { + "kind": "h2r", + "h": 581, + "r": 89, + "read_index": 1288, + "target": 192, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 59 + }, + { + "kind": "r2h", + "h": 581, + "r": 89, + "read_index": 953, + "target": 193, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 60, + "preread": [ + "add", + 193, + 581, + 1, + 2 + ] + }, + { + "kind": "r2h", + "h": 581, + "r": 89, + "read_index": 1197, + "target": 175, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 60, + "preread": [ + "add", + 175, + 581, + 1, + 2 + ] + }, + { + "kind": "h2r", + "h": 591, + "r": 415, + "read_index": 868, + "target": 139, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 62 + }, + { + "kind": "h2r", + "h": 591, + "r": 415, + "read_index": 1296, + "target": 160, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 63 + }, + { + "kind": "r2h", + "h": 591, + "r": 415, + "read_index": 961, + "target": 161, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 64, + "preread": [ + "add", + 161, + 591, + -1, + 1 + ] + }, + { + "kind": "r2h", + "h": 591, + "r": 415, + "read_index": 1205, + "target": 143, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 64, + "preread": [ + "add", + 143, + 591, + -1, + 1 + ] + }, + { + "kind": "h2r", + "h": 603, + "r": 431, + "read_index": 876, + "target": 131, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 70 + }, + { + "kind": "h2r", + "h": 603, + "r": 431, + "read_index": 1300, + "target": 163, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 71 + }, + { + "kind": "r2h", + "h": 603, + "r": 431, + "read_index": 965, + "target": 167, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 72, + "preread": [ + "add", + 167, + 603, + -1, + 1 + ] + }, + { + "kind": "r2h", + "h": 603, + "r": 431, + "read_index": 1213, + "target": 135, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 72, + "preread": [ + "add", + 135, + 603, + -1, + 1 + ] + } + ], + "kappa_ideal_in": 0.0016603565408383088, + "kappa_ideal_out": 0.0016606836036204419, + "W": 3778, + "profile_in": { + "1": 2572, + "2": 326, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + }, + "profile_out": { + "1": 2548, + "2": 342, + "3": 438, + "4": 186, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 80, + "5": 32, + "7": 54, + "8": 122, + "9": 216 + }, + "rejection_expected": { + "N1": { + "changed_registers": [ + 168, + 171 + ], + "n": 2 + }, + "N2": { + "first": [ + "cap", + 1192, + 169 + ], + "n": 10 + }, + "N3": { + "changed_registers": [ + 129, + 130, + 169, + 170 + ], + "n": 4 + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/build_sw4.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/build_sw4.py new file mode 100644 index 0000000000..617e0ed06d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/build_sw4.py @@ -0,0 +1,203 @@ +#!/usr/bin/env python3 +"""build_sw4.py INPUT_WORD OUT_DIR [RECIPE] : deterministic, standard-library-only rebuild of the BRoute SW4 word. + +SW4 exchanges the B-phase target read sets of four entering packet copies h and their face registers r +(h = E_h + r after h's copy gate; E_h = h's entering content): + h2r: a post-copy read add(t,h,c) becomes add(t,r,c), and t's entrance pre-read add(t,h,-c) (taken while h = E_h) is deleted; + r2h: a read add(t,r,c) becomes add(t,h,c), and a pre-read add(t,h,-c) is inserted before index insert_preread_before + (right after h's last existing pre-read, still before h's copy gate). +Every register holds the same value at the end of B (checked mod p). Frames: a moved or inserted gate gets the plain join of +its operands' current frames; every other B gate and every early-cleanup tail keeps span(old frame + current operand frames). +Targets must stay inside u_t^perp, and tails and ends must contain the current frame. + +Controls (run on every build; the count is pinned to 4 and all must hold, else exit 1): + C0 the identity recipe (no moves) reproduces the input B and early_cleanup byte for byte; + N1 h2r without deleting the pre-read is rejected by exactness; + N2 a partial exchange (one read only) is rejected by the frame cap; + N3 an inserted pre-read with the wrong sign is rejected by exactness. +Rejection sites are pinned: the recipe's 'rejection_expected' gives, for N1/N3, the exact set of target rows whose B-end +state changes (the mutated target plus its butterfly partner(s)) and, for N2, the first cap violation (kind, B index, +register) and the violation count. Each control must reproduce its pinned site exactly. BUILD.json records the observed +sites under 'rejection'. +Writes OUT_DIR/FULL-WORD.json.gz (sha checked against the recipe) and OUT_DIR/BUILD.json.""" +import sys, json, gzip, hashlib, os +from collections import Counter, defaultdict + +PR = 2147483629 +HERE = os.path.dirname(os.path.abspath(__file__)) +V, HH = 112, 9 + + +def basis(vs): + piv = {} + for a in vs: + while a: + bit = a.bit_length() - 1 + if bit in piv: a ^= piv[bit] + else: + piv[bit] = a; break + for k in sorted(piv): + for j in piv: + if j > k and piv[j] >> k & 1: piv[j] ^= piv[k] + return tuple(piv[k] for k in sorted(piv, reverse=True)) + + +def contained(a, b): return basis(list(a) + list(b)) == tuple(b) +def registers(e): return e[1:3] if e[0] == 'add' else e[1:2] +def hyper(p): return basis([x for x in range(1, 1 << HH) if (x & p).bit_count() % 2 == 0]) +FULL = basis([1 << i for i in range(HH)]) + + +def coef(e): + a, b = (e[3], e[4]) if e[0] == 'add' else (e[2], e[3]) + return a % PR * pow(b % PR, PR - 2, PR) % PR + + +def bend_state(w): + """sparse rows mod p of every register after A + cut + B (identity start).""" + n = 2 * V + w['report']['R']; rows = [{i: 1} for i in range(n)] + for e in w['A'] + w['cut'] + w['B']: + q = coef(e); t = e[1] + if e[0] == 'scale': rows[t] = {k: x * q % PR for k, x in rows[t].items()} + else: + d = rows[t] + for k, x in rows[e[2]].items(): + y = (d.get(k, 0) + q * x) % PR + if y: d[k] = y + else: d.pop(k, None) + return rows + + +def apply_recipe(w, moves, drop_delete=False, wrong_sign=False): + B = [list(e[:-1]) + [list(e[-1]) if e[-1] is not None else None] for e in w['B']] + tag = {}; dele = set(); ins = defaultdict(list) + for m in moves: + i = m['read_index']; e = B[i]; t = m['target']; a, b = m['coef'] + assert e[0] == 'add' and e[1] == t and [e[3], e[4]] == [a, b], ('recipe/word mismatch', m) + if m['kind'] == 'h2r': + assert e[2] == m['h'] + pi = m['delete_preread_index']; g = B[pi] + assert g[:5] == ['add', t, m['h'], -a, b], ('pre-read mismatch', m) + B[i] = ['add', t, m['r'], a, b, e[-1]] + if not drop_delete: dele.add(pi) + else: + assert e[2] == m['r'] + B[i] = ['add', t, m['h'], a, b, e[-1]] + g = list(m['preread']) + if wrong_sign: g[3] = -g[3] + ins[m['insert_preread_before']].append(g + [None]) + tag[i] = 1 + NB, nt = [], [] + for i, e in enumerate(B): + for g in ins.get(i, []): NB.append(g); nt.append(1) + if i in dele: continue + NB.append(e); nt.append(tag.get(i, 0)) + w2 = dict(w); w2['B'] = NB; w2['early_cleanup'] = [list(x) for x in w.get('early_cleanup', [])] + return w2, nt + + +def refit(w, nt): + n = 2 * V + w['report']['R'] + cur = [(p,) for p in w['ports']] + [()] * (n - V) + for q, U in w['start_extra'].items(): cur[int(q)] = basis(U) + for e in w['A']: + for q in registers(e): cur[q] = basis(e[-1]) + prob = [] + for i, e in enumerate(w['B']): + rs = registers(e) + base = [] if nt[i] or e[-1] is None else list(e[-1]) + F = basis(base + [x for q in rs for x in cur[q]]) + for q in rs: + if V <= q < 2 * V and not contained(F, hyper(w['ports'][q - V])): prob.append(('cap', i, q)) + e[-1] = list(F) + for q in rs: cur[q] = F + ne = [] + for i, U in w.get('early_cleanup', []): + rs = registers(w['cleanup'][i]); F = basis(list(U) + [x for q in rs for x in cur[q]]) + for q in rs: + fin = w['helper_final'].get(str(q)) + if fin is not None and not contained(F, basis(fin)): prob.append(('tail', i, q)) + ne.append([i, list(F)]) + for q in rs: cur[q] = F + w['early_cleanup'] = ne + for q in range(2 * V, n): + fin = w['helper_final'].get(str(q)) + if fin is not None and not contained(cur[q], basis(fin)): prob.append(('end', q)) + return prob + + +def profile(w): + n = 2 * V + w['report']['R'] + tail = [w['cleanup'][i][:-1] + [U] for i, U in w.get('early_cleanup', [])] + end = [FULL] * V + [hyper(p) for p in w['ports']] + [FULL] * (n - 2 * V) + for q, U in w['helper_final'].items(): end[int(q)] = basis(U) + start = [(p,) for p in w['ports']] + [()] * (n - V) + for q, U in w['start_extra'].items(): start[int(q)] = basis(U) + cur = list(start); paid = Counter() + def climb(q, U): + U = basis(U); assert contained(cur[q], U), ('monotone', q) + d = len(U) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = U + for sec in ('A', 'B'): + if sec == 'B': + lev = {int(t): basis(U) for t, U in w.get('target_levels', {}).items()} + for q, U in zip(w['centers'], w['center_frames']): + U = basis(U); served = {lev.get(e[1] - V, ()) for e in w['cut'] if e[2] == q} + for T in sorted(served, key=lambda x: -len(x)): + if T != U: paid[len(U) - len(T)] += 1 + U = T + for e in w[sec]: + for q in registers(e): climb(q, e[-1]) + for e in tail: + for q in registers(e): climb(q, e[-1]) + for q, U in enumerate(end): climb(q, U) + widths = Counter(len(end[q]) - len(start[q]) for q in range(2 * V, n)) + return paid, widths + + +def enc(w): return json.dumps(w, sort_keys=True, separators=(',', ':')).encode() + + +def main(): + src, out = sys.argv[1], sys.argv[2] + rec = json.load(open(sys.argv[3] if len(sys.argv) > 3 else os.path.join(HERE, 'SW4-RECIPE.json'))) + raw = gzip.decompress(open(src, 'rb').read()) + assert hashlib.sha256(raw).hexdigest() == rec['input_sha256'], 'input sha mismatch' + w = json.loads(raw); S0 = bend_state(w); moves = rec['moves'] + h0 = moves[0]['h']; one = [m for m in moves if m['h'] == h0] + ctl = {}; why = {}; EXP = rec.get('rejection_expected', {}) + if os.environ.get('SW4_PIN') != '1' and set(EXP) != {'N1', 'N2', 'N3'}: raise SystemExit('recipe rejection_expected must pin exactly N1, N2, N3 (set SW4_PIN=1 to record)') + def diff(S): + d = [q for q in range(len(S0)) if S[q] != S0[q]] + return dict(changed_registers=d[:8], n=len(d)) + w0, nt0 = apply_recipe(w, []); p0 = refit(w0, nt0) + ctl['C0_identity'] = not p0 and w0['B'] == w['B'] and w0['early_cleanup'] == w['early_cleanup'] + m1 = [m for m in one if m['kind'] == 'h2r'][:1] + w1, nt1 = apply_recipe(w, m1, drop_delete=True); d1 = diff(bend_state(w1)) + ctl['N1_keep_preread_rejected'] = d1['n'] > 0 and d1 == EXP.get('N1', d1); why['N1'] = d1 + w2, nt2 = apply_recipe(w, m1); p2 = refit(w2, nt2) + why['N2'] = dict(first=list(p2[0]) if p2 else None, n=len(p2)); ctl['N2_partial_rejected'] = bool(p2) and p2[0][0] == 'cap' and why['N2'] == EXP.get('N2', why['N2']) + w3, nt3 = apply_recipe(w, one, wrong_sign=True); d3 = diff(bend_state(w3)) + ctl['N3_wrong_sign_rejected'] = d3['n'] > 0 and d3 == EXP.get('N3', d3); why['N3'] = d3 + assert len(ctl) == 4 + wn, nt = apply_recipe(w, moves); pr = refit(wn, nt) + assert not pr, ('illegal', pr[:5]) + assert bend_state(wn) == S0, 'B-end state changed' + paid, widths = profile(wn) + wn['report'] = dict(wn['report'], local_profile={str(k): v for k, v in sorted(paid.items())}, + local_rank_mass=sum(k * v for k, v in paid.items())) + data = enc(wn); sha = hashlib.sha256(data).hexdigest() + os.makedirs(out, exist_ok=True) + with open(os.path.join(out, 'FULL-WORD.json.gz'), 'wb') as f: f.write(gzip.compress(data, mtime=0)) + rep = dict(recipe=rec['name'], input_sha256=rec['input_sha256'], output_sha256=sha, expected_output_sha256=rec['output_sha256'], + moves=len(moves), controls=ctl, rejection=why, profile=wn['report']['local_profile'], + widths={str(k): v for k, v in sorted(widths.items()) if k}, W=sum(k * v for k, v in widths.items())) + with open(os.path.join(out, 'BUILD.json'), 'w', newline='\n') as f: f.write(json.dumps(rep, indent=1) + '\n') + print(json.dumps(rep, indent=1)) + ok = all(ctl.values()) and sha == rec['output_sha256'] and rep['profile'] == rec['profile_out'] and rep['W'] == rec['W'] + sys.exit(0 if ok else 1) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/reproduce_sw4.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/reproduce_sw4.py new file mode 100644 index 0000000000..cb038e064b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/construction/sw4/reproduce_sw4.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python3 +"""Rebuild the SW4 word (BRoute read-set exchange on four entering-copy pairs) and its native locals. + +Input: a fresh `construction/promo/reproduce_promo.py --base p6n --k ` output directory; its promoted +word is pinned there and by SW4-RECIPE-.json (this package: --k p6n-k4, P6k4 0390ec65..., recipe P6k4). Steps, each checked exactly: + 1. sw4: BRoute's build_sw4.py (standard library only). It applies the 16 explicit moves of SW4-RECIPE-.json: + every listed read of h becomes a read of its face register r and vice versa, with the entrance pre-reads deleted + or inserted. It checks the B-end state of every register mod p, the frame caps, tails and ends, and the output sha + and profile. Its controls C0, N1, N2 and N3 run on every build and must all hold (count pinned to 4). + 2. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant, Q6Reviewer-signed) on the SW4 word; + the count is pinned in LOCAL-PINS-sw4-.json. + 3. native, ledgers, local-replay, wrappers, phases: PR635's native local programs. The canonical word, local + programs and Clifford recipes are pinned (LOCAL-PINS-sw4-.json). +Apache-2.0. Driver by ColdWitness around BRoute's constructor. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +P6 = HERE.parent / 'layers_p6n' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--promo-dir', type=Path, required=True, help='construction/promo/reproduce_promo.py output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--recipe', default='P6k4', help='SW4-RECIPE-.json and LOCAL-PINS-sw4-.json') + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('SW4-RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-sw4-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + inp = a.promo_dir.resolve() / 'promo/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['input_sha256'], 'input must be the pinned promoted word' + run('sw4', HERE / 'build_sw4.py', inp, out / 'sw4', rfile, portable=False) + b = read(out / 'sw4/BUILD.json') + assert len(b['controls']) == pins['sw4_controls'] and all(b['controls'].values()), b['controls'] + word = out / 'sw4/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['output_sha256'] + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/FRONTIER.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/FRONTIER.json new file mode 100644 index 0000000000..70285d4d85 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/FRONTIER.json @@ -0,0 +1,36 @@ +{ + "checked_at_utc": "2026-10-13 00:54:29 UTC", + "construction_base": { + "pr": 635, + "commit": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f", + "kappa": "0.001636241501576388" + }, + "latest_pr": 642, + "strongest_reported_pr": 641, + "comparisons": [ + { + "number": 641, + "url": "https://github.com/CrocSwap/integer-mult-bounds/pull/641", + "title": "Conditional κ = 0.001636523543003976: cost-neutral pivot swaps with four entering ends (s4) on PR635", + "head_sha": "ff580ea5407aa427d64233523e46ee0afe24a766", + "head_repo": "jeremykothe2/integer-mult-bounds", + "created_at": "2026-10-13T00:36:30Z", + "updated_at": "2026-10-13T00:36:30Z", + "reported_kappa": "0.001636523543003976" + }, + { + "number": 642, + "url": "https://github.com/CrocSwap/integer-mult-bounds/pull/642", + "title": "Conditional κ = 0.001636472098484378: selective helper-249 dispatch", + "head_sha": "d1154e23e13d85fdbf64d4b41fa20bb0f56a428f", + "head_repo": "vectorsss/integer-mult-bounds", + "created_at": "2026-10-13T00:40:40Z", + "updated_at": "2026-10-13T00:46:54Z", + "reported_kappa": "0.001636472098484378" + } + ], + "new_kappa": "0.001649483702558979", + "gain_over_641_percent": "0.791932362379189601995955118466917211009518325743405547289975", + "gain_over_642_percent": "0.795100881136422911010672021375626721886288268207407873093008", + "scope": "PR641/642 values are their public reported conditional witnesses, not independently replayed here. This delta retains the pinned PR635 construction ancestry and replaces its local supplier and whole-owner dispatch; it does not claim to compose the later pivot swaps or helper249 end." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/OWNERS.json.gz new file mode 100644 index 0000000000..8eda84ea0c Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/PLAN.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/PLAN.json new file mode 100644 index 0000000000..0465492a1f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/PLAN.json @@ -0,0 +1,40249 @@ +{ + "status": "FROZEN_EXPLICIT_GAUGE44_WHOLE_OWNER_NOMINATION", + "mode": "gauge44-all72", + "K": 4, + "T": 8, + "M": 73, + "L": 9, + "live": 7168, + "deficit": 2560, + "profile": { + "1": 174763, + "2": 30105, + "3": 31283, + "4": 10224, + "5": 5904, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "windows": { + "0,0": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,2": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,1": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,3": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,5": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,7": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,9": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,11": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,12": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,13": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,14": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,15": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,16": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,17": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "1,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,1": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,3": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,5": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,7": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,9": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,11": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,12": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,13": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,14": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,15": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,16": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,17": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "2,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,1": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,3": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,5": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,7": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,9": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,11": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,12": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,13": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,14": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,15": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,16": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,17": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "3,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,1": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,3": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,5": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,7": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,9": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,11": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,12": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,13": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,14": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,15": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,16": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,17": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "4,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,1": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,3": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,5": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,7": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,9": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,11": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,12": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,13": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,14": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,15": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,16": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,17": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "5,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,1": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,3": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,5": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,7": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,9": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,11": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,12": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,13": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,14": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,15": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,16": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,17": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "6,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,1": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,3": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,5": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,7": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,9": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,11": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,12": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,13": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,14": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,15": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,16": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,17": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "7,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,1": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,3": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,5": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,7": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,9": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,11": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,12": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,13": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,14": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,15": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,16": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,17": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ] + }, + "sides": { + "0": 0, + "2": 1, + "1": 0, + "3": 1, + "4": 0, + "6": 1, + "5": 0, + "7": 1, + "8": 0, + "10": 1, + "9": 0, + "11": 1, + "12": 0, + "13": 1, + "14": 0, + "15": 1, + "16": 0, + "17": 1 + }, + "pairs": { + "0": 1, + "2": 1, + "1": 1, + "3": 1, + "4": 2, + "6": 2, + "5": 2, + "7": 2, + "8": 3, + "10": 3, + "9": 3, + "11": 3, + "12": 0, + "13": 0, + "14": 1, + "15": 1, + "16": 2, + "17": 2 + }, + "solver_status": "g44pack_early_lns_of_deterministic-capacity-matching", + "gap": null, + "provider_calls": [ + { + "time": 0, + "stage": 0, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 1, + "stage": 0, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 2, + "stage": 1, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 3, + "stage": 0, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 4, + "stage": 1, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 5, + "stage": 2, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 6, + "stage": 0, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 7, + "stage": 1, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 8, + "stage": 2, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 9, + "stage": 3, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 10, + "stage": 0, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 11, + "stage": 1, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 12, + "stage": 2, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 13, + "stage": 3, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 14, + "stage": 4, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 15, + "stage": 0, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 16, + "stage": 1, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 17, + "stage": 2, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 18, + "stage": 3, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 19, + "stage": 4, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 20, + "stage": 5, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 21, + "stage": 0, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 22, + "stage": 1, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 23, + "stage": 2, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 24, + "stage": 3, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 25, + "stage": 4, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 26, + "stage": 5, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 27, + "stage": 0, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 28, + "stage": 6, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 29, + "stage": 1, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 30, + "stage": 2, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 31, + "stage": 3, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 32, + "stage": 4, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 33, + "stage": 5, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 34, + "stage": 6, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 35, + "stage": 1, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 36, + "stage": 7, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 37, + "stage": 2, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 38, + "stage": 3, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 39, + "stage": 4, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 40, + "stage": 5, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 41, + "stage": 6, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 42, + "stage": 7, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 43, + "stage": 2, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 44, + "stage": 8, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 45, + "stage": 3, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 46, + "stage": 4, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 47, + "stage": 5, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 48, + "stage": 6, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 49, + "stage": 7, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 50, + "stage": 8, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 51, + "stage": 3, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 52, + "stage": 4, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 53, + "stage": 5, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 54, + "stage": 6, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 55, + "stage": 7, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 56, + "stage": 8, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 57, + "stage": 4, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 58, + "stage": 5, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 59, + "stage": 6, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 60, + "stage": 7, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 61, + "stage": 8, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 62, + "stage": 5, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 63, + "stage": 6, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 64, + "stage": 7, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 65, + "stage": 8, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 66, + "stage": 6, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 67, + "stage": 7, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 68, + "stage": 8, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 69, + "stage": 7, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + { + "time": 70, + "stage": 8, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + { + "time": 71, + "stage": 8, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + } + ], + "per_call_widths": [ + { + "stage": 0, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + } + ], + "provider_registry": { + "gauge44": { + "directory": "providers/gauge44", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "16bc0ebb04b4be6c0ade74badc6a0c0cdba4215eda86e4ff9f13abf8ecebd219", + "LOCAL-PROGRAMS.json.gz": "241fde27d4e43f5a9cb6b128f9f76c5131a53d09f0371676163f914d0b0fef3a", + "LOCAL-CHECKS.json": "2b8b1891a736598010232bfb26abc31973b265a53a2009a3fcfd9138b5ecadb4", + "INDEPENDENT-LOCAL-REPLAY.json": "13dd18297162569532983db1a2ab67926b064330cd7edd3587e7b546b2dedf17", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "CLIFFORD-REVIEW.json": "59e1f8d7215c79081f70b953f85fcbaac2a32a75b8b12448f667b17271405f9e", + "RESIDUAL-ADAPTERS.json": "383f40aadd00a4ac700dfd0d4c22d6c6c0be9a9863116e4d69c7acd23bafae0c" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "backward": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "LOCAL-PROGRAMS.json.gz": "9f41d53659e9be84e20c661560c5687abbf5cd0660cdecbe01ad5eb29e6b8ee3", + "LOCAL-CHECKS.json": "18f09b79835aa352f04d27041d86d1338c5ad0094b888588c1c05af2dc399ffd", + "INDEPENDENT-LOCAL-REPLAY.json": "2d4680965c62db1fde1236c4857b19bf7bc97af58805e6b4109afbc452f0fdd8", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "CLIFFORD-REVIEW.json": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + } + } + }, + "source_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "assignment_sha256": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a", + "source_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/PREPARATION.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/PREPARATION.json new file mode 100644 index 0000000000..8c7796820f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/PREPARATION.json @@ -0,0 +1,45 @@ +{ + "status": "PASS_EXPLICIT_MAP_AND_FRESH_PROVIDER_NOMINATION", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "source_owners_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "idle_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "roles": 35424, + "rank_mass": 520704, + "deficit": 2560, + "remaining": "Independent emitted-controller audit, fresh finite invoice, exact moments and outer assembly." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/SPEC.json new file mode 100644 index 0000000000..6ac06e4b75 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/SPEC.json @@ -0,0 +1,1327 @@ +{ + "schema": "witness-spec/1", + "name": "gauge44-all72", + "data": { + "plan_sha256": "1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08", + "owners_sha256": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a" + }, + "dispatch": [ + [ + 0, + 0, + "gauge44" + ], + [ + 0, + 1, + "gauge44" + ], + [ + 0, + 2, + "gauge44" + ], + [ + 0, + 3, + "gauge44" + ], + [ + 0, + 4, + "gauge44" + ], + [ + 0, + 5, + "gauge44" + ], + [ + 0, + 6, + "gauge44" + ], + [ + 0, + 7, + "gauge44" + ], + [ + 1, + 0, + "gauge44" + ], + [ + 1, + 1, + "gauge44" + ], + [ + 1, + 2, + "gauge44" + ], + [ + 1, + 3, + "gauge44" + ], + [ + 1, + 4, + "gauge44" + ], + [ + 1, + 5, + "gauge44" + ], + [ + 1, + 6, + "gauge44" + ], + [ + 1, + 7, + "gauge44" + ], + [ + 2, + 0, + "gauge44" + ], + [ + 2, + 1, + "gauge44" + ], + [ + 2, + 2, + "gauge44" + ], + [ + 2, + 3, + "gauge44" + ], + [ + 2, + 4, + "gauge44" + ], + [ + 2, + 5, + "gauge44" + ], + [ + 2, + 6, + "gauge44" + ], + [ + 2, + 7, + "gauge44" + ], + [ + 3, + 0, + "gauge44" + ], + [ + 3, + 1, + "gauge44" + ], + [ + 3, + 2, + "gauge44" + ], + [ + 3, + 3, + "gauge44" + ], + [ + 3, + 4, + "gauge44" + ], + [ + 3, + 5, + "gauge44" + ], + [ + 3, + 6, + "gauge44" + ], + [ + 3, + 7, + "gauge44" + ], + [ + 4, + 0, + "gauge44" + ], + [ + 4, + 1, + "gauge44" + ], + [ + 4, + 2, + "gauge44" + ], + [ + 4, + 3, + "gauge44" + ], + [ + 4, + 4, + "gauge44" + ], + [ + 4, + 5, + "gauge44" + ], + [ + 4, + 6, + "gauge44" + ], + [ + 4, + 7, + "gauge44" + ], + [ + 5, + 0, + "gauge44" + ], + [ + 5, + 1, + "gauge44" + ], + [ + 5, + 2, + "gauge44" + ], + [ + 5, + 3, + "gauge44" + ], + [ + 5, + 4, + "gauge44" + ], + [ + 5, + 5, + "gauge44" + ], + [ + 5, + 6, + "gauge44" + ], + [ + 5, + 7, + "gauge44" + ], + [ + 6, + 0, + "gauge44" + ], + [ + 6, + 1, + "gauge44" + ], + [ + 6, + 2, + "gauge44" + ], + [ + 6, + 3, + "gauge44" + ], + [ + 6, + 4, + "gauge44" + ], + [ + 6, + 5, + "gauge44" + ], + [ + 6, + 6, + "gauge44" + ], + [ + 6, + 7, + "gauge44" + ], + [ + 7, + 0, + "gauge44" + ], + [ + 7, + 1, + "gauge44" + ], + [ + 7, + 2, + "gauge44" + ], + [ + 7, + 3, + "gauge44" + ], + [ + 7, + 4, + "gauge44" + ], + [ + 7, + 5, + "gauge44" + ], + [ + 7, + 6, + "gauge44" + ], + [ + 7, + 7, + "gauge44" + ], + [ + 8, + 0, + "gauge44" + ], + [ + 8, + 1, + "gauge44" + ], + [ + 8, + 2, + "gauge44" + ], + [ + 8, + 3, + "gauge44" + ], + [ + 8, + 4, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2896, + "expected_profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "LOCAL-PROGRAMS.json.gz": "9f41d53659e9be84e20c661560c5687abbf5cd0660cdecbe01ad5eb29e6b8ee3", + "LOCAL-CHECKS.json": "18f09b79835aa352f04d27041d86d1338c5ad0094b888588c1c05af2dc399ffd", + "INDEPENDENT-LOCAL-REPLAY.json": "2d4680965c62db1fde1236c4857b19bf7bc97af58805e6b4109afbc452f0fdd8", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "CLIFFORD-REVIEW.json": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + }, + "entering": 192, + "entrance": 384, + "width_digest": "ca0b972f2ee81a50449ce6489ddf9a94be914f84351136c2a9e3f81b37a0e387", + "program_hashes": { + "backward": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "forward": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + "artifacts": { + "LOCAL-CHECKS.json": "2b8b1891a736598010232bfb26abc31973b265a53a2009a3fcfd9138b5ecadb4", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "RESIDUAL-ADAPTERS.json": "383f40aadd00a4ac700dfd0d4c22d6c6c0be9a9863116e4d69c7acd23bafae0c" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 206, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387056, + "local_primitive_bound": 10038040553630, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "forward": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "LOCAL-PROGRAMS.json.gz": "9f41d53659e9be84e20c661560c5687abbf5cd0660cdecbe01ad5eb29e6b8ee3", + "LOCAL-CHECKS.json": "18f09b79835aa352f04d27041d86d1338c5ad0094b888588c1c05af2dc399ffd", + "INDEPENDENT-LOCAL-REPLAY.json": "2d4680965c62db1fde1236c4857b19bf7bc97af58805e6b4109afbc452f0fdd8", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "CLIFFORD-REVIEW.json": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + } + }, + "semantic_phase_sha256": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007", + "expected_local": { + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "coefficient_work_primitive_count": 98333 + }, + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98365 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "0.001636241501576388", + "hosted_residuals": 34560, + "rank_mass": 520704, + "actual_73column_sigmas": 8899, + "cross_replica_helper_roles": 27858, + "idle_remainders": 3783, + "idle_remainder_profile": { + "1": 1099, + "2": 9, + "3": 179, + "7": 54, + "16": 23, + "48": 2419 + }, + "global_profile": { + "1": 174763, + "2": 30105, + "3": 31283, + "4": 10224, + "5": 5904, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "live": 7168, + "physical": 7658, + "conservative_kappa_decimal": "0.001671665280368335", + "kappa_decimal": "0.00167166528321877", + "complex_lower": "837232213634911250061/500000000000000000000000", + "conservative_complex_lower": "104654026525614565773/62500000000000000000000", + "kappa": "167166528321877/100000000000000000", + "assembly_controls_rejected": 69, + "provider_counts": { + "gauge44": 72 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/UPSTREAM-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/UPSTREAM-PINS.json new file mode 100644 index 0000000000..68486b84e3 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/data/UPSTREAM-PINS.json @@ -0,0 +1,23 @@ +{ + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/ADMISSION-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..2e15a10065 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/ADMISSION-CONTROLS.json @@ -0,0 +1,102 @@ +{ + "status": "PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS", + "valid_receipt_kappa": "1649483702558979/1000000000000000000", + "input_sha256": { + "owner_audit": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "fresh_invoice": "14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582", + "inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "assembler_sha256": "7ac28118d69416e4fb67b61216285fb0823310b7635ce1b9025aa3f10119ef6a", + "rejected_controls": [ + "empty_certification_maps", + "failed_invoice_status", + "nonboolean_precision_check", + "wrong_owner_role_count", + "understated_physical_stock", + "changed_profile_same_rank_mass", + "insufficient_finite_C0", + "missing_finite_check", + "wrong_reflected_orientation_selfconsistent_totals", + "missing_selected_call", + "wrong_selected_primitive_sum", + "wrong_selected_coefficient_work_sum", + "unpaid_wrapper_factors", + "wrong_global_compiler", + "wrong_global_adapter_maximum", + "understated_exact_prefix_and_global_sum", + "wrong_global_prefix_sum", + "wrong_row_prefix_reserve", + "wrong_parent_geometry_charge", + "wrong_rebased_geometry_charge", + "wrong_complete_pervertex_envelope", + "wrong_prior_added_complete_invoice", + "wrong_finite_router_bits", + "wrong_finite_literal_bits", + "wrong_finite_physical_stock_bits", + "wrong_finite_row_coefficient", + "reordered_complete_calls", + "understated_explicit_idle_remainders", + "understated_actual_chart_types", + "wrong_cross_replica_role_count", + "old_no_cold_wrapper_counts_selfconsistent", + "gauge44:missing_provider", + "gauge44:missing_backward_orientation", + "gauge44:unpaid_scalar_primitive", + "gauge44:wrong_local_artifact_binding", + "gauge44:false_dirty_restoration", + "gauge44:wrong_declared_provider_count", + "gauge44:wrong_local_compiler", + "gauge44:wrong_local_adapter_charge", + "gauge44:wrong_local_primitive_bound", + "gauge44:forged_provider_and_call_program_hash", + "gauge44:provider_at_wrong_call", + "gauge44:synchronized_forged_source_recipe_hash", + "gauge44:synchronized_forged_phase_review_semantics", + "gauge44:width_order_swap_4_5", + "gauge44:width_inventory_shift_4_5", + "gauge44:width_order_swap_4_7", + "gauge44:width_inventory_shift_4_7", + "gauge44:width_order_swap_4_8", + "gauge44:width_inventory_shift_4_8", + "gauge44:width_order_swap_4_9", + "gauge44:width_inventory_shift_4_9", + "gauge44:width_order_swap_5_7", + "gauge44:width_inventory_shift_5_7", + "gauge44:width_order_swap_5_8", + "gauge44:width_inventory_shift_5_8", + "gauge44:width_order_swap_5_9", + "gauge44:width_inventory_shift_5_9", + "gauge44:width_order_swap_7_8", + "gauge44:width_inventory_shift_7_8", + "gauge44:width_order_swap_7_9", + "gauge44:width_inventory_shift_7_9", + "gauge44:width_order_swap_8_9", + "gauge44:width_inventory_shift_8_9", + "gauge44:cold_helper_width_swap_264", + "gauge44:cold_helper_width_swap_276", + "gauge44:cold_helper_width_swap_288", + "gauge44:cold_helper_width_swap_300", + "wrong_owner_receipt_hash" + ], + "discovery_accepted_controls": [], + "exact_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "conservative_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "recurrence_model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "scope": "Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/ASSEMBLY.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..6feaaf28f5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/ASSEMBLY.json @@ -0,0 +1,336 @@ +{ + "status": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY", + "kappa": "1649483702558979/1000000000000000000", + "kappa_decimal": "0.001649483702558979", + "complex_lower": "1652208994368411824947/1000000000000000000000000", + "complex_decimal": "0.001652208994368411824947", + "bit_lower": "413456747036699736067/250000000000000000000000", + "bit_decimal": "0.001653826988146798944268", + "binding": "complex", + "gain_over_pr635_percent": "0.8093060205252829126484020359439672024956960385078942889840023844750830", + "complex_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "provider_counts": { + "gauge44": 72 + }, + "surcharge_model": { + "complex": false, + "bit": true + }, + "conservative_complex_lower": "826104495740783435531/500000000000000000000000", + "conservative_complex_decimal": "0.001652208991481566871062", + "conservative_kappa": "32989673993633/20000000000000000", + "conservative_kappa_decimal": "0.00164948369968165", + "conservative_moments": [ + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "826104495740783435531/500000000000000000000000", + "accept": true, + "mercator": [ + "-21470727653278306311183666306239229019733127/13479973333575319897333507543509815336818572211270286240551805124608", + "-10735363826639153155591833153119614509866563/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two": [ + "-497746012127833654257/312500000000000000000000000000000000000000000", + "-15927862388090676936081/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "1652208991481566871063/1000000000000000000000000", + "accept": false, + "mercator": [ + "18565857384700607217299861034814026061253869/13479973333575319897333507543509815336818572211270286240551805124608", + "9282928692350303608649930517407013030626935/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two": [ + "3443229403069298452661/2500000000000000000000000000000000000000000000", + "6886463806138596905393/5000000000000000000000000000000000000000000000" + ] + } + ], + "conservative_bootstrap": [ + { + "exponent": "412385685180656454166549264744655866734211385357236332091088842586409092836277952888766748039/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "666562689735263598950072203096262874070849142763667908911157413590907163722047111233251961/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "5064079519162" + }, + { + "exponent": "206525573284761175512531267070234734086162997564863775372380915312260537579589712487639916151798780772051965162106786567177267184954922826291/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "550650434683370218401403641330717978119685136224627619084687739462420410287512360083848201219227948034837893213432822732815045077173709/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1855113791006194394" + }, + { + "exponent": "103263061512703129767826074285021991628452086339263045204373010454992865610677336738873844192820011712987227316937414267052501172258472295234559238219891652401488082322583795324180689654479/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "454894799673548759951916040773618472285736954795626989545007134389322663261126155807179988287012772683062585732947498827741527704765440761780108347598511917677416204675819310345521/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "679580003544484094184219" + }, + { + "exponent": "51631530983423174081587995422763705511463803560275446891594962002253805557680841136478473308373535599630472737022595278769657751046420516932624996624821336420775380353032156988877311591948170858471939709729324917119896056841137038106651/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "375790639099421695705310689571475752224553108405037997746194442319158863521526691626464400369527262977404721230342248953579483067375003375178663579224619646967843011122688408051829141528060290270675082880103943158862961893349/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "248949139107542177224284717390" + }, + { + "exponent": "25815765491899171918007291224739112961920330868753566637213660249294181959373199689620973587025160691744778232655677905734546021049010279802309251671202559782629995396349706306018533755676891522445602691753137818884540822614505790975637207188084426480115050716386268926740408639183319/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "310442336417334495395138597308787496433362786339750705818040626800310379026412974839308255221767344322094265453978950989720197690748328797440217370004603650293693981466244323108477554397308246862181115459177385494209024362792811915573519884949283613731073259591360816681/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "91197023954707297182834066510188309" + }, + { + "exponent": "12907882745949740923714044496984490980274913441911668026309349328701170257318232044487278001962200060194315656940445191119148905788010009704145659576637708822386921067210646238981446862191953905605296632993352808355973492462268456184932241751785844259109396882935383667850308942850925398049837650776722500045535479944043369072892611/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "256457809782632763069983906386213331973690650671298829742681767955512721998037799939805684343059554808880851094211989990295854340423362291177613078932789353761018553137808046094394703367006647191644026507537731543815067758248214155740890603117064616332149691057149074601950162349223277499954464520055956630927107389/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "33408017428823827582408170997246977713592" + }, + { + "exponent": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "211860949629267595905917763118557339746074630342323498329842323479923076414271348172943610266537297523561678444604828304170477174756183602823509499012679952130926209341493804675449744526060322749792981799780854523432131305348883503626747822790388138147666887366091780797609965416860984483895508119543485012756809214016545195996932212567268680463627740404761441/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "12238290024451914798381844566546350371351403966" + } + ], + "conservative_outer": { + "bit_positive": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "211871309820640570776507849056057339746074630342323498329842323479923076414271348172943610266537297523561678444604828304170477174756183602823509499012679952130926209341493804675449744526060322749792981799780854523432131305348883503626747822790388138147666887366091780797609965416860984483895508119543485012756809214016545195996932212567268680463627740404761441/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "14798895504259216564469/500000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "211864855879267595905917763118557339746074630342323498329842323479923076414271348172943610266537297523561678444604828304170477174756183602823509499012679952130926209341493804675449744526060322749792981799780854523432131305348883503626747822790388138147666887366091780797609965416860984483895508119543485012756809214016545195996932212567268680463627740404761441/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "3226970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "105938881881006772823548755625468849232466538663312693107581415665331195883637344244148325210192234490432666278692147614787715025699647196583450579029165219881860281161247889657772741336820819881091815450145901201393315859692641970958850479263888720190329816935223100010666835041543126150166956449806325645393920711500153054513453349474420323686617873270168153231319536372259595238559/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "3226970686487435294937514922398306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "1949898029313512564705062485077601693260258843798594218849232466538663312693107581415665331195883637344244148325210192234490432666278692147614787715025699647196583450579029165219881860281161247889657772741336820819881091815450145901201393315859692641970958850479263888720190329816935223100010666835041543126150166956449806325645393920711500153054513453349474420323686617873270168153231319536372259595238559/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "211877763762013545647097723122247519105503853834474442272502577405292734090773018330620130343460883252213505500994561766872953613077738997995205328535505195947323385831994791995497613599850981255988306350036328463109381512367083722772224390659082789264163260618268990409471817749973618392114710509578068151772325318508425652511919455758054663918431743472548873731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "6453941372974870589874066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "105938881881006772823548755625468849232466538663312693107581415665331195883637344244148325210192234490432666278692147614787715025699647196583450579029165219881860281161247889657772741336820819881091815450145901201393315859692641970958850479263888720190329816935223100010666835041543126150166956449806325645393920711500153054513453349474420323686617873270168153231319536372259595238559/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "3226970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "1953124999999999999999998046875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441", + "epsilon_below_one": "3226970686487435294938979766148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441", + "guard_width": "3226970686487435294938979766148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441", + "K_geometry": "1468070720686487435294937514922398306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441000000000000000000000000", + "K_dominates_log": "3226970686487435294937511695427620252305861263890858752460793720180485901111267816801207467429055763337267340121003649146911577869633062577446775406966631495564164208685860479765336302289331139507447140523460341366797842322595435619426565232122808174942350914051970972451641141915256163878053355288273809072933054217028715897732229455456296751812192044446291176466436640183181321189004150245613674929594231319536372259595238559/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441000000000000000000000000", + "record_suffix": "3226970686487435294938979766148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441", + "phase_local": "25815765491899482359509881777215767430493954674219608057833527949537297049358197907143889096243594353628229063649658007713882913918788029273932770227069101119480010155481703940592314334160595911903037951165714602199155134171574127209673354214274314378230397559204749931119332423368694463803385509997471926021764359068384436379974784474955225370218018598125348910660111527292004248569767395639796508259681231319536372259595238559/15650815765491899482359496213129186453917929249611246249206140267690693498455139348674677350432930901246046813398318462124076538669770462819081698279794402822427332395367766678240945117750710016882737818069305433440951265476398832790388853473122458864232329196165888890238477361464518215199914665319667654990798664348401549394836848634307998775563892373204204637410507057013838654774149443709021923238091528000000000000000000000000", + "phase_boundary": "5163153098379896471900411273866604296150554985222608692921313796982498285246718967402008749898873356790778344994888308452651978102417774008574146391546843177614093861268361347836220133592582405712783495721367849438142753052507894898590575716307222992367040626493637740337443251754122303871653254263347933382832880347144920510495877028556204919104120034761638982254465916221080429250212428422257917786458831319536372259595238559/3130163153098379896471899242625837290783585849922249249841228053538138699691027869734935470086586180249209362679663692424815307733954092563816339655958880564485466479073553335648189023550142003376547563613861086688190253095279766558077770694624491772846465839233177778047695472292903643039982933063933530998159732869680309878967369726861599755112778474640840927482101411402767730954829888741804384647618305600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "3906249999999999999999994137398029313512564705062973358851693260258843798594218849232466538663312693107581415665331195883637344244148325210192234490432666278692147614787715025699647196583450579029165219881860281161247889657772741336820819881091815450145901201393315859692641970958850479263888720190329816935223100010666835041543126150166956449806325645393920711500153054513453349474420323686617873270168153231319536372259595238559/7825407882745949741179748106564593226958964624805623124603070133845346749227569674337338675216465450623023406699159231062038269334885231409540849139897201411213666197683883339120472558875355008441368909034652716720475632738199416395194426736561229432116164598082944445119238680732259107599957332659833827495399332174200774697418424317153999387781946186602102318705253528506919327387074721854510961619045764000000000000000000000000", + "prime_interval_packing": "3226970686487435294938979766148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441", + "alpha_positive": "6453941372974870589876003180325926992047017465784921153228327181517173208003686401135876271545418419093119014910811414656478911590940914962659060381266984298980713629656695259883476021128083249849674399186639521485706026872449534418033249372430166203983500434788082252261311324980033063867386520246730682922766097767222390252338308743956143697298738694971870852779818766913013167957684613873354079691035231319536372259595238559/3912703941372974870589874053282296613479482312402811562301535066922673374613784837168669337608232725311511703349579615531019134667442615704770424569948600705606833098841941669560236279437677504220684454517326358360237816369099708197597213368280614716058082299041472222559619340366129553799978666329916913747699666087100387348709212158576999693890973093301051159352626764253459663693537360927255480809522882000000000000000000000000", + "alpha_below_one": "3906249999999999999999998050101970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441/3912703941372974870589874053282296613479482312402811562301535066922673374613784837168669337608232725311511703349579615531019134667442615704770424569948600705606833098841941669560236279437677504220684454517326358360237816369099708197597213368280614716058082299041472222559619340366129553799978666329916913747699666087100387348709212158576999693890973093301051159352626764253459663693537360927255480809522882000000000000000000000000", + "alpha_below_one_fourth": "971722043970268847057592510140248226377823560634917969422155439549151170445442522891031458130512762908784806822484092468098304755269713011229947082105883192102727561080828722130175593838291292805321439230144950068573748065402477514981270092697723512810537074325579973387643523766552355386127280062232497754002150424007874446924964730900293779775444534630290918985376872296451902755426655617940516122689685268680463627740404761441/3912703941372974870589874053282296613479482312402811562301535066922673374613784837168669337608232725311511703349579615531019134667442615704770424569948600705606833098841941669560236279437677504220684454517326358360237816369099708197597213368280614716058082299041472222559619340366129553799978666329916913747699666087100387348709212158576999693890973093301051159352626764253459663693537360927255480809522882000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "7616768350326285557500319775653039882167791373606484433247966343434288108018622581046971563310328015701829825865161075895589557869002227910163859966123751049011574089086818827397845295188747039740805603604306735718724487573983298303347943047832446306575284675533737097663574583370895732239816339414872288224973497321202082691939259199649525897121646158714570558007923356081995983858955555812385514139941650448054969080495460839451184943579045934071718914451277154414260694865402045088246492924621190212696589297290139170457113442903864489881182428482943926033330169648915939096761899935129171461630633550206360734465453786062702930868880734179253684068961295379267720699847283311726943651844776757599676210480855235552712881882161583412704615034946691001348844134260624423778504120396481/7641999885494091544120847760316985573202113891411741332620185677583346434792548510095057300016079541624046295604647686584021747397348858798379735488180860753138345896175667323359836483276713875431024325229153043672339485095897867573432057359923075617300941990315375434686756524152596784765583332675618972163475910326367944040447679997220702527130806822853615545610599148932538405651440158061045860956099378906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "109581526123935195858875991199089403690805739881701049917094042360749016591858458241700019187473509130645630260190554109341700276625718726922076882767057223743342216318578988348828619352255328397974406884908862624043866454837872438312648368141704224563420929965147163542829892978839594283807651161986351789120720014755211890034065410623963120855092162049451874964783597292570349189769934578612321766094227764306041390883221214284323/15650815765491899482359496213129186453917929249611246249206140267690693498455139348674677350432930901246046813398318462124076538669770462819081698279794402822427332395367766678240945117750710016882737818069305433440951265476398832790388853473122458864232329196165888890238477361464518215199914665319667654990798664348401549394836848634307998775563892373204204637410507057013838654774149443709021923238091528000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "22200664394464068201218451251709660099895005854056647094104902383532607617880707943289313682606481683041097904310248641310014220990880046435669692660714113332169622156571009112311747389402252920606378362090592667540916232777689188179337564977308018790044043286680427258859028858029102001845446586248858526682126585053940466953916779314590626875566608934902197480400674781390017936270431029836796882094847/39127039413729748705898740532822966134794823124028115623015350669226733746137848371686693376082327253115117033495796155310191346674426157047704245699486007056068330988419416695602362794376775042206844545173263583602378163690997081975972133682806147160580822990414722225596193403661295537999786663299169137476996660871003873487092121585769996938909730933010511593526267642534596636935373609272554808095228820000000000000000", + "coordinate_movement_above_kappa": "10645671093425277374066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "1110031263371232723573487267648456363846443552961676153299463968409096919557348090272047099795655280035692239459660757275692945539976668600475632247823420692308128304412001034644752589351972927191566807762302374713866631519976274859112779450258716799194844135292871842206840163091784917027495429323109761375649455402863979797502164611123452055278483501258563223494454062756118770083689704723159380477001945238559/1956351970686487435294937026641148306739741156201405781150767533461336687306892418584334668804116362655755851674789807765509567333721307852385212284974300352803416549420970834780118139718838752110342227258663179180118908184549854098798606684140307358029041149520736111279809670183064776899989333164958456873849833043550193674354606079288499846945486546650525579676313382126729831846768680463627740404761441000000000000000000000000", + "bulk_exposure_above_kappa": "10645671093425277374066190179359429223492150943942660253925369657676501670157676520076923585728651827056389733462702476438321555395171695829522825243816397176490500987320047869073790658506195324550255473939677250207018200219145476567868694651116496373252177209611861852333112633908219202390034583139015516104491880456514987243190785983454804003067787432731319536372259595238559/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "1776051195205154769610040805199746166843293728583375566122611039915075148093769328570726510273849730526925176588968216514993372169703069993545723027644844092273216969109131308014105011034040514809758158625020154740094118503306950504492906399577957362896165433893284659972611028832657977082858826910575517176113252954482193806119667990561170861545481769305629147906474306197819308171802635618263286939847355238559/3130163153098379896471899242625837290783585849922249249841228053538138699691027869734935470086586180249209362679663692424815307733954092563816339655958880564485466479073553335648189023550142003376547563613861086688190253095279766558077770694624491772846465839233177778047695472292903643039982933063933530998159732869680309878967369726861599755112778474640840927482101411402767730954829888741804384647618305600000000000000000000000", + "scalar_work_above_kappa": "8880263801433656593999945205746837398809695601881502636236179802645509585815595870423306888707923869100076505968247781734197922886784684852960024679073360358567496059211854223953864175642761449403799234494009808353187312992167490721880927192316523375710259285631021382807500263401970617673401734510210245714393760171743143231373037371230171461726796628474332341634690236242625047778340565166038289210198395238559/15650815765491899482359496213129186453917929249611246249206140267690693498455139348674677350432930901246046813398318462124076538669770462819081698279794402822427332395367766678240945117750710016882737818069305433440951265476398832790388853473122458864232329196165888890238477361464518215199914665319667654990798664348401549394836848634307998775563892373204204637410507057013838654774149443709021923238091528000000000000000000000000", + "dimension_above_kappa": "38997960586270251316301845736641102066423628127681544476879655184829913347967054011845914241798380690174196649110685527730906557635822484262309975291394039379601361672294696636567259362194234070104902844228989337004000198399595585564944099094883041018756741986893296564447849883019131720859242194729932864368449925377854653195034463468170470015007048381580115282040341292367600843465301172117463128175202209836796882094847/39127039413729748705898740532822966134794823124028115623015350669226733746137848371686693376082327253115117033495796155310191346674426157047704245699486007056068330988419416695602362794376775042206844545173263583602378163690997081975972133682806147160580822990414722225596193403661295537999786663299169137476996660871003873487092121585769996938909730933010511593526267642534596636935373609272554808095228820000000000000000" + }, + "conservative_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "native_correction_gain": "2.877329E-12", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "input_sha256": { + "owner_audit": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "fresh_invoice": "14b0f41c88209e800236ce4ebbf91d83537e22e18807153d90013f7eee57a582", + "inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "bit_supplier": { + "pr": 543, + "repository": "eumemic/integer-mult-bounds", + "commit": "2065fe4f72a914d907f1046603f5a36f17018535", + "path": "research/e8-bit-r420/EXPECTED.json", + "git_blob_sha1": "b61d859826246e0c3dabbe096e57ad7015eadfd5", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "moments": [ + { + "side": "bit", + "surcharge": true, + "endpoint": "413456747036699736067/250000000000000000000000", + "accept": true, + "mercator": [ + "-6043813583626134311169770662156174867615397/13479973333575319897333507543509815336818572211270286240551805124608", + "-12087627167252268622339541324312349735230793/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-1120888283015460284783/2500000000000000000000000000000000000000000000", + "-4483543132061841139029/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "bit", + "surcharge": true, + "endpoint": "1653826988146798944269/1000000000000000000000000", + "accept": false, + "mercator": [ + "70925594433828721229860776023154018035852861/26959946667150639794667015087019630673637144422540572481103610249216", + "70925594433828721229860776023154018035852863/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "13153878434097279887307/5000000000000000000000000000000000000000000000", + "6576941717048639943679/2500000000000000000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "1652208994368411824947/1000000000000000000000000", + "accept": true, + "mercator": [ + "-55206003495063536066288437576157100010340973/26959946667150639794667015087019630673637144422540572481103610249216", + "-55206003495063536066288437576157100010340971/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-409541/200000000000000000000000000000", + "-255963/125000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "413052248592102956237/250000000000000000000000", + "accept": false, + "mercator": [ + "12433583290374778086207959883025413594081851/13479973333575319897333507543509815336818572211270286240551805124608", + "3108395822593694521551989970756353398520463/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "461187/500000000000000000000000000000", + "7379/8000000000000000000000000000" + ] + } + ], + "bootstrap": [ + { + "exponent": "1649542743600042455931461134358912270794693606912716279281008134403270623498780603221028447191/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "2666250768369369015536213432093360793481446087283720718991865596729376501219396778971552809/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "5064079483347" + }, + { + "exponent": "1652204589164911083386484432640289489025149021897345425947753889635290073672223126501218389623373546339575388781616555168351167510162074126123/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4405203500741560512915150716142563026031102654574052246110364709926327776873498781610376626453660424611218383444831648832489837925873877/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1855113771403454575" + }, + { + "exponent": "1652208987090094978998576337786240766660534086861443373660655035146913315879277165163676924708776055203276437395070714960859071205403889642411881787926277109463592646624985153186335324209519/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "7278316845948421010004764864927640966138556626339344964853086684120722834836323075291223944796723562604929285039140928794596110357588118212073722890536407353375014846813664675790481/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "679579993988641861825997" + }, + { + "exponent": "1652208994356386524390258236146418863551774879755022063719897338019847837294371501505671240293619314475646690108109592273827150181689732342308269781370466209964554813416396376690383672659155117856785386209592305112449619050994195020929507/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "12025300556739111644586768036400173244977936280102661980152162705628498494328759706380685524353309891890407726172849818310267657691730218629533790035445186583603623309616327340844882143214613790407694887550380949005804979070493/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "248949134737010607693751277429" + }, + { + "exponent": "1652208994368391956637257519960511230799265177421282452671784475034111396774491992172626292851745263613135372191632272357217972384735656024916702509923614329343687257847797050984709314880436174232795630101904826260914576699263441846242089246520580636287560130658033652250181465888988871/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "19868309739827830494400788909875578717547328215524965888603225508007827373707148254736386864627808367727642782027615264343975083297490076385670656312742152202949015290685119563825767204369898095173739085423300736558153757910753479419363712439869341966347749818534111011129/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "91197022034968984076452463608008868" + }, + { + "exponent": "1652208994368411792120397292749943827369551868295936383281836655065105377018214255389190697215906708539556278748557372371967341676249062946027583420481631348820521456435303894723559097730578401212966050397815062867751401948328742424744594348421190830426806021851515386550389899161084889489269714131354119389927583907816206322316835163/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "32826600055041061804218623184704063616718163344934894622981785744610809302784093291460443721251442627628032658323750937053972416579518368651179478543564696105276440902269421598787033949602184937132248598051671257575255405651578809169573193978148484613449610100838915110510730285868645880610072416092183793677683164837/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "33408016608824820410042813054159823398652" + }, + { + "exponent": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "54236403865473444985322757531373856012223677833356701855562108433750103613216205317749674017279429111191666941964412572017755204082102233807873846052697603811649653124001931643769484305752590079363607667588531497663794802010786736975946662668463760882303208154359895101495664080375908330649263112129857829651622425982305965191606574450050525591080557542210211361/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "12238289681296331108170086600566454188814599875" + } + ], + "outer": { + "bit_positive": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "54239056074467813397147704531373856012223677833356701855562108433750103613216205317749674017279429111191666941964412572017755204082102233807873846052697603811649653124001931643769484305752590079363607667588531497663794802010786736975946662668463760882303208154359895101495664080375908330649263112129857829651622425982305965191606574450050525591080557542210211361/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "29597791005631588175053/1000000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "54237403865473444985322757531373856012223677833356701855562108433750103613216205317749674017279429111191666941964412572017755204082102233807873846052697603811649653124001931643769484305752590079363607667588531497663794802010786736975946662668463760882303208154359895101495664080375908330649263112129857829651622425982305965191606574450050525591080557542210211361/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "27120354141731090904486271526630853538298441768973819553925041993197218449906247096766403258536101339390515721308189006579766410374109152491364905271144719803591018688154913124280930503223171037750160064309959996241818037397725779956475667539429869654414628130517279086986949736979799805429530060400848538917480563728040852737973635602599280489575087164530655629974408919442457789788639/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "826104497184205912446503819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "499173895502815794087553496180246228275110398745026630853538298441768973819553925041993197218449906247096766403258536101339390515721308189006579766410374109152491364905271144719803591018688154913124280930503223171037750160064309959996241818037397725779956475667539429869654414628130517279086986949736979799805429530060400848538917480563728040852737973635602599280489575087164530655629974408919442457789788639/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "54240708283462181808972597292317781544410280685652170481706096210072270256514349755641240267175815894986349192290395292588644012415160269395301828297493521709415845250155878946165672656099466077431963898104225745073715438403119148444448998873661750095566232207697226637734781777167753970754161616465777453743291776719193835333776922827624543285115365935635761310474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "1652208994368411824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "27120354141731090904486271526630853538298441768973819553925041993197218449906247096766403258536101339390515721308189006579766410374109152491364905271144719803591018688154913124280930503223171037750160064309959996241818037397725779956475667539429869654414628130517279086986949736979799805429530060400848538917480563728040852737973635602599280489575087164530655629974408919442457789788639/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "499999999999999999999999500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361", + "epsilon_below_one": "826104497184205912446878819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361", + "guard_width": "826104497184205912446878819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361", + "K_geometry": "375826104497184205912446503819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000000000", + "K_dominates_log": "826104497184205912446502993649274540683688808469549392689976668629771207076928496305244550523913306828275589938682348566856581045095069529521572980141612155697641674495265654305561472676750358020438873087795517117162964216620543226929219712762338530003520574278607528071365328345150260342882704677648330711849556926548888440882324865802019548110565281877964447551277650809104946969306080655644706740866990974408919442457789788639/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000000000", + "record_suffix": "826104497184205912446878819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361", + "phase_local": "6608835977473647299574529731925676614910897593408133417921887576246954470199453202352864021374569577150910767128929639191122970995937746483463208107522848088258087337597252615680424341859665966150472359565233319852911843766450823253236493450978258070308190901502598440490462931431529306733974056518789732073842846503742948668459960919705733578944749832659769484124252040657390357559485218219547502212346517974408919442457789788639/4006608835977473647299571030558030173799116810039786953171693612465848209443568599664054422252400750023225868773931711189284875874229534487947361868717007126780069080757830842241571271850494760695005752555974214631697998719485520320030065455700818193760348194659684561042764682974955861767304104402104161601556563759516793211688660155490175673178096210915179205756083399302683754754960204728644460337681690888000000000000000000000000", + "phase_boundary": "1321767195494729459914505285501537575617449561578570880566997603568386915344573471109326219453969558570215747983560687763222271612310156125573713133917146664202822731332578822423406861463857410145870314785861614494512868178034567229184128890323703062029635173754949606278716551466839892890690534835460450828591838890308379317531836527565195036467781100516404879257532598510386553591321435303979232066993807574408919442457789788639/801321767195494729459914206111606034759823362007957390634338722493169641888713719932810884450480150004645173754786342237856975174845906897589472373743401425356013816151566168448314254370098952139001150511194842926339599743897104064006013091140163638752069638931936912208552936594991172353460820880420832320311312751903358642337732031098035134635619242183035841151216679860536750950992040945728892067536338177600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "999999999999999999999998499173895502815794087553621180246228275110398745026630853538298441768973819553925041993197218449906247096766403258536101339390515721308189006579766410374109152491364905271144719803591018688154913124280930503223171037750160064309959996241818037397725779956475667539429869654414628130517279086986949736979799805429530060400848538917480563728040852737973635602599280489575087164530655629974408919442457789788639/2003304417988736823649785515279015086899558405019893476585846806232924104721784299832027211126200375011612934386965855594642437937114767243973680934358503563390034540378915421120785635925247380347502876277987107315848999359742760160015032727850409096880174097329842280521382341487477930883652052201052080800778281879758396605844330077745087836589048105457589602878041699651341877377480102364322230168840845444000000000000000000000000", + "prime_interval_packing": "826104497184205912446878819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361", + "alpha_positive": "1652208994368411824893256813403046265573290063567918539151678226860797387523003454312047332074007059731509186680146247227466065323786880522941806569767503003206276769224120934501970453988595444896157942584572346079412804152310583230687401675364612750047044906739177658416950700214632981255895754940668530906420026866148039901964844302073978695372591646275365167061702563644574291339331671736202248951078351974408919442457789788639/1001652208994368411824892757639507543449779202509946738292923403116462052360892149916013605563100187505806467193482927797321218968557383621986840467179251781695017270189457710560392817962623690173751438138993553657924499679871380080007516363925204548440087048664921140260691170743738965441826026100526040400389140939879198302922165038872543918294524052728794801439020849825670938688740051182161115084420422722000000000000000000000000", + "alpha_below_one": "999999999999999999999999500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361/1001652208994368411824892757639507543449779202509946738292923403116462052360892149916013605563100187505806467193482927797321218968557383621986840467179251781695017270189457710560392817962623690173751438138993553657924499679871380080007516363925204548440087048664921140260691170743738965441826026100526040400389140939879198302922165038872543918294524052728794801439020849825670938688740051182161115084420422722000000000000000000000000", + "alpha_below_one_fourth": "248760843254223691131329932596473839596871510563918766034079172552254715702700034024691354058701039816720107611690585702102838676815559024973768310225045442420548040778140306705596234036667327098541701592163816068401712115815534436771191689305936524359974717259491107406755841985720108379200610770190841569190865208103651535828576415416062000878258421535923335192693509892773160380845681123804076522154027328525591080557542210211361/1001652208994368411824892757639507543449779202509946738292923403116462052360892149916013605563100187505806467193482927797321218968557383621986840467179251781695017270189457710560392817962623690173751438138993553657924499679871380080007516363925204548440087048664921140260691170743738965441826026100526040400389140939879198302922165038872543918294524052728794801439020849825670938688740051182161115084420422722000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "499172530605535258148204467894413622366649364752615796356468001035238236450517537374493631619363733298840687671623161397641818269266749211349925706761067790808370765075450008284253571239696489935935053566461144738883161010851111679077097990732436701756985527194218092549531868890848622470137186563736328401324517482838466413031374630236137011585720945154073554670290847831565373475503741258489384028773988548652682478935707964970238955117949482840541572436848428721579739524322299623454936983662814547483400718276279308346848253879838472504570106968586516202950572541527287852414234879967747392915408989329348581710341757093094710913631142136741462492078081872395928826622342523315747139483873962190478398751777328141297794530179676308220833366881166966370160352431945328687129458140293472321/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "28052870687819789178396573746942554881945552217657432084634864074395589440468656236697540052712284541524031824211862034164560265703537066127970590931564509850315985626323347506810242717329863369746611861037020660989119250383041371050571010532356065357152905568552022376148940123930219891520143226253589408420900672815173496482569881827632815204222224070568991954864544636207549131231883796360430421207861560214076773241672626630634083/4006608835977473647299571030558030173799116810039786953171693612465848209443568599664054422252400750023225868773931711189284875874229534487947361868717007126780069080757830842241571271850494760695005752555974214631697998719485520320030065455700818193760348194659684561042764682974955861767304104402104161601556563759516793211688660155490175673178096210915179205756083399302683754754960204728644460337681690888000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "384836754948704936518390080286389004763190679571631416083335375425490380659422846922349219607884635917039474482556378074796393103615265478935526743142995785277965991920542575867329404082937294587671597128436387521101370842739834550650414154320702290281170117836140043954928114189095044806439229775952058740929618067139100165877377039970533655513737284898865861249271614750592100633440385821327668139841639581/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000", + "coordinate_movement_above_kappa": "2725291809432824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "384836254122600439334184167840010185009418954682030161109966228963788822428396666476274261601081854366945721579322781333332494443005781200243715749722762195652075144411907481138474123886528313275826510252717318024324541880489994614960374150562520327678895897792615711494357983843509672936956508862939008477909417872568630226278225578888014219241778137636839496851870895240167187797971041451302077059284097370788639/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000000000", + "bulk_exposure_above_kappa": "2725291809432824892760943925532186602852295468626143987776322166643298144437891566249896386783794682250325982720570888808333058035587427982244795917897766192126153947302396188350346875998068356230515694247409920636392332411468502336205197989213263024053337331536239117696791845640104898504335919624091669350736887870142170348377574017694034808393425549949474408919442457789788639/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "615738307091823401245218216011843587867333362425009010759967454219083050824050374629683793365812635917169406268856608178210330305174940487605031795608559666818854739564233026658871766336290690028429468529779150536985364386133895345350622643154941701847597968494299737867314852356966699820820046728510243722467188712852090325804651802870334412550020508576159013601433864090522448178035272944098677943189081119388639/801321767195494729459914206111606034759823362007957390634338722493169641888713719932810884450480150004645173754786342237856975174845906897589472373743401425356013816151566168448314254370098952139001150511194842926339599743897104064006013091140163638752069638931936912208552936594991172353460820880420832320311312751903358642337732031098035134635619242183035841151216679860536750950992040945728892067536338177600000000000000000000000", + "scalar_work_above_kappa": "3078693538763534994962914729844733218351753711683450073693313856942221487044356594932718798856274305786222042957217427856907246168312639552792402951723732692597837087855705512209779952467089375389527690151772030672034137779668836469513273230807436359647086722645596019178854783167174986582031117294603419664416744342542331387419864858681749807837939131928900525596772198494311892232053742200595754038175574437788639/4006608835977473647299571030558030173799116810039786953171693612465848209443568599664054422252400750023225868773931711189284875874229534487947361868717007126780069080757830842241571271850494760695005752555974214631697998719485520320030065455700818193760348194659684561042764682974955861767304104402104161601556563759516793211688660155490175673178096210915179205756083399302683754754960204728644460337681690888000000000000000000000000", + "dimension_above_kappa": "499173895502815794472389376128951164793500479031415635616728978013400389902889300467483577877872753169445986011143172018378864998277686263802972870025639588088018108048266929997769582939230730780453685013440517758709347288500697481097612660777232276430370629988241720150824532464270561234015101138832024606244659306012459589468535547702828206730115013606136254794226859986030391904901589159511543091230174460327668139841639581/500826104497184205912446378819753771724889601254973369146461701558231026180446074958006802781550093752903233596741463898660609484278691810993420233589625890847508635094728855280196408981311845086875719069496776828962249839935690040003758181962602274220043524332460570130345585371869482720913013050263020200194570469939599151461082519436271959147262026364397400719510424912835469344370025591080557542210211361000000000000000000" + }, + "controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the same cited unchanged PR543 bit supplier as PR635. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/BINDING.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/BINDING.json new file mode 100644 index 0000000000..b03160c67a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/BINDING.json @@ -0,0 +1,25 @@ +{ + "status": "PASS_FROZEN_048_ALLCOLD_DISPATCH_FRESH_PROVIDER_BINDING", + "source_plan_sha256": "8c4804859aee83082196348c33127070d2885d3a366ce9acc8dc5166202f4687", + "runtime_plan_sha256": "609adb126d7d3de2abdd9275f9015589c0b137d0d19821c2c3e7c1a8541c18d2", + "providers": { + "gauge44": { + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12", + "RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94" + }, + "canonical_content_sha256": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "all_phase_edges": 3019 + } + }, + "only_rebound_fields": [ + "provider_registry.directory", + "provider_registry.artifact_sha256", + "runtime_source_plan_sha256" + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/CENTER-COMPATIBILITY.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/CENTER-COMPATIBILITY.json new file mode 100644 index 0000000000..5a3ae37422 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/CENTER-COMPATIBILITY.json @@ -0,0 +1,112 @@ +{ + "status": "PASS_IDENTICAL_PORT_ORDER_AND_ORDERED_CENTER_FRAMES", + "new_canonical_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "comparison_canonical": "pr635/research/community-k492-audit/pr626/replay/mixed-global/base/split-centres/CANONICAL-WORD.json.gz", + "comparison_canonical_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "new_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "old_centers": [ + 229, + 224, + 227, + 225, + 243, + 241, + 259, + 257 + ], + "ordered_center_frames": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ], + "v": 112, + "h": 9, + "center_count": 8, + "scope": "Carrier register identity changes; native cut center channels retain exact ordered frames and ports. Full endpoint and exact center clearing are independently checked by local ledger replay." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/LOCAL-STAGES.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/LOCAL-STAGES.json new file mode 100644 index 0000000000..b2753eb57a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/LOCAL-STAGES.json @@ -0,0 +1,27 @@ +[ + { + "tag": "44-native", + "seconds": 4.460461161999774, + "exit": 0 + }, + { + "tag": "44-emitted-ledgers", + "seconds": 3.058037757999955, + "exit": 0 + }, + { + "tag": "44-local-replay", + "seconds": 28.33760359400003, + "exit": 0 + }, + { + "tag": "44-wrappers", + "seconds": 5.294312295000054, + "exit": 0 + }, + { + "tag": "44-phase", + "seconds": 198.39076561599995, + "exit": 0 + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/REPLAY.json new file mode 100644 index 0000000000..c6f4e0f983 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/REPLAY.json @@ -0,0 +1,54 @@ +{ + "status": "PASS_GAUGE44_STRICT_GLOBAL_REPLAY", + "kappa": "1649483702558979/1000000000000000000", + "kappa_decimal": "0.001649483702558979", + "complex_lower": "1652208994368411824947/1000000000000000000000000", + "bit_lower": "413456747036699736067/250000000000000000000000", + "gain_over_pr635_percent": "0.8093060205252829126484020359439672024956960385078942889840023844750830", + "spec_sha256": "fee57674a7f36b30b1e7eb96a8f567a90a522217bc644c1a6a1f8bff85196fbf", + "stages": [ + { + "name": "restore-parent", + "seconds": 2.152, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind", + "seconds": 0.686, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 5.456, + "exit_code": 0, + "log_sha256": "60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e" + }, + { + "name": "audit", + "seconds": 26.943, + "exit_code": 0, + "log_sha256": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662" + }, + { + "name": "invoice", + "seconds": 1.897, + "exit_code": 0, + "log_sha256": "5d10712d494304287749dd7a6c3369f9b707bba30e9f567b68230669dcf5418a" + }, + { + "name": "assembly", + "seconds": 0.724, + "exit_code": 0, + "log_sha256": "768d3215f1918117dc6c33b4cfeaf0b5f5da9ba5c77178db4bb1d08d000e226f" + }, + { + "name": "admission-controls", + "seconds": 0.816, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the same cited unchanged PR543 bit supplier as PR635. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/STAGES.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/STAGES.json new file mode 100644 index 0000000000..9464e2dfea --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/STAGES.json @@ -0,0 +1,44 @@ +[ + { + "name": "restore-parent", + "seconds": 2.152, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind", + "seconds": 0.686, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 5.456, + "exit_code": 0, + "log_sha256": "60866eb6ced5b9eb259bfc1d59ea7b80fb439164b629e868586ad5bef845a88e" + }, + { + "name": "audit", + "seconds": 26.943, + "exit_code": 0, + "log_sha256": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662" + }, + { + "name": "invoice", + "seconds": 1.897, + "exit_code": 0, + "log_sha256": "5d10712d494304287749dd7a6c3369f9b707bba30e9f567b68230669dcf5418a" + }, + { + "name": "assembly", + "seconds": 0.724, + "exit_code": 0, + "log_sha256": "768d3215f1918117dc6c33b4cfeaf0b5f5da9ba5c77178db4bb1d08d000e226f" + }, + { + "name": "admission-controls", + "seconds": 0.816, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/ASYNC-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/ASYNC-AUDIT.json new file mode 100644 index 0000000000..05975382b5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/ASYNC-AUDIT.json @@ -0,0 +1,84 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "complex_template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "complex_live": 7168, + "complex_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "complex_hosted_residuals": 35424, + "physical": 7670, + "rank_mass": 520704, + "deficit": 2560, + "entering_helper_roles": 17856, + "cross_replica_helper_roles": 25937, + "one_owner_per_complete_invocation": true, + "helper_busy_family_window_checks": 35424, + "complete_invocations": 72, + "actual_orthogonal_73column_maps": 7870, + "actual_sigma_stream_sha256": "f4e9802acb2ed53fc1f0486e7d0f55a6faa30ed7f5d2ad48a06450234b00ba76", + "all_actual_residual_and_spectator_charts": true, + "idle_remainders": 2759, + "mutations_rejected": [ + "alias two whole owners", + "helper on active data family", + "owner in private namespace", + "wrong residual width", + "wrong spectator coordinate", + "omit idle remainder", + "understate physical reserve", + "gauge44: wrong provider at its invocation", + "gauge44: stale per-call local program hash", + "gauge44: stale serialized provider program", + "gauge44: unbound residual adapter hash", + "gauge44: wrong provider width registry", + "gauge44: wrong per-call residual width", + "gauge44: wrong sweep provider", + "gauge44: entering helper width silently restored to nine" + ], + "mutation_controls_run": true, + "provider_phase_semantic_sha256": { + "gauge44": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "LOCAL-PROGRAMS.json.gz": "39b230dba9e6b022c691cd0167f331c1b3fa6795d49256e3a2b859c68d4acfda", + "LOCAL-CHECKS.json": "bd53e0cca4488f365ca5b7c7174d8dfb35ced5e0229835f27334c11c3d839717", + "INDEPENDENT-LOCAL-REPLAY.json": "adb5c8ce0b5025dcd96f41b9fa0e26b9a176e067ab36a5bfadad00bc19522b38", + "CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "CLIFFORD-REVIEW.json": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152", + "RESIDUAL-ADAPTERS.json": "c233611dd4c08c389dfb6c7d1c84dd86a3efa560223fcd6549a2848692541cd9" + } + }, + "widths_by_provider": { + "gauge44": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + } + }, + "provider_counts": { + "gauge44": 72 + }, + "all_provider_program_phase_and_wrapper_bindings": true, + "scope": "Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/GLOBAL-PREFIX.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/GLOBAL-PREFIX.json new file mode 100644 index 0000000000..a557ebbe60 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/GLOBAL-PREFIX.json @@ -0,0 +1,13 @@ +{ + "status": "PASS_MIXED_ASYNC_GLOBAL_PREFIX", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "global_prefix_bits": 360, + "retained_payload_bits": 512, + "complete_invocation_cover_sweeps": 72, + "bridge_factor_two_sweeps": 72, + "local_scalar_coefficient_work_prefix_bits": 175, + "stream_input_sup_to_l2_bits": 37, + "primitive_arithmetic_margin_bits": 4, + "controller_audit_sha256": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662", + "proof": "Each selected normalized provider restores all arbitrary dirty helper columns and gives the same data shear endpoints. Actual whole-owner charts are right-translation bijections. Sum all 72 invocation and 72 bridge sweeps and take maximum local scalar/Horner prefix over all three providers and orientations. Idle children, phases, spectator endpoints and terminal translations are unitary. Retained all-size interfaces are conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/IDLE-REMAINDER-FRAMES.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/IDLE-REMAINDER-FRAMES.json new file mode 100644 index 0000000000..1c86a8a01d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/IDLE-REMAINDER-FRAMES.json @@ -0,0 +1,25 @@ +{ + "status": "PASS_LITERAL_IDLE_REMAINDER_FRAMES", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "uncompressed_frames_sha256": "38eba7dfe023d0b2a8aea1c5184e50bdfff5727b350c2de4d27800acbdd3708c", + "children": 2759, + "rank_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "source_data_phase_sha256": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "scope": "Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/OWNERS-AND-PROFILE.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/OWNERS-AND-PROFILE.json new file mode 100644 index 0000000000..bdb9441b7e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/OWNERS-AND-PROFILE.json @@ -0,0 +1,61 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "paid_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "live": 7168, + "physical": 7670, + "rank_mass": 520704, + "deficit": 2560, + "hosted_residuals": 35424, + "banked_residuals": 0, + "all_live_owners_per_call_distinct": true, + "owners_per_call": 716, + "actual_helper_owner_charts": 35424, + "actual_73column_sigmas": 7870, + "cross_replica_helper_roles": 25937, + "explicit_idle_remainder_children": 2759, + "source_idle_children_charged": 16128, + "source_artifacts": { + "work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "providers/gauge44/CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "providers/gauge44/LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "providers/gauge44/LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "providers/gauge44/RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "providers/gauge44/CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "providers/gauge44/CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12" + }, + "provider_phase_semantic_sha256": { + "gauge44": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "LOCAL-PROGRAMS.json.gz": "39b230dba9e6b022c691cd0167f331c1b3fa6795d49256e3a2b859c68d4acfda", + "LOCAL-CHECKS.json": "bd53e0cca4488f365ca5b7c7174d8dfb35ced5e0229835f27334c11c3d839717", + "INDEPENDENT-LOCAL-REPLAY.json": "adb5c8ce0b5025dcd96f41b9fa0e26b9a176e067ab36a5bfadad00bc19522b38", + "CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "CLIFFORD-REVIEW.json": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152", + "RESIDUAL-ADAPTERS.json": "c233611dd4c08c389dfb6c7d1c84dd86a3efa560223fcd6549a2848692541cd9" + } + }, + "controller_audit_sha256": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/PREFIX-AND-INVOICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/PREFIX-AND-INVOICE.json new file mode 100644 index 0000000000..6c96ec6706 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/audit/PREFIX-AND-INVOICE.json @@ -0,0 +1,1746 @@ +{ + "status": "PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "parent_template_sha256": "7db047a427a7979d69e163c78a1e32bd445628fb86723e131a3138361355a9c3", + "owner_audit_sha256": "a32ecc0d5387d65648e1ff284209122860ee37aaba43ce2dd12024c4bc394313", + "controller_audit_sha256": "df19a41a599bf24fd1efaeb2394af63208f95b9e3ca4f83c6f23e9641fb3d662", + "providers": { + "gauge44": { + "local": { + "backward": { + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "prefix_l1": "600338326363508935771850050281004728884643/32", + "prefix_bits": 134, + "coefficient_work_primitive_count": 208744, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 248, + "post_wrappers": 248, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "prefix_l1": "2323449462751823289130723296176889733365478515961323543/64", + "prefix_bits": 175, + "coefficient_work_primitive_count": 208712, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 248, + "post_wrappers": 248, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 492, + "centres": 8, + "v": 112, + "h": 9, + "n": 716, + "entering_helpers": 204, + "entrance_rank": 380, + "terminal_codimension": 254, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 44, + "width_inventory": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 738816, + "local_primitive_bound": 19160702806276, + "compiler": 25934336, + "children": 3590, + "artifacts": { + "WRAPPER-CHECKS.json": "84c727930f85f1c91900d6d12c523735c8b5d6907cd3eb1bd1030fe1fd4161d7", + "RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "SCALAR-FRAME-AUDIT.json": "cfc73040079b43ea82a42f3cf4c910edda1362deb09ec21c816c329347313bcb", + "FULL-WORD.json.gz": "0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e", + "CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12", + "LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c" + }, + "paid_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "program_hashes": { + "backward": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "forward": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "LOCAL-PROGRAMS.json.gz": "39b230dba9e6b022c691cd0167f331c1b3fa6795d49256e3a2b859c68d4acfda", + "LOCAL-CHECKS.json": "bd53e0cca4488f365ca5b7c7174d8dfb35ced5e0229835f27334c11c3d839717", + "INDEPENDENT-LOCAL-REPLAY.json": "adb5c8ce0b5025dcd96f41b9fa0e26b9a176e067ab36a5bfadad00bc19522b38", + "CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "CLIFFORD-REVIEW.json": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152", + "RESIDUAL-ADAPTERS.json": "c233611dd4c08c389dfb6c7d1c84dd86a3efa560223fcd6549a2848692541cd9" + } + } + }, + "provider_phase_semantic_sha256": { + "gauge44": "1b4aa8bf9185b423e3f29e0ee2eb4d7082e2408c2b09cba1ef02282282731152" + }, + "provider_counts": { + "gauge44": 72 + }, + "selected_calls": [ + { + "stage": 0, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 0, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 1, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 2, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 3, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 4, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 5, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 6, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 7, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420100, + "coefficient_work_primitive_count": 208744, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + }, + { + "stage": 8, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "macros": 41570, + "real_component_primitives": 420052, + "coefficient_work_primitive_count": 208712, + "entering_helpers": 204, + "entrance_rank": 380, + "pre_wrappers": 248, + "post_wrappers": 248 + } + ], + "selected_local_paid_profile": { + "1": 181008, + "2": 29088, + "3": 32256, + "4": 11520, + "5": 4032, + "8": 576 + }, + "selected_real_component_primitives": 30245280, + "selected_coefficient_work_primitive_count": 15028288, + "selected_scalar_macros": 2993040, + "global_prefix_bits": 360, + "charged_prefix_bits": 512, + "complete_invocation_sweeps": 72, + "bridge_sweeps": 72, + "row_prefix_extra": 1024, + "helpers": 492, + "centres": 8, + "live": 7168, + "physical": 7670, + "physical_stock_identity": { + "data_and_owner_families": 7168, + "local_helpers": 492, + "private_centres": 8, + "coefficient_work": 2 + }, + "local_adapters": 738816, + "local_primitive_bound": 19160702806276, + "wrapper_elementary_factors_charged": 5142528, + "factors_per_wrapper": 144, + "compiler": 25934336, + "unhosted_pervertex": 2486201168471768, + "hosted_rebased_pervertex": 2486201168171612, + "conservative_pervertex_used": 5364148158196336, + "retained_prior_overcharge": { + "sha256": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "previous_pervertex_allowance": 2877946989724568, + "added_complete_new_pervertex": 2486201168471768, + "policy": "Retain old allowance and add entire fresh mixed recount." + }, + "finite": { + "physical_stock_bits": 2641, + "router_bits": 7986, + "literal_bits": 35282, + "physical_row_coefficient": 16467, + "retained_row_coefficient": 20161, + "required_C0_bits": 200012, + "halving_integer_inequality": [ + 5329, + 4608 + ], + "G_exponent": 30000, + "E_exponent": 100000, + "C0_exponent": 210000 + }, + "strict_checks": { + "local_primitive_bound": true, + "logical": true, + "router": true, + "literal": true, + "mass": true, + "precision": true, + "tape": true, + "row": true, + "halving": true + }, + "scope": "Actual call-specific mixed scalar, Horner, wrappers and paid children recounted. All three providers use fresh hash-bound independent all-column/frame/phase/normalization admission. Shared compiler uses conservative maxima; parent is geometry/overcharge only. All-size compiler, hosting, precision/tape and analytic transfer remain conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/ACTUAL-SIGMAS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/ACTUAL-SIGMAS.json.gz new file mode 100644 index 0000000000..dbb57066e2 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/ACTUAL-SIGMAS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/GLOBAL-TEMPLATE.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/GLOBAL-TEMPLATE.json.gz new file mode 100644 index 0000000000..424c2df489 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/GLOBAL-TEMPLATE.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/HOSTED.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/HOSTED.json new file mode 100644 index 0000000000..498e849ab7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/HOSTED.json @@ -0,0 +1,60 @@ +{ + "status": "EMITTED_MIXED_PROVIDER_ASYNCHRONOUS_WHOLE_OWNER_COMPLEX_TEMPLATE", + "template_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "parent_template_sha256": "7db047a427a7979d69e163c78a1e32bd445628fb86723e131a3138361355a9c3", + "live": 7168, + "physical": 7670, + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "hosted_residuals": 35424, + "banks_per_stage": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "entering_helper_roles": 17856, + "unique_actual_73column_sigmas": 7870, + "sigma_stream_sha256": "f4e9802acb2ed53fc1f0486e7d0f55a6faa30ed7f5d2ad48a06450234b00ba76", + "cross_replica_helper_roles": 25937, + "asynchronous_order_sha256": "2acd6b2004be3d3ef6645f3c968feb22b5167c400bb49eb446821e5cb7af6eee", + "source_artifacts": { + "work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "providers/gauge44/CANONICAL-WORD.json.gz": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "providers/gauge44/LOCAL-PROGRAMS.json.gz": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "providers/gauge44/LOCAL-CHECKS.json": "2b8a6a6854b8df8ecd84d8ff2b92f720c81454636988e6a0dfdc1f6c29d1c82c", + "providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "18d68326ce0aca76911d561e79a817bce90cb8adfe053e19621c7ae0298b842e", + "providers/gauge44/RESIDUAL-ADAPTERS.json": "bb6c23ba1b8dd5d2016724c3348b4e91a6b91daaa3f56bbd5216cb7a96bf5c94", + "providers/gauge44/CLIFFORD-RECIPES.json": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "providers/gauge44/CLIFFORD-REVIEW.json": "4e3cdd616d105a49bbf1948bb53e49938d515c42f1c026781d1b5e9cb636db12" + }, + "provider_counts": { + "gauge44": 72 + }, + "scope": "Two actual verified plain/width-seven providers dispatched per complete invocation; independent controller/spectator/normalization and complete finite invoice admission required." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/IDLE-REMAINDER-FRAMES.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/IDLE-REMAINDER-FRAMES.json.gz new file mode 100644 index 0000000000..3562e60f05 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/global/IDLE-REMAINDER-FRAMES.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/layers/LOCAL-AUDIT-LAYERED.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/layers/LOCAL-AUDIT-LAYERED.json new file mode 100644 index 0000000000..0780787674 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/layers/LOCAL-AUDIT-LAYERED.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83", + "compressed_sha256": "3b268a3adb543e930454e9d9405e5f7a664c75c487f6c5cbe29c199f24a89789", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 480, + "entering": 192, + "lowends": 78, + "coldends": 48, + "compensation_gates": 7208, + "local_profile": { + "1": 2412, + "2": 418, + "3": 418, + "4": 170, + "5": 68, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + }, + "checked_columns": 704, + "elapsed_seconds": 0.8600000000005821, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/leaver/CELL-MUTANTS-LV.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/leaver/CELL-MUTANTS-LV.json new file mode 100644 index 0000000000..4d4ef7403c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/leaver/CELL-MUTANTS-LV.json @@ -0,0 +1,261 @@ +{ + "c01m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_233": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [233])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [172, 175])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [132, 135, 173, 174])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_233": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [233])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c01p": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_57": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [57, 58, 224, 225, 226])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [169, 170])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [129, 130, 168, 171])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_57": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [57, 58, 224, 225, 226])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c23m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_58": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [58])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [169, 170])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [173, 174, 196, 199])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_58": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [58])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c23p": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_239": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [60, 63, 231, 232, 238, 239])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [172, 175])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [168, 171, 193, 194])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_239": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [60, 63, 231, 232, 238, 239])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c45m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_441": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [52, 55, 439, 440, 446, 447])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [137, 138])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [141, 142, 164, 167])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_441": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [52, 55, 439, 440, 446, 447])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c45p": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_255": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [28, 31, 247, 248, 254, 255])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [140, 143])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [136, 139, 161, 162])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_255": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [28, 31, 247, 248, 254, 255])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c67m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_18": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [18])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [129, 130])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [133, 134, 161, 162])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_18": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [18])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/leaver/FRAME-CONTROLS-LV-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/leaver/FRAME-CONTROLS-LV-k8.json new file mode 100644 index 0000000000..9f56e21000 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/leaver/FRAME-CONTROLS-LV-k8.json @@ -0,0 +1,54 @@ +{ + "base": "c836d892", + "recipe": "FRAME-RECIPE-LV-k8.json", + "controls": { + "shrink_raised_B": { + "builder": "profile and width pins", + "stage": "native_atc", + "native": "PASS", + "rc": 0, + "reason": "}", + "frame": [ + "B", + 539 + ] + }, + "shrink_lowered_B": { + "builder": "('nonmonotone', 174)", + "stage": "apply", + "reason": "('nonmonotone', 174)" + }, + "shrink_T": { + "builder": "('nonmonotone', 554)", + "stage": "apply", + "reason": "('nonmonotone', 554)" + }, + "empty_B": { + "builder": "('nonmonotone', 169)", + "stage": "apply", + "reason": "('nonmonotone', 169)" + }, + "drop_one_lowering": { + "builder": "output word pin", + "stage": "native_atc", + "native": "PASS", + "rc": 0, + "reason": "}", + "frame": [ + "B", + 1232 + ] + }, + "drop_one_raise": { + "builder": "profile and width pins", + "stage": "native_atc", + "native": "PASS", + "rc": 0, + "reason": "}", + "frame": [ + "B", + 539 + ] + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CANONICAL-WORD.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CANONICAL-WORD.json.gz new file mode 100644 index 0000000000..5062a1f62f Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CANONICAL-WORD.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-RECIPES.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-RECIPES.json new file mode 100644 index 0000000000..3ba8326d3a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-RECIPES.json @@ -0,0 +1 @@ +{"children":[{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":2,"old":0,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":3,"old":0,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":4,"old":0,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":5,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":6,"old":0,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":7,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":8,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":9,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,3,3,3,2],"matrix_rows":[493,257,2,260,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[237,0,237,237,0,237,237,237,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":10,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":11,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,3,3,3,2],"matrix_rows":[499,257,258,4,8,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[243,243,0,0,243,243,243,243,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":12,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,2,0,0,0],"matrix_rows":[56,1,2,4,40,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":13,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":14,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,3,3,2],"matrix_rows":[478,1,258,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,222,222,222,222,0,222,222,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":18,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,1,0,2,3,3,2],"matrix_rows":[13,448,33,2,36,40,16,320,384],"offset":2,"phase":1,"quadratic_rows":[45,0,45,45,0,13,192,192,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,35,66,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":25,"old":0,"rank":2,"right":{"linear_Z4":[1,3,0,0,3,2,3,3,2],"matrix_rows":[13,478,33,258,292,296,272,320,384],"offset":2,"phase":1,"quadratic_rows":[45,222,243,243,222,13,222,222,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,1,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":26,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,2,0,2,0,0,0],"matrix_rows":[24,13,49,2,52,40,64,128,256],"offset":0,"phase":0,"quadratic_rows":[61,0,61,53,13,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":36,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":37,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":38,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,3,3,0,2],"matrix_rows":[381,257,2,260,264,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[125,0,125,125,125,125,125,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":39,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,3,3,2,0],"matrix_rows":[253,129,2,132,136,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[125,0,125,125,125,125,125,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":40,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":41,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":42,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":43,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,64,3,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":54,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,2,0,2,0,0,0],"matrix_rows":[264,13,289,2,292,40,16,64,128],"offset":0,"phase":0,"quadratic_rows":[301,0,301,293,0,13,0,0,13]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,64,3,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":55,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,2,0,2,0,0,0],"matrix_rows":[136,13,161,2,164,40,16,64,256],"offset":0,"phase":0,"quadratic_rows":[173,0,173,165,0,13,0,13,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":65,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":66,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":67,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":68,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,3,0,3,2],"matrix_rows":[445,257,2,260,264,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[189,0,189,189,189,189,0,189,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":69,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,2,0,0],"matrix_rows":[104,1,2,4,72,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":70,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,0,3,3,2],"matrix_rows":[475,257,258,4,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[219,219,0,219,219,0,219,219,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":71,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,3,3,3,3,2],"matrix_rows":[502,1,258,260,8,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,246,246,0,246,246,246,246,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":72,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,2,32,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":76,"old":0,"rank":2,"right":{"linear_Z4":[2,3,3,2,0,2,0,0,0],"matrix_rows":[43,5,33,42,12,16,64,128,256],"offset":3,"phase":2,"quadratic_rows":[14,3,13,5,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,64,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":83,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,2,0,2,0,0,0],"matrix_rows":[72,13,97,2,100,40,16,128,256],"offset":0,"phase":0,"quadratic_rows":[109,0,109,101,0,13,13,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":94,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":95,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,3,0,3,2],"matrix_rows":[439,257,258,260,8,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[183,183,183,0,183,183,0,183,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":96,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":97,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":98,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,3,3,2],"matrix_rows":[463,257,258,260,264,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[207,207,207,207,0,0,207,207,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":99,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":100,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,2,0,0],"matrix_rows":[98,1,66,4,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":101,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,3,3,3,3,2],"matrix_rows":[508,1,2,260,264,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,252,252,252,252,252,252,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,10,19,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":112,"old":0,"rank":2,"right":{"linear_Z4":[3,3,0,0,1,2,0,0,3],"matrix_rows":[476,463,289,290,260,264,48,320,384],"offset":2,"phase":1,"quadratic_rows":[239,239,275,275,508,19,275,275,476]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":123,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,3,3,0,2],"matrix_rows":[375,257,258,260,8,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[119,119,119,0,119,119,119,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":124,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":125,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,3,3,2,0],"matrix_rows":[247,129,130,132,8,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[119,119,119,0,119,119,119,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":126,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":127,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":128,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":129,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":130,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":152,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,3,3,3,2],"matrix_rows":[487,257,258,260,8,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[231,231,231,0,0,231,231,231,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":153,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,2,0,0],"matrix_rows":[84,1,2,68,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":154,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":155,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,3,3,3,3,2],"matrix_rows":[505,257,2,4,264,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[249,0,0,249,249,249,249,249,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":156,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":157,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":158,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":159,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,2,0,0,0],"matrix_rows":[50,1,34,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,17,33,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":170,"old":0,"rank":2,"right":{"linear_Z4":[0,2,1,1,2,0,0,0,0],"matrix_rows":[14,34,1,18,52,56,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,60,62,62,14,14,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,32,70,130,2,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":172,"old":0,"rank":3,"right":{"linear_Z4":[3,3,0,2,3,2,2,3,2],"matrix_rows":[385,24,106,257,98,4,72,48,384],"offset":7,"phase":3,"quadratic_rows":[129,10,0,50,56,24,0,129,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[15,23,35,65,133,6,2,263,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":173,"old":0,"rank":3,"right":{"linear_Z4":[3,3,2,3,0,0,0,3,2],"matrix_rows":[415,391,499,257,258,356,296,336,384],"offset":3,"phase":2,"quadratic_rows":[235,235,376,191,300,415,391,235,116]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[15,21,35,71,129,2,4,263,7],"offset":0,"phase":0,"quadratic_rows":[6,3,5,0,0,0,0,0,0]},"new":174,"old":0,"rank":3,"right":{"linear_Z4":[1,0,0,1,3,1,1,1,0],"matrix_rows":[415,493,491,257,290,324,264,368,384],"offset":1,"phase":1,"quadratic_rows":[153,340,306,153,255,116,114,153,6]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,70,128,4,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":175,"old":0,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,1,1,3,2],"matrix_rows":[385,106,108,257,66,36,104,16,384],"offset":7,"phase":3,"quadratic_rows":[129,42,76,102,0,106,108,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":181,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":182,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":183,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":184,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":185,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,3,0,2],"matrix_rows":[351,257,258,260,264,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[95,95,95,95,95,0,95,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":186,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":187,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,3,2,0],"matrix_rows":[223,129,130,132,136,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[95,95,95,95,95,0,95,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":188,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,18,33,66,129,256,5,2,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":201,"old":0,"rank":3,"right":{"linear_Z4":[2,3,1,3,1,0,2,2,0],"matrix_rows":[21,138,257,65,130,324,136,336,32],"offset":2,"phase":1,"quadratic_rows":[340,10,341,10,341,0,21,0,21]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,18,33,66,129,256,5,4,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":202,"old":0,"rank":3,"right":{"linear_Z4":[2,3,1,3,1,0,2,0,2],"matrix_rows":[21,266,129,65,258,196,264,208,32],"offset":2,"phase":1,"quadratic_rows":[212,10,213,10,213,0,21,21,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[11,23,32,71,128,256,3,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":203,"old":0,"rank":3,"right":{"linear_Z4":[0,3,0,3,0,0,2,1,2],"matrix_rows":[11,395,138,65,450,4,456,16,32],"offset":6,"phase":2,"quadratic_rows":[448,202,0,202,0,0,11,395,129]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":204,"old":0,"rank":3,"right":{"linear_Z4":[1,1,3,1,3,0,2,3,0],"matrix_rows":[11,384,148,65,66,388,72,400,32],"offset":4,"phase":1,"quadratic_rows":[75,75,276,75,276,0,11,384,148]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":210,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":211,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,3,0,3,2],"matrix_rows":[446,1,258,260,264,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,190,190,190,190,190,0,190,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":212,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":213,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":214,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,3,3,3,2],"matrix_rows":[491,257,258,4,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[235,235,0,235,0,235,235,235,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":215,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,2,0,0],"matrix_rows":[88,1,2,4,72,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":216,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":217,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,3,3,3,2],"matrix_rows":[501,257,2,260,8,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[245,0,245,0,245,245,245,245,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":221,"old":0,"rank":2,"right":{"linear_Z4":[0,1,1,1,2,3,0,3,2],"matrix_rows":[14,416,1,18,20,24,288,64,384],"offset":2,"phase":1,"quadratic_rows":[0,30,30,30,14,160,0,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,33,2,67,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":228,"old":0,"rank":2,"right":{"linear_Z4":[0,3,1,3,2,0,0,0,3],"matrix_rows":[491,485,257,274,20,280,288,320,384],"offset":1,"phase":1,"quadratic_rows":[270,251,501,251,14,270,270,270,485]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":239,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,3,3,0,2],"matrix_rows":[382,1,258,260,264,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,126,126,126,126,126,126,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":240,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":241,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,3,3,2,0],"matrix_rows":[254,1,130,132,136,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,126,126,126,126,126,126,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":242,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":243,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":244,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":245,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":246,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":250,"old":0,"rank":2,"right":{"linear_Z4":[0,1,1,1,2,3,3,2,0],"matrix_rows":[14,224,1,18,20,24,160,192,256],"offset":2,"phase":1,"quadratic_rows":[0,30,30,30,14,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":268,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,3,3,3,2],"matrix_rows":[494,1,258,260,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,238,238,238,0,238,238,238,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":269,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,2,0,0],"matrix_rows":[112,1,2,4,8,80,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":270,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":271,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,0,3,3,2],"matrix_rows":[477,257,2,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[221,0,221,221,221,0,221,221,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":272,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":273,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,3,0,3,2],"matrix_rows":[443,257,258,4,264,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[187,187,0,187,187,187,0,187,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":274,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":275,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,67,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":279,"old":0,"rank":2,"right":{"linear_Z4":[1,1,0,0,2,2,0,0,0],"matrix_rows":[80,19,97,98,4,8,48,128,256],"offset":0,"phase":0,"quadratic_rows":[115,115,0,0,99,19,19,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,32,2,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":286,"old":0,"rank":2,"right":{"linear_Z4":[3,3,2,0,1,1,0,0,0],"matrix_rows":[53,54,33,18,52,8,64,128,256],"offset":3,"phase":2,"quadratic_rows":[21,38,51,0,53,54,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":297,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":298,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":299,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":300,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":301,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,3,3,0,2],"matrix_rows":[379,257,258,4,264,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[123,123,0,123,123,123,123,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":302,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":303,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,3,3,2,0],"matrix_rows":[251,129,130,4,136,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[123,123,0,123,123,123,123,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":304,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,67,3,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":308,"old":0,"rank":2,"right":{"linear_Z4":[1,1,0,0,2,2,0,0,0],"matrix_rows":[272,19,289,290,4,8,48,64,128],"offset":0,"phase":0,"quadratic_rows":[307,307,0,0,291,19,0,0,19]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":326,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":327,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":328,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":329,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":330,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":331,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":332,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,3,0,2],"matrix_rows":[367,257,258,260,264,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[111,111,111,111,0,111,111,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":333,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,3,2,0],"matrix_rows":[239,129,130,132,136,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[111,111,111,111,0,111,111,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,34,64,3,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":337,"old":0,"rank":2,"right":{"linear_Z4":[1,0,2,1,0,2,0,0,0],"matrix_rows":[132,13,161,2,36,168,16,64,256],"offset":0,"phase":0,"quadratic_rows":[173,0,169,173,0,13,0,13,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":344,"old":0,"rank":2,"right":{"linear_Z4":[1,3,1,1,0,2,3,2,0],"matrix_rows":[13,194,33,130,36,40,16,192,256],"offset":2,"phase":1,"quadratic_rows":[45,66,45,45,0,13,66,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":345,"old":0,"rank":2,"right":{"linear_Z4":[1,3,1,1,0,2,3,0,2],"matrix_rows":[13,322,33,258,36,40,16,320,128],"offset":2,"phase":1,"quadratic_rows":[45,66,45,45,0,13,66,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,39,64,128,263,3,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":350,"old":0,"rank":3,"right":{"linear_Z4":[0,0,3,0,0,3,2,1,2],"matrix_rows":[38,422,164,1,66,452,8,16,480],"offset":6,"phase":2,"quadratic_rows":[0,448,228,0,0,228,38,422,130]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,128,258,2,5,1],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":351,"old":0,"rank":3,"right":{"linear_Z4":[3,1,1,3,0,1,2,3,0],"matrix_rows":[384,38,137,385,66,68,392,16,96],"offset":4,"phase":1,"quadratic_rows":[265,102,102,265,0,102,38,384,137]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,128,260,3,1,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":352,"old":0,"rank":3,"right":{"linear_Z4":[1,2,3,1,0,3,2,0,2],"matrix_rows":[130,11,292,193,66,260,200,16,288],"offset":4,"phase":1,"quadratic_rows":[203,201,36,203,0,36,11,11,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,128,260,3,4,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":353,"old":0,"rank":3,"right":{"linear_Z4":[1,2,3,1,0,3,2,2,0],"matrix_rows":[258,11,164,321,66,132,328,16,160],"offset":4,"phase":1,"quadratic_rows":[331,329,36,331,0,36,11,0,11]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":355,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":356,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,3,3,3,3,2],"matrix_rows":[506,1,258,4,264,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,250,0,250,250,250,250,250,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":357,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,0,3,3,2],"matrix_rows":[471,257,258,260,8,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[215,215,215,0,215,0,215,215,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":358,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,2,0,0],"matrix_rows":[100,1,2,68,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":359,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":360,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,2,0,0,0],"matrix_rows":[49,33,2,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":361,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":362,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,0,3,2],"matrix_rows":[431,257,258,260,264,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[175,175,175,175,0,175,0,175,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,18,33,67,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":366,"old":0,"rank":2,"right":{"linear_Z4":[3,0,3,1,0,2,0,0,3],"matrix_rows":[474,471,289,258,292,40,272,320,384],"offset":2,"phase":1,"quadratic_rows":[247,269,247,506,269,13,269,269,474]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,33,2,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":374,"old":0,"rank":2,"right":{"linear_Z4":[2,0,1,1,0,2,0,0,0],"matrix_rows":[13,17,33,2,52,56,64,128,256],"offset":0,"phase":0,"quadratic_rows":[60,0,61,61,13,13,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[12,18,37,64,132,1,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":379,"old":0,"rank":3,"right":{"linear_Z4":[1,3,2,0,1,0,2,3,2],"matrix_rows":[36,386,21,97,258,68,8,112,384],"offset":2,"phase":1,"quadratic_rows":[117,130,113,0,117,21,21,130,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[14,23,35,66,4,135,1,263,7],"offset":0,"phase":0,"quadratic_rows":[3,5,6,0,0,0,0,0,0]},"new":380,"old":0,"rank":3,"right":{"linear_Z4":[0,1,0,3,1,1,1,1,0],"matrix_rows":[502,431,499,321,258,276,344,288,384],"offset":2,"phase":1,"quadratic_rows":[284,170,329,255,89,170,92,170,5]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,70,6,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":381,"old":0,"rank":3,"right":{"linear_Z4":[0,3,3,2,2,3,2,3,2],"matrix_rows":[386,40,92,1,258,84,24,96,384],"offset":7,"phase":3,"quadratic_rows":[0,130,12,100,0,104,40,130,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,22,38,67,135,1,5,262,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":382,"old":0,"rank":3,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,1],"matrix_rows":[24,254,407,97,258,260,328,304,384],"offset":5,"phase":2,"quadratic_rows":[503,105,105,422,81,399,407,105,361]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":384,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":385,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,0,2],"matrix_rows":[289,257,2,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":386,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":387,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,3,0,2,0],"matrix_rows":[191,129,130,132,136,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":388,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":389,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,2,0],"matrix_rows":[161,129,2,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":390,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":391,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,3,0,0,2],"matrix_rows":[319,257,258,260,264,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,2,2,2,2,0],"matrix_rows":[1,264,4,10,16,2,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":413,"old":0,"rank":8,"right":{"linear_Z4":[2,1,2,3,2,0,2,2,2],"matrix_rows":[1,40,4,34,16,64,128,256,42],"offset":245,"phase":2,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,2,2,2,2,2,0],"matrix_rows":[258,3,1,4,8,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":414,"old":0,"rank":8,"right":{"linear_Z4":[1,3,0,2,2,2,2,2,2],"matrix_rows":[6,5,8,16,32,64,128,256,7],"offset":252,"phase":2,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,2,2,2,2,0],"matrix_rows":[264,2,4,9,1,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"new":415,"old":0,"rank":8,"right":{"linear_Z4":[1,2,2,3,0,2,2,2,2],"matrix_rows":[24,2,4,17,32,64,128,256,25],"offset":246,"phase":2,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,2,3,2,2,2,0],"matrix_rows":[1,2,272,8,20,4,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"new":416,"old":0,"rank":8,"right":{"linear_Z4":[2,2,1,2,3,0,2,2,2],"matrix_rows":[1,2,48,8,36,64,128,256,52],"offset":235,"phase":2,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,3,2,2,2,0],"matrix_rows":[1,272,4,8,18,32,2,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"new":417,"old":0,"rank":8,"right":{"linear_Z4":[2,1,2,2,3,2,0,2,2],"matrix_rows":[1,80,4,8,66,32,128,256,82],"offset":237,"phase":2,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,3,3,2,2,0],"matrix_rows":[318,3,5,9,17,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"new":418,"old":0,"rank":8,"right":{"linear_Z4":[1,3,3,3,3,3,0,2,2],"matrix_rows":[126,125,123,119,111,95,128,256,127],"offset":192,"phase":2,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,2,3,2,2,0],"matrix_rows":[288,2,4,8,16,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"new":419,"old":0,"rank":8,"right":{"linear_Z4":[1,2,2,2,2,3,0,2,2],"matrix_rows":[96,2,4,8,16,65,128,256,97],"offset":222,"phase":2,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,2,2,2,2,0],"matrix_rows":[1,2,264,12,16,32,4,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":420,"old":0,"rank":8,"right":{"linear_Z4":[2,2,1,3,2,2,0,2,2],"matrix_rows":[1,2,72,68,16,32,128,256,76],"offset":243,"phase":2,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":421,"old":0,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":422,"old":0,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":423,"old":0,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,2,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":288,"old":2,"rank":2,"right":{"linear_Z4":[0,1,3,2,0,0,0,2,3],"matrix_rows":[219,397,321,338,20,264,32,256,384],"offset":143,"phase":1,"quadratic_rows":[22,395,413,86,397,0,392,86,342]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,35,64,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":289,"old":2,"rank":2,"right":{"linear_Z4":[3,0,1,0,0,2,2,0,1],"matrix_rows":[398,171,353,258,100,264,80,256,384],"offset":2,"phase":1,"quadratic_rows":[459,37,494,37,64,398,21,37,293]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,33,3,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":290,"old":2,"rank":2,"right":{"linear_Z4":[1,3,0,1,2,0,2,1,0],"matrix_rows":[397,278,257,338,84,264,96,256,384],"offset":2,"phase":1,"quadratic_rows":[141,70,203,141,0,64,38,141,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,35,64,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":291,"old":2,"rank":2,"right":{"linear_Z4":[1,0,3,2,0,0,0,2,3],"matrix_rows":[398,235,353,322,36,264,16,256,384],"offset":143,"phase":1,"quadratic_rows":[395,37,430,101,0,398,392,101,357]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,129,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":317,"old":2,"rank":2,"right":{"linear_Z4":[1,1,0,3,3,3,2,0,3],"matrix_rows":[435,264,129,130,4,328,80,96,256],"offset":480,"phase":2,"quadratic_rows":[307,307,0,72,499,499,56,304,435]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,35,65,129,259,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":318,"old":2,"rank":2,"right":{"linear_Z4":[1,1,0,0,3,3,2,0,2],"matrix_rows":[315,136,257,258,4,328,464,480,256],"offset":480,"phase":2,"quadratic_rows":[59,59,0,243,251,251,56,56,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,35,64,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":319,"old":2,"rank":2,"right":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[136,264,193,194,4,328,16,32,256],"offset":300,"phase":2,"quadratic_rows":[192,192,0,192,0,0,11,11,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,65,129,257,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":320,"old":2,"rank":2,"right":{"linear_Z4":[3,3,0,3,1,1,2,0,3],"matrix_rows":[315,384,321,322,4,328,400,416,256],"offset":300,"phase":2,"quadratic_rows":[123,123,0,123,187,187,11,304,384]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,17,33,64,129,257,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":346,"old":2,"rank":2,"right":{"linear_Z4":[3,3,1,3,0,1,2,0,3],"matrix_rows":[303,384,321,322,388,328,16,416,256],"offset":300,"phase":2,"quadratic_rows":[111,111,175,111,0,175,11,292,384]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,16,32,64,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":347,"old":2,"rank":2,"right":{"linear_Z4":[2,0,0,2,0,0,2,0,2],"matrix_rows":[130,258,193,322,4,200,16,32,256],"offset":300,"phase":2,"quadratic_rows":[192,192,0,192,0,0,11,11,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,129,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":348,"old":2,"rank":2,"right":{"linear_Z4":[1,3,3,1,0,3,2,0,3],"matrix_rows":[429,258,129,322,68,136,16,96,256],"offset":408,"phase":2,"quadratic_rows":[301,66,493,301,0,493,38,292,429]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,17,33,64,129,259,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":349,"old":2,"rank":2,"right":{"linear_Z4":[1,0,3,1,0,3,2,0,2],"matrix_rows":[303,130,257,322,452,264,16,480,256],"offset":408,"phase":2,"quadratic_rows":[47,237,239,47,0,239,38,38,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,34,3,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":375,"old":2,"rank":2,"right":{"linear_Z4":[3,3,2,1,2,2,2,3,0],"matrix_rows":[391,348,257,258,84,280,96,256,384],"offset":209,"phase":0,"quadratic_rows":[135,135,139,76,0,64,40,135,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,16,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":376,"old":2,"rank":2,"right":{"linear_Z4":[1,2,0,0,3,0,0,2,3],"matrix_rows":[410,235,353,258,4,328,48,256,384],"offset":167,"phase":1,"quadratic_rows":[395,113,0,49,442,410,386,113,369]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,16,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":377,"old":2,"rank":2,"right":{"linear_Z4":[3,0,0,0,1,2,2,0,1],"matrix_rows":[410,171,353,258,68,264,112,256,384],"offset":2,"phase":1,"quadratic_rows":[459,49,64,49,506,410,21,49,305]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,35,2,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":378,"old":2,"rank":2,"right":{"linear_Z4":[1,3,1,2,1,0,1,3,1],"matrix_rows":[219,348,321,258,20,344,32,256,384],"offset":165,"phase":0,"quadratic_rows":[411,475,332,215,219,0,222,475,391]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,67,131,2,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":85,"old":3,"rank":2,"right":{"linear_Z4":[1,1,0,1,2,2,0,2,2],"matrix_rows":[187,184,321,330,12,64,272,288,384],"offset":0,"phase":0,"quadratic_rows":[507,499,8,269,259,259,3,259,187]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":86,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,2,0,3,2],"matrix_rows":[35,400,33,34,4,8,272,64,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,66,3,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":91,"old":3,"rank":2,"right":{"linear_Z4":[2,3,3,3,3,2,0,3,0],"matrix_rows":[291,413,33,290,260,264,272,64,384],"offset":3,"phase":2,"quadratic_rows":[158,3,157,157,157,0,0,157,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,66,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":92,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,3,3,0,0,3,2],"matrix_rows":[3,400,65,74,12,64,272,32,384],"offset":3,"phase":2,"quadratic_rows":[67,75,8,14,144,0,3,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,35,2,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":116,"old":3,"rank":2,"right":{"linear_Z4":[1,3,1,0,3,1,0,1,1],"matrix_rows":[189,282,257,18,260,280,288,64,384],"offset":2,"phase":1,"quadratic_rows":[445,266,445,183,189,445,0,445,423]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,33,64,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":117,"old":3,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,2,0,3,2],"matrix_rows":[41,388,33,2,260,40,16,64,384],"offset":3,"phase":2,"quadratic_rows":[9,0,132,9,0,0,0,132,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,1,64,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":118,"old":3,"rank":2,"right":{"linear_Z4":[0,3,3,3,2,0,0,3,2],"matrix_rows":[26,388,1,18,260,24,32,64,384],"offset":3,"phase":2,"quadratic_rows":[0,10,132,10,0,0,0,132,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,35,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":119,"old":3,"rank":2,"right":{"linear_Z4":[3,1,1,0,1,3,0,1,1],"matrix_rows":[297,190,33,258,260,296,272,64,384],"offset":1,"phase":1,"quadratic_rows":[265,446,446,183,446,190,0,446,407]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":205,"old":3,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[138,276,1,130,260,136,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,10,20,10,20,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,66,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":206,"old":3,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[266,148,1,258,132,264,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,10,20,10,20,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,3,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":232,"old":3,"rank":2,"right":{"linear_Z4":[3,2,3,3,2,3,0,3,0],"matrix_rows":[430,275,273,18,260,264,288,64,384],"offset":3,"phase":2,"quadratic_rows":[3,173,174,174,0,174,0,174,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,64,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":233,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,3,0,3,2],"matrix_rows":[3,416,73,66,12,64,16,288,384],"offset":3,"phase":2,"quadratic_rows":[75,67,8,13,0,160,3,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":234,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,0,2,3,0,3,2],"matrix_rows":[19,416,17,18,4,8,288,64,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,33,67,131,1,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":235,"old":3,"rank":2,"right":{"linear_Z4":[1,1,0,1,2,2,0,2,2],"matrix_rows":[184,187,329,322,12,64,272,288,384],"offset":0,"phase":0,"quadratic_rows":[499,507,8,270,259,259,3,259,187]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":321,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[131,304,129,130,4,8,272,288,64],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":322,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[259,176,257,258,4,8,144,160,64],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,131,3,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":87,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,1,1,0,0,1,2],"matrix_rows":[6,184,33,354,324,264,272,64,384],"offset":1,"phase":1,"quadratic_rows":[32,358,326,440,440,411,6,440,190]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,1,34,64,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":88,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,2,3,0,0,3,2],"matrix_rows":[14,400,1,10,12,272,32,64,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,2,35,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":89,"old":4,"rank":2,"right":{"linear_Z4":[0,1,3,0,0,0,0,0,1],"matrix_rows":[187,437,257,266,12,272,288,64,384],"offset":2,"phase":1,"quadratic_rows":[14,435,445,437,14,14,0,14,270]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,66,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":90,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,0,3,3,0,3,2],"matrix_rows":[6,400,33,98,68,8,272,64,384],"offset":3,"phase":2,"quadratic_rows":[32,102,70,0,144,35,6,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":145,"old":4,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,3,0,3,0],"matrix_rows":[384,162,1,386,4,8,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,290,0,0,0,290,0,384,162]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":146,"old":4,"rank":2,"right":{"linear_Z4":[3,0,0,0,3,0,0,3,0],"matrix_rows":[384,145,385,2,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[273,0,0,0,273,0,0,384,145]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":147,"old":4,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[145,290,129,258,4,8,144,288,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":148,"old":4,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[273,162,257,130,4,8,272,160,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,17,35,67,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":176,"old":4,"rank":2,"right":{"linear_Z4":[2,3,3,2,2,3,0,2,1],"matrix_rows":[415,409,257,322,356,296,272,64,384],"offset":3,"phase":2,"quadratic_rows":[262,223,255,294,262,44,6,262,409]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":177,"old":4,"rank":2,"right":{"linear_Z4":[3,3,3,0,0,3,0,3,2],"matrix_rows":[385,6,257,98,68,8,48,64,384],"offset":3,"phase":2,"quadratic_rows":[129,102,70,0,32,50,6,129,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":261,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,0,0,3,0],"matrix_rows":[384,134,1,386,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,262,262,0,0,0,0,384,134]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":262,"old":4,"rank":2,"right":{"linear_Z4":[0,0,0,3,3,0,0,3,0],"matrix_rows":[384,152,1,2,4,392,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,280,280,0,0,384,152]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":263,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[262,152,1,258,260,136,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":264,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[134,280,1,130,132,264,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,34,66,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":292,"old":4,"rank":2,"right":{"linear_Z4":[0,0,0,1,1,0,0,1,2],"matrix_rows":[6,190,33,322,356,264,272,64,384],"offset":1,"phase":1,"quadratic_rows":[32,504,472,446,446,411,6,446,190]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,1,64,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":293,"old":4,"rank":2,"right":{"linear_Z4":[0,3,3,3,2,0,0,3,2],"matrix_rows":[22,392,1,18,20,264,32,64,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":56,"old":5,"rank":2,"right":{"linear_Z4":[3,0,3,0,0,0,0,3,0],"matrix_rows":[384,133,385,2,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[261,0,261,0,0,0,0,384,133]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":57,"old":5,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,3,0,3,0],"matrix_rows":[384,168,1,2,4,392,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,296,0,296,0,384,168]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":62,"old":5,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[133,296,129,2,132,264,16,288,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":63,"old":5,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[261,168,257,2,260,136,16,160,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,65,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":114,"old":5,"rank":2,"right":{"linear_Z4":[0,0,3,3,3,3,0,3,2],"matrix_rows":[40,388,1,18,260,88,64,96,384],"offset":3,"phase":2,"quadratic_rows":[0,16,132,120,26,104,40,132,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,35,67,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":115,"old":5,"rank":2,"right":{"linear_Z4":[0,1,1,0,0,0,0,1,2],"matrix_rows":[24,190,33,258,260,360,336,64,384],"offset":1,"phase":1,"quadratic_rows":[32,446,446,454,486,407,24,446,190]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,131,2,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":120,"old":5,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,1,2],"matrix_rows":[189,40,257,18,260,344,64,352,384],"offset":2,"phase":1,"quadratic_rows":[445,16,445,453,423,469,40,445,189]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,65,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":121,"old":5,"rank":2,"right":{"linear_Z4":[0,0,3,3,3,3,0,3,2],"matrix_rows":[24,388,33,2,260,104,80,64,384],"offset":3,"phase":2,"quadratic_rows":[32,0,132,120,88,41,24,132,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,66,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":178,"old":5,"rank":2,"right":{"linear_Z4":[3,0,0,3,3,3,0,3,2],"matrix_rows":[385,24,257,2,36,104,80,64,384],"offset":3,"phase":2,"quadratic_rows":[129,0,32,120,88,44,24,129,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,19,33,65,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":179,"old":5,"rank":2,"right":{"linear_Z4":[2,2,2,3,3,3,0,2,1],"matrix_rows":[415,391,257,290,260,328,368,64,384],"offset":3,"phase":2,"quadratic_rows":[280,312,280,223,255,50,24,280,391]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":259,"old":5,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[134,280,1,130,132,264,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":260,"old":5,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[262,152,1,258,260,136,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":265,"old":5,"rank":2,"right":{"linear_Z4":[0,0,0,3,3,0,0,3,0],"matrix_rows":[384,152,1,2,4,392,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,280,280,0,0,384,152]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":266,"old":5,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,0,0,3,0],"matrix_rows":[384,134,1,386,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,262,262,0,0,0,0,384,134]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":323,"old":5,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,3,0],"matrix_rows":[384,131,385,386,4,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[259,259,0,0,0,0,0,384,131]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,66,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":324,"old":5,"rank":2,"right":{"linear_Z4":[0,0,0,0,3,3,0,3,0],"matrix_rows":[384,176,1,2,4,8,400,416,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,304,304,0,384,176]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":58,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[261,168,257,2,260,136,16,160,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":59,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[133,296,129,2,132,264,16,288,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":60,"old":6,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,3,0,3,0],"matrix_rows":[384,168,1,2,4,392,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,296,0,296,0,384,168]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":61,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,0,0,0,0,3,0],"matrix_rows":[384,133,385,2,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[261,0,261,0,0,0,0,384,133]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":143,"old":6,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[273,162,257,130,4,8,272,160,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":144,"old":6,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[145,290,129,258,4,8,144,288,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":149,"old":6,"rank":2,"right":{"linear_Z4":[3,0,0,0,3,0,0,3,0],"matrix_rows":[384,145,385,2,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[273,0,0,0,273,0,0,384,145]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":150,"old":6,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,3,0,3,0],"matrix_rows":[384,162,1,386,4,8,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,290,0,0,0,290,0,384,162]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":207,"old":6,"rank":2,"right":{"linear_Z4":[0,3,0,3,0,0,0,3,0],"matrix_rows":[384,138,1,386,4,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,266,0,266,0,0,0,384,138]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":208,"old":6,"rank":2,"right":{"linear_Z4":[0,0,3,0,3,0,0,3,0],"matrix_rows":[384,148,1,2,388,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,276,0,276,0,0,384,148]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,65,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":230,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,3,0,3,2],"matrix_rows":[5,416,81,18,68,8,64,288,384],"offset":3,"phase":2,"quadratic_rows":[85,16,69,0,19,160,5,160,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,1,35,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":231,"old":6,"rank":2,"right":{"linear_Z4":[1,0,3,0,0,0,0,0,1],"matrix_rows":[438,187,265,258,12,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[435,13,446,438,13,13,0,13,269]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,33,67,129,3,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":236,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,1,0,1,0,1,2],"matrix_rows":[184,5,337,18,324,264,64,288,384],"offset":2,"phase":1,"quadratic_rows":[341,16,325,440,427,440,5,440,189]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,1,32,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":237,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,2,0,3,0,3,2],"matrix_rows":[13,416,9,2,12,16,288,64,384],"offset":3,"phase":2,"quadratic_rows":[5,0,5,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":294,"old":6,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,2,0,3,2],"matrix_rows":[37,392,33,2,36,264,16,64,384],"offset":3,"phase":2,"quadratic_rows":[5,0,5,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,33,66,129,2,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":295,"old":6,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,1,0,1,2],"matrix_rows":[189,5,321,18,340,264,64,288,384],"offset":2,"phase":1,"quadratic_rows":[504,16,488,445,427,445,5,445,189]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":15,"old":7,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":16,"old":7,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":17,"old":7,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":18,"old":8,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":19,"old":8,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":20,"old":8,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":18,"old":9,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,1,1,2],"matrix_rows":[461,289,2,292,296,16,256,320,384],"offset":0,"phase":0,"quadratic_rows":[237,0,237,237,0,13,205,205,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":21,"old":9,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":22,"old":9,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,1,1,2],"matrix_rows":[461,289,34,260,264,48,256,320,384],"offset":0,"phase":0,"quadratic_rows":[237,32,205,205,32,19,205,205,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":15,"old":10,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":23,"old":10,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":24,"old":10,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":19,"old":11,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,1,1,2],"matrix_rows":[467,289,290,4,8,304,256,320,384],"offset":0,"phase":0,"quadratic_rows":[243,243,0,0,243,19,211,211,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":21,"old":11,"rank":1,"right":{"linear_Z4":[1,1,0,0,2,1,1,1,2],"matrix_rows":[483,257,274,20,24,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[227,243,16,16,14,227,227,227,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":25,"old":11,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,1,1,2],"matrix_rows":[467,289,258,36,40,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[243,211,32,32,211,13,211,211,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":16,"old":12,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,0],"matrix_rows":[56,9,10,4,32,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[8,8,0,19,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":23,"old":12,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,2,0,0,0],"matrix_rows":[40,1,18,20,56,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":26,"old":12,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[56,17,2,20,40,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[16,0,16,24,13,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":17,"old":13,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":24,"old":13,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":26,"old":13,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":20,"old":14,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,1,1,2],"matrix_rows":[462,1,274,276,280,256,32,320,384],"offset":0,"phase":0,"quadratic_rows":[0,222,222,222,14,0,206,206,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":22,"old":14,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":25,"old":14,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":528,"old":15,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":529,"old":15,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[213,257,2,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[469,0,469,0,469,0,469,469,213]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[16,34,65,2,140,3,260,8,12],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":573,"old":15,"rank":4,"right":{"linear_Z4":[2,0,1,2,2,1,3,0,2],"matrix_rows":[12,34,464,144,5,8,40,272,448],"offset":93,"phase":1,"quadratic_rows":[4,40,37,34,64,46,80,0,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[17,46,65,128,6,256,10,2,1],"offset":0,"phase":0,"quadratic_rows":[0,2,12,12,0,0,0,0,0]},"new":575,"old":15,"rank":4,"right":{"linear_Z4":[3,1,3,0,3,0,3,0,2],"matrix_rows":[261,2,194,146,257,210,260,8,32],"offset":3,"phase":2,"quadratic_rows":[5,130,5,0,80,0,80,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":28,"old":16,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":34,"old":16,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[213,257,2,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[469,0,469,0,469,0,469,469,213]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":30,"old":17,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,1,1,2],"matrix_rows":[230,1,258,260,8,16,288,320,384],"offset":0,"phase":0,"quadratic_rows":[0,486,486,0,0,486,486,486,230]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":32,"old":17,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":466,"old":18,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":470,"old":18,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,3,1,2],"matrix_rows":[448,1,66,4,8,16,32,256,384],"offset":132,"phase":2,"quadratic_rows":[0,64,0,0,0,0,194,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":528,"old":18,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,41,10,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,8,37,11,0,5,0,0,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[16,33,67,1,136,2,264,4,12],"offset":0,"phase":0,"quadratic_rows":[2,3,12,4,0,0,0,0,0]},"new":572,"old":18,"rank":4,"right":{"linear_Z4":[2,1,0,3,3,3,0,2,3],"matrix_rows":[42,4,384,464,13,6,32,400,256],"offset":379,"phase":1,"quadratic_rows":[12,46,43,47,80,46,144,320,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":28,"old":19,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":33,"old":19,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,49,34,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[51,35,16,0,21,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":29,"old":20,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":32,"old":20,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,26,20,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,30,22,11,6,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":30,"old":21,"rank":1,"right":{"linear_Z4":[0,2,2,0,0,1,1,1,2],"matrix_rows":[232,9,10,4,256,272,288,320,384],"offset":60,"phase":0,"quadratic_rows":[8,8,0,483,0,488,488,488,232]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":31,"old":21,"rank":1,"right":{"linear_Z4":[3,2,1,3,0,1,3,3,2],"matrix_rows":[461,257,34,292,264,16,256,320,384],"offset":77,"phase":0,"quadratic_rows":[205,32,237,205,0,38,205,205,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":27,"old":22,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,1,1,2],"matrix_rows":[216,17,2,20,264,256,288,320,384],"offset":102,"phase":0,"quadratic_rows":[16,0,16,472,461,0,472,472,216]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":34,"old":22,"rank":1,"right":{"linear_Z4":[2,1,3,1,3,0,3,3,2],"matrix_rows":[470,9,266,260,256,272,32,320,384],"offset":23,"phase":0,"quadratic_rows":[8,222,214,11,214,0,214,214,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":29,"old":23,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":31,"old":23,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":27,"old":24,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":33,"old":24,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":441,"old":25,"rank":1,"right":{"linear_Z4":[2,3,1,2,3,0,3,3,2],"matrix_rows":[470,5,258,256,8,272,288,320,384],"offset":91,"phase":1,"quadratic_rows":[4,214,215,0,214,0,214,214,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":444,"old":25,"rank":1,"right":{"linear_Z4":[2,3,1,3,1,0,3,3,2],"matrix_rows":[462,17,258,276,264,256,32,320,384],"offset":43,"phase":0,"quadratic_rows":[16,206,222,206,21,0,206,206,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":529,"old":25,"rank":1,"right":{"linear_Z4":[2,0,2,0,1,0,1,1,2],"matrix_rows":[216,9,10,4,256,272,288,320,384],"offset":90,"phase":0,"quadratic_rows":[8,8,0,467,472,0,472,472,216]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[18,35,66,129,260,1,3,8,14],"offset":0,"phase":0,"quadratic_rows":[1,12,14,14,0,0,0,0,0]},"new":574,"old":25,"rank":4,"right":{"linear_Z4":[1,2,1,0,0,0,2,0,0],"matrix_rows":[10,271,48,384,105,66,100,32,288],"offset":0,"phase":0,"quadratic_rows":[359,325,367,324,256,261,15,256,191]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":438,"old":26,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":444,"old":26,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":466,"old":26,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":467,"old":26,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":27,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,3,3,0],"matrix_rows":[203,265,266,4,256,16,32,320,384],"offset":23,"phase":0,"quadratic_rows":[451,451,0,448,0,0,459,459,203]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,23,32,67,128,256,5,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":584,"old":27,"rank":3,"right":{"linear_Z4":[1,1,0,2,0,0,2,1,3],"matrix_rows":[203,11,323,257,258,204,256,16,32],"offset":1,"phase":1,"quadratic_rows":[131,131,200,260,0,0,260,135,328]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[11,19,34,68,130,2,257,1,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":592,"old":27,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,2,1,2,1],"matrix_rows":[323,39,8,161,162,32,256,48,192],"offset":70,"phase":1,"quadratic_rows":[452,452,3,256,0,0,451,67,331]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":28,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,49,34,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[51,35,16,0,21,3,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,64,129,1,262,2,4],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":586,"old":28,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,1,0,1],"matrix_rows":[3,448,388,33,50,452,8,32,256],"offset":291,"phase":0,"quadratic_rows":[35,51,68,0,2,3,324,256,448]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,67,1,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":594,"old":28,"rank":3,"right":{"linear_Z4":[2,0,2,0,1,2,1,1,2],"matrix_rows":[18,34,320,19,32,132,40,448,256],"offset":508,"phase":1,"quadratic_rows":[18,1,128,0,17,0,192,196,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":29,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,26,20,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,30,22,11,6,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,66,2,128,261,1,4],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":600,"old":29,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,0,1,0,1],"matrix_rows":[448,6,385,449,18,28,16,32,256],"offset":267,"phase":0,"quadratic_rows":[65,22,30,4,6,0,321,256,448]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,66,4,6,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":608,"old":29,"rank":3,"right":{"linear_Z4":[2,2,0,1,0,2,1,1,2],"matrix_rows":[320,60,20,129,14,32,48,448,256],"offset":475,"phase":3,"quadratic_rows":[128,12,2,10,0,0,192,193,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":30,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,3,3,0],"matrix_rows":[230,1,290,292,8,16,256,320,384],"offset":77,"phase":0,"quadratic_rows":[0,454,454,0,0,448,486,486,230]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,23,39,64,128,259,5,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":602,"old":30,"rank":3,"right":{"linear_Z4":[0,1,1,0,0,2,2,1,3],"matrix_rows":[230,38,326,225,258,260,8,16,256],"offset":1,"phase":1,"quadratic_rows":[224,134,134,0,0,257,257,135,352]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,19,35,65,1,132,258,2,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":610,"old":30,"rank":3,"right":{"linear_Z4":[2,0,0,0,2,0,1,2,1],"matrix_rows":[23,326,32,16,146,148,24,256,192],"offset":133,"phase":1,"quadratic_rows":[6,449,449,0,0,256,454,70,358]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":31,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,0,3,3,2],"matrix_rows":[454,9,266,260,256,272,32,320,384],"offset":61,"phase":1,"quadratic_rows":[8,206,198,11,0,0,198,198,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,23,35,71,131,3,261,1,4],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":616,"old":31,"rank":3,"right":{"linear_Z4":[0,3,2,3,0,0,0,3,3],"matrix_rows":[271,207,78,229,294,32,296,48,256],"offset":511,"phase":1,"quadratic_rows":[292,170,105,174,0,207,292,170,321]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,38,68,134,6,258,2,3],"offset":0,"phase":0,"quadratic_rows":[3,7,2,0,0,0,0,0,0]},"new":624,"old":31,"rank":3,"right":{"linear_Z4":[0,3,1,3,0,1,3,2,3],"matrix_rows":[1,356,42,256,166,32,168,48,192],"offset":15,"phase":2,"quadratic_rows":[256,142,486,138,0,356,484,78,357]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":32,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,64,1,132,262,2,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":618,"old":32,"rank":3,"right":{"linear_Z4":[1,2,1,0,2,3,1,0,1],"matrix_rows":[17,448,416,21,6,16,8,480,256],"offset":443,"phase":3,"quadratic_rows":[5,4,7,0,0,96,352,256,448]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,1,3,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":626,"old":32,"rank":3,"right":{"linear_Z4":[0,2,1,2,1,2,1,1,2],"matrix_rows":[17,12,320,8,6,24,160,448,256],"offset":502,"phase":3,"quadratic_rows":[24,4,22,17,29,128,192,224,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":33,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,33,68,129,1,262,2,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":632,"old":33,"rank":3,"right":{"linear_Z4":[2,2,2,3,0,2,1,0,1],"matrix_rows":[36,448,392,5,6,32,456,48,256],"offset":378,"phase":2,"quadratic_rows":[4,4,3,72,0,0,328,256,448]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,2,3,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":640,"old":33,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,1,1,1,2],"matrix_rows":[18,36,320,3,48,16,136,448,256],"offset":477,"phase":3,"quadratic_rows":[2,35,48,128,36,54,192,200,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":34,"rank":1,"right":{"linear_Z4":[1,1,0,0,3,0,3,3,2],"matrix_rows":[451,273,258,20,8,256,288,320,384],"offset":103,"phase":1,"quadratic_rows":[211,195,16,0,21,0,195,195,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,16,35,64,135,256,5,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":634,"old":34,"rank":3,"right":{"linear_Z4":[3,2,2,0,1,0,2,3,1],"matrix_rows":[17,209,405,453,198,256,8,272,32],"offset":58,"phase":0,"quadratic_rows":[145,196,402,0,85,0,402,199,324]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,19,36,67,130,3,257,1,5],"offset":0,"phase":0,"quadratic_rows":[7,1,5,0,0,0,0,0,0]},"new":642,"old":34,"rank":3,"right":{"linear_Z4":[3,1,0,0,3,1,3,2,3],"matrix_rows":[354,49,4,163,32,256,40,176,192],"offset":39,"phase":2,"quadratic_rows":[147,483,256,0,145,354,482,83,358]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,131,5,6,264,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":35,"rank":5,"right":{"linear_Z4":[2,2,0,0,0,0,0,0,1],"matrix_rows":[49,50,52,64,384,16,32,56,256],"offset":488,"phase":1,"quadratic_rows":[32,16,48,0,6,5,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,129,3,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":413,"old":35,"rank":4,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,1],"matrix_rows":[3,6,64,384,48,18,32,56,256],"offset":436,"phase":1,"quadratic_rows":[50,21,34,0,3,5,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,131,1,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":414,"old":35,"rank":4,"right":{"linear_Z4":[3,1,0,0,0,2,0,0,1],"matrix_rows":[6,5,64,384,39,48,16,56,256],"offset":437,"phase":2,"quadratic_rows":[35,19,48,0,6,5,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,129,2,3,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":415,"old":35,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,2,0,0,1],"matrix_rows":[3,5,64,384,33,48,16,56,256],"offset":436,"phase":1,"quadratic_rows":[38,49,17,0,6,3,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,131,1,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":416,"old":35,"rank":4,"right":{"linear_Z4":[0,0,2,0,2,2,0,0,1],"matrix_rows":[5,6,64,384,16,32,52,56,256],"offset":388,"phase":3,"quadratic_rows":[20,36,51,0,5,6,256,256,448]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":44,"old":36,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":45,"old":36,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,2,0],"matrix_rows":[144,1,2,4,72,208,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,80,64,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":46,"old":36,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,2,0],"matrix_rows":[144,65,2,68,8,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,64,0,80,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":47,"old":37,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":48,"old":37,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,2],"matrix_rows":[272,1,2,4,72,336,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,80,64,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":49,"old":37,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,2],"matrix_rows":[272,65,2,68,8,336,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,0,64,0,80,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":47,"old":38,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,2,1,0,2],"matrix_rows":[349,289,2,292,296,272,256,320,128],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,93,13,93,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":50,"old":38,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,0,2],"matrix_rows":[317,321,2,324,264,336,288,256,128],"offset":0,"phase":0,"quadratic_rows":[125,0,125,61,125,61,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":51,"old":38,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,0,2],"matrix_rows":[317,257,2,260,328,336,352,256,128],"offset":0,"phase":0,"quadratic_rows":[61,0,61,125,125,125,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":44,"old":39,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,2,1,2,0],"matrix_rows":[221,161,2,164,168,144,128,192,256],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,93,13,93,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":52,"old":39,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,2,0],"matrix_rows":[189,193,2,196,136,208,160,128,256],"offset":0,"phase":0,"quadratic_rows":[125,0,125,61,125,61,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":53,"old":39,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,2,0],"matrix_rows":[189,129,2,132,200,208,224,128,256],"offset":0,"phase":0,"quadratic_rows":[61,0,61,125,125,125,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":48,"old":40,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":50,"old":40,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":54,"old":40,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,2],"matrix_rows":[264,33,2,36,296,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":45,"old":41,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":52,"old":41,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":55,"old":41,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,2,0],"matrix_rows":[136,33,2,36,168,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":46,"old":42,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":53,"old":42,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":55,"old":42,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":49,"old":43,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":51,"old":43,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":54,"old":43,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":530,"old":44,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":531,"old":44,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[16,33,67,1,136,2,268,12,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":577,"old":44,"rank":4,"right":{"linear_Z4":[2,1,0,3,1,3,3,2,0],"matrix_rows":[42,4,320,400,13,6,32,464,128],"offset":115,"phase":1,"quadratic_rows":[12,46,43,47,80,46,80,0,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,1,34,66,132,256,8,12,2],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":579,"old":44,"rank":4,"right":{"linear_Z4":[0,2,3,3,0,0,0,1,2],"matrix_rows":[2,268,16,192,1,260,264,128,32],"offset":135,"phase":2,"quadratic_rows":[0,0,12,12,128,0,128,208,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":57,"old":45,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":63,"old":45,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":59,"old":46,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":61,"old":46,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":487,"old":47,"rank":1,"right":{"linear_Z4":[0,2,0,0,1,0,3,0,2],"matrix_rows":[336,1,66,4,8,272,32,256,128],"offset":132,"phase":2,"quadratic_rows":[0,64,0,0,80,0,82,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":490,"old":47,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":530,"old":47,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[16,34,67,1,136,2,268,4,12],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":576,"old":47,"rank":4,"right":{"linear_Z4":[2,1,0,1,1,1,3,0,2],"matrix_rows":[44,42,192,400,13,46,32,464,256],"offset":115,"phase":1,"quadratic_rows":[12,6,43,45,80,44,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":57,"old":48,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":62,"old":48,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":58,"old":49,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":61,"old":49,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":59,"old":50,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":60,"old":50,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":56,"old":51,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":63,"old":51,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":58,"old":52,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":60,"old":52,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":56,"old":53,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":62,"old":53,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":439,"old":54,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,1,2,0],"matrix_rows":[94,1,130,132,136,144,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,222,222,222,222,0,222,94,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":442,"old":54,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":531,"old":54,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[16,42,69,129,258,4,10,8,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":578,"old":54,"rank":4,"right":{"linear_Z4":[2,2,0,1,3,0,2,0,2],"matrix_rows":[300,210,36,130,13,66,256,288,208],"offset":155,"phase":1,"quadratic_rows":[12,16,1,9,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":440,"old":55,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":442,"old":55,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":488,"old":55,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,33,2,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":489,"old":55,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":64,"old":56,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,2,0,0,0],"matrix_rows":[24,33,2,36,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,0,32,120,88,13,24,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,32,64,132,6,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":684,"old":56,"rank":3,"right":{"linear_Z4":[0,1,0,2,3,2,2,0,2],"matrix_rows":[257,96,18,256,98,4,56,64,384],"offset":192,"phase":2,"quadratic_rows":[0,114,0,48,122,26,18,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,20,34,64,133,1,4,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":700,"old":56,"rank":3,"right":{"linear_Z4":[0,1,0,2,0,1,1,0,2],"matrix_rows":[112,260,98,1,114,256,56,64,384],"offset":213,"phase":1,"quadratic_rows":[0,18,0,48,106,120,112,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":64,"old":57,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,2,0,0,2],"matrix_rows":[24,33,2,36,296,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,0,32,312,280,13,0,0,24]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[10,23,6,32,65,130,3,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":685,"old":57,"rank":3,"right":{"linear_Z4":[1,1,1,0,3,3,1,0,0],"matrix_rows":[118,275,354,273,358,56,320,256,384],"offset":222,"phase":2,"quadratic_rows":[3,355,276,48,284,362,354,0,118]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[15,3,17,32,69,129,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":701,"old":57,"rank":3,"right":{"linear_Z4":[3,1,1,0,2,1,3,0,3],"matrix_rows":[277,113,355,115,276,56,320,256,384],"offset":213,"phase":3,"quadratic_rows":[117,274,5,48,363,121,113,0,274]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":58,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,2,0],"matrix_rows":[136,33,2,36,168,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,68,129,2,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":692,"old":58,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,3,0],"matrix_rows":[5,160,170,81,162,68,128,64,256],"offset":69,"phase":1,"quadratic_rows":[85,10,69,34,1,136,5,160,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,20,34,65,130,4,2,5,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":708,"old":58,"rank":3,"right":{"linear_Z4":[3,1,3,0,2,2,0,3,0],"matrix_rows":[8,5,170,65,10,84,128,64,256],"offset":87,"phase":1,"quadratic_rows":[69,162,85,32,4,138,5,162,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":59,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,2],"matrix_rows":[264,33,2,36,296,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,68,129,2,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":693,"old":59,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,0,3],"matrix_rows":[5,288,298,81,290,68,256,64,128],"offset":69,"phase":1,"quadratic_rows":[85,10,69,34,1,264,5,0,288]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,20,34,65,130,4,2,256,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":709,"old":59,"rank":3,"right":{"linear_Z4":[3,1,3,0,2,2,0,0,3],"matrix_rows":[8,5,298,65,10,84,256,64,128],"offset":87,"phase":1,"quadratic_rows":[69,290,85,32,4,266,5,0,290]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":64,"old":60,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,2,0,0,0],"matrix_rows":[13,289,2,292,296,16,256,64,384],"offset":1,"phase":1,"quadratic_rows":[301,0,301,301,0,13,0,0,13]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,35,68,1,128,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":716,"old":60,"rank":3,"right":{"linear_Z4":[2,1,0,0,3,0,3,0,2],"matrix_rows":[82,4,264,21,6,64,256,32,384],"offset":59,"phase":1,"quadratic_rows":[20,86,83,0,87,0,86,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,35,64,1,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":732,"old":60,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,0,1,0,2],"matrix_rows":[84,82,288,21,86,64,8,256,384],"offset":59,"phase":1,"quadratic_rows":[20,6,83,0,85,0,84,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":64,"old":61,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,39,71,129,2,6,263,7],"offset":0,"phase":0,"quadratic_rows":[3,5,2,0,0,0,0,0,0]},"new":717,"old":61,"rank":3,"right":{"linear_Z4":[0,2,2,1,1,1,0,0,1],"matrix_rows":[42,282,92,21,358,256,280,320,384],"offset":246,"phase":2,"quadratic_rows":[20,84,43,124,283,364,42,0,304]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,17,39,2,68,3,135,263,7],"offset":0,"phase":0,"quadratic_rows":[3,3,4,0,0,0,0,0,0]},"new":733,"old":61,"rank":3,"right":{"linear_Z4":[3,3,2,0,3,1,0,0,2],"matrix_rows":[10,44,17,293,46,256,304,320,384],"offset":235,"phase":2,"quadratic_rows":[309,38,35,0,305,55,0,0,17]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":62,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,2,0,0,2],"matrix_rows":[285,289,2,292,296,272,256,320,128],"offset":1,"phase":1,"quadratic_rows":[61,0,61,61,29,13,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,2,36,68,132,4,3,256],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":724,"old":62,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,3,0],"matrix_rows":[135,132,40,128,134,88,64,96,256],"offset":13,"phase":1,"quadratic_rows":[6,3,129,120,8,104,40,132,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,1,18,32,64,132,260,2,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":740,"old":62,"rank":3,"right":{"linear_Z4":[2,3,0,2,2,1,0,3,2],"matrix_rows":[129,135,288,131,128,8,48,256,320],"offset":484,"phase":1,"quadratic_rows":[132,6,3,0,32,48,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":63,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,2,0,2,0],"matrix_rows":[157,161,2,164,168,144,128,192,256],"offset":1,"phase":1,"quadratic_rows":[61,0,61,61,29,13,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,2,36,68,132,4,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":725,"old":63,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,0,3],"matrix_rows":[263,260,40,256,262,88,64,96,128],"offset":13,"phase":1,"quadratic_rows":[6,3,257,120,8,104,40,0,260]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,1,18,32,64,132,260,4,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":741,"old":63,"rank":3,"right":{"linear_Z4":[2,3,0,2,2,1,0,2,3],"matrix_rows":[257,263,160,259,256,8,48,128,192],"offset":484,"phase":1,"quadratic_rows":[260,6,3,0,32,48,0,0,257]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,2,4,72,144,13,21,261,5],"offset":0,"phase":0,"quadratic_rows":[24,0,24,13,21,0,0,0,0]},"new":1,"old":64,"rank":5,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[353,2,100,264,272,256,288,320,384],"offset":254,"phase":1,"quadratic_rows":[96,0,96,32,64,13,21,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,37,4,66,136,7,13,261,5],"offset":0,"phase":0,"quadratic_rows":[15,7,15,13,0,0,0,0,0]},"new":413,"old":64,"rank":4,"right":{"linear_Z4":[2,2,2,1,0,0,0,0,3],"matrix_rows":[107,264,366,272,256,266,288,320,384],"offset":254,"phase":3,"quadratic_rows":[362,13,362,47,64,13,21,0,261]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,3,33,68,136,5,9,257,1],"offset":0,"phase":0,"quadratic_rows":[15,3,5,9,0,0,0,0,0]},"new":414,"old":64,"rank":4,"right":{"linear_Z4":[1,3,0,0,0,1,1,0,2],"matrix_rows":[358,261,264,272,263,256,288,320,384],"offset":204,"phase":0,"quadratic_rows":[3,99,96,32,64,110,118,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,37,4,72,130,13,7,261,5],"offset":0,"phase":0,"quadratic_rows":[15,7,15,13,0,0,0,0,0]},"new":417,"old":64,"rank":4,"right":{"linear_Z4":[2,2,2,0,1,0,0,0,3],"matrix_rows":[115,272,374,264,256,274,288,320,384],"offset":254,"phase":3,"quadratic_rows":[370,21,370,32,87,13,21,0,261]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,3,37,73,129,12,4,261,5],"offset":0,"phase":0,"quadratic_rows":[15,7,15,13,0,0,0,0,0]},"new":418,"old":64,"rank":4,"right":{"linear_Z4":[2,0,0,2,3,2,2,0,3],"matrix_rows":[382,285,123,264,287,256,288,320,384],"offset":200,"phase":3,"quadratic_rows":[120,24,120,295,87,13,21,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":73,"old":65,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":74,"old":65,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":75,"old":65,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":76,"old":66,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":77,"old":66,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":78,"old":66,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":76,"old":67,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":79,"old":67,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":80,"old":67,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":73,"old":68,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,2,0,1,2],"matrix_rows":[413,289,2,292,296,272,256,64,384],"offset":0,"phase":0,"quadratic_rows":[189,0,189,189,157,13,0,157,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":81,"old":68,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":82,"old":68,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":77,"old":69,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[104,33,34,4,72,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,40,0,11,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":79,"old":69,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,0],"matrix_rows":[104,1,10,12,64,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,8,8,38,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":83,"old":69,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,2,0,0],"matrix_rows":[72,33,2,36,104,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":74,"old":70,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,2,1,2],"matrix_rows":[411,321,322,4,328,272,32,256,384],"offset":0,"phase":0,"quadratic_rows":[219,219,0,219,155,0,11,155,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":81,"old":70,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,2,1,2],"matrix_rows":[411,257,322,68,264,272,96,256,384],"offset":0,"phase":0,"quadratic_rows":[155,219,64,155,155,64,38,155,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":84,"old":70,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":75,"old":71,"rank":1,"right":{"linear_Z4":[0,1,1,0,1,1,2,1,2],"matrix_rows":[438,1,322,324,8,272,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,246,246,0,182,246,38,182,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":82,"old":71,"rank":1,"right":{"linear_Z4":[0,1,1,0,1,1,2,1,2],"matrix_rows":[438,65,322,260,72,272,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,246,182,64,182,182,11,182,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":84,"old":71,"rank":1,"right":{"linear_Z4":[0,1,1,0,1,2,1,1,2],"matrix_rows":[470,33,258,292,40,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,214,246,32,214,13,214,214,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":78,"old":72,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":80,"old":72,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":83,"old":72,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":532,"old":73,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,33,10,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,8,45,14,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":533,"old":73,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,0,0,0,0,0],"matrix_rows":[16,34,67,1,132,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[3,1,8,12,0,0,0,0,0]},"new":581,"old":73,"rank":4,"right":{"linear_Z4":[2,1,0,1,0,1,3,2,3],"matrix_rows":[44,42,464,384,13,46,32,256,448],"offset":247,"phase":1,"quadratic_rows":[12,6,43,45,192,44,80,272,384]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,1,34,66,132,256,2,8,12],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":583,"old":73,"rank":4,"right":{"linear_Z4":[0,2,3,3,0,0,2,0,1],"matrix_rows":[2,76,16,384,1,68,72,256,32],"offset":135,"phase":2,"quadratic_rows":[0,0,12,12,256,0,0,256,400]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":86,"old":74,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":92,"old":74,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,65,74,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[67,75,8,14,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":88,"old":75,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":90,"old":75,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,98,68,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,102,70,0,0,35,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":510,"old":76,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[213,257,2,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[469,0,469,0,469,0,469,469,213]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":513,"old":76,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[2,1,258,4,8,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,258,0,0,0,0,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":532,"old":76,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[16,34,65,3,136,2,268,12,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":580,"old":76,"rank":4,"right":{"linear_Z4":[2,0,1,1,3,2,2,2,0],"matrix_rows":[36,10,320,464,5,32,40,400,192],"offset":93,"phase":1,"quadratic_rows":[4,40,13,46,80,10,16,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":86,"old":77,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":91,"old":77,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":87,"old":78,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":90,"old":78,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":88,"old":79,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":89,"old":79,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":85,"old":80,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":92,"old":80,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":87,"old":81,"rank":1,"right":{"linear_Z4":[0,2,2,1,1,0,0,1,2],"matrix_rows":[184,33,34,4,264,272,256,320,384],"offset":204,"phase":0,"quadratic_rows":[32,32,0,440,440,411,0,440,184]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":89,"old":81,"rank":1,"right":{"linear_Z4":[3,2,1,1,3,3,0,3,2],"matrix_rows":[437,257,10,268,256,272,288,64,384],"offset":29,"phase":0,"quadratic_rows":[181,8,189,14,181,181,0,181,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":85,"old":82,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,1,0,1,2],"matrix_rows":[184,1,10,12,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[0,8,8,438,440,440,0,440,184]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":91,"old":82,"rank":1,"right":{"linear_Z4":[1,2,3,3,3,1,0,3,2],"matrix_rows":[413,289,34,260,264,272,256,64,384],"offset":71,"phase":0,"quadratic_rows":[189,32,157,157,157,35,0,157,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":438,"old":83,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":440,"old":83,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":533,"old":83,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[16,42,69,129,258,4,5,8,10],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":582,"old":83,"rank":4,"right":{"linear_Z4":[2,2,0,1,3,0,2,0,2],"matrix_rows":[108,402,36,130,13,258,64,96,400],"offset":155,"phase":1,"quadratic_rows":[12,16,1,9,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":439,"old":84,"rank":1,"right":{"linear_Z4":[1,3,2,3,3,0,3,3,2],"matrix_rows":[475,257,386,132,392,400,32,448,256],"offset":444,"phase":2,"quadratic_rows":[219,91,128,91,91,0,91,133,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":441,"old":84,"rank":1,"right":{"linear_Z4":[3,0,2,3,0,0,0,0,0],"matrix_rows":[9,37,2,32,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,1,41,0,9,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":510,"old":84,"rank":1,"right":{"linear_Z4":[2,0,2,0,1,0,1,1,2],"matrix_rows":[216,1,10,12,256,272,288,320,384],"offset":90,"phase":0,"quadratic_rows":[0,8,8,470,472,0,472,472,216]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":512,"old":84,"rank":1,"right":{"linear_Z4":[2,3,2,1,3,0,3,3,2],"matrix_rows":[474,1,258,12,256,272,288,320,384],"offset":91,"phase":1,"quadratic_rows":[0,218,8,222,218,0,218,218,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":85,"rank":1,"right":{"linear_Z4":[1,1,0,0,3,0,0,3,0],"matrix_rows":[179,289,290,4,8,272,256,64,384],"offset":71,"phase":0,"quadratic_rows":[403,403,0,0,435,400,0,435,179]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,32,64,131,6,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":686,"old":85,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,2,0,1,3],"matrix_rows":[19,179,288,273,274,180,8,256,64],"offset":2,"phase":1,"quadratic_rows":[432,432,176,0,263,263,0,135,307]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,23,33,65,130,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":710,"old":85,"rank":3,"right":{"linear_Z4":[3,3,2,0,0,0,2,0,2],"matrix_rows":[71,403,163,321,322,64,72,256,384],"offset":131,"phase":1,"quadratic_rows":[55,55,3,0,131,131,0,48,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":86,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,65,74,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[67,75,8,14,0,0,3,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":687,"old":86,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,0,0,2,3],"matrix_rows":[3,384,404,73,66,388,64,256,32],"offset":133,"phase":1,"quadratic_rows":[75,67,20,1,132,0,3,272,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,65,132,3,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":711,"old":86,"rank":3,"right":{"linear_Z4":[2,0,2,1,3,2,0,1,2],"matrix_rows":[106,66,400,11,32,20,96,256,384],"offset":233,"phase":1,"quadratic_rows":[10,1,16,9,148,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":87,"rank":1,"right":{"linear_Z4":[0,1,1,0,3,0,0,3,0],"matrix_rows":[158,1,266,268,256,272,32,64,384],"offset":29,"phase":0,"quadratic_rows":[0,406,406,400,414,0,0,414,158]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,4,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":694,"old":87,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,0,2],"matrix_rows":[71,398,150,64,322,324,256,96,384],"offset":67,"phase":1,"quadratic_rows":[6,31,31,134,134,0,0,24,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,69,3,128,256,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":702,"old":87,"rank":3,"right":{"linear_Z4":[0,0,0,2,2,0,0,1,3],"matrix_rows":[158,278,8,153,18,20,256,32,64],"offset":1,"phase":1,"quadratic_rows":[152,408,408,263,263,0,0,135,286]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":88,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,98,68,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,102,70,0,0,35,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,70,129,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":695,"old":88,"rank":3,"right":{"linear_Z4":[2,2,0,0,3,1,2,1,2],"matrix_rows":[400,36,68,17,38,64,72,256,384],"offset":248,"phase":3,"quadratic_rows":[16,36,2,0,145,34,0,144,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,64,132,258,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":703,"old":88,"rank":3,"right":{"linear_Z4":[3,3,3,0,0,2,0,2,3],"matrix_rows":[384,6,401,385,66,100,8,256,64],"offset":134,"phase":1,"quadratic_rows":[17,70,102,0,129,4,6,272,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":89,"rank":1,"right":{"linear_Z4":[0,1,1,0,3,3,0,3,2],"matrix_rows":[406,33,290,260,8,272,256,320,384],"offset":205,"phase":1,"quadratic_rows":[32,182,150,0,150,35,0,150,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,34,66,4,135,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":726,"old":89,"rank":3,"right":{"linear_Z4":[0,3,2,0,0,3,2,0,2],"matrix_rows":[423,98,182,256,326,64,72,352,384],"offset":11,"phase":1,"quadratic_rows":[166,55,19,0,166,51,0,17,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,39,71,135,259,4,1,2],"offset":0,"phase":0,"quadratic_rows":[4,4,7,0,0,0,0,0,0]},"new":734,"old":89,"rank":3,"right":{"linear_Z4":[0,0,2,0,3,1,2,3,1],"matrix_rows":[212,340,308,165,38,320,328,368,256],"offset":420,"phase":2,"quadratic_rows":[164,36,371,0,468,487,180,241,308]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":90,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,132,1,3,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":727,"old":90,"rank":3,"right":{"linear_Z4":[0,2,1,2,3,2,1,1,2],"matrix_rows":[65,36,400,32,6,96,24,256,384],"offset":242,"phase":1,"quadratic_rows":[96,4,70,16,152,65,101,144,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,68,132,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":735,"old":90,"rank":3,"right":{"linear_Z4":[1,2,1,3,0,0,2,2,3],"matrix_rows":[65,384,408,69,6,64,392,256,32],"offset":189,"phase":0,"quadratic_rows":[5,4,7,24,136,0,0,272,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":91,"rank":1,"right":{"linear_Z4":[1,1,0,3,3,0,0,3,2],"matrix_rows":[403,257,266,12,256,272,32,320,384],"offset":151,"phase":1,"quadratic_rows":[147,155,8,14,147,0,0,147,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,39,65,1,128,256,3,5],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":718,"old":91,"rank":3,"right":{"linear_Z4":[2,3,3,1,1,0,0,2,3],"matrix_rows":[10,388,4,149,134,256,24,32,64],"offset":62,"phase":1,"quadratic_rows":[148,142,151,26,157,0,0,279,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,17,34,70,4,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":742,"old":91,"rank":3,"right":{"linear_Z4":[2,1,0,2,0,0,0,3,2],"matrix_rows":[194,463,155,323,64,320,328,96,384],"offset":0,"phase":0,"quadratic_rows":[22,151,139,20,139,0,0,150,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":92,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,65,130,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":719,"old":92,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,3,2,2,3],"matrix_rows":[68,432,384,5,6,64,72,256,416],"offset":186,"phase":3,"quadratic_rows":[4,4,3,0,160,48,0,272,384]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,3,68,4,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":743,"old":92,"rank":3,"right":{"linear_Z4":[2,1,0,1,1,2,2,0,0],"matrix_rows":[66,12,16,3,72,64,48,128,256],"offset":25,"phase":3,"quadratic_rows":[2,11,72,78,48,16,12,0,0]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,134,264,3,5,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":93,"rank":5,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,1],"matrix_rows":[33,34,36,16,384,64,96,104,256],"offset":431,"phase":1,"quadratic_rows":[96,64,32,0,256,5,3,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,130,260,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":413,"old":93,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,2,0,1],"matrix_rows":[3,6,16,384,32,66,96,104,256],"offset":484,"phase":1,"quadratic_rows":[34,69,98,0,256,5,6,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,130,260,3,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":414,"old":93,"rank":4,"right":{"linear_Z4":[1,1,2,0,0,2,2,0,1],"matrix_rows":[6,5,16,384,103,32,64,104,256],"offset":389,"phase":0,"quadratic_rows":[99,67,32,0,256,5,3,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,131,260,1,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":419,"old":93,"rank":4,"right":{"linear_Z4":[2,0,0,0,0,2,2,0,1],"matrix_rows":[3,5,16,384,97,32,64,104,256],"offset":388,"phase":3,"quadratic_rows":[102,33,65,0,256,3,5,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,130,260,3,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":420,"old":93,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,2,0,0,1],"matrix_rows":[5,6,16,384,64,96,36,104,256],"offset":484,"phase":1,"quadratic_rows":[68,100,35,0,256,6,3,256,400]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":102,"old":94,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":103,"old":94,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":104,"old":94,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":105,"old":95,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,2,0,1,2],"matrix_rows":[407,289,290,260,8,304,256,64,384],"offset":0,"phase":0,"quadratic_rows":[183,183,151,0,183,19,0,151,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":106,"old":95,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":107,"old":95,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":105,"old":96,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":108,"old":96,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":109,"old":96,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":102,"old":97,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":110,"old":97,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":111,"old":97,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,2,0,0],"matrix_rows":[98,1,66,4,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":106,"old":98,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,2,1,2],"matrix_rows":[399,257,258,260,328,80,96,256,384],"offset":0,"phase":0,"quadratic_rows":[143,143,143,207,64,64,56,143,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":108,"old":98,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,2,1,2],"matrix_rows":[399,321,322,260,328,16,32,256,384],"offset":0,"phase":0,"quadratic_rows":[207,207,143,207,0,0,11,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":112,"old":98,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":103,"old":99,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":110,"old":99,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[81,65,18,4,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[17,16,0,16,11,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":113,"old":99,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":104,"old":100,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[98,33,66,4,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,32,0,11,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":111,"old":100,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":113,"old":100,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,2,0,0],"matrix_rows":[66,33,98,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":107,"old":101,"rank":1,"right":{"linear_Z4":[0,0,1,1,1,1,2,1,2],"matrix_rows":[444,65,66,260,328,272,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,64,188,252,188,188,11,188,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":109,"old":101,"rank":1,"right":{"linear_Z4":[0,0,1,1,1,1,2,1,2],"matrix_rows":[444,1,2,260,328,336,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,0,188,252,252,252,56,188,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":112,"old":101,"rank":1,"right":{"linear_Z4":[0,0,1,1,1,2,1,1,2],"matrix_rows":[476,33,34,260,264,304,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,32,220,220,252,19,220,220,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":535,"old":102,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":537,"old":102,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,3,3,2],"matrix_rows":[463,257,258,260,264,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[207,207,207,207,0,0,207,207,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":587,"old":102,"rank":2,"right":{"linear_Z4":[0,0,3,0,0,0,3,3,0],"matrix_rows":[384,196,1,2,388,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,324,0,0,0,324,384,196]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,35,78,131,259,3,5,9,1],"offset":0,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]},"new":591,"old":102,"rank":4,"right":{"linear_Z4":[2,2,1,1,0,1,1,1,0],"matrix_rows":[491,455,428,364,33,34,492,32,48],"offset":204,"phase":0,"quadratic_rows":[12,12,239,239,0,236,236,236,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":115,"old":103,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":121,"old":103,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":117,"old":104,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":119,"old":104,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":535,"old":105,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":536,"old":105,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,33,72,3,130,2,12,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,8,12,0,0,0,0,0]},"new":586,"old":105,"rank":4,"right":{"linear_Z4":[3,3,1,1,0,0,3,0,2],"matrix_rows":[27,24,192,388,41,58,452,32,256],"offset":3,"phase":2,"quadratic_rows":[51,35,68,24,9,3,324,256,192]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,33,66,4,129,256,1,8,10],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":589,"old":105,"rank":4,"right":{"linear_Z4":[0,3,0,2,3,0,2,0,1],"matrix_rows":[82,4,8,384,1,66,256,80,32],"offset":71,"phase":2,"quadratic_rows":[0,18,256,0,18,0,0,256,388]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":115,"old":106,"rank":1,"right":{"linear_Z4":[0,1,1,2,2,0,0,1,2],"matrix_rows":[166,33,258,260,40,16,256,320,384],"offset":240,"phase":0,"quadratic_rows":[32,422,422,32,0,399,0,422,166]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":120,"old":106,"rank":1,"right":{"linear_Z4":[1,0,1,2,0,2,0,1,2],"matrix_rows":[149,257,18,260,24,256,32,320,384],"offset":240,"phase":0,"quadratic_rows":[405,16,405,16,399,0,0,405,149]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":116,"old":107,"rank":1,"right":{"linear_Z4":[3,1,3,2,1,3,0,3,2],"matrix_rows":[423,257,274,260,24,256,288,64,384],"offset":53,"phase":0,"quadratic_rows":[167,183,167,16,26,167,0,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":119,"old":107,"rank":1,"right":{"linear_Z4":[1,3,3,2,3,1,0,3,2],"matrix_rows":[407,289,258,260,40,272,256,64,384],"offset":83,"phase":0,"quadratic_rows":[183,151,151,32,151,41,0,151,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":117,"old":108,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":118,"old":108,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":114,"old":109,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[40,1,18,4,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,16,0,120,26,104,40,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":121,"old":109,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,33,2,4,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,0,0,120,88,41,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":116,"old":110,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":118,"old":110,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":114,"old":111,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":120,"old":111,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":534,"old":112,"rank":1,"right":{"linear_Z4":[1,3,3,3,2,0,1,3,2],"matrix_rows":[399,321,258,260,264,80,32,256,384],"offset":163,"phase":0,"quadratic_rows":[207,143,143,143,64,0,81,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":537,"old":112,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,35,67,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":585,"old":112,"rank":2,"right":{"linear_Z4":[2,0,0,0,2,0,1,0,3],"matrix_rows":[286,158,193,322,324,328,400,32,256],"offset":319,"phase":1,"quadratic_rows":[192,192,192,192,0,0,207,335,384]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,18,34,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":590,"old":112,"rank":2,"right":{"linear_Z4":[0,0,0,1,3,0,1,1,2],"matrix_rows":[3,479,289,306,256,264,32,320,384],"offset":1,"phase":1,"quadratic_rows":[252,236,219,223,221,3,223,223,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":534,"old":113,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":536,"old":113,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,34,74,12,133,261,5,4,7],"offset":0,"phase":0,"quadratic_rows":[3,15,14,14,0,0,0,0,0]},"new":584,"old":113,"rank":4,"right":{"linear_Z4":[3,3,2,2,0,0,0,3,3],"matrix_rows":[336,207,472,468,337,322,476,64,96],"offset":436,"phase":1,"quadratic_rows":[415,399,195,195,385,0,12,415,403]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":588,"old":113,"rank":2,"right":{"linear_Z4":[2,2,0,3,1,0,2,3,2],"matrix_rows":[80,392,1,18,4,264,64,96,384],"offset":207,"phase":2,"quadratic_rows":[0,16,0,136,18,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":114,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[98,33,66,4,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,32,0,11,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,64,130,4,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":668,"old":114,"rank":3,"right":{"linear_Z4":[2,2,3,2,0,1,3,1,2],"matrix_rows":[388,66,96,5,64,256,40,80,384],"offset":248,"phase":3,"quadratic_rows":[4,0,133,32,0,104,96,132,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,18,36,64,128,258,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":700,"old":114,"rank":3,"right":{"linear_Z4":[3,1,0,2,0,1,2,2,3],"matrix_rows":[384,66,389,385,98,256,40,16,64],"offset":374,"phase":0,"quadratic_rows":[5,34,129,32,0,42,0,260,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":115,"rank":1,"right":{"linear_Z4":[3,0,1,0,2,0,0,1,2],"matrix_rows":[149,257,18,260,24,256,32,320,384],"offset":162,"phase":1,"quadratic_rows":[405,16,405,16,399,0,0,405,149]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,39,71,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":669,"old":115,"rank":3,"right":{"linear_Z4":[2,0,0,3,3,0,2,0,2],"matrix_rows":[89,410,156,64,256,328,336,96,384],"offset":19,"phase":1,"quadratic_rows":[24,152,152,31,31,0,0,6,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,64,133,256,5,1,7],"offset":0,"phase":0,"quadratic_rows":[4,6,3,0,0,0,0,0,0]},"new":701,"old":115,"rank":3,"right":{"linear_Z4":[0,2,0,0,2,0,1,1,3],"matrix_rows":[210,66,272,147,320,20,24,64,32],"offset":1,"phase":1,"quadratic_rows":[146,321,16,16,269,0,450,193,338]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":116,"rank":1,"right":{"linear_Z4":[1,0,3,1,0,0,0,3,0],"matrix_rows":[173,289,2,260,296,16,256,64,384],"offset":83,"phase":0,"quadratic_rows":[397,0,429,397,0,388,0,429,173]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,16,35,67,128,6,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":676,"old":116,"rank":3,"right":{"linear_Z4":[2,2,1,0,0,1,0,0,1],"matrix_rows":[169,9,288,261,166,256,424,16,64],"offset":57,"phase":0,"quadratic_rows":[420,164,167,256,0,167,0,295,393]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,22,34,65,129,4,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":710,"old":116,"rank":3,"right":{"linear_Z4":[2,2,0,1,0,0,0,3,2],"matrix_rows":[200,463,171,321,330,320,64,80,384],"offset":0,"phase":0,"quadratic_rows":[36,44,139,174,0,139,0,172,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":117,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,130,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":677,"old":117,"rank":3,"right":{"linear_Z4":[3,2,0,3,3,0,0,2,3],"matrix_rows":[9,404,384,67,64,256,72,400,32],"offset":35,"phase":1,"quadratic_rows":[75,1,144,73,20,0,9,260,384]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,36,65,4,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":711,"old":117,"rank":3,"right":{"linear_Z4":[2,0,1,3,2,1,3,0,0],"matrix_rows":[106,34,4,11,96,20,32,128,256],"offset":27,"phase":0,"quadratic_rows":[10,33,20,73,4,34,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":118,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,129,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":720,"old":118,"rank":3,"right":{"linear_Z4":[2,1,0,2,0,3,2,2,3],"matrix_rows":[66,420,384,3,64,256,8,80,416],"offset":234,"phase":3,"quadratic_rows":[2,3,160,0,0,36,0,260,384]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,19,36,1,66,4,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":748,"old":118,"rank":3,"right":{"linear_Z4":[2,0,1,3,0,2,1,0,0],"matrix_rows":[74,66,4,11,64,36,80,128,256],"offset":27,"phase":0,"quadratic_rows":[10,65,36,73,0,4,74,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":119,"rank":1,"right":{"linear_Z4":[0,1,3,1,0,0,0,3,0],"matrix_rows":[158,1,274,260,280,256,32,64,384],"offset":53,"phase":0,"quadratic_rows":[0,398,414,398,388,0,0,414,158]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,67,5,128,256,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":721,"old":119,"rank":3,"right":{"linear_Z4":[2,2,1,0,1,0,0,0,1],"matrix_rows":[10,154,272,149,262,256,408,32,64],"offset":58,"phase":0,"quadratic_rows":[148,404,151,256,151,0,0,279,394]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,22,34,65,4,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":749,"old":119,"rank":3,"right":{"linear_Z4":[2,2,0,1,0,0,0,3,2],"matrix_rows":[200,463,155,329,322,320,64,96,384],"offset":0,"phase":0,"quadratic_rows":[28,20,139,157,139,0,0,156,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":120,"rank":1,"right":{"linear_Z4":[0,3,1,0,0,2,0,1,2],"matrix_rows":[166,33,258,260,40,16,256,320,384],"offset":196,"phase":1,"quadratic_rows":[32,422,422,32,0,399,0,422,166]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,39,66,135,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":730,"old":120,"rank":3,"right":{"linear_Z4":[0,2,0,3,0,3,2,0,2],"matrix_rows":[425,106,172,256,64,328,80,352,384],"offset":11,"phase":1,"quadratic_rows":[168,40,168,47,0,47,0,5,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,35,64,131,261,6,1,4],"offset":0,"phase":0,"quadratic_rows":[6,7,3,0,0,0,0,0,0]},"new":756,"old":120,"rank":3,"right":{"linear_Z4":[0,2,2,0,0,0,0,3,0],"matrix_rows":[198,294,96,163,320,356,40,336,256],"offset":422,"phase":3,"quadratic_rows":[162,1,128,32,0,393,384,229,96]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":121,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[81,65,18,4,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[17,16,0,16,11,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,132,1,5,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":731,"old":121,"rank":3,"right":{"linear_Z4":[0,2,3,2,1,2,1,1,2],"matrix_rows":[65,388,48,32,6,256,24,96,384],"offset":244,"phase":1,"quadratic_rows":[96,4,134,16,88,65,113,132,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,36,64,129,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":757,"old":121,"rank":3,"right":{"linear_Z4":[1,3,0,2,1,0,2,2,3],"matrix_rows":[65,384,390,81,386,256,24,64,32],"offset":237,"phase":0,"quadratic_rows":[17,6,130,16,25,0,0,260,384]}},{"left":{"linear_Z4":[2,2,3,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,10,9,11,16,20],"offset":0,"phase":0,"quadratic_rows":[2,1,20,8,20,0,0,0,0]},"new":1,"old":122,"rank":5,"right":{"linear_Z4":[0,0,0,2,1,1,0,0,1],"matrix_rows":[49,50,4,8,384,80,96,256,112],"offset":239,"phase":1,"quadratic_rows":[96,80,256,112,58,57,11,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,68,130,2,259,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":413,"old":122,"rank":4,"right":{"linear_Z4":[2,1,0,2,2,0,2,0,1],"matrix_rows":[11,8,4,384,80,90,256,16,96],"offset":86,"phase":0,"quadratic_rows":[90,83,256,65,3,0,11,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,34,68,129,259,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":415,"old":122,"rank":4,"right":{"linear_Z4":[1,2,0,2,0,2,2,0,1],"matrix_rows":[8,11,4,384,105,96,256,32,80],"offset":101,"phase":0,"quadratic_rows":[99,105,256,66,0,3,11,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,66,132,4,261,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":417,"old":122,"rank":4,"right":{"linear_Z4":[2,1,0,2,2,0,2,0,1],"matrix_rows":[3,4,8,384,80,82,256,16,96],"offset":86,"phase":0,"quadratic_rows":[82,83,256,16,11,0,3,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,66,132,261,4,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":419,"old":122,"rank":4,"right":{"linear_Z4":[1,2,0,2,0,2,2,0,1],"matrix_rows":[3,4,8,384,97,96,256,32,80],"offset":102,"phase":0,"quadratic_rows":[99,97,256,32,0,11,3,256,388]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":131,"old":123,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,2,1,0,2],"matrix_rows":[343,289,290,260,8,304,256,320,128],"offset":0,"phase":0,"quadratic_rows":[119,119,87,0,119,19,87,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":132,"old":123,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,0,2],"matrix_rows":[311,321,258,324,8,336,288,256,128],"offset":0,"phase":0,"quadratic_rows":[119,55,119,0,119,55,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":133,"old":123,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,0,2],"matrix_rows":[311,257,322,324,8,272,352,256,128],"offset":0,"phase":0,"quadratic_rows":[55,119,119,0,55,119,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":134,"old":124,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":135,"old":124,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,65,2,196,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":136,"old":124,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,1,66,196,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,64,68,0,0,64,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":134,"old":125,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,2,1,2,0],"matrix_rows":[215,161,162,132,8,176,128,192,256],"offset":0,"phase":0,"quadratic_rows":[119,119,87,0,119,19,87,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":137,"old":125,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,2,0],"matrix_rows":[183,129,194,196,8,144,224,128,256],"offset":0,"phase":0,"quadratic_rows":[55,119,119,0,55,119,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":138,"old":125,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,2,0],"matrix_rows":[183,193,130,196,8,208,160,128,256],"offset":0,"phase":0,"quadratic_rows":[119,55,119,0,119,55,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":131,"old":126,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":139,"old":126,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,2],"matrix_rows":[260,1,66,324,8,16,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,64,68,0,0,64,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":140,"old":126,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,2],"matrix_rows":[260,65,2,324,8,80,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":135,"old":127,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":137,"old":127,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":141,"old":127,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":132,"old":128,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":139,"old":128,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":142,"old":128,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,2],"matrix_rows":[258,33,290,4,8,48,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":133,"old":129,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":140,"old":129,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":142,"old":129,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":136,"old":130,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":138,"old":130,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":141,"old":130,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,2,0],"matrix_rows":[130,33,162,4,8,48,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":539,"old":131,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":541,"old":131,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":595,"old":131,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,0,1,2,0],"matrix_rows":[3,64,33,50,4,24,32,192,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,192,64,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,33,66,4,129,256,8,1,10],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":599,"old":131,"rank":4,"right":{"linear_Z4":[0,3,0,2,3,0,0,2,1],"matrix_rows":[146,4,8,320,1,130,256,144,32],"offset":71,"phase":2,"quadratic_rows":[0,18,256,0,18,0,256,0,324]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":144,"old":132,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":150,"old":132,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":146,"old":133,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":148,"old":133,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":539,"old":134,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":540,"old":134,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[16,35,68,8,1,2,128,256,4],"offset":0,"phase":0,"quadratic_rows":[3,3,4,0,0,0,0,0,0]},"new":594,"old":134,"rank":4,"right":{"linear_Z4":[2,0,1,2,3,3,0,0,2],"matrix_rows":[50,2,4,8,19,32,260,64,128],"offset":59,"phase":1,"quadratic_rows":[18,1,260,0,49,48,0,0,4]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,33,66,4,129,256,8,10,1],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":597,"old":134,"rank":4,"right":{"linear_Z4":[0,3,0,2,3,0,0,1,2],"matrix_rows":[274,4,8,192,1,258,128,272,32],"offset":71,"phase":2,"quadratic_rows":[0,18,128,0,18,0,128,196,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":144,"old":135,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":149,"old":135,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":145,"old":136,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":148,"old":136,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":146,"old":137,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":147,"old":137,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":143,"old":138,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":150,"old":138,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":145,"old":139,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":147,"old":139,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":143,"old":140,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":149,"old":140,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":538,"old":141,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":541,"old":141,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,19,35,65,128,1,256,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":593,"old":141,"rank":2,"right":{"linear_Z4":[3,2,2,2,3,0,2,0,2],"matrix_rows":[30,335,321,258,260,264,80,32,128],"offset":3,"phase":2,"quadratic_rows":[15,81,81,81,94,0,30,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,129,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":598,"old":141,"rank":2,"right":{"linear_Z4":[2,2,0,3,1,0,3,2,2],"matrix_rows":[144,328,1,18,4,264,128,160,320],"offset":207,"phase":2,"quadratic_rows":[0,16,0,72,18,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":538,"old":142,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":540,"old":142,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[18,34,4,8,65,129,259,3,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":592,"old":142,"rank":4,"right":{"linear_Z4":[1,1,2,2,0,0,2,2,0],"matrix_rows":[336,83,4,8,401,386,256,288,192],"offset":12,"phase":2,"quadratic_rows":[451,467,0,0,386,0,387,83,83]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,129,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":596,"old":142,"rank":2,"right":{"linear_Z4":[2,2,0,3,1,0,3,2,2],"matrix_rows":[272,200,1,18,4,136,256,288,192],"offset":207,"phase":2,"quadratic_rows":[0,16,0,72,18,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":143,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,2,0],"matrix_rows":[130,33,162,4,8,48,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,4,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":670,"old":143,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,3,0],"matrix_rows":[17,170,160,69,128,64,168,80,256],"offset":19,"phase":1,"quadratic_rows":[85,40,1,10,81,130,17,160,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,32,1,66,132,258,4,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":708,"old":143,"rank":3,"right":{"linear_Z4":[2,2,2,3,1,0,0,3,2],"matrix_rows":[130,272,170,1,138,20,256,128,320],"offset":362,"phase":1,"quadratic_rows":[0,160,16,40,20,10,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":144,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,2],"matrix_rows":[258,33,290,4,8,48,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,4,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":671,"old":144,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,0,3],"matrix_rows":[17,298,288,69,256,64,296,80,128],"offset":19,"phase":1,"quadratic_rows":[85,40,1,10,81,258,17,0,288]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,32,1,66,132,258,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":709,"old":144,"rank":3,"right":{"linear_Z4":[2,2,2,3,1,0,0,2,3],"matrix_rows":[258,144,298,1,266,20,128,256,192],"offset":362,"phase":1,"quadratic_rows":[0,288,16,40,20,10,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":145,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,2,0,0,2],"matrix_rows":[6,33,290,260,8,48,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,294,262,0,32,19,0,0,6]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[14,16,35,71,4,134,5,262,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":678,"old":145,"rank":3,"right":{"linear_Z4":[2,0,3,3,2,0,2,0,1],"matrix_rows":[124,25,269,261,38,320,376,256,384],"offset":236,"phase":1,"quadratic_rows":[16,36,278,24,269,2,0,0,276]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,20,36,1,7,67,131,259,3],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":702,"old":145,"rank":3,"right":{"linear_Z4":[0,3,3,1,1,2,0,0,2],"matrix_rows":[56,9,15,57,306,276,256,320,384],"offset":243,"phase":2,"quadratic_rows":[62,319,287,15,55,19,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":146,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[6,33,98,68,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,102,70,0,32,19,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,70,128,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":679,"old":146,"rank":3,"right":{"linear_Z4":[0,2,0,2,0,2,2,0,2],"matrix_rows":[257,12,108,256,38,64,104,16,384],"offset":48,"phase":2,"quadratic_rows":[0,36,2,0,0,2,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,3,68,130,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":703,"old":146,"rank":3,"right":{"linear_Z4":[0,3,3,1,0,0,0,0,2],"matrix_rows":[46,40,272,1,74,108,256,64,384],"offset":3,"phase":2,"quadratic_rows":[0,102,70,40,0,10,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":147,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,2,0,0,2],"matrix_rows":[279,289,290,260,8,304,256,320,128],"offset":1,"phase":1,"quadratic_rows":[55,55,23,0,55,19,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,65,4,130,2,5,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":728,"old":147,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,3,0],"matrix_rows":[153,34,144,128,70,64,152,96,256],"offset":11,"phase":1,"quadratic_rows":[24,102,2,9,129,98,34,144,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,1,68,130,258,4,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":750,"old":147,"rank":3,"right":{"linear_Z4":[2,2,2,3,0,1,0,3,2],"matrix_rows":[129,288,153,137,2,36,128,256,320],"offset":434,"phase":1,"quadratic_rows":[144,0,32,24,9,36,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":148,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,2,0,2,0],"matrix_rows":[151,161,162,132,8,176,128,192,256],"offset":1,"phase":1,"quadratic_rows":[55,55,23,0,55,19,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,65,4,130,2,256,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":729,"old":148,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,0,3],"matrix_rows":[281,34,272,256,70,64,280,96,128],"offset":11,"phase":1,"quadratic_rows":[24,102,2,9,257,98,34,0,272]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,1,68,130,258,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":751,"old":148,"rank":3,"right":{"linear_Z4":[2,2,2,3,0,1,0,2,3],"matrix_rows":[257,160,281,265,2,36,256,128,192],"offset":434,"phase":1,"quadratic_rows":[272,0,32,24,9,36,0,0,257]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":149,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,35,71,133,4,6,261,5],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":722,"old":149,"rank":3,"right":{"linear_Z4":[0,2,3,3,0,2,2,0,1],"matrix_rows":[42,124,270,21,262,320,376,256,384],"offset":244,"phase":1,"quadratic_rows":[20,32,293,40,1,270,0,0,292]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,21,36,2,67,7,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":758,"old":149,"rank":3,"right":{"linear_Z4":[3,0,3,1,2,1,0,0,2],"matrix_rows":[10,56,15,305,58,292,256,320,384],"offset":235,"phase":2,"quadratic_rows":[319,61,303,15,35,55,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":150,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,2,0,0,0],"matrix_rows":[19,289,290,4,8,304,256,64,384],"offset":1,"phase":1,"quadratic_rows":[307,307,0,0,307,19,0,0,19]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,37,69,1,128,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":723,"old":150,"rank":3,"right":{"linear_Z4":[2,0,0,2,2,0,2,0,2],"matrix_rows":[12,258,92,21,256,64,88,32,384],"offset":40,"phase":2,"quadratic_rows":[20,0,1,0,1,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,3,66,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":759,"old":150,"rank":3,"right":{"linear_Z4":[3,0,3,1,0,0,0,0,2],"matrix_rows":[29,24,288,73,2,92,64,256,384],"offset":3,"phase":2,"quadratic_rows":[85,0,69,24,9,0,5,0,0]}},{"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,16,19,21,273,17],"offset":0,"phase":0,"quadratic_rows":[6,19,21,0,6,0,0,0,0]},"new":1,"old":151,"rank":5,"right":{"linear_Z4":[2,0,0,2,2,0,0,0,0],"matrix_rows":[353,258,260,8,112,256,288,320,384],"offset":254,"phase":1,"quadratic_rows":[96,32,64,0,96,19,21,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,43,68,2,8,137,13,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":413,"old":151,"rank":4,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,1],"matrix_rows":[331,258,260,90,256,266,320,288,384],"offset":85,"phase":0,"quadratic_rows":[74,283,64,19,74,0,21,0,258]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,34,68,9,129,3,5,257,1],"offset":0,"phase":0,"quadratic_rows":[15,3,5,9,0,0,0,0,0]},"new":415,"old":151,"rank":4,"right":{"linear_Z4":[1,0,0,3,0,1,1,0,2],"matrix_rows":[376,258,260,273,281,288,320,256,384],"offset":102,"phase":0,"quadratic_rows":[9,32,64,105,96,122,124,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,35,69,9,129,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[15,3,5,9,0,0,0,0,0]},"new":418,"old":151,"rank":4,"right":{"linear_Z4":[1,1,1,3,0,1,1,0,2],"matrix_rows":[382,258,260,279,287,288,320,256,384],"offset":102,"phase":0,"quadratic_rows":[9,342,310,105,102,124,122,0,6]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,77,4,8,11,137,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":420,"old":151,"rank":4,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,1],"matrix_rows":[301,258,260,60,256,288,268,320,384],"offset":51,"phase":0,"quadratic_rows":[44,32,285,21,44,19,0,0,260]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":160,"old":152,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":161,"old":152,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,1,2,1,2],"matrix_rows":[423,257,258,260,72,80,352,256,384],"offset":0,"phase":0,"quadratic_rows":[167,167,167,64,64,231,56,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":162,"old":152,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,1,2,1,2],"matrix_rows":[423,257,322,324,8,16,352,256,384],"offset":0,"phase":0,"quadratic_rows":[167,231,231,0,0,231,38,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":163,"old":153,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,2,0,0],"matrix_rows":[68,1,18,84,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":164,"old":153,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":165,"old":153,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,2,0,0,0],"matrix_rows":[50,1,34,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":163,"old":154,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":166,"old":154,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":167,"old":154,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,2,0,0,0],"matrix_rows":[50,1,34,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":160,"old":155,"rank":1,"right":{"linear_Z4":[1,0,0,1,2,1,1,1,2],"matrix_rows":[489,257,18,20,280,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[233,16,16,249,14,233,233,233,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":168,"old":155,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,1,2,1,2],"matrix_rows":[441,257,66,68,264,272,352,256,384],"offset":0,"phase":0,"quadratic_rows":[185,64,64,185,185,249,38,185,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":169,"old":155,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,1,2,1,2],"matrix_rows":[441,257,2,4,328,336,352,256,384],"offset":0,"phase":0,"quadratic_rows":[185,0,0,249,249,249,56,185,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":164,"old":156,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,2,0,0],"matrix_rows":[84,1,2,68,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":166,"old":156,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":170,"old":156,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":161,"old":157,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":168,"old":157,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":171,"old":157,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,0,1,2],"matrix_rows":[399,257,274,276,280,256,32,64,384],"offset":0,"phase":0,"quadratic_rows":[143,159,159,159,14,0,0,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":162,"old":158,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":169,"old":158,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":171,"old":158,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":165,"old":159,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,2,0,0],"matrix_rows":[84,1,2,68,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":167,"old":159,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":170,"old":159,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,2,0,0,0],"matrix_rows":[34,1,50,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":543,"old":160,"rank":1,"right":{"linear_Z4":[3,1,3,2,0,3,1,3,2],"matrix_rows":[423,257,322,260,72,16,288,256,384],"offset":149,"phase":0,"quadratic_rows":[167,231,167,64,0,167,74,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":545,"old":160,"rank":1,"right":{"linear_Z4":[3,3,1,2,0,1,3,3,2],"matrix_rows":[455,257,258,292,40,16,256,320,384],"offset":89,"phase":0,"quadratic_rows":[199,199,231,32,0,44,199,199,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,35,64,131,259,2,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":603,"old":160,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,0,1,0,3],"matrix_rows":[173,301,321,194,324,392,16,352,256],"offset":415,"phase":1,"quadratic_rows":[192,192,192,0,0,192,231,359,384]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[19,33,65,130,2,259,4,8,15],"offset":0,"phase":0,"quadratic_rows":[14,13,15,15,0,0,0,0,0]},"new":607,"old":160,"rank":4,"right":{"linear_Z4":[0,3,3,2,0,2,0,0,1],"matrix_rows":[271,265,320,384,289,306,316,16,256],"offset":368,"phase":2,"quadratic_rows":[294,63,55,290,6,15,256,256,457]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":173,"old":161,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,2,36,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,32,120,88,44,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":179,"old":161,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,34,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,32,0,88,120,50,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":175,"old":162,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,66,100,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,70,102,32,0,44,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":177,"old":162,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,98,68,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,102,70,0,32,50,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":543,"old":163,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":544,"old":163,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[28,36,68,131,259,9,3,1,7],"offset":0,"phase":0,"quadratic_rows":[13,6,15,13,0,0,0,0,0]},"new":602,"old":163,"rank":4,"right":{"linear_Z4":[2,3,3,0,0,2,0,3,3],"matrix_rows":[488,328,231,457,489,330,324,64,80],"offset":481,"phase":1,"quadratic_rows":[198,431,423,386,0,198,33,431,398]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,2,9,1],"offset":0,"phase":0,"quadratic_rows":[9,4,6,1,0,0,0,0,0]},"new":605,"old":163,"rank":4,"right":{"linear_Z4":[3,2,0,3,3,3,1,3,0],"matrix_rows":[384,92,68,161,385,14,80,64,416],"offset":110,"phase":1,"quadratic_rows":[289,12,66,26,24,289,68,384,161]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":173,"old":164,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":178,"old":164,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":174,"old":165,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":177,"old":165,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":175,"old":166,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":176,"old":166,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":172,"old":167,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":179,"old":167,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":174,"old":168,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,98,68,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,102,70,0,32,50,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":176,"old":168,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,66,100,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,70,102,32,0,44,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":172,"old":169,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,34,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,32,0,88,120,50,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":178,"old":169,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,2,36,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,32,120,88,44,24,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":542,"old":170,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":545,"old":170,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":601,"old":170,"rank":2,"right":{"linear_Z4":[3,0,0,0,0,0,3,3,0],"matrix_rows":[384,193,385,2,4,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[321,0,0,0,0,0,321,384,193]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,18,33,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":606,"old":170,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,0,2,2,3],"matrix_rows":[488,231,297,290,300,32,48,320,384],"offset":120,"phase":0,"quadratic_rows":[463,455,463,453,0,0,15,15,271]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":542,"old":171,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":544,"old":171,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[24,34,66,132,4,6,9,257,1],"offset":0,"phase":0,"quadratic_rows":[8,4,2,9,0,0,0,0,0]},"new":600,"old":171,"rank":4,"right":{"linear_Z4":[1,3,3,0,0,1,3,0,2],"matrix_rows":[192,46,40,385,449,50,60,16,256],"offset":6,"phase":2,"quadratic_rows":[65,30,22,34,6,40,321,256,192]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":604,"old":171,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,2,2,0,0],"matrix_rows":[1,70,33,66,68,8,16,128,256],"offset":2,"phase":1,"quadratic_rows":[33,6,6,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":172,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,2,0,0,0],"matrix_rows":[34,1,50,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,1,32,68,6,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":668,"old":172,"rank":3,"right":{"linear_Z4":[1,0,2,2,1,1,2,0,0],"matrix_rows":[1,34,80,5,64,24,96,128,256],"offset":100,"phase":3,"quadratic_rows":[5,96,1,16,56,114,34,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,64,132,4,256,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":684,"old":172,"rank":3,"right":{"linear_Z4":[0,1,3,2,3,2,0,2,3],"matrix_rows":[389,384,50,256,34,388,24,32,64],"offset":201,"phase":2,"quadratic_rows":[132,18,5,16,26,0,0,257,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":173,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,3,0],"matrix_rows":[133,257,18,276,24,256,32,320,384],"offset":1,"phase":1,"quadratic_rows":[389,16,405,16,14,0,0,389,133]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,2,20,35,67,132,4,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":669,"old":173,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[473,154,196,320,64,328,336,96,384],"offset":9,"phase":0,"quadratic_rows":[152,152,128,3,3,0,0,135,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,16,38,64,129,6,263,2,5],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":685,"old":173,"rank":3,"right":{"linear_Z4":[2,2,0,0,2,1,0,1,3],"matrix_rows":[304,437,53,49,134,32,24,288,320],"offset":48,"phase":2,"quadratic_rows":[432,132,290,16,425,437,0,435,437]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":174,"rank":1,"right":{"linear_Z4":[1,0,0,1,2,0,0,1,2],"matrix_rows":[393,257,18,20,280,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[137,16,16,153,14,0,0,137,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,16,33,64,134,6,263,2,5],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":678,"old":174,"rank":3,"right":{"linear_Z4":[2,0,2,2,0,1,0,1,3],"matrix_rows":[292,437,53,37,6,288,152,32,320],"offset":192,"phase":2,"quadratic_rows":[420,4,419,144,296,437,0,429,437]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,19,35,2,68,132,4,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":694,"old":174,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[455,142,208,320,322,324,64,96,384],"offset":9,"phase":0,"quadratic_rows":[134,9,9,134,128,0,0,153,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":175,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,129,2,256,4,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":679,"old":175,"rank":3,"right":{"linear_Z4":[0,2,3,1,3,2,0,2,3],"matrix_rows":[401,44,384,256,6,32,40,400,64],"offset":57,"phase":2,"quadratic_rows":[144,4,14,12,17,0,0,257,384]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,1,6,4,128,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":695,"old":175,"rank":3,"right":{"linear_Z4":[1,2,1,0,2,1,2,0,0],"matrix_rows":[1,68,40,17,6,96,64,128,256],"offset":50,"phase":3,"quadratic_rows":[17,4,38,96,1,108,40,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":176,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,0,1,2],"matrix_rows":[399,257,274,276,280,256,32,64,384],"offset":0,"phase":0,"quadratic_rows":[143,159,159,159,14,0,0,143,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,64,134,1,256,2,5],"offset":0,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]},"new":736,"old":176,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,0,3,0],"matrix_rows":[260,432,48,5,6,32,152,288,64],"offset":198,"phase":0,"quadratic_rows":[4,4,291,144,40,180,0,424,132]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,21,37,66,4,130,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":752,"old":176,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[455,200,150,320,322,324,64,96,384],"offset":9,"phase":0,"quadratic_rows":[134,17,17,128,134,0,0,153,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":177,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,2,0,0],"matrix_rows":[8,1,18,20,88,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,88,14,0,8,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,65,130,256,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":737,"old":177,"rank":3,"right":{"linear_Z4":[0,2,3,3,1,0,2,2,3],"matrix_rows":[393,84,384,256,6,64,392,80,32],"offset":57,"phase":2,"quadratic_rows":[136,4,22,9,20,0,0,257,384]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,1,68,4,6,128,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":753,"old":177,"rank":3,"right":{"linear_Z4":[1,2,1,2,0,2,1,0,0],"matrix_rows":[1,36,80,9,6,96,32,128,256],"offset":50,"phase":3,"quadratic_rows":[9,4,70,1,96,80,116,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":178,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,2,0,0],"matrix_rows":[68,1,18,84,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,1,18,32,68,2,6,128,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":746,"old":178,"rank":3,"right":{"linear_Z4":[1,2,0,2,1,2,1,0,0],"matrix_rows":[1,68,48,3,32,24,96,128,256],"offset":100,"phase":3,"quadratic_rows":[3,1,96,16,88,68,116,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,64,132,256,4,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":762,"old":178,"rank":3,"right":{"linear_Z4":[0,3,1,2,3,0,2,2,3],"matrix_rows":[387,384,84,256,386,68,24,64,32],"offset":201,"phase":2,"quadratic_rows":[130,3,20,16,28,0,0,257,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":179,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,3,0],"matrix_rows":[131,257,274,20,24,256,288,64,384],"offset":1,"phase":1,"quadratic_rows":[387,403,16,16,14,0,0,387,131]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,37,69,130,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":747,"old":179,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[473,194,156,320,64,328,336,96,384],"offset":9,"phase":0,"quadratic_rows":[152,128,152,5,5,0,0,135,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,38,64,129,1,256,2,5],"offset":0,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]},"new":763,"old":179,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,1,0,3,0],"matrix_rows":[272,420,36,17,134,288,24,32,64],"offset":54,"phase":0,"quadratic_rows":[16,132,34,16,297,180,0,418,144]}},{"left":{"linear_Z4":[3,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,14,12,10,16,17],"offset":0,"phase":0,"quadratic_rows":[17,4,2,8,17,0,0,0,0]},"new":1,"old":180,"rank":5,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,1],"matrix_rows":[1,98,100,8,384,256,48,80,112],"offset":239,"phase":1,"quadratic_rows":[256,80,48,112,14,108,106,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,36,68,130,262,6,2,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":413,"old":180,"rank":4,"right":{"linear_Z4":[0,1,2,2,0,2,2,0,1],"matrix_rows":[1,8,14,384,256,106,96,64,48],"offset":83,"phase":0,"quadratic_rows":[256,102,106,36,0,14,6,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,66,132,262,4,6,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":416,"old":180,"rank":4,"right":{"linear_Z4":[0,2,1,2,0,2,2,0,1],"matrix_rows":[1,6,8,384,256,96,100,32,80],"offset":53,"phase":0,"quadratic_rows":[256,100,102,32,0,14,6,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,66,132,262,6,4,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":417,"old":180,"rank":4,"right":{"linear_Z4":[0,1,2,2,0,2,2,0,1],"matrix_rows":[1,6,8,384,256,98,96,64,48],"offset":85,"phase":0,"quadratic_rows":[256,102,98,64,0,6,14,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,66,132,262,4,6,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":420,"old":180,"rank":4,"right":{"linear_Z4":[0,2,1,2,0,2,2,0,1],"matrix_rows":[1,14,8,384,256,96,108,32,80],"offset":53,"phase":0,"quadratic_rows":[256,108,102,66,0,6,14,256,385]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":189,"old":181,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,2,0],"matrix_rows":[132,1,18,148,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":190,"old":181,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":191,"old":181,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":192,"old":182,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":193,"old":182,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":194,"old":182,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":192,"old":183,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,0,2],"matrix_rows":[260,1,18,276,24,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":195,"old":183,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":196,"old":183,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":189,"old":184,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":197,"old":184,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":198,"old":184,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":193,"old":185,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,0,2],"matrix_rows":[287,321,258,324,264,336,32,256,128],"offset":0,"phase":0,"quadratic_rows":[95,31,95,31,95,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":195,"old":185,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,0,2],"matrix_rows":[287,321,322,260,328,272,32,256,128],"offset":0,"phase":0,"quadratic_rows":[95,95,31,95,31,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":199,"old":185,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,1,0,2],"matrix_rows":[335,257,274,276,280,256,32,320,128],"offset":0,"phase":0,"quadratic_rows":[79,95,95,95,14,0,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":190,"old":186,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,0,64,0,64,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":197,"old":186,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":200,"old":186,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":191,"old":187,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,2,0],"matrix_rows":[159,193,194,132,200,144,32,128,256],"offset":0,"phase":0,"quadratic_rows":[95,95,31,95,31,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":198,"old":187,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,2,0],"matrix_rows":[159,193,130,196,136,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[95,31,95,31,95,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":200,"old":187,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,1,2,0],"matrix_rows":[207,129,146,148,152,128,32,192,256],"offset":0,"phase":0,"quadratic_rows":[79,95,95,95,14,0,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":194,"old":188,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,2],"matrix_rows":[257,321,66,4,72,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":196,"old":188,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,2],"matrix_rows":[257,321,2,68,8,80,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,0,64,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":199,"old":188,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":547,"old":189,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":549,"old":189,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,34,64,131,2,256,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":611,"old":189,"rank":2,"right":{"linear_Z4":[2,3,2,3,0,2,2,0,2],"matrix_rows":[359,45,257,322,260,72,16,288,128],"offset":3,"phase":2,"quadratic_rows":[74,39,74,109,0,74,45,0,0]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,9,2,1],"offset":0,"phase":0,"quadratic_rows":[9,4,6,1,0,0,0,0,0]},"new":615,"old":189,"rank":4,"right":{"linear_Z4":[3,2,0,3,3,3,3,1,0],"matrix_rows":[320,156,132,97,321,14,144,128,352],"offset":110,"phase":1,"quadratic_rows":[289,12,130,26,24,289,320,132,97]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":202,"old":190,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":208,"old":190,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":204,"old":191,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":206,"old":191,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":547,"old":192,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":548,"old":192,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[1,20,36,66,130,8,262,6,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":610,"old":192,"rank":4,"right":{"linear_Z4":[2,1,1,0,0,2,2,2,0],"matrix_rows":[1,328,78,32,394,388,256,272,192],"offset":9,"phase":2,"quadratic_rows":[0,454,462,388,0,0,390,78,78]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,9,1,2],"offset":0,"phase":0,"quadratic_rows":[9,4,6,1,0,0,0,0,0]},"new":613,"old":192,"rank":4,"right":{"linear_Z4":[3,2,0,3,3,3,3,0,1],"matrix_rows":[192,284,260,97,193,14,272,256,224],"offset":110,"phase":1,"quadratic_rows":[161,12,258,26,24,161,192,97,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":202,"old":193,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":207,"old":193,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":203,"old":194,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":206,"old":194,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":204,"old":195,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":205,"old":195,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":201,"old":196,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":208,"old":196,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":203,"old":197,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":205,"old":197,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":201,"old":198,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":207,"old":198,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":546,"old":199,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":549,"old":199,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,33,64,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":609,"old":199,"rank":2,"right":{"linear_Z4":[0,0,3,3,0,2,1,2,0],"matrix_rows":[44,64,1,2,36,40,16,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,192,64,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,1,128,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":614,"old":199,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,2,0,2,0],"matrix_rows":[1,134,33,130,132,8,16,64,256],"offset":2,"phase":1,"quadratic_rows":[33,6,6,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":546,"old":200,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":548,"old":200,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[17,32,70,2,4,8,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":608,"old":200,"rank":4,"right":{"linear_Z4":[1,2,0,3,3,2,0,0,2],"matrix_rows":[1,28,4,32,257,14,16,64,128],"offset":110,"phase":1,"quadratic_rows":[257,12,2,26,24,0,0,0,1]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,1,128,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":612,"old":200,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,2,0,0,2],"matrix_rows":[1,262,33,258,260,8,16,64,128],"offset":2,"phase":1,"quadratic_rows":[33,6,6,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":201,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,0,2],"matrix_rows":[271,257,274,276,280,256,32,320,128],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,70,128,4,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":670,"old":201,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,3,0,3,2],"matrix_rows":[260,170,136,5,128,256,168,16,320],"offset":425,"phase":1,"quadratic_rows":[4,40,5,130,0,34,0,136,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,22,32,68,129,2,257,4,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":692,"old":201,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,3,0,3,2],"matrix_rows":[272,130,170,17,162,4,128,256,320],"offset":425,"phase":1,"quadratic_rows":[16,136,0,34,17,40,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":202,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,2,0],"matrix_rows":[143,129,146,148,152,128,32,192,256],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,70,128,4,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":671,"old":202,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,3,0,2,3],"matrix_rows":[132,298,264,5,256,128,296,16,192],"offset":425,"phase":1,"quadratic_rows":[4,40,5,258,0,34,0,0,264]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,22,32,68,129,2,257,1,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":693,"old":202,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,3,0,2,3],"matrix_rows":[144,258,298,17,290,4,256,128,192],"offset":425,"phase":1,"quadratic_rows":[16,264,0,34,17,40,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":203,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[11,23,3,36,6,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[6,1,1,0,0,0,0,0,0]},"new":676,"old":203,"rank":3,"right":{"linear_Z4":[0,3,2,3,1,2,0,0,0],"matrix_rows":[55,7,30,5,54,56,64,128,256],"offset":5,"phase":2,"quadratic_rows":[52,26,25,46,55,25,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,35,70,7,4,134,262,6],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":686,"old":203,"rank":3,"right":{"linear_Z4":[3,3,0,2,1,1,0,0,2],"matrix_rows":[39,36,56,273,282,60,256,320,384],"offset":222,"phase":2,"quadratic_rows":[311,319,59,22,31,39,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":204,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,0,0,0,0],"matrix_rows":[14,1,274,276,280,256,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,286,286,286,14,0,0,0,14]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,128,1,3,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":677,"old":204,"rank":3,"right":{"linear_Z4":[3,1,0,3,0,2,0,0,2],"matrix_rows":[34,9,260,99,64,256,104,16,384],"offset":3,"phase":2,"quadratic_rows":[107,3,0,105,0,9,9,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[10,18,32,65,132,3,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":687,"old":204,"rank":3,"right":{"linear_Z4":[3,3,0,0,0,1,0,0,2],"matrix_rows":[40,43,272,105,98,4,64,256,384],"offset":3,"phase":2,"quadratic_rows":[67,75,0,34,0,40,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":205,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,0,2],"matrix_rows":[260,1,18,276,24,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,134,4,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":744,"old":205,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,3,0,2,3],"matrix_rows":[130,308,272,3,128,256,8,304,192],"offset":345,"phase":1,"quadratic_rows":[2,3,48,0,260,36,0,0,272]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,132,2,257,1,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":754,"old":205,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,3,0,2,3],"matrix_rows":[136,260,308,9,2,292,128,256,192],"offset":345,"phase":1,"quadratic_rows":[8,0,272,9,36,48,0,0,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":206,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,2,0],"matrix_rows":[132,1,18,148,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,134,4,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":745,"old":206,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,3,0,3,2],"matrix_rows":[258,180,144,3,256,128,8,176,320],"offset":345,"phase":1,"quadratic_rows":[2,3,48,0,132,36,0,144,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,132,2,257,4,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":755,"old":206,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,3,0,3,2],"matrix_rows":[264,132,180,9,2,164,256,128,320],"offset":345,"phase":1,"quadratic_rows":[8,0,144,9,36,48,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":207,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[5,65,18,84,24,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,16,85,16,14,0,5,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[12,18,37,64,132,1,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":738,"old":207,"rank":3,"right":{"linear_Z4":[3,0,1,0,3,2,0,0,2],"matrix_rows":[36,258,17,101,256,64,8,112,384],"offset":5,"phase":2,"quadratic_rows":[117,0,5,0,113,17,17,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[10,16,34,68,129,3,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":760,"old":207,"rank":3,"right":{"linear_Z4":[3,0,3,0,0,1,0,0,2],"matrix_rows":[48,53,264,113,2,100,256,64,384],"offset":3,"phase":2,"quadratic_rows":[69,0,85,0,36,48,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":208,"rank":1,"right":{"linear_Z4":[1,0,1,0,2,0,0,0,2],"matrix_rows":[5,257,18,276,24,256,32,320,384],"offset":0,"phase":0,"quadratic_rows":[261,16,277,16,14,0,0,0,5]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,22,35,71,5,4,134,262,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":739,"old":208,"rank":3,"right":{"linear_Z4":[0,2,3,3,1,2,0,0,1],"matrix_rows":[44,42,286,21,278,256,312,320,384],"offset":244,"phase":1,"quadratic_rows":[20,32,309,40,309,286,0,0,308]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,21,33,7,70,2,134,262,6],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":761,"old":208,"rank":3,"right":{"linear_Z4":[3,0,3,1,2,1,0,0,2],"matrix_rows":[39,56,34,265,58,284,256,320,384],"offset":238,"phase":2,"quadratic_rows":[303,61,319,31,14,39,0,0,5]}},{"left":{"linear_Z4":[3,2,3,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,14,16,11,266,10],"offset":0,"phase":0,"quadratic_rows":[11,5,14,5,0,0,0,0,0]},"new":1,"old":209,"rank":5,"right":{"linear_Z4":[0,2,0,2,0,2,0,0,0],"matrix_rows":[257,338,260,88,32,320,256,272,384],"offset":253,"phase":1,"quadratic_rows":[64,80,16,80,14,0,11,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,40,68,138,14,2,11,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":413,"old":209,"rank":4,"right":{"linear_Z4":[0,1,0,3,2,0,2,0,1],"matrix_rows":[257,376,260,114,320,298,272,256,384],"offset":85,"phase":0,"quadratic_rows":[64,346,16,346,14,0,11,0,266]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,78,8,138,4,11,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":416,"old":209,"rank":4,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,1],"matrix_rows":[257,358,260,108,320,256,292,272,384],"offset":51,"phase":0,"quadratic_rows":[64,100,302,100,0,14,11,0,260]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[27,35,69,9,15,1,138,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":418,"old":209,"rank":4,"right":{"linear_Z4":[1,1,3,1,0,2,0,0,1],"matrix_rows":[257,317,260,55,303,256,272,320,384],"offset":102,"phase":0,"quadratic_rows":[293,26,53,26,14,5,0,0,257]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[27,34,68,8,14,1,138,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":419,"old":209,"rank":4,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,1],"matrix_rows":[257,307,260,57,289,256,272,320,384],"offset":102,"phase":0,"quadratic_rows":[299,49,16,49,14,11,0,0,257]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":218,"old":210,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":219,"old":210,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":220,"old":210,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":221,"old":211,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,1,0,1,2],"matrix_rows":[430,1,274,276,280,256,288,64,384],"offset":0,"phase":0,"quadratic_rows":[0,190,190,190,14,174,0,174,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":222,"old":211,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":223,"old":211,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":221,"old":212,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":224,"old":212,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":225,"old":212,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":218,"old":213,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":226,"old":213,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":227,"old":213,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":222,"old":214,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,1,2,1,2],"matrix_rows":[427,321,258,68,264,80,288,256,384],"offset":0,"phase":0,"quadratic_rows":[235,171,64,171,64,171,21,171,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":224,"old":214,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,1,2,1,2],"matrix_rows":[427,321,322,4,328,16,288,256,384],"offset":0,"phase":0,"quadratic_rows":[235,235,0,235,0,171,11,171,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":228,"old":214,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":219,"old":215,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[88,9,2,12,64,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[8,0,8,21,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":226,"old":215,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[88,17,18,4,72,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[16,16,0,24,11,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":229,"old":215,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,2,0,0],"matrix_rows":[72,1,18,20,88,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":220,"old":216,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":227,"old":216,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":229,"old":216,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":223,"old":217,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,1,2,1,2],"matrix_rows":[437,321,66,260,72,272,288,256,384],"offset":0,"phase":0,"quadratic_rows":[245,64,181,64,181,181,11,181,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":225,"old":217,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,1,2,1,2],"matrix_rows":[437,321,2,324,8,336,288,256,384],"offset":0,"phase":0,"quadratic_rows":[245,0,245,0,245,181,21,181,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":228,"old":217,"rank":1,"right":{"linear_Z4":[1,0,1,0,2,1,1,1,2],"matrix_rows":[485,257,18,276,24,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[229,16,245,16,14,229,229,229,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":551,"old":218,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":553,"old":218,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,1,1,2],"matrix_rows":[230,1,258,260,8,16,288,320,384],"offset":0,"phase":0,"quadratic_rows":[0,486,486,0,0,486,486,486,230]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,64,130,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":619,"old":218,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,3,3,3,0],"matrix_rows":[384,224,1,2,4,8,16,416,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,0,352,352,384,224]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[30,32,64,128,256,3,5,9,1],"offset":0,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]},"new":623,"old":218,"rank":4,"right":{"linear_Z4":[3,0,0,0,0,3,3,3,0],"matrix_rows":[480,449,417,353,481,2,4,8,16],"offset":1,"phase":1,"quadratic_rows":[225,0,0,0,0,225,225,225,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":231,"old":219,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":237,"old":219,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":233,"old":220,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":235,"old":220,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":551,"old":221,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":552,"old":221,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,0,0,0,0,0],"matrix_rows":[18,32,67,1,2,136,12,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,8,12,0,0,0,0,0]},"new":618,"old":221,"rank":4,"right":{"linear_Z4":[1,2,0,1,1,1,3,0,2],"matrix_rows":[28,25,192,416,29,14,16,480,256],"offset":115,"phase":1,"quadratic_rows":[5,12,27,30,28,96,352,256,192]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[1,16,34,66,128,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":621,"old":221,"rank":4,"right":{"linear_Z4":[2,0,3,3,0,0,2,0,1],"matrix_rows":[1,76,32,384,2,68,72,16,256],"offset":263,"phase":2,"quadratic_rows":[0,0,12,12,0,256,0,256,416]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":231,"old":222,"rank":1,"right":{"linear_Z4":[2,3,1,1,3,3,0,3,2],"matrix_rows":[438,9,258,268,256,272,288,64,384],"offset":27,"phase":0,"quadratic_rows":[8,182,190,13,182,182,0,182,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":236,"old":222,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,1,0,1,2],"matrix_rows":[184,17,18,4,264,256,288,320,384],"offset":170,"phase":0,"quadratic_rows":[16,16,0,440,427,440,0,440,184]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":232,"old":223,"rank":1,"right":{"linear_Z4":[2,1,3,3,1,3,0,3,2],"matrix_rows":[430,17,274,260,264,256,288,64,384],"offset":39,"phase":0,"quadratic_rows":[16,190,174,174,19,174,0,174,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":235,"old":223,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,1,0,1,2],"matrix_rows":[184,9,2,12,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[8,0,8,437,440,440,0,440,184]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":233,"old":224,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,73,66,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[75,67,8,13,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":234,"old":224,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":230,"old":225,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,81,18,68,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[85,16,69,0,19,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":237,"old":225,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":232,"old":226,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":234,"old":226,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":230,"old":227,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":236,"old":227,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":550,"old":228,"rank":1,"right":{"linear_Z4":[3,1,2,3,0,3,1,3,2],"matrix_rows":[427,257,322,68,264,16,288,256,384],"offset":141,"phase":0,"quadratic_rows":[171,235,64,171,0,171,70,171,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":553,"old":228,"rank":1,"right":{"linear_Z4":[0,2,2,0,0,1,1,1,2],"matrix_rows":[232,9,2,12,256,272,288,320,384],"offset":60,"phase":0,"quadratic_rows":[8,0,8,485,0,488,488,488,232]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,35,64,131,259,2,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":617,"old":228,"rank":2,"right":{"linear_Z4":[0,2,2,0,0,0,1,0,3],"matrix_rows":[173,301,321,194,388,328,16,352,256],"offset":431,"phase":1,"quadratic_rows":[192,192,0,192,0,192,235,363,384]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,10,18,33,65,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":622,"old":228,"rank":2,"right":{"linear_Z4":[2,3,3,0,0,0,2,2,2],"matrix_rows":[201,239,257,2,12,256,272,320,384],"offset":120,"phase":0,"quadratic_rows":[294,239,231,290,0,207,294,294,201]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":550,"old":229,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":552,"old":229,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[28,36,71,132,263,9,7,1,3],"offset":0,"phase":0,"quadratic_rows":[13,6,15,13,0,0,0,0,0]},"new":616,"old":229,"rank":4,"right":{"linear_Z4":[2,3,1,3,0,2,3,3,0],"matrix_rows":[484,324,431,453,485,326,64,328,80],"offset":481,"phase":1,"quadratic_rows":[398,235,45,239,0,398,202,235,33]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":620,"old":229,"rank":2,"right":{"linear_Z4":[3,3,3,2,0,0,0,3,2],"matrix_rows":[385,6,257,18,28,16,32,64,384],"offset":3,"phase":2,"quadratic_rows":[129,22,30,4,6,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":230,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,33,64,2,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":672,"old":230,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,3,1,1,2],"matrix_rows":[20,66,416,5,16,80,40,256,384],"offset":233,"phase":1,"quadratic_rows":[4,80,69,32,66,168,86,160,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,68,128,260,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":732,"old":230,"rank":3,"right":{"linear_Z4":[2,1,1,3,0,0,2,2,3],"matrix_rows":[66,384,424,5,70,64,392,16,256],"offset":317,"phase":0,"quadratic_rows":[4,6,7,40,0,136,0,288,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":231,"rank":1,"right":{"linear_Z4":[1,0,1,0,3,3,0,3,2],"matrix_rows":[421,273,18,260,8,256,288,320,384],"offset":171,"phase":1,"quadratic_rows":[181,16,165,0,19,165,0,165,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,18,33,65,135,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":673,"old":231,"rank":3,"right":{"linear_Z4":[3,0,2,0,3,0,2,0,2],"matrix_rows":[81,407,181,325,256,64,72,336,384],"offset":19,"phase":1,"quadratic_rows":[55,149,35,0,51,149,0,34,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,23,39,71,132,259,7,2,1],"offset":0,"phase":0,"quadratic_rows":[3,3,4,0,0,0,0,0,0]},"new":733,"old":231,"rank":3,"right":{"linear_Z4":[1,1,0,0,1,3,0,0,3],"matrix_rows":[130,258,183,357,230,64,72,368,256],"offset":463,"phase":1,"quadratic_rows":[467,467,368,0,471,356,183,83,311]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":232,"rank":1,"right":{"linear_Z4":[1,1,0,3,0,3,0,3,2],"matrix_rows":[419,265,258,12,256,16,288,320,384],"offset":151,"phase":1,"quadratic_rows":[171,163,8,13,0,163,0,163,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[10,16,39,66,128,2,256,3,6],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":682,"old":232,"rank":3,"right":{"linear_Z4":[3,2,3,1,0,1,0,2,3],"matrix_rows":[388,9,4,133,166,256,40,16,64],"offset":61,"phase":1,"quadratic_rows":[141,164,167,41,0,174,0,295,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,17,34,71,129,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":742,"old":232,"rank":3,"right":{"linear_Z4":[3,2,0,3,0,0,2,0,2],"matrix_rows":[73,399,171,323,64,256,328,80,384],"offset":35,"phase":1,"quadratic_rows":[47,37,139,45,0,139,0,36,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":233,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,33,65,132,260,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":683,"old":233,"rank":3,"right":{"linear_Z4":[2,2,2,0,3,0,2,2,3],"matrix_rows":[68,384,432,5,6,64,72,400,256],"offset":316,"phase":3,"quadratic_rows":[4,4,3,0,48,144,0,288,384]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,2,64,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":743,"old":233,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,3,1,1,2],"matrix_rows":[10,68,416,3,72,8,48,256,384],"offset":217,"phase":1,"quadratic_rows":[2,67,72,68,32,176,78,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":234,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,73,66,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[75,67,8,13,0,0,3,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,128,260,1,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":688,"old":234,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,0,0,2,3],"matrix_rows":[3,384,420,65,74,388,64,16,256],"offset":261,"phase":1,"quadratic_rows":[67,75,36,2,0,132,3,288,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,65,3,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":748,"old":234,"rank":3,"right":{"linear_Z4":[2,0,2,1,2,3,0,1,2],"matrix_rows":[90,66,416,11,16,36,80,256,384],"offset":233,"phase":1,"quadratic_rows":[10,1,32,9,0,164,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":235,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,3,0,3,0],"matrix_rows":[179,273,274,4,8,256,288,64,384],"offset":39,"phase":0,"quadratic_rows":[419,419,0,0,416,435,0,435,179]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,32,64,134,3,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":689,"old":235,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,2,0,1,3],"matrix_rows":[291,179,16,33,34,180,8,256,64],"offset":2,"phase":1,"quadratic_rows":[432,432,176,0,263,263,0,135,307]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,23,33,65,130,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":749,"old":235,"rank":3,"right":{"linear_Z4":[3,3,2,0,0,0,2,0,2],"matrix_rows":[71,403,163,321,322,64,72,256,384],"offset":131,"phase":1,"quadratic_rows":[55,55,3,0,131,131,0,48,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":236,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,3,0,3,0],"matrix_rows":[173,265,2,268,256,16,288,64,384],"offset":27,"phase":0,"quadratic_rows":[421,0,421,416,0,429,0,429,173]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,17,39,66,129,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":698,"old":236,"rank":3,"right":{"linear_Z4":[3,2,3,0,0,0,2,0,2],"matrix_rows":[71,397,165,321,64,324,256,80,384],"offset":67,"phase":1,"quadratic_rows":[47,5,47,133,0,133,0,40,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,16,35,70,128,3,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":758,"old":236,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,1,3],"matrix_rows":[293,173,8,33,170,36,256,16,64],"offset":2,"phase":1,"quadratic_rows":[424,168,424,263,0,263,0,135,301]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":237,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,81,18,68,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[85,16,69,0,19,0,5,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,37,69,1,130,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":699,"old":237,"rank":3,"right":{"linear_Z4":[2,2,0,0,1,3,2,1,2],"matrix_rows":[20,416,68,21,34,64,72,256,384],"offset":248,"phase":3,"quadratic_rows":[20,32,1,0,17,162,0,160,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,20,34,64,130,260,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":759,"old":237,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,0,2,3],"matrix_rows":[384,5,418,65,386,84,8,64,256],"offset":262,"phase":1,"quadratic_rows":[69,34,85,0,4,130,5,288,384]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,133,3,264,6,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":238,"rank":5,"right":{"linear_Z4":[2,0,2,0,0,0,0,0,1],"matrix_rows":[17,18,20,32,384,80,64,88,256],"offset":463,"phase":1,"quadratic_rows":[64,80,16,0,6,256,3,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,129,3,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":414,"old":238,"rank":4,"right":{"linear_Z4":[3,3,2,0,0,0,2,0,1],"matrix_rows":[6,5,32,384,71,16,80,88,256],"offset":469,"phase":2,"quadratic_rows":[67,83,16,0,6,256,3,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,130,1,260,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":415,"old":238,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,2,0,1],"matrix_rows":[3,5,32,384,65,16,80,88,256],"offset":468,"phase":1,"quadratic_rows":[70,17,81,0,6,256,5,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,131,1,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":417,"old":238,"rank":4,"right":{"linear_Z4":[0,2,0,0,2,0,2,0,1],"matrix_rows":[3,6,32,384,16,82,64,88,256],"offset":388,"phase":3,"quadratic_rows":[18,85,66,0,3,256,6,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,129,3,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":420,"old":238,"rank":4,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,1],"matrix_rows":[5,6,32,384,80,64,20,88,256],"offset":468,"phase":1,"quadratic_rows":[84,68,19,0,5,256,3,256,416]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":247,"old":239,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,1,1,0,2],"matrix_rows":[366,1,274,276,280,256,288,320,128],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,14,110,110,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":248,"old":239,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,0,2],"matrix_rows":[318,1,258,260,328,336,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,62,62,126,126,126,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":249,"old":239,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,0,2],"matrix_rows":[318,1,322,324,264,272,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,126,126,62,62,126,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":250,"old":240,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":251,"old":240,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,2,4,72,80,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,64,96,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":252,"old":240,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,66,68,8,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":250,"old":241,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,1,1,2,0],"matrix_rows":[238,1,146,148,152,128,160,192,256],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,14,110,110,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":253,"old":241,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,2,0],"matrix_rows":[190,1,194,196,136,144,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,126,126,62,62,126,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":254,"old":241,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,2,0],"matrix_rows":[190,1,130,132,200,208,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,62,62,126,126,126,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":247,"old":242,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":255,"old":242,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,2],"matrix_rows":[288,1,66,68,8,16,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":256,"old":242,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,2],"matrix_rows":[288,1,2,4,72,80,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,64,96,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":251,"old":243,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":253,"old":243,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":257,"old":243,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,2,0],"matrix_rows":[136,1,18,20,152,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":248,"old":244,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":255,"old":244,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":258,"old":244,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":249,"old":245,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":256,"old":245,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":258,"old":245,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,2],"matrix_rows":[264,1,18,20,280,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":252,"old":246,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":254,"old":246,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":257,"old":246,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":555,"old":247,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":557,"old":247,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,64,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":627,"old":247,"rank":2,"right":{"linear_Z4":[0,3,3,3,0,0,1,2,0],"matrix_rows":[6,64,9,18,28,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,192,64,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[1,16,34,66,128,260,8,2,12],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":631,"old":247,"rank":4,"right":{"linear_Z4":[2,0,3,3,0,0,0,2,1],"matrix_rows":[1,140,32,320,2,132,136,16,256],"offset":263,"phase":2,"quadratic_rows":[0,0,12,12,0,256,256,0,352]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":260,"old":248,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":266,"old":248,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":262,"old":249,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":264,"old":249,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":555,"old":250,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":556,"old":250,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[1,16,38,2,4,72,128,256,8],"offset":0,"phase":0,"quadratic_rows":[0,6,6,8,0,0,0,0,0]},"new":626,"old":250,"rank":4,"right":{"linear_Z4":[2,2,0,3,3,1,0,0,2],"matrix_rows":[1,28,4,32,14,16,288,64,128],"offset":55,"phase":1,"quadratic_rows":[0,12,2,26,24,288,0,0,32]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[1,16,34,66,128,260,8,12,2],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":629,"old":250,"rank":4,"right":{"linear_Z4":[2,0,3,3,0,0,0,1,2],"matrix_rows":[1,268,32,192,2,260,264,16,128],"offset":263,"phase":2,"quadratic_rows":[0,0,12,12,0,128,128,224,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":260,"old":251,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":265,"old":251,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":261,"old":252,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":264,"old":252,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":262,"old":253,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":263,"old":253,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":259,"old":254,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":266,"old":254,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":261,"old":255,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":263,"old":255,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":259,"old":256,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":265,"old":256,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":554,"old":257,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":557,"old":257,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,64,131,2,256,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":625,"old":257,"rank":2,"right":{"linear_Z4":[2,3,3,2,0,2,2,0,2],"matrix_rows":[363,45,257,322,68,264,16,288,128],"offset":3,"phase":2,"quadratic_rows":[70,43,109,70,0,70,45,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":630,"old":257,"rank":2,"right":{"linear_Z4":[3,3,3,2,0,0,3,0,2],"matrix_rows":[321,6,257,18,28,16,32,320,128],"offset":3,"phase":2,"quadratic_rows":[65,22,30,4,6,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":554,"old":258,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":556,"old":258,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[1,20,38,68,134,8,258,2,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":624,"old":258,"rank":4,"right":{"linear_Z4":[2,3,3,3,0,2,1,2,3],"matrix_rows":[1,324,266,32,390,256,392,272,192],"offset":13,"phase":3,"quadratic_rows":[0,142,454,138,0,0,452,78,324]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":628,"old":258,"rank":2,"right":{"linear_Z4":[3,3,3,2,0,0,3,2,0],"matrix_rows":[193,6,129,18,28,16,32,192,256],"offset":3,"phase":2,"quadratic_rows":[65,22,30,4,6,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":259,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,3,0,0,2],"matrix_rows":[302,1,274,276,280,256,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,62,62,62,14,46,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,18,1,36,68,132,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":674,"old":259,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,3,0],"matrix_rows":[132,135,24,133,128,104,80,64,256],"offset":22,"phase":1,"quadratic_rows":[3,5,130,120,88,8,24,132,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,17,2,36,68,132,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":740,"old":259,"rank":3,"right":{"linear_Z4":[1,0,2,3,3,2,0,3,0],"matrix_rows":[2,135,24,3,128,72,112,64,256],"offset":31,"phase":1,"quadratic_rows":[133,4,131,88,120,16,24,133,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":260,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,3,0,2,0],"matrix_rows":[174,1,146,148,152,128,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,62,62,62,14,46,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,18,1,36,68,132,4,256,3],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":675,"old":260,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,0,3],"matrix_rows":[260,263,24,261,256,104,80,64,128],"offset":22,"phase":1,"quadratic_rows":[3,5,258,120,88,8,24,0,260]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,17,2,36,68,132,4,256,3],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":741,"old":260,"rank":3,"right":{"linear_Z4":[1,0,2,3,3,2,0,0,3],"matrix_rows":[2,263,24,3,256,72,112,64,128],"offset":31,"phase":1,"quadratic_rows":[261,4,259,88,120,16,24,0,261]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":261,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[11,16,39,71,1,130,5,263,7],"offset":0,"phase":0,"quadratic_rows":[6,3,1,0,0,0,0,0,0]},"new":680,"old":261,"rank":3,"right":{"linear_Z4":[2,0,2,1,1,1,0,0,1],"matrix_rows":[297,25,108,341,38,256,296,320,384],"offset":237,"phase":2,"quadratic_rows":[100,36,27,124,348,299,25,0,304]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[13,16,39,1,71,131,4,263,7],"offset":0,"phase":0,"quadratic_rows":[6,1,5,0,0,0,0,0,0]},"new":734,"old":261,"rank":3,"right":{"linear_Z4":[0,0,2,3,3,1,0,0,1],"matrix_rows":[305,340,25,109,38,256,304,320,384],"offset":225,"phase":2,"quadratic_rows":[324,36,27,124,348,298,25,0,305]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":262,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,0,0,0,0],"matrix_rows":[14,1,274,276,280,256,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,286,286,286,14,0,0,0,14]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[10,16,35,68,128,2,1,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":681,"old":262,"rank":3,"right":{"linear_Z4":[1,2,0,0,0,3,3,0,2],"matrix_rows":[4,97,264,5,38,64,256,16,384],"offset":59,"phase":1,"quadratic_rows":[101,36,99,0,0,103,101,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[10,16,35,64,132,1,2,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":735,"old":262,"rank":3,"right":{"linear_Z4":[1,2,0,0,0,1,1,0,2],"matrix_rows":[100,97,272,101,38,64,8,256,384],"offset":59,"phase":1,"quadratic_rows":[5,36,99,0,0,102,100,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":263,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,2,0],"matrix_rows":[136,1,18,20,152,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,1,130,2,5,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":696,"old":263,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,3,0],"matrix_rows":[144,6,153,145,98,68,128,64,256],"offset":70,"phase":1,"quadratic_rows":[9,102,70,17,136,2,6,144,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,65,4,130,2,5,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":750,"old":263,"rank":3,"right":{"linear_Z4":[1,3,3,0,2,2,0,3,0],"matrix_rows":[8,6,153,9,66,100,128,64,256],"offset":79,"phase":1,"quadratic_rows":[145,70,102,16,137,4,6,145,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":264,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,2],"matrix_rows":[264,1,18,20,280,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,1,130,2,256,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":697,"old":264,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,0,3],"matrix_rows":[272,6,281,273,98,68,256,64,128],"offset":70,"phase":1,"quadratic_rows":[9,102,70,17,264,2,6,0,272]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,65,4,130,2,256,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":751,"old":264,"rank":3,"right":{"linear_Z4":[1,3,3,0,2,2,0,0,3],"matrix_rows":[8,6,281,9,66,100,256,64,128],"offset":79,"phase":1,"quadratic_rows":[273,70,102,16,265,4,6,0,273]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":265,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,1,0,0,2],"matrix_rows":[40,1,18,20,280,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[0,16,16,312,14,296,0,0,40]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[15,17,5,32,65,130,3,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":690,"old":265,"rank":3,"right":{"linear_Z4":[1,1,1,0,3,3,1,0,0],"matrix_rows":[291,117,337,341,290,56,256,320,384],"offset":221,"phase":2,"quadratic_rows":[339,3,292,48,345,300,337,0,117]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[15,3,17,32,65,133,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":756,"old":265,"rank":3,"right":{"linear_Z4":[3,1,1,0,1,2,3,0,3],"matrix_rows":[293,113,339,115,292,56,256,320,384],"offset":213,"phase":3,"quadratic_rows":[117,290,5,48,121,347,113,0,290]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":266,"rank":1,"right":{"linear_Z4":[0,0,0,3,2,3,0,0,0],"matrix_rows":[40,1,18,20,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,16,16,120,14,104,40,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,18,32,64,133,4,1,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":691,"old":266,"rank":3,"right":{"linear_Z4":[1,0,0,2,0,3,3,0,2],"matrix_rows":[16,258,97,17,256,4,56,64,384],"offset":205,"phase":1,"quadratic_rows":[113,0,0,48,105,121,113,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,16,34,64,133,1,4,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":757,"old":266,"rank":3,"right":{"linear_Z4":[1,0,0,2,0,1,1,0,2],"matrix_rows":[112,260,97,113,2,256,56,64,384],"offset":205,"phase":1,"quadratic_rows":[17,0,0,48,105,120,112,0,0]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[1,34,4,72,14,144,22,262,6],"offset":0,"phase":0,"quadratic_rows":[0,24,24,14,22,0,0,0,0]},"new":1,"old":267,"rank":5,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[1,338,84,264,288,256,272,320,384],"offset":253,"phase":1,"quadratic_rows":[0,80,80,16,14,64,38,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,1,68,6,136,10,258,2],"offset":0,"phase":0,"quadratic_rows":[3,15,6,10,0,0,0,0,0]},"new":414,"old":267,"rank":4,"right":{"linear_Z4":[3,1,0,0,1,0,1,0,3],"matrix_rows":[262,85,264,288,263,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[339,259,80,16,349,64,373,0,339]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,34,4,65,7,136,14,262,6],"offset":0,"phase":0,"quadratic_rows":[7,15,15,14,0,0,0,0,0]},"new":415,"old":267,"rank":4,"right":{"linear_Z4":[2,2,2,1,0,0,0,0,3],"matrix_rows":[264,91,349,288,265,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[14,345,345,31,14,64,38,0,262]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,35,5,73,15,129,7,262,6],"offset":0,"phase":0,"quadratic_rows":[7,15,15,14,0,0,0,0,0]},"new":418,"old":267,"rank":4,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,3],"matrix_rows":[302,125,379,264,303,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[40,120,120,279,14,103,38,0,264]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,34,4,72,14,129,7,262,6],"offset":0,"phase":0,"quadratic_rows":[7,15,15,14,0,0,0,0,0]},"new":419,"old":267,"rank":4,"right":{"linear_Z4":[2,2,2,0,0,1,0,0,3],"matrix_rows":[288,115,373,264,289,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[38,369,369,16,14,103,38,0,262]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":276,"old":268,"rank":1,"right":{"linear_Z4":[0,1,1,1,0,2,1,1,2],"matrix_rows":[462,33,290,260,264,48,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,238,206,206,32,19,206,206,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":277,"old":268,"rank":1,"right":{"linear_Z4":[0,1,1,1,0,1,2,1,2],"matrix_rows":[430,65,258,324,264,80,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,174,238,174,64,174,21,174,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":278,"old":268,"rank":1,"right":{"linear_Z4":[0,1,1,1,0,1,2,1,2],"matrix_rows":[430,1,322,324,264,16,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,238,238,174,0,238,38,174,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":279,"old":269,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,2,0,0],"matrix_rows":[80,33,34,4,8,112,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":280,"old":269,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[112,33,2,36,8,80,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,0,48,21,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":281,"old":269,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,0],"matrix_rows":[112,1,18,20,8,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,0,38,48,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":279,"old":270,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":282,"old":270,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":283,"old":270,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":276,"old":271,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":284,"old":271,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,0,2,1,2],"matrix_rows":[413,257,66,324,264,272,96,256,384],"offset":0,"phase":0,"quadratic_rows":[157,64,221,157,157,64,38,157,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":285,"old":271,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,0,2,1,2],"matrix_rows":[413,321,2,324,264,336,32,256,384],"offset":0,"phase":0,"quadratic_rows":[221,0,221,157,221,0,21,157,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":280,"old":272,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":282,"old":272,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":286,"old":272,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":277,"old":273,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":284,"old":273,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":287,"old":273,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,2,0,1,2],"matrix_rows":[411,289,290,4,264,304,256,64,384],"offset":0,"phase":0,"quadratic_rows":[187,187,0,155,187,19,0,155,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":278,"old":274,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":285,"old":274,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":287,"old":274,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":281,"old":275,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":283,"old":275,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":286,"old":275,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":559,"old":276,"rank":1,"right":{"linear_Z4":[1,2,3,3,3,0,1,3,2],"matrix_rows":[413,321,66,260,264,272,32,256,384],"offset":135,"phase":0,"quadratic_rows":[221,64,157,157,157,0,67,157,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":561,"old":276,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,1,1,2],"matrix_rows":[216,1,18,20,264,256,288,320,384],"offset":102,"phase":0,"quadratic_rows":[0,16,16,472,462,0,472,472,216]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,65,128,257,3,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":635,"old":276,"rank":2,"right":{"linear_Z4":[2,3,1,1,1,0,1,2,0],"matrix_rows":[286,384,193,386,324,328,336,32,256],"offset":373,"phase":0,"quadratic_rows":[192,158,94,94,94,0,221,67,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,67,131,258,2,4,8,13],"offset":0,"phase":0,"quadratic_rows":[12,2,13,13,0,0,0,0,0]},"new":639,"old":276,"rank":4,"right":{"linear_Z4":[1,1,2,2,0,2,0,0,0],"matrix_rows":[279,20,320,384,265,282,300,288,32],"offset":0,"phase":0,"quadratic_rows":[31,15,43,23,41,20,256,256,192]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":289,"old":277,"rank":1,"right":{"linear_Z4":[1,3,2,3,3,1,0,3,2],"matrix_rows":[411,289,258,36,264,272,256,64,384],"offset":75,"phase":0,"quadratic_rows":[187,155,32,155,155,37,0,155,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":295,"old":277,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,1,0,1,2],"matrix_rows":[184,1,18,20,264,256,288,320,384],"offset":170,"phase":0,"quadratic_rows":[0,16,16,440,430,440,0,440,184]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":291,"old":278,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,66,100,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,70,102,0,0,37,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":293,"old":278,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":559,"old":279,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":560,"old":279,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[31,45,7,11,66,128,256,3,2],"offset":0,"phase":0,"quadratic_rows":[12,2,1,1,0,0,0,0,0]},"new":634,"old":279,"rank":4,"right":{"linear_Z4":[0,3,3,3,1,0,0,0,2],"matrix_rows":[399,17,263,267,141,398,272,32,64],"offset":12,"phase":2,"quadratic_rows":[286,15,399,399,273,0,0,12,29]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[16,35,72,136,257,2,3,12,4],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]},"new":637,"old":279,"rank":4,"right":{"linear_Z4":[2,0,3,3,1,0,2,3,0],"matrix_rows":[114,34,384,140,19,64,388,392,96],"offset":281,"phase":0,"quadratic_rows":[18,1,268,268,17,0,0,384,140]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":289,"old":280,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":294,"old":280,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":290,"old":281,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":293,"old":281,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":291,"old":282,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":292,"old":282,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":288,"old":283,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":295,"old":283,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":290,"old":284,"rank":1,"right":{"linear_Z4":[3,1,2,3,1,3,0,3,2],"matrix_rows":[427,257,274,20,264,256,288,64,384],"offset":45,"phase":0,"quadratic_rows":[171,187,16,171,22,171,0,171,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":292,"old":284,"rank":1,"right":{"linear_Z4":[0,2,2,1,1,0,0,1,2],"matrix_rows":[184,33,2,36,264,272,256,320,384],"offset":204,"phase":0,"quadratic_rows":[32,0,32,440,440,413,0,440,184]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":288,"old":285,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,18,84,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,16,85,0,22,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":294,"old":285,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":558,"old":286,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":561,"old":286,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":633,"old":286,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,0,3,3,0],"matrix_rows":[384,200,1,2,4,392,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,328,0,0,328,384,200]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,2,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":638,"old":286,"rank":2,"right":{"linear_Z4":[3,3,1,2,0,0,3,3,2],"matrix_rows":[451,4,257,258,12,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[195,195,12,4,0,0,195,195,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":558,"old":287,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":560,"old":287,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,33,3,72,130,2,12,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,8,12,0,0,0,0,0]},"new":632,"old":287,"rank":4,"right":{"linear_Z4":[3,3,1,1,0,0,3,0,2],"matrix_rows":[23,20,192,392,37,54,456,32,256],"offset":3,"phase":2,"quadratic_rows":[51,35,20,72,5,3,328,256,192]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,65,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":636,"old":287,"rank":2,"right":{"linear_Z4":[3,0,2,3,3,0,2,1,2],"matrix_rows":[81,392,65,2,12,256,80,32,384],"offset":49,"phase":3,"quadratic_rows":[17,0,8,140,17,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":288,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,68,3,4,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":672,"old":288,"rank":3,"right":{"linear_Z4":[2,0,1,1,1,2,2,0,0],"matrix_rows":[68,18,8,5,64,80,40,128,256],"offset":41,"phase":3,"quadratic_rows":[4,80,21,40,86,8,18,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,1,130,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":716,"old":288,"rank":3,"right":{"linear_Z4":[2,1,1,0,2,3,0,2,3],"matrix_rows":[18,424,384,5,22,16,256,416,64],"offset":123,"phase":0,"quadratic_rows":[4,6,7,160,0,40,0,264,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":289,"rank":1,"right":{"linear_Z4":[1,0,1,3,3,0,0,3,2],"matrix_rows":[397,257,18,276,264,256,32,320,384],"offset":171,"phase":1,"quadratic_rows":[141,16,157,141,22,0,0,141,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,18,33,4,70,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":673,"old":289,"rank":3,"right":{"linear_Z4":[2,0,1,0,2,0,0,3,2],"matrix_rows":[196,471,157,325,320,64,336,96,384],"offset":0,"phase":0,"quadratic_rows":[14,149,143,149,10,0,0,142,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,39,71,129,7,262,2,4],"offset":0,"phase":0,"quadratic_rows":[7,1,1,0,0,0,0,0,0]},"new":717,"old":289,"rank":3,"right":{"linear_Z4":[0,0,2,3,3,2,0,3,3],"matrix_rows":[268,444,60,21,134,32,56,288,320],"offset":353,"phase":2,"quadratic_rows":[20,132,59,188,157,140,0,442,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":290,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,3,0,3,2],"matrix_rows":[398,33,258,292,264,16,256,320,384],"offset":205,"phase":1,"quadratic_rows":[32,142,174,142,0,37,0,142,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,39,71,135,2,261,1,4],"offset":0,"phase":0,"quadratic_rows":[2,7,2,0,0,0,0,0,0]},"new":680,"old":290,"rank":3,"right":{"linear_Z4":[0,0,2,3,0,3,0,3,1],"matrix_rows":[172,268,300,133,38,256,296,272,320],"offset":354,"phase":2,"quadratic_rows":[132,36,299,428,0,174,0,169,268]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,21,34,4,66,133,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":726,"old":290,"rank":3,"right":{"linear_Z4":[0,2,1,0,0,2,0,3,2],"matrix_rows":[487,196,174,320,326,64,80,352,384],"offset":0,"phase":0,"quadratic_rows":[166,13,143,166,0,9,0,141,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":291,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,130,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":681,"old":291,"rank":3,"right":{"linear_Z4":[1,2,1,0,3,2,0,2,3],"matrix_rows":[33,408,384,37,6,32,256,400,64],"offset":123,"phase":0,"quadratic_rows":[5,4,7,144,24,0,0,264,384]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,4,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":727,"old":291,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,1,2,0,0],"matrix_rows":[33,68,8,64,6,96,24,128,256],"offset":50,"phase":3,"quadratic_rows":[96,4,38,24,8,101,33,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":292,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,0,0,3,0],"matrix_rows":[158,1,274,276,264,256,32,64,384],"offset":45,"phase":0,"quadratic_rows":[0,398,398,414,392,0,0,414,158]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,67,5,128,256,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":704,"old":292,"rank":3,"right":{"linear_Z4":[0,0,0,2,2,0,0,1,3],"matrix_rows":[158,14,272,153,266,268,256,32,64],"offset":1,"phase":1,"quadratic_rows":[152,408,408,263,263,0,0,135,286]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,4,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":752,"old":292,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,0,2],"matrix_rows":[71,398,150,64,322,324,256,96,384],"offset":67,"phase":1,"quadratic_rows":[6,31,31,134,134,0,0,24,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":293,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,66,100,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,70,102,0,0,37,6,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,128,258,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":705,"old":293,"rank":3,"right":{"linear_Z4":[3,3,3,0,0,2,0,2,3],"matrix_rows":[384,6,393,385,98,68,256,16,64],"offset":70,"phase":1,"quadratic_rows":[9,102,70,129,0,2,6,264,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,134,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":753,"old":293,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,1,2,1,2],"matrix_rows":[392,36,68,9,38,64,256,80,384],"offset":248,"phase":3,"quadratic_rows":[8,36,2,137,0,34,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":294,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,18,84,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,16,85,0,22,0,5,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,37,66,129,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":714,"old":294,"rank":3,"right":{"linear_Z4":[2,2,0,3,1,2,0,1,2],"matrix_rows":[116,392,68,21,10,32,256,96,384],"offset":217,"phase":1,"quadratic_rows":[20,8,1,138,17,0,0,136,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,68,129,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":760,"old":294,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,0,2,3],"matrix_rows":[5,384,394,81,386,68,256,64,32],"offset":69,"phase":1,"quadratic_rows":[85,10,69,130,1,0,5,264,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":295,"rank":1,"right":{"linear_Z4":[1,0,1,3,0,0,0,3,0],"matrix_rows":[173,289,2,292,264,16,256,64,384],"offset":75,"phase":0,"quadratic_rows":[397,0,397,429,0,392,0,429,173]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,17,39,66,129,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":715,"old":295,"rank":3,"right":{"linear_Z4":[3,2,3,0,0,0,2,0,2],"matrix_rows":[71,397,165,321,64,324,256,80,384],"offset":67,"phase":1,"quadratic_rows":[47,5,47,133,0,133,0,40,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,16,35,67,128,6,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":761,"old":295,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,1,3],"matrix_rows":[13,173,288,265,170,268,256,16,64],"offset":2,"phase":1,"quadratic_rows":[424,168,424,263,0,263,0,135,301]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,136,262,5,3,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":296,"rank":5,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,1],"matrix_rows":[65,66,68,8,384,32,96,256,112],"offset":431,"phase":1,"quadratic_rows":[96,32,64,256,0,3,5,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,132,258,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":414,"old":296,"rank":4,"right":{"linear_Z4":[1,1,2,0,0,2,2,0,1],"matrix_rows":[6,5,8,384,103,64,32,256,112],"offset":389,"phase":0,"quadratic_rows":[99,35,64,256,0,3,5,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,132,258,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":416,"old":296,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,1],"matrix_rows":[5,6,8,384,32,96,68,256,112],"offset":484,"phase":1,"quadratic_rows":[36,100,67,256,0,3,6,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,132,258,3,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":417,"old":296,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,2,0,0,1],"matrix_rows":[3,6,8,384,64,34,96,256,112],"offset":484,"phase":1,"quadratic_rows":[66,37,98,256,0,6,5,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,132,259,2,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":419,"old":296,"rank":4,"right":{"linear_Z4":[2,0,0,0,0,2,2,0,1],"matrix_rows":[3,5,8,384,97,64,32,256,112],"offset":388,"phase":3,"quadratic_rows":[102,65,33,256,0,5,3,256,392]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":305,"old":297,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,2,0],"matrix_rows":[144,33,34,4,8,176,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":306,"old":297,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":307,"old":297,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":308,"old":298,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":309,"old":298,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":310,"old":298,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":308,"old":299,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,2],"matrix_rows":[272,33,34,4,8,304,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":311,"old":299,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":312,"old":299,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":305,"old":300,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":313,"old":300,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":314,"old":300,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":309,"old":301,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,0,2],"matrix_rows":[315,257,258,4,328,336,352,256,128],"offset":0,"phase":0,"quadratic_rows":[59,59,0,123,123,123,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":311,"old":301,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,0,2],"matrix_rows":[315,321,322,4,328,272,288,256,128],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,59,59,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":315,"old":301,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,2,1,0,2],"matrix_rows":[347,289,290,4,264,304,256,320,128],"offset":0,"phase":0,"quadratic_rows":[123,123,0,91,123,19,91,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":306,"old":302,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,1,2,4,200,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,64,64,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":313,"old":302,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,65,66,4,200,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":316,"old":302,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":307,"old":303,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,2,0],"matrix_rows":[187,193,194,4,200,144,160,128,256],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,59,59,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":314,"old":303,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,2,0],"matrix_rows":[187,129,130,4,200,208,224,128,256],"offset":0,"phase":0,"quadratic_rows":[59,59,0,123,123,123,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":316,"old":303,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,2,1,2,0],"matrix_rows":[219,161,162,4,136,176,128,192,256],"offset":0,"phase":0,"quadratic_rows":[123,123,0,91,123,19,91,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":310,"old":304,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,2],"matrix_rows":[264,65,66,4,328,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":312,"old":304,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,2],"matrix_rows":[264,1,2,4,328,80,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,64,64,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":315,"old":304,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":563,"old":305,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":565,"old":305,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,65,128,3,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":643,"old":305,"rank":2,"right":{"linear_Z4":[3,2,3,3,3,0,2,0,2],"matrix_rows":[30,323,321,66,260,264,272,32,128],"offset":3,"phase":2,"quadratic_rows":[3,285,286,286,286,0,0,0,30]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[16,35,72,136,257,2,12,3,4],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]},"new":647,"old":305,"rank":4,"right":{"linear_Z4":[2,0,3,3,1,0,3,2,0],"matrix_rows":[178,34,320,76,19,128,324,328,160],"offset":281,"phase":0,"quadratic_rows":[18,1,268,268,17,0,320,0,76]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":318,"old":306,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":324,"old":306,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":320,"old":307,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":322,"old":307,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":563,"old":308,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":564,"old":308,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[18,35,4,8,66,131,257,1,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":642,"old":308,"rank":4,"right":{"linear_Z4":[3,3,2,2,3,0,1,2,3],"matrix_rows":[322,273,4,8,387,256,400,288,192],"offset":14,"phase":3,"quadratic_rows":[147,451,0,0,145,0,450,83,322]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[16,35,72,136,257,2,12,4,3],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]},"new":645,"old":308,"rank":4,"right":{"linear_Z4":[2,0,3,3,1,0,3,0,2],"matrix_rows":[306,34,192,76,19,256,196,200,288],"offset":281,"phase":0,"quadratic_rows":[18,1,140,140,17,0,192,76,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":318,"old":309,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":323,"old":309,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":319,"old":310,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":322,"old":310,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":320,"old":311,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":321,"old":311,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":317,"old":312,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":324,"old":312,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":319,"old":313,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":321,"old":313,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":317,"old":314,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":323,"old":314,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":562,"old":315,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":565,"old":315,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":641,"old":315,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,0,1,2,0],"matrix_rows":[3,64,33,50,20,8,32,192,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,192,64,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,65,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":646,"old":315,"rank":2,"right":{"linear_Z4":[3,0,2,3,3,0,1,2,2],"matrix_rows":[145,328,129,2,12,256,144,32,320],"offset":49,"phase":3,"quadratic_rows":[17,0,8,76,17,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":562,"old":316,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":564,"old":316,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[16,35,4,72,1,2,128,256,8],"offset":0,"phase":0,"quadratic_rows":[3,3,0,8,0,0,0,0,0]},"new":640,"old":316,"rank":4,"right":{"linear_Z4":[2,0,2,1,3,3,0,0,2],"matrix_rows":[50,2,4,8,19,32,264,64,128],"offset":55,"phase":1,"quadratic_rows":[18,1,0,264,49,48,0,0,8]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":644,"old":316,"rank":2,"right":{"linear_Z4":[3,0,2,3,3,0,1,2,2],"matrix_rows":[273,200,257,2,12,128,272,32,192],"offset":49,"phase":3,"quadratic_rows":[17,0,8,76,17,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":317,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,2,0,0,2],"matrix_rows":[283,289,290,4,264,304,256,320,128],"offset":1,"phase":1,"quadratic_rows":[59,59,0,27,59,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,18,1,32,64,132,260,2,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":674,"old":317,"rank":3,"right":{"linear_Z4":[2,0,3,2,2,1,0,3,2],"matrix_rows":[129,135,288,133,128,40,16,256,320],"offset":484,"phase":1,"quadratic_rows":[130,5,6,32,0,40,0,129,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,19,2,32,68,128,260,1,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":724,"old":317,"rank":3,"right":{"linear_Z4":[0,2,3,2,1,2,0,3,2],"matrix_rows":[135,130,272,128,134,24,256,32,320],"offset":484,"phase":1,"quadratic_rows":[6,129,5,16,24,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":318,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,2,0,2,0],"matrix_rows":[155,161,162,4,136,176,128,192,256],"offset":1,"phase":1,"quadratic_rows":[59,59,0,27,59,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,18,1,32,64,132,260,4,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":675,"old":318,"rank":3,"right":{"linear_Z4":[2,0,3,2,2,1,0,2,3],"matrix_rows":[257,263,160,261,256,40,16,128,192],"offset":484,"phase":1,"quadratic_rows":[258,5,6,32,0,40,0,0,257]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,19,2,32,68,128,260,4,1],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":725,"old":318,"rank":3,"right":{"linear_Z4":[0,2,3,2,1,2,0,2,3],"matrix_rows":[263,258,144,256,262,24,128,32,192],"offset":484,"phase":1,"quadratic_rows":[6,257,5,16,24,0,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":319,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,22,7,34,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":682,"old":319,"rank":3,"right":{"linear_Z4":[3,0,3,1,0,3,0,0,0],"matrix_rows":[20,42,39,21,54,40,64,128,256],"offset":4,"phase":1,"quadratic_rows":[51,57,20,10,39,51,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[13,20,7,33,1,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":718,"old":319,"rank":3,"right":{"linear_Z4":[0,3,3,1,3,0,0,0,0],"matrix_rows":[25,36,23,53,38,24,64,128,256],"offset":4,"phase":1,"quadratic_rows":[58,51,36,9,51,23,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":320,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,2,0,0,0],"matrix_rows":[19,289,290,4,8,304,256,64,384],"offset":1,"phase":1,"quadratic_rows":[307,307,0,0,307,19,0,0,19]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,3,34,64,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":683,"old":320,"rank":3,"right":{"linear_Z4":[3,3,1,0,0,0,0,0,2],"matrix_rows":[15,12,288,69,78,64,16,256,384],"offset":3,"phase":2,"quadratic_rows":[75,67,12,5,0,0,3,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[10,18,3,33,68,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":719,"old":320,"rank":3,"right":{"linear_Z4":[3,3,1,0,0,0,0,0,2],"matrix_rows":[12,15,272,77,70,64,256,32,384],"offset":3,"phase":2,"quadratic_rows":[67,75,12,6,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":321,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,2],"matrix_rows":[272,33,34,4,8,304,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,130,4,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":712,"old":321,"rank":3,"right":{"linear_Z4":[3,3,1,2,0,2,0,0,3],"matrix_rows":[3,16,308,65,74,20,64,256,128],"offset":167,"phase":1,"quadratic_rows":[67,75,292,2,32,276,3,0,292]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,2,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":754,"old":321,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,2,0,0,3],"matrix_rows":[3,288,308,73,66,292,64,256,128],"offset":133,"phase":1,"quadratic_rows":[75,67,20,1,36,272,3,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":322,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,2,0],"matrix_rows":[144,33,34,4,8,176,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,130,4,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":713,"old":322,"rank":3,"right":{"linear_Z4":[3,3,1,2,0,2,0,3,0],"matrix_rows":[3,16,180,65,74,20,64,128,256],"offset":167,"phase":1,"quadratic_rows":[67,75,164,2,32,148,3,164,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,2,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":755,"old":322,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,2,0,3,0],"matrix_rows":[3,160,180,73,66,164,64,128,256],"offset":133,"phase":1,"quadratic_rows":[75,67,20,1,36,144,3,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":323,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,2,0,0,0],"matrix_rows":[24,33,34,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,32,0,88,120,19,24,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,64,134,4,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":706,"old":323,"rank":3,"right":{"linear_Z4":[0,0,1,2,0,3,3,0,2],"matrix_rows":[258,16,100,1,256,20,56,64,384],"offset":230,"phase":1,"quadratic_rows":[0,0,116,48,108,124,116,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,36,64,132,6,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":762,"old":323,"rank":3,"right":{"linear_Z4":[0,0,1,2,3,2,2,0,2],"matrix_rows":[257,96,20,256,2,100,56,64,384],"offset":192,"phase":2,"quadratic_rows":[0,0,116,48,124,28,20,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":324,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,2,0,0,2],"matrix_rows":[24,33,34,4,264,304,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,32,0,280,312,19,0,0,24]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[15,17,5,32,67,2,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":707,"old":324,"rank":3,"right":{"linear_Z4":[3,1,1,0,2,3,0,0,3],"matrix_rows":[307,293,17,21,306,56,256,320,384],"offset":211,"phase":3,"quadratic_rows":[19,3,308,48,301,316,0,0,308]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[10,23,6,32,65,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":763,"old":324,"rank":3,"right":{"linear_Z4":[1,1,1,0,3,0,0,0,0],"matrix_rows":[22,307,290,305,294,56,256,320,384],"offset":222,"phase":2,"quadratic_rows":[3,291,308,48,316,30,0,0,22]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,2,4,72,144,19,11,259,3],"offset":0,"phase":0,"quadratic_rows":[24,24,0,11,19,0,0,0,0]},"new":1,"old":325,"rank":5,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[353,98,4,264,272,256,320,288,384],"offset":254,"phase":1,"quadratic_rows":[96,96,0,64,32,19,11,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,1,68,136,11,7,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":414,"old":325,"rank":4,"right":{"linear_Z4":[1,3,0,0,0,2,2,0,1],"matrix_rows":[358,101,264,272,263,256,320,288,384],"offset":204,"phase":0,"quadratic_rows":[355,355,0,64,32,19,11,0,259]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,2,35,72,132,7,11,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":416,"old":325,"rank":4,"right":{"linear_Z4":[2,2,2,0,1,0,0,0,3],"matrix_rows":[117,374,272,264,256,276,320,288,384],"offset":254,"phase":3,"quadratic_rows":[372,372,19,64,55,19,11,0,259]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,35,5,73,129,2,10,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":418,"old":325,"rank":4,"right":{"linear_Z4":[2,0,0,2,3,2,2,0,3],"matrix_rows":[382,125,283,264,287,256,320,288,384],"offset":200,"phase":3,"quadratic_rows":[120,120,24,327,55,19,11,0,264]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,2,35,68,136,11,7,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":420,"old":325,"rank":4,"right":{"linear_Z4":[2,2,2,1,0,0,0,0,3],"matrix_rows":[109,366,264,272,256,268,320,288,384],"offset":254,"phase":3,"quadratic_rows":[364,364,11,79,32,19,11,0,259]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":334,"old":326,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":335,"old":326,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":336,"old":326,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":337,"old":327,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":338,"old":327,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":339,"old":327,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":337,"old":328,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,2,0],"matrix_rows":[132,33,2,164,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":340,"old":328,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":341,"old":328,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":334,"old":329,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,2],"matrix_rows":[260,33,2,292,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":342,"old":329,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":343,"old":329,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":338,"old":330,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,2,0],"matrix_rows":[130,65,194,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,66,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":340,"old":330,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,2,0],"matrix_rows":[130,1,194,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,64,0,0,64,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":344,"old":330,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":335,"old":331,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,2],"matrix_rows":[258,65,322,4,72,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,66,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":342,"old":331,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,2],"matrix_rows":[258,1,322,68,8,16,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,66,64,0,0,64,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":345,"old":331,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":336,"old":332,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,0,2],"matrix_rows":[303,257,322,324,264,16,352,256,128],"offset":0,"phase":0,"quadratic_rows":[47,111,111,47,0,111,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":343,"old":332,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,0,2],"matrix_rows":[303,321,322,260,328,16,288,256,128],"offset":0,"phase":0,"quadratic_rows":[111,111,47,111,0,47,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":345,"old":332,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,1,0,2],"matrix_rows":[335,289,258,292,296,16,256,320,128],"offset":0,"phase":0,"quadratic_rows":[111,79,111,111,0,13,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":339,"old":333,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,2,0],"matrix_rows":[175,129,194,196,136,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[47,111,111,47,0,111,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":341,"old":333,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,2,0],"matrix_rows":[175,193,194,132,200,16,160,128,256],"offset":0,"phase":0,"quadratic_rows":[111,111,47,111,0,47,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":344,"old":333,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,1,2,0],"matrix_rows":[207,161,130,164,168,16,128,192,256],"offset":0,"phase":0,"quadratic_rows":[111,79,111,111,0,13,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":566,"old":334,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":567,"old":334,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[18,35,66,129,4,257,8,3,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":649,"old":334,"rank":4,"right":{"linear_Z4":[1,2,1,0,2,0,2,2,0],"matrix_rows":[266,15,16,64,393,130,388,256,288],"offset":12,"phase":2,"quadratic_rows":[391,389,399,388,0,0,0,15,15]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[16,40,69,129,264,4,10,2,1],"offset":0,"phase":0,"quadratic_rows":[4,10,5,2,0,0,0,0,0]},"new":651,"old":334,"rank":4,"right":{"linear_Z4":[2,3,0,3,3,3,3,0,1],"matrix_rows":[300,192,260,82,13,194,288,256,208],"offset":93,"phase":1,"quadratic_rows":[12,146,257,41,146,40,192,82,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":347,"old":335,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":353,"old":335,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":349,"old":336,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":351,"old":336,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":486,"old":337,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":488,"old":337,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,2,0],"matrix_rows":[136,1,2,12,128,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":566,"old":337,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[20,44,68,131,10,259,2,3,7],"offset":0,"phase":0,"quadratic_rows":[5,14,15,14,0,0,0,0,0]},"new":648,"old":337,"rank":4,"right":{"linear_Z4":[3,2,3,0,2,0,3,0,3],"matrix_rows":[392,472,215,458,393,474,388,128,160],"offset":466,"phase":1,"quadratic_rows":[351,197,343,321,197,0,351,18,333]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":347,"old":338,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":352,"old":338,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":348,"old":339,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":351,"old":339,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":349,"old":340,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":350,"old":340,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":346,"old":341,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":353,"old":341,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":348,"old":342,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":350,"old":342,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":346,"old":343,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":352,"old":343,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":462,"old":344,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":463,"old":344,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":567,"old":344,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[17,34,65,128,4,256,8,10,1],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":650,"old":344,"rank":4,"right":{"linear_Z4":[3,0,3,0,2,0,0,1,2],"matrix_rows":[261,2,16,192,257,128,260,8,32],"offset":39,"phase":2,"quadratic_rows":[5,128,5,0,0,0,128,194,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":463,"old":345,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":467,"old":345,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":485,"old":345,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":489,"old":345,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":354,"old":346,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,2,0,0,0],"matrix_rows":[13,289,2,292,296,16,256,64,384],"offset":1,"phase":1,"quadratic_rows":[301,0,301,301,0,13,0,0,13]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,3,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":688,"old":346,"rank":3,"right":{"linear_Z4":[3,3,0,0,1,0,0,0,2],"matrix_rows":[27,24,288,81,90,4,64,256,384],"offset":3,"phase":2,"quadratic_rows":[75,67,0,17,24,0,3,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,1,128,3,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":720,"old":346,"rank":3,"right":{"linear_Z4":[3,1,0,3,2,0,0,0,2],"matrix_rows":[18,9,260,83,64,256,88,32,384],"offset":3,"phase":2,"quadratic_rows":[91,3,0,89,9,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":354,"old":347,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[10,18,35,69,4,7,133,261,5],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":689,"old":347,"rank":3,"right":{"linear_Z4":[3,3,0,2,1,1,0,0,2],"matrix_rows":[20,23,56,297,290,60,256,320,384],"offset":221,"phase":2,"quadratic_rows":[319,311,59,37,23,47,0,0,3]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,19,3,36,5,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,5,2,0,0,0,0,0,0]},"new":721,"old":347,"rank":3,"right":{"linear_Z4":[3,0,2,3,1,2,0,0,0],"matrix_rows":[7,55,29,53,6,56,64,128,256],"offset":6,"phase":2,"quadratic_rows":[25,52,26,45,55,26,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":348,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,2,0,0,2],"matrix_rows":[271,289,258,292,296,16,256,320,128],"offset":1,"phase":1,"quadratic_rows":[47,15,47,47,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,68,1,130,258,4,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":696,"old":348,"rank":3,"right":{"linear_Z4":[2,2,2,0,3,1,0,3,2],"matrix_rows":[129,288,153,145,34,4,128,256,320],"offset":434,"phase":1,"quadratic_rows":[136,32,0,17,24,34,0,129,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,69,4,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":728,"old":348,"rank":3,"right":{"linear_Z4":[0,2,1,2,3,2,0,3,2],"matrix_rows":[153,260,136,128,6,256,152,32,320],"offset":434,"phase":1,"quadratic_rows":[24,4,6,129,17,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":349,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,2,0,2,0],"matrix_rows":[143,161,130,164,168,16,128,192,256],"offset":1,"phase":1,"quadratic_rows":[47,15,47,47,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,68,1,130,258,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":697,"old":349,"rank":3,"right":{"linear_Z4":[2,2,2,0,3,1,0,2,3],"matrix_rows":[257,160,281,273,34,4,256,128,192],"offset":434,"phase":1,"quadratic_rows":[264,32,0,17,24,34,0,0,257]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,69,4,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":729,"old":349,"rank":3,"right":{"linear_Z4":[0,2,1,2,3,2,0,2,3],"matrix_rows":[281,132,264,256,6,128,280,32,192],"offset":434,"phase":1,"quadratic_rows":[24,4,6,257,17,0,0,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":354,"old":350,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,2,0,0,2],"matrix_rows":[6,33,258,292,40,16,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,262,294,32,0,13,0,0,6]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,18,34,7,1,69,133,261,5],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":704,"old":350,"rank":3,"right":{"linear_Z4":[0,3,3,1,1,2,0,0,2],"matrix_rows":[56,23,17,57,266,300,256,320,384],"offset":245,"phase":2,"quadratic_rows":[62,287,319,47,23,13,0,0,6]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[14,16,35,71,4,5,134,262,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":736,"old":350,"rank":3,"right":{"linear_Z4":[2,0,3,3,2,1,0,0,1],"matrix_rows":[28,25,301,293,38,256,312,320,384],"offset":236,"phase":1,"quadratic_rows":[16,36,310,24,301,310,0,0,308]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":354,"old":351,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[6,33,66,100,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,70,102,32,0,13,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,34,68,3,129,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":705,"old":351,"rank":3,"right":{"linear_Z4":[0,3,3,0,1,0,0,0,2],"matrix_rows":[48,54,264,1,114,84,256,64,384],"offset":3,"phase":2,"quadratic_rows":[0,70,102,0,48,20,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,64,134,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":737,"old":351,"rank":3,"right":{"linear_Z4":[0,2,0,0,2,2,2,0,2],"matrix_rows":[257,20,116,256,38,64,8,112,384],"offset":48,"phase":2,"quadratic_rows":[0,36,2,0,0,2,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":352,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,2],"matrix_rows":[260,33,2,292,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,2,132,257,1,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":712,"old":352,"rank":3,"right":{"linear_Z4":[2,2,2,1,3,0,0,2,3],"matrix_rows":[136,260,308,1,10,276,128,256,192],"offset":345,"phase":1,"quadratic_rows":[0,8,288,10,48,20,0,0,260]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,130,4,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":744,"old":352,"rank":3,"right":{"linear_Z4":[3,2,0,3,3,2,0,0,3],"matrix_rows":[9,308,288,67,64,256,72,304,128],"offset":35,"phase":1,"quadratic_rows":[75,1,48,73,20,260,9,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":353,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,2,0],"matrix_rows":[132,33,2,164,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,2,132,257,4,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":713,"old":353,"rank":3,"right":{"linear_Z4":[2,2,2,1,3,0,0,3,2],"matrix_rows":[264,132,180,1,10,148,256,128,320],"offset":345,"phase":1,"quadratic_rows":[0,8,160,10,48,20,0,132,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,130,4,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":745,"old":353,"rank":3,"right":{"linear_Z4":[3,2,0,3,3,2,0,3,0],"matrix_rows":[9,180,160,67,64,128,72,176,256],"offset":35,"phase":1,"quadratic_rows":[75,1,48,73,20,132,9,160,0]}},{"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,16,13,11,265,9],"offset":0,"phase":0,"quadratic_rows":[6,11,13,6,0,0,0,0,0]},"new":1,"old":354,"rank":5,"right":{"linear_Z4":[2,0,0,2,2,0,0,0,0],"matrix_rows":[353,258,260,104,16,256,320,288,384],"offset":254,"phase":1,"quadratic_rows":[96,64,32,96,0,13,11,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,34,68,137,1,13,11,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":415,"old":354,"rank":4,"right":{"linear_Z4":[1,0,0,3,0,2,2,0,1],"matrix_rows":[376,258,260,113,281,320,288,256,384],"offset":102,"phase":0,"quadratic_rows":[361,64,32,361,0,13,11,0,265]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,77,8,4,137,11,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":416,"old":354,"rank":4,"right":{"linear_Z4":[0,0,1,0,2,0,0,0,1],"matrix_rows":[341,258,260,92,256,320,276,288,384],"offset":51,"phase":0,"quadratic_rows":[84,64,285,84,13,0,11,0,260]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,43,68,8,2,13,137,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":417,"old":354,"rank":4,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,1],"matrix_rows":[307,258,260,58,256,274,288,320,384],"offset":85,"phase":0,"quadratic_rows":[50,283,32,50,11,13,0,0,258]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,35,69,137,1,12,10,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":418,"old":354,"rank":4,"right":{"linear_Z4":[1,1,1,3,0,2,2,0,1],"matrix_rows":[382,258,260,119,287,320,288,256,384],"offset":102,"phase":0,"quadratic_rows":[361,86,54,361,6,13,11,0,265]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":363,"old":355,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":364,"old":355,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,2,0,0,0],"matrix_rows":[49,33,2,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":365,"old":355,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":366,"old":356,"rank":1,"right":{"linear_Z4":[0,1,0,1,1,2,1,1,2],"matrix_rows":[474,33,258,36,296,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,218,32,250,218,13,218,218,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":367,"old":356,"rank":1,"right":{"linear_Z4":[0,1,0,1,1,1,2,1,2],"matrix_rows":[442,1,258,4,328,336,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,186,0,250,250,250,56,186,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":368,"old":356,"rank":1,"right":{"linear_Z4":[0,1,0,1,1,1,2,1,2],"matrix_rows":[442,65,258,68,264,336,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,186,64,186,250,186,21,186,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":366,"old":357,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":369,"old":357,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,0,2,1,2],"matrix_rows":[407,321,258,324,8,336,32,256,384],"offset":0,"phase":0,"quadratic_rows":[215,151,215,0,215,0,21,151,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":370,"old":357,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,0,2,1,2],"matrix_rows":[407,257,258,260,72,336,96,256,384],"offset":0,"phase":0,"quadratic_rows":[151,151,151,64,215,64,56,151,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":363,"old":358,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,2,0,0],"matrix_rows":[68,33,2,100,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":371,"old":358,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,0],"matrix_rows":[100,33,2,68,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,0,32,21,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":372,"old":358,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":367,"old":359,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":369,"old":359,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":373,"old":359,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":364,"old":360,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":371,"old":360,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":374,"old":360,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[49,33,2,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,16,16,13,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":365,"old":361,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":372,"old":361,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,2,0,0],"matrix_rows":[100,1,2,68,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":374,"old":361,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":368,"old":362,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":370,"old":362,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":373,"old":362,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,0,1,2],"matrix_rows":[399,289,258,292,296,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[175,143,175,175,0,13,0,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":568,"old":363,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":569,"old":363,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,45,67,131,6,259,3,10,2],"offset":0,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]},"new":653,"old":363,"rank":4,"right":{"linear_Z4":[2,3,2,2,3,0,3,3,0],"matrix_rows":[415,469,458,346,73,474,68,64,96],"offset":466,"phase":1,"quadratic_rows":[2,215,10,212,218,0,218,218,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[16,40,69,129,264,4,1,10,2],"offset":0,"phase":0,"quadratic_rows":[4,10,5,2,0,0,0,0,0]},"new":655,"old":363,"rank":4,"right":{"linear_Z4":[2,3,0,3,3,3,1,3,0],"matrix_rows":[108,384,68,146,13,386,96,64,400],"offset":93,"phase":1,"quadratic_rows":[12,274,65,41,274,40,68,384,146]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":376,"old":364,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":382,"old":364,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":378,"old":365,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":380,"old":365,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,0,3,2],"matrix_rows":[431,257,258,260,264,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[175,175,175,175,0,175,0,175,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":508,"old":366,"rank":1,"right":{"linear_Z4":[3,3,1,2,1,0,3,3,2],"matrix_rows":[455,257,258,276,24,256,32,320,384],"offset":57,"phase":0,"quadratic_rows":[199,199,215,16,28,0,199,199,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":512,"old":366,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,33,2,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":568,"old":366,"rank":1,"right":{"linear_Z4":[1,3,3,2,3,0,1,3,2],"matrix_rows":[407,321,258,260,72,272,32,256,384],"offset":147,"phase":0,"quadratic_rows":[215,151,151,64,151,0,73,151,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[20,34,68,129,8,1,261,5,15],"offset":0,"phase":0,"quadratic_rows":[14,15,11,15,0,0,0,0,0]},"new":652,"old":366,"rank":4,"right":{"linear_Z4":[1,0,1,0,0,0,2,2,3],"matrix_rows":[328,2,333,272,169,256,164,32,192],"offset":34,"phase":0,"quadratic_rows":[485,256,493,132,256,5,133,77,279]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":376,"old":367,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,33,2,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,0,0,88,120,49,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":381,"old":367,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[40,1,2,20,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,16,120,28,104,40,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":377,"old":368,"rank":1,"right":{"linear_Z4":[1,3,3,3,2,1,0,3,2],"matrix_rows":[399,289,258,260,264,48,256,64,384],"offset":99,"phase":0,"quadratic_rows":[175,143,143,143,32,49,0,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":380,"old":368,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,2,84,24,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,0,85,16,28,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":378,"old":369,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,2,84,24,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,0,85,16,28,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":379,"old":369,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,2,0,0,0],"matrix_rows":[49,33,2,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":375,"old":370,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[40,1,2,20,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,16,120,28,104,40,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":382,"old":370,"rank":1,"right":{"linear_Z4":[0,1,1,2,2,0,0,1,2],"matrix_rows":[166,33,258,260,8,48,256,320,384],"offset":240,"phase":0,"quadratic_rows":[32,422,422,0,32,407,0,422,166]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":377,"old":371,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":379,"old":371,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":375,"old":372,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,0,3,2],"matrix_rows":[431,257,258,260,264,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[175,175,175,175,0,175,0,175,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":381,"old":372,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":465,"old":373,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":470,"old":373,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[2,1,66,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":569,"old":373,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[20,42,68,129,2,1,5,264,8],"offset":0,"phase":0,"quadratic_rows":[4,10,1,2,0,0,0,0,0]},"new":654,"old":373,"rank":4,"right":{"linear_Z4":[3,2,3,0,3,0,1,0,3],"matrix_rows":[72,258,77,402,105,274,100,32,256],"offset":5,"phase":2,"quadratic_rows":[37,384,45,68,144,5,72,18,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":462,"old":374,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":465,"old":374,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":507,"old":374,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":508,"old":374,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":375,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,3,0],"matrix_rows":[134,33,258,292,40,16,256,320,384],"offset":1,"phase":1,"quadratic_rows":[32,390,422,32,0,13,0,390,134]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,37,64,133,2,263,1,6],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":690,"old":375,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,2,0,1,2],"matrix_rows":[166,32,294,133,290,256,40,272,320],"offset":40,"phase":2,"quadratic_rows":[132,160,1,32,0,138,0,163,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,2,20,35,68,131,4,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":730,"old":375,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[489,170,196,320,64,328,80,352,384],"offset":9,"phase":0,"quadratic_rows":[168,168,128,3,0,3,0,135,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":376,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[49,33,2,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,16,16,13,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,64,129,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":691,"old":376,"rank":3,"right":{"linear_Z4":[1,0,3,2,1,2,0,2,3],"matrix_rows":[33,390,384,49,256,388,24,32,64],"offset":219,"phase":0,"quadratic_rows":[17,132,6,16,25,0,0,258,384]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,2,32,68,5,1,128,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":731,"old":376,"rank":3,"right":{"linear_Z4":[0,1,2,2,1,1,2,0,0],"matrix_rows":[33,2,80,64,6,24,96,128,256],"offset":100,"phase":3,"quadratic_rows":[96,6,2,16,56,113,33,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":377,"rank":1,"right":{"linear_Z4":[0,1,0,3,3,0,0,1,2],"matrix_rows":[394,1,258,20,280,256,288,320,384],"offset":240,"phase":2,"quadratic_rows":[0,138,16,154,28,0,0,138,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,18,38,4,65,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":698,"old":377,"rank":3,"right":{"linear_Z4":[2,0,2,0,1,0,0,3,2],"matrix_rows":[208,471,157,337,320,324,64,96,384],"offset":0,"phase":0,"quadratic_rows":[26,149,10,149,155,0,0,154,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,35,64,133,5,262,4,2],"offset":0,"phase":0,"quadratic_rows":[7,5,3,0,0,0,0,0,0]},"new":722,"old":377,"rank":3,"right":{"linear_Z4":[0,2,1,0,1,0,0,3,2],"matrix_rows":[274,292,438,21,38,288,152,32,320],"offset":403,"phase":3,"quadratic_rows":[20,128,389,144,25,384,0,430,164]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":378,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,18,33,68,5,2,4,128,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":699,"old":378,"rank":3,"right":{"linear_Z4":[2,1,1,0,1,2,2,0,0],"matrix_rows":[68,2,24,5,34,80,64,128,256],"offset":41,"phase":3,"quadratic_rows":[4,34,21,80,92,2,24,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,65,1,130,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":723,"old":378,"rank":3,"right":{"linear_Z4":[2,0,3,1,2,3,0,2,3],"matrix_rows":[28,418,384,5,256,16,24,416,64],"offset":58,"phase":2,"quadratic_rows":[4,160,13,12,0,34,0,258,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":379,"rank":1,"right":{"linear_Z4":[0,0,0,1,3,0,2,0,0],"matrix_rows":[8,1,2,20,88,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,16,88,28,0,8,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,18,37,2,65,1,4,128,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":714,"old":379,"rank":3,"right":{"linear_Z4":[2,1,0,2,3,1,3,0,0],"matrix_rows":[116,2,36,21,10,96,32,128,256],"offset":45,"phase":0,"quadratic_rows":[20,10,33,2,81,36,80,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":738,"old":379,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,0,0,2,3],"matrix_rows":[17,394,384,69,256,64,392,80,32],"offset":19,"phase":1,"quadratic_rows":[85,136,1,10,81,0,17,258,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":380,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,0,1,2],"matrix_rows":[399,289,258,292,296,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[175,143,175,175,0,13,0,143,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[13,17,37,66,130,4,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":715,"old":380,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[455,200,165,321,320,324,64,80,384],"offset":17,"phase":0,"quadratic_rows":[34,133,34,128,0,133,0,170,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,64,129,6,256,2,5],"offset":0,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]},"new":739,"old":380,"rank":3,"right":{"linear_Z4":[0,0,2,2,0,2,0,1,3],"matrix_rows":[260,160,288,5,6,256,168,272,64],"offset":224,"phase":1,"quadratic_rows":[4,4,3,160,0,264,0,136,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":381,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,2,0,0],"matrix_rows":[68,33,2,100,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[10,18,36,64,128,260,4,1,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":706,"old":381,"rank":3,"right":{"linear_Z4":[3,0,1,2,0,3,2,2,3],"matrix_rows":[384,387,100,385,256,68,40,16,64],"offset":338,"phase":2,"quadratic_rows":[3,129,36,32,0,44,0,258,384]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,130,4,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":746,"old":381,"rank":3,"right":{"linear_Z4":[2,3,2,2,0,1,3,1,2],"matrix_rows":[386,68,96,3,256,64,40,80,384],"offset":248,"phase":3,"quadratic_rows":[2,131,0,32,0,104,96,130,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":382,"rank":1,"right":{"linear_Z4":[3,1,0,0,2,0,0,1,2],"matrix_rows":[147,257,258,20,24,256,288,64,384],"offset":98,"phase":1,"quadratic_rows":[403,403,16,16,399,0,0,403,147]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,37,64,131,3,256,1,7],"offset":0,"phase":0,"quadratic_rows":[2,5,6,0,0,0,0,0,0]},"new":707,"old":382,"rank":3,"right":{"linear_Z4":[0,0,2,0,2,1,0,1,3],"matrix_rows":[180,272,36,149,18,288,24,32,64],"offset":1,"phase":1,"quadratic_rows":[148,16,289,16,267,420,0,161,308]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,39,71,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":747,"old":382,"rank":3,"right":{"linear_Z4":[2,0,0,3,3,0,2,0,2],"matrix_rows":[89,410,156,64,256,328,336,96,384],"offset":19,"phase":1,"quadratic_rows":[24,152,152,31,31,0,0,6,0]}},{"left":{"linear_Z4":[2,3,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,12,13,9,16,18],"offset":0,"phase":0,"quadratic_rows":[4,18,1,8,18,0,0,0,0]},"new":1,"old":383,"rank":5,"right":{"linear_Z4":[0,0,0,2,1,0,1,0,1],"matrix_rows":[81,2,84,8,384,48,256,96,112],"offset":239,"phase":1,"quadratic_rows":[96,256,48,112,92,13,89,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[20,34,68,129,261,5,1,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":415,"old":383,"rank":4,"right":{"linear_Z4":[1,0,2,2,0,2,2,0,1],"matrix_rows":[8,2,13,384,105,256,96,64,48],"offset":99,"phase":0,"quadratic_rows":[101,256,105,36,0,13,5,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,65,132,4,261,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":416,"old":383,"rank":4,"right":{"linear_Z4":[2,0,1,2,2,0,2,0,1],"matrix_rows":[5,2,8,384,80,256,84,16,96],"offset":54,"phase":0,"quadratic_rows":[84,256,85,16,13,0,5,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,33,66,132,262,6,4,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":419,"old":383,"rank":4,"right":{"linear_Z4":[1,0,2,2,0,2,2,0,1],"matrix_rows":[2,5,8,384,97,256,96,64,48],"offset":101,"phase":0,"quadratic_rows":[101,256,97,64,0,5,13,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,65,132,4,261,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":420,"old":383,"rank":4,"right":{"linear_Z4":[2,0,1,2,2,0,2,0,1],"matrix_rows":[13,2,8,384,80,256,92,16,96],"offset":54,"phase":0,"quadratic_rows":[92,256,85,65,5,0,13,256,386]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":392,"old":384,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":393,"old":384,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":394,"old":384,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,2,0],"matrix_rows":[130,1,146,20,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":395,"old":385,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,2],"matrix_rows":[257,289,2,36,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":396,"old":385,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,2],"matrix_rows":[257,289,34,4,8,48,256,64,128],"offset":0,"phase":0,"quadratic_rows":[33,32,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":397,"old":385,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":395,"old":386,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":398,"old":386,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":399,"old":386,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":392,"old":387,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,2,0],"matrix_rows":[159,161,130,164,168,144,128,64,256],"offset":0,"phase":0,"quadratic_rows":[63,31,63,63,31,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":400,"old":387,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,1,0,2,0],"matrix_rows":[175,129,146,148,152,128,160,64,256],"offset":0,"phase":0,"quadratic_rows":[47,63,63,63,14,47,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":401,"old":387,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,2,0],"matrix_rows":[159,161,162,132,136,176,128,64,256],"offset":0,"phase":0,"quadratic_rows":[63,63,31,31,63,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":396,"old":388,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":398,"old":388,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,2],"matrix_rows":[258,1,274,20,24,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":402,"old":388,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":393,"old":389,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,2,0],"matrix_rows":[129,161,34,4,8,48,128,64,256],"offset":0,"phase":0,"quadratic_rows":[33,32,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":400,"old":389,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":403,"old":389,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,2,0],"matrix_rows":[129,161,2,36,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":394,"old":390,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":401,"old":390,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":403,"old":390,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":397,"old":391,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,1,0,0,2],"matrix_rows":[303,257,274,276,280,256,288,64,128],"offset":0,"phase":0,"quadratic_rows":[47,63,63,63,14,47,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":399,"old":391,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,0,2],"matrix_rows":[287,289,290,260,264,304,256,64,128],"offset":0,"phase":0,"quadratic_rows":[63,63,31,31,63,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":402,"old":391,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,0,2],"matrix_rows":[287,289,258,292,296,272,256,64,128],"offset":0,"phase":0,"quadratic_rows":[63,31,63,63,31,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":570,"old":392,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":571,"old":392,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[17,34,64,129,4,256,8,6,1],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"new":657,"old":392,"rank":4,"right":{"linear_Z4":[3,0,0,3,0,0,2,1,2],"matrix_rows":[265,2,144,64,257,128,4,264,32],"offset":43,"phase":2,"quadratic_rows":[9,128,0,9,128,0,0,146,0]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[20,40,69,132,266,5,1,10,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":659,"old":392,"rank":4,"right":{"linear_Z4":[3,1,1,3,3,0,2,2,0],"matrix_rows":[68,272,9,386,101,402,32,104,128],"offset":5,"phase":2,"quadratic_rows":[109,18,5,105,18,9,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":405,"old":393,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":411,"old":393,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":407,"old":394,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":409,"old":394,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,0,2],"matrix_rows":[289,257,2,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":511,"old":395,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":513,"old":395,"rank":1,"right":{"linear_Z4":[3,1,3,0,0,0,0,0,2],"matrix_rows":[15,257,266,268,256,16,288,64,128],"offset":90,"phase":0,"quadratic_rows":[271,263,263,257,0,0,0,0,15]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":570,"old":395,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[16,40,69,1,138,260,10,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":656,"old":395,"rank":4,"right":{"linear_Z4":[2,3,0,3,2,0,2,0,1],"matrix_rows":[268,144,260,210,13,194,256,80,288],"offset":95,"phase":2,"quadratic_rows":[12,18,257,265,2,0,0,0,268]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":405,"old":396,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":410,"old":396,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":406,"old":397,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,2,0],"matrix_rows":[161,129,2,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":409,"old":397,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":407,"old":398,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":408,"old":398,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,2,0],"matrix_rows":[161,129,2,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":404,"old":399,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":411,"old":399,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":406,"old":400,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,0,2],"matrix_rows":[289,257,2,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":408,"old":400,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":404,"old":401,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":410,"old":401,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":486,"old":402,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":487,"old":402,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[2,1,66,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":571,"old":402,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[16,34,69,1,128,4,8,2,256],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":658,"old":402,"rank":4,"right":{"linear_Z4":[2,1,0,3,0,3,2,2,0],"matrix_rows":[44,2,4,64,13,130,32,16,256],"offset":93,"phase":1,"quadratic_rows":[12,130,1,41,0,40,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":485,"old":403,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":490,"old":403,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":507,"old":403,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":511,"old":403,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":412,"old":404,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,16,14,3,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,4,65,128,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":589,"old":404,"rank":3,"right":{"linear_Z4":[0,3,0,0,3,0,2,0,2],"matrix_rows":[82,260,8,1,66,256,80,32,384],"offset":35,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,64,1,2,4,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":637,"old":404,"rank":3,"right":{"linear_Z4":[2,0,0,0,3,3,2,0,0],"matrix_rows":[50,2,64,19,32,4,8,128,256],"offset":31,"phase":1,"quadratic_rows":[18,1,0,0,49,48,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":412,"old":405,"rank":1,"right":{"linear_Z4":[1,1,0,0,2,0,0,0,2],"matrix_rows":[3,257,274,20,24,256,288,64,384],"offset":0,"phase":0,"quadratic_rows":[259,275,16,16,14,0,0,0,3]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,36,6,67,131,2,259,3],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":591,"old":405,"rank":3,"right":{"linear_Z4":[2,2,1,1,0,0,2,0,2],"matrix_rows":[3,75,84,257,274,92,256,288,384],"offset":218,"phase":1,"quadratic_rows":[328,344,12,31,10,0,3,0,3]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,35,3,66,130,4,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":639,"old":405,"rank":3,"right":{"linear_Z4":[1,1,0,2,2,0,2,0,2],"matrix_rows":[23,20,64,265,282,12,256,288,384],"offset":6,"phase":2,"quadratic_rows":[287,271,11,23,9,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":412,"old":406,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,2,0,0,0],"matrix_rows":[13,289,2,292,296,16,256,64,384],"offset":1,"phase":1,"quadratic_rows":[301,0,301,301,0,13,0,0,13]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,2,64,4,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":605,"old":406,"rank":3,"right":{"linear_Z4":[0,2,0,3,3,0,2,0,0],"matrix_rows":[28,4,64,1,14,16,32,128,256],"offset":55,"phase":1,"quadratic_rows":[0,12,2,26,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,4,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":621,"old":406,"rank":3,"right":{"linear_Z4":[0,0,3,3,0,0,2,0,2],"matrix_rows":[257,76,32,256,2,68,72,16,384],"offset":11,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":412,"old":407,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[11,17,33,66,130,3,4,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":607,"old":407,"rank":3,"right":{"linear_Z4":[0,1,1,2,0,2,2,0,2],"matrix_rows":[15,9,64,33,290,300,256,272,384],"offset":6,"phase":2,"quadratic_rows":[38,303,295,34,0,15,0,0,6]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,19,35,67,131,5,1,259,3],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":623,"old":407,"rank":3,"right":{"linear_Z4":[1,2,2,0,0,1,2,0,2],"matrix_rows":[102,6,73,105,258,268,256,272,384],"offset":241,"phase":1,"quadratic_rows":[33,352,360,36,0,47,6,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":408,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,2,0],"matrix_rows":[129,161,2,36,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,2,68,129,1,256,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":613,"old":408,"rank":3,"right":{"linear_Z4":[3,2,0,3,0,3,2,0,1],"matrix_rows":[97,268,260,65,14,256,272,96,128],"offset":55,"phase":1,"quadratic_rows":[33,12,258,266,0,33,0,0,268]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,32,64,128,2,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":629,"old":408,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,1,0],"matrix_rows":[1,160,64,128,2,4,8,16,256],"offset":13,"phase":1,"quadratic_rows":[128,0,0,0,0,128,0,161,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":409,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,2],"matrix_rows":[257,289,2,36,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,2,68,129,1,4,256],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":615,"old":409,"rank":3,"right":{"linear_Z4":[3,2,0,3,0,3,2,1,0],"matrix_rows":[97,140,132,65,14,128,144,96,256],"offset":55,"phase":1,"quadratic_rows":[33,12,130,138,0,33,0,140,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,32,64,128,2,4,256,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":631,"old":409,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,1],"matrix_rows":[1,288,64,256,2,4,8,16,128],"offset":13,"phase":1,"quadratic_rows":[256,0,0,0,0,256,0,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":410,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,0,2],"matrix_rows":[271,257,274,276,280,256,288,64,128],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,33,2,64,128,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":597,"old":410,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,1,0],"matrix_rows":[4,136,64,1,2,128,16,32,256],"offset":37,"phase":1,"quadratic_rows":[0,0,128,128,0,0,0,140,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,36,68,1,130,4,256,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":645,"old":410,"rank":3,"right":{"linear_Z4":[2,0,3,3,3,0,2,0,1],"matrix_rows":[274,258,76,19,256,68,72,288,128],"offset":31,"phase":1,"quadratic_rows":[18,257,12,12,273,0,0,0,274]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":411,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,2,0],"matrix_rows":[143,129,146,148,152,128,160,64,256],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,33,2,64,128,4,256,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":599,"old":411,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,1],"matrix_rows":[4,264,64,1,2,256,16,32,128],"offset":37,"phase":1,"quadratic_rows":[0,0,256,256,0,0,0,0,268]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,36,68,1,130,4,2,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":647,"old":411,"rank":3,"right":{"linear_Z4":[2,0,3,3,3,0,2,1,0],"matrix_rows":[146,130,76,19,128,68,72,160,256],"offset":31,"phase":1,"quadratic_rows":[18,129,12,12,145,0,0,146,0]}},{"left":{"linear_Z4":[3,3,2,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,14,13,16,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,3,3,0,0,0,0,0]},"new":1,"old":412,"rank":5,"right":{"linear_Z4":[0,0,2,2,0,0,2,0,0],"matrix_rows":[257,258,308,56,64,288,272,256,384],"offset":251,"phase":1,"quadratic_rows":[32,16,48,48,14,13,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,46,68,8,140,13,2,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":417,"old":412,"rank":4,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,1],"matrix_rows":[257,258,358,106,288,322,256,272,384],"offset":85,"phase":0,"quadratic_rows":[32,334,98,98,0,13,14,0,258]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[29,35,69,9,15,140,1,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":418,"old":412,"rank":4,"right":{"linear_Z4":[1,3,1,1,0,0,2,0,1],"matrix_rows":[257,258,347,87,335,272,256,288,384],"offset":102,"phase":0,"quadratic_rows":[323,83,28,28,14,0,3,0,257]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[29,34,68,8,14,140,1,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":419,"old":412,"rank":4,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,1],"matrix_rows":[257,258,341,89,321,272,256,288,384],"offset":102,"phase":0,"quadratic_rows":[333,16,81,81,14,0,13,0,257]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,72,140,14,13,4,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":420,"old":412,"rank":4,"right":{"linear_Z4":[0,0,1,3,2,2,0,0,1],"matrix_rows":[257,258,376,116,288,272,332,256,384],"offset":51,"phase":0,"quadratic_rows":[32,16,316,316,14,13,0,0,268]}},{"left":{"linear_Z4":[2,3,2,3,2,2,2,2,0],"matrix_rows":[1,264,4,10,16,2,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":0,"old":413,"rank":8,"right":{"linear_Z4":[2,3,2,1,2,0,2,2,2],"matrix_rows":[1,40,4,34,16,64,128,256,42],"offset":8,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":413,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,4,40,16,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,2,2,2,2,2,0],"matrix_rows":[258,3,1,4,8,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":0,"old":414,"rank":8,"right":{"linear_Z4":[3,1,0,2,2,2,2,2,2],"matrix_rows":[6,5,8,16,32,64,128,256,7],"offset":2,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,1,8,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":414,"rank":1,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[5,4,6,8,16,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,2,2,2,2,0],"matrix_rows":[264,2,4,9,1,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"new":0,"old":415,"rank":8,"right":{"linear_Z4":[3,2,2,1,0,2,2,2,2],"matrix_rows":[24,2,4,17,32,64,128,256,25],"offset":8,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":415,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[17,16,2,4,24,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,2,3,2,2,2,0],"matrix_rows":[1,2,272,8,20,4,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"new":0,"old":416,"rank":8,"right":{"linear_Z4":[2,2,3,2,1,0,2,2,2],"matrix_rows":[1,2,48,8,36,64,128,256,52],"offset":16,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":416,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[36,1,2,32,8,48,64,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,3,2,2,2,0],"matrix_rows":[1,272,4,8,18,32,2,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"new":0,"old":417,"rank":8,"right":{"linear_Z4":[2,3,2,2,1,2,0,2,2],"matrix_rows":[1,80,4,8,66,32,128,256,82],"offset":16,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":417,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,8,80,32,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,3,3,2,2,0],"matrix_rows":[318,3,5,9,17,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"new":0,"old":418,"rank":8,"right":{"linear_Z4":[3,1,1,1,1,1,0,2,2],"matrix_rows":[126,125,123,119,111,95,128,256,127],"offset":62,"phase":1,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":418,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,66,68,72,80,96,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,2,3,2,2,0],"matrix_rows":[288,2,4,8,16,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"new":0,"old":419,"rank":8,"right":{"linear_Z4":[3,2,2,2,2,1,0,2,2],"matrix_rows":[96,2,4,8,16,65,128,256,97],"offset":32,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":419,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,8,16,96,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,2,2,2,2,0],"matrix_rows":[1,2,264,12,16,32,4,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":0,"old":420,"rank":8,"right":{"linear_Z4":[2,2,3,1,2,2,0,2,2],"matrix_rows":[1,2,72,68,16,32,128,256,76],"offset":8,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":420,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,72,16,32,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":15,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,41,10,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,8,37,11,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":18,"old":421,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":25,"old":421,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,3,3,2],"matrix_rows":[478,1,258,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,222,222,222,222,0,222,222,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":26,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":44,"old":421,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":47,"old":421,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":54,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":55,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":73,"old":421,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":76,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,33,10,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,8,45,14,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":83,"old":421,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":84,"old":421,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,0,3,3,2],"matrix_rows":[475,257,258,4,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[219,219,0,219,219,0,219,219,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":334,"old":421,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":337,"old":421,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":344,"old":421,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":345,"old":421,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":363,"old":421,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":366,"old":421,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,0,3,3,2],"matrix_rows":[471,257,258,260,8,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[215,215,215,0,215,0,215,215,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":373,"old":421,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":374,"old":421,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":392,"old":421,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":395,"old":421,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":402,"old":421,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":403,"old":421,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,21,38,65,135,1,2,263,7],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":425,"old":421,"rank":3,"right":{"linear_Z4":[2,2,2,1,3,0,1,3,3],"matrix_rows":[218,477,223,297,322,292,32,272,384],"offset":0,"phase":0,"quadratic_rows":[42,325,34,217,216,5,218,216,258]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,21,35,68,2,4,135,263,7],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":426,"old":421,"rank":3,"right":{"linear_Z4":[2,2,2,1,1,0,3,3,3],"matrix_rows":[223,477,218,289,274,300,32,320,384],"offset":0,"phase":0,"quadratic_rows":[34,277,42,220,218,5,216,216,258]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,20,33,64,129,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":427,"old":421,"rank":3,"right":{"linear_Z4":[1,1,1,0,1,0,2,3,0],"matrix_rows":[21,384,258,65,386,68,8,80,32],"offset":0,"phase":0,"quadratic_rows":[85,130,85,0,85,0,21,130,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,23,33,70,131,1,4,263,7],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":433,"old":421,"rank":3,"right":{"linear_Z4":[2,3,1,2,2,0,1,3,3],"matrix_rows":[214,223,463,293,258,32,296,336,384],"offset":0,"phase":0,"quadratic_rows":[52,198,199,48,329,9,214,198,272]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,65,132,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":434,"old":421,"rank":3,"right":{"linear_Z4":[1,1,0,1,1,0,2,3,0],"matrix_rows":[11,384,272,65,66,4,72,400,32],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,144,0,11,144,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,65,1,128,260,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":435,"old":421,"rank":3,"right":{"linear_Z4":[0,1,1,1,2,0,1,3,0],"matrix_rows":[14,384,320,1,18,20,24,32,448],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,192,192,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":528,"old":421,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,0,3,3,2],"matrix_rows":[5,448,41,10,36,32,16,320,384],"offset":3,"phase":2,"quadratic_rows":[45,8,37,11,0,5,192,192,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,65,3,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":529,"old":421,"rank":2,"right":{"linear_Z4":[3,0,3,0,1,0,1,1,2],"matrix_rows":[216,5,297,10,292,32,272,320,384],"offset":2,"phase":1,"quadratic_rows":[301,8,293,467,472,5,472,472,221]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,66,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":530,"old":421,"rank":2,"right":{"linear_Z4":[0,0,0,0,3,0,3,3,0],"matrix_rows":[384,208,1,2,4,8,400,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,336,0,336,384,208]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,66,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":531,"old":421,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,3,2,2],"matrix_rows":[261,208,257,2,260,8,144,32,192],"offset":3,"phase":2,"quadratic_rows":[5,0,5,0,80,0,80,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":532,"old":421,"rank":2,"right":{"linear_Z4":[3,0,3,3,3,0,0,3,2],"matrix_rows":[5,400,33,10,44,32,272,64,384],"offset":3,"phase":2,"quadratic_rows":[37,8,45,14,144,5,0,144,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,66,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":533,"old":421,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,2,3,2],"matrix_rows":[69,400,65,2,68,8,272,32,384],"offset":3,"phase":2,"quadratic_rows":[5,0,5,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":566,"old":421,"rank":2,"right":{"linear_Z4":[3,0,0,3,0,0,0,3,0],"matrix_rows":[384,137,385,2,4,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[265,0,0,265,0,0,0,384,137]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,64,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":567,"old":421,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[265,194,257,130,4,264,16,32,192],"offset":3,"phase":2,"quadratic_rows":[9,66,0,9,0,0,66,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,35,66,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":568,"old":421,"rank":2,"right":{"linear_Z4":[3,1,1,0,1,0,3,1,1],"matrix_rows":[329,222,65,258,260,328,272,32,384],"offset":1,"phase":1,"quadratic_rows":[265,478,478,215,478,0,222,478,407]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,64,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":569,"old":421,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,2,3,2],"matrix_rows":[73,386,65,258,4,72,16,32,384],"offset":3,"phase":2,"quadratic_rows":[9,130,0,9,0,0,0,130,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,34,65,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":570,"old":421,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[146,268,1,130,260,264,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,18,12,12,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":571,"old":421,"rank":2,"right":{"linear_Z4":[0,3,0,0,3,0,0,3,0],"matrix_rows":[384,146,1,386,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,274,0,0,274,0,0,384,146]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":27,"old":422,"rank":2,"right":{"linear_Z4":[1,1,0,2,1,0,2,2,2],"matrix_rows":[216,219,305,290,20,264,32,320,384],"offset":0,"phase":0,"quadratic_rows":[491,507,16,259,278,3,259,259,219]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,1,32,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":28,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,2,0,0,3,3,2],"matrix_rows":[11,448,9,10,4,16,32,320,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":33,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,0,3,3,2],"matrix_rows":[3,448,49,34,20,8,32,320,384],"offset":3,"phase":2,"quadratic_rows":[51,35,16,0,21,3,192,192,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,3,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":34,"old":422,"rank":2,"right":{"linear_Z4":[3,2,3,2,3,0,3,3,0],"matrix_rows":[470,267,265,10,260,272,32,320,384],"offset":3,"phase":2,"quadratic_rows":[3,213,214,0,214,0,214,214,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":102,"old":422,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":105,"old":422,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":112,"old":422,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,3,3,2],"matrix_rows":[463,257,258,260,264,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[207,207,207,207,0,0,207,207,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":113,"old":422,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":131,"old":422,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":134,"old":422,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":141,"old":422,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":142,"old":422,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":276,"old":422,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,0,3,3,2],"matrix_rows":[477,257,2,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[221,0,221,221,221,0,221,221,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":279,"old":422,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":286,"old":422,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":287,"old":422,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":305,"old":422,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":308,"old":422,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":315,"old":422,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":316,"old":422,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":404,"old":422,"rank":2,"right":{"linear_Z4":[0,0,3,3,0,0,0,3,0],"matrix_rows":[384,140,1,2,388,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,268,268,0,0,0,384,140]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":405,"old":422,"rank":2,"right":{"linear_Z4":[0,3,0,0,3,0,0,3,0],"matrix_rows":[384,146,1,386,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,274,0,0,274,0,0,384,146]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,34,65,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":410,"old":422,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[274,140,1,258,132,136,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,18,12,12,18,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,34,65,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":411,"old":422,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[146,268,1,130,260,264,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,18,12,12,18,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,19,37,65,134,3,4,261,5],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":424,"old":422,"rank":3,"right":{"linear_Z4":[0,0,2,1,0,0,0,2,3],"matrix_rows":[206,17,471,291,32,260,328,304,384],"offset":2,"phase":1,"quadratic_rows":[228,24,25,398,230,17,17,25,264]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,68,129,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":428,"old":422,"rank":3,"right":{"linear_Z4":[1,0,1,1,1,0,2,3,0],"matrix_rows":[21,384,264,65,2,68,392,80,32],"offset":0,"phase":0,"quadratic_rows":[85,0,85,136,85,0,21,136,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,22,35,71,129,1,4,263,7],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":432,"old":422,"rank":3,"right":{"linear_Z4":[2,2,2,3,1,0,1,3,3],"matrix_rows":[220,223,475,305,290,324,264,32,384],"offset":0,"phase":0,"quadratic_rows":[52,36,323,216,217,3,220,216,260]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,34,72,131,257,1,3,12,4],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":437,"old":422,"rank":4,"right":{"linear_Z4":[1,1,1,2,3,0,2,3,0],"matrix_rows":[8,11,384,260,113,98,388,88,32],"offset":0,"phase":0,"quadratic_rows":[123,107,132,83,25,3,11,132,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,67,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":534,"old":422,"rank":2,"right":{"linear_Z4":[3,1,1,1,0,0,3,1,1],"matrix_rows":[337,222,65,258,260,264,336,32,384],"offset":1,"phase":1,"quadratic_rows":[273,478,478,478,207,0,222,478,399]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,32,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":535,"old":422,"rank":2,"right":{"linear_Z4":[3,3,3,0,3,0,0,3,2],"matrix_rows":[3,388,33,50,260,24,32,64,384],"offset":3,"phase":2,"quadratic_rows":[35,51,132,16,26,3,0,132,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,65,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":536,"old":422,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,2,3,2],"matrix_rows":[81,388,65,2,260,8,80,32,384],"offset":3,"phase":2,"quadratic_rows":[17,0,132,0,17,0,0,132,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,35,66,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":537,"old":422,"rank":2,"right":{"linear_Z4":[3,3,2,2,3,0,2,2,1],"matrix_rows":[463,460,289,306,260,280,32,320,384],"offset":3,"phase":2,"quadratic_rows":[239,255,259,275,26,3,259,259,460]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":538,"old":422,"rank":2,"right":{"linear_Z4":[3,0,0,0,3,0,0,3,0],"matrix_rows":[384,145,385,2,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[273,0,0,0,273,0,0,384,145]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":539,"old":422,"rank":2,"right":{"linear_Z4":[0,0,3,0,0,0,3,3,0],"matrix_rows":[384,196,1,2,388,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,324,0,0,0,324,384,196]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":540,"old":422,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,3,2,2],"matrix_rows":[273,196,257,2,132,8,272,32,192],"offset":3,"phase":2,"quadratic_rows":[17,0,68,0,17,0,68,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,65,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":541,"old":422,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,3,2,2],"matrix_rows":[145,324,129,2,260,8,144,32,320],"offset":3,"phase":2,"quadratic_rows":[17,0,68,0,17,0,68,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":558,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,3,3,0,0,3,2],"matrix_rows":[3,392,33,50,20,264,32,64,384],"offset":3,"phase":2,"quadratic_rows":[35,51,16,136,22,3,0,136,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,66,128,3,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":559,"old":422,"rank":2,"right":{"linear_Z4":[2,3,3,3,3,0,2,3,0],"matrix_rows":[323,413,65,322,260,264,272,32,384],"offset":3,"phase":2,"quadratic_rows":[158,3,157,157,157,0,0,157,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,64,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":560,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,2,3,2],"matrix_rows":[67,392,65,66,4,264,16,32,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,35,66,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":561,"old":422,"rank":2,"right":{"linear_Z4":[1,1,0,2,1,0,2,2,2],"matrix_rows":[219,216,289,306,20,264,32,320,384],"offset":0,"phase":0,"quadratic_rows":[507,491,16,259,277,3,259,259,219]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":562,"old":422,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,0,3,3,0],"matrix_rows":[384,200,1,2,4,392,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,328,0,0,328,384,200]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":563,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,3,0],"matrix_rows":[384,131,385,386,4,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[259,259,0,0,0,0,0,384,131]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,64,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":564,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[259,200,257,258,4,136,16,32,192],"offset":3,"phase":2,"quadratic_rows":[3,3,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,64,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":565,"old":422,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[131,328,129,130,4,264,16,32,320],"offset":3,"phase":2,"quadratic_rows":[3,3,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":29,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,2,3,3,2],"matrix_rows":[38,448,1,34,36,8,16,320,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,35,3,66,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":30,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,1,1,1,2],"matrix_rows":[6,232,9,282,276,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[8,286,278,483,6,488,488,488,238]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,64,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":31,"old":423,"rank":2,"right":{"linear_Z4":[0,1,3,0,0,0,0,0,1],"matrix_rows":[235,461,257,290,36,264,16,320,384],"offset":2,"phase":1,"quadratic_rows":[38,459,493,38,0,461,38,38,294]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":32,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,3,0,0,3,3,2],"matrix_rows":[6,448,9,26,20,16,32,320,384],"offset":3,"phase":2,"quadratic_rows":[8,30,22,11,6,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":160,"old":423,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,3,3,3,2],"matrix_rows":[487,257,258,260,8,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[231,231,231,0,0,231,231,231,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":163,"old":423,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":170,"old":423,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":171,"old":423,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":189,"old":423,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":192,"old":423,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":199,"old":423,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":200,"old":423,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":218,"old":423,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":221,"old":423,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":228,"old":423,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,3,3,3,2],"matrix_rows":[491,257,258,4,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[235,235,0,235,0,235,235,235,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":229,"old":423,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":247,"old":423,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":250,"old":423,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":257,"old":423,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":258,"old":423,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":406,"old":423,"rank":2,"right":{"linear_Z4":[3,0,0,0,0,3,0,3,0],"matrix_rows":[384,161,385,2,4,8,16,416,64],"offset":2,"phase":1,"quadratic_rows":[289,0,0,0,0,289,0,384,161]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":407,"old":423,"rank":2,"right":{"linear_Z4":[0,0,3,3,0,0,0,3,0],"matrix_rows":[384,140,1,2,388,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,268,268,0,0,0,384,140]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,129,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":408,"old":423,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[161,268,129,2,260,264,16,160,64],"offset":3,"phase":2,"quadratic_rows":[33,0,12,12,0,33,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,129,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":409,"old":423,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[289,140,257,2,132,136,16,288,64],"offset":3,"phase":2,"quadratic_rows":[33,0,12,12,0,33,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,21,34,69,2,131,4,263,7],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":429,"old":423,"rank":3,"right":{"linear_Z4":[3,2,1,2,0,2,1,3,3],"matrix_rows":[239,229,463,257,278,16,280,352,384],"offset":0,"phase":0,"quadratic_rows":[197,52,199,48,10,330,229,197,288]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,21,37,66,2,135,1,263,7],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":430,"old":423,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,3,1,3,3],"matrix_rows":[494,233,239,321,282,276,16,288,384],"offset":0,"phase":0,"quadratic_rows":[326,25,17,234,6,232,233,232,257]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,18,34,64,128,258,2,5,1],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":431,"old":423,"rank":3,"right":{"linear_Z4":[1,1,1,0,0,1,2,3,0],"matrix_rows":[384,38,257,385,66,68,8,16,96],"offset":0,"phase":0,"quadratic_rows":[129,102,102,0,0,102,38,129,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,130,3,264,1,12,4],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":436,"old":423,"rank":4,"right":{"linear_Z4":[1,3,3,3,0,1,2,3,0],"matrix_rows":[1,10,384,288,69,86,16,88,416],"offset":2,"phase":1,"quadratic_rows":[69,94,7,90,10,160,11,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,2,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":542,"old":423,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,2,0,3,2],"matrix_rows":[385,44,257,2,36,40,16,64,384],"offset":3,"phase":2,"quadratic_rows":[129,0,12,12,0,0,0,129,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,35,64,129,2,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":543,"old":423,"rank":2,"right":{"linear_Z4":[1,3,1,0,0,1,3,1,1],"matrix_rows":[237,330,257,66,260,328,16,288,384],"offset":2,"phase":1,"quadratic_rows":[493,266,493,231,0,493,237,493,423]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,34,64,128,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":544,"old":423,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,2,3,2],"matrix_rows":[385,74,257,66,4,72,16,32,384],"offset":3,"phase":2,"quadratic_rows":[129,10,0,10,0,0,0,129,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,35,64,2,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":545,"old":423,"rank":2,"right":{"linear_Z4":[1,1,3,0,0,3,1,1,1],"matrix_rows":[235,300,257,258,36,296,16,320,384],"offset":2,"phase":1,"quadratic_rows":[491,491,268,231,0,235,491,491,455]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":546,"old":423,"rank":2,"right":{"linear_Z4":[3,0,0,0,0,0,3,3,0],"matrix_rows":[384,193,385,2,4,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[321,0,0,0,0,0,321,384,193]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":547,"old":423,"rank":2,"right":{"linear_Z4":[0,3,0,3,0,0,0,3,0],"matrix_rows":[384,138,1,386,4,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,266,0,266,0,0,0,384,138]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,34,64,128,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":548,"old":423,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[193,266,129,258,4,264,16,32,192],"offset":3,"phase":2,"quadratic_rows":[65,10,0,10,0,0,65,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,34,64,128,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":549,"old":423,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[321,138,257,130,4,136,16,32,320],"offset":3,"phase":2,"quadratic_rows":[65,10,0,10,0,0,65,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,33,64,129,2,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":550,"old":423,"rank":2,"right":{"linear_Z4":[1,3,0,1,0,1,3,1,1],"matrix_rows":[237,326,257,66,324,264,16,288,384],"offset":2,"phase":1,"quadratic_rows":[493,262,235,493,0,493,237,493,427]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":551,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,3,0,3,0,3,2],"matrix_rows":[6,416,9,18,28,16,288,64,384],"offset":3,"phase":2,"quadratic_rows":[8,22,30,13,6,160,0,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":552,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,3,2,3,2],"matrix_rows":[70,416,1,66,68,8,16,288,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,33,1,66,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":553,"old":423,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,1,1,1,2],"matrix_rows":[6,238,9,274,284,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[8,504,496,483,6,494,494,494,238]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":554,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,0,0,3,0],"matrix_rows":[384,134,1,386,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,262,262,0,0,0,0,384,134]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,64,130,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":555,"old":423,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,3,3,3,0],"matrix_rows":[384,224,1,2,4,8,16,416,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,0,352,352,384,224]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,130,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":556,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,3,3,2,2],"matrix_rows":[262,224,1,258,260,8,16,160,192],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,130,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":557,"old":423,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,3,3,2,2],"matrix_rows":[134,352,1,130,132,8,16,288,320],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,35,67,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":740,"old":424,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,1],"matrix_rows":[281,28,129,2,256,264,272,32,64],"offset":18,"phase":0,"quadratic_rows":[409,0,280,5,5,0,0,1,261]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,34,66,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":741,"old":424,"rank":2,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,2],"matrix_rows":[261,153,257,2,256,136,144,32,64],"offset":17,"phase":0,"quadratic_rows":[156,0,1,25,25,0,0,1,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,35,66,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":742,"old":424,"rank":2,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[429,153,257,2,288,264,32,64,384],"offset":64,"phase":3,"quadratic_rows":[52,0,137,52,169,153,0,52,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,67,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":743,"old":424,"rank":2,"right":{"linear_Z4":[2,0,0,1,0,0,0,0,1],"matrix_rows":[408,212,9,2,320,64,272,32,384],"offset":37,"phase":3,"quadratic_rows":[8,0,400,473,76,0,408,76,332]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,33,67,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":744,"old":424,"rank":2,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,2],"matrix_rows":[153,276,129,2,256,136,272,32,64],"offset":18,"phase":0,"quadratic_rows":[25,0,16,25,141,0,0,16,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,35,66,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":745,"old":424,"rank":2,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,1],"matrix_rows":[13,281,257,2,256,264,144,32,64],"offset":17,"phase":0,"quadratic_rows":[20,0,265,20,409,0,0,16,276]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,32,66,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":746,"old":424,"rank":2,"right":{"linear_Z4":[0,0,0,2,1,0,0,0,1],"matrix_rows":[165,401,257,2,288,24,32,64,384],"offset":98,"phase":3,"quadratic_rows":[52,0,385,16,441,401,0,52,308]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,2,19,35,64,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":747,"old":424,"rank":2,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[153,156,256,258,264,272,32,64,384],"offset":4,"phase":3,"quadratic_rows":[408,0,152,261,261,0,0,261,153]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,32,66,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":748,"old":425,"rank":2,"right":{"linear_Z4":[2,1,0,0,0,0,0,0,1],"matrix_rows":[390,212,3,64,260,8,320,32,384],"offset":13,"phase":3,"quadratic_rows":[2,455,82,0,388,0,390,82,338]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,66,1,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":749,"old":425,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,435,257,258,32,8,288,64,384],"offset":16,"phase":3,"quadratic_rows":[52,52,163,0,131,135,0,52,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,19,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":750,"old":425,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,1],"matrix_rows":[263,22,129,258,260,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[391,17,17,0,262,0,0,1,273]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,17,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":751,"old":425,"rank":2,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,2],"matrix_rows":[135,273,257,130,132,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[150,7,7,0,1,0,0,1,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,19,33,2,64,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":752,"old":425,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,150,256,258,260,264,32,64,384],"offset":4,"phase":3,"quadratic_rows":[390,273,273,0,134,0,0,273,135]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,32,66,1,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":753,"old":425,"rank":2,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,1],"matrix_rows":[389,177,257,6,32,8,288,64,384],"offset":25,"phase":3,"quadratic_rows":[52,4,423,0,385,389,0,52,308]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":754,"old":425,"rank":2,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[135,276,129,130,260,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[7,7,147,0,4,0,0,4,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":755,"old":425,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,1],"matrix_rows":[263,19,257,258,132,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[20,20,391,0,259,0,0,4,276]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":764,"old":426,"rank":1,"right":{"linear_Z4":[1,1,3,0,0,0,0,3,0],"matrix_rows":[199,321,322,260,8,16,32,256,384],"offset":135,"phase":0,"quadratic_rows":[391,391,455,0,0,0,388,455,199]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":765,"old":426,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,3,3,2],"matrix_rows":[455,257,258,256,264,16,32,320,384],"offset":9,"phase":0,"quadratic_rows":[199,199,195,0,0,0,199,199,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":766,"old":426,"rank":1,"right":{"linear_Z4":[3,1,1,0,0,0,0,3,0],"matrix_rows":[199,257,322,324,8,16,32,256,384],"offset":141,"phase":0,"quadratic_rows":[455,391,391,0,0,0,385,455,199]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":767,"old":426,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,3,3,2],"matrix_rows":[455,256,258,260,8,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[198,199,199,0,0,0,199,199,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":768,"old":426,"rank":1,"right":{"linear_Z4":[1,3,3,0,0,0,1,0,0],"matrix_rows":[199,385,258,260,8,16,32,448,256],"offset":387,"phase":0,"quadratic_rows":[327,455,455,0,0,0,327,262,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":769,"old":426,"rank":1,"right":{"linear_Z4":[3,1,1,0,0,0,3,0,0],"matrix_rows":[199,257,386,388,8,16,32,320,256],"offset":269,"phase":0,"quadratic_rows":[455,327,327,0,0,0,455,321,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":770,"old":426,"rank":1,"right":{"linear_Z4":[3,3,1,0,0,0,1,0,0],"matrix_rows":[199,257,258,388,8,16,32,448,256],"offset":393,"phase":0,"quadratic_rows":[455,455,327,0,0,0,327,259,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":771,"old":426,"rank":1,"right":{"linear_Z4":[1,1,3,0,0,0,3,0,0],"matrix_rows":[199,385,386,260,8,16,32,320,256],"offset":263,"phase":0,"quadratic_rows":[327,327,455,0,0,0,455,324,199]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,32,65,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":756,"old":427,"rank":2,"right":{"linear_Z4":[1,1,3,0,3,0,0,0,3],"matrix_rows":[342,81,339,256,68,24,64,32,384],"offset":15,"phase":0,"quadratic_rows":[259,263,278,16,28,0,0,0,263]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,18,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":757,"old":427,"rank":2,"right":{"linear_Z4":[2,0,2,2,2,0,2,0,0],"matrix_rows":[97,21,81,2,32,24,96,128,256],"offset":117,"phase":3,"quadratic_rows":[36,0,49,16,44,21,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,67,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":758,"old":427,"rank":2,"right":{"linear_Z4":[3,2,3,1,0,0,0,0,0],"matrix_rows":[5,24,113,26,100,32,64,128,256],"offset":43,"phase":0,"quadratic_rows":[117,24,101,42,35,29,5,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,3,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":759,"old":427,"rank":2,"right":{"linear_Z4":[1,0,1,3,2,0,0,0,0],"matrix_rows":[29,24,105,2,124,32,64,128,256],"offset":55,"phase":1,"quadratic_rows":[117,0,101,56,41,29,5,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,34,65,2,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":760,"old":427,"rank":2,"right":{"linear_Z4":[2,0,2,0,1,0,0,0,0],"matrix_rows":[5,29,113,2,100,32,64,128,256],"offset":35,"phase":1,"quadratic_rows":[104,0,120,53,60,29,5,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,3,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":761,"old":427,"rank":2,"right":{"linear_Z4":[1,2,1,0,1,0,0,0,0],"matrix_rows":[29,24,105,26,124,32,64,128,256],"offset":63,"phase":0,"quadratic_rows":[117,24,101,34,51,29,5,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,66,1,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":762,"old":427,"rank":2,"right":{"linear_Z4":[0,0,1,2,3,2,1,0,0],"matrix_rows":[65,84,32,2,100,24,96,128,256],"offset":101,"phase":2,"quadratic_rows":[96,0,52,16,60,21,65,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,18,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":763,"old":427,"rank":2,"right":{"linear_Z4":[0,2,3,0,2,0,1,0,0],"matrix_rows":[39,83,81,70,32,24,96,128,256],"offset":26,"phase":3,"quadratic_rows":[36,48,69,16,106,83,116,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,32,65,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":732,"old":428,"rank":2,"right":{"linear_Z4":[2,3,2,0,1,3,1,0,0],"matrix_rows":[116,114,21,86,96,8,32,128,256],"offset":77,"phase":0,"quadratic_rows":[20,38,83,0,117,114,116,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,34,67,128,3,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":733,"old":428,"rank":2,"right":{"linear_Z4":[2,1,0,2,2,0,0,0,0],"matrix_rows":[17,23,69,270,64,256,80,32,384],"offset":43,"phase":0,"quadratic_rows":[66,283,280,6,70,0,17,0,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,33,67,128,3,257,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":734,"old":428,"rank":2,"right":{"linear_Z4":[3,0,0,2,0,0,1,0,0],"matrix_rows":[348,281,333,6,64,256,80,32,384],"offset":37,"phase":3,"quadratic_rows":[85,4,83,0,5,0,69,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,32,66,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":735,"old":428,"rank":2,"right":{"linear_Z4":[2,2,2,0,2,0,2,0,0],"matrix_rows":[97,21,69,6,96,8,32,128,256],"offset":93,"phase":3,"quadratic_rows":[48,4,50,0,37,21,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,35,66,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":736,"old":428,"rank":2,"right":{"linear_Z4":[0,0,2,2,3,0,1,0,0],"matrix_rows":[57,77,69,6,96,88,32,128,256],"offset":98,"phase":3,"quadratic_rows":[48,4,106,36,81,77,116,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,66,1,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":737,"old":428,"rank":2,"right":{"linear_Z4":[0,2,3,0,1,2,1,0,0],"matrix_rows":[65,84,32,6,96,8,112,128,256],"offset":29,"phase":2,"quadratic_rows":[96,4,54,0,52,21,65,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,17,32,67,2,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":738,"old":428,"rank":2,"right":{"linear_Z4":[2,0,1,0,2,0,0,0,0],"matrix_rows":[17,23,101,32,64,8,112,128,256],"offset":11,"phase":1,"quadratic_rows":[98,53,54,0,102,23,17,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,34,65,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":739,"old":428,"rank":2,"right":{"linear_Z4":[0,3,2,1,3,1,1,0,0],"matrix_rows":[116,42,21,86,96,88,32,128,256],"offset":114,"phase":2,"quadratic_rows":[20,126,83,122,95,42,94,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,64,131,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":724,"old":429,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,1],"matrix_rows":[41,298,256,130,4,264,16,288,64],"offset":5,"phase":0,"quadratic_rows":[296,426,0,3,0,3,0,2,259]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,34,64,130,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":725,"old":429,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,1,0,0,2],"matrix_rows":[259,170,256,258,4,136,16,160,64],"offset":5,"phase":0,"quadratic_rows":[2,169,0,42,0,42,0,2,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,34,2,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":726,"old":429,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,2,0,2,2],"matrix_rows":[435,170,272,258,4,16,288,64,384],"offset":32,"phase":3,"quadratic_rows":[162,25,0,178,170,25,0,25,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,35,64,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":727,"old":429,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,1,0,0,1],"matrix_rows":[201,424,320,34,4,264,16,64,384],"offset":138,"phase":3,"quadratic_rows":[392,32,0,97,0,490,424,97,353]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,34,64,131,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":728,"old":429,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,1],"matrix_rows":[35,298,256,258,4,136,16,288,64],"offset":5,"phase":0,"quadratic_rows":[290,9,0,426,0,9,0,8,265]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,64,130,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":729,"old":429,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,1,0,0,2],"matrix_rows":[265,170,256,130,4,264,16,160,64],"offset":5,"phase":0,"quadratic_rows":[8,42,0,163,0,42,0,8,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,2,19,32,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":730,"old":429,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,2,0,2,2],"matrix_rows":[429,170,260,4,264,16,288,64,384],"offset":8,"phase":3,"quadratic_rows":[168,172,170,7,0,7,0,7,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,32,64,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":731,"old":429,"rank":2,"right":{"linear_Z4":[0,0,0,2,0,1,0,0,1],"matrix_rows":[195,418,320,258,4,40,16,64,384],"offset":162,"phase":3,"quadratic_rows":[386,97,0,32,0,490,418,97,353]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,32,64,130,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":708,"old":430,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,1],"matrix_rows":[263,37,257,130,260,8,16,256,64],"offset":130,"phase":0,"quadratic_rows":[34,391,34,0,0,261,0,2,290]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,17,32,64,130,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":709,"old":430,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,2],"matrix_rows":[135,290,129,258,132,8,16,256,64],"offset":130,"phase":0,"quadratic_rows":[7,165,7,0,0,2,0,2,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,65,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":710,"old":430,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,163,257,258,256,8,272,64,384],"offset":16,"phase":3,"quadratic_rows":[292,292,387,0,0,131,0,292,135]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,33,64,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":711,"old":430,"rank":2,"right":{"linear_Z4":[2,1,0,0,0,0,0,0,3],"matrix_rows":[390,420,3,256,260,264,16,64,384],"offset":13,"phase":3,"quadratic_rows":[2,135,290,0,0,388,0,290,420]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,32,64,130,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":712,"old":430,"rank":2,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[135,292,129,130,260,8,16,256,64],"offset":130,"phase":0,"quadratic_rows":[7,7,163,0,0,4,0,4,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,64,130,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":713,"old":430,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,1],"matrix_rows":[263,35,257,258,132,8,16,256,64],"offset":130,"phase":0,"quadratic_rows":[36,36,391,0,0,259,0,4,292]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,17,32,65,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":714,"old":430,"rank":2,"right":{"linear_Z4":[2,0,1,0,0,0,0,0,3],"matrix_rows":[390,418,5,258,256,8,272,64,384],"offset":21,"phase":3,"quadratic_rows":[4,292,135,0,0,386,0,292,418]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,33,64,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":715,"old":430,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,165,257,256,260,264,16,64,384],"offset":8,"phase":3,"quadratic_rows":[290,389,290,0,0,133,0,290,135]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,18,32,66,1,3,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":700,"old":431,"rank":2,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[2,38,1,98,64,40,80,128,256],"offset":104,"phase":3,"quadratic_rows":[0,68,98,32,0,76,38,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,17,32,67,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":701,"old":431,"rank":2,"right":{"linear_Z4":[1,1,3,0,0,1,2,0,0],"matrix_rows":[5,66,35,64,4,40,80,128,256],"offset":15,"phase":0,"quadratic_rows":[39,35,5,32,0,43,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,33,1,67,3,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":702,"old":431,"rank":2,"right":{"linear_Z4":[2,3,3,1,0,0,0,0,0],"matrix_rows":[40,6,41,114,84,16,64,128,256],"offset":39,"phase":0,"quadratic_rows":[40,118,86,25,46,19,6,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,35,3,66,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":703,"old":431,"rank":2,"right":{"linear_Z4":[0,1,1,3,0,2,0,0,0],"matrix_rows":[46,40,1,90,124,16,64,128,256],"offset":59,"phase":1,"quadratic_rows":[0,118,86,56,46,26,6,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,35,3,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":704,"old":431,"rank":2,"right":{"linear_Z4":[2,1,1,0,0,1,0,0,0],"matrix_rows":[40,46,41,90,124,16,64,128,256],"offset":63,"phase":0,"quadratic_rows":[40,118,86,17,46,51,6,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,34,2,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":705,"old":431,"rank":2,"right":{"linear_Z4":[0,2,2,0,0,1,0,0,0],"matrix_rows":[6,46,1,114,84,16,64,128,256],"offset":35,"phase":1,"quadratic_rows":[0,88,120,54,46,60,6,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":706,"old":431,"rank":2,"right":{"linear_Z4":[0,2,3,2,0,1,3,0,0],"matrix_rows":[66,100,1,64,4,40,80,128,256],"offset":113,"phase":0,"quadratic_rows":[0,0,100,32,0,108,100,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":707,"old":431,"rank":2,"right":{"linear_Z4":[2,0,3,0,0,2,3,0,0],"matrix_rows":[99,71,69,98,64,40,80,128,256],"offset":21,"phase":3,"quadratic_rows":[96,68,70,32,0,9,71,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,34,64,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":692,"old":432,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,1],"matrix_rows":[263,13,257,130,260,256,16,32,64],"offset":34,"phase":0,"quadratic_rows":[10,391,10,261,0,0,0,2,266]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,17,34,64,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":693,"old":432,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,2],"matrix_rows":[135,266,129,258,132,256,16,32,64],"offset":34,"phase":0,"quadratic_rows":[7,141,7,2,0,0,0,2,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,19,34,1,64,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":694,"old":432,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,414,16,258,260,272,32,64,384],"offset":4,"phase":3,"quadratic_rows":[150,25,25,134,135,0,0,25,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,34,64,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":695,"old":432,"rank":2,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,1],"matrix_rows":[389,201,257,6,64,320,16,32,384],"offset":25,"phase":3,"quadratic_rows":[76,4,455,385,0,0,389,76,332]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,19,34,64,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":696,"old":432,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,1],"matrix_rows":[263,14,129,258,260,256,16,32,64],"offset":34,"phase":0,"quadratic_rows":[391,9,9,262,0,0,0,1,265]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,17,34,64,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":697,"old":432,"rank":2,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,2],"matrix_rows":[135,265,257,130,132,256,16,32,64],"offset":34,"phase":0,"quadratic_rows":[142,7,7,1,0,0,0,1,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,34,64,1,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":698,"old":432,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,429,257,32,260,288,16,64,384],"offset":8,"phase":3,"quadratic_rows":[42,165,42,133,0,135,0,42,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,17,34,64,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":699,"old":432,"rank":2,"right":{"linear_Z4":[2,0,1,0,0,0,0,0,1],"matrix_rows":[390,202,5,258,64,320,16,32,384],"offset":21,"phase":3,"quadratic_rows":[4,76,455,386,0,0,390,76,332]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,32,66,128,2,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":668,"old":433,"rank":2,"right":{"linear_Z4":[0,0,0,2,1,0,0,0,1],"matrix_rows":[195,401,257,320,4,24,64,32,384],"offset":98,"phase":3,"quadratic_rows":[82,385,0,16,473,0,401,82,338]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,1,19,35,64,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":669,"old":433,"rank":2,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[153,414,4,260,264,272,32,64,384],"offset":4,"phase":3,"quadratic_rows":[156,152,153,7,7,0,0,7,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,34,67,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":670,"old":433,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,1],"matrix_rows":[19,281,257,256,4,136,272,32,64],"offset":9,"phase":0,"quadratic_rows":[10,273,0,409,10,0,0,8,266]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,65,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":671,"old":433,"rank":2,"right":{"linear_Z4":[1,0,0,0,1,0,0,0,2],"matrix_rows":[153,266,129,256,4,264,144,32,64],"offset":10,"phase":0,"quadratic_rows":[25,8,0,147,25,0,0,8,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,35,65,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":672,"old":433,"rank":2,"right":{"linear_Z4":[2,0,0,0,1,0,0,0,1],"matrix_rows":[408,202,17,320,4,264,64,32,384],"offset":69,"phase":3,"quadratic_rows":[16,392,0,82,473,0,408,82,338]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,34,67,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":673,"old":433,"rank":2,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[435,153,257,288,4,32,272,64,384],"offset":32,"phase":3,"quadratic_rows":[42,145,0,177,42,153,0,42,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,67,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":674,"old":433,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,1],"matrix_rows":[281,26,129,256,4,264,272,32,64],"offset":10,"phase":0,"quadratic_rows":[409,280,0,3,3,0,0,1,259]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,34,66,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":675,"old":433,"rank":2,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,2],"matrix_rows":[259,153,257,256,4,136,144,32,64],"offset":9,"phase":0,"quadratic_rows":[154,1,0,25,25,0,0,1,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,33,66,3,128,258,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":676,"old":434,"rank":2,"right":{"linear_Z4":[0,1,0,3,2,1,0,0,0],"matrix_rows":[281,39,37,278,32,312,256,64,384],"offset":106,"phase":0,"quadratic_rows":[282,307,304,41,39,318,0,0,39]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,64,2,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":677,"old":434,"rank":2,"right":{"linear_Z4":[2,1,0,2,0,0,0,0,0],"matrix_rows":[9,15,99,64,32,104,16,128,256],"offset":19,"phase":1,"quadratic_rows":[100,46,43,102,0,15,9,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":678,"old":434,"rank":2,"right":{"linear_Z4":[1,0,3,2,3,1,0,0,1],"matrix_rows":[281,40,37,6,32,312,256,64,384],"offset":98,"phase":3,"quadratic_rows":[317,4,7,1,305,305,0,0,305]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":679,"old":434,"rank":2,"right":{"linear_Z4":[0,2,3,1,0,1,2,0,0],"matrix_rows":[33,44,64,6,96,104,16,128,256],"offset":29,"phase":2,"quadratic_rows":[96,4,78,76,0,33,13,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,35,65,3,128,257,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":680,"old":434,"rank":2,"right":{"linear_Z4":[3,0,0,0,2,1,0,0,0],"matrix_rows":[316,281,309,6,32,40,256,64,384],"offset":69,"phase":3,"quadratic_rows":[45,4,43,5,0,37,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,34,64,3,2,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":681,"old":434,"rank":2,"right":{"linear_Z4":[2,2,2,2,0,2,0,0,0],"matrix_rows":[97,13,37,6,96,64,16,128,256],"offset":61,"phase":3,"quadratic_rows":[72,4,74,69,0,0,13,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,9,19,35,65,3,128,257,1],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":682,"old":434,"rank":2,"right":{"linear_Z4":[3,1,3,0,2,1,0,0,0],"matrix_rows":[42,281,309,278,32,40,256,64,384],"offset":77,"phase":0,"quadratic_rows":[45,318,7,275,42,307,0,0,42]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,34,64,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":683,"old":434,"rank":2,"right":{"linear_Z4":[1,1,3,2,0,1,3,0,0],"matrix_rows":[79,108,37,46,96,64,16,128,256],"offset":2,"phase":1,"quadratic_rows":[107,99,76,69,0,35,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":660,"old":435,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,0,0,2],"matrix_rows":[335,321,322,324,328,16,32,256,384],"offset":159,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":661,"old":435,"rank":1,"right":{"linear_Z4":[1,1,2,0,0,2,0,0,0],"matrix_rows":[39,33,34,32,8,48,64,128,256],"offset":8,"phase":3,"quadratic_rows":[7,7,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":662,"old":435,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,0],"matrix_rows":[13,32,2,36,40,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[44,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":663,"old":435,"rank":1,"right":{"linear_Z4":[0,1,0,1,0,0,0,0,2],"matrix_rows":[330,1,322,4,328,16,32,256,384],"offset":149,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":664,"old":435,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,2],"matrix_rows":[326,1,322,324,8,16,32,256,384],"offset":141,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":665,"old":435,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,2,0,0,0],"matrix_rows":[38,9,34,44,32,48,64,128,256],"offset":61,"phase":1,"quadratic_rows":[8,6,14,13,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":666,"old":435,"rank":1,"right":{"linear_Z4":[1,1,0,2,0,2,0,0,0],"matrix_rows":[43,33,34,4,32,48,64,128,256],"offset":16,"phase":3,"quadratic_rows":[11,11,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":667,"old":435,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[323,321,322,4,8,16,32,256,384],"offset":135,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":716,"old":436,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,2,0,0],"matrix_rows":[10,1,66,4,64,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[0,74,0,66,0,0,10,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":717,"old":436,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,290,4,8,16,256,64,384],"offset":69,"phase":3,"quadratic_rows":[0,290,0,0,0,2,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":718,"old":436,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[291,289,290,4,8,16,256,64,384],"offset":71,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":719,"old":436,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,2,0,0],"matrix_rows":[67,73,66,4,64,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[11,3,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":720,"old":436,"rank":1,"right":{"linear_Z4":[3,2,0,3,0,0,2,0,0],"matrix_rows":[73,67,64,68,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[11,1,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":721,"old":436,"rank":1,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,2],"matrix_rows":[297,289,2,4,296,16,256,64,384],"offset":83,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":722,"old":436,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[8,1,2,4,296,16,256,64,384],"offset":81,"phase":3,"quadratic_rows":[0,0,0,296,0,8,0,0,8]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":723,"old":436,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[10,1,64,68,72,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[0,72,0,74,0,0,10,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":684,"old":437,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,2,0,0],"matrix_rows":[3,64,66,4,8,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":685,"old":437,"rank":1,"right":{"linear_Z4":[0,1,2,0,0,0,0,0,0],"matrix_rows":[2,1,262,256,8,16,32,64,384],"offset":13,"phase":3,"quadratic_rows":[0,262,2,0,0,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":686,"old":437,"rank":1,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[8,1,10,12,64,80,96,128,256],"offset":73,"phase":3,"quadratic_rows":[0,8,8,70,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":687,"old":437,"rank":1,"right":{"linear_Z4":[2,2,0,3,0,0,0,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":71,"phase":0,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":688,"old":437,"rank":1,"right":{"linear_Z4":[2,2,0,3,0,0,0,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":39,"phase":0,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":689,"old":437,"rank":1,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[8,9,2,12,64,80,96,128,256],"offset":41,"phase":3,"quadratic_rows":[8,0,8,69,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":690,"old":437,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,64,384],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":691,"old":437,"rank":1,"right":{"linear_Z4":[1,2,0,2,0,0,2,0,0],"matrix_rows":[3,65,64,4,8,16,96,128,256],"offset":84,"phase":1,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":445,"old":438,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,3,2],"matrix_rows":[398,1,258,260,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,142,142,142,0,0,0,142,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":447,"old":438,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":443,"old":439,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,3,0,0],"matrix_rows":[30,65,194,132,200,208,32,128,256],"offset":1,"phase":1,"quadratic_rows":[64,222,158,222,222,0,91,30,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":446,"old":439,"rank":1,"right":{"linear_Z4":[2,3,1,2,3,0,3,0,2],"matrix_rows":[342,5,258,256,8,272,288,320,384],"offset":438,"phase":2,"quadratic_rows":[4,86,87,0,86,0,86,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":447,"old":440,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":448,"old":440,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":446,"old":441,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,1,2,2],"matrix_rows":[347,385,386,4,392,400,32,448,256],"offset":0,"phase":0,"quadratic_rows":[219,219,0,219,219,0,219,91,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":450,"old":441,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[475,257,258,4,264,256,32,320,384],"offset":0,"phase":0,"quadratic_rows":[219,219,0,219,203,0,219,219,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":443,"old":442,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,0,2,0,0],"matrix_rows":[91,65,66,4,72,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[27,27,0,27,27,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":448,"old":442,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":449,"old":443,"rank":1,"right":{"linear_Z4":[1,3,2,3,3,0,2,0,0],"matrix_rows":[91,65,82,20,88,64,32,128,256],"offset":60,"phase":2,"quadratic_rows":[27,11,16,11,21,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":454,"old":443,"rank":1,"right":{"linear_Z4":[1,0,2,1,0,0,0,0,2],"matrix_rows":[9,261,2,256,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[269,0,1,265,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":445,"old":444,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,3,3,0],"matrix_rows":[139,321,258,68,264,16,32,256,384],"offset":1,"phase":1,"quadratic_rows":[459,395,64,395,0,0,69,395,139]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":450,"old":444,"rank":1,"right":{"linear_Z4":[3,0,2,3,0,2,0,0,0],"matrix_rows":[41,37,2,32,40,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[13,0,1,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":452,"old":445,"rank":1,"right":{"linear_Z4":[2,3,1,3,0,0,0,1,2],"matrix_rows":[270,129,258,388,264,16,32,64,256],"offset":267,"phase":0,"quadratic_rows":[128,14,142,14,0,0,0,133,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":453,"old":445,"rank":1,"right":{"linear_Z4":[2,1,3,2,0,0,0,1,2],"matrix_rows":[390,5,258,256,8,272,288,320,384],"offset":250,"phase":2,"quadratic_rows":[4,134,135,0,0,0,0,134,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":451,"old":446,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,3,0,0],"matrix_rows":[91,129,130,4,136,128,32,192,256],"offset":33,"phase":0,"quadratic_rows":[219,219,0,219,203,0,219,91,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":454,"old":446,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,0,0,0],"matrix_rows":[91,193,194,4,200,208,32,128,256],"offset":183,"phase":0,"quadratic_rows":[155,155,0,155,155,0,128,91,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":452,"old":447,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,0,0,2],"matrix_rows":[11,257,258,4,264,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[267,267,0,267,0,0,0,0,11]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":455,"old":447,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":449,"old":448,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":455,"old":448,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,33,66,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":456,"old":449,"rank":2,"right":{"linear_Z4":[2,2,1,2,0,0,0,0,1],"matrix_rows":[34,266,13,270,256,288,48,320,384],"offset":30,"phase":0,"quadratic_rows":[12,36,7,289,0,266,0,0,296]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,17,34,3,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":459,"old":449,"rank":2,"right":{"linear_Z4":[1,0,2,1,1,0,0,0,0],"matrix_rows":[276,271,277,272,256,280,288,320,384],"offset":1,"phase":1,"quadratic_rows":[27,29,10,31,27,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":451,"old":450,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,0,0],"matrix_rows":[203,385,386,4,392,16,32,448,256],"offset":407,"phase":0,"quadratic_rows":[331,331,0,331,0,0,331,256,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":453,"old":450,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,3,0],"matrix_rows":[203,257,258,4,264,16,32,256,384],"offset":129,"phase":0,"quadratic_rows":[459,459,0,459,0,0,395,459,203]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,35,64,128,2,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":458,"old":451,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,0],"matrix_rows":[11,201,129,128,4,136,16,32,256],"offset":9,"phase":0,"quadratic_rows":[66,137,0,66,0,0,137,194,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,64,128,1,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":461,"old":451,"rank":2,"right":{"linear_Z4":[1,0,0,1,0,0,0,1,0],"matrix_rows":[201,2,65,128,4,72,16,32,256],"offset":10,"phase":0,"quadratic_rows":[137,128,0,137,0,0,128,203,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,33,67,130,259,3,1],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":457,"old":452,"rank":2,"right":{"linear_Z4":[2,2,1,3,0,0,0,1,0],"matrix_rows":[138,258,13,134,128,256,144,416,192],"offset":29,"phase":0,"quadratic_rows":[12,268,15,399,0,0,0,392,138]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,17,35,65,129,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":460,"old":452,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[137,15,389,256,128,392,144,160,192],"offset":10,"phase":0,"quadratic_rows":[258,269,270,262,0,0,0,0,15]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,64,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":458,"old":453,"rank":2,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,1],"matrix_rows":[393,2,129,256,4,136,16,32,64],"offset":10,"phase":0,"quadratic_rows":[265,256,0,265,0,0,0,256,395]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,35,64,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":460,"old":453,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[11,393,257,256,4,264,16,32,64],"offset":9,"phase":0,"quadratic_rows":[130,265,0,130,0,0,0,265,386]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,1,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":459,"old":454,"rank":2,"right":{"linear_Z4":[1,0,0,1,0,0,1,0,0],"matrix_rows":[89,2,17,64,4,24,32,128,256],"offset":10,"phase":0,"quadratic_rows":[73,64,0,73,64,0,91,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,16,35,2,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":461,"old":454,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,0],"matrix_rows":[11,89,65,64,4,72,32,128,256],"offset":9,"phase":0,"quadratic_rows":[18,73,0,18,73,0,82,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,33,67,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":456,"old":455,"rank":2,"right":{"linear_Z4":[2,1,0,1,0,0,0,0,3],"matrix_rows":[44,266,13,46,256,288,272,320,384],"offset":31,"phase":1,"quadratic_rows":[12,294,267,45,0,266,0,0,294]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,33,67,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":457,"old":455,"rank":2,"right":{"linear_Z4":[2,1,0,3,0,0,0,0,1],"matrix_rows":[266,292,13,294,256,288,272,320,384],"offset":31,"phase":1,"quadratic_rows":[12,46,267,47,0,266,0,0,292]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,35,66,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":456,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,292,296,272,320,384],"offset":62,"phase":1,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":812,"old":456,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":26,"phase":1,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":875,"old":456,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,264,272,32,320,384],"offset":31,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":456,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,32,320,384],"offset":29,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,33,66,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":457,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,258,288,256,36,296,272,320,384],"offset":42,"phase":3,"quadratic_rows":[288,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":818,"old":457,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":893,"old":457,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,8,272,288,320,384],"offset":79,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":458,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,136,160,2,164,32,16,64,256],"offset":51,"phase":0,"quadratic_rows":[32,0,0,160,0,9,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":814,"old":458,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[9,129,2,4,128,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[137,0,0,129,0,0,0,9,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":881,"old":458,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[9,128,2,132,136,16,32,64,256],"offset":8,"phase":3,"quadratic_rows":[136,0,0,137,0,0,0,9,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":459,"rank":2,"right":{"linear_Z4":[2,0,0,0,1,0,0,0,0],"matrix_rows":[17,24,48,2,52,32,64,128,256],"offset":51,"phase":0,"quadratic_rows":[32,0,0,48,24,9,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":810,"old":459,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,2,0,0,0],"matrix_rows":[9,33,2,4,32,48,64,128,256],"offset":50,"phase":1,"quadratic_rows":[41,0,0,33,0,9,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":869,"old":459,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,0],"matrix_rows":[9,16,2,20,24,32,64,128,256],"offset":8,"phase":3,"quadratic_rows":[24,0,0,25,9,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,2,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":460,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,1],"matrix_rows":[257,264,288,2,292,32,16,64,128],"offset":51,"phase":0,"quadratic_rows":[32,0,0,288,0,9,0,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":816,"old":460,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[9,257,2,4,256,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[265,0,0,257,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":887,"old":460,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[9,256,2,260,264,16,32,64,128],"offset":8,"phase":3,"quadratic_rows":[264,0,0,265,0,0,0,0,9]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":460,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,0,2],"matrix_rows":[264,9,2,4,256,16,288,64,128],"offset":67,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":461,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,1,0,0],"matrix_rows":[65,72,96,2,100,32,16,128,256],"offset":51,"phase":0,"quadratic_rows":[32,0,0,96,0,9,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":820,"old":461,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[9,65,2,4,64,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[73,0,0,65,0,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":899,"old":461,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[9,64,2,68,72,16,32,128,256],"offset":8,"phase":3,"quadratic_rows":[72,0,0,73,0,0,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":461,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":464,"old":462,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":473,"old":462,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[64,1,2,4,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,320,0,64]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":464,"old":463,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":468,"old":463,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":477,"old":464,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,2,0,0,0],"matrix_rows":[40,9,2,4,32,48,64,128,256],"offset":42,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":480,"old":464,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":471,"old":465,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[2,1,66,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":473,"old":465,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,1,2],"matrix_rows":[258,1,386,4,8,16,32,192,256],"offset":389,"phase":0,"quadratic_rows":[0,130,0,0,0,0,128,194,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":469,"old":466,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,1,3,2],"matrix_rows":[448,1,130,4,8,16,32,320,256],"offset":260,"phase":2,"quadratic_rows":[0,128,0,0,0,0,192,194,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":472,"old":466,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,3,1,2],"matrix_rows":[448,1,66,4,8,16,32,256,384],"offset":132,"phase":2,"quadratic_rows":[0,64,0,0,0,0,194,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":468,"old":467,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":469,"old":467,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[2,1,130,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":475,"old":468,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":477,"old":468,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,41,2,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,37,1,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":475,"old":469,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[322,1,258,4,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":476,"old":469,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,2],"matrix_rows":[258,1,322,4,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":471,"old":470,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":472,"old":470,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":474,"old":471,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":479,"old":471,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,2,0,0,0],"matrix_rows":[40,9,2,4,32,48,64,128,256],"offset":42,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":476,"old":472,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":479,"old":472,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,41,2,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,37,1,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":474,"old":473,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,3,0,2],"matrix_rows":[320,1,66,4,8,16,32,256,384],"offset":388,"phase":1,"quadratic_rows":[0,64,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":480,"old":473,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,2,0],"matrix_rows":[194,1,128,4,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,64,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,65,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":459,"old":474,"rank":2,"right":{"linear_Z4":[2,0,1,2,0,2,0,0,2],"matrix_rows":[36,258,5,256,32,8,48,320,128],"offset":110,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,19,1,34,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":482,"old":474,"rank":2,"right":{"linear_Z4":[2,0,0,3,0,1,0,0,0],"matrix_rows":[44,36,13,2,32,48,64,128,256],"offset":23,"phase":0,"quadratic_rows":[12,0,33,41,0,44,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,19,33,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":478,"old":475,"rank":2,"right":{"linear_Z4":[2,0,0,1,2,0,0,0,0],"matrix_rows":[60,36,13,2,16,48,64,128,256],"offset":37,"phase":3,"quadratic_rows":[12,0,1,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,9,18,34,64,2,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":481,"old":475,"rank":2,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,2],"matrix_rows":[258,5,33,256,44,32,16,64,384],"offset":11,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,9,18,34,64,2,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":481,"old":476,"rank":2,"right":{"linear_Z4":[3,0,3,2,0,0,0,2,0],"matrix_rows":[130,5,33,128,44,32,16,192,256],"offset":11,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,19,33,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":484,"old":476,"rank":2,"right":{"linear_Z4":[2,0,0,1,2,0,0,0,0],"matrix_rows":[60,36,13,2,16,48,64,128,256],"offset":37,"phase":3,"quadratic_rows":[12,0,1,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":478,"old":477,"rank":2,"right":{"linear_Z4":[2,0,3,0,0,2,0,0,2],"matrix_rows":[36,320,5,2,32,8,48,256,384],"offset":84,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":483,"old":477,"rank":2,"right":{"linear_Z4":[2,0,3,0,0,2,0,0,2],"matrix_rows":[36,258,5,256,32,8,48,64,384],"offset":84,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":478,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,36,40,16,64,384],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":860,"old":478,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,32,64,384],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1019,"old":478,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":478,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":482,"old":479,"rank":2,"right":{"linear_Z4":[2,1,3,0,0,2,0,0,2],"matrix_rows":[36,386,5,258,32,8,48,64,256],"offset":84,"phase":1,"quadratic_rows":[4,130,5,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":484,"old":479,"rank":2,"right":{"linear_Z4":[2,1,3,0,0,2,0,2,2],"matrix_rows":[36,258,5,386,32,8,48,64,256],"offset":84,"phase":1,"quadratic_rows":[4,130,5,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":459,"old":480,"rank":2,"right":{"linear_Z4":[2,0,1,2,0,2,0,0,2],"matrix_rows":[36,320,5,2,32,8,48,256,384],"offset":230,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,19,1,34,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":483,"old":480,"rank":2,"right":{"linear_Z4":[2,0,0,3,0,1,0,0,0],"matrix_rows":[44,36,13,2,32,48,64,128,256],"offset":23,"phase":0,"quadratic_rows":[12,0,33,41,0,44,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,3,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":481,"rank":2,"right":{"linear_Z4":[0,0,2,0,1,0,0,0,0],"matrix_rows":[17,20,32,2,48,56,64,128,256],"offset":39,"phase":0,"quadratic_rows":[48,0,32,0,17,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":858,"old":481,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,2,0,0,0],"matrix_rows":[5,32,2,36,8,48,64,128,256],"offset":42,"phase":1,"quadratic_rows":[36,0,37,0,0,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1013,"old":481,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[5,17,2,16,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[21,0,17,0,5,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":482,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,36,40,16,320,128],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":854,"old":482,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,32,320,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1001,"old":482,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":483,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,320,32,2,36,40,16,256,384],"offset":134,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":813,"old":483,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[1,321,2,4,8,16,32,256,384],"offset":131,"phase":3,"quadratic_rows":[321,0,0,0,0,0,1,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":874,"old":483,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":483,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":129,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":484,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[1,130,32,128,36,40,16,192,256],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":856,"old":484,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,8,16,32,192,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1007,"old":484,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":484,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,32,192,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":491,"old":485,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,0],"matrix_rows":[2,1,18,4,8,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":492,"old":485,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,2,0],"matrix_rows":[136,9,2,4,128,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":494,"old":486,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,2,0],"matrix_rows":[136,1,2,12,128,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":495,"old":486,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[2,1,66,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":495,"old":487,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":502,"old":487,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":494,"old":488,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":496,"old":488,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":492,"old":489,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,41,2,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,37,1,0,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":496,"old":489,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,33,2,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":491,"old":490,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,1,0,2],"matrix_rows":[336,1,18,4,8,256,32,320,128],"offset":36,"phase":2,"quadratic_rows":[0,16,0,0,82,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":502,"old":490,"rank":1,"right":{"linear_Z4":[0,2,0,0,1,0,3,0,2],"matrix_rows":[336,1,66,4,8,272,32,256,128],"offset":132,"phase":2,"quadratic_rows":[0,64,0,0,80,0,82,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":493,"old":491,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,2,0],"matrix_rows":[136,9,2,4,128,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":503,"old":491,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,2],"matrix_rows":[258,1,322,4,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":493,"old":492,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,0],"matrix_rows":[2,1,18,4,8,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":497,"old":492,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,160,64,256],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,64,129,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":498,"old":493,"rank":2,"right":{"linear_Z4":[2,1,3,0,0,0,0,2,2],"matrix_rows":[132,322,5,258,128,8,16,160,256],"offset":133,"phase":3,"quadratic_rows":[4,66,5,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,65,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":504,"old":493,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[258,320,1,256,4,8,272,32,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,256,0,320]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":499,"old":494,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[16,1,2,4,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,16,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":501,"old":494,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[2,1,66,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":501,"old":495,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,2,0],"matrix_rows":[136,1,2,12,128,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":505,"old":495,"rank":1,"right":{"linear_Z4":[3,0,2,3,0,0,0,0,0],"matrix_rows":[9,37,2,32,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,1,41,0,9,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":497,"old":496,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,136,16,32,64,256],"offset":19,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":499,"old":496,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,3,0,2],"matrix_rows":[322,1,258,4,8,80,32,256,128],"offset":160,"phase":2,"quadratic_rows":[0,66,0,0,64,0,82,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,16,32,1,64,130,256,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":498,"old":497,"rank":2,"right":{"linear_Z4":[0,2,0,0,3,0,0,0,3],"matrix_rows":[258,338,1,274,4,8,32,256,128],"offset":0,"phase":0,"quadratic_rows":[0,320,0,0,80,0,18,0,258]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,65,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":500,"old":497,"rank":2,"right":{"linear_Z4":[0,0,0,0,3,0,2,0,3],"matrix_rows":[338,320,1,256,4,8,336,32,128],"offset":9,"phase":0,"quadratic_rows":[0,80,0,0,18,0,258,0,320]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,66,1,128,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":498,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,36,40,272,64,128],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":864,"old":498,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,272,32,64,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1031,"old":498,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":498,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,272,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,33,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":500,"old":499,"rank":2,"right":{"linear_Z4":[2,0,3,0,1,0,0,2,2],"matrix_rows":[132,274,5,256,128,136,272,32,64],"offset":37,"phase":3,"quadratic_rows":[4,16,5,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,66,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":506,"old":499,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[66,272,1,320,4,8,64,32,128],"offset":66,"phase":0,"quadratic_rows":[0,256,0,0,320,0,272,0,338]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":500,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,272,32,2,36,40,256,320,128],"offset":70,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":817,"old":500,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,32,320,128],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":886,"old":500,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":500,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,320,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,33,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":482,"old":501,"rank":2,"right":{"linear_Z4":[2,1,3,0,0,0,0,2,2],"matrix_rows":[132,274,5,258,128,136,256,32,64],"offset":37,"phase":3,"quadratic_rows":[4,18,5,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,66,128,1,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":506,"old":501,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[258,80,1,64,4,8,320,32,128],"offset":9,"phase":0,"quadratic_rows":[0,320,0,0,256,0,258,0,338]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":503,"old":502,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,2],"matrix_rows":[258,1,274,4,8,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":505,"old":502,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,66,129,2,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":458,"old":503,"rank":2,"right":{"linear_Z4":[2,0,1,2,0,0,2,2,0],"matrix_rows":[132,66,5,64,128,8,80,160,256],"offset":191,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,33,66,129,2,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":504,"old":503,"rank":2,"right":{"linear_Z4":[2,0,2,1,0,0,2,2,0],"matrix_rows":[136,66,9,64,4,128,80,160,256],"offset":191,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,33,64,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":504,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,132,160,2,32,168,16,64,256],"offset":51,"phase":0,"quadratic_rows":[32,0,160,0,0,5,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":857,"old":504,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1006,"old":504,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":504,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,160,64,256],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,66,128,1,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":458,"old":505,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[258,80,1,64,4,8,320,32,128],"offset":9,"phase":0,"quadratic_rows":[0,320,0,0,256,0,258,0,338]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,33,66,129,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":482,"old":505,"rank":2,"right":{"linear_Z4":[2,1,0,3,0,0,0,2,2],"matrix_rows":[136,274,9,258,4,128,256,160,64],"offset":133,"phase":3,"quadratic_rows":[8,18,0,9,2,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,1,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":506,"rank":2,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,0],"matrix_rows":[129,132,32,2,160,168,16,64,256],"offset":39,"phase":0,"quadratic_rows":[160,0,32,0,0,5,0,129,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":862,"old":506,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1025,"old":506,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":509,"old":507,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,0,3,0,2],"matrix_rows":[327,257,258,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[71,71,71,0,0,0,71,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":519,"old":507,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":509,"old":508,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,3,3,0],"matrix_rows":[75,257,258,132,392,16,32,320,256],"offset":1,"phase":1,"quadratic_rows":[331,331,128,459,0,0,331,140,75]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":523,"old":508,"rank":1,"right":{"linear_Z4":[2,3,2,1,0,0,3,3,2],"matrix_rows":[458,1,258,12,256,272,288,320,384],"offset":123,"phase":0,"quadratic_rows":[0,202,8,206,0,0,202,202,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":522,"old":509,"rank":1,"right":{"linear_Z4":[3,3,1,2,0,0,3,0,2],"matrix_rows":[327,321,322,260,72,16,32,256,128],"offset":150,"phase":2,"quadratic_rows":[7,7,71,64,0,0,76,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":525,"old":509,"rank":1,"right":{"linear_Z4":[1,0,1,2,0,0,0,2,0],"matrix_rows":[5,129,2,140,128,144,160,64,256],"offset":0,"phase":0,"quadratic_rows":[133,0,141,4,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":514,"old":510,"rank":1,"right":{"linear_Z4":[1,2,1,0,1,0,1,1,0],"matrix_rows":[213,385,130,388,8,400,32,448,256],"offset":431,"phase":3,"quadratic_rows":[341,128,341,0,341,0,341,386,213]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":515,"old":510,"rank":1,"right":{"linear_Z4":[3,2,3,0,0,2,0,0,0],"matrix_rows":[39,33,32,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[7,5,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":517,"old":511,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,2],"matrix_rows":[5,257,10,268,256,16,288,64,384],"offset":90,"phase":0,"quadratic_rows":[261,8,269,14,0,0,0,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":519,"old":511,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":515,"old":512,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[471,257,256,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[215,213,215,0,215,0,215,215,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":523,"old":512,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,0,1,1,2],"matrix_rows":[471,257,258,260,8,256,32,320,384],"offset":0,"phase":0,"quadratic_rows":[215,215,215,0,199,0,215,215,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":514,"old":513,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,0,1,2,0],"matrix_rows":[87,129,130,132,8,144,32,192,256],"offset":0,"phase":0,"quadratic_rows":[215,215,215,0,215,0,215,87,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":517,"old":513,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[2,1,130,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":516,"old":514,"rank":1,"right":{"linear_Z4":[2,0,2,0,3,0,3,0,2],"matrix_rows":[338,1,256,4,264,272,288,320,384],"offset":95,"phase":0,"quadratic_rows":[0,80,0,0,82,0,82,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":518,"old":514,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,0,2,0,0],"matrix_rows":[23,193,130,196,8,208,32,128,256],"offset":1,"phase":1,"quadratic_rows":[215,151,215,0,215,0,21,23,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":516,"old":515,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,0,0],"matrix_rows":[213,385,2,388,8,400,32,448,256],"offset":427,"phase":0,"quadratic_rows":[341,0,341,0,341,0,341,256,213]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":524,"old":515,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,3,3,0],"matrix_rows":[213,257,2,260,8,256,32,320,384],"offset":33,"phase":0,"quadratic_rows":[469,0,469,0,453,0,469,469,213]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,65,128,2,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":481,"old":516,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,1,0],"matrix_rows":[21,192,145,2,148,8,128,32,256],"offset":85,"phase":0,"quadratic_rows":[133,0,133,0,128,0,128,213,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,32,65,128,2,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":506,"old":516,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,0],"matrix_rows":[21,197,129,2,132,8,128,32,256],"offset":65,"phase":0,"quadratic_rows":[80,0,80,0,133,0,133,208,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":518,"old":517,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":520,"old":517,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,0],"matrix_rows":[2,1,18,4,8,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,34,65,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":481,"old":518,"rank":2,"right":{"linear_Z4":[2,0,2,0,0,0,0,0,2],"matrix_rows":[21,263,337,256,340,264,64,288,384],"offset":235,"phase":0,"quadratic_rows":[66,5,66,0,64,0,21,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,33,2,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":521,"old":518,"rank":2,"right":{"linear_Z4":[2,0,3,0,3,0,3,0,0],"matrix_rows":[68,80,5,18,64,72,32,128,256],"offset":20,"phase":2,"quadratic_rows":[4,16,5,0,82,0,80,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":520,"old":519,"rank":1,"right":{"linear_Z4":[1,3,1,2,0,0,0,0,0],"matrix_rows":[15,257,266,268,256,272,288,64,384],"offset":91,"phase":1,"quadratic_rows":[271,263,263,257,0,0,0,0,15]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":522,"old":519,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,3,32,64,2,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":457,"old":520,"rank":2,"right":{"linear_Z4":[2,1,2,2,0,0,0,0,0],"matrix_rows":[74,68,5,78,8,16,32,128,256],"offset":29,"phase":0,"quadratic_rows":[4,6,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,17,1,32,64,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":521,"old":520,"rank":2,"right":{"linear_Z4":[2,2,3,3,0,0,3,0,0],"matrix_rows":[78,10,5,74,8,16,32,128,256],"offset":20,"phase":2,"quadratic_rows":[4,12,71,10,0,0,68,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,35,66,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":521,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,258,288,256,292,40,272,320,384],"offset":26,"phase":3,"quadratic_rows":[288,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":861,"old":521,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,264,272,288,320,384],"offset":87,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1018,"old":521,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":8,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":521,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":85,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,33,66,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":457,"old":522,"rank":2,"right":{"linear_Z4":[2,3,2,3,0,0,3,0,1],"matrix_rows":[332,66,13,262,320,64,272,288,384],"offset":141,"phase":0,"quadratic_rows":[12,326,259,265,0,0,66,0,270]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,33,66,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":527,"old":522,"rank":2,"right":{"linear_Z4":[2,3,2,1,0,0,3,0,1],"matrix_rows":[332,74,13,270,320,64,272,288,384],"offset":45,"phase":0,"quadratic_rows":[12,326,267,77,0,0,74,0,262]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":524,"old":523,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,3,3,0],"matrix_rows":[199,257,256,260,8,16,32,320,384],"offset":5,"phase":0,"quadratic_rows":[455,453,455,0,0,0,455,455,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":525,"old":523,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,0,3,0,0],"matrix_rows":[199,257,258,260,8,16,32,320,256],"offset":257,"phase":0,"quadratic_rows":[455,455,455,0,0,0,455,327,199]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,64,128,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":506,"old":524,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,1],"matrix_rows":[389,64,129,2,132,8,16,32,256],"offset":258,"phase":0,"quadratic_rows":[261,0,261,0,0,0,256,256,453]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,32,64,128,257,2,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":526,"old":524,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[69,389,257,2,260,8,16,32,256],"offset":257,"phase":0,"quadratic_rows":[192,0,192,0,0,0,261,261,448]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,32,64,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":526,"old":525,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[7,325,257,256,260,8,16,32,128],"offset":9,"phase":0,"quadratic_rows":[66,261,66,0,0,0,261,0,322]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,33,64,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":527,"old":525,"rank":2,"right":{"linear_Z4":[2,2,0,0,0,0,0,0,3],"matrix_rows":[260,320,5,6,256,264,16,32,128],"offset":29,"phase":0,"quadratic_rows":[4,4,3,0,0,0,256,0,320]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,1,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":526,"rank":2,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,1],"matrix_rows":[257,260,32,2,288,296,16,64,128],"offset":39,"phase":0,"quadratic_rows":[288,0,32,0,0,5,0,0,257]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":865,"old":526,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1030,"old":526,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":526,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,264,16,32,64,128],"offset":19,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,3,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":527,"rank":2,"right":{"linear_Z4":[2,0,0,2,0,0,0,0,0],"matrix_rows":[1,42,32,40,12,16,64,128,256],"offset":4,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":821,"old":527,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":26,"phase":1,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":898,"old":527,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,11,8,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[11,1,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":527,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[10,1,8,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":528,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,64,132,1,262,2,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":576,"old":528,"rank":3,"right":{"linear_Z4":[2,1,1,0,3,2,1,0,1],"matrix_rows":[34,448,400,5,38,32,8,464,256],"offset":443,"phase":3,"quadratic_rows":[4,6,7,0,80,0,336,256,448]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,33,2,64,3,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":580,"old":528,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,1,1,1,2],"matrix_rows":[12,34,320,5,8,40,144,448,256],"offset":493,"phase":3,"quadratic_rows":[4,40,37,34,128,46,192,208,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":529,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,3,3,0],"matrix_rows":[213,273,2,276,8,256,32,320,384],"offset":43,"phase":0,"quadratic_rows":[453,0,453,0,448,0,469,469,213]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,16,39,64,131,256,5,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":648,"old":529,"rank":3,"right":{"linear_Z4":[1,0,1,0,2,0,2,1,3],"matrix_rows":[213,21,325,257,210,260,8,256,32],"offset":1,"phase":1,"quadratic_rows":[133,208,133,0,258,0,258,135,336]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[11,18,35,66,132,2,257,1,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":652,"old":529,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,2,1,2,1],"matrix_rows":[325,39,16,161,32,164,40,256,192],"offset":134,"phase":1,"quadratic_rows":[450,5,450,0,256,0,453,69,341]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":64,"old":530,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,2,0,0],"matrix_rows":[21,321,2,324,8,336,32,256,384],"offset":1,"phase":1,"quadratic_rows":[341,0,341,0,341,0,21,0,21]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,35,1,64,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":572,"old":530,"rank":3,"right":{"linear_Z4":[2,1,0,3,0,3,0,0,2],"matrix_rows":[42,4,320,13,6,32,16,256,384],"offset":59,"phase":1,"quadratic_rows":[12,46,43,47,0,46,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,35,1,68,2,128,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":581,"old":530,"rank":3,"right":{"linear_Z4":[2,1,0,1,0,1,0,0,2],"matrix_rows":[44,42,272,13,46,32,256,64,384],"offset":59,"phase":1,"quadratic_rows":[12,6,43,45,0,44,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":531,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,2,0],"matrix_rows":[144,65,2,68,8,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,64,0,80,0,21,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,1,16,32,66,128,4,6,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"new":650,"old":531,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,0],"matrix_rows":[2,16,192,1,4,8,128,32,256],"offset":67,"phase":1,"quadratic_rows":[0,0,0,0,128,0,128,208,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,37,65,130,4,258,2,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":656,"old":531,"rank":3,"right":{"linear_Z4":[2,2,0,1,1,0,1,2,2],"matrix_rows":[300,144,36,13,66,256,288,208,128],"offset":475,"phase":3,"quadratic_rows":[12,64,1,9,80,0,82,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":532,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,33,3,68,2,128,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":573,"old":532,"rank":3,"right":{"linear_Z4":[2,0,1,1,1,2,2,3,2],"matrix_rows":[36,10,400,5,32,40,272,192,256],"offset":425,"phase":1,"quadratic_rows":[4,40,13,46,144,10,128,208,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,1,70,128,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":577,"old":532,"rank":3,"right":{"linear_Z4":[2,1,1,2,2,0,3,0,3],"matrix_rows":[10,272,464,5,14,8,336,32,256],"offset":57,"phase":0,"quadratic_rows":[4,6,7,0,384,0,192,80,272]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":533,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,33,10,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,8,45,14,0,5,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,65,130,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":654,"old":533,"rank":3,"right":{"linear_Z4":[3,1,3,2,0,0,0,2,3],"matrix_rows":[5,16,402,41,18,36,32,256,64],"offset":151,"phase":1,"quadratic_rows":[45,386,37,1,128,5,0,274,386]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,37,65,130,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":658,"old":533,"rank":3,"right":{"linear_Z4":[2,2,0,1,1,0,2,3,2],"matrix_rows":[108,400,36,13,130,64,96,272,256],"offset":345,"phase":1,"quadratic_rows":[12,128,1,9,144,0,0,146,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":534,"rank":1,"right":{"linear_Z4":[0,0,1,3,3,0,0,1,2],"matrix_rows":[396,1,18,260,280,256,288,320,384],"offset":240,"phase":2,"quadratic_rows":[0,16,140,156,26,0,0,140,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":593,"old":534,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,0,3,0],"matrix_rows":[30,129,258,260,264,400,32,64,256],"offset":1,"phase":1,"quadratic_rows":[128,286,286,286,414,0,0,145,30]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,34,68,8,129,257,1,3,14],"offset":0,"phase":0,"quadratic_rows":[3,15,14,14,0,0,0,0,0]},"new":779,"old":534,"rank":4,"right":{"linear_Z4":[1,1,0,0,0,0,0,1,2],"matrix_rows":[208,403,68,264,209,194,320,64,96],"offset":68,"phase":0,"quadratic_rows":[323,339,256,256,450,0,403,464,223]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":535,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":595,"old":535,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,3,2],"matrix_rows":[388,1,2,260,8,16,32,192,256],"offset":384,"phase":2,"quadratic_rows":[0,0,132,0,0,0,128,196,0]}},{"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[16,33,74,132,5,4,2,264,8],"offset":0,"phase":0,"quadratic_rows":[5,10,1,2,0,0,0,0,0]},"new":781,"old":535,"rank":4,"right":{"linear_Z4":[2,1,2,0,1,2,3,0,3],"matrix_rows":[34,260,24,452,3,48,324,32,256],"offset":49,"phase":3,"quadratic_rows":[2,19,384,48,58,24,192,68,260]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":536,"rank":1,"right":{"linear_Z4":[0,0,0,1,3,0,2,0,0],"matrix_rows":[8,1,18,4,88,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,0,88,26,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":636,"old":536,"rank":1,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,0],"matrix_rows":[4,1,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,35,68,132,257,2,1,8,12],"offset":0,"phase":0,"quadratic_rows":[2,3,8,12,0,0,0,0,0]},"new":800,"old":536,"rank":4,"right":{"linear_Z4":[2,0,0,3,3,3,1,2,3],"matrix_rows":[114,66,396,384,19,96,256,392,64],"offset":119,"phase":0,"quadratic_rows":[18,65,136,12,49,48,66,260,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":122,"old":537,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,2,1,2],"matrix_rows":[399,321,322,260,328,16,32,256,384],"offset":0,"phase":0,"quadratic_rows":[207,207,143,207,0,0,11,143,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":638,"old":537,"rank":1,"right":{"linear_Z4":[2,2,1,2,0,0,1,1,2],"matrix_rows":[452,1,2,268,256,272,288,320,384],"offset":102,"phase":0,"quadratic_rows":[0,0,204,4,0,0,196,196,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,35,65,130,258,2,4,8,15],"offset":0,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]},"new":799,"old":537,"rank":4,"right":{"linear_Z4":[2,2,0,0,0,0,0,0,1],"matrix_rows":[39,299,320,384,261,262,288,32,48],"offset":0,"phase":0,"quadratic_rows":[8,8,256,259,0,0,256,256,460]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":538,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":585,"old":538,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,2,0,0],"matrix_rows":[79,65,66,68,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[15,15,15,15,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,35,75,12,133,6,4,261,5],"offset":0,"phase":0,"quadratic_rows":[12,12,15,15,0,0,0,0,0]},"new":775,"old":538,"rank":4,"right":{"linear_Z4":[2,2,3,1,0,0,0,0,0],"matrix_rows":[334,126,376,372,19,288,380,256,384],"offset":220,"phase":1,"quadratic_rows":[18,1,316,316,13,12,0,0,12]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":151,"old":539,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,2,0,0],"matrix_rows":[21,321,2,324,8,336,32,256,384],"offset":1,"phase":1,"quadratic_rows":[341,0,341,0,341,0,21,0,21]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":587,"old":539,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[17,33,68,3,130,2,8,268,12],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":777,"old":539,"rank":4,"right":{"linear_Z4":[3,3,0,1,0,0,0,0,2],"matrix_rows":[27,24,260,64,41,58,256,32,384],"offset":71,"phase":2,"quadratic_rows":[51,35,0,24,9,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":540,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,65,2,196,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":644,"old":540,"rank":1,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,0],"matrix_rows":[4,1,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,35,68,132,257,2,8,12,1],"offset":0,"phase":0,"quadratic_rows":[2,3,8,12,0,0,0,0,0]},"new":804,"old":540,"rank":4,"right":{"linear_Z4":[2,0,0,3,3,3,2,3,1],"matrix_rows":[306,258,204,192,19,288,128,200,256],"offset":119,"phase":0,"quadratic_rows":[18,257,72,12,49,48,132,192,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":541,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,2],"matrix_rows":[260,65,2,324,8,80,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":646,"old":541,"rank":1,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,0],"matrix_rows":[4,1,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,35,68,132,257,2,8,1,12],"offset":0,"phase":0,"quadratic_rows":[2,3,8,12,0,0,0,0,0]},"new":803,"old":541,"rank":4,"right":{"linear_Z4":[2,0,0,3,3,3,2,1,3],"matrix_rows":[178,130,332,320,19,160,256,328,128],"offset":119,"phase":0,"quadratic_rows":[18,129,72,12,49,48,260,130,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":542,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":609,"old":542,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,3,2],"matrix_rows":[385,257,2,4,8,16,32,192,256],"offset":384,"phase":2,"quadratic_rows":[129,0,0,0,0,0,128,193,0]}},{"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[25,32,70,2,132,4,1,264,8],"offset":0,"phase":0,"quadratic_rows":[9,6,2,1,0,0,0,0,0]},"new":787,"old":542,"rank":4,"right":{"linear_Z4":[2,2,0,3,0,1,3,0,3],"matrix_rows":[257,44,36,449,321,14,32,48,256],"offset":102,"phase":0,"quadratic_rows":[384,12,34,42,0,44,192,65,257]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":543,"rank":1,"right":{"linear_Z4":[3,0,1,1,0,0,0,3,0],"matrix_rows":[173,257,2,292,296,16,256,64,384],"offset":89,"phase":0,"quadratic_rows":[429,0,397,397,0,385,0,429,173]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":611,"old":543,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,3,0,3,0],"matrix_rows":[45,257,130,260,392,16,288,64,256],"offset":1,"phase":1,"quadratic_rows":[301,128,301,429,0,301,0,138,45]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,36,68,130,258,8,2,6,13],"offset":0,"phase":0,"quadratic_rows":[13,6,15,13,0,0,0,0,0]},"new":789,"old":543,"rank":4,"right":{"linear_Z4":[0,1,1,0,0,0,0,1,2],"matrix_rows":[65,200,398,288,320,202,196,64,80],"offset":17,"phase":0,"quadratic_rows":[256,326,334,452,0,256,398,456,239]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":544,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":620,"old":544,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,2,0,0],"matrix_rows":[72,1,2,12,64,80,32,128,256],"offset":61,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[17,34,66,130,2,4,256,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,0,9,0,0,0,0,0]},"new":792,"old":544,"rank":4,"right":{"linear_Z4":[0,3,2,3,0,2,0,0,1],"matrix_rows":[1,10,32,384,256,22,16,24,64],"offset":23,"phase":2,"quadratic_rows":[256,30,2,26,10,0,0,256,385]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":545,"rank":1,"right":{"linear_Z4":[3,1,0,1,0,0,0,3,0],"matrix_rows":[203,257,322,4,328,16,32,256,384],"offset":149,"phase":0,"quadratic_rows":[459,395,0,395,0,0,385,459,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":622,"old":545,"rank":1,"right":{"linear_Z4":[3,2,2,1,0,0,3,3,2],"matrix_rows":[457,257,2,12,256,272,288,320,384],"offset":125,"phase":0,"quadratic_rows":[201,0,8,205,0,0,201,201,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[21,32,71,130,261,5,9,1,10],"offset":0,"phase":0,"quadratic_rows":[11,13,6,11,0,0,0,0,0]},"new":791,"old":545,"rank":4,"right":{"linear_Z4":[0,2,2,1,0,3,2,1,3],"matrix_rows":[257,300,449,320,229,14,288,256,48],"offset":486,"phase":2,"quadratic_rows":[36,12,227,42,0,237,36,420,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":546,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,2,0,0],"matrix_rows":[11,321,322,4,328,16,32,256,384],"offset":1,"phase":1,"quadratic_rows":[331,331,0,331,0,0,11,0,11]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":601,"old":546,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[17,34,66,132,4,6,8,265,9],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":783,"old":546,"rank":4,"right":{"linear_Z4":[0,3,3,0,0,1,0,0,2],"matrix_rows":[257,46,40,64,256,50,60,16,384],"offset":23,"phase":2,"quadratic_rows":[0,30,22,34,6,40,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":209,"old":547,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":603,"old":547,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,3,2,0,0],"matrix_rows":[103,65,66,68,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[39,39,39,0,0,39,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,0,0,0,0,0],"matrix_rows":[30,32,70,131,5,9,1,259,3],"offset":0,"phase":0,"quadratic_rows":[15,9,9,15,0,0,0,0,0]},"new":785,"old":547,"rank":4,"right":{"linear_Z4":[3,2,2,0,0,1,0,0,0],"matrix_rows":[376,357,125,345,377,14,272,256,384],"offset":185,"phase":1,"quadratic_rows":[313,12,2,35,33,313,0,0,33]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":548,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":628,"old":548,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,0,2],"matrix_rows":[264,1,2,12,256,272,32,64,128],"offset":61,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[17,34,66,130,2,4,8,9,256],"offset":0,"phase":0,"quadratic_rows":[9,2,0,9,0,0,0,0,0]},"new":796,"old":548,"rank":4,"right":{"linear_Z4":[0,3,2,3,0,2,0,1,0],"matrix_rows":[1,10,32,192,128,22,16,24,256],"offset":23,"phase":2,"quadratic_rows":[128,30,2,26,10,0,128,193,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":549,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,2],"matrix_rows":[257,321,66,4,72,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":630,"old":549,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,2,0],"matrix_rows":[136,1,2,12,128,144,32,64,256],"offset":61,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[17,34,66,130,2,4,8,256,9],"offset":0,"phase":0,"quadratic_rows":[9,2,0,9,0,0,0,0,0]},"new":795,"old":549,"rank":4,"right":{"linear_Z4":[0,3,2,3,0,2,0,0,1],"matrix_rows":[1,10,32,320,256,22,16,24,128],"offset":23,"phase":2,"quadratic_rows":[256,30,2,26,10,0,256,0,321]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":550,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,3,0,3,2],"matrix_rows":[422,9,258,268,256,272,288,64,384],"offset":61,"phase":1,"quadratic_rows":[8,166,174,13,0,166,0,166,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":625,"old":550,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,3,0,3,0],"matrix_rows":[45,257,130,388,264,16,288,64,256],"offset":1,"phase":1,"quadratic_rows":[301,128,429,301,0,301,0,134,45]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,36,70,132,262,8,6,2,13],"offset":0,"phase":0,"quadratic_rows":[13,6,15,13,0,0,0,0,0]},"new":795,"old":550,"rank":4,"right":{"linear_Z4":[0,1,3,1,0,0,1,0,2],"matrix_rows":[65,196,330,288,320,198,64,200,80],"offset":17,"phase":0,"quadratic_rows":[256,398,70,394,0,256,196,74,43]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":238,"old":551,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":627,"old":551,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,3,2],"matrix_rows":[416,1,2,4,8,16,288,192,256],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,0,160,128,224,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[17,32,66,3,1,140,4,264,8],"offset":0,"phase":0,"quadratic_rows":[2,3,12,4,0,0,0,0,0]},"new":797,"old":551,"rank":4,"right":{"linear_Z4":[0,2,1,1,2,2,3,0,3],"matrix_rows":[9,20,288,480,16,6,24,352,256],"offset":98,"phase":3,"quadratic_rows":[24,4,14,29,9,384,192,96,288]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":552,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":604,"old":552,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,3,0,1,2],"matrix_rows":[416,33,2,4,8,16,256,64,384],"offset":66,"phase":2,"quadratic_rows":[32,0,0,0,0,161,0,160,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,6,1,9],"offset":0,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]},"new":784,"old":552,"rank":4,"right":{"linear_Z4":[3,2,0,1,0,0,2,2,3],"matrix_rows":[384,92,20,417,385,14,64,80,256],"offset":426,"phase":3,"quadratic_rows":[33,12,2,10,0,129,0,288,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":553,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,3,0,3,0],"matrix_rows":[230,1,322,324,8,16,288,256,384],"offset":141,"phase":0,"quadratic_rows":[0,422,422,0,0,486,416,486,230]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":606,"old":553,"rank":1,"right":{"linear_Z4":[2,3,3,0,0,1,3,3,0],"matrix_rows":[230,33,258,260,8,16,256,320,384],"offset":67,"phase":3,"quadratic_rows":[32,486,486,0,0,487,486,486,230]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,67,129,1,258,4,8,14],"offset":0,"phase":0,"quadratic_rows":[0,14,14,14,0,0,0,0,0]},"new":783,"old":553,"rank":4,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,0],"matrix_rows":[23,38,320,384,16,306,308,24,256],"offset":1,"phase":1,"quadratic_rows":[6,257,257,0,0,256,256,256,230]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":554,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":617,"old":554,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,3,2,0,0],"matrix_rows":[107,65,66,4,72,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[43,43,0,43,0,43,0,0,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[26,32,71,130,5,9,1,263,7],"offset":0,"phase":0,"quadratic_rows":[11,13,6,11,0,0,0,0,0]},"new":791,"old":554,"rank":4,"right":{"linear_Z4":[2,2,0,1,0,0,3,0,1],"matrix_rows":[372,361,276,341,373,14,256,272,384],"offset":121,"phase":1,"quadratic_rows":[328,12,330,127,328,328,125,0,309]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":267,"old":555,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,2,0,0],"matrix_rows":[38,1,322,324,8,16,352,256,384],"offset":1,"phase":1,"quadratic_rows":[0,358,358,0,0,358,38,0,38]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":619,"old":555,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[18,32,67,1,2,132,8,268,12],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":793,"old":555,"rank":4,"right":{"linear_Z4":[1,2,0,1,1,0,0,0,2],"matrix_rows":[28,25,288,64,29,14,16,256,384],"offset":247,"phase":1,"quadratic_rows":[5,12,27,30,28,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":556,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,66,68,8,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":612,"old":556,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,3,1,2,0],"matrix_rows":[224,33,2,4,8,16,128,192,256],"offset":66,"phase":2,"quadratic_rows":[32,0,0,0,0,97,96,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,1,9,6],"offset":0,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]},"new":788,"old":556,"rank":4,"right":{"linear_Z4":[3,2,0,1,0,0,2,3,2],"matrix_rows":[192,284,20,225,193,14,256,272,128],"offset":426,"phase":3,"quadratic_rows":[33,12,2,10,0,65,160,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":557,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,2],"matrix_rows":[288,1,66,68,8,16,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":614,"old":557,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,3,1,0,2],"matrix_rows":[352,33,2,4,8,16,256,320,128],"offset":66,"phase":2,"quadratic_rows":[32,0,0,0,0,97,96,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,1,6,9],"offset":0,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]},"new":787,"old":557,"rank":4,"right":{"linear_Z4":[3,2,0,1,0,0,2,2,3],"matrix_rows":[320,156,20,353,321,14,128,144,256],"offset":426,"phase":3,"quadratic_rows":[33,12,2,10,0,65,288,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":558,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":641,"old":558,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,3,2],"matrix_rows":[392,1,2,4,264,16,32,192,256],"offset":384,"phase":2,"quadratic_rows":[0,0,0,136,0,0,128,200,0]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[16,33,66,140,3,2,4,264,8],"offset":0,"phase":0,"quadratic_rows":[3,1,12,4,0,0,0,0,0]},"new":803,"old":558,"rank":4,"right":{"linear_Z4":[2,1,0,2,1,2,3,0,3],"matrix_rows":[34,20,264,456,3,48,32,328,256],"offset":49,"phase":3,"quadratic_rows":[2,19,48,384,54,20,192,72,264]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":559,"rank":1,"right":{"linear_Z4":[1,1,0,3,3,0,0,3,2],"matrix_rows":[395,257,274,20,264,256,288,64,384],"offset":103,"phase":1,"quadratic_rows":[139,155,16,139,22,0,0,139,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":643,"old":559,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,0,3,0],"matrix_rows":[30,129,386,260,264,272,32,64,256],"offset":1,"phase":1,"quadratic_rows":[128,414,286,286,286,0,0,131,30]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,68,8,130,259,3,1,14],"offset":0,"phase":0,"quadratic_rows":[3,15,14,14,0,0,0,0,0]},"new":805,"old":559,"rank":4,"right":{"linear_Z4":[1,3,0,0,1,0,1,0,2],"matrix_rows":[194,337,68,264,195,64,320,208,96],"offset":68,"phase":0,"quadratic_rows":[403,67,256,256,401,0,194,81,29]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":560,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":588,"old":560,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,0,2,3,0,0,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[17,33,2,68,129,1,256,8,12],"offset":0,"phase":0,"quadratic_rows":[1,0,12,12,0,0,0,0,0]},"new":776,"old":560,"rank":4,"right":{"linear_Z4":[3,3,2,0,2,0,0,0,1],"matrix_rows":[3,4,8,384,49,34,256,32,64],"offset":71,"phase":2,"quadratic_rows":[51,35,0,256,1,3,0,256,392]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":296,"old":561,"rank":1,"right":{"linear_Z4":[1,1,0,3,0,0,0,3,0],"matrix_rows":[203,321,322,4,264,16,32,256,384],"offset":135,"phase":0,"quadratic_rows":[395,395,0,459,0,0,392,459,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":590,"old":561,"rank":1,"right":{"linear_Z4":[3,3,2,0,0,2,0,0,0],"matrix_rows":[39,33,34,32,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[7,7,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[16,33,64,134,1,256,10,2,15],"offset":0,"phase":0,"quadratic_rows":[14,3,13,13,0,0,0,0,0]},"new":775,"old":561,"rank":4,"right":{"linear_Z4":[2,3,2,2,3,0,2,1,2],"matrix_rows":[258,216,24,320,3,16,204,272,32],"offset":244,"phase":1,"quadratic_rows":[2,275,200,276,474,0,276,148,90]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":562,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,2,0,0],"matrix_rows":[11,321,322,4,328,16,32,256,384],"offset":1,"phase":1,"quadratic_rows":[331,331,0,331,0,0,11,0,11]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":633,"old":562,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[17,33,3,68,130,2,8,268,12],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":799,"old":562,"rank":4,"right":{"linear_Z4":[3,3,1,0,0,0,0,0,2],"matrix_rows":[23,20,264,64,37,54,256,32,384],"offset":71,"phase":2,"quadratic_rows":[51,35,20,0,5,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":325,"old":563,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":635,"old":563,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,0,2,0,0],"matrix_rows":[93,65,2,68,72,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[29,0,29,29,29,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[30,46,7,11,65,1,3,128,256],"offset":0,"phase":0,"quadratic_rows":[14,13,3,3,0,0,0,0,0]},"new":801,"old":563,"rank":4,"right":{"linear_Z4":[3,3,0,0,2,0,1,0,0],"matrix_rows":[92,95,23,27,125,110,32,128,256],"offset":12,"phase":2,"quadratic_rows":[47,63,3,3,66,3,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":564,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,65,66,4,200,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":596,"old":564,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,0,2,3,0,0,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[17,33,2,68,129,1,8,12,256],"offset":0,"phase":0,"quadratic_rows":[1,0,12,12,0,0,0,0,0]},"new":780,"old":564,"rank":4,"right":{"linear_Z4":[3,3,2,0,2,0,0,1,0],"matrix_rows":[3,4,8,192,49,34,128,32,256],"offset":71,"phase":2,"quadratic_rows":[51,35,0,128,1,3,128,200,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":565,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,2],"matrix_rows":[264,65,66,4,328,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":598,"old":565,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,0,2,3,0,0,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[17,33,2,68,129,1,8,256,12],"offset":0,"phase":0,"quadratic_rows":[1,0,12,12,0,0,0,0,0]},"new":779,"old":565,"rank":4,"right":{"linear_Z4":[3,3,2,0,2,0,0,0,1],"matrix_rows":[3,4,8,320,49,34,256,32,128],"offset":71,"phase":2,"quadratic_rows":[51,35,0,256,1,3,256,0,328]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":354,"old":566,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,34,65,4,129,3,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":574,"old":566,"rank":3,"right":{"linear_Z4":[1,0,1,2,2,0,2,0,2],"matrix_rows":[10,15,16,329,66,324,256,288,384],"offset":5,"phase":2,"quadratic_rows":[327,69,335,68,0,0,15,0,5]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,20,35,67,6,131,2,259,3],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":653,"old":566,"rank":3,"right":{"linear_Z4":[2,1,2,0,1,0,2,0,2],"matrix_rows":[5,85,74,265,90,260,256,288,384],"offset":234,"phase":1,"quadratic_rows":[344,18,336,17,31,0,5,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":567,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,2,0],"matrix_rows":[130,65,194,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,66,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,37,65,128,4,258,2,1],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":578,"old":567,"rank":3,"right":{"linear_Z4":[2,1,0,3,2,3,1,2,1],"matrix_rows":[300,130,260,13,194,288,256,80,128],"offset":447,"phase":0,"quadratic_rows":[12,66,257,41,64,40,82,0,260]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,32,64,2,128,4,5,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"new":657,"old":567,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,0,0,1,0],"matrix_rows":[2,16,192,1,128,4,8,32,256],"offset":19,"phase":1,"quadratic_rows":[0,128,0,0,0,0,128,194,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":568,"rank":1,"right":{"linear_Z4":[0,3,1,1,0,0,0,3,0],"matrix_rows":[158,1,258,276,280,256,32,64,384],"offset":57,"phase":0,"quadratic_rows":[0,414,398,398,386,0,0,414,158]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[12,23,36,67,134,259,3,2,7],"offset":0,"phase":0,"quadratic_rows":[2,5,2,0,0,0,0,0,0]},"new":575,"old":568,"rank":3,"right":{"linear_Z4":[3,1,3,3,3,0,0,0,1],"matrix_rows":[210,258,455,329,410,324,64,320,96],"offset":362,"phase":1,"quadratic_rows":[143,399,135,155,24,0,0,15,258]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[10,19,34,65,132,257,1,3,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":649,"old":568,"rank":3,"right":{"linear_Z4":[1,2,1,0,0,0,0,2,3],"matrix_rows":[74,271,80,201,130,196,64,320,96],"offset":0,"phase":0,"quadratic_rows":[455,453,463,452,256,0,271,15,351]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":569,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,20,35,65,128,2,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":582,"old":569,"rank":3,"right":{"linear_Z4":[2,1,0,3,2,3,1,3,2],"matrix_rows":[108,68,386,13,258,96,64,144,256],"offset":427,"phase":2,"quadratic_rows":[12,130,65,41,128,40,68,146,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,22,33,65,2,1,128,260,4],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":659,"old":569,"rank":3,"right":{"linear_Z4":[3,2,2,3,3,0,0,0,3],"matrix_rows":[9,258,402,37,274,32,40,64,256],"offset":1,"phase":1,"quadratic_rows":[45,384,1,41,144,9,0,18,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":570,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,2,0],"matrix_rows":[130,1,146,20,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,64,2,128,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":579,"old":570,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,1,0],"matrix_rows":[2,144,64,1,128,4,8,32,256],"offset":21,"phase":1,"quadratic_rows":[0,128,0,0,128,0,0,146,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,37,1,66,132,2,256,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":651,"old":570,"rank":3,"right":{"linear_Z4":[2,3,0,3,3,0,2,0,1],"matrix_rows":[268,82,260,13,66,256,80,288,128],"offset":47,"phase":1,"quadratic_rows":[12,18,257,265,18,0,0,0,268]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":412,"old":571,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,0,0,0,0],"matrix_rows":[14,1,274,276,280,256,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,286,286,286,14,0,0,0,14]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,66,4,128,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":583,"old":571,"rank":3,"right":{"linear_Z4":[0,0,3,3,0,0,2,0,2],"matrix_rows":[258,76,16,1,256,68,72,32,384],"offset":19,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,64,2,4,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":655,"old":571,"rank":3,"right":{"linear_Z4":[2,0,0,3,0,3,2,0,0],"matrix_rows":[44,4,64,13,2,32,16,128,256],"offset":47,"phase":1,"quadratic_rows":[12,0,1,41,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":772,"old":572,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":774,"old":572,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,36,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":483,"old":573,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[336,1,2,4,8,256,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,64,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":773,"old":573,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,3,0,2],"matrix_rows":[320,1,2,4,8,80,32,256,384],"offset":289,"phase":3,"quadratic_rows":[0,0,0,0,64,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":772,"old":574,"rank":1,"right":{"linear_Z4":[2,2,0,0,0,0,2,0,0],"matrix_rows":[68,5,6,64,8,16,96,128,256],"offset":15,"phase":0,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":808,"old":574,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[7,65,64,68,8,16,32,128,256],"offset":5,"phase":0,"quadratic_rows":[71,69,71,0,0,0,7,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":456,"old":575,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,5,6,256,8,16,288,64,128],"offset":14,"phase":3,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":807,"old":575,"rank":1,"right":{"linear_Z4":[3,2,3,0,0,0,0,2,0],"matrix_rows":[7,129,128,132,136,144,160,192,256],"offset":94,"phase":3,"quadratic_rows":[135,133,135,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":527,"old":576,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,32,192,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":773,"old":576,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[10,1,8,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":500,"old":577,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,36,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":772,"old":577,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,320,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":773,"old":578,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[82,1,64,4,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":809,"old":578,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,0,2,0],"matrix_rows":[144,1,18,4,8,128,32,192,256],"offset":164,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":460,"old":579,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,288,64,128],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":807,"old":579,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,0,2],"matrix_rows":[264,9,2,4,256,16,288,64,128],"offset":91,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":500,"old":580,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,2,0],"matrix_rows":[144,1,2,4,8,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,16,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":774,"old":580,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[208,1,2,4,8,144,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,16,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":483,"old":581,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[10,1,8,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":527,"old":581,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":129,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":774,"old":582,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[274,1,256,4,8,272,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":809,"old":582,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,0,0,2],"matrix_rows":[272,1,18,4,8,256,32,64,384],"offset":261,"phase":3,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":461,"old":583,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":808,"old":583,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":91,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":775,"old":584,"rank":1,"right":{"linear_Z4":[2,1,2,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,288,64,128],"offset":74,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":780,"old":584,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":110,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":660,"old":585,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,2],"matrix_rows":[3,257,274,20,24,256,288,64,384],"offset":102,"phase":0,"quadratic_rows":[259,275,16,16,14,0,0,0,3]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,23,34,4,65,129,6,257,1],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":776,"old":585,"rank":3,"right":{"linear_Z4":[1,1,0,0,2,0,1,0,2],"matrix_rows":[3,23,91,337,322,64,256,288,384],"offset":34,"phase":0,"quadratic_rows":[287,271,83,83,13,0,76,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":777,"old":586,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":782,"old":586,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":22,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":661,"old":587,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,66,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":778,"old":587,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,24,320,3,48,4,32,256,384],"offset":25,"phase":3,"quadratic_rows":[2,19,0,48,58,24,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":764,"old":588,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,0,1,2],"matrix_rows":[392,1,2,12,256,16,32,64,384],"offset":24,"phase":2,"quadratic_rows":[0,0,8,140,0,0,0,136,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,68,129,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":778,"old":588,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,2,3],"matrix_rows":[66,384,396,3,64,388,256,80,32],"offset":205,"phase":3,"quadratic_rows":[2,3,12,132,0,0,0,264,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":776,"old":589,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":802,"old":589,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":103,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":765,"old":590,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,3,3,0],"matrix_rows":[203,257,258,4,256,16,32,320,384],"offset":17,"phase":0,"quadratic_rows":[459,459,0,451,0,0,459,459,203]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,65,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[7,7,7,0,0,0,0,0,0]},"new":777,"old":590,"rank":3,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[11,320,384,265,266,4,256,16,32],"offset":0,"phase":0,"quadratic_rows":[259,259,0,256,0,0,256,256,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":775,"old":591,"rank":1,"right":{"linear_Z4":[2,3,1,0,2,0,0,0,0],"matrix_rows":[22,3,16,20,8,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,7,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":801,"old":591,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,5,6,256,264,272,288,320,384],"offset":14,"phase":3,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":776,"old":592,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[67,193,194,4,8,16,32,128,256],"offset":135,"phase":0,"quadratic_rows":[131,131,0,0,0,0,128,67,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":779,"old":592,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[67,129,130,4,8,16,32,128,256],"offset":129,"phase":0,"quadratic_rows":[195,195,0,0,0,0,131,67,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":660,"old":593,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,2,0],"matrix_rows":[3,129,146,20,24,128,160,192,256],"offset":102,"phase":0,"quadratic_rows":[131,147,16,16,14,0,0,3,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,23,34,4,65,129,257,1,6],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":780,"old":593,"rank":3,"right":{"linear_Z4":[1,1,0,0,2,0,0,2,1],"matrix_rows":[3,23,283,401,386,256,128,160,192],"offset":34,"phase":0,"quadratic_rows":[159,143,275,275,13,0,0,3,268]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":778,"old":594,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[196,1,2,132,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,68,0,0,0,4,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":781,"old":594,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,1,2,196,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,68,0,0,0,4,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":661,"old":595,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[324,1,2,256,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,64,0,0,0,68,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,68,5,4,130,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":782,"old":595,"rank":3,"right":{"linear_Z4":[2,1,2,0,1,2,3,0,2],"matrix_rows":[34,320,24,3,48,68,32,256,384],"offset":315,"phase":2,"quadratic_rows":[2,19,64,48,58,24,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":770,"old":596,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,1,2,0],"matrix_rows":[200,1,2,12,128,16,32,192,256],"offset":24,"phase":2,"quadratic_rows":[0,0,8,76,0,0,72,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,68,129,256,2,6,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":782,"old":596,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,3,2],"matrix_rows":[258,192,204,3,256,196,128,272,32],"offset":205,"phase":3,"quadratic_rows":[2,3,12,68,0,0,136,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":780,"old":597,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,288,64,128],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":806,"old":597,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,288,64,128],"offset":103,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":771,"old":598,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,1,0,2],"matrix_rows":[328,1,2,12,256,16,32,320,128],"offset":24,"phase":2,"quadratic_rows":[0,0,8,76,0,0,72,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,68,129,256,2,1,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":781,"old":598,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,2,3],"matrix_rows":[130,320,332,3,128,324,256,144,32],"offset":205,"phase":3,"quadratic_rows":[2,3,12,68,0,0,264,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":779,"old":599,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,2,0],"matrix_rows":[144,17,2,4,8,128,160,64,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":805,"old":599,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,2,0],"matrix_rows":[130,3,128,4,8,16,160,64,256],"offset":103,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":783,"old":600,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":788,"old":600,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":21,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":662,"old":601,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,66,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":784,"old":601,"rank":3,"right":{"linear_Z4":[0,2,0,3,0,1,0,0,2],"matrix_rows":[44,36,320,1,14,32,48,256,384],"offset":51,"phase":0,"quadratic_rows":[0,12,34,42,0,44,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":785,"old":602,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,272,32,64,128],"offset":38,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":790,"old":602,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":62,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":663,"old":603,"rank":1,"right":{"linear_Z4":[3,1,3,2,0,3,2,0,0],"matrix_rows":[103,97,66,100,40,16,64,128,256],"offset":90,"phase":2,"quadratic_rows":[7,39,7,32,0,42,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,130,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":786,"old":603,"rank":3,"right":{"linear_Z4":[0,1,1,2,0,0,1,0,2],"matrix_rows":[15,6,110,64,330,324,256,272,384],"offset":9,"phase":0,"quadratic_rows":[78,303,295,35,0,78,97,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":766,"old":604,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[6,1,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,22,30,4,6,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,66,2,129,256,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":786,"old":604,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,3],"matrix_rows":[257,6,384,256,26,20,16,288,64],"offset":11,"phase":1,"quadratic_rows":[0,30,22,2,6,0,0,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":784,"old":605,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":794,"old":605,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":767,"old":606,"rank":1,"right":{"linear_Z4":[0,2,2,0,0,0,3,3,2],"matrix_rows":[449,256,2,4,264,272,288,320,384],"offset":63,"phase":0,"quadratic_rows":[192,0,0,0,0,0,193,193,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,34,66,128,256,5,1,6],"offset":0,"phase":0,"quadratic_rows":[5,4,7,0,0,0,0,0,0]},"new":785,"old":606,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,0,0,3,3],"matrix_rows":[192,260,320,193,6,256,264,16,32],"offset":48,"phase":2,"quadratic_rows":[192,4,6,0,0,0,257,129,320]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":783,"old":607,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[7,32,34,36,8,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[38,39,39,0,0,7,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":793,"old":607,"rank":1,"right":{"linear_Z4":[2,2,0,0,0,2,0,0,0],"matrix_rows":[36,5,6,32,40,16,64,128,256],"offset":15,"phase":0,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":784,"old":608,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[193,129,2,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":787,"old":608,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,2,4,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":662,"old":609,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[321,256,2,4,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[64,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,2,68,4,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":788,"old":609,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,1,3,0,2],"matrix_rows":[320,44,36,65,14,32,48,256,384],"offset":319,"phase":3,"quadratic_rows":[64,12,34,42,0,44,65,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":786,"old":610,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[70,1,194,196,8,16,32,128,256],"offset":141,"phase":0,"quadratic_rows":[0,134,134,0,0,0,128,70,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":789,"old":610,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[70,1,130,132,8,16,32,128,256],"offset":129,"phase":0,"quadratic_rows":[0,198,198,0,0,0,134,70,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":663,"old":611,"rank":1,"right":{"linear_Z4":[3,1,3,2,0,3,0,0,2],"matrix_rows":[295,289,258,292,40,16,256,64,128],"offset":90,"phase":2,"quadratic_rows":[7,39,7,32,0,42,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,130,4,258,2,5],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":790,"old":611,"rank":3,"right":{"linear_Z4":[0,1,1,2,0,0,0,2,1],"matrix_rows":[15,6,302,256,394,388,128,144,192],"offset":9,"phase":0,"quadratic_rows":[270,175,167,35,0,270,0,6,289]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":768,"old":612,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[6,1,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,22,30,4,6,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,66,2,129,4,5,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":790,"old":612,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,0,0,3,0],"matrix_rows":[129,6,192,128,26,20,16,160,256],"offset":11,"phase":1,"quadratic_rows":[0,30,22,2,6,0,128,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":788,"old":613,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":798,"old":613,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":769,"old":614,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[6,1,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,22,30,4,6,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,66,2,129,4,256,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":789,"old":614,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,3],"matrix_rows":[257,6,320,256,26,20,16,288,128],"offset":11,"phase":1,"quadratic_rows":[0,30,22,2,6,0,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":787,"old":615,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":797,"old":615,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":791,"old":616,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,0,0,2],"matrix_rows":[264,1,10,4,256,272,32,64,128],"offset":38,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":796,"old":616,"rank":1,"right":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,272,288,320,384],"offset":62,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":664,"old":617,"rank":1,"right":{"linear_Z4":[3,1,2,3,0,3,2,0,0],"matrix_rows":[107,97,66,36,104,16,64,128,256],"offset":90,"phase":2,"quadratic_rows":[11,43,32,11,0,38,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,34,71,130,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":792,"old":617,"rank":3,"right":{"linear_Z4":[0,1,2,1,0,0,1,0,2],"matrix_rows":[15,10,110,64,326,256,328,272,384],"offset":9,"phase":0,"quadratic_rows":[78,303,35,299,0,78,97,0,10]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":793,"old":618,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":798,"old":618,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":665,"old":619,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,3,1,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":794,"old":619,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,0,0,0,2],"matrix_rows":[9,20,320,16,6,24,32,256,384],"offset":50,"phase":3,"quadratic_rows":[24,4,14,29,9,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":766,"old":620,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,33,2,4,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,257,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":794,"old":620,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,3,2,2,3],"matrix_rows":[417,68,384,256,6,64,72,16,416],"offset":91,"phase":3,"quadratic_rows":[160,4,6,0,0,33,0,257,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":786,"old":621,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":61,"phase":1,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":792,"old":621,"rank":1,"right":{"linear_Z4":[0,2,1,2,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":61,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":767,"old":622,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,3,3,0],"matrix_rows":[199,256,258,260,8,16,32,320,384],"offset":3,"phase":0,"quadratic_rows":[454,455,455,0,0,0,455,455,199]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,65,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,7,7,0,0,0,0,0,0]},"new":793,"old":622,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[260,320,384,5,6,256,264,16,32],"offset":89,"phase":0,"quadratic_rows":[4,4,3,0,0,0,256,256,192]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":785,"old":623,"rank":1,"right":{"linear_Z4":[1,2,3,2,0,0,0,0,0],"matrix_rows":[13,9,6,8,16,32,64,128,256],"offset":12,"phase":2,"quadratic_rows":[5,4,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":791,"old":623,"rank":1,"right":{"linear_Z4":[1,2,1,2,0,0,0,0,0],"matrix_rows":[9,13,6,8,16,32,64,128,256],"offset":15,"phase":0,"quadratic_rows":[5,4,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":792,"old":624,"rank":1,"right":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[74,1,194,4,200,16,32,128,256],"offset":149,"phase":0,"quadratic_rows":[0,138,0,138,0,0,128,74,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":795,"old":624,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,0],"matrix_rows":[74,1,130,4,136,16,32,128,256],"offset":129,"phase":0,"quadratic_rows":[0,202,0,202,0,0,138,74,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":664,"old":625,"rank":1,"right":{"linear_Z4":[3,1,2,3,0,3,0,0,2],"matrix_rows":[299,289,258,36,296,16,256,64,128],"offset":90,"phase":2,"quadratic_rows":[11,43,32,11,0,38,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,34,71,130,4,258,2,5],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":796,"old":625,"rank":3,"right":{"linear_Z4":[0,1,2,1,0,0,0,2,1],"matrix_rows":[15,10,302,256,390,128,392,144,192],"offset":9,"phase":0,"quadratic_rows":[270,175,35,171,0,270,0,10,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":794,"old":626,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,2,0],"matrix_rows":[224,1,2,4,8,16,160,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,96,32,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":797,"old":626,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,2,4,8,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,96,32,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":665,"old":627,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[352,1,2,4,8,16,256,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,64,96,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,3,1,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":798,"old":627,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,2,3,0,2],"matrix_rows":[9,20,320,16,6,24,96,256,384],"offset":374,"phase":2,"quadratic_rows":[24,4,14,29,9,64,96,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":768,"old":628,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,33,2,4,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,257,4,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":798,"old":628,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,3,2,3,2],"matrix_rows":[225,260,192,128,6,256,264,16,224],"offset":91,"phase":3,"quadratic_rows":[96,4,6,0,0,33,129,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":790,"old":629,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,0,2],"matrix_rows":[264,1,10,4,256,272,32,64,128],"offset":61,"phase":1,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":796,"old":629,"rank":1,"right":{"linear_Z4":[0,2,1,2,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,272,32,64,128],"offset":61,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":769,"old":630,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,33,2,4,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,257,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":797,"old":630,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,3,2,2,3],"matrix_rows":[353,132,320,256,6,128,136,16,352],"offset":91,"phase":3,"quadratic_rows":[96,4,6,0,0,33,257,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":789,"old":631,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,2,0],"matrix_rows":[136,1,10,4,128,144,32,64,256],"offset":61,"phase":1,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":795,"old":631,"rank":1,"right":{"linear_Z4":[0,2,1,2,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,144,32,64,256],"offset":61,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":799,"old":632,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":804,"old":632,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":666,"old":633,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":800,"old":633,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,20,320,3,48,32,8,256,384],"offset":25,"phase":3,"quadratic_rows":[2,19,48,0,54,20,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":801,"old":634,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,288,64,128],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":806,"old":634,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,2],"matrix_rows":[258,3,256,260,264,16,288,320,384],"offset":511,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":667,"old":635,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,1,18,20,24,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[0,16,16,16,30,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,17,34,4,71,129,6,257,1],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":802,"old":635,"rank":3,"right":{"linear_Z4":[1,2,0,0,1,0,1,0,2],"matrix_rows":[17,23,91,323,256,64,336,288,384],"offset":34,"phase":0,"quadratic_rows":[287,13,83,83,285,0,76,0,17]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":764,"old":636,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,1,18,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":802,"old":636,"rank":3,"right":{"linear_Z4":[3,2,0,0,3,0,0,0,3],"matrix_rows":[17,260,384,35,32,256,264,48,64],"offset":35,"phase":1,"quadratic_rows":[51,1,0,0,49,17,0,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":778,"old":637,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":800,"old":637,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":765,"old":638,"rank":1,"right":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[7,33,34,32,40,48,64,128,256],"offset":17,"phase":0,"quadratic_rows":[39,39,35,0,0,7,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,35,67,131,3,261,1,4],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":801,"old":638,"rank":3,"right":{"linear_Z4":[2,2,3,0,0,0,3,2,3],"matrix_rows":[455,7,64,229,230,32,40,48,256],"offset":295,"phase":1,"quadratic_rows":[292,292,487,0,0,7,196,324,391]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":777,"old":639,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,10,8,16,32,64,128,256],"offset":9,"phase":0,"quadratic_rows":[15,15,11,7,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":799,"old":639,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[7,13,14,8,16,32,64,128,256],"offset":15,"phase":0,"quadratic_rows":[11,11,8,7,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":800,"old":640,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[200,1,2,4,136,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":803,"old":640,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,1,2,4,200,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":666,"old":641,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[328,1,2,4,256,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,0,0,72,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":804,"old":641,"rank":3,"right":{"linear_Z4":[2,1,0,2,1,2,3,0,2],"matrix_rows":[34,20,320,3,48,32,72,256,384],"offset":349,"phase":2,"quadratic_rows":[2,19,48,64,54,20,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":802,"old":642,"rank":1,"right":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[81,193,2,4,8,208,32,128,256],"offset":163,"phase":0,"quadratic_rows":[145,0,0,0,145,0,128,81,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":805,"old":642,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,0],"matrix_rows":[81,129,2,4,8,144,32,128,256],"offset":129,"phase":0,"quadratic_rows":[209,0,0,0,209,0,145,81,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":667,"old":643,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,0,2],"matrix_rows":[272,1,18,20,24,256,288,64,128],"offset":103,"phase":1,"quadratic_rows":[0,16,16,16,30,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,17,34,4,71,129,257,1,6],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":806,"old":643,"rank":3,"right":{"linear_Z4":[1,2,0,0,1,0,0,2,1],"matrix_rows":[17,23,283,387,128,256,400,160,192],"offset":34,"phase":0,"quadratic_rows":[159,13,275,275,157,0,0,17,268]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":770,"old":644,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,0,2],"matrix_rows":[272,1,18,4,8,256,288,64,128],"offset":103,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,4,6,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":806,"old":644,"rank":3,"right":{"linear_Z4":[3,2,0,0,3,0,0,3,0],"matrix_rows":[17,132,192,35,32,128,136,48,256],"offset":35,"phase":1,"quadratic_rows":[51,1,0,0,49,17,128,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":782,"old":645,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":804,"old":645,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":771,"old":646,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,2,0],"matrix_rows":[144,1,18,4,8,128,160,64,256],"offset":103,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,4,256,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":805,"old":646,"rank":3,"right":{"linear_Z4":[3,2,0,0,3,0,0,0,3],"matrix_rows":[17,260,320,35,32,256,264,48,128],"offset":35,"phase":1,"quadratic_rows":[51,1,0,0,49,17,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":781,"old":647,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":803,"old":647,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":521,"old":648,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,288,64,128],"offset":70,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":807,"old":648,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":94,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":504,"old":649,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[7,129,128,132,8,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[135,133,135,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":772,"old":649,"rank":1,"right":{"linear_Z4":[2,2,0,0,0,0,0,2,0],"matrix_rows":[132,5,6,128,8,16,160,64,256],"offset":15,"phase":0,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":526,"old":650,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,33,2,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":807,"old":650,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,41,2,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,37,1,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":484,"old":651,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":773,"old":651,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":504,"old":652,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[69,129,2,132,8,16,32,128,256],"offset":129,"phase":0,"quadratic_rows":[197,0,197,0,0,0,133,69,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":808,"old":652,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[69,193,2,196,8,16,32,128,256],"offset":139,"phase":0,"quadratic_rows":[133,0,133,0,0,0,128,69,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":456,"old":653,"rank":1,"right":{"linear_Z4":[2,1,1,0,0,2,0,0,0],"matrix_rows":[34,5,38,32,8,16,64,128,256],"offset":15,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":521,"old":653,"rank":1,"right":{"linear_Z4":[2,1,3,0,0,2,0,0,0],"matrix_rows":[38,5,34,32,8,16,64,128,256],"offset":10,"phase":2,"quadratic_rows":[4,6,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":498,"old":654,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":808,"old":654,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,272,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":478,"old":655,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":774,"old":655,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":484,"old":656,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[82,1,66,4,8,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":809,"old":656,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,2,0,0],"matrix_rows":[66,1,82,4,8,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":460,"old":657,"rank":1,"right":{"linear_Z4":[3,0,2,3,0,0,0,0,0],"matrix_rows":[9,37,2,32,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,1,41,0,9,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":526,"old":657,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,0,0,0,2],"matrix_rows":[264,1,2,12,256,16,288,64,128],"offset":91,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":478,"old":658,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[274,1,258,4,8,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":809,"old":658,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,2],"matrix_rows":[258,1,274,4,8,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":461,"old":659,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,272,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":498,"old":659,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,17,2,35,67,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":866,"old":660,"rank":2,"right":{"linear_Z4":[3,3,2,2,0,0,0,0,1],"matrix_rows":[4,267,5,6,256,272,288,320,384],"offset":114,"phase":0,"quadratic_rows":[271,271,259,259,0,0,0,0,271]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":872,"old":660,"rank":1,"right":{"linear_Z4":[0,0,3,2,0,0,0,0,2],"matrix_rows":[260,1,2,268,256,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,4,71,6,135,263,7],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"new":1035,"old":660,"rank":3,"right":{"linear_Z4":[2,1,2,2,0,3,0,0,2],"matrix_rows":[290,4,40,3,288,32,272,320,384],"offset":108,"phase":2,"quadratic_rows":[2,3,32,32,0,44,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,33,1,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":867,"old":661,"rank":2,"right":{"linear_Z4":[2,3,0,1,2,0,0,0,2],"matrix_rows":[26,320,3,16,4,24,32,256,384],"offset":142,"phase":2,"quadratic_rows":[2,11,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":873,"old":661,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,2,0,0,0],"matrix_rows":[43,33,34,4,32,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[11,11,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,66,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":1035,"old":661,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,24,320,3,48,4,32,256,384],"offset":157,"phase":3,"quadratic_rows":[2,19,0,48,58,24,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":870,"old":662,"rank":2,"right":{"linear_Z4":[0,2,1,2,0,2,0,0,2],"matrix_rows":[36,320,1,6,32,8,48,256,384],"offset":251,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":876,"old":662,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,2,0,0,0],"matrix_rows":[38,1,34,44,32,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,14,4,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,66,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":1036,"old":662,"rank":3,"right":{"linear_Z4":[0,2,0,3,0,1,0,0,2],"matrix_rows":[44,36,320,1,14,32,48,256,384],"offset":183,"phase":0,"quadratic_rows":[0,12,34,42,0,44,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,34,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":871,"old":663,"rank":2,"right":{"linear_Z4":[3,2,2,1,0,3,0,0,1],"matrix_rows":[292,41,261,14,288,256,48,320,384],"offset":77,"phase":0,"quadratic_rows":[301,12,267,303,0,41,0,0,269]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":877,"old":663,"rank":1,"right":{"linear_Z4":[1,2,2,1,0,0,0,0,2],"matrix_rows":[265,257,2,12,256,272,288,320,384],"offset":127,"phase":3,"quadratic_rows":[9,0,8,13,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,66,4,5,130,258,2],"offset":0,"phase":0,"quadratic_rows":[5,4,3,0,0,0,0,0,0]},"new":1036,"old":663,"rank":3,"right":{"linear_Z4":[0,2,2,1,1,3,0,0,1],"matrix_rows":[17,284,292,48,14,272,256,320,384],"offset":61,"phase":3,"quadratic_rows":[32,12,290,26,56,309,0,0,292]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,33,66,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":870,"old":664,"rank":2,"right":{"linear_Z4":[0,1,2,1,0,1,0,0,0],"matrix_rows":[271,292,288,294,256,296,272,320,384],"offset":2,"phase":1,"quadratic_rows":[46,43,9,47,0,43,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":877,"old":664,"rank":1,"right":{"linear_Z4":[1,1,1,2,0,2,0,0,0],"matrix_rows":[7,33,34,44,32,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[39,39,47,4,0,7,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,38,66,4,5,134,262,6],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"new":1036,"old":664,"rank":3,"right":{"linear_Z4":[0,2,2,3,2,1,0,0,2],"matrix_rows":[17,284,52,48,14,256,272,320,384],"offset":89,"phase":2,"quadratic_rows":[32,12,34,10,0,37,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,1,32,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":871,"old":665,"rank":2,"right":{"linear_Z4":[1,2,1,2,0,0,0,0,2],"matrix_rows":[9,320,13,6,8,16,32,256,384],"offset":159,"phase":0,"quadratic_rows":[5,4,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":876,"old":665,"rank":1,"right":{"linear_Z4":[2,3,3,0,2,0,0,0,0],"matrix_rows":[23,16,18,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[6,7,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,3,1,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1036,"old":665,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,0,0,0,2],"matrix_rows":[9,20,320,16,6,24,32,256,384],"offset":182,"phase":3,"quadratic_rows":[24,4,14,29,9,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":866,"old":666,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,2,0,0,2],"matrix_rows":[36,320,5,6,32,8,48,256,384],"offset":158,"phase":3,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":873,"old":666,"rank":1,"right":{"linear_Z4":[3,3,2,0,0,2,0,0,0],"matrix_rows":[39,33,34,32,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[7,7,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":1035,"old":666,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,20,320,3,48,32,8,256,384],"offset":157,"phase":3,"quadratic_rows":[2,19,48,0,54,20,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,67,2,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":867,"old":667,"rank":2,"right":{"linear_Z4":[2,3,2,1,0,1,0,0,1],"matrix_rows":[42,292,3,256,32,264,304,320,384],"offset":117,"phase":3,"quadratic_rows":[2,299,256,298,0,42,0,0,270]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":872,"old":667,"rank":1,"right":{"linear_Z4":[1,1,1,2,0,2,0,0,0],"matrix_rows":[7,33,34,44,32,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[39,39,47,4,0,7,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,4,71,6,129,257,1],"offset":0,"phase":0,"quadratic_rows":[6,1,1,0,0,0,0,0,0]},"new":1035,"old":667,"rank":3,"right":{"linear_Z4":[2,1,2,2,0,3,0,0,2],"matrix_rows":[290,292,264,3,256,32,304,320,384],"offset":108,"phase":2,"quadratic_rows":[2,35,256,256,0,290,0,0,44]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,130,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":668,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,3],"matrix_rows":[257,8,384,256,2,260,64,80,96],"offset":73,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":878,"old":668,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":884,"old":668,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,32,65,130,257,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":669,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,272,384,1,2,4,320,64,352],"offset":195,"phase":0,"quadratic_rows":[0,0,0,64,320,0,24,256,144]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":879,"old":669,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[152,1,2,4,392,400,32,64,256],"offset":305,"phase":0,"quadratic_rows":[0,0,0,280,280,0,0,256,152]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":885,"old":669,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,0],"matrix_rows":[152,1,2,4,264,272,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,0,0,408,408,0,0,280,152]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,258,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":670,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,2,1],"matrix_rows":[257,136,272,320,2,324,128,64,160],"offset":231,"phase":0,"quadratic_rows":[64,0,0,0,320,0,17,0,272]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":882,"old":670,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,32,320,128],"offset":131,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":888,"old":670,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,160,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,258,4,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":671,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,2],"matrix_rows":[129,264,144,192,2,196,256,64,288],"offset":231,"phase":0,"quadratic_rows":[64,0,0,0,192,0,17,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":883,"old":671,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,288,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":889,"old":671,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,2,0],"matrix_rows":[144,17,2,4,8,128,32,192,256],"offset":131,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,129,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":672,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,264,384,64,2,68,256,80,288],"offset":74,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":882,"old":672,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,2],"matrix_rows":[264,1,2,4,392,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":889,"old":672,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[392,1,2,4,264,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,64,130,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":673,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,272,384,320,2,324,8,64,32],"offset":139,"phase":0,"quadratic_rows":[64,0,0,0,320,0,17,256,144]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":883,"old":673,"rank":1,"right":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[145,385,2,4,8,400,32,64,256],"offset":291,"phase":0,"quadratic_rows":[273,0,0,0,273,0,0,256,145]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":888,"old":673,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,0],"matrix_rows":[145,257,2,4,8,272,32,64,256],"offset":257,"phase":0,"quadratic_rows":[401,0,0,0,401,0,0,273,145]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,258,4,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":674,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,2,1],"matrix_rows":[129,264,272,128,2,132,320,64,352],"offset":399,"phase":0,"quadratic_rows":[0,0,0,64,320,0,24,0,272]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":878,"old":674,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,0,2],"matrix_rows":[272,1,2,4,24,256,32,320,128],"offset":145,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":885,"old":674,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,132,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,258,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":675,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,1,2],"matrix_rows":[257,136,144,256,2,260,192,64,224],"offset":399,"phase":0,"quadratic_rows":[0,0,0,64,192,0,24,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":879,"old":675,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":884,"old":675,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,2,0],"matrix_rows":[144,1,2,4,24,128,32,192,256],"offset":145,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,70,134,7,262,6],"offset":0,"phase":0,"quadratic_rows":[4,4,7,0,0,0,0,0,0]},"new":1,"old":676,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,0,3,0,0],"matrix_rows":[321,258,72,320,256,68,272,288,384],"offset":56,"phase":1,"quadratic_rows":[0,0,0,64,0,0,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":890,"old":676,"rank":1,"right":{"linear_Z4":[1,1,0,2,0,0,0,0,0],"matrix_rows":[3,265,258,4,256,272,288,320,384],"offset":151,"phase":1,"quadratic_rows":[267,259,0,1,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":896,"old":676,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[3,257,266,4,256,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[259,267,0,2,0,0,0,0,3]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,3,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":677,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,2],"matrix_rows":[33,40,272,96,98,4,64,256,384],"offset":215,"phase":0,"quadratic_rows":[64,0,0,96,0,40,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":891,"old":677,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":82,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":897,"old":677,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,132,6,7,260,4],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":678,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,1,1,0,3],"matrix_rows":[353,2,104,96,288,324,256,272,384],"offset":79,"phase":1,"quadratic_rows":[256,288,0,352,0,106,104,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":894,"old":678,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,265,2,4,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":900,"old":678,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,2],"matrix_rows":[265,257,2,4,256,272,288,320,384],"offset":85,"phase":2,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,2,68,131,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":679,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,2],"matrix_rows":[2,8,272,1,64,68,256,96,384],"offset":84,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":895,"old":679,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":901,"old":679,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,65,134,7,257,1],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":1,"old":680,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,3],"matrix_rows":[1,2,264,256,320,68,272,352,384],"offset":58,"phase":2,"quadratic_rows":[256,320,0,256,0,0,2,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":894,"old":680,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":70,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":901,"old":680,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,0,0,2],"matrix_rows":[265,256,2,260,264,272,32,320,384],"offset":15,"phase":2,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,64,132,2,3,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":681,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,2],"matrix_rows":[97,2,272,96,32,68,8,256,384],"offset":148,"phase":3,"quadratic_rows":[0,32,0,0,0,2,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":895,"old":681,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,68,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":900,"old":681,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,131,6,7,259,3],"offset":0,"phase":0,"quadratic_rows":[7,1,1,0,0,0,0,0,0]},"new":1,"old":682,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,1,0,0,0],"matrix_rows":[33,258,296,96,352,260,320,272,384],"offset":77,"phase":0,"quadratic_rows":[64,96,0,96,0,42,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":890,"old":682,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":70,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":897,"old":682,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,0,0,2],"matrix_rows":[258,3,256,260,8,272,288,320,384],"offset":82,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,2,68,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":683,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,0,3,0,2],"matrix_rows":[73,74,272,64,8,76,256,32,384],"offset":124,"phase":1,"quadratic_rows":[8,64,0,73,0,0,74,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":891,"old":683,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,0],"matrix_rows":[10,3,8,12,16,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":896,"old":683,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,68,4,133,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":684,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,2],"matrix_rows":[82,260,8,1,80,256,16,96,384],"offset":98,"phase":3,"quadratic_rows":[0,0,0,16,8,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":902,"old":684,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":908,"old":684,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,68,133,6,7,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":1,"old":685,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,3],"matrix_rows":[353,98,8,96,256,260,288,336,384],"offset":31,"phase":1,"quadratic_rows":[256,352,0,288,0,106,98,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":903,"old":685,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,2],"matrix_rows":[259,257,256,260,8,16,288,320,384],"offset":85,"phase":2,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":909,"old":685,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,259,256,260,8,16,288,320,384],"offset":150,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,70,7,132,5,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":686,"rank":3,"right":{"linear_Z4":[0,2,2,0,3,0,0,0,1],"matrix_rows":[273,274,260,320,80,256,344,288,384],"offset":112,"phase":1,"quadratic_rows":[80,320,0,0,273,0,3,0,274]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":906,"old":686,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":158,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":912,"old":686,"rank":1,"right":{"linear_Z4":[2,1,2,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":26,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,3,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":687,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,2],"matrix_rows":[33,34,260,96,64,256,104,16,384],"offset":119,"phase":0,"quadratic_rows":[64,96,0,0,0,34,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":907,"old":687,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":913,"old":687,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":70,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,3,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":688,"rank":3,"right":{"linear_Z4":[0,2,0,0,1,0,0,0,2],"matrix_rows":[17,18,260,64,80,256,88,32,384],"offset":111,"phase":0,"quadratic_rows":[80,64,0,0,17,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":906,"old":688,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":913,"old":688,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":19,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,69,132,7,6,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":689,"rank":3,"right":{"linear_Z4":[2,0,2,0,0,3,0,0,1],"matrix_rows":[289,290,260,96,320,256,360,272,384],"offset":104,"phase":1,"quadratic_rows":[320,96,0,0,0,290,3,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":907,"old":689,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":158,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":912,"old":689,"rank":1,"right":{"linear_Z4":[2,1,2,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":79,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,68,5,134,7,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":690,"rank":3,"right":{"linear_Z4":[0,0,0,2,1,0,1,0,3],"matrix_rows":[81,338,8,256,80,260,272,352,384],"offset":31,"phase":1,"quadratic_rows":[336,256,0,272,89,0,81,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":902,"old":690,"rank":1,"right":{"linear_Z4":[0,3,0,2,0,0,0,0,2],"matrix_rows":[259,256,258,260,8,272,32,320,384],"offset":51,"phase":2,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":909,"old":690,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":82,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,133,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":691,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,2],"matrix_rows":[97,260,8,96,2,256,32,80,384],"offset":98,"phase":3,"quadratic_rows":[0,0,0,32,0,8,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":903,"old":691,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":908,"old":691,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,258,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":692,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,2,1],"matrix_rows":[257,130,260,320,128,64,8,336,160],"offset":183,"phase":0,"quadratic_rows":[64,0,320,0,0,0,5,0,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":914,"old":692,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,160,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":920,"old":692,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,32,320,128],"offset":131,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,258,4,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":693,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,2],"matrix_rows":[129,258,132,192,256,64,8,208,288],"offset":183,"phase":0,"quadratic_rows":[64,0,192,0,0,0,5,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":915,"old":693,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,32,192,256],"offset":131,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":921,"old":693,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,288,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,128,257,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":694,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,260,384,1,320,64,8,16,352],"offset":51,"phase":0,"quadratic_rows":[0,64,320,0,0,0,6,256,132]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":918,"old":694,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[134,1,258,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,390,390,0,0,0,0,262,134]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":924,"old":694,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[134,1,386,388,8,16,32,64,256],"offset":269,"phase":0,"quadratic_rows":[0,262,262,0,0,0,0,256,134]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,64,129,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":695,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,3],"matrix_rows":[257,2,384,256,64,68,8,272,96],"offset":25,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":919,"old":695,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":925,"old":695,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,258,4,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":696,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,2,1],"matrix_rows":[129,258,260,128,320,64,8,144,352],"offset":303,"phase":0,"quadratic_rows":[0,64,320,0,0,0,6,0,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":918,"old":696,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,144,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":925,"old":696,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,16,32,320,128],"offset":133,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,258,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":697,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,2],"matrix_rows":[257,130,132,256,192,64,8,272,224],"offset":303,"phase":0,"quadratic_rows":[0,64,192,0,0,0,6,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":919,"old":697,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,16,32,192,256],"offset":133,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":924,"old":697,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,272,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,129,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":698,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,260,384,320,2,64,8,336,32],"offset":43,"phase":0,"quadratic_rows":[64,0,320,0,0,0,5,256,132]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":914,"old":698,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[133,257,2,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[389,0,389,0,0,0,0,261,133]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":921,"old":698,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[133,385,2,388,8,16,32,64,256],"offset":267,"phase":0,"quadratic_rows":[261,0,261,0,0,0,0,256,133]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,64,129,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":699,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,258,384,64,256,68,8,80,288],"offset":26,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":915,"old":699,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":920,"old":699,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,68,134,6,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":700,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,0,2],"matrix_rows":[257,98,8,256,96,4,64,48,384],"offset":73,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":926,"old":700,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":932,"old":700,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,68,135,5,6,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":701,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,0],"matrix_rows":[353,100,8,256,258,352,288,336,384],"offset":47,"phase":1,"quadratic_rows":[96,0,256,288,0,361,353,0,108]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":927,"old":701,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,80,32,128,256],"offset":59,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":933,"old":701,"rank":1,"right":{"linear_Z4":[0,0,3,2,0,0,0,0,2],"matrix_rows":[261,256,258,260,8,272,288,64,384],"offset":83,"phase":2,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,135,3,5,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":702,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,1,1,0,2],"matrix_rows":[257,98,100,256,288,320,264,368,384],"offset":142,"phase":0,"quadratic_rows":[0,320,288,0,0,100,98,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":930,"old":702,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":47,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":936,"old":702,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":206,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,70,128,4,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":703,"rank":3,"right":{"linear_Z4":[0,2,2,0,0,3,3,0,2],"matrix_rows":[257,98,100,256,64,32,104,16,384],"offset":121,"phase":1,"quadratic_rows":[0,32,64,0,0,98,100,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":931,"old":703,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":28,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":937,"old":703,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,71,129,5,3,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":704,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,1,1,0,2],"matrix_rows":[257,98,100,256,320,288,360,272,384],"offset":78,"phase":0,"quadratic_rows":[0,288,320,0,0,98,100,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":930,"old":704,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":31,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":937,"old":704,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":206,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,134,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":705,"rank":3,"right":{"linear_Z4":[0,2,2,0,0,3,3,0,2],"matrix_rows":[257,98,100,256,32,64,8,112,384],"offset":185,"phase":1,"quadratic_rows":[0,64,32,0,0,100,98,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":931,"old":705,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":44,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":936,"old":705,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,134,4,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":706,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,2],"matrix_rows":[257,100,8,256,2,96,32,80,384],"offset":73,"phase":3,"quadratic_rows":[0,0,0,32,0,8,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":926,"old":706,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":933,"old":706,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,68,135,6,5,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":707,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,0],"matrix_rows":[353,98,8,256,352,260,320,304,384],"offset":31,"phase":1,"quadratic_rows":[96,256,0,320,0,353,361,0,106]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":927,"old":707,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,2,0,0,0],"matrix_rows":[34,3,32,4,8,48,64,128,256],"offset":55,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":932,"old":707,"rank":1,"right":{"linear_Z4":[0,3,0,2,0,0,0,0,2],"matrix_rows":[259,256,258,260,8,272,32,320,384],"offset":147,"phase":2,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,132,256,1,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":708,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,2,1],"matrix_rows":[257,130,260,64,128,320,136,336,32],"offset":159,"phase":0,"quadratic_rows":[320,0,64,0,0,0,5,0,257]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":938,"old":708,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,272,32,64,128],"offset":35,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":944,"old":708,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,136,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,132,256,1,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":709,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,2],"matrix_rows":[129,258,132,64,256,192,264,208,32],"offset":159,"phase":0,"quadratic_rows":[192,0,64,0,0,0,5,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":939,"old":709,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":945,"old":709,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,144,32,64,256],"offset":35,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,66,128,256,1,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":710,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,384,64,320,4,328,16,32],"offset":27,"phase":0,"quadratic_rows":[320,64,0,0,0,0,3,256,129]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":942,"old":710,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[131,385,386,4,8,16,32,64,256],"offset":263,"phase":0,"quadratic_rows":[259,259,0,0,0,0,0,256,131]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":948,"old":710,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[131,257,258,4,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[387,387,0,0,0,0,0,259,131]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,130,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":711,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,260,384,64,66,256,72,272,32],"offset":42,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":943,"old":711,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,2],"matrix_rows":[260,1,2,388,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":949,"old":711,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[388,1,2,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,132,256,1,3,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":712,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,2],"matrix_rows":[129,130,260,64,192,256,200,272,32],"offset":111,"phase":0,"quadratic_rows":[192,64,0,0,0,0,3,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":942,"old":712,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,272,32,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":949,"old":712,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,2,0],"matrix_rows":[130,3,128,4,136,16,32,64,256],"offset":19,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,132,256,1,4,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":713,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,2,1],"matrix_rows":[257,258,132,64,320,128,328,144,32],"offset":111,"phase":0,"quadratic_rows":[320,64,0,0,0,0,3,0,257]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":943,"old":713,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,264,16,32,64,128],"offset":19,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":948,"old":713,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,144,32,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":714,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,258,384,64,256,68,264,80,32],"offset":26,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":938,"old":714,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":945,"old":714,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,130,256,1,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":715,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,260,384,64,2,320,8,336,32],"offset":43,"phase":0,"quadratic_rows":[320,0,64,0,0,0,5,256,129]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":939,"old":715,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[133,385,2,388,8,16,32,64,256],"offset":267,"phase":0,"quadratic_rows":[261,0,261,0,0,0,0,256,133]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":944,"old":715,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[133,257,2,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[389,0,389,0,0,0,0,261,133]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,64,1,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":716,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[1,82,288,16,80,68,8,256,384],"offset":140,"phase":3,"quadratic_rows":[16,0,0,0,1,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":950,"old":716,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":956,"old":716,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,68,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,69,130,7,258,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":1,"old":717,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,0,3],"matrix_rows":[1,2,264,320,256,68,336,288,384],"offset":57,"phase":2,"quadratic_rows":[320,256,0,256,0,0,1,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":951,"old":717,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,0,2],"matrix_rows":[266,1,256,260,264,16,288,320,384],"offset":15,"phase":2,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":957,"old":717,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":38,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,5,131,7,259,3],"offset":0,"phase":0,"quadratic_rows":[2,7,2,0,0,0,0,0,0]},"new":1,"old":718,"rank":3,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,0],"matrix_rows":[257,18,280,336,80,260,320,288,384],"offset":86,"phase":0,"quadratic_rows":[80,64,0,80,25,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":954,"old":718,"rank":1,"right":{"linear_Z4":[3,2,0,3,0,0,0,0,0],"matrix_rows":[9,259,256,260,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[267,1,0,265,0,0,0,0,9]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":960,"old":718,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":38,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,1,64,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":719,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,0,3,0,2],"matrix_rows":[73,74,288,8,64,76,16,256,384],"offset":188,"phase":1,"quadratic_rows":[64,8,0,74,0,0,73,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":955,"old":719,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":961,"old":719,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[66,3,64,68,8,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,3,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":720,"rank":3,"right":{"linear_Z4":[2,0,0,0,1,0,0,0,2],"matrix_rows":[17,24,288,80,82,4,64,256,384],"offset":215,"phase":0,"quadratic_rows":[64,0,0,80,24,0,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":954,"old":720,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":961,"old":720,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,69,133,7,261,5],"offset":0,"phase":0,"quadratic_rows":[4,4,7,0,0,0,0,0,0]},"new":1,"old":721,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,0,3,0,0],"matrix_rows":[257,322,72,256,320,68,272,288,384],"offset":56,"phase":1,"quadratic_rows":[0,0,0,64,0,0,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":955,"old":721,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[3,265,258,4,256,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[267,259,0,1,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":960,"old":721,"rank":1,"right":{"linear_Z4":[1,1,0,2,0,0,0,0,0],"matrix_rows":[3,257,266,4,256,272,288,320,384],"offset":151,"phase":1,"quadratic_rows":[259,267,0,2,0,0,0,0,3]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,5,132,7,260,4],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":722,"rank":3,"right":{"linear_Z4":[2,0,0,0,1,0,1,0,3],"matrix_rows":[1,338,88,272,80,324,256,288,384],"offset":87,"phase":1,"quadratic_rows":[272,256,0,336,89,0,88,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":950,"old":722,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[266,1,258,4,256,272,288,320,384],"offset":51,"phase":2,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":957,"old":722,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,2],"matrix_rows":[258,1,266,4,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,2,67,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":723,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[1,8,288,64,2,68,80,256,384],"offset":140,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":951,"old":723,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":956,"old":723,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":724,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,2,1],"matrix_rows":[130,264,288,1,128,132,320,336,64],"offset":407,"phase":0,"quadratic_rows":[0,0,0,64,0,320,40,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":962,"old":724,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,132,8,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":968,"old":724,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,3,0,0,2],"matrix_rows":[288,1,2,4,40,16,256,320,128],"offset":145,"phase":3,"quadratic_rows":[0,0,0,32,0,40,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":725,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,1,2],"matrix_rows":[258,136,160,1,256,260,192,208,64],"offset":407,"phase":0,"quadratic_rows":[0,0,0,64,0,192,40,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":963,"old":725,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,3,0,2,0],"matrix_rows":[160,1,2,4,40,16,128,192,256],"offset":145,"phase":3,"quadratic_rows":[0,0,0,32,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":969,"old":725,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,8,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,64,128,258,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":726,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,288,384,1,320,324,8,16,64],"offset":275,"phase":0,"quadratic_rows":[0,64,0,0,0,320,34,256,160]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":966,"old":726,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,0],"matrix_rows":[162,1,258,4,8,16,288,64,256],"offset":257,"phase":0,"quadratic_rows":[0,418,0,0,0,418,0,290,162]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":972,"old":726,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[162,1,386,4,8,16,416,64,256],"offset":325,"phase":0,"quadratic_rows":[0,290,0,0,0,290,0,256,162]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,257,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":727,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,3],"matrix_rows":[2,264,384,1,64,68,256,272,96],"offset":82,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":967,"old":727,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[392,1,2,4,264,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":973,"old":727,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,2],"matrix_rows":[264,1,2,4,392,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":728,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,2,1],"matrix_rows":[258,136,288,1,320,324,128,144,64],"offset":359,"phase":0,"quadratic_rows":[0,64,0,0,0,320,34,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":966,"old":728,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,144,32,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":973,"old":728,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,3,0,0,2],"matrix_rows":[288,1,34,4,8,16,256,320,128],"offset":133,"phase":3,"quadratic_rows":[0,32,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":729,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,2],"matrix_rows":[130,264,160,1,192,196,256,272,64],"offset":359,"phase":0,"quadratic_rows":[0,64,0,0,0,192,34,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":967,"old":729,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,3,0,2,0],"matrix_rows":[160,1,34,4,8,16,128,192,256],"offset":133,"phase":3,"quadratic_rows":[0,32,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":972,"old":729,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,272,32,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,32,65,129,258,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":730,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,288,384,1,2,4,320,336,64],"offset":323,"phase":0,"quadratic_rows":[0,0,0,64,0,320,40,256,160]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":962,"old":730,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,0],"matrix_rows":[168,1,2,4,264,16,288,64,256],"offset":257,"phase":0,"quadratic_rows":[0,0,0,424,0,424,0,296,168]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":969,"old":730,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[168,1,2,4,392,16,416,64,256],"offset":337,"phase":0,"quadratic_rows":[0,0,0,296,0,296,0,256,168]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":731,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,3],"matrix_rows":[258,8,384,1,256,260,64,80,96],"offset":81,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":963,"old":731,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":968,"old":731,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,3,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":732,"rank":3,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,2],"matrix_rows":[1,82,264,64,80,20,256,32,384],"offset":76,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":974,"old":732,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[18,1,16,20,8,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":980,"old":732,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,66,132,7,6,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":733,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,3,0,0,1],"matrix_rows":[289,258,304,96,256,356,264,320,384],"offset":56,"phase":1,"quadratic_rows":[320,0,0,0,96,304,17,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":975,"old":733,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":981,"old":733,"rank":1,"right":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[258,1,256,260,264,16,288,320,384],"offset":174,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,65,4,135,6,257,1],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":1,"old":734,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,3],"matrix_rows":[1,2,272,256,64,324,264,352,384],"offset":58,"phase":2,"quadratic_rows":[256,64,0,0,256,0,2,0,273]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":978,"old":734,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":984,"old":734,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,0,0,2],"matrix_rows":[273,256,2,260,264,272,288,64,384],"offset":15,"phase":2,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,128,3,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":735,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,2,0,0,2],"matrix_rows":[97,2,264,96,64,36,256,16,384],"offset":84,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":979,"old":735,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,36,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":985,"old":735,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,132,7,6,260,4],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":736,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,1,1,0,3],"matrix_rows":[353,2,104,96,320,292,256,272,384],"offset":79,"phase":1,"quadratic_rows":[256,320,0,352,0,104,106,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":978,"old":736,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,265,2,4,256,272,288,320,384],"offset":86,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":985,"old":736,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,2],"matrix_rows":[265,257,2,4,256,272,288,320,384],"offset":149,"phase":2,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,4,133,5,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":737,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,2],"matrix_rows":[2,264,16,1,64,68,256,96,384],"offset":82,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":979,"old":737,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[80,1,2,4,8,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":984,"old":737,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":738,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,2],"matrix_rows":[33,264,48,96,2,100,256,64,384],"offset":231,"phase":0,"quadratic_rows":[64,0,0,0,96,48,17,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":974,"old":738,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":98,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":981,"old":738,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,7,132,5,260,4],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":739,"rank":3,"right":{"linear_Z4":[2,0,0,0,1,0,1,0,3],"matrix_rows":[1,338,88,320,80,276,256,288,384],"offset":87,"phase":1,"quadratic_rows":[320,256,0,336,88,0,89,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":975,"old":739,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,2],"matrix_rows":[258,1,266,4,256,272,288,320,384],"offset":54,"phase":0,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":980,"old":739,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[266,1,258,4,256,272,288,320,384],"offset":147,"phase":2,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,260,2,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":740,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,0,0,2,1],"matrix_rows":[129,264,272,128,130,4,64,320,352],"offset":335,"phase":0,"quadratic_rows":[0,0,0,320,64,0,24,0,264]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":986,"old":740,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,0,2],"matrix_rows":[272,1,2,4,24,256,288,64,128],"offset":81,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":992,"old":740,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,4,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,260,2,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":741,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,0,0,1,2],"matrix_rows":[257,136,144,256,258,4,64,192,224],"offset":335,"phase":0,"quadratic_rows":[0,0,0,192,64,0,24,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":987,"old":741,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":993,"old":741,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,2,0],"matrix_rows":[144,1,2,4,24,128,160,64,256],"offset":81,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":742,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,264,384,320,322,4,64,16,32],"offset":75,"phase":0,"quadratic_rows":[64,0,0,320,0,0,9,256,136]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":990,"old":742,"rank":1,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[137,385,2,4,392,16,32,64,256],"offset":275,"phase":0,"quadratic_rows":[265,0,0,265,0,0,0,256,137]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":996,"old":742,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,0],"matrix_rows":[137,257,2,4,264,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[393,0,0,393,0,0,0,265,137]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,65,130,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":743,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,272,384,64,66,4,72,256,288],"offset":138,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":991,"old":743,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,2],"matrix_rows":[272,1,2,4,8,400,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,16,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":997,"old":743,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[400,1,2,4,8,272,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,16,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,260,2,3,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":744,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,2],"matrix_rows":[129,136,272,192,194,4,64,256,288],"offset":215,"phase":0,"quadratic_rows":[64,0,0,192,0,0,9,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":990,"old":744,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,288,64,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":997,"old":744,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,2,0],"matrix_rows":[136,9,2,4,128,16,32,192,256],"offset":131,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,260,2,4,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":745,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,2,1],"matrix_rows":[257,264,144,320,322,4,64,128,160],"offset":215,"phase":0,"quadratic_rows":[64,0,0,320,0,0,9,0,264]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":991,"old":745,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,0,2],"matrix_rows":[264,9,2,4,256,16,32,320,128],"offset":131,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":996,"old":745,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,160,64,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,130,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":746,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,3],"matrix_rows":[257,8,384,256,258,4,64,80,96],"offset":73,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":986,"old":746,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":993,"old":746,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,32,65,130,258,1,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":747,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,272,384,1,2,4,64,320,352],"offset":195,"phase":0,"quadratic_rows":[0,0,0,320,64,0,24,256,136]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":987,"old":747,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[152,1,2,4,392,400,32,64,256],"offset":305,"phase":0,"quadratic_rows":[0,0,0,280,280,0,0,256,152]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":992,"old":747,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,0],"matrix_rows":[152,1,2,4,264,272,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,0,0,408,408,0,0,280,152]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,128,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":748,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,260,384,64,66,256,72,16,288],"offset":42,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":748,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[388,1,2,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1004,"old":748,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,2],"matrix_rows":[260,1,2,388,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,65,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":749,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,384,320,64,4,328,16,32],"offset":27,"phase":0,"quadratic_rows":[64,320,0,0,0,0,3,256,130]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":999,"old":749,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[131,257,258,4,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[387,387,0,0,0,0,0,259,131]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1005,"old":749,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[131,385,386,4,8,16,32,64,256],"offset":263,"phase":0,"quadratic_rows":[259,259,0,0,0,0,0,256,131]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":750,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,2,1],"matrix_rows":[129,258,260,128,64,320,136,16,352],"offset":287,"phase":0,"quadratic_rows":[0,320,64,0,0,0,6,0,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1002,"old":750,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,136,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1008,"old":750,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,16,288,64,128],"offset":69,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":751,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,2],"matrix_rows":[257,130,132,256,64,192,264,16,224],"offset":287,"phase":0,"quadratic_rows":[0,192,64,0,0,0,6,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1003,"old":751,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,16,160,64,256],"offset":69,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1009,"old":751,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,128,258,1,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":752,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,260,384,1,64,320,8,16,352],"offset":51,"phase":0,"quadratic_rows":[0,320,64,0,0,0,6,256,130]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1002,"old":752,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[134,1,258,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,390,390,0,0,0,0,262,134]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1009,"old":752,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[134,1,386,388,8,16,32,64,256],"offset":269,"phase":0,"quadratic_rows":[0,262,262,0,0,0,0,256,134]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,65,128,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":753,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,3],"matrix_rows":[257,2,384,256,64,68,264,16,96],"offset":25,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1003,"old":753,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1008,"old":753,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,3,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":754,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,2],"matrix_rows":[129,130,260,192,64,256,200,16,288],"offset":119,"phase":0,"quadratic_rows":[64,192,0,0,0,0,3,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":754,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,2,0],"matrix_rows":[130,3,128,4,8,16,32,192,256],"offset":131,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1005,"old":754,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,288,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,4,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":755,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,2,1],"matrix_rows":[257,258,132,320,64,128,328,16,160],"offset":119,"phase":0,"quadratic_rows":[64,320,0,0,0,0,3,0,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":755,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,160,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1004,"old":755,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,32,320,128],"offset":131,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,68,5,135,6,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":756,"rank":3,"right":{"linear_Z4":[0,0,0,2,1,0,1,0,0],"matrix_rows":[337,84,8,256,258,336,272,352,384],"offset":47,"phase":1,"quadratic_rows":[80,0,256,272,345,0,337,0,92]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1010,"old":756,"rank":1,"right":{"linear_Z4":[0,0,3,2,0,0,0,0,2],"matrix_rows":[261,256,258,260,8,272,288,64,384],"offset":51,"phase":2,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1016,"old":756,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,68,133,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":757,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,0,2],"matrix_rows":[97,258,8,96,256,4,64,48,384],"offset":82,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1011,"old":757,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1017,"old":757,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,131,7,6,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":758,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,3,0,0,1],"matrix_rows":[289,258,292,96,256,320,264,368,384],"offset":152,"phase":1,"quadratic_rows":[320,0,96,0,0,292,5,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1014,"old":758,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":174,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1020,"old":758,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":79,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,69,4,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":759,"rank":3,"right":{"linear_Z4":[2,0,2,0,3,0,3,0,2],"matrix_rows":[81,258,84,64,256,16,88,32,384],"offset":122,"phase":1,"quadratic_rows":[16,0,64,0,81,0,84,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1015,"old":759,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1021,"old":759,"rank":1,"right":{"linear_Z4":[2,0,3,0,2,0,0,0,0],"matrix_rows":[20,5,2,16,24,32,64,128,256],"offset":26,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":760,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,2],"matrix_rows":[33,258,36,96,256,64,8,112,384],"offset":183,"phase":0,"quadratic_rows":[64,0,96,0,0,36,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1014,"old":760,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1021,"old":760,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":74,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,71,6,130,3,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":761,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,0,1,0,2],"matrix_rows":[81,258,84,320,256,272,344,288,384],"offset":85,"phase":0,"quadratic_rows":[272,0,320,0,81,0,84,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1015,"old":761,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":174,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1020,"old":761,"rank":1,"right":{"linear_Z4":[2,2,1,0,2,0,0,0,0],"matrix_rows":[20,5,2,16,24,32,64,128,256],"offset":31,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,68,4,134,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":762,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,2],"matrix_rows":[258,84,8,1,256,80,16,96,384],"offset":81,"phase":3,"quadratic_rows":[0,0,0,16,8,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1010,"old":762,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1017,"old":762,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,68,133,7,6,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":1,"old":763,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,3],"matrix_rows":[353,98,8,96,256,260,320,304,384],"offset":31,"phase":1,"quadratic_rows":[256,352,0,320,0,98,106,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1011,"old":763,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,2],"matrix_rows":[259,257,256,260,8,16,288,320,384],"offset":149,"phase":2,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1016,"old":763,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,259,256,260,8,16,288,320,384],"offset":86,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,258,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[2,1,8,12,0,0,0,0,0]},"new":1,"old":764,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,0,1,0,3],"matrix_rows":[65,66,260,384,32,96,256,264,112],"offset":343,"phase":0,"quadratic_rows":[96,32,0,0,0,3,65,256,384]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,32,65,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1022,"old":764,"rank":2,"right":{"linear_Z4":[2,3,1,0,0,0,2,2,2],"matrix_rows":[66,260,3,64,388,8,80,32,256],"offset":69,"phase":3,"quadratic_rows":[2,3,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1028,"old":764,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[388,129,130,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[128,128,132,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[17,34,64,128,258,1,4,8,15],"offset":0,"phase":0,"quadratic_rows":[14,13,15,15,0,0,0,0,0]},"new":1,"old":765,"rank":4,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[257,258,320,384,32,288,4,8,304],"offset":51,"phase":0,"quadratic_rows":[288,32,0,0,0,3,256,256,449]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,64,128,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":1023,"old":765,"rank":2,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,1],"matrix_rows":[387,64,129,130,4,8,16,32,256],"offset":258,"phase":0,"quadratic_rows":[259,259,0,0,0,0,256,256,451]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1029,"old":765,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,1,2,2],"matrix_rows":[323,257,258,4,8,16,32,448,256],"offset":0,"phase":0,"quadratic_rows":[67,67,0,0,0,0,195,64,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,2,257,6,8,9],"offset":0,"phase":0,"quadratic_rows":[8,4,2,9,0,0,0,0,0]},"new":1,"old":766,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,1,0,3],"matrix_rows":[257,66,68,384,256,16,80,88,288],"offset":183,"phase":0,"quadratic_rows":[0,80,16,0,6,0,66,256,384]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,128,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1026,"old":766,"rank":2,"right":{"linear_Z4":[1,2,3,0,0,0,2,2,2],"matrix_rows":[257,68,385,6,64,72,16,32,256],"offset":42,"phase":3,"quadratic_rows":[129,4,6,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1032,"old":766,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,130,132,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,128,128,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,33,66,130,1,256,4,8,15],"offset":0,"phase":0,"quadratic_rows":[14,13,15,15,0,0,0,0,0]},"new":1,"old":767,"rank":4,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[258,260,320,384,1,16,272,280,32],"offset":99,"phase":0,"quadratic_rows":[0,272,16,0,6,0,256,256,450]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,128,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":1027,"old":767,"rank":2,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,1],"matrix_rows":[390,64,1,130,132,8,16,32,256],"offset":258,"phase":0,"quadratic_rows":[0,262,262,0,0,0,256,256,454]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1033,"old":767,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,1,2,2],"matrix_rows":[326,1,258,260,8,16,32,448,256],"offset":0,"phase":0,"quadratic_rows":[0,70,70,0,0,0,198,64,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,2,257,8,9,6],"offset":0,"phase":0,"quadratic_rows":[8,4,2,9,0,0,0,0,0]},"new":1,"old":768,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,0,3,1],"matrix_rows":[129,258,260,192,128,16,272,280,160],"offset":183,"phase":0,"quadratic_rows":[0,272,16,0,6,0,128,192,258]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,17,33,64,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1026,"old":768,"rank":2,"right":{"linear_Z4":[1,2,3,0,0,0,0,2,2],"matrix_rows":[260,193,129,6,256,264,16,32,128],"offset":41,"phase":3,"quadratic_rows":[65,4,6,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1033,"old":768,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,2,0],"matrix_rows":[65,128,2,4,8,16,160,192,256],"offset":64,"phase":3,"quadratic_rows":[192,0,0,0,0,0,193,65,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,2,257,8,6,9],"offset":0,"phase":0,"quadratic_rows":[8,4,2,9,0,0,0,0,0]},"new":1,"old":769,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,3],"matrix_rows":[257,130,132,320,256,16,144,152,288],"offset":183,"phase":0,"quadratic_rows":[0,144,16,0,6,0,256,130,320]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,32,64,129,2,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1027,"old":769,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[257,320,256,2,4,8,16,288,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1032,"old":769,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[321,257,66,68,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,64,64,0,0,0,7,0,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,258,1,8,12,3],"offset":0,"phase":0,"quadratic_rows":[2,1,8,12,0,0,0,0,0]},"new":1,"old":770,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,0,0,3,1],"matrix_rows":[257,258,132,192,32,288,128,136,304],"offset":343,"phase":0,"quadratic_rows":[288,32,0,0,0,3,128,192,257]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1022,"old":770,"rank":2,"right":{"linear_Z4":[2,3,1,0,0,0,0,2,2],"matrix_rows":[258,196,3,256,132,8,272,32,128],"offset":69,"phase":3,"quadratic_rows":[2,3,68,0,0,0,4,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1029,"old":770,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,2,0],"matrix_rows":[68,1,2,128,136,16,32,192,256],"offset":16,"phase":3,"quadratic_rows":[0,0,192,0,0,0,196,68,0]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,258,1,8,3,12],"offset":0,"phase":0,"quadratic_rows":[2,1,8,12,0,0,0,0,0]},"new":1,"old":771,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,3],"matrix_rows":[129,130,260,320,32,160,256,264,176],"offset":343,"phase":0,"quadratic_rows":[160,32,0,0,0,3,256,129,320]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,33,64,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1023,"old":771,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[260,320,1,2,256,264,16,32,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1028,"old":771,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[324,65,66,260,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,64,68,0,0,0,7,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":811,"old":772,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":868,"old":772,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,35,32,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,1,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":772,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,36,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":815,"old":773,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,145,2,4,8,128,32,192,256],"offset":35,"phase":3,"quadratic_rows":[145,0,0,0,1,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":880,"old":773,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":773,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,32,192,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":819,"old":774,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,32,64,384],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":892,"old":774,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":774,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,34,67,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":775,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,260,288,290,256,264,48,320,384],"offset":26,"phase":3,"quadratic_rows":[288,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":824,"old":775,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":4,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":911,"old":775,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,264,272,288,320,384],"offset":107,"phase":1,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":775,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":105,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":776,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,1,0,0],"matrix_rows":[65,66,96,32,4,8,112,128,256],"offset":75,"phase":0,"quadratic_rows":[32,96,0,0,0,3,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":822,"old":776,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[3,64,66,4,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":905,"old":776,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[3,65,64,4,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":776,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":823,"old":777,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,2,0,0,0],"matrix_rows":[3,32,34,4,40,16,64,128,256],"offset":22,"phase":1,"quadratic_rows":[34,35,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":904,"old":777,"rank":1,"right":{"linear_Z4":[3,2,0,0,2,0,0,0,0],"matrix_rows":[3,17,16,4,24,32,64,128,256],"offset":22,"phase":1,"quadratic_rows":[19,17,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":777,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":22,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":825,"old":778,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":910,"old":778,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,64,384],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":778,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":779,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,130,160,32,4,8,176,64,256],"offset":75,"phase":0,"quadratic_rows":[32,160,0,0,0,3,0,130,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":828,"old":779,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":923,"old":779,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,2,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":780,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,1],"matrix_rows":[257,258,288,32,4,8,304,64,128],"offset":75,"phase":0,"quadratic_rows":[32,288,0,0,0,3,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":826,"old":780,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,4,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":917,"old":780,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,4,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":780,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,288,64,128],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,32,65,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":781,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,260,32,34,256,8,48,320,128],"offset":22,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":827,"old":781,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":916,"old":781,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,320,128],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":781,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,320,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":829,"old":782,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,8,16,32,192,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":922,"old":782,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":782,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,34,1,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":783,"rank":2,"right":{"linear_Z4":[0,0,2,0,0,1,0,0,0],"matrix_rows":[34,36,1,16,48,56,64,128,256],"offset":43,"phase":0,"quadratic_rows":[0,48,16,0,6,34,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":832,"old":783,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[6,1,34,32,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[0,38,34,0,0,6,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":935,"old":783,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,0],"matrix_rows":[6,1,32,36,8,48,64,128,256],"offset":32,"phase":3,"quadratic_rows":[0,36,38,0,0,6,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":783,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":21,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":784,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[257,2,256,16,20,24,32,64,384],"offset":13,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":830,"old":784,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":929,"old":784,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":784,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":831,"old":785,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":8,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":928,"old":785,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":10,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":785,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":51,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,2,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":786,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,1,0,0],"matrix_rows":[66,68,1,80,16,88,32,128,256],"offset":51,"phase":0,"quadratic_rows":[0,16,80,0,6,0,68,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":833,"old":786,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[6,1,66,64,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[0,70,66,0,0,0,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":934,"old":786,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,0],"matrix_rows":[6,1,64,68,72,16,32,128,256],"offset":16,"phase":3,"quadratic_rows":[0,68,70,0,0,0,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":786,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":37,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":787,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[257,2,256,16,20,24,32,320,128],"offset":13,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":836,"old":787,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":947,"old":787,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":788,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,2,0],"matrix_rows":[129,2,128,16,20,24,32,192,256],"offset":13,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":834,"old":788,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":941,"old":788,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":788,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,2,64,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":789,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,0],"matrix_rows":[130,132,1,144,16,152,32,64,256],"offset":51,"phase":0,"quadratic_rows":[0,16,144,0,6,0,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":835,"old":789,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":940,"old":789,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":789,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,144,32,64,256],"offset":37,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,2,64,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":790,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,0,1],"matrix_rows":[258,260,1,272,16,280,32,64,128],"offset":51,"phase":0,"quadratic_rows":[0,16,272,0,6,0,0,0,260]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":837,"old":790,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,1,256,260,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[0,260,262,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":946,"old":790,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,1,258,256,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[0,262,258,0,0,0,0,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":790,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,272,32,64,128],"offset":37,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,34,3,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":791,"rank":2,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[257,2,256,272,20,280,288,320,384],"offset":37,"phase":3,"quadratic_rows":[0,272,0,0,2,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":840,"old":791,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":959,"old":791,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":18,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":791,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,272,288,320,384],"offset":43,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,2,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":792,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,1,0,0],"matrix_rows":[66,72,1,80,84,16,32,128,256],"offset":51,"phase":0,"quadratic_rows":[0,16,0,80,10,0,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":838,"old":792,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[10,1,66,4,64,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[0,74,0,66,0,0,10,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":953,"old":792,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[10,1,64,68,72,16,32,128,256],"offset":8,"phase":3,"quadratic_rows":[0,72,0,74,0,0,10,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":792,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":37,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":839,"old":793,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":30,"phase":0,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":952,"old":793,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":28,"phase":1,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":793,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":794,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[2,288,1,16,20,24,256,64,384],"offset":74,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":841,"old":794,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":958,"old":794,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,290,4,8,16,256,64,384],"offset":69,"phase":3,"quadratic_rows":[0,290,0,0,0,2,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":794,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,2,64,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":795,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,0],"matrix_rows":[130,136,1,144,148,16,32,64,256],"offset":51,"phase":0,"quadratic_rows":[0,16,0,144,10,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":844,"old":795,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[10,1,130,4,128,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[0,138,0,130,0,0,0,10,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":971,"old":795,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[10,1,128,132,136,16,32,64,256],"offset":8,"phase":3,"quadratic_rows":[0,136,0,138,0,0,0,10,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,2,64,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":796,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,0,1],"matrix_rows":[258,264,1,272,276,16,32,64,128],"offset":51,"phase":0,"quadratic_rows":[0,16,0,272,10,0,0,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":842,"old":796,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[10,1,256,260,264,16,32,64,128],"offset":8,"phase":3,"quadratic_rows":[0,264,0,266,0,0,0,0,10]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":965,"old":796,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[10,1,258,4,256,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[0,266,0,258,0,0,0,0,10]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":796,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,0,0,2],"matrix_rows":[264,1,10,4,256,272,32,64,128],"offset":37,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":797,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[2,288,1,16,20,24,256,320,128],"offset":74,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":843,"old":797,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":964,"old":797,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,290,4,8,16,256,320,128],"offset":69,"phase":3,"quadratic_rows":[0,290,0,0,0,2,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":797,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,320,128],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":798,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,2,0],"matrix_rows":[2,160,1,16,20,24,128,192,256],"offset":74,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":845,"old":798,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,162,4,8,16,128,192,256],"offset":69,"phase":3,"quadratic_rows":[0,162,0,0,0,2,0,2,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":970,"old":798,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1036,"old":798,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,32,2,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":799,"rank":2,"right":{"linear_Z4":[2,2,0,0,3,3,0,0,0],"matrix_rows":[49,50,32,16,52,8,64,128,256],"offset":28,"phase":1,"quadratic_rows":[16,32,0,0,49,50,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":848,"old":799,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,2,0,0,0],"matrix_rows":[3,32,34,36,8,16,64,128,256],"offset":14,"phase":1,"quadratic_rows":[34,35,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":983,"old":799,"rank":1,"right":{"linear_Z4":[3,2,0,0,2,0,0,0,0],"matrix_rows":[3,17,16,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[19,17,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":799,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":800,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,264,32,34,4,256,48,64,384],"offset":38,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":846,"old":800,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":977,"old":800,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,32,64,384],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":800,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":847,"old":801,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,260,264,16,288,320,384],"offset":64,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":976,"old":801,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,260,264,272,32,320,384],"offset":32,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":801,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,260,264,16,288,320,384],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":849,"old":802,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[17,65,2,4,8,64,96,128,256],"offset":64,"phase":3,"quadratic_rows":[81,0,0,0,65,0,17,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":982,"old":802,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[17,64,66,4,8,80,32,128,256],"offset":4,"phase":3,"quadratic_rows":[80,0,0,0,81,0,17,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":802,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":803,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,264,32,34,4,256,48,320,128],"offset":38,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":852,"old":803,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":995,"old":803,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,32,320,128],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":804,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[1,136,32,34,4,128,48,192,256],"offset":38,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":850,"old":804,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,137,2,4,128,16,32,192,256],"offset":19,"phase":3,"quadratic_rows":[137,0,0,1,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":989,"old":804,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":804,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":805,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,144,160,162,4,8,32,64,256],"offset":75,"phase":0,"quadratic_rows":[32,0,0,0,160,17,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":851,"old":805,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[17,129,2,4,8,128,160,64,256],"offset":64,"phase":3,"quadratic_rows":[145,0,0,0,129,0,0,17,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":988,"old":805,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[17,128,130,4,8,144,32,64,256],"offset":4,"phase":3,"quadratic_rows":[144,0,0,0,145,0,0,17,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":805,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,2,0],"matrix_rows":[144,17,2,4,8,128,160,64,256],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":853,"old":806,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[17,256,258,4,8,272,32,64,128],"offset":4,"phase":3,"quadratic_rows":[272,0,0,0,273,0,0,0,17]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":994,"old":806,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[17,257,2,4,8,256,288,64,128],"offset":64,"phase":3,"quadratic_rows":[273,0,0,0,257,0,0,0,17]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1035,"old":806,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,288,64,128],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":855,"old":807,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1000,"old":807,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":807,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,288,64,128],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":859,"old":808,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,0],"matrix_rows":[5,64,2,68,72,16,32,128,256],"offset":16,"phase":3,"quadratic_rows":[68,0,69,0,0,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1012,"old":808,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[5,65,2,64,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[69,0,65,0,0,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":808,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":863,"old":809,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,8,144,32,64,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1024,"old":809,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1034,"old":809,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,144,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":810,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[17,16,2,20,8,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":811,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,36,8,16,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":812,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,32,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":813,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":814,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,132,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":815,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,132,136,144,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":816,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":817,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,272,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":818,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,8,272,288,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":819,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,272,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":820,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,68,8,16,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":821,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[10,1,8,12,16,32,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":822,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,8,16,96,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":823,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[18,1,16,4,24,32,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":824,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":825,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":826,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,272,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":827,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,320,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":828,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,160,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":829,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,8,144,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":830,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":831,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":832,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,4,8,48,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":833,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,72,16,32,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":834,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,136,144,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":835,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,136,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":836,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":837,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,272,32,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":838,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,68,8,16,32,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":839,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[17,16,18,4,8,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":840,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,272,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":841,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":842,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,272,32,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":843,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,320,128],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":844,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,132,8,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":845,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,132,136,144,160,192,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":846,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":847,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,272,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":848,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[18,1,16,20,8,32,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":849,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,66,4,8,16,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":850,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,4,136,144,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":851,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,4,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":852,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,320,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":853,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,288,64,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":854,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,16,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":855,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,288,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":856,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,136,16,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":857,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,160,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":858,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[20,1,2,16,24,32,64,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":859,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,16,96,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":860,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,16,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":861,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,272,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":862,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,136,16,32,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":863,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,136,144,160,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":864,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,272,288,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":865,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,16,32,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":810,"old":866,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,2,0,0,0],"matrix_rows":[3,33,32,36,8,16,64,128,256],"offset":14,"phase":1,"quadratic_rows":[35,33,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":811,"old":866,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[3,16,18,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[18,19,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":868,"old":867,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,0],"matrix_rows":[1,41,2,4,32,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[41,0,0,1,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":869,"old":867,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":4,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":868,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,10,4,16,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":869,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[40,1,2,4,32,48,64,128,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":811,"old":870,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[10,1,34,4,32,48,64,128,256],"offset":32,"phase":3,"quadratic_rows":[0,42,0,34,0,10,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":869,"old":870,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[10,1,32,36,40,16,64,128,256],"offset":8,"phase":3,"quadratic_rows":[0,40,0,42,0,10,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":810,"old":871,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":868,"old":871,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":18,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,2,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":812,"old":872,"rank":2,"right":{"linear_Z4":[0,3,2,0,0,0,0,0,2],"matrix_rows":[7,4,256,262,8,16,288,320,384],"offset":90,"phase":2,"quadratic_rows":[262,259,265,4,0,0,0,0,7]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,17,1,34,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":813,"old":872,"rank":2,"right":{"linear_Z4":[3,0,2,0,0,0,0,0,2],"matrix_rows":[4,7,261,256,8,272,32,320,384],"offset":53,"phase":2,"quadratic_rows":[259,261,266,4,0,0,0,0,7]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,2,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":874,"old":873,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,32,16,4,8,64,128,256],"offset":15,"phase":0,"quadratic_rows":[32,16,0,0,2,1,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,32,3,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":875,"old":873,"rank":2,"right":{"linear_Z4":[1,3,0,0,0,0,0,0,2],"matrix_rows":[1,2,323,16,4,8,32,256,384],"offset":138,"phase":3,"quadratic_rows":[323,339,0,0,2,0,3,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":874,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":129,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":875,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,8,272,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,3,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":812,"old":876,"rank":2,"right":{"linear_Z4":[0,1,3,0,0,0,0,0,2],"matrix_rows":[2,4,1,326,8,16,32,256,384],"offset":146,"phase":3,"quadratic_rows":[0,326,334,4,0,0,6,0,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,2,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":874,"old":876,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,1,16,8,32,64,128,256],"offset":27,"phase":0,"quadratic_rows":[0,16,8,4,2,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,17,33,2,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":813,"old":877,"rank":2,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,2],"matrix_rows":[1,7,261,16,272,280,32,320,384],"offset":44,"phase":1,"quadratic_rows":[258,21,22,0,6,0,0,0,1]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,1,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":875,"old":877,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,0,0,0,2],"matrix_rows":[1,7,259,16,272,280,32,320,384],"offset":44,"phase":1,"quadratic_rows":[260,278,275,0,6,0,0,0,7]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":814,"old":878,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":815,"old":878,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":880,"old":879,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[24,1,2,4,128,144,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,144,152,0,0,24,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":881,"old":879,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[24,1,2,4,136,128,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,0,0,152,136,0,0,24,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":880,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,32,192,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":881,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,160,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":815,"old":882,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,137,2,4,128,16,160,64,256],"offset":19,"phase":3,"quadratic_rows":[137,0,0,1,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":881,"old":882,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":814,"old":883,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[17,129,2,4,8,128,32,192,256],"offset":128,"phase":3,"quadratic_rows":[145,0,0,0,129,0,0,17,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":880,"old":883,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[17,128,2,132,8,144,32,64,256],"offset":8,"phase":3,"quadratic_rows":[144,0,0,0,145,0,0,17,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":816,"old":884,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":817,"old":884,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":886,"old":885,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[24,1,2,4,256,272,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,0,0,272,280,0,0,0,24]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":887,"old":885,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[24,1,2,4,264,256,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,0,0,280,264,0,0,0,24]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":886,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,320,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":887,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,288,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":816,"old":888,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[17,257,2,4,8,256,32,320,128],"offset":128,"phase":3,"quadratic_rows":[273,0,0,0,257,0,0,0,17]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":886,"old":888,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[17,256,2,260,8,272,32,64,128],"offset":8,"phase":3,"quadratic_rows":[272,0,0,0,273,0,0,0,17]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":817,"old":889,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,288,64,128],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":887,"old":889,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":818,"old":890,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,260,264,272,288,64,384],"offset":16,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":819,"old":890,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,260,8,272,288,320,384],"offset":128,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":892,"old":891,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":893,"old":891,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,32,64,384],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":892,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":893,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,272,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":819,"old":894,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":76,"phase":1,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":893,"old":894,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":78,"phase":0,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":818,"old":895,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,0],"matrix_rows":[2,1,274,4,8,256,32,64,384],"offset":37,"phase":3,"quadratic_rows":[0,274,0,0,2,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":892,"old":895,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":820,"old":896,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,0],"matrix_rows":[3,9,8,12,16,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[11,9,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":821,"old":896,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[3,64,66,68,8,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":898,"old":897,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,2,0,0],"matrix_rows":[9,65,2,4,64,16,96,128,256],"offset":82,"phase":1,"quadratic_rows":[73,0,0,65,0,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":899,"old":897,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[9,32,34,4,40,16,64,128,256],"offset":4,"phase":3,"quadratic_rows":[40,0,0,41,0,9,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":898,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,34,4,8,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":899,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,16,96,128,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":820,"old":900,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":898,"old":900,"rank":1,"right":{"linear_Z4":[2,1,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":66,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":821,"old":901,"rank":1,"right":{"linear_Z4":[0,3,0,2,0,0,0,0,0],"matrix_rows":[2,1,74,4,64,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,74,0,2,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":899,"old":901,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":8,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":822,"old":902,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":823,"old":902,"rank":1,"right":{"linear_Z4":[0,2,0,1,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":36,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":904,"old":903,"rank":1,"right":{"linear_Z4":[2,0,0,1,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":66,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":905,"old":903,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":904,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,4,40,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":905,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,8,80,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":823,"old":906,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[3,64,66,4,8,80,32,128,256],"offset":38,"phase":1,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":905,"old":906,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[3,17,16,4,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[19,17,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":822,"old":907,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[3,32,34,4,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[34,35,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":904,"old":907,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,2,0,0],"matrix_rows":[3,65,64,4,8,16,96,128,256],"offset":70,"phase":1,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":824,"old":908,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,2,0,0],"matrix_rows":[8,1,2,12,64,80,96,128,256],"offset":24,"phase":2,"quadratic_rows":[0,0,8,76,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":825,"old":908,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":910,"old":909,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":112,"phase":1,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":911,"old":909,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":114,"phase":0,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":910,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,272,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":911,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,16,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":824,"old":912,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":4,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":910,"old":912,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,264,272,288,320,384],"offset":155,"phase":1,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":825,"old":913,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":911,"old":913,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,64,384],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":826,"old":914,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":827,"old":914,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":916,"old":915,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,288,64,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":917,"old":915,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":916,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,272,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":917,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,288,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":827,"old":918,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,1,256,260,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,260,262,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":917,"old":918,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,1,258,256,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,262,258,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":826,"old":919,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":916,"old":919,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":828,"old":920,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":829,"old":920,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,8,16,160,64,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":922,"old":921,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":923,"old":921,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":922,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":923,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,144,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":828,"old":924,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":922,"old":924,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":829,"old":925,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":923,"old":925,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":830,"old":926,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":831,"old":926,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":928,"old":927,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":929,"old":927,"rank":1,"right":{"linear_Z4":[2,0,0,1,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":34,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":928,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":929,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,272,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":831,"old":930,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":8,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":929,"old":930,"rank":1,"right":{"linear_Z4":[2,1,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":10,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":830,"old":931,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":928,"old":931,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":832,"old":932,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":112,"phase":1,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":833,"old":932,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":116,"phase":0,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":934,"old":933,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":935,"old":933,"rank":1,"right":{"linear_Z4":[0,0,2,1,0,0,2,0,0],"matrix_rows":[8,1,2,12,64,80,96,128,256],"offset":72,"phase":2,"quadratic_rows":[0,0,8,76,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":934,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,80,32,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":935,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[36,1,2,32,40,16,64,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":832,"old":936,"rank":1,"right":{"linear_Z4":[0,3,2,0,0,0,2,0,0],"matrix_rows":[6,1,66,64,8,80,32,128,256],"offset":44,"phase":1,"quadratic_rows":[0,70,66,0,0,0,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":934,"old":936,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[6,1,32,36,8,48,64,128,256],"offset":44,"phase":1,"quadratic_rows":[0,36,38,0,0,6,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":833,"old":937,"rank":1,"right":{"linear_Z4":[0,3,2,0,0,2,0,0,0],"matrix_rows":[6,1,34,32,40,16,64,128,256],"offset":28,"phase":1,"quadratic_rows":[0,38,34,0,0,6,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":935,"old":937,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,2,0,0],"matrix_rows":[6,1,64,68,72,16,32,128,256],"offset":28,"phase":1,"quadratic_rows":[0,68,70,0,0,0,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":834,"old":938,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,136,16,32,64,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":835,"old":938,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":940,"old":939,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":941,"old":939,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":940,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,144,32,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":941,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":835,"old":942,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":941,"old":942,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":834,"old":943,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,8,144,32,64,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":940,"old":943,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":836,"old":944,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":837,"old":944,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":946,"old":945,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":947,"old":945,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,264,16,32,64,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":946,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":947,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,272,32,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":836,"old":948,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,4,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":946,"old":948,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,4,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":837,"old":949,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":947,"old":949,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,272,32,64,128],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":838,"old":950,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":839,"old":950,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,67,64,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[67,1,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":952,"old":951,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,0],"matrix_rows":[1,73,2,4,64,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[73,0,0,1,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":953,"old":951,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":8,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":952,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,2,12,16,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":953,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,80,32,128,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":839,"old":954,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,2,0,0],"matrix_rows":[9,65,2,4,64,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[73,0,0,65,0,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":953,"old":954,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,0],"matrix_rows":[9,16,18,4,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[24,0,0,25,9,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":838,"old":955,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,0],"matrix_rows":[3,8,10,12,16,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[10,11,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":952,"old":955,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,2,0,0],"matrix_rows":[3,65,64,68,8,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":840,"old":956,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,289,2,4,8,16,256,64,384],"offset":67,"phase":3,"quadratic_rows":[289,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":841,"old":956,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":958,"old":957,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":42,"phase":1,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":959,"old":957,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,264,272,288,64,384],"offset":47,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":958,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,288,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":959,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":840,"old":960,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,260,264,272,288,64,384],"offset":16,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":958,"old":960,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,260,8,272,288,320,384],"offset":128,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":841,"old":961,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":959,"old":961,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,289,2,4,8,16,256,64,384],"offset":67,"phase":3,"quadratic_rows":[289,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":842,"old":962,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[40,1,2,4,264,16,256,320,128],"offset":128,"phase":3,"quadratic_rows":[0,0,0,296,0,264,0,0,40]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":843,"old":962,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,0,2],"matrix_rows":[40,1,2,4,256,272,288,64,128],"offset":32,"phase":3,"quadratic_rows":[0,0,0,288,0,296,0,0,40]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":964,"old":963,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":20,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":965,"old":963,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":964,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,288,320,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":965,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,8,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":843,"old":966,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,0,2],"matrix_rows":[34,1,256,260,8,16,288,64,128],"offset":8,"phase":3,"quadratic_rows":[0,288,0,0,0,290,0,0,34]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":965,"old":966,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[34,1,258,4,8,16,256,320,128],"offset":128,"phase":3,"quadratic_rows":[0,290,0,0,0,258,0,0,34]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":842,"old":967,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":964,"old":967,"rank":1,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,0],"matrix_rows":[2,1,266,4,256,272,32,64,128],"offset":21,"phase":3,"quadratic_rows":[0,266,0,2,0,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":844,"old":968,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":845,"old":968,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":20,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":970,"old":969,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,2,0],"matrix_rows":[40,1,2,4,128,144,160,64,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,160,0,168,0,40,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":971,"old":969,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[40,1,2,4,136,16,128,192,256],"offset":128,"phase":3,"quadratic_rows":[0,0,0,168,0,136,0,40,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":970,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":971,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,144,32,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":844,"old":972,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[34,1,130,4,8,16,128,192,256],"offset":128,"phase":3,"quadratic_rows":[0,162,0,0,0,130,0,34,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":970,"old":972,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,2,0],"matrix_rows":[34,1,128,132,8,16,160,64,256],"offset":8,"phase":3,"quadratic_rows":[0,160,0,0,0,162,0,34,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":845,"old":973,"rank":1,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,0],"matrix_rows":[2,1,138,4,128,144,32,64,256],"offset":21,"phase":3,"quadratic_rows":[0,138,0,2,0,0,0,2,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":971,"old":973,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":846,"old":974,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":847,"old":974,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,32,64,384],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":976,"old":975,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":977,"old":975,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,264,16,288,320,384],"offset":143,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":976,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,16,288,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":977,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,272,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":847,"old":978,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":977,"old":978,"rank":1,"right":{"linear_Z4":[2,1,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":66,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":846,"old":979,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":976,"old":979,"rank":1,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,0],"matrix_rows":[2,1,266,4,256,16,32,64,384],"offset":21,"phase":3,"quadratic_rows":[0,266,0,2,0,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":848,"old":980,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":42,"phase":1,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":849,"old":980,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,19,16,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[19,1,0,0,1,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":982,"old":981,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,0],"matrix_rows":[17,32,2,36,8,48,64,128,256],"offset":8,"phase":3,"quadratic_rows":[48,0,0,0,49,17,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":983,"old":981,"rank":1,"right":{"linear_Z4":[3,0,0,0,2,0,2,0,0],"matrix_rows":[17,65,2,4,8,64,96,128,256],"offset":98,"phase":1,"quadratic_rows":[81,0,0,0,65,0,17,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":982,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[80,1,2,4,8,64,96,128,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":983,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,36,8,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":848,"old":984,"rank":1,"right":{"linear_Z4":[0,3,0,0,2,0,0,0,0],"matrix_rows":[2,1,82,4,8,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,82,0,0,2,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":982,"old":984,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":8,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":849,"old":985,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":78,"phase":0,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":983,"old":985,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":76,"phase":1,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":850,"old":986,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":851,"old":986,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":988,"old":987,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[24,1,2,4,128,144,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,0,0,144,152,0,0,24,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":989,"old":987,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[24,1,2,4,136,128,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,152,136,0,0,24,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":988,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,160,64,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":989,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":851,"old":990,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[9,129,2,4,128,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[137,0,0,129,0,0,0,9,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":989,"old":990,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[9,128,130,4,136,16,32,64,256],"offset":4,"phase":3,"quadratic_rows":[136,0,0,137,0,0,0,9,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":850,"old":991,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,145,2,4,8,128,160,64,256],"offset":35,"phase":3,"quadratic_rows":[145,0,0,0,1,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":988,"old":991,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":852,"old":992,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[24,1,2,4,264,256,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,0,0,280,264,0,0,0,24]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":853,"old":992,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[24,1,2,4,256,272,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,0,0,272,280,0,0,0,24]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":994,"old":993,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":995,"old":993,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":994,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":995,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,272,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":852,"old":996,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[9,256,258,4,264,16,32,64,128],"offset":4,"phase":3,"quadratic_rows":[264,0,0,265,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":994,"old":996,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[9,257,2,4,256,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[265,0,0,257,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":853,"old":997,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":995,"old":997,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,288,64,128],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":854,"old":998,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,288,64,128],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":855,"old":998,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1000,"old":999,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,4,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1001,"old":999,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,4,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1000,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1001,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,320,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":855,"old":1002,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,1,256,260,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,260,262,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1001,"old":1002,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,1,258,256,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,262,258,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":854,"old":1003,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1000,"old":1003,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":856,"old":1004,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,8,16,160,64,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":857,"old":1004,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1006,"old":1005,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1007,"old":1005,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1006,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,136,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1007,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,32,192,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":856,"old":1008,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1006,"old":1008,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":857,"old":1009,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1007,"old":1009,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":858,"old":1010,"rank":1,"right":{"linear_Z4":[0,0,2,1,0,0,2,0,0],"matrix_rows":[8,1,2,12,64,80,96,128,256],"offset":40,"phase":2,"quadratic_rows":[0,0,8,76,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":859,"old":1010,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1012,"old":1011,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":114,"phase":0,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1013,"old":1011,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":112,"phase":1,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1012,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,72,16,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1013,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,4,8,48,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":859,"old":1014,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,0],"matrix_rows":[5,32,2,36,8,48,64,128,256],"offset":32,"phase":3,"quadratic_rows":[36,0,37,0,0,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1013,"old":1014,"rank":1,"right":{"linear_Z4":[3,0,2,0,0,0,2,0,0],"matrix_rows":[5,65,2,64,8,16,96,128,256],"offset":74,"phase":1,"quadratic_rows":[69,0,65,0,0,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":858,"old":1015,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[5,64,2,68,72,16,32,128,256],"offset":26,"phase":1,"quadratic_rows":[68,0,69,0,0,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1012,"old":1015,"rank":1,"right":{"linear_Z4":[3,0,2,0,2,0,0,0,0],"matrix_rows":[5,17,2,16,24,32,64,128,256],"offset":26,"phase":1,"quadratic_rows":[21,0,17,0,5,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":860,"old":1016,"rank":1,"right":{"linear_Z4":[2,0,0,1,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":66,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":861,"old":1016,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1018,"old":1017,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":20,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1019,"old":1017,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1018,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1019,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":860,"old":1020,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,264,272,288,320,384],"offset":167,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1018,"old":1020,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":8,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":861,"old":1021,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,32,64,384],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1019,"old":1021,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":862,"old":1022,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":863,"old":1022,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,136,16,32,64,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1024,"old":1023,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1025,"old":1023,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1024,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,144,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1025,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,160,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":863,"old":1026,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1025,"old":1026,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":862,"old":1027,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1024,"old":1027,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,67,128,259,3,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":864,"old":1028,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,2],"matrix_rows":[6,5,263,128,384,392,144,32,192],"offset":82,"phase":3,"quadratic_rows":[259,387,128,0,0,0,0,6,3]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,32,66,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":865,"old":1028,"rank":2,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,0],"matrix_rows":[5,6,32,288,260,8,304,320,384],"offset":71,"phase":0,"quadratic_rows":[36,292,259,0,0,3,0,0,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":1030,"old":1029,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,64,257,256,4,8,272,32,128],"offset":322,"phase":3,"quadratic_rows":[259,257,0,0,0,0,128,64,3]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,64,129,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":1031,"old":1029,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,64,256,258,4,8,16,288,128],"offset":386,"phase":3,"quadratic_rows":[258,259,0,0,0,0,128,64,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1030,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,288,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":1031,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,272,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,3,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":864,"old":1032,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,5,263,16,272,280,32,320,384],"offset":43,"phase":0,"quadratic_rows":[259,275,16,0,6,0,0,0,3]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,1,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":1030,"old":1032,"rank":2,"right":{"linear_Z4":[2,0,2,0,0,0,0,0,0],"matrix_rows":[3,5,257,16,272,280,32,320,384],"offset":43,"phase":0,"quadratic_rows":[262,17,273,0,6,0,0,0,5]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":865,"old":1033,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,64,1,256,260,8,272,32,128],"offset":322,"phase":3,"quadratic_rows":[0,260,262,0,0,0,128,64,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,64,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":1031,"old":1033,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,64,1,258,256,264,16,32,128],"offset":290,"phase":3,"quadratic_rows":[0,262,258,0,0,0,128,64,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1034,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1035,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1036,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}}],"endpoint_adapters":[{"frame":7,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,11,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":0,"rank":0,"right":null,"role":"source"},{"frame":868,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,16,32,64,128,256],"offset":11,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":0,"rank":0,"right":null,"role":"target"},{"frame":213,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,19,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":1,"rank":0,"right":null,"role":"source"},{"frame":839,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,17,32,64,128,256],"offset":19,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":1,"rank":0,"right":null,"role":"target"},{"frame":66,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,35,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":2,"rank":0,"right":null,"role":"source"},{"frame":898,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,33,64,128,256],"offset":35,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":2,"rank":0,"right":null,"role":"target"},{"frame":270,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,32,67,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":3,"rank":0,"right":null,"role":"source"},{"frame":849,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,32,65,128,256],"offset":67,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":3,"rank":0,"right":null,"role":"target"},{"frame":300,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,32,64,131,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":4,"rank":0,"right":null,"role":"source"},{"frame":851,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,32,64,129,256],"offset":131,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":4,"rank":0,"right":null,"role":"target"},{"frame":298,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,32,64,128,259],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":5,"rank":0,"right":null,"role":"source"},{"frame":994,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,32,64,128,257],"offset":259,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":5,"rank":0,"right":null,"role":"target"},{"frame":210,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,13,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":6,"rank":0,"right":null,"role":"source"},{"frame":952,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,16,32,64,128,256],"offset":13,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":6,"rank":0,"right":null,"role":"target"},{"frame":13,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,21,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":7,"rank":0,"right":null,"role":"source"},{"frame":810,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,17,32,64,128,256],"offset":21,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":7,"rank":0,"right":null,"role":"target"},{"frame":272,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,37,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":8,"rank":0,"right":null,"role":"source"},{"frame":983,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,33,64,128,256],"offset":37,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":8,"rank":0,"right":null,"role":"target"},{"frame":72,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,32,69,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":9,"rank":0,"right":null,"role":"source"},{"frame":820,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,32,65,128,256],"offset":69,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":9,"rank":0,"right":null,"role":"target"},{"frame":42,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,32,64,133,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":10,"rank":0,"right":null,"role":"source"},{"frame":814,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,32,64,129,256],"offset":133,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":10,"rank":0,"right":null,"role":"target"},{"frame":43,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,32,64,128,261],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":11,"rank":0,"right":null,"role":"source"},{"frame":816,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,32,64,128,257],"offset":261,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":11,"rank":0,"right":null,"role":"target"},{"frame":94,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,41,64,128,256],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":12,"rank":0,"right":null,"role":"source"},{"frame":904,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,33,64,128,256],"offset":41,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":12,"rank":0,"right":null,"role":"target"},{"frame":355,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,32,73,128,256],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":13,"rank":0,"right":null,"role":"source"},{"frame":1012,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,32,65,128,256],"offset":73,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":13,"rank":0,"right":null,"role":"target"},{"frame":327,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,32,64,137,256],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":14,"rank":0,"right":null,"role":"source"},{"frame":1006,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,32,64,129,256],"offset":137,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":14,"rank":0,"right":null,"role":"target"},{"frame":326,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,32,64,128,265],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":15,"rank":0,"right":null,"role":"source"},{"frame":1000,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,32,64,128,257],"offset":265,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":15,"rank":0,"right":null,"role":"target"},{"frame":360,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,49,64,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":16,"rank":0,"right":null,"role":"source"},{"frame":1013,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,33,64,128,256],"offset":49,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":16,"rank":0,"right":null,"role":"target"},{"frame":99,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,32,81,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":17,"rank":0,"right":null,"role":"source"},{"frame":905,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,32,65,128,256],"offset":81,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":17,"rank":0,"right":null,"role":"target"},{"frame":127,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,32,64,145,256],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":18,"rank":0,"right":null,"role":"source"},{"frame":923,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,32,64,129,256],"offset":145,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":18,"rank":0,"right":null,"role":"target"},{"frame":129,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,32,64,128,273],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":19,"rank":0,"right":null,"role":"source"},{"frame":826,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,32,64,128,257],"offset":273,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":19,"rank":0,"right":null,"role":"target"},{"frame":389,"left":{"linear_Z4":[1,0,0,0,0,1,0,0,0],"matrix_rows":[32,2,4,8,16,1,64,161,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"port":20,"rank":0,"right":null,"role":"source"},{"frame":1025,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,33,64,129,256],"offset":161,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":20,"rank":0,"right":null,"role":"target"},{"frame":385,"left":{"linear_Z4":[1,0,0,0,0,1,0,0,0],"matrix_rows":[32,2,4,8,16,1,64,128,289],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"port":21,"rank":0,"right":null,"role":"source"},{"frame":1030,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,33,64,128,257],"offset":289,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":21,"rank":0,"right":null,"role":"target"},{"frame":186,"left":{"linear_Z4":[1,0,0,0,0,0,1,0,0],"matrix_rows":[64,2,4,8,16,32,1,193,256],"offset":0,"phase":0,"quadratic_rows":[65,0,0,0,0,0,65,0,0]},"port":22,"rank":0,"right":null,"role":"source"},{"frame":941,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,65,129,256],"offset":193,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":22,"rank":0,"right":null,"role":"target"},{"frame":188,"left":{"linear_Z4":[1,0,0,0,0,0,1,0,0],"matrix_rows":[64,2,4,8,16,32,1,128,321],"offset":0,"phase":0,"quadratic_rows":[65,0,0,0,0,0,65,0,0]},"port":23,"rank":0,"right":null,"role":"source"},{"frame":836,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,65,128,257],"offset":321,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":23,"rank":0,"right":null,"role":"target"},{"frame":158,"left":{"linear_Z4":[1,0,0,0,0,0,0,1,0],"matrix_rows":[128,2,4,8,16,32,64,1,385],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,129,0]},"port":24,"rank":0,"right":null,"role":"source"},{"frame":830,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,129,257],"offset":385,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":24,"rank":0,"right":null,"role":"target"},{"frame":67,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,14,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":25,"rank":0,"right":null,"role":"source"},{"frame":821,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,16,32,64,128,256],"offset":14,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":25,"rank":0,"right":null,"role":"target"},{"frame":275,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,22,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":26,"rank":0,"right":null,"role":"source"},{"frame":848,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,18,32,64,128,256],"offset":22,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":26,"rank":0,"right":null,"role":"target"},{"frame":10,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,38,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":27,"rank":0,"right":null,"role":"source"},{"frame":811,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,34,64,128,256],"offset":38,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":27,"rank":0,"right":null,"role":"target"},{"frame":216,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,32,70,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":28,"rank":0,"right":null,"role":"source"},{"frame":838,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,32,66,128,256],"offset":70,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":28,"rank":0,"right":null,"role":"target"},{"frame":246,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,32,64,134,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":29,"rank":0,"right":null,"role":"source"},{"frame":844,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,32,64,130,256],"offset":134,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":29,"rank":0,"right":null,"role":"target"},{"frame":244,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,32,64,128,262],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":30,"rank":0,"right":null,"role":"source"},{"frame":965,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,32,64,128,258],"offset":262,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":30,"rank":0,"right":null,"role":"target"},{"frame":97,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,26,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":31,"rank":0,"right":null,"role":"source"},{"frame":823,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,18,32,64,128,256],"offset":26,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":31,"rank":0,"right":null,"role":"target"},{"frame":154,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,16,32,74,128,256],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":32,"rank":0,"right":null,"role":"source"},{"frame":833,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,16,32,66,128,256],"offset":74,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":32,"rank":0,"right":null,"role":"target"},{"frame":184,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,16,32,64,138,256],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":33,"rank":0,"right":null,"role":"source"},{"frame":835,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,16,32,64,130,256],"offset":138,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":33,"rank":0,"right":null,"role":"target"},{"frame":182,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,16,32,64,128,266],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":34,"rank":0,"right":null,"role":"source"},{"frame":946,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,16,32,64,128,258],"offset":266,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":34,"rank":0,"right":null,"role":"target"},{"frame":159,"left":{"linear_Z4":[0,1,0,0,1,0,0,0,0],"matrix_rows":[1,16,4,8,2,50,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"port":35,"rank":0,"right":null,"role":"source"},{"frame":832,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,18,34,64,128,256],"offset":50,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":35,"rank":0,"right":null,"role":"target"},{"frame":384,"left":{"linear_Z4":[0,1,0,0,1,0,0,0,0],"matrix_rows":[1,16,4,8,2,32,64,146,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"port":36,"rank":0,"right":null,"role":"source"},{"frame":1024,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,18,32,64,130,256],"offset":146,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":36,"rank":0,"right":null,"role":"target"},{"frame":388,"left":{"linear_Z4":[0,1,0,0,1,0,0,0,0],"matrix_rows":[1,16,4,8,2,32,64,128,274],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"port":37,"rank":0,"right":null,"role":"source"},{"frame":1031,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,18,32,64,128,258],"offset":274,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":37,"rank":0,"right":null,"role":"target"},{"frame":100,"left":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[1,32,4,8,16,2,98,128,256],"offset":0,"phase":0,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"port":38,"rank":0,"right":null,"role":"source"},{"frame":822,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,34,66,128,256],"offset":98,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":38,"rank":0,"right":null,"role":"target"},{"frame":130,"left":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[1,32,4,8,16,2,64,162,256],"offset":0,"phase":0,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"port":39,"rank":0,"right":null,"role":"source"},{"frame":828,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,34,64,130,256],"offset":162,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":39,"rank":0,"right":null,"role":"target"},{"frame":128,"left":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[1,32,4,8,16,2,64,128,290],"offset":0,"phase":0,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"port":40,"rank":0,"right":null,"role":"source"},{"frame":917,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,34,64,128,258],"offset":290,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":40,"rank":0,"right":null,"role":"target"},{"frame":330,"left":{"linear_Z4":[0,1,0,0,0,0,1,0,0],"matrix_rows":[1,64,4,8,16,32,2,194,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"port":41,"rank":0,"right":null,"role":"source"},{"frame":1007,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,66,130,256],"offset":194,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":41,"rank":0,"right":null,"role":"target"},{"frame":331,"left":{"linear_Z4":[0,1,0,0,0,0,1,0,0],"matrix_rows":[1,64,4,8,16,32,2,128,322],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"port":42,"rank":0,"right":null,"role":"source"},{"frame":1001,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,66,128,258],"offset":322,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":42,"rank":0,"right":null,"role":"target"},{"frame":359,"left":{"linear_Z4":[0,1,0,0,0,0,0,1,0],"matrix_rows":[1,128,4,8,16,32,64,2,386],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,130,0]},"port":43,"rank":0,"right":null,"role":"source"},{"frame":1019,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,130,258],"offset":386,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":43,"rank":0,"right":null,"role":"target"},{"frame":361,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,28,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":44,"rank":0,"right":null,"role":"source"},{"frame":858,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,20,32,64,128,256],"offset":28,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":44,"rank":0,"right":null,"role":"target"},{"frame":156,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,16,44,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":45,"rank":0,"right":null,"role":"source"},{"frame":935,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,16,36,64,128,256],"offset":44,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":45,"rank":0,"right":null,"role":"target"},{"frame":390,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,16,32,64,140,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":46,"rank":0,"right":null,"role":"source"},{"frame":862,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,16,32,64,132,256],"offset":140,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":46,"rank":0,"right":null,"role":"target"},{"frame":386,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,16,32,64,128,268],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":47,"rank":0,"right":null,"role":"source"},{"frame":865,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,16,32,64,128,260],"offset":268,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":47,"rank":0,"right":null,"role":"target"},{"frame":153,"left":{"linear_Z4":[0,0,1,0,1,0,0,0,0],"matrix_rows":[1,2,16,8,4,32,84,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"port":48,"rank":0,"right":null,"role":"source"},{"frame":934,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,20,32,68,128,256],"offset":84,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":48,"rank":0,"right":null,"role":"target"},{"frame":181,"left":{"linear_Z4":[0,0,1,0,1,0,0,0,0],"matrix_rows":[1,2,16,8,4,32,64,148,256],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"port":49,"rank":0,"right":null,"role":"source"},{"frame":940,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,20,32,64,132,256],"offset":148,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":49,"rank":0,"right":null,"role":"target"},{"frame":183,"left":{"linear_Z4":[0,0,1,0,1,0,0,0,0],"matrix_rows":[1,2,16,8,4,32,64,128,276],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"port":50,"rank":0,"right":null,"role":"source"},{"frame":837,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,20,32,64,128,260],"offset":276,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":50,"rank":0,"right":null,"role":"target"},{"frame":358,"left":{"linear_Z4":[0,0,1,0,0,1,0,0,0],"matrix_rows":[1,2,32,8,16,4,100,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"port":51,"rank":0,"right":null,"role":"source"},{"frame":859,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,36,68,128,256],"offset":100,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":51,"rank":0,"right":null,"role":"target"},{"frame":328,"left":{"linear_Z4":[0,0,1,0,0,1,0,0,0],"matrix_rows":[1,2,32,8,16,4,64,164,256],"offset":0,"phase":0,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"port":52,"rank":0,"right":null,"role":"source"},{"frame":857,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,36,64,132,256],"offset":164,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":52,"rank":0,"right":null,"role":"target"},{"frame":329,"left":{"linear_Z4":[0,0,1,0,0,1,0,0,0],"matrix_rows":[1,2,32,8,16,4,64,128,292],"offset":0,"phase":0,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"port":53,"rank":0,"right":null,"role":"source"},{"frame":855,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,36,64,128,260],"offset":292,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":53,"rank":0,"right":null,"role":"target"},{"frame":124,"left":{"linear_Z4":[0,0,1,0,0,0,1,0,0],"matrix_rows":[1,2,64,8,16,32,4,196,256],"offset":0,"phase":0,"quadratic_rows":[0,0,68,0,0,0,68,0,0]},"port":54,"rank":0,"right":null,"role":"source"},{"frame":922,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,68,132,256],"offset":196,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":54,"rank":0,"right":null,"role":"target"},{"frame":126,"left":{"linear_Z4":[0,0,1,0,0,0,1,0,0],"matrix_rows":[1,2,64,8,16,32,4,128,324],"offset":0,"phase":0,"quadratic_rows":[0,0,68,0,0,0,68,0,0]},"port":55,"rank":0,"right":null,"role":"source"},{"frame":827,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,68,128,260],"offset":324,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":55,"rank":0,"right":null,"role":"target"},{"frame":96,"left":{"linear_Z4":[0,0,1,0,0,0,0,1,0],"matrix_rows":[1,2,128,8,16,32,64,4,388],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,132,0]},"port":56,"rank":0,"right":null,"role":"source"},{"frame":825,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,132,260],"offset":388,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":56,"rank":0,"right":null,"role":"target"},{"frame":12,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,56,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":57,"rank":0,"right":null,"role":"source"},{"frame":869,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,40,64,128,256],"offset":56,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":57,"rank":0,"right":null,"role":"target"},{"frame":215,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,32,88,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":58,"rank":0,"right":null,"role":"source"},{"frame":953,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,32,72,128,256],"offset":88,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":58,"rank":0,"right":null,"role":"target"},{"frame":243,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,32,64,152,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":59,"rank":0,"right":null,"role":"source"},{"frame":971,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,32,64,136,256],"offset":152,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":59,"rank":0,"right":null,"role":"target"},{"frame":245,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,32,64,128,280],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":60,"rank":0,"right":null,"role":"source"},{"frame":842,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,32,64,128,264],"offset":280,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":60,"rank":0,"right":null,"role":"target"},{"frame":69,"left":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[1,2,4,32,16,8,104,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"port":61,"rank":0,"right":null,"role":"source"},{"frame":899,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,40,72,128,256],"offset":104,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":61,"rank":0,"right":null,"role":"target"},{"frame":41,"left":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[1,2,4,32,16,8,64,168,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"port":62,"rank":0,"right":null,"role":"source"},{"frame":881,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,40,64,136,256],"offset":168,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":62,"rank":0,"right":null,"role":"target"},{"frame":40,"left":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[1,2,4,32,16,8,64,128,296],"offset":0,"phase":0,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"port":63,"rank":0,"right":null,"role":"source"},{"frame":887,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,40,64,128,264],"offset":296,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":63,"rank":0,"right":null,"role":"target"},{"frame":302,"left":{"linear_Z4":[0,0,0,1,0,0,1,0,0],"matrix_rows":[1,2,4,64,16,32,8,200,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,0,0,72,0,0]},"port":64,"rank":0,"right":null,"role":"source"},{"frame":989,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,72,136,256],"offset":200,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":64,"rank":0,"right":null,"role":"target"},{"frame":304,"left":{"linear_Z4":[0,0,0,1,0,0,1,0,0],"matrix_rows":[1,2,4,64,16,32,8,128,328],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,0,0,72,0,0]},"port":65,"rank":0,"right":null,"role":"source"},{"frame":852,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,72,128,264],"offset":328,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":65,"rank":0,"right":null,"role":"target"},{"frame":274,"left":{"linear_Z4":[0,0,0,1,0,0,0,1,0],"matrix_rows":[1,2,4,128,16,32,64,8,392],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,136,0]},"port":66,"rank":0,"right":null,"role":"source"},{"frame":846,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,136,264],"offset":392,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":66,"rank":0,"right":null,"role":"target"},{"frame":269,"left":{"linear_Z4":[0,0,0,0,1,1,0,0,0],"matrix_rows":[1,2,4,8,32,16,112,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"port":67,"rank":0,"right":null,"role":"source"},{"frame":982,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,48,80,128,256],"offset":112,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":67,"rank":0,"right":null,"role":"target"},{"frame":297,"left":{"linear_Z4":[0,0,0,0,1,1,0,0,0],"matrix_rows":[1,2,4,8,32,16,64,176,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"port":68,"rank":0,"right":null,"role":"source"},{"frame":988,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,48,64,144,256],"offset":176,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":68,"rank":0,"right":null,"role":"target"},{"frame":299,"left":{"linear_Z4":[0,0,0,0,1,1,0,0,0],"matrix_rows":[1,2,4,8,32,16,64,128,304],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"port":69,"rank":0,"right":null,"role":"source"},{"frame":853,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,48,64,128,272],"offset":304,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":69,"rank":0,"right":null,"role":"target"},{"frame":36,"left":{"linear_Z4":[0,0,0,0,1,0,1,0,0],"matrix_rows":[1,2,4,8,64,32,16,208,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,80,0,0]},"port":70,"rank":0,"right":null,"role":"source"},{"frame":880,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,80,144,256],"offset":208,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":70,"rank":0,"right":null,"role":"target"},{"frame":37,"left":{"linear_Z4":[0,0,0,0,1,0,1,0,0],"matrix_rows":[1,2,4,8,64,32,16,128,336],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,80,0,0]},"port":71,"rank":0,"right":null,"role":"source"},{"frame":886,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,80,128,272],"offset":336,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":71,"rank":0,"right":null,"role":"target"},{"frame":65,"left":{"linear_Z4":[0,0,0,0,1,0,0,1,0],"matrix_rows":[1,2,4,8,128,32,64,16,400],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,144,0]},"port":72,"rank":0,"right":null,"role":"source"},{"frame":892,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,144,272],"offset":400,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":72,"rank":0,"right":null,"role":"target"},{"frame":240,"left":{"linear_Z4":[0,0,0,0,0,1,1,0,0],"matrix_rows":[1,2,4,8,16,64,32,224,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,96,96,0,0]},"port":73,"rank":0,"right":null,"role":"source"},{"frame":970,"left":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,2,4,8,16,32,96,160,256],"offset":224,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":73,"rank":0,"right":null,"role":"target"},{"frame":242,"left":{"linear_Z4":[0,0,0,0,0,1,1,0,0],"matrix_rows":[1,2,4,8,16,64,32,128,352],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,96,96,0,0]},"port":74,"rank":0,"right":null,"role":"source"},{"frame":843,"left":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,2,4,8,16,32,96,128,288],"offset":352,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":74,"rank":0,"right":null,"role":"target"},{"frame":212,"left":{"linear_Z4":[0,0,0,0,0,1,0,1,0],"matrix_rows":[1,2,4,8,16,128,64,32,416],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,160,0,160,0]},"port":75,"rank":0,"right":null,"role":"source"},{"frame":841,"left":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,160,288],"offset":416,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":75,"rank":0,"right":null,"role":"target"},{"frame":8,"left":{"linear_Z4":[0,0,0,0,0,0,1,1,0],"matrix_rows":[1,2,4,8,16,32,128,64,448],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,192,192,0]},"port":76,"rank":0,"right":null,"role":"source"},{"frame":874,"left":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,2,4,8,16,32,64,192,320],"offset":448,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":76,"rank":0,"right":null,"role":"target"},{"frame":101,"left":{"linear_Z4":[0,0,1,1,1,1,1,1,0],"matrix_rows":[1,2,248,244,236,220,188,124,508],"offset":0,"phase":0,"quadratic_rows":[0,0,252,252,252,252,252,252,0]},"port":77,"rank":0,"right":null,"role":"source"},{"frame":824,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,20,36,68,132,260],"offset":508,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":77,"rank":0,"right":null,"role":"target"},{"frame":356,"left":{"linear_Z4":[0,1,0,1,1,1,1,1,0],"matrix_rows":[1,248,4,242,234,218,186,122,506],"offset":0,"phase":0,"quadratic_rows":[0,250,0,250,250,250,250,250,0]},"port":78,"rank":0,"right":null,"role":"source"},{"frame":1018,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,18,34,66,130,258],"offset":506,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":78,"rank":0,"right":null,"role":"target"},{"frame":71,"left":{"linear_Z4":[0,1,1,0,1,1,1,1,0],"matrix_rows":[1,244,242,8,230,214,182,118,502],"offset":0,"phase":0,"quadratic_rows":[0,246,246,0,246,246,246,246,0]},"port":79,"rank":0,"right":null,"role":"source"},{"frame":818,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,18,34,66,130,258],"offset":502,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":79,"rank":0,"right":null,"role":"target"},{"frame":268,"left":{"linear_Z4":[0,1,1,1,0,1,1,1,0],"matrix_rows":[1,236,234,230,16,206,174,110,494],"offset":0,"phase":0,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"port":80,"rank":0,"right":null,"role":"source"},{"frame":976,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,16,34,66,130,258],"offset":494,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":80,"rank":0,"right":null,"role":"target"},{"frame":14,"left":{"linear_Z4":[0,1,1,1,1,0,1,1,0],"matrix_rows":[1,220,218,214,206,32,158,94,478],"offset":0,"phase":0,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"port":81,"rank":0,"right":null,"role":"source"},{"frame":812,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,32,66,130,258],"offset":478,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":81,"rank":0,"right":null,"role":"target"},{"frame":211,"left":{"linear_Z4":[0,1,1,1,1,1,0,1,0],"matrix_rows":[1,188,186,182,174,158,64,62,446],"offset":0,"phase":0,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"port":82,"rank":0,"right":null,"role":"source"},{"frame":958,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,34,64,130,258],"offset":446,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":82,"rank":0,"right":null,"role":"target"},{"frame":239,"left":{"linear_Z4":[0,1,1,1,1,1,1,0,0],"matrix_rows":[1,124,122,118,110,94,62,128,382],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"port":83,"rank":0,"right":null,"role":"source"},{"frame":964,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,34,66,128,258],"offset":382,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":83,"rank":0,"right":null,"role":"target"},{"frame":241,"left":{"linear_Z4":[0,1,1,1,1,1,1,0,0],"matrix_rows":[1,124,122,118,110,94,62,254,256],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"port":84,"rank":0,"right":null,"role":"source"},{"frame":845,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,34,66,130,256],"offset":254,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":84,"rank":0,"right":null,"role":"target"},{"frame":155,"left":{"linear_Z4":[1,0,0,1,1,1,1,1,0],"matrix_rows":[248,2,4,241,233,217,185,121,505],"offset":0,"phase":0,"quadratic_rows":[249,0,0,249,249,249,249,249,0]},"port":85,"rank":0,"right":null,"role":"source"},{"frame":831,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,17,33,65,129,257],"offset":505,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":85,"rank":0,"right":null,"role":"target"},{"frame":217,"left":{"linear_Z4":[1,0,1,0,1,1,1,1,0],"matrix_rows":[244,2,241,8,229,213,181,117,501],"offset":0,"phase":0,"quadratic_rows":[245,0,245,0,245,245,245,245,0]},"port":86,"rank":0,"right":null,"role":"source"},{"frame":840,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,17,33,65,129,257],"offset":501,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":86,"rank":0,"right":null,"role":"target"},{"frame":9,"left":{"linear_Z4":[1,0,1,1,0,1,1,1,0],"matrix_rows":[236,2,233,229,16,205,173,109,493],"offset":0,"phase":0,"quadratic_rows":[237,0,237,237,0,237,237,237,0]},"port":87,"rank":0,"right":null,"role":"source"},{"frame":813,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,16,33,65,129,257],"offset":493,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":87,"rank":0,"right":null,"role":"target"},{"frame":271,"left":{"linear_Z4":[1,0,1,1,1,0,1,1,0],"matrix_rows":[220,2,217,213,205,32,157,93,477],"offset":0,"phase":0,"quadratic_rows":[221,0,221,221,221,0,221,221,0]},"port":88,"rank":0,"right":null,"role":"source"},{"frame":847,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,32,65,129,257],"offset":477,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":88,"rank":0,"right":null,"role":"target"},{"frame":68,"left":{"linear_Z4":[1,0,1,1,1,1,0,1,0],"matrix_rows":[188,2,185,181,173,157,64,61,445],"offset":0,"phase":0,"quadratic_rows":[189,0,189,189,189,189,0,189,0]},"port":89,"rank":0,"right":null,"role":"source"},{"frame":819,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,33,64,129,257],"offset":445,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":89,"rank":0,"right":null,"role":"target"},{"frame":38,"left":{"linear_Z4":[1,0,1,1,1,1,1,0,0],"matrix_rows":[124,2,121,117,109,93,61,128,381],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,125,125,125,0,0]},"port":90,"rank":0,"right":null,"role":"source"},{"frame":817,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,33,65,128,257],"offset":381,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":90,"rank":0,"right":null,"role":"target"},{"frame":39,"left":{"linear_Z4":[1,0,1,1,1,1,1,0,0],"matrix_rows":[124,2,121,117,109,93,61,253,256],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,125,125,125,0,0]},"port":91,"rank":0,"right":null,"role":"source"},{"frame":815,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,33,65,129,256],"offset":253,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":91,"rank":0,"right":null,"role":"target"},{"frame":11,"left":{"linear_Z4":[1,1,0,0,1,1,1,1,0],"matrix_rows":[242,241,4,8,227,211,179,115,499],"offset":0,"phase":0,"quadratic_rows":[243,243,0,0,243,243,243,243,0]},"port":92,"rank":0,"right":null,"role":"source"},{"frame":875,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,17,33,65,129,257],"offset":499,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":92,"rank":0,"right":null,"role":"target"},{"frame":214,"left":{"linear_Z4":[1,1,0,1,0,1,1,1,0],"matrix_rows":[234,233,4,227,16,203,171,107,491],"offset":0,"phase":0,"quadratic_rows":[235,235,0,235,0,235,235,235,0]},"port":93,"rank":0,"right":null,"role":"source"},{"frame":959,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,16,33,65,129,257],"offset":491,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":93,"rank":0,"right":null,"role":"target"},{"frame":70,"left":{"linear_Z4":[1,1,0,1,1,0,1,1,0],"matrix_rows":[218,217,4,211,203,32,155,91,475],"offset":0,"phase":0,"quadratic_rows":[219,219,0,219,219,0,219,219,0]},"port":94,"rank":0,"right":null,"role":"source"},{"frame":893,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,32,65,129,257],"offset":475,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":94,"rank":0,"right":null,"role":"target"},{"frame":273,"left":{"linear_Z4":[1,1,0,1,1,1,0,1,0],"matrix_rows":[186,185,4,179,171,155,64,59,443],"offset":0,"phase":0,"quadratic_rows":[187,187,0,187,187,187,0,187,0]},"port":95,"rank":0,"right":null,"role":"source"},{"frame":977,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,33,64,129,257],"offset":443,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":95,"rank":0,"right":null,"role":"target"},{"frame":301,"left":{"linear_Z4":[1,1,0,1,1,1,1,0,0],"matrix_rows":[122,121,4,115,107,91,59,128,379],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,123,123,123,0,0]},"port":96,"rank":0,"right":null,"role":"source"},{"frame":995,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,33,65,128,257],"offset":379,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":96,"rank":0,"right":null,"role":"target"},{"frame":303,"left":{"linear_Z4":[1,1,0,1,1,1,1,0,0],"matrix_rows":[122,121,4,115,107,91,59,251,256],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,123,123,123,0,0]},"port":97,"rank":0,"right":null,"role":"source"},{"frame":850,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,33,65,129,256],"offset":251,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":97,"rank":0,"right":null,"role":"target"},{"frame":152,"left":{"linear_Z4":[1,1,1,0,0,1,1,1,0],"matrix_rows":[230,229,227,8,16,199,167,103,487],"offset":0,"phase":0,"quadratic_rows":[231,231,231,0,0,231,231,231,0]},"port":98,"rank":0,"right":null,"role":"source"},{"frame":928,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,16,33,65,129,257],"offset":487,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":98,"rank":0,"right":null,"role":"target"},{"frame":357,"left":{"linear_Z4":[1,1,1,0,1,0,1,1,0],"matrix_rows":[214,213,211,8,199,32,151,87,471],"offset":0,"phase":0,"quadratic_rows":[215,215,215,0,215,0,215,215,0]},"port":99,"rank":0,"right":null,"role":"source"},{"frame":861,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,32,65,129,257],"offset":471,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":99,"rank":0,"right":null,"role":"target"},{"frame":95,"left":{"linear_Z4":[1,1,1,0,1,1,0,1,0],"matrix_rows":[182,181,179,8,167,151,64,55,439],"offset":0,"phase":0,"quadratic_rows":[183,183,183,0,183,183,0,183,0]},"port":100,"rank":0,"right":null,"role":"source"},{"frame":910,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,33,64,129,257],"offset":439,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":100,"rank":0,"right":null,"role":"target"},{"frame":123,"left":{"linear_Z4":[1,1,1,0,1,1,1,0,0],"matrix_rows":[118,117,115,8,103,87,55,128,375],"offset":0,"phase":0,"quadratic_rows":[119,119,119,0,119,119,119,0,0]},"port":101,"rank":0,"right":null,"role":"source"},{"frame":916,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,33,65,128,257],"offset":375,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":101,"rank":0,"right":null,"role":"target"},{"frame":125,"left":{"linear_Z4":[1,1,1,0,1,1,1,0,0],"matrix_rows":[118,117,115,8,103,87,55,247,256],"offset":0,"phase":0,"quadratic_rows":[119,119,119,0,119,119,119,0,0]},"port":102,"rank":0,"right":null,"role":"source"},{"frame":829,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,33,65,129,256],"offset":247,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":102,"rank":0,"right":null,"role":"target"},{"frame":98,"left":{"linear_Z4":[1,1,1,1,0,0,1,1,0],"matrix_rows":[206,205,203,199,16,32,143,79,463],"offset":0,"phase":0,"quadratic_rows":[207,207,207,207,0,0,207,207,0]},"port":103,"rank":0,"right":null,"role":"source"},{"frame":911,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,32,65,129,257],"offset":463,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":103,"rank":0,"right":null,"role":"target"},{"frame":362,"left":{"linear_Z4":[1,1,1,1,0,1,0,1,0],"matrix_rows":[174,173,171,167,16,143,64,47,431],"offset":0,"phase":0,"quadratic_rows":[175,175,175,175,0,175,0,175,0]},"port":104,"rank":0,"right":null,"role":"source"},{"frame":860,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,33,64,129,257],"offset":431,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":104,"rank":0,"right":null,"role":"target"},{"frame":332,"left":{"linear_Z4":[1,1,1,1,0,1,1,0,0],"matrix_rows":[110,109,107,103,16,79,47,128,367],"offset":0,"phase":0,"quadratic_rows":[111,111,111,111,0,111,111,0,0]},"port":105,"rank":0,"right":null,"role":"source"},{"frame":854,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,33,65,128,257],"offset":367,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":105,"rank":0,"right":null,"role":"target"},{"frame":333,"left":{"linear_Z4":[1,1,1,1,0,1,1,0,0],"matrix_rows":[110,109,107,103,16,79,47,239,256],"offset":0,"phase":0,"quadratic_rows":[111,111,111,111,0,111,111,0,0]},"port":106,"rank":0,"right":null,"role":"source"},{"frame":856,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,33,65,129,256],"offset":239,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":106,"rank":0,"right":null,"role":"target"},{"frame":157,"left":{"linear_Z4":[1,1,1,1,1,0,0,1,0],"matrix_rows":[158,157,155,151,143,32,64,31,415],"offset":0,"phase":0,"quadratic_rows":[159,159,159,159,159,0,0,159,0]},"port":107,"rank":0,"right":null,"role":"source"},{"frame":929,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,32,64,129,257],"offset":415,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":107,"rank":0,"right":null,"role":"target"},{"frame":185,"left":{"linear_Z4":[1,1,1,1,1,0,1,0,0],"matrix_rows":[94,93,91,87,79,32,31,128,351],"offset":0,"phase":0,"quadratic_rows":[95,95,95,95,95,0,95,0,0]},"port":108,"rank":0,"right":null,"role":"source"},{"frame":947,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,32,65,128,257],"offset":351,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":108,"rank":0,"right":null,"role":"target"},{"frame":187,"left":{"linear_Z4":[1,1,1,1,1,0,1,0,0],"matrix_rows":[94,93,91,87,79,32,31,223,256],"offset":0,"phase":0,"quadratic_rows":[95,95,95,95,95,0,95,0,0]},"port":109,"rank":0,"right":null,"role":"source"},{"frame":834,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,32,65,129,256],"offset":223,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":109,"rank":0,"right":null,"role":"target"},{"frame":391,"left":{"linear_Z4":[1,1,1,1,1,1,0,0,0],"matrix_rows":[62,61,59,55,47,31,64,128,319],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"port":110,"rank":0,"right":null,"role":"source"},{"frame":864,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,33,64,128,257],"offset":319,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":110,"rank":0,"right":null,"role":"target"},{"frame":387,"left":{"linear_Z4":[1,1,1,1,1,1,0,0,0],"matrix_rows":[62,61,59,55,47,31,64,191,256],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"port":111,"rank":0,"right":null,"role":"source"},{"frame":863,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,33,64,129,256],"offset":191,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":111,"rank":0,"right":null,"role":"target"}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-REVIEW.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-REVIEW.json new file mode 100644 index 0000000000..6b12ae0e4b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/CLIFFORD-REVIEW.json @@ -0,0 +1,19 @@ +{ + "status": "PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES", + "canonical_word_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "frames": 1037, + "directed_edges": 3019, + "ranks": { + "1": 2029, + "2": 394, + "3": 412, + "8": 16, + "4": 154, + "5": 14 + }, + "endpoint_adapters": 224, + "all_child_equalities_include_global_phase": true, + "recipe_sha256": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771", + "seconds": 198.28347681800005, + "scope": "Every local frame and center transition. Expanded scalar-interface integration and global emitted program are separate obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/FULL-WORD.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/FULL-WORD.json.gz new file mode 100644 index 0000000000..447d45d08b Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/FULL-WORD.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/INDEPENDENT-LOCAL-REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/INDEPENDENT-LOCAL-REPLAY.json new file mode 100644 index 0000000000..aa15edfba5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/INDEPENDENT-LOCAL-REPLAY.json @@ -0,0 +1,71 @@ +{ + "status": "PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY", + "canonical_word_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "local_programs_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "v": 112, + "helpers": 492, + "local": { + "forward": { + "all_exact_columns": 716, + "prefix_l1_upper": "2323449462751823289130723296176889733365478515961323543/64", + "prefix_bits_upper": 175, + "charged_payload_bits": 192, + "private_work_erased": true + }, + "backward": { + "all_exact_columns": 716, + "prefix_l1_upper": "600338326363508935771850050281004728884643/32", + "prefix_bits_upper": 134, + "charged_payload_bits": 192, + "private_work_erased": true + } + }, + "paid_profiles": { + "forward": { + "1": 2514, + "4": 160, + "8": 8, + "3": 448, + "2": 404, + "5": 56 + }, + "backward": { + "1": 2514, + "4": 160, + "8": 8, + "3": 448, + "2": 404, + "5": 56 + } + }, + "entering_helpers": 204, + "cold_hyperplane_ended_helpers": 44, + "negative_controls_rejected": [ + "wrong_scale", + "missing_center", + "wrong_common_frame", + "wrong_child_rank", + "missing_pre_wrapper", + "missing_post_wrapper", + "wrapper_with_wrong_frame", + "wrapper_in_wrong_phase", + "wrapper_on_a_data_register", + "wrapper_on_a_target_register", + "wrapper_on_a_centre_register", + "hpe_pre_wrapper_resolved_to_full_recipe", + "hpe_post_wrapper_without_terminal_frame", + "hpe_post_wrapper_wrong_terminal_frame", + "hpe_tail_gate_at_full_frame", + "hpe_tail_climb_dropped", + "hpe_helper_exit_adapter_to_full", + "hpe_tail_gate_moved_into_full_cleanup", + "cold_hpe_pre_wrapper_replaced_by_identity_entry_adapter", + "cold_hpe_pre_wrapper_dropped", + "cold_hpe_post_wrapper_replaced_by_exit_adapter", + "cold_hpe_pre_wrapper_resolved_to_cold_full_convention", + "cold_hpe_wrapper_with_nonzero_entrance", + "cold_hpe_post_wrapper_wrong_terminal_frame", + "cold_hpe_premix_gate_before_pre_wrapper" + ], + "scope": "Literal forward and inverse-transpose replay on every arbitrary data/helper column, physical frame incidence, ordered paid wrappers, cleared private work and prefix coefficients. Global hosting and outer exponent are separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-CHECKS.json new file mode 100644 index 0000000000..3872f0e596 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-CHECKS.json @@ -0,0 +1,36 @@ +{ + "forward": { + "sha256": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "events": 46772, + "scalar_macros": 41570, + "real_component_primitive_bound": 420052, + "paid_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "all_columns": 716, + "private_centers_cleared": true, + "private_coefficient_stream_cleared_after_each_macro": true + }, + "backward": { + "sha256": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4", + "events": 46772, + "scalar_macros": 41570, + "real_component_primitive_bound": 420100, + "paid_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "all_columns": 716, + "private_centers_cleared": true, + "private_coefficient_stream_cleared_after_each_macro": true + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-PROGRAMS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-PROGRAMS.json.gz new file mode 100644 index 0000000000..d511f2afa4 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/LOCAL-PROGRAMS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/RESIDUAL-ADAPTERS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/RESIDUAL-ADAPTERS.json new file mode 100644 index 0000000000..9c66f92ffb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/RESIDUAL-ADAPTERS.json @@ -0,0 +1 @@ +{"recipes":{"0:122":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[18,33,68,136,10,9,11,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,1,3,1,1,1,2,3,2],"matrix_rows":[50,49,388,8,97,82,260,120,384],"offset":4,"phase":1,"quadratic_rows":[81,98,132,120,57,58,11,132,0]},"terminal":122,"terminal_rank":4,"terminal_vectors":[388,75,41,26],"vectors":[]},"0:151":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[30,35,69,128,270,3,5,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,2,2,0,1,2,2,3,0],"matrix_rows":[390,19,21,145,481,34,68,8,496],"offset":8,"phase":1,"quadratic_rows":[375,437,467,0,375,19,21,390,151]},"terminal":151,"terminal_rank":4,"terminal_vectors":[273,145,85,51],"vectors":[]},"0:180":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,36,66,136,14,12,10,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[3,1,1,1,2,1,1,3,2],"matrix_rows":[385,100,98,8,257,82,52,120,384],"offset":1,"phase":1,"quadratic_rows":[129,50,84,120,14,106,108,129,0]},"terminal":180,"terminal_rank":4,"terminal_vectors":[385,74,44,30],"vectors":[]},"0:209":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[19,45,70,141,6,256,3,10,2],"offset":0,"phase":0,"quadratic_rows":[1,10,4,2,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,1,2,1,2,0,2,3,0],"matrix_rows":[11,389,14,138,65,466,20,472,32],"offset":8,"phase":1,"quadratic_rows":[462,351,411,351,14,0,11,389,143]},"terminal":209,"terminal_rank":4,"terminal_vectors":[266,138,75,30],"vectors":[]},"0:238":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[22,33,71,5,3,136,2,264,8],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,3,1,2,2,3,2,3,2],"matrix_rows":[6,5,93,416,25,82,76,288,384],"offset":15,"phase":0,"quadratic_rows":[64,86,22,0,6,160,3,160,0]},"terminal":238,"terminal_rank":4,"terminal_vectors":[416,70,19,13],"vectors":[]},"0:267":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[16,46,78,131,3,261,5,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[0,1,1,2,2,2,2,3,0],"matrix_rows":[424,14,38,134,1,466,468,24,96],"offset":8,"phase":1,"quadratic_rows":[0,382,382,438,14,462,38,424,174]},"terminal":267,"terminal_rank":4,"terminal_vectors":[262,134,102,30],"vectors":[]},"0:296":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[18,41,75,132,10,1,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[3,2,1,3,2,2,2,3,2],"matrix_rows":[6,5,392,118,97,82,52,264,384],"offset":15,"phase":0,"quadratic_rows":[101,32,69,136,0,3,5,136,0]},"terminal":296,"terminal_rank":4,"terminal_vectors":[392,67,37,22],"vectors":[]},"0:325":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[30,46,64,131,261,5,3,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,1,0,2,2,2,2,3,0],"matrix_rows":[408,11,19,131,481,482,4,72,48],"offset":8,"phase":1,"quadratic_rows":[379,379,0,467,427,19,11,408,155]},"terminal":325,"terminal_rank":4,"terminal_vectors":[259,131,75,51],"vectors":[]},"0:35":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[22,37,67,7,1,2,136,264,8],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,2,2,2,2,2,3,3,2],"matrix_rows":[6,5,59,448,25,42,52,320,384],"offset":15,"phase":0,"quadratic_rows":[38,21,51,0,6,5,192,192,0]},"terminal":35,"terminal_rank":4,"terminal_vectors":[448,38,21,11],"vectors":[]},"0:354":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[30,35,69,142,256,5,3,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,2,2,1,0,2,2,3,0],"matrix_rows":[390,11,13,137,481,66,36,488,16],"offset":8,"phase":1,"quadratic_rows":[367,461,427,367,0,13,11,390,143]},"terminal":354,"terminal_rank":4,"terminal_vectors":[265,137,75,45],"vectors":[]},"0:383":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[20,34,65,136,12,13,9,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,3,1,1,1,2,1,3,2],"matrix_rows":[84,386,81,8,97,258,52,120,384],"offset":2,"phase":1,"quadratic_rows":[49,130,100,120,89,13,92,130,0]},"terminal":383,"terminal_rank":4,"terminal_vectors":[386,73,45,28],"vectors":[]},"0:412":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[21,38,75,139,6,5,256,12,4],"offset":0,"phase":0,"quadratic_rows":[1,2,12,4,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,2,1,1,2,2,0,3,0],"matrix_rows":[13,14,387,140,33,18,436,440,64],"offset":8,"phase":1,"quadratic_rows":[430,413,319,319,14,13,0,387,143]},"terminal":412,"terminal_rank":4,"terminal_vectors":[268,140,45,30],"vectors":[]},"0:64":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[30,32,78,131,261,3,5,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,0,1,2,2,2,2,3,0],"matrix_rows":[408,13,21,133,481,2,484,40,80],"offset":8,"phase":1,"quadratic_rows":[381,0,381,437,461,13,21,408,157]},"terminal":64,"terminal_rank":4,"terminal_vectors":[261,133,85,45],"vectors":[]},"0:93":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[18,37,71,6,136,3,1,264,8],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[3,2,1,2,3,2,2,3,2],"matrix_rows":[6,5,110,400,97,42,76,272,384],"offset":15,"phase":0,"quadratic_rows":[101,64,37,0,144,5,3,144,0]},"terminal":93,"terminal_rank":4,"terminal_vectors":[400,69,35,14],"vectors":[]},"2":{"entrance_rank":1,"frame":2,"left":{"linear_Z4":[3,3,2,3,2,2,3,3,0],"matrix_rows":[257,2,4,8,16,32,64,128,203],"offset":0,"phase":0,"quadratic_rows":[203,203,0,203,0,0,203,203,0]},"rank":8,"right":{"linear_Z4":[0,0,2,0,2,2,0,0,0],"matrix_rows":[1,258,4,264,16,32,320,384,256],"offset":309,"phase":3,"quadratic_rows":[256,256,0,256,0,0,256,256,203]},"vectors":[459]},"3":{"entrance_rank":1,"frame":3,"left":{"linear_Z4":[3,3,2,3,2,2,2,2,0],"matrix_rows":[257,2,4,8,16,32,11,64,128],"offset":0,"phase":0,"quadratic_rows":[11,11,0,11,0,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,0,2,0,2,2,0,2,2],"matrix_rows":[1,66,4,72,16,32,128,256,64],"offset":244,"phase":1,"quadratic_rows":[64,64,0,64,0,0,11,0,0]},"vectors":[75]},"4":{"entrance_rank":1,"frame":4,"left":{"linear_Z4":[2,3,3,2,2,3,2,2,0],"matrix_rows":[1,258,4,8,16,32,38,64,128],"offset":0,"phase":0,"quadratic_rows":[0,38,38,0,0,38,0,0,0]},"rank":8,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[1,2,68,8,16,96,128,256,64],"offset":217,"phase":1,"quadratic_rows":[0,64,64,0,0,64,38,0,0]},"vectors":[102]},"421":{"entrance_rank":1,"frame":421,"left":{"linear_Z4":[3,2,3,3,2,2,2,2,0],"matrix_rows":[257,2,4,8,16,13,32,64,128],"offset":0,"phase":0,"quadratic_rows":[13,0,13,13,0,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,2,0,0,2,0,2,2,2],"matrix_rows":[1,2,36,40,16,64,128,256,32],"offset":242,"phase":1,"quadratic_rows":[32,0,32,32,0,13,0,0,0]},"vectors":[45]},"421:1034":{"entrance_rank":1,"frame":421,"left":{"linear_Z4":[3,2,3,2,2,2,2,0,0],"matrix_rows":[128,2,261,1,8,4,16,32,64],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"rank":7,"right":{"linear_Z4":[2,2,0,3,2,3,2,2,2],"matrix_rows":[44,2,4,16,64,128,256,13,32],"offset":511,"phase":1,"quadratic_rows":[12,0,1,41,0,40,0,0,0]},"terminal":1034,"terminal_rank":8,"terminal_vectors":[256,128,64,33,16,9,5,2],"vectors":[45]},"422":{"entrance_rank":1,"frame":422,"left":{"linear_Z4":[3,3,2,2,3,2,2,2,0],"matrix_rows":[257,2,4,8,16,19,32,64,128],"offset":0,"phase":0,"quadratic_rows":[19,19,0,0,19,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,0,2,2,0,0,2,2,2],"matrix_rows":[1,34,4,8,48,64,128,256,32],"offset":236,"phase":1,"quadratic_rows":[32,32,0,0,32,19,0,0,0]},"vectors":[51]},"422:1035":{"entrance_rank":1,"frame":422,"left":{"linear_Z4":[3,3,2,2,2,2,2,0,0],"matrix_rows":[128,259,4,8,1,2,16,32,64],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"rank":7,"right":{"linear_Z4":[2,0,2,2,3,3,2,2,2],"matrix_rows":[50,2,4,8,64,128,256,19,32],"offset":511,"phase":1,"quadratic_rows":[18,1,0,0,49,48,0,0,0]},"terminal":1035,"terminal_rank":8,"terminal_vectors":[256,128,64,33,17,8,4,3],"vectors":[51]},"423":{"entrance_rank":1,"frame":423,"left":{"linear_Z4":[2,3,3,3,2,2,2,2,0],"matrix_rows":[1,258,4,8,14,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,14,14,14,0,0,0,0,0]},"rank":8,"right":{"linear_Z4":[2,0,0,0,0,2,2,2,2],"matrix_rows":[1,2,20,24,32,64,128,256,16],"offset":241,"phase":1,"quadratic_rows":[0,16,16,16,14,0,0,0,0]},"vectors":[30]},"423:1036":{"entrance_rank":1,"frame":423,"left":{"linear_Z4":[2,3,3,2,2,2,2,0,0],"matrix_rows":[1,128,262,2,4,8,16,32,64],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"rank":7,"right":{"linear_Z4":[2,2,0,3,3,2,2,2,2],"matrix_rows":[1,28,4,32,64,128,256,14,16],"offset":511,"phase":1,"quadratic_rows":[0,12,2,26,24,0,0,0,0]},"terminal":1036,"terminal_rank":8,"terminal_vectors":[256,128,64,32,18,10,6,1],"vectors":[30]},"424":{"entrance_rank":4,"frame":424,"left":{"linear_Z4":[2,3,2,2,3,0,0,0,0],"matrix_rows":[33,65,2,132,264,8,4,16,31],"offset":0,"phase":0,"quadratic_rows":[30,31,27,23,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,260,264,272,384,352,354,64,32],"offset":429,"phase":0,"quadratic_rows":[96,0,256,320,288,17,9,256,156]},"vectors":[413,72,48,3]},"425":{"entrance_rank":4,"frame":425,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,257,8,4,2,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,260,272,384,352,64,32,360],"offset":231,"phase":0,"quadratic_rows":[96,320,288,0,256,5,3,256,150]},"vectors":[407,66,36,9]},"426":{"entrance_rank":4,"frame":426,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,260,2,1,8,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,260,320,384,32,16,304,312],"offset":231,"phase":0,"quadratic_rows":[288,272,48,0,6,5,256,256,195]},"vectors":[455,33,18,12]},"427":{"entrance_rank":4,"frame":427,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,136,16,13,21,258,2],"offset":0,"phase":0,"quadratic_rows":[24,0,24,13,21,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[33,258,100,72,80,64,256,96,384],"offset":66,"phase":0,"quadratic_rows":[96,0,96,32,64,13,21,0,0]},"vectors":[258,130,85,45]},"428":{"entrance_rank":4,"frame":428,"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,4,136,16,19,21,264,8],"offset":0,"phase":0,"quadratic_rows":[6,19,21,0,6,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[33,66,68,264,112,64,96,256,384],"offset":136,"phase":0,"quadratic_rows":[96,32,64,0,96,19,21,0,0]},"vectors":[264,136,85,51]},"429":{"entrance_rank":4,"frame":429,"left":{"linear_Z4":[3,2,2,2,3,0,0,0,0],"matrix_rows":[33,66,2,132,4,264,8,16,31],"offset":0,"phase":0,"quadratic_rows":[31,29,27,23,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[85,258,264,288,384,340,4,16,64],"offset":462,"phase":0,"quadratic_rows":[256,260,258,272,264,320,288,256,255]},"vectors":[427,96,24,6]},"430":{"entrance_rank":4,"frame":430,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,258,4,8,1,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,260,288,384,64,336,16,344],"offset":231,"phase":0,"quadratic_rows":[320,80,272,0,6,256,3,256,165]},"vectors":[423,65,20,10]},"431":{"entrance_rank":4,"frame":431,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,136,14,16,22,257,1],"offset":0,"phase":0,"quadratic_rows":[0,24,24,14,22,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,18,84,72,96,256,64,80,384],"offset":33,"phase":0,"quadratic_rows":[0,80,80,16,14,64,38,0,0]},"vectors":[257,129,102,30]},"432":{"entrance_rank":4,"frame":432,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,1,2,4,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[257,258,260,120,384,16,32,64,368],"offset":231,"phase":0,"quadratic_rows":[272,288,320,256,257,258,260,256,255]},"vectors":[399,68,34,17]},"433":{"entrance_rank":4,"frame":433,"left":{"linear_Z4":[2,3,2,2,3,0,0,0,0],"matrix_rows":[33,66,1,132,264,4,8,16,31],"offset":0,"phase":0,"quadratic_rows":[30,31,27,23,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[257,102,264,272,384,4,356,32,64],"offset":429,"phase":0,"quadratic_rows":[260,256,257,288,320,264,272,256,255]},"vectors":[411,80,40,5]},"434":{"entrance_rank":4,"frame":434,"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,4,8,144,13,11,272,16],"offset":0,"phase":0,"quadratic_rows":[6,11,13,6,0,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[65,34,36,104,272,32,96,256,384],"offset":144,"phase":0,"quadratic_rows":[96,64,32,96,0,13,11,0,0]},"vectors":[272,144,75,45]},"435":{"entrance_rank":4,"frame":435,"left":{"linear_Z4":[3,3,2,2,2,0,0,0,0],"matrix_rows":[33,66,4,8,14,13,144,272,16],"offset":0,"phase":0,"quadratic_rows":[13,14,3,3,0,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[1,2,52,56,320,32,16,256,384],"offset":144,"phase":0,"quadratic_rows":[32,16,48,48,14,13,0,0,0]},"vectors":[320,192,45,30]},"436":{"entrance_rank":5,"frame":436,"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[17,34,67,4,5,136,7,264,8],"offset":0,"phase":0,"quadratic_rows":[1,4,2,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[0,2,0,0,3,0,3,0,2],"matrix_rows":[1,82,88,288,16,80,68,256,384],"offset":249,"phase":2,"quadratic_rows":[16,0,0,80,89,0,88,0,0]},"vectors":[288,160,75,25,7]},"437":{"entrance_rank":5,"frame":437,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,136,9,10,11,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[0,0,0,2,1,1,0,0,2],"matrix_rows":[49,50,260,8,96,80,256,112,384],"offset":127,"phase":1,"quadratic_rows":[80,96,0,112,57,58,11,0,0]},"vectors":[260,132,75,42,25]},"5":{"entrance_rank":1,"frame":5,"left":{"linear_Z4":[2,2,2,3,3,3,2,2,0],"matrix_rows":[1,2,4,264,16,32,56,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,56,56,56,0,0,0]},"rank":8,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[1,2,4,8,80,96,128,256,64],"offset":199,"phase":1,"quadratic_rows":[0,0,0,64,64,64,56,0,0]},"vectors":[120]},"6":{"entrance_rank":1,"frame":6,"left":{"linear_Z4":[3,2,3,2,3,2,2,2,0],"matrix_rows":[257,2,4,8,16,32,21,64,128],"offset":0,"phase":0,"quadratic_rows":[21,0,21,0,21,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,2,0,2,0,2,0,2,2],"matrix_rows":[1,2,68,8,80,32,128,256,64],"offset":234,"phase":1,"quadratic_rows":[64,0,64,0,64,0,21,0,0]},"vectors":[85]}},"status":"RESIDUAL_ADAPTER_RECIPES"} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/SCALAR-FRAME-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/SCALAR-FRAME-AUDIT.json new file mode 100644 index 0000000000..23bf3d263e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/SCALAR-FRAME-AUDIT.json @@ -0,0 +1,654 @@ +{ + "status": "PASS_CHANGED_WORD_ALL_COLUMNS_AND_NATIVE_FRAMES", + "input_content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "routing_content_sha256": "7c84ac65c8b37173aa4293934f041915895e8ec30595844cc1534e2a19ae0d25", + "canonical_content_sha256": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "live_columns_each_orientation": 716, + "helpers": 492, + "compensation_additions": 7348, + "scalar_operations": 41546, + "center_rank_sum": 64, + "local_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "local_rank_mass": 5650, + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "frames": 1037, + "directed_edges": 3019, + "tau": 43, + "target_port_order_matches_baseline": true, + "seconds": 4.39260065399958, + "scope": "Fresh exact forward and inverse-transpose scalar replay on every arbitrary input; all native frame chains and dyadic primitives. Phase lowering, wrappers, global owners and global assembly are separate.", + "hyperplane_ended_helpers": [ + 225, + 227, + 241, + 243, + 257, + 259, + 273, + 275, + 277, + 282, + 289, + 291, + 293, + 298, + 305, + 307, + 309, + 314, + 321, + 323, + 325, + 330, + 337, + 339, + 341, + 346, + 353, + 355, + 357, + 362, + 369, + 371, + 373, + 378, + 385, + 387, + 389, + 394, + 401, + 403, + 417, + 419, + 433, + 435, + 448, + 449, + 450, + 451, + 452, + 453, + 454, + 455, + 456, + 457, + 458, + 467, + 468, + 477, + 490, + 491, + 514, + 515, + 538, + 539, + 562, + 563, + 574, + 583, + 584, + 593, + 594, + 595, + 596, + 598, + 600, + 601, + 602, + 603 + ], + "early_cleanup_gates": 94, + "cold_hyperplane_ended_helpers": [ + 225, + 227, + 241, + 243, + 257, + 259, + 273, + 275, + 277, + 282, + 289, + 291, + 293, + 298, + 305, + 307, + 309, + 314, + 321, + 323, + 325, + 330, + 337, + 339, + 341, + 346, + 353, + 355, + 357, + 362, + 369, + 371, + 373, + 378, + 385, + 387, + 389, + 394, + 401, + 403, + 417, + 419, + 433, + 435 + ], + "refactored_cleanup_gates": 28150, + "refactored_cleanup": { + "exact_non_target_isolation_checked": true, + "high_inverse": "dyadic_sparse_Gauss_Jordan", + "kind": "source_branch_gauge_and_retired_completion_cold44", + "new_cold_ends": 44 + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/WRAPPER-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/WRAPPER-CHECKS.json new file mode 100644 index 0000000000..a18afd4fad --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/evidence/local/WRAPPER-CHECKS.json @@ -0,0 +1,413 @@ +{ + "status": "PASS_RESIDUAL_WRAPPERS_ARE_EXACT", + "frames": 22, + "hyperplane_end_pairs": [ + { + "frame": 0, + "terminal": 35, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 64, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 93, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 122, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 151, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 180, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 209, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 238, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 267, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 296, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 325, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 354, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 383, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 412, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 421, + "terminal": 1034, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + }, + { + "frame": 422, + "terminal": 1035, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + }, + { + "frame": 423, + "terminal": 1036, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + } + ], + "cold_hyperplane_end_pairs": 14, + "wrappers_reject": [ + "wrong global phase", + "wrong translation", + "wrong quadratic form", + "sides swapped", + "wrong width", + "hpe: U-wrapper decoded against a FULL ending", + "hpe: width misreported as 9 - dim E", + "hpe: wrong terminal hyperplane", + "hpe: pre wrapper resolved to the FULL recipe R_{E,FULL}", + "hpe: wrong global phase", + "cold hpe: identity pre wrapper instead of R_{0,U}", + "cold hpe: identity post wrapper instead of L_{0,U}", + "cold hpe: no wrappers (cold FULL convention L = R = I)", + "cold hpe: U-wrapper decoded against a FULL ending", + "cold hpe: width misreported as 9", + "cold hpe: wrong terminal hyperplane", + "cold hpe: wrong global phase" + ], + "all_even_weight": false, + "all_totally_isotropic": false, + "detail": [ + { + "frame": 2, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 459 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 3, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 75 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 4, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 102 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 5, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 120 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 6, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 85 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 421, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 45 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 422, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 51 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 423, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 30 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 424, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 413, + 72, + 48, + 3 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 425, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 407, + 66, + 36, + 9 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 426, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 455, + 33, + 18, + 12 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 427, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 258, + 130, + 85, + 45 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 428, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 264, + 136, + 85, + 51 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 429, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 427, + 96, + 24, + 6 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 430, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 423, + 65, + 20, + 10 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 431, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 257, + 129, + 102, + 30 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 432, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 399, + 68, + 34, + 17 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 433, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 411, + 80, + 40, + 5 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 434, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 272, + 144, + 75, + 45 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 435, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 320, + 192, + 45, + 30 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 436, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 288, + 160, + 75, + 25, + 7 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 437, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 260, + 132, + 75, + 42, + 25 + ], + "all_even_weight": false, + "totally_isotropic": false + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/PROOF.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/PROOF.md new file mode 100644 index 0000000000..b551b6d3e5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/PROOF.md @@ -0,0 +1,237 @@ +# Exact owner reuse and concave-cost matching + +## 1. Objects and interface assumptions + +The parent controller has 72 ordered calls, 112 source ports, 112 target ports, +and 492 helper roles per call. The ambient dimension is 73. A pending-child +group is a triple + +$$ +g=(\text{owner replica},\text{child},\text{port}). +$$ + +The parent window catalogue gives group capacity $C_g$, together with the call +times at which its physical stream is idle. The map from a group to its +physical family is + +$$ +F(g)=896\,\text{owner replica} + +112(2\,\text{pair(child)}+\text{side(child)})+\text{port}. +$$ + +At every call in this particular parent geometry, at most one pending child of +a physical family is eligible. Both the matcher and the independent frozen +audit check this condition. They also exclude both active data families of the +call. Consequently, injective assignment to eligible groups is equivalent to +assignment to distinct idle physical families at that call. + +Helper $h$ requests an integer width $w_h$, read afresh from the new local +word as the final-frame dimension minus the start-frame dimension. Native +program profiles are also recomputed from their paid edges. The finite local +compiler supplies the normalized helper chart and verifies its warm-start +semantics. A hosted width is a reservation in the pending child's address +coordinates on an existing physical stream; it is not a new physical stream. + +This proof concerns the discrete assignment and its moment contribution. It +uses the parent windows as input. Independent global admission must verify +those windows against the actual controller and construct the actual +73-column charts for the fresh native local word. + +## 2. Feasible shrinking on the original families + +For one call, sort the old slot widths and the new helper widths increasingly, +breaking ties by the old or new helper number. Suppose the new width in each +position is no larger than its matched old width. Assign that helper to the +matched old slot. + +This operation preserves the call time, stage, replica, pending child, port, +owner replica, and physical family. It preserves the set of 492 distinct +helper-owner families at the call, so the old window and active-data +exclusions still hold. In each pending-child group, the sum of new widths is +no larger than the old sum, hence remains within capacity. + +Now order the assignments in each group consistently and replace their +offsets by consecutive prefix sums. The occupied sets become pairwise +disjoint intervals whose union is exactly a prefix of length +$U_g=\sum w_h\le C_g$. The idle child retains rank $C_g-U_g$, with pending +offset $U_g$. Thus the shrinking operation has a direct capacity proof; it +requires neither an owner solver nor any change to the controller. + +The seed constructor applies this termwise argument to the 71 former `jp8` +calls. It keeps the remaining `ck` call provisionally unchanged. Two optional +fixed-family assignment passes redistribute the available capacity before +freezing the seed. Their result is audited using the same integer constraints. + +## 3. One call with all other calls fixed + +Fix one call $t$. Remove its existing assignments while keeping every other +call fixed. For each eligible group, define the available capacity + +$$ +c_g=C_g-\sum_{\substack{\text{assignments in }g\\\text{from calls other than }t}}w. +$$ + +The call must assign each of its 492 widths to a distinct eligible group with +$w\le c_g$. Unused groups can be viewed as receiving a dummy width zero. +After the assignment, group $g$'s idle rank is $c_g-w_g$. For any function +$\phi$, the portion of the idle objective affected by the call is exactly + +$$ +\sum_{g\text{ eligible at }t}\phi(c_g-w_g). +$$ + +All other idle contributions, and all local paid-edge contributions, are +constant in this single-call problem. + +### Greedy rule + +Sort eligible capacities increasingly. At each capacity, assign the largest +remaining helper width that fits; assign zero if none fits. Continue through +the remaining capacities. + +This rule has no floating parameter. Equal-capacity tie choices are used only +to limit changes to physical owners and make the artifact deterministic. + +### Exchange lemma + +Take two capacities $c_1\le c_2$ and two widths $w_1\le w_2\le c_1$. The +assignment of $w_1$ to $c_1$ and $w_2$ to $c_2$ has residual pair + +$$ +(c_1-w_1,\ c_2-w_2). +$$ + +Exchange the widths. Feasibility is preserved, and the new pair is + +$$ +(c_1-w_2,\ c_2-w_1). +$$ + +The total is unchanged. The first new component is no larger than either old +component, and the second is no smaller than either old component. Therefore +the new pair majorizes the old pair. Every concave $\phi$ has weakly smaller +sum on the new pair. + +### Consequence: feasibility and optimality + +Start from any feasible complete assignment. At the smallest remaining +capacity, its assigned width is no larger than the largest remaining width +that fits. The greedy width occurs at some later capacity. If the two differ, +the exchange lemma moves that width to the current capacity while preserving +feasibility and weakly decreasing every concave objective. Fix this first +position and repeat on the suffix. Dummy zero widths cover unused groups. + +Thus the greedy procedure succeeds whenever a feasible assignment exists, and +its remainder vector majorizes that of every feasible assignment. It +simultaneously minimizes every concave remainder objective for this call. +This proof depends on the absence of any eligibility restriction beyond the +capacity and the already fixed call window; that property is explicitly +checked for the present geometry. + +## 4. Exact majorization receipts + +Let $a_r$ and $b_r$ be the old and new remainder histograms for one update, +including zero remainders. When the helper-width multiset is unchanged, their +total numbers of groups and total ranks agree. Every remainder lies between +0 and 48. The implementation checks, with integers, that for each +$k=0,1,\ldots,48$, + +$$ +\sum_r b_r\max(r-k,0) +\;\ge\; +\sum_r a_r\max(r-k,0). +$$ + +These are the stored stop-loss margins. Between integer breakpoints the +difference is linear, so checking all integer breakpoints checks every real +threshold. With equal sums and equal lengths, the inequalities are the +standard majorization criterion: the new vector majorizes the old one. + +The transcript contains 288 such equal-width updates: four passes through 72 +calls. A single preceding update replaces the seed's last `ck` width multiset. +That bootstrap has different total width, so it is checked for exact +feasibility and is not represented as an equal-sum majorization step. + +`reproduce.py` reruns every update and compares the full transcript's semantic +hash. Independently, `audit_frozen.py` removes each final call in turn, computes +all available capacities directly from the frozen owner map, runs a separate +histogram-only greedy calculation, and verifies that it returns exactly the +existing remainder histogram. This checks all 72 final coordinate optima +without relying on the transcript or the discovery seed. + +## 5. Relation to the global moment + +For ambient dimension $M=73$, define + +$$ +\phi_b(r)=r\bigl((73/r)^b-1\bigr) + =73^b r^{1-b}-r,\qquad \phi_b(0)=0. +$$ + +For $0 used[g]) + paid = Counter({r: 72*n for r, n in sig['profile'].items()}) + paid.update(idle) + + # Independent cost-level fixed-point check. No helper-ID or family-ID + # tie-breaking is needed: equal capacities give the same histogram. + for t in range(72): + old = {g: w for g, w in bycall[t].values()} + assert len(old) == R + before = Counter(caps[g]-used[g] for g in eligible[t]) + available = sorted(caps[g]-used[g]+old.get(g, 0) for g in eligible[t]) + want = Counter(sig['widths']) + after = Counter() + for cap in available: + width = next((w for w in sorted(want, reverse=True) if want[w] and w <= cap), 0) + if width: + want[width] -= 1 + after[cap-width] += 1 + assert not any(want.values()), 'Greedy assignment unexpectedly infeasible' + assert after == before, ('Frozen map is not callwise optimal', t) + mass = sum(r*n for r, n in paid.items()) + assert 73*7168-mass == 2560 and max(paid) == 48 + return { + 'roles': len(owners), 'calls': 72, 'fixed_point_calls_checked': 72, + 'remainder_profile': dict(sorted(idle.items())), + 'global_profile': dict(sorted(paid.items())), + 'rank_mass': mass, 'deficit': 2560, 'maxchild': 48, + 'all_footprints_disjoint_compacted_prefixes': True, + 'all_helper_families_idle_and_outside_active_data': True, + 'one_helper_per_physical_family_per_call': True, + 'every_call_optimal_for_every_concave_remainder_cost': True, + 'global_optimality_claimed': False, + } + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + add_inputs(parser) + parser.add_argument('--owners', type=Path, default=HERE/'frozen/OWNERS.json.gz') + parser.add_argument('--majorization', type=Path, default=HERE/'frozen/MAJORIZATION.json.gz') + parser.add_argument('--out', type=Path, required=True) + args = parser.parse_args() + manifest = read(HERE/'frozen/MANIFEST.json') + plan, sig, provider_path = bound_inputs(args, manifest) + assert semantic_sha(args.owners) == manifest['artifacts']['OWNERS.json.gz']['semantic_sha256'] + assert semantic_sha(args.majorization) == manifest['artifacts']['MAJORIZATION.json.gz']['semantic_sha256'] + result = audit(plan, sig, read(args.owners)) + for key in ('remainder_profile', 'global_profile'): + assert result[key] == {int(r): n for r, n in manifest[key].items()} + moves = read(args.majorization) + checked = 0 + for move in moves: + if move['equal_width_multiset']: + margins = move['integer_stoploss_margins'] + assert len(margins) == 49 and all(type(x) is int and x >= 0 for x in margins) + assert margins[0] == margins[-1] == 0 + assert move['strict_majorization'] == bool(any(margins)) + checked += 1 + else: + assert move['bootstrap'] and move['integer_stoploss_margins'] is None + assert checked == 288 and len(moves) == 289 + result.update({ + 'status': 'PASS_FROZEN_HOSTING_AND_ALL_72_CALLWISE_FIXED_POINTS', + 'parent_plan_sha256': sha(args.parent_plan), + 'parent_owners_sha256': sha(args.parent_owners), + 'owners_semantic_sha256': semantic_sha(args.owners), + 'majorization_semantic_sha256': semantic_sha(args.majorization), + 'stored_integer_majorization_steps': checked, + 'majorization_replay': 'reproduce.py re-executes every step; this audit separately checks the final fixed point.', + 'remaining_scope': 'The package global verifier checks fresh local algebra, phases, windows, invoice, moment, and outer assembly.', + }) + args.out.parent.mkdir(parents=True, exist_ok=True) + args.out.write_text(json.dumps(result, indent=2)+'\n') + print(json.dumps(result, indent=2)) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/expand_owners.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/expand_owners.py new file mode 100644 index 0000000000..ee6c4c24e6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/expand_owners.py @@ -0,0 +1,186 @@ +"""Exact callwise concave-cost owner matching over every legal idle family. + +This is a finite integer nomination algorithm, not a MILP. Each greedy +matching is optimal for every concave remainder cost. Its majorization +receipt is checked with integers, independently of floating root screens. +""" +from collections import Counter, defaultdict, deque +from pathlib import Path +import argparse +import gzip +import hashlib +import json +import time + +from reuse_owners import read, packed, sha, signature, audit_roles, rate + + +def stoploss(hist,k):return sum(n*max(r-k,0) for r,n in hist.items()) + + +def main(): + ap=argparse.ArgumentParser(description=__doc__) + ap.add_argument('--plan',type=Path,required=True) + ap.add_argument('--owners',type=Path,required=True) + ap.add_argument('--signature',action='append',required=True,help='Existing PID=verified native directory or raw/signature JSON') + ap.add_argument('--max-passes',type=int,default=8) + ap.add_argument('--out',type=Path,required=True) + a=ap.parse_args();assert 1<=a.max_passes<=12 + a.out.mkdir(parents=True,exist_ok=False);beg=time.monotonic() + plan,oldroles=read(a.plan),read(a.owners);V,M=112,73 + assert (plan['K'],plan['T'],plan['M'],plan['L'])==(4,8,73,9) + sig={pid:{'widths':desc['widths'],'profile':{int(r):n for r,n in desc['actual_paid_profile'].items()},'source':'input PLAN'} for pid,desc in plan['provider_registry'].items()} + for spec in a.signature: + pid,path=spec.split('=',1);assert pid in sig;sig[pid]=signature(path) + R=len(next(iter(sig.values()))['widths']) + for s in sig.values(): + assert len(s['widths'])==R and all(type(w) is int and 0used[g]) + + def total_profile(): + p=Counter() + for c in plan['provider_calls']:p.update(sig[c['provider']]['profile']) + p.update(idle_profile());assert M*plan['live']-sum(r*n for r,n in p.items())==2560 + return p + + def update(call,bootstrap=False): + t=calls[call]['time'];gs=eligible[t] + old=current[call] + old_by_group={g:(h,w) for h,(g,w) in old.items()} + assert len(old_by_group)==R and set(old_by_group)<=set(gs) + oldhist=Counter(caps[g]-used[g] for g in gs) + for g,(h,w) in old_by_group.items():used[g]-=w + want=defaultdict(set) + for h,w in enumerate(widths[call]):want[w].add(h) + # Equal-capacity opportunities have identical costs. Preserve old + # matching widths first, then old owners, and finally family order. + buckets=defaultdict(lambda:defaultdict(deque)) + for g in sorted(gs,key=lambda g:(families[g],g[1])): + available=caps[g]-used[g];oldw=old_by_group.get(g,(None,0))[1] + buckets[available][oldw].append(g) + result={};unassigned=R + for c in sorted(buckets): + bucket=buckets[c] + while unassigned and any(bucket.values()): + w=next((w for w in sorted(want,reverse=True) if w<=c and want[w]),None) + if w is None:break + if bucket.get(w):q=w + else:q=next(q for q in sorted(bucket,reverse=True) if bucket[q]) + g=bucket[q].popleft() + h0=old_by_group.get(g,(None,0))[0] + h=h0 if h0 in want[w] else min(want[w]) + want[w].remove(h);result[h]=(g,w);used[g]+=w;unassigned-=1 + assert used[g]<=caps[g] + assert unassigned==0,('no legal family matching',call,{w:len(h) for w,h in want.items() if h}) + assert set(result)==set(range(R)) and len({families[g] for g,w in result.values()})==R + newhist=Counter(caps[g]-used[g] for g in gs) + equal_widths=Counter(w for g,w in old.values())==Counter(widths[call]) + strict=False + if equal_widths: + assert sum(oldhist.values())==sum(newhist.values()) + assert stoploss(oldhist,0)==stoploss(newhist,0) + margins=[stoploss(newhist,k)-stoploss(oldhist,k) for k in range(49)] + assert min(margins)>=0,('greedy did not majorize old assignment',call,margins) + strict=any(margins) + else: + assert bootstrap + margins=None + changed=sum(result[h]!=old[h] for h in result) + current[call]=result + moves.append({'stage':call[0],'replica':call[1],'time':t,'bootstrap':bootstrap, + 'equal_width_multiset':equal_widths,'integer_stoploss_margins':margins, + 'strict_majorization':strict,'changed_helper_owners':changed}) + return strict,changed + + changed_calls=[c for c in order if any(current[c][h][1]!=widths[c][h] for h in range(R))] + for c in changed_calls:update(c,bootstrap=True) + p=total_profile();baseline_b=rate(p,2560,M) + rounds=[{'pass':'bootstrap','changed_provider_calls':[list(c) for c in changed_calls], + 'floating_b':baseline_b,'remainder_profile':dict(sorted(idle_profile().items()))}] + print(json.dumps({'checkpoint':'all_goal_signatures_feasible','bootstrap_calls':len(changed_calls),'floating_b':baseline_b}),flush=True) + quiet=0 + for passno in range(a.max_passes): + strict=changed=0 + for c in (order if passno%2==0 else list(reversed(order))): + s,z=update(c);strict+=bool(s);changed+=z + p=total_profile();r={'pass':passno+1,'strictly_improved_calls':strict,'changed_helper_owners':changed, + 'floating_b':rate(p,2560,M),'remainder_profile':dict(sorted(idle_profile().items()))} + rounds.append(r);print(json.dumps({k:r[k] for k in ('pass','strictly_improved_calls','changed_helper_owners','floating_b')}),flush=True) + quiet=quiet+1 if not strict else 0 + if quiet>=2 or (not strict and not changed):break + + groups=defaultdict(list);roles=[] + for call in order: + s,rep=call;t=calls[call]['time'] + for h,(g,w) in current[call].items(): + orp,ch,port=g + z={'child':ch,'copy':orp*V+port,'family':families[g],'helper':h,'offset':0, + 'owner_replica':orp,'port':port,'replica':rep,'stage':s,'time':t,'width':w} + roles.append(z);groups[g].append(z) + for g,zs in groups.items(): + off=0 + for z in sorted(zs,key=lambda z:(z['time'],z['helper'])):z['offset']=off;off+=z['width'] + assert off==used[g]<=caps[g] + roles.sort(key=lambda z:(z['time'],z['helper'])) + cells,_=audit_roles(roles,plan,widths,V,R) + for z in roles: + active=max(0,(z['stage']-1)//2) + assert not (z['owner_replica']==z['replica'] and plan['pairs'][str(z['child'])]==active) + for g in caps:assert len(cells[g])==used[g] + remainder=[] + for g in caps: + left=caps[g]-used[g] + if left: + rep,ch,port=g + remainder.append({'child':ch,'port':port,'replica':rep,'replicas':1,'family':families[g], + 'rank':left,'hosted':used[g],'pending_offset':used[g]}) + profile=dict(sorted(total_profile().items()));assert M*M>2*max(profile)**2 + raw=packed(roles);compressed=bytearray(gzip.compress(raw,mtime=0));compressed[9]=255 + (a.out/'OWNERS.json.gz').write_bytes(bytes(compressed)) + (a.out/'MAJORIZATION.json.gz').write_bytes(gzip.compress(packed(moves),mtime=0)) + (a.out/'REMAINDERS.json').write_text(json.dumps(remainder,indent=2)+'\n') + (a.out/'PROFILE.json').write_text(json.dumps(profile,indent=2)+'\n') + fields={'profile':profile,'per_call_widths':[{'stage':s,'replica':r,'widths':widths[s,r]} for s,r in order], + 'assignment_sha256':hashlib.sha256(raw).hexdigest(),'assignment_sha256_semantics':'SHA256 sorted-key compact uncompressed OWNERS array', + 'source_owners_sha256':sha(a.owners),'provider_signatures':sig} + (a.out/'PLAN-OWNER-FIELDS.json').write_text(json.dumps(fields,indent=2)+'\n') + receipt={'status':'PASS_EXPANDED_OWNER_MATCHING_EXACT_COMBINATORICS_PENDING_GLOBAL_ADMISSION', + 'source_plan':str(a.plan),'source_plan_sha256':sha(a.plan),'source_owners':str(a.owners),'source_owners_sha256':sha(a.owners), + 'owners_sha256':sha(a.out/'OWNERS.json.gz'),'source_signatures':sig, + 'roles':len(roles),'calls':len(order),'unchanged_call_order_and_windows':True, + 'all_families_idle_and_outside_active_data':True,'one_helper_per_family_per_call':True, + 'all_footprints_disjoint_compacted_prefixes':True,'integer_majorization_steps':sum(z['equal_width_multiset'] for z in moves), + 'majorization_sha256':sha(a.out/'MAJORIZATION.json.gz'),'matching_rounds':rounds, + 'global_profile':profile,'rank_mass':sum(r*n for r,n in profile.items()),'deficit':2560, + 'remainder_profile':dict(sorted(idle_profile().items())),'maxchild':max(profile), + 'candidate_floating_screen_b':rate(profile,2560,M),'seconds':time.monotonic()-beg, + 'remaining_admission':'Fresh native-provider bindings, actual 73-column owner charts, independent full controller audit, finite invoice, exact moment and outer assembly.'} + (a.out/'EXPANDED-OWNER-REUSE.json').write_text(json.dumps(receipt,indent=2)+'\n') + print(json.dumps({k:receipt[k] for k in ('status','roles','remainder_profile','rank_mass','candidate_floating_screen_b','seconds')},indent=2),flush=True) + + +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/FROZEN-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/FROZEN-AUDIT.json new file mode 100644 index 0000000000..5f95552366 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/FROZEN-AUDIT.json @@ -0,0 +1,57 @@ +{ + "roles": 35424, + "calls": 72, + "fixed_point_calls_checked": 72, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "all_footprints_disjoint_compacted_prefixes": true, + "all_helper_families_idle_and_outside_active_data": true, + "one_helper_per_physical_family_per_call": true, + "every_call_optimal_for_every_concave_remainder_cost": true, + "global_optimality_claimed": false, + "status": "PASS_FROZEN_HOSTING_AND_ALL_72_CALLWISE_FIXED_POINTS", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "stored_integer_majorization_steps": 288, + "majorization_replay": "reproduce.py re-executes every step; this audit separately checks the final fixed point.", + "remaining_scope": "The package global verifier checks fresh local algebra, phases, windows, invoice, moment, and outer assembly." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MAJORIZATION.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MAJORIZATION.json.gz new file mode 100644 index 0000000000..047b1cfb67 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MAJORIZATION.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MANIFEST.json new file mode 100644 index 0000000000..291005722c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MANIFEST.json @@ -0,0 +1,114 @@ +{ + "schema": "gauge44-hosting-frozen-v1", + "parent_pr": 635, + "parent_paths": { + "plan": "research/complex-571-cold14-st2/data/PLAN.json", + "owners": "research/complex-571-cold14-st2/data/OWNERS.json.gz" + }, + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "artifacts": { + "OWNERS.json.gz": { + "sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d" + }, + "SEED-OWNERS.json.gz": { + "sha256": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "semantic_sha256": "beea695aa2e1ab973ad53f475b3e3e9cf6d0f8a9bca2033a445b64f3b3484e34" + }, + "MAJORIZATION.json.gz": { + "sha256": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc" + } + }, + "new_provider": { + "R": 492, + "h": 9, + "v": 112, + "width_histogram": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "width_sum": 3794, + "profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "rank_mass": 5650, + "raw_word_sha256": "3ef4e74e81e2f4621fc95272918ac7b8bb8858df0baa16cc6d91424d55aead9e", + "canonical_word_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "local_programs_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "width_vector_sha256": "b7fbefdb3af3942194ac9314c767c7812bd68adb734d4e00b70b2916bdb55de8" + }, + "seed_discovery": { + "provider_replaced": "jp8", + "unchanged_provider": "ck", + "passes": 2, + "price_b": 0.001638923, + "python": "3.12.14", + "numpy": "2.3.5", + "scipy": "1.17.0", + "note": "Only seed discovery uses floating-point Hungarian costs. Frozen seed and the expanded exact replay require the Python standard library." + }, + "expanded_replay": { + "providers_replaced": [ + "jp8", + "ck" + ], + "max_passes": 8, + "actual_passes": 4, + "integer_majorization_steps": 288, + "changed_width_bootstrap_calls": 1 + }, + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "live": 7168, + "roles": 35424, + "calls": 72, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "candidate_floating_screen_b": 0.0016522089943684115, + "screening_only": "The floating rate here is not a certified exponent. Exact supplier and outer admission belong to the package verifier." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MATCHING-RECEIPT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MATCHING-RECEIPT.json new file mode 100644 index 0000000000..993331090c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/MATCHING-RECEIPT.json @@ -0,0 +1,1205 @@ +{ + "status": "PASS_EXPANDED_OWNER_MATCHING_EXACT_COMBINATORICS_PENDING_GLOBAL_ADMISSION", + "source_plan": "explicit parent PLAN, with a temporary signature-only seed view for expanded replay", + "source_plan_sha256": "0d2b6a12d3450cfb78e556e80d34cabb8cd1a7f8aa85c1a712a5177236672a37", + "source_owners": "frozen/SEED-OWNERS.json.gz", + "source_owners_sha256": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "owners_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "source_signatures": { + "ck": { + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2514, + "4": 160, + "8": 8, + "3": 448, + "2": 404, + "5": 56 + }, + "source": "supplied new provider (raw or independently checked native)", + "canonical_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "program_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2" + }, + "jp8": { + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2514, + "4": 160, + "8": 8, + "3": 448, + "2": 404, + "5": 56 + }, + "source": "supplied new provider (raw or independently checked native)", + "canonical_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "program_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2" + } + }, + "roles": 35424, + "calls": 72, + "unchanged_call_order_and_windows": true, + "all_families_idle_and_outside_active_data": true, + "one_helper_per_family_per_call": true, + "all_footprints_disjoint_compacted_prefixes": true, + "integer_majorization_steps": 288, + "majorization_sha256": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "matching_rounds": [ + { + "pass": "bootstrap", + "changed_provider_calls": [ + [ + 2, + 0 + ] + ], + "floating_b": 0.0016448741407332063, + "remainder_profile": { + "1": 87, + "2": 111, + "3": 191, + "4": 160, + "5": 1, + "6": 2, + "7": 50, + "8": 127, + "10": 3, + "11": 23, + "12": 25, + "13": 1, + "14": 5, + "15": 9, + "16": 107, + "18": 1, + "19": 10, + "20": 15, + "23": 2, + "24": 52, + "32": 1, + "44": 1, + "48": 2221 + } + }, + { + "pass": 1, + "strictly_improved_calls": 70, + "changed_helper_owners": 1245, + "floating_b": 0.0016518485664379205, + "remainder_profile": { + "1": 83, + "2": 92, + "3": 167, + "4": 10, + "6": 3, + "7": 9, + "8": 13, + "11": 4, + "12": 11, + "15": 1, + "16": 35, + "24": 1, + "28": 7, + "32": 57, + "44": 11, + "48": 2284 + } + }, + { + "pass": 2, + "strictly_improved_calls": 41, + "changed_helper_owners": 169, + "floating_b": 0.0016521846143978994, + "remainder_profile": { + "1": 83, + "2": 80, + "3": 171, + "7": 7, + "8": 6, + "12": 14, + "16": 33, + "19": 1, + "20": 2, + "24": 2, + "28": 3, + "32": 61, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + } + }, + { + "pass": 3, + "strictly_improved_calls": 8, + "changed_helper_owners": 13, + "floating_b": 0.0016522089943684115, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + } + }, + { + "pass": 4, + "strictly_improved_calls": 0, + "changed_helper_owners": 0, + "floating_b": 0.0016522089943684115, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + } + } + ], + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "rank_mass": 520704, + "deficit": 2560, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "maxchild": 48, + "candidate_floating_screen_b": 0.0016522089943684115, + "remaining_admission": "Fresh native-provider bindings, actual 73-column owner charts, independent full controller audit, finite invoice, exact moment and outer assembly.", + "provenance_note": "Absolute discovery paths and wall time removed; original artifact hashes and all exact combinatorial fields preserved." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/OWNERS.json.gz new file mode 100644 index 0000000000..e9c7cfc72d Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/REPRODUCTION.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/REPRODUCTION.json new file mode 100644 index 0000000000..8ad59712b2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/REPRODUCTION.json @@ -0,0 +1,29 @@ +{ + "status": "PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY", + "seed_mode": "included_frozen_seed", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "owners_gzip_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "scope": "Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-OWNERS.json.gz new file mode 100644 index 0000000000..d61916a156 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-RECEIPT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-RECEIPT.json new file mode 100644 index 0000000000..82911f647b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-RECEIPT.json @@ -0,0 +1,1537 @@ +{ + "status": "PASS_OWNER_REUSE_NOMINATION_COMBINATORICS_NOT_FULL_SUPPLIER_ADMISSION", + "source_plan": "explicit parent PLAN", + "source_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "source_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_sha256": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "unchanged_owner_family_sets": true, + "unchanged_call_order_and_windows": true, + "all_footprints_are_disjoint_compacted_prefixes": true, + "local_signatures": { + "ck": { + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2600, + "2": 552, + "3": 304, + "4": 164, + "5": 70, + "6": 4, + "8": 8 + }, + "source": "inherited parent PLAN signature" + }, + "jp8": { + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "source": "supplied new provider (raw or independently checked native)", + "source_sha256": "3ef4e74e81e2f4621fc95272918ac7b8bb8858df0baa16cc6d91424d55aead9e" + } + }, + "sorted_initial_dominance": { + "(0, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 0)": { + "old_total": 3854, + "new_total": 3854, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + } + }, + "matching_passes": [ + { + "pass": "sorted", + "touched_group_idle_pressure": 44.06409529228022, + "calls_awaiting_capacity_matching": 0 + }, + { + "pass": 1, + "accepted_calls": 71, + "touched_group_idle_pressure": 24.92521223381306, + "decrease": 19.13888305846716 + }, + { + "pass": 2, + "accepted_calls": 58, + "touched_group_idle_pressure": 23.047886627886065, + "decrease": 1.8773256059269947 + } + ], + "roles": 35424, + "calls": 72, + "remainder_children": 3197, + "remainder_profile": { + "1": 83, + "2": 99, + "3": 197, + "4": 168, + "5": 6, + "6": 13, + "7": 16, + "8": 145, + "10": 4, + "11": 24, + "12": 19, + "13": 1, + "14": 3, + "15": 9, + "16": 107, + "18": 1, + "19": 10, + "20": 15, + "23": 2, + "24": 52, + "32": 1, + "44": 1, + "48": 2221 + }, + "global_profile": { + "1": 181177, + "2": 29335, + "3": 32309, + "4": 11692, + "5": 4052, + "6": 17, + "7": 16, + "8": 721, + "10": 4, + "11": 24, + "12": 19, + "13": 1, + "14": 3, + "15": 9, + "16": 107, + "18": 1, + "19": 10, + "20": 15, + "23": 2, + "24": 52, + "32": 1, + "44": 1, + "48": 2221 + }, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "source_floating_screen_b": 0.001638923175694355, + "candidate_floating_screen_b": 0.0016446065186552388, + "remaining_admission": "Bind freshly verified provider artifacts and their hashes; regenerate the global template, actual 73-column sigmas and remainder axes with the existing emitter; run independent owner/frame audit, finite invoice, and exact moment/outer assembly.", + "provenance_note": "Absolute discovery paths and wall time removed; original artifact hashes and all exact combinatorial fields preserved." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-REPRODUCTION.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-REPRODUCTION.json new file mode 100644 index 0000000000..91ee98cf70 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/frozen/SEED-REPRODUCTION.json @@ -0,0 +1,29 @@ +{ + "status": "PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY", + "seed_mode": "two_pass_hungarian_discovery_rebuilt", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "owners_gzip_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "scope": "Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/reproduce.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/reproduce.py new file mode 100644 index 0000000000..2f29a5ff13 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/reproduce.py @@ -0,0 +1,100 @@ +"""Reproduce the frozen all-cold44 owner nomination from explicit inputs. + +By default, replay the exact integer optimizer from the included frozen seed. +--rebuild-seed additionally repeats the original two floating-cost Hungarian +discovery passes; that optional route requires NumPy and SciPy. +""" +from pathlib import Path +from collections import Counter +import argparse +import copy +import json +import shutil +import subprocess +import sys + +from audit_frozen import HERE, add_inputs, bound_inputs, semantic_sha +from reuse_owners import audit_roles, read, sha + + +def run(name, *args): + subprocess.run([sys.executable, str(HERE/name), *map(str, args)], check=True) + + +def seed_plan(parent, seed_owners, new_signature): + """Build a signature-only resizer input; never an admitted provider PLAN.""" + plan = copy.deepcopy(parent) + plan['provider_registry']['jp8']['widths'] = new_signature['widths'] + plan['provider_registry']['jp8']['actual_paid_profile'] = new_signature['profile'] + call_widths = { + (c['stage'], c['replica']): plan['provider_registry'][c['provider']]['widths'] + for c in plan['provider_calls'] + } + used, families = audit_roles(seed_owners, plan, call_widths, 112, 492) + profile = Counter() + for c in plan['provider_calls']: + profile.update({int(r): n for r, n in plan['provider_registry'][c['provider']]['actual_paid_profile'].items()}) + for key, (cap, times) in plan['windows'].items(): + rep, child = map(int, key.split(',')) + for port in range(112): + left = cap-len(used[rep, child, port]) + if left: + profile[left] += 1 + assert 73*7168-sum(r*n for r, n in profile.items()) == 2560 + plan['profile'] = dict(sorted(profile.items())) + plan['per_call_widths'] = [ + {'stage': s, 'replica': r, 'widths': call_widths[s, r]} + for s, r in plan['order'] + ] + plan['status'] = 'INTERMEDIATE_SIGNATURE_ONLY_OWNER_SEED_NOT_PROVIDER_ADMISSION' + return plan + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + add_inputs(parser) + parser.add_argument('--rebuild-seed', action='store_true') + parser.add_argument('--out', type=Path, required=True, help='New output directory') + args = parser.parse_args() + manifest = read(HERE/'frozen/MANIFEST.json') + parent, sig, provider = bound_inputs(args, manifest) + args.out.mkdir(parents=True, exist_ok=False) + seed_dir = args.out/'seed' + if args.rebuild_seed: + run('reuse_owners.py', '--plan', args.parent_plan, '--owners', args.parent_owners, + '--signature', f'jp8={provider}', '--passes', '2', '--price-b', '0.001638923', '--out', seed_dir) + else: + seed_dir.mkdir() + shutil.copyfile(HERE/'frozen/SEED-OWNERS.json.gz', seed_dir/'OWNERS.json.gz') + assert semantic_sha(seed_dir/'OWNERS.json.gz') == manifest['artifacts']['SEED-OWNERS.json.gz']['semantic_sha256'], ( + 'Seed differs; use the default frozen-seed replay, or the recorded NumPy/SciPy versions for discovery replay.' + ) + plan = seed_plan(parent, read(seed_dir/'OWNERS.json.gz'), sig) + plan_path = seed_dir/'PLAN-FOR-RESIZER.json' + plan_path.write_text(json.dumps(plan, indent=2)+'\n') + final_dir = args.out/'all72' + run('expand_owners.py', '--plan', plan_path, '--owners', seed_dir/'OWNERS.json.gz', + '--signature', f'jp8={provider}', '--signature', f'ck={provider}', + '--max-passes', '8', '--out', final_dir) + for name in ('OWNERS.json.gz', 'MAJORIZATION.json.gz'): + assert semantic_sha(final_dir/name) == manifest['artifacts'][name]['semantic_sha256'], (name, 'Frozen semantic digest mismatch') + kwargs = ('--local44', args.local44) if args.local44 is not None else ('--raw-word', args.raw_word) + run('audit_frozen.py', '--parent-plan', args.parent_plan, '--parent-owners', args.parent_owners, + *kwargs, '--owners', final_dir/'OWNERS.json.gz', '--majorization', final_dir/'MAJORIZATION.json.gz', + '--out', args.out/'FROZEN-AUDIT.json') + receipt = { + 'status': 'PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY', + 'seed_mode': 'two_pass_hungarian_discovery_rebuilt' if args.rebuild_seed else 'included_frozen_seed', + 'parent_plan_sha256': sha(args.parent_plan), 'parent_owners_sha256': sha(args.parent_owners), + 'owners_semantic_sha256': semantic_sha(final_dir/'OWNERS.json.gz'), + 'owners_gzip_sha256': sha(final_dir/'OWNERS.json.gz'), + 'majorization_semantic_sha256': semantic_sha(final_dir/'MAJORIZATION.json.gz'), + 'global_profile': read(final_dir/'PROFILE.json'), + 'scope': 'Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate.', + } + (args.out/'REPRODUCTION.json').write_text(json.dumps(receipt, indent=2)+'\n') + print(json.dumps(receipt, indent=2)) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/reuse_owners.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/reuse_owners.py new file mode 100644 index 0000000000..234b831790 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/hosting/reuse_owners.py @@ -0,0 +1,230 @@ +"""Deterministic existing-family owner reuse and optional callwise matching. + +The output is a nomination, requiring the ordinary independent owner, phase, +finite-invoice, and exact-moment admission. No MILP or new owner family is used. +""" +from collections import Counter, defaultdict +from pathlib import Path +import argparse +import copy +import gzip +import hashlib +import json +import math +import time + + +def read(path): + raw=Path(path).read_bytes() + return json.loads(gzip.decompress(raw) if str(path).endswith('.gz') else raw) + + +def packed(obj):return json.dumps(obj,sort_keys=True,separators=(',',':')).encode() +def sha(path):return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def signature(path): + path=Path(path) + if path.is_dir(): + w=read(path/'CANONICAL-WORD.json.gz');V,R=w['v'],w['R'] + widths=[len(w['frames'][w['final'][2*V+h]])-len(w['frames'][w['start'][2*V+h]]) for h in range(R)] + programs=read(path/'LOCAL-PROGRAMS.json.gz') + profiles=[Counter(e[-1] for e in programs[o] if e[0] in ('climb','center')) for o in ('forward','backward')] + assert profiles[0]==profiles[1] + assert profiles[0]=={int(r):n for r,n in w['local_profile'].items()} + return {'widths':widths,'profile':dict(profiles[0]),'source':str(path), + 'canonical_sha256':sha(path/'CANONICAL-WORD.json.gz'), + 'program_sha256':sha(path/'LOCAL-PROGRAMS.json.gz')} + w=read(path) + if 'report' in w: + V,R=w['report']['v'],w['report']['R'] + widths=[len(w.get('helper_final',{}).get(str(2*V+h),range(9)))-len(w.get('start_extra',{}).get(str(2*V+h),[])) for h in range(R)] + profile={int(r):n for r,n in w['report']['local_profile'].items()} + else: + widths=w['widths'];profile={int(r):n for r,n in w['profile'].items()} + return {'widths':widths,'profile':profile,'source':str(path),'source_sha256':sha(path)} + + +def phi(rank,b,M):return rank*math.expm1(b*math.log(M/rank)) if rank else 0. + + +def rate(profile,deficit,M): + lo,hi=0.,.02 + for _ in range(58): + mid=(lo+hi)/2 + if sum(n*phi(r,mid,M) for r,n in profile.items())oldroles[i]['width']] + if failures: + # Keep this call's old widths provisionally; shrunk calls leave + # slack on their original owner families. A subsequent exact + # bipartite matching may use that slack for this call. + pending.append(call) + for i in ids:assigned_h[i]=oldroles[i]['helper'];assigned_w[i]=oldroles[i]['width'] + else: + for h,i in zip(helpers,slots):assigned_h[i]=h;assigned_w[i]=newwidths[call][h] + dominance[str(call)]={'old_total':sum(oldwidths[call]),'new_total':sum(newwidths[call]),'sorted_termwise_dominance':not failures,'failed_positions':failures} + used={g:sum(assigned_w[i] for i in ids) for g,ids in groups.items()} + assert all(used[g]<=cap[g] for g in groups) + cost_cache=[phi(r,a.price_b,M) for r in range(49)] + def current_cost():return sum(cost_cache[cap[g]-used[g]] for g in groups) + passes=[{'pass':'sorted','touched_group_idle_pressure':current_cost(),'calls_awaiting_capacity_matching':len(pending)}] + + if a.passes or pending: + import numpy as np + from scipy.optimize import linear_sum_assignment + def match_call(call,force=False): + ids=sorted(bycall[call],key=lambda i:oldroles[i]['helper']) + gs=[group_of[i] for i in ids] + assert len(set(gs))==R, 'one owner family per complete call is essential' + available=np.array([cap[g]-used[g]+assigned_w[i] for i,g in zip(ids,gs)],dtype=np.int64) + ws=np.array(newwidths[call],dtype=np.int64) + left=available[None,:]-ws[:,None] + matrix=np.full((R,R),np.inf) + valid=left>=0 + matrix[valid]=np.asarray(cost_cache)[left[valid]] + ri,ci=linear_sum_assignment(matrix) + assert len(ri)==R and np.all(np.isfinite(matrix[ri,ci])) + oldcost=sum(cost_cache[cap[g]-used[g]] for g in gs) + newcost=float(matrix[ri,ci].sum()) + if not force: + assert newcost<=oldcost+1e-10 + if oldcost-newcost<=1e-10:return False + for h,col in zip(ri,ci): + i=ids[int(col)];g=group_of[i];h=int(h);ww=int(ws[h]) + used[g]+=ww-assigned_w[i];assigned_w[i]=ww;assigned_h[i]=h + assert used[g]<=cap[g] + return True + for call in pending: + match_call(call,force=True) + dominance[str(call)]['capacity_matching_feasible']=True + if pending:passes.append({'pass':'capacity_bootstrap','touched_group_idle_pressure':current_cost(),'resolved_calls':[list(c) for c in pending]}) + for p in range(a.passes): + accepted=0;startcost=current_cost() + order=[tuple(k) for k in plan['order']] + if p%2:order.reverse() + for call in order: + accepted+=match_call(call) + finalcost=current_cost();assert finalcost<=startcost+1e-9 + passes.append({'pass':p+1,'accepted_calls':accepted,'touched_group_idle_pressure':finalcost,'decrease':startcost-finalcost}) + + # The inherited compiler requires each used coordinate set to be a + # prefix. Stable left compaction preserves every immutable owner field. + roles=copy.deepcopy(oldroles);matching=[] + for g,ids in groups.items(): + off=0 + for i in sorted(ids,key=lambda i:(oldroles[i]['offset'],oldroles[i]['time'],oldroles[i]['helper'])): + z=roles[i];z['helper']=assigned_h[i];z['width']=assigned_w[i];z['offset']=off;off+=z['width'] + matching.append({'stage':z['stage'],'replica':z['replica'],'old_helper':oldroles[i]['helper'], + 'new_helper':z['helper'],'old_width':oldroles[i]['width'],'new_width':z['width'], + 'family':z['family'],'child':z['child'],'old_offset':oldroles[i]['offset'],'new_offset':z['offset']}) + assert off==used[g]<=cap[g] + roles.sort(key=lambda z:(z['time'],z['helper'])) + newused,newfamilies=audit_roles(roles,plan,newwidths,V,R) + assert newfamilies==oldfamilies + paid=Counter();remainders=[] + for c in plan['provider_calls']:paid.update(signatures[c['provider']]['profile']) + idle=Counter() + for key,(capacity,window) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(V): + occupied=len(newused[rep,ch,port]);left=capacity-occupied + if left: + family=rep*(8*V)+(2*plan['pairs'][str(ch)]+plan['sides'][str(ch)])*V+port + remainders.append({'child':ch,'port':port,'replica':rep,'replicas':1,'family':family, + 'rank':left,'hosted':occupied,'pending_offset':occupied}) + idle[left]+=1 + paid.update(idle);mass=sum(r*n for r,n in paid.items()) + assert M*plan['live']-mass==plan['deficit']==2560 + assert M*M>2*max(paid)**2 + oldprofile={int(r):n for r,n in plan['profile'].items()} + ownerraw=packed(roles);gz=bytearray(gzip.compress(ownerraw,mtime=0));gz[9]=255 + (a.out/'OWNERS.json.gz').write_bytes(bytes(gz)) + (a.out/'MATCHING.json.gz').write_bytes(gzip.compress(packed(matching),mtime=0)) + (a.out/'REMAINDERS.json').write_text(json.dumps(remainders,indent=2)+'\n') + profile=dict(sorted(paid.items())) + (a.out/'PROFILE.json').write_text(json.dumps(profile,indent=2)+'\n') + owner_fields={'profile':profile, + 'per_call_widths':[{'stage':s,'replica':r,'widths':newwidths[s,r]} for s,r in plan['order']], + 'assignment_sha256':hashlib.sha256(ownerraw).hexdigest(), + 'assignment_sha256_semantics':'SHA256 of sorted-key compact uncompressed OWNERS array', + 'source_owners_sha256':sha(a.owners), + 'provider_signatures':signatures} + (a.out/'PLAN-OWNER-FIELDS.json').write_text(json.dumps(owner_fields,indent=2)+'\n') + rec={'status':'PASS_OWNER_REUSE_NOMINATION_COMBINATORICS_NOT_FULL_SUPPLIER_ADMISSION', + 'source_plan':str(a.plan),'source_plan_sha256':sha(a.plan),'source_owners_sha256':sha(a.owners), + 'owners_sha256':sha(a.out/'OWNERS.json.gz'),'unchanged_owner_family_sets':True, + 'unchanged_call_order_and_windows':True,'all_footprints_are_disjoint_compacted_prefixes':True, + 'local_signatures':signatures,'sorted_initial_dominance':dominance,'matching_passes':passes, + 'roles':len(roles),'calls':len(calls),'remainder_children':len(remainders),'remainder_profile':dict(sorted(idle.items())), + 'global_profile':profile,'rank_mass':mass,'deficit':2560,'maxchild':max(paid), + 'source_floating_screen_b':rate(oldprofile,2560,M), + 'candidate_floating_screen_b':rate(profile,2560,M), + 'seconds':time.monotonic()-beg, + 'remaining_admission':'Bind freshly verified provider artifacts and their hashes; regenerate the global template, actual 73-column sigmas and remainder axes with the existing emitter; run independent owner/frame audit, finite invoice, and exact moment/outer assembly.'} + (a.out/'OWNER-REUSE.json').write_text(json.dumps(rec,indent=2)+'\n') + print(json.dumps({k:rec[k] for k in ('status','roles','matching_passes','remainder_profile','rank_mass','source_floating_screen_b','candidate_floating_screen_b','seconds')},indent=2),flush=True) + + +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/CENTRE-GUARD-REVIEW.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/CENTRE-GUARD-REVIEW.md new file mode 100644 index 0000000000..6c62bd070e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/CENTRE-GUARD-REVIEW.md @@ -0,0 +1,79 @@ +# Independent review of the centre and admission interfaces + +**Finding:** the replacement of old local centre-carrier IDs by equality of the +eight ordered centre-frame bases preserves the inherited global contract. It +must be used together with the complete local scalar, frame, phase and wrapper +admission. No mathematical admission guard was found to have been removed. + +## Why source carriers may supply centres + +The transported gauge44 centre carriers are +`[92, 57, 81, 224, 11, 240, 9, 256]`. Five are source registers and three are +helper registers. All 112 transported port labels and all eight ordered +rank-eight centre-frame bases agree exactly with the retained parent. The +optional `--main` check in `audit_local.py` independently verifies that boundary +against a byte-pinned parent canonical word. + +The actual forward local program copies the current row of `L_r` into private +`C_k` at their common frame `F_k`. It then descends `C_k` from `F_k` to frame +zero, scatters to the targets, and clears `C_k`. The backward program performs +the corresponding reversed ascent and scatter. This construction depends on +the copied row, its frame and the exact local program, rather than on a +requirement that `r` be in the helper-ID interval. The source itself is not +cleared or treated as private work. + +The independently checked local contract retains every required obligation: +all 716 input columns in both orientations; the forward and backward shear +identities; arbitrary initial helper dirt; scalar/COPY common-frame legality; +centre lifetimes and nested steps; exact native phase identities; endpoint +and row/column cone conditions; and residual wrappers before and after every +relevant touch. Its finite invoice recounts the actual operations. + +The global controller addresses private centres by `k`, while the source or +helper `L_r` is mapped through the complete invocation's ordinary owner array. +The owner audit retains pairwise distinct owners for all active source, target +and helper roles. A helper therefore cannot borrow the family of an active +source centre. The private-centre namespace is disjoint from those owners and +the local program clears it. Each whole invocation finishes before another +begins, so no new interleaving or family lifetime assumption is introduced. + +## Admission guards and single-provider controls + +An AST comparison with PR635 found all **91 assertions in `code/assemble.py` +identical, in the same traversal order**, including constants. This includes +the unchanged PR543 bit input, deficit and surcharge, every finite-invoice +guard, both conservative and native complex moment checks, and the strict +outer assembly and its controls. The following files retain the reviewed PR635 code (the packaged +`bind_providers_portable.py` only trims trailing whitespace): `invoice_allcold.py` (67 assertions), +`bind_providers_portable.py` (22), `generated_identity.py` (4), and `witness.py` +(3). `review_guards.py` reproduces the assertion comparison and records the +file hashes. + +The controller still checks the complete serialized provider registry, +per-call program and dispatch, native phase and wrapper bindings, helper +widths, owner uniqueness, actual busy-family windows, spectator orthogonality, +and literal idle remainders. The single-provider branch replaces partner +substitutions by direct invalid-ID, program, width and hash mutations. Only +four assembly mutation scenarios requiring a second registered provider are +inapplicable. Their removal does not remove any admission predicate. Direct +forged program/phase tests, width-order and width-inventory tests, and +selected-call/order tests remain. + +## Price and bit headroom + +The frozen all72 profile gives the native complex root bracket +`(0.001652208994368411824947, 0.001652208994368411824948)` and +`kappa = 0.001649483702558979`. Both independent rational engines certify the +two signs. The seven-step outer driver passes all 47 strict constraints and +rejects its four standard mutations. The conservative complex price passes +separately at `kappa = 0.001649483699681650`. + +The achieved complex rate is below PR543's retained bit rate +`0.001653826988146798944268`. Using eumemic's independently reviewed PR555 bit +rate `0.001733052823330162099157` gives exactly the same attained kappa. PR543 +therefore remains the cited supplier for this delta; no bit improvement is +claimed here and no PR555 implementation is bundled. + +These receipts supplement the package's complete native, owner, phase and +finite-invoice replay. The inherited all-size realization and analytic +transfer assumptions remain conditional. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json new file mode 100644 index 0000000000..771faa86a7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "compressed_sha256": "3ef4e74e81e2f4621fc95272918ac7b8bb8858df0baa16cc6d91424d55aead9e", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 492, + "entering": 204, + "lowends": 78, + "coldends": 44, + "compensation_gates": 7348, + "local_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "checked_columns": 716, + "elapsed_seconds": 3.147683588000291, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json new file mode 100644 index 0000000000..e2df1dcca8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json @@ -0,0 +1,47 @@ +{ + "status": "PASS_PR635_ADMISSION_ASSERTION_PRESERVATION", + "files": [ + { + "file": "code/assemble.py", + "baseline_sha256": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "new_sha256": "7ac28118d69416e4fb67b61216285fb0823310b7635ce1b9025aa3f10119ef6a", + "byte_identical": false, + "assert_count": 91, + "all_assertions_identical_in_order": true + }, + { + "file": "code/invoice_allcold.py", + "baseline_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "new_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "byte_identical": true, + "assert_count": 67, + "all_assertions_identical_in_order": true + }, + { + "file": "code/bind_providers_portable.py", + "baseline_sha256": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "new_sha256": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "byte_identical": true, + "assert_count": 22, + "all_assertions_identical_in_order": true + }, + { + "file": "code/generated_identity.py", + "baseline_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "new_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "byte_identical": true, + "assert_count": 4, + "all_assertions_identical_in_order": true + }, + { + "file": "code/witness.py", + "baseline_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "new_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "byte_identical": true, + "assert_count": 3, + "all_assertions_identical_in_order": true + } + ], + "centre_interface_review": "CENTRE-GUARD-REVIEW.md", + "scope": "Exact syntax preservation for all admission assertions in these five files. The changed emitter/controller centre boundary and single-provider controls require the separate semantic review; assertion counts alone do not prove them." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE44-INDEPENDENT-PRICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE44-INDEPENDENT-PRICE.json new file mode 100644 index 0000000000..7aa86180dd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/GAUGE44-INDEPENDENT-PRICE.json @@ -0,0 +1,156 @@ +{ + "status": "PASS_FROZEN_PROFILE_TWO_EXACT_ENGINE_AND_OUTER47_CROSSCHECK", + "profile_input_file": "PLAN.json", + "profile_input_sha256": "7b3122026e82b9d9e964d2a50c7bffdc976ae3dfea64bb98b2fdad5cfbdbaa20", + "global_profile": { + "1": 174763, + "2": 30105, + "3": 30275, + "4": 12240, + "5": 4896, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "live": 7168, + "m": 73, + "rank_mass": 520704, + "deficit": 2560, + "prices": { + "native": { + "root": { + "lower": "0.001674185476674086429846", + "upper": "0.001674185476674086429847", + "lower_endpoint_residual_upper": "-9.258737006004892346173061244464039982798397391664878463422077941068021E-25", + "upper_endpoint_residual_lower": "2.005290772036567694936493754533147163786510359586083088453102073919377E-24", + "strict_rational_signs": true + }, + "exact_moments": [ + { + "endpoint": "837092738337043214923/500000000000000000000000", + "accept": true, + "mercator_residual": [ + "-24961505588706589063536270371864708160498115/26959946667150639794667015087019630673637144422540572481103610249216", + "-24961505588706589063536270371864708160498113/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "-462937/500000000000000000000000000000", + "-925873/1000000000000000000000000000000" + ] + }, + { + "endpoint": "1674185476674086429847/1000000000000000000000000", + "accept": false, + "mercator_residual": [ + "54062532266235196619370246291034158858524675/26959946667150639794667015087019630673637144422540572481103610249216", + "54062532266235196619370246291034158858524677/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "200529/100000000000000000000000000000", + "2005291/1000000000000000000000000000000" + ] + } + ], + "outer_with_bit": { + "complex_b": "837092738337043214923/500000000000000000000000", + "bit_c": "1733427039589844234749/1000000000000000000000000", + "kappa": "835693632195073/500000000000000000", + "kappa_decimal": "0.001671387264390146", + "binding": "complex", + "strict_constraints_passed": 47, + "controls_rejected": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ] + } + }, + "conservative": { + "root": { + "lower": "0.001674185473814575474867", + "upper": "0.001674185473814575474868", + "lower_endpoint_residual_upper": "-4.932703074050864500363221905991238131757959051186123070698964701314504E-25", + "upper_endpoint_residual_lower": "2.437894165237372647986425295760776771093048289170590753978317997095726E-24", + "strict_rational_signs": true + }, + "exact_moments": [ + { + "endpoint": "1674185473814575474867/1000000000000000000000000", + "accept": true, + "mercator_residual": [ + "-6649270590065065997663222052892326679295837/13479973333575319897333507543509815336818572211270286240551805124608", + "-1662317647516266499415805513223081669823959/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two_residual": [ + "-246635539906040992121/500000000000000000000000000000000000000000000", + "-2466350399060409921139/5000000000000000000000000000000000000000000000" + ] + }, + { + "endpoint": "418546368453643868717/250000000000000000000000", + "accept": false, + "mercator_residual": [ + "65725496674957295861389862879254608557678601/26959946667150639794667015087019630673637144422540572481103610249216", + "65725496674957295861389862879254608557678603/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "12189469601119396732213/5000000000000000000000000000000000000000000000", + "24378949202238793464567/10000000000000000000000000000000000000000000000" + ] + } + ], + "outer_with_bit": { + "complex_b": "1674185473814575474867/1000000000000000000000000", + "bit_c": "1733427039589844234749/1000000000000000000000000", + "kappa": "835693630770093/500000000000000000", + "kappa_decimal": "0.001671387261540186", + "binding": "complex", + "strict_constraints_passed": 47, + "controls_rejected": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ] + } + } + }, + "bit_supplier_pr": 589, + "bit_deficit": 10272, + "bit_moments_with_surcharge": [ + { + "endpoint": "1733427039589844234749/1000000000000000000000000", + "accept": true, + "mercator_residual": [ + "-43100600330766044577088869872467188970742291/26959946667150639794667015087019630673637144422540572481103610249216", + "-43100600330766044577088869872467188970742289/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "-799345163337715793503/500000000000000000000000000000000000000000000", + "-3197378653350863173989/2000000000000000000000000000000000000000000000" + ] + }, + { + "endpoint": "6933708158359376939/4000000000000000000000", + "accept": false, + "mercator_residual": [ + "22502934905675809315035333485365686073718547/13479973333575319897333507543509815336818572211270286240551805124608", + "5625733726418952328758833371341421518429637/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two_residual": [ + "8346798366759439729359/5000000000000000000000000000000000000000000000", + "16693606733518879458833/10000000000000000000000000000000000000000000000" + ] + } + ], + "gain_over_pr635_percent": "2.14795693544613460937516788041147829054201996498013663108098185775358537919", + "input_sha256": { + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4" + }, + "scope": "Independent arithmetic for the exact nominated all72 profile. Complete local, controller and finite invoice admission are separately replayed by the package driver; this receipt does not replace them. The cited PR589 bit supplier is unchanged and its exceptional-residue surcharge is retained. Any alternative c is only a headroom comparison." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/README.md new file mode 100644 index 0000000000..f97dcf81b1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/README.md @@ -0,0 +1,43 @@ +# Independent checks + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0, under the +package license. The scalar/frame audit imports no generator or supplier +checker. Pricing uses the pinned inherited rational engines and the retained +PR635 outer formula, with their original notices preserved in the main +dependency tree. + +From the delta package directory, using the pinned checkouts and a rebuilt +word: + +```sh +python independent/audit_local.py \ + --word /path/to/rebuild/cold44/FULL-WORD.json.gz \ + --main /path/to/main \ + --output /path/to/output/LOCAL-AUDIT.json + +python independent/price_profile.py \ + --main /path/to/main \ + --output /path/to/output/PRICE.json + +python independent/review_guards.py \ + --pr635 /path/to/pr635 \ + --output /path/to/output/GUARD-REVIEW.json +``` + +`audit_local.py` can run without `--main`; including it also verifies the +transported centre-frame and port boundary against the pinned parent. Its +receipt authenticates the supplied word by its content SHA256, independent +of its location. `price_profile.py` defaults to the package's `data/PLAN.json`; +`--profile` accepts another explicit profile for arithmetic only. The bit side is the cited merged PR589 supplier +(`inputs/PR589-EXPECTED.json`, git blob `e293ddc5…`); its rank-mass deficit +`T(2Kv - L*cst) = 32*(8*111 - 9*63) = 10272` is re-derived independently of +`code/assemble.py`, and the outer receipt key is `outer_with_bit`. The retained +`GAUGE44-INDEPENDENT-PRICE.json` is #645/PR543 historical evidence unless regenerated. The optional +`--headroom-c 0.001733052823330162099157` reproduces the unchanged-kappa +comparison with the reviewed PR555 rate without importing a second supplier. + +The retained receipts are `GAUGE-COLD44-INDEPENDENT-AUDIT.json`, +`GAUGE44-INDEPENDENT-PRICE.json`, and `GAUGE44-GLOBAL-GUARD-REVIEW.json`. +[CENTRE-GUARD-REVIEW.md](CENTRE-GUARD-REVIEW.md) gives the semantic argument +behind the changed centre boundary and the single-provider control branch. +The main package driver performs the separate complete global admission. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/audit_local.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/audit_local.py new file mode 100644 index 0000000000..4744d8783c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/audit_local.py @@ -0,0 +1,171 @@ +"""Independent exact scalar/frame audit of the changed forward supplier. + +This does not import a generator, builder, stored compensation, or price. +All claimed endpoint matrices are derived from the input word's gates. +Optional --main checks the transported boundary against the pinned parent. +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. +""" +import argparse,gzip,json,hashlib,time +from pathlib import Path +from fractions import Fraction as F +from collections import Counter + +def require(x,label): + if not x:raise RuntimeError(label) + +def basis(vs): + piv={} + for a in vs: + while a: + bit=a.bit_length()-1 + if bit in piv:a^=piv[bit] + else: + piv[bit]=a;break + for k in sorted(piv): + for j in piv: + if j>k and piv[j]>>k&1:piv[j]^=piv[k] + return tuple(piv[k] for k in sorted(piv,reverse=True)) + +def contained(a,b):return basis(a+b)==b + +def registers(e):return e[1:3] if e[0]=='add' else e[1:2] + +def apply(e,rows,dual=False): + if e[0]=='add': + t,s=e[1:3];q=F(e[3],e[4]);require(t!=s,'self add') + if dual:t,s,q=s,t,-q + dst=rows[t] + for k,x in list(rows[s].items()): + a=dst.get(k,F(0))+q*x + if a:dst[k]=a + else:dst.pop(k,None) + elif e[0]=='scale': + t=e[1];q=F(e[2],e[3]);require(q!=0,'zero scale') + if dual:q=1/q + rows[t]={k:q*x for k,x in rows[t].items()} + else:raise RuntimeError('unknown scalar primitive') + +def invert(e): + r=list(e) + if r[0]=='add':r[3]=-r[3] + else:r[2],r[3]=r[3],r[2] + return r + +def check_parent_interface(word,main): + # Read only the retained boundary data. No builder or local checker is imported. + relative="research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz" + path=main/relative;raw=path.read_bytes() + require(hashlib.sha256(raw).hexdigest()=="66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844",'parent canonical input pin') + parent=json.loads(gzip.decompress(raw)) + tau=lambda x:x^(43 if (x&43).bit_count()%2 else 0) + ports=parent['ports'];v=word['report']['v'] + require(len(ports)==len(set(ports))==v,'parent port count') + require(set(map(tau,word['ports']))==set(ports),'transported source/target ports') + moved={i:ports.index(tau(p)) for i,p in enumerate(word['ports'])} + centers=[moved.get(r,r) for r in word['centers']] + actual=[list(basis([tau(x) for x in frame])) for frame in word['center_frames']] + expected=[parent['frames'][f] for f in parent['center_frames']] + require(len(centers)==len(set(centers))==len(actual)==8,'eight distinct centre carriers') + require(actual==expected and all(len(f)==8 for f in actual),'ordered centre frame interface') + return dict(parent_path=relative,parent_file_sha256=hashlib.sha256(raw).hexdigest(), + transport_tau=43,ordered_frame_bases_match=True,all_ports_match=True, + transported_centers=centers,source_centers=[r for r in centers if r=2*v} + for e in w['precondition']:apply(e,dirt) + compensation=[['add',y,k,-a.numerator,a.denominator,[]] for y in range(v,2*v) for k,a in sorted(dirt[y].items())] + entering=set(map(int,w.get('start_extra',{})));lowends=set(map(int,w.get('helper_final',{}))) + coldends=lowends-entering + require(not any(e[2] in entering for e in compensation),'nonzero entrance response') + require(not any(r in entering|coldends for e in w['precondition']+compensation for r in registers(e)), 'pre-wrapper touch of residual helper') + require(all(e[-1]==[] for e in w['precondition']+compensation),'nonzero frame precondition') + early=w.get('early_cleanup',[]);earlyids={i for i,U in early} + require(len(earlyids)==len(early),'duplicate early cleanup gate') + tail=[w['cleanup'][i][:-1]+[U] for i,U in early] + cleanup=[e for i,e in enumerate(w['cleanup']) if i not in earlyids] + prefix=w['precondition']+compensation+main + program=prefix+tail+cleanup + for dual in (False,True): + actual=ident() + for e in program:apply(e,actual,dual) + expected=ident() + for t in range(v):expected[t if dual else v+t][v+t if dual else t]=F(-1 if dual else 1) + bad=[i for i in range(n) if actual[i]!=expected[i]] + require(not bad,'all-column endpoint failure '+str((dual,bad[:8]))) + print('endpoint', 'dual' if dual else 'forward','PASS',flush=True) + full=basis([1< 2*max(H)**2, 'halving guard') + rows = [] + for z, accept in [(lower, True), (lower+Q(1, 10**24), False)]: + l, u = M.moment(H, m, W, z, bad) + ll, uu = B.moment(m, W, list(H.items()), z) + if bad: + fl, fu = B.moment(m, W, [(1, 32*m*m*sum(H.values()))], z) + ll, uu = ll+fl/10**16, uu+fu/10**16 + require((u < 1 and uu < 1) if accept else (l > 1 and ll > 1), 'two exact moment signs') + rows.append(dict(endpoint=str(z), accept=accept, + mercator_residual=[str(l-1), str(u-1)], + base_two_residual=[str(ll-1), str(uu-1)])) + return rows + + +def outer47(c, b, engine): + eta = beta = Q(1, 10**24) + s = min(c, (1-beta)*b)-Q(1, 10**27) + require(0 < s < c and s < (1-beta)*b, 'strict common saving') + a = Q(384599, 10**10) + for _ in range(7): + old = a + a = (1-s)*s+s*old + gap = min(s-a, 1-a-s, 1-a-s*(1-old), 1-s) + require(old < a < s < 1-a and gap > 0, 'bootstrap gap') + ceil = lambda x: -(-x.numerator//x.denominator) + cut = max(ceil(36/gap**2), ceil(2*(4+512)/gap)) + require(cut*gap**2 >= 36 and cut*gap >= 2*(4+512), 'finite bootstrap cutoff') + q = a*(1-2*eta) + margin = (1-eta)*q/(1+q) + ticks = margin*10**18 + k = Q((ticks.numerator-1)//ticks.denominator, 10**18) + bridge = {'semantic': {'C0': {'base': 2, 'exponent': 210000}, 'strict_literal_gap': 1}, + 'rows': {'degree_gap': Q(10**6)-Q(51*20161, 25)}} + result = engine.assembly(a, b, bridge, k, eta=eta, beta=beta) + require(len(result['strict_constraints']) == 47, '47 outer constraints') + require(all(x > 0 for x in result['strict_constraints'].values()), 'strict outer constraints') + rejected = [] + for name, kk, ee, be in [('next_grid', k+Q(1, 10**18), eta, beta), + ('zero_eta', k, Q(0), beta), ('zero_beta', k, eta, Q(0)), + ('unit_beta', k, eta, Q(1))]: + try: + engine.assembly(a, b, bridge, kk, eta=ee, beta=be) + except AssertionError: + rejected.append(name) + else: + raise RuntimeError('accepted negative control: '+name) + return dict(complex_b=str(b), bit_c=str(c), kappa=str(k), kappa_decimal=decimal(k), + binding='bit' if c < (1-beta)*b else 'complex', + strict_constraints_passed=47, controls_rejected=rejected) + + +def main(): + require(__debug__, 'Do not use python -O: the retained outer engine requires assertions') + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--main', type=Path, required=True, help='Pinned main checkout') + parser.add_argument('--profile', type=Path, default=HERE.parent/'data/PLAN.json', + help='Raw profile or a JSON object containing profile/global_profile') + parser.add_argument('--output', type=Path, required=True) + parser.add_argument('--headroom-c', help='Optional alternative bit saving, for comparison only') + args = parser.parse_args() + inputs = json.loads((HERE.parent/'data/UPSTREAM-PINS.json').read_text()) + selected = [SOURCE/'engines'/(n+'.py') for n in ('moment', 'base_two_moment', 'outer')] + for relative in selected: + require(sha(args.main/relative) == inputs[relative.as_posix()], 'pinned input '+str(relative)) + M, B, A = [load(args.main/SOURCE/'engines', n) for n in ('moment', 'base_two_moment', 'outer')] + supplied = json.loads(args.profile.read_text()) + H = {int(r): n for r, n in supplied.get('profile', supplied.get('global_profile', supplied)).items()} + bit_data = BIT_PATH.read_bytes() + require(hashlib.sha1(b'blob '+str(len(bit_data)).encode()+b'\0'+bit_data).hexdigest() == BIT_BLOB, 'PR589 blob pin') + record = json.loads(bit_data) + bit = record['nine'] + require('nine-stage' in bit['pipeline'] and '32 replicas' in bit['pipeline'], 'nine-stage bit record') + bit_deficit = pr589_deficit(record['word'], bit['bit']['live']) + require(sum(int(r)*n for r, n in bit['profile'].items()) == bit['bit']['rank_mass'], 'bit rank mass') + c = Q(bit['bit_lower']) + bit_checks = moment_checks(M, B, {int(r): n for r, n in bit['profile'].items()}, + 64, bit['bit']['live'], c, bit_deficit, True) + prices = {} + for mode, bad in [('native', False), ('conservative', True)]: + root = M.certify(H, 73, 7168, bad) + root = {key: root[key] for key in ('lower', 'upper', 'lower_endpoint_residual_upper', + 'upper_endpoint_residual_lower', 'strict_rational_signs')} + b = Q(root['lower']) + row = dict(root=root, exact_moments=moment_checks(M, B, H, 73, 7168, b, 2560, bad), + outer_with_bit=outer47(c, b, A)) + if args.headroom_c: + alternate = outer47(Q(args.headroom_c), b, A) + require(alternate['kappa'] == row['outer_with_bit']['kappa'], 'headroom comparison changed kappa') + row.update(outer_with_alternative_bit_rate=alternate, same_kappa_with_either_bit_rate=True) + prices[mode] = row + native_k = Q(prices['native']['outer_with_bit']['kappa']) + result = dict(status='PASS_FROZEN_PROFILE_TWO_EXACT_ENGINE_AND_OUTER47_CROSSCHECK', + profile_input_file=args.profile.name, profile_input_sha256=sha(args.profile), + global_profile=H, live=7168, m=73, rank_mass=sum(r*n for r, n in H.items()), deficit=2560, + prices=prices, bit_supplier_pr=589, bit_deficit=bit_deficit, bit_moments_with_surcharge=bit_checks, + gain_over_pr635_percent=decimal(100*(native_k/Q('0.001636241501576388')-1)), + input_sha256={**{relative.as_posix(): sha(args.main/relative) for relative in selected}, 'package:inputs/PR589-EXPECTED.json': sha(BIT_PATH)}, + scope='Independent arithmetic for the exact nominated all72 profile. Complete local, controller and finite invoice admission are separately replayed by the package driver; this receipt does not replace them. The cited PR589 bit supplier is unchanged and its exceptional-residue surcharge is retained. Any alternative c is only a headroom comparison.') + args.output.write_text(json.dumps(result, indent=2)+'\n') + print(result['status'], prices['native']['outer_with_bit']['kappa_decimal'], result['gain_over_pr635_percent']) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/review_guards.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/review_guards.py new file mode 100644 index 0000000000..086dcf3d11 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/independent/review_guards.py @@ -0,0 +1,46 @@ +"""Reproduce the assertion-preservation part of the independent guard review. + +This compares complete assertion ASTs in their traversal order. It supplements +the semantic centre-interface argument in CENTRE-GUARD-REVIEW.md. +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. +""" +import argparse +import ast +import hashlib +import json +from pathlib import Path + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--pr635', type=Path, required=True, help='Pinned PR635 checkout or supplier directory') + parser.add_argument('--delta', type=Path, default=Path(__file__).resolve().parents[1]) + parser.add_argument('--output', type=Path, required=True) + args = parser.parse_args() + old = args.pr635 + if not (old/'code/assemble.py').exists(): + old = old/'research/complex-571-cold14-st2' + names = ['assemble.py', 'invoice_allcold.py', 'bind_providers_portable.py', + 'generated_identity.py', 'witness.py'] + records = [] + for name in names: + a, b = (old/'code'/name).read_bytes(), (args.delta/'code'/name).read_bytes() + assertions = lambda data: [ast.dump(n, include_attributes=False) for n in ast.walk(ast.parse(data)) + if isinstance(n, ast.Assert)] + aa, bb = assertions(a), assertions(b) + if aa != bb: + raise RuntimeError('Assertion sequence changed: '+name) + records.append(dict(file='code/'+name, baseline_sha256=hashlib.sha256(a).hexdigest(), + new_sha256=hashlib.sha256(b).hexdigest(), byte_identical=a == b, + assert_count=len(aa), all_assertions_identical_in_order=True)) + if records[0]['assert_count'] != 91: + raise RuntimeError('The expected PR635 assembly has 91 assertions') + result = dict(status='PASS_PR635_ADMISSION_ASSERTION_PRESERVATION', files=records, + centre_interface_review='CENTRE-GUARD-REVIEW.md', + scope='Exact syntax preservation for all admission assertions in these five files. The changed emitter/controller centre boundary and single-provider controls require the separate semantic review; assertion counts alone do not prove them.') + args.output.write_text(json.dumps(result, indent=2)+'\n') + print(result['status'], [r['assert_count'] for r in records]) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/inputs/PR589-EXPECTED.json b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/inputs/PR589-EXPECTED.json new file mode 100644 index 0000000000..e293ddc557 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/inputs/PR589-EXPECTED.json @@ -0,0 +1,222 @@ +{ + "word": { + "file": "tune/bitE8mut-p111-tuned.json.gz", + "file_sha256": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "content_sha256": "5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b", + "v": 111, + "R": 439, + "punctured": [ + 10, + 15, + 51, + 53, + 56, + 66, + 72, + 89, + 111 + ], + "retained_totals": 9, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ], + "decoder_constant": 63, + "gates": { + "D": 111, + "A": 2075, + "B": 712, + "C": 2574 + }, + "local_histogram": { + "1": 1323, + "2": 1342, + "3": 79, + "4": 44, + "5": 102, + "6": 11, + "7": 19 + }, + "legality": { + "records": 27234, + "common_frame_ADDs": 24305, + "rank_mass": 5129 + }, + "five_stage_columns": 883, + "five_stage_payload_bits": 93, + "nine_stage_columns": 1327, + "nine_stage_payload_bits": 93, + "eleven_stage_columns": 1549, + "eleven_stage_payload_bits": 93, + "base_content_sha256": "d0df3c89ae84989f4045ba1681a5e2e9fcdfa38ed0301c8abf5185537155cbe3" + }, + "interface": { + "hypotheses": { + "H1_no_target_feeds_z": true, + "H2_D_frame0_targets_from_helpers": true, + "H3_A_z_only_scatter_targets_B_split": true, + "H4_C_literal_reverse_at_full": true, + "H5_V_identity": true + }, + "conclusion": { + "U_block_form": true, + "J_identity": true, + "K_equals_D": true, + "C_is_U_inverse": true + }, + "interleaving": { + "z_gates_A": 2075, + "source_writes_A": 0, + "z_gates_B": 499, + "source_writes_B": 483, + "helper_writes_B": 16, + "sources_rewritten_B": 108, + "B_z_write_frame_dims": { + "4": 388, + "6": 111 + }, + "B_z_operand_kinds": { + "helper<-helper": 3, + "helper<-source": 13, + "source<-helper": 108, + "source<-source": 375 + }, + "B_z_operand_kinds_by_dim": { + "dim4:helper<-source": 13, + "dim4:source<-source": 375, + "dim6:helper<-helper": 3, + "dim6:source<-helper": 108 + }, + "B_z_writes_after_a_target_read_of_the_same_register": 454, + "B_target_reads_of_registers_rewritten_earlier_in_B": 111, + "target_reads_of_targets": 0, + "cleanup_gates": 2574 + } + }, + "nine": { + "pipeline": "PR #510 (PR #463 nine-stage template, 32 replicas, PR #442 hosting, PR #493 outer assembly), parameterised for v <= 120 by code/adapt9p.py", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_lower_decimal": "0.001733427039589844234749", + "profile": { + "1": 381024, + "2": 400416, + "3": 22752, + "4": 26880, + "5": 29376, + "6": 17376, + "7": 26784, + "42": 288 + }, + "bit": { + "live": 28416, + "physical": 28425, + "maxchild": 42, + "rank_mass": 1808352, + "hosted_residuals": 126432, + "bank_assignments": 0, + "prefix_bits": 177, + "charged_prefix_bits": 192, + "coefficient_bits": 177, + "two_level_coefficient_bits": 393, + "charged_two_level_coefficient_bits": 512, + "row_coefficient": 18355, + "halving_depth": 2 + }, + "kappa": { + "pr548": { + "kappa": "49718254847979/31250000000000000", + "kappa_decimal": "0.001590984155135328", + "complex_lower": "796759709641153381751/500000000000000000000000", + "binding_component": "complex" + }, + "pr544": { + "kappa": "397677800014309/250000000000000000", + "kappa_decimal": "0.001590711200057236", + "complex_lower": "31864911873350496687/20000000000000000000000", + "binding_component": "complex" + }, + "pr535": { + "kappa": "793733736881443/500000000000000000", + "kappa_decimal": "0.001587467473762886", + "complex_lower": "1589991533606044174031/1000000000000000000000000", + "binding_component": "complex" + }, + "pr531": { + "kappa": "1517760977820331/1000000000000000000", + "kappa_decimal": "0.001517760977820331", + "complex_lower": "304013615566499291631/200000000000000000000000", + "binding_component": "complex" + } + } + }, + "eleven": { + "pipeline": "PR #493 (PR #445 geometry, PR #472 emitter, audit and invoice, PR #442 hosting), parameterised by PR #545's code/adapt.py", + "bit_lower": "855475950388791987811/500000000000000000000000", + "bit_lower_decimal": "0.001710951900777583975622", + "profile": { + "1": 116424, + "2": 121648, + "3": 6952, + "4": 7424, + "5": 8976, + "6": 4520, + "7": 8776, + "56": 2600 + }, + "bit": { + "live": 8880, + "physical": 8889, + "maxchild": 56, + "rank_mass": 689304, + "hosted_residuals": 38632, + "prefix_bits": 4304, + "charged_prefix_bits": 4352, + "coefficient_bits": 4304, + "three_level_coefficient_bits": 12966, + "charged_three_level_coefficient_bits": 12992, + "row_coefficient": 19431, + "halving_depth": 3 + }, + "emitted_program_sha256": "793b6f40c9aa4b8db57fec0ac0973e16884dae28707e482ee8f7a2349a5d5a4b", + "kappa": { + "pr548": { + "kappa": "49718254847979/31250000000000000", + "kappa_decimal": "0.001590984155135328", + "complex_lower": "796759709641153381751/500000000000000000000000", + "binding_component": "complex" + }, + "pr544": { + "kappa": "397677800014309/250000000000000000", + "kappa_decimal": "0.001590711200057236", + "complex_lower": "31864911873350496687/20000000000000000000000", + "binding_component": "complex" + }, + "pr535": { + "kappa": "793733736881443/500000000000000000", + "kappa_decimal": "0.001587467473762886", + "complex_lower": "1589991533606044174031/1000000000000000000000000", + "binding_component": "complex" + }, + "pr531": { + "kappa": "1517760977820331/1000000000000000000", + "kappa_decimal": "0.001517760977820331", + "complex_lower": "304013615566499291631/200000000000000000000000", + "binding_component": "complex" + } + } + }, + "base": { + "nine_bit_lower": "1733052823330162099157/1000000000000000000000000", + "nine_bit_lower_decimal": "0.001733052823330162099157", + "eleven_bit_lower": "427652201524503168379/250000000000000000000000", + "eleven_bit_lower_decimal": "0.001710608806098012673516", + "note": "PR #555's EXPECTED.json (untuned word); the tune/ pipeline is the same, with the same frozen hosting selections" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/verify_global.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/verify_global.py new file mode 100644 index 0000000000..7ab79e3062 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/verify_global.py @@ -0,0 +1,112 @@ +"""Replay the changed global admission against pinned upstream dependencies. + +The local directory must contain the fresh canonical/native/phase/wrapper +artifacts produced by construction/reproduce.py. Frozen evidence may be used +for a short admission-only replay. No optimizer runs during this verifier. +""" +import argparse +import hashlib +import json +import os +from pathlib import Path +import subprocess +import sys +import time + +assert __debug__, 'Assertions required' +PACKAGE = Path(__file__).resolve().parent + + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def dump(path, value): + Path(path).write_text(json.dumps(value, indent=2) + '\n') + + +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--main', type=Path, required=True, help='Pinned CrocSwap main checkout') +ap.add_argument('--local', type=Path, required=True, help='Rebuilt or frozen native gauge44 directory') +ap.add_argument('--work', type=Path, required=True, help='New output directory') +ap.add_argument('--discover', action='store_true', help=argparse.SUPPRESS) +args = ap.parse_args() +main, local, work = args.main.resolve(), args.local.resolve(), args.work.resolve() +assert not work.exists(), 'Output directory must be new' +source = main/'research/complex-k492-owner-repair/vendor/multicold' +baseline = main/'research/community-k492-audit/pr622/replay/baseline558' +vendor = source/'vendor/pr558/vendor/pr552/complex-global/vendor531' +pins = PACKAGE/'data/UPSTREAM-PINS.json' +if pins.exists(): + for rel, expected in json.loads(pins.read_text()).items(): + assert sha(main/rel) == expected, 'Upstream dependency changed: ' + rel +else: + assert args.discover, 'Missing upstream pins' + paths = list((baseline/'complex-global/base').rglob('*')) + paths += [source/'code/run_portable.py', source/'inputs/PR543-EXPECTED.json', + vendor/'evidence/audit/PREFIX-AND-INVOICE.json'] + paths += [source/'vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz', + baseline/'complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz', + vendor/'code/prepare_supplier_base.py'] + paths += [source/'engines'/name for name in ('moment.py', 'base_two_moment.py', 'outer.py')] + dump(pins, {p.relative_to(main).as_posix(): sha(p) for p in sorted(paths) if p.is_file()}) +work.mkdir(parents=True) +env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', + PYTHONINTMAXSTRDIGITS='0', MULTICOLD_SOURCE=str(source), + GAIN_PR564_SOURCE=str(source), WITNESS_SPEC=str(PACKAGE/'data/SPEC.json')) +env.pop('PYTHONOPTIMIZE', None) +env.pop('WITNESS_DISCOVER', None) +env.pop('WITNESS_RECORD', None) +if args.discover: + env.update(WITNESS_DISCOVER='1', WITNESS_RECORD=str(work/'WITNESS-RECORD.jsonl')) +stages = [] + + +def run(name, script, *arguments): + started = time.monotonic() + log = work/(name + '.log') + with log.open('w') as stream: + result = subprocess.run([sys.executable, '-B', str(source/'code/run_portable.py'), + str(script), *map(str, arguments)], env=env, + stdout=stream, stderr=subprocess.STDOUT) + stages.append(dict(name=name, seconds=round(time.monotonic()-started, 3), + exit_code=result.returncode, log_sha256=sha(log))) + dump(work/'STAGES.json', stages) + if result.returncode: + raise RuntimeError(name + ' failed:\n' + log.read_text()[-7000:]) + print('PASS', name, stages[-1]['seconds'], flush=True) + + +code = PACKAGE/'code' +global_dir = work/'global' +run('restore-parent', code/'restore_parent.py', '--source', source, + '--baseline', baseline, '--out', work/'parent558') +run('bind', code/'bind_providers_portable.py', '--baseline', work/'parent558', + '--provider', 'gauge44='+str(local), '--plan', PACKAGE/'data/PLAN.json', '--out', global_dir) +run('emit', code/'emit_allcold.py', '--base', global_dir/'base', + '--owners', PACKAGE/'data/OWNERS.json.gz', '--plan', global_dir/'PLAN.json', '--out', global_dir/'hosted') +run('audit', code/'audit_allcold.py', global_dir/'base', global_dir/'hosted', + global_dir/'audit/ASYNC-AUDIT.json', '--mutation-controls') +run('invoice', code/'invoice_allcold.py', '--base', global_dir/'base', + '--hosted', global_dir/'hosted', '--audit', global_dir/'audit', '--out', global_dir/'audit', + '--retained-invoice', vendor/'evidence/audit/PREFIX-AND-INVOICE.json') +run('assembly', code/'assemble.py', source, global_dir, work/'ASSEMBLY.json') +if not args.discover: + run('admission-controls', code/'assembly_controls.py', '--source-package', source, + '--owner', global_dir/'audit/OWNERS-AND-PROFILE.json', + '--invoice', global_dir/'audit/PREFIX-AND-INVOICE.json', '--out', work/'ADMISSION-CONTROLS.json') + run('bit-supplier-controls', code/'bit_supplier_controls.py', '--source-package', source, + '--owner', global_dir/'audit/OWNERS-AND-PROFILE.json', + '--invoice', global_dir/'audit/PREFIX-AND-INVOICE.json', '--out', work/'BIT-SUPPLIER-CONTROLS.json') + bit_controls = json.loads((work/'BIT-SUPPLIER-CONTROLS.json').read_text()) + assert bit_controls['status'] == 'PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS' + assert len(bit_controls['rejected_controls']) == 12 and bit_controls['derived_deficit'] == 10272 +result = json.loads((work/'ASSEMBLY.json').read_text()) +dump(work/'REPLAY.json', dict(status='PASS_GAUGE44_DISCOVERY' if args.discover else 'PASS_GAUGE44_STRICT_GLOBAL_REPLAY', + kappa=result['kappa'], kappa_decimal=result['kappa_decimal'], + complex_lower=result['complex_lower'], bit_lower=result['bit_lower'], + bit_supplier=result['bit_supplier'], + gain_over_pr635_percent=result['gain_over_pr635_percent'], + spec_sha256=sha(PACKAGE/'data/SPEC.json'), stages=stages, + scope=result['scope'])) +print(result['status'], result['kappa_decimal'], result['gain_over_pr635_percent'], flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/verify_manifest.py b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/verify_manifest.py new file mode 100644 index 0000000000..8c2441d392 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1022/research/gauge44-slots/verify_manifest.py @@ -0,0 +1,19 @@ +"""Verify the submitted package's exact file inventory and SHA256 bindings.""" +from hashlib import sha256 +import json +from pathlib import Path + +root = Path(__file__).resolve().parent +expected = json.loads((root / 'MANIFEST.json').read_text()) +actual = { + p.relative_to(root).as_posix(): sha256(p.read_bytes()).hexdigest() + for p in root.rglob('*') + if p.is_file() and '__pycache__' not in p.parts + and p != root / 'MANIFEST.json' +} +if actual != expected: + missing = sorted(expected.keys() - actual.keys()) + extra = sorted(actual.keys() - expected.keys()) + changed = sorted(k for k in expected.keys() & actual.keys() if expected[k] != actual[k]) + raise SystemExit(f'Manifest mismatch: missing={missing}, extra={extra}, changed={changed}') +print(f'PASS package manifest: {len(actual)} files') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/CONSTRUCTION.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/CONSTRUCTION.md new file mode 100644 index 0000000000..4fb25c1f09 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/CONSTRUCTION.md @@ -0,0 +1,24 @@ +# Complete eight-slot k8 / rank-seven-end construction + +The inherited gauge44, mutable-leaver, promotion, U8 and seven-slot stages are the checked baseline. Their original recipes and proof notices remain in `construction/` and the corresponding `PROOF-NOTE-*` files. They are NOT the final provider of this package. + +The reproducible changed chain is: + +`checked seven-slot k8 baseline (c2b29430) → rank-seven ends574/575 (f64e0942) → X54 eighth slot (9fca1fc6) → native canonical/program/phase compilation → strict T8 → strict T16`. + +`construction/ends7/verify_ends7.py` is the binding verifier. Its CLI is retained for existing dispatch, but its output marker is `PASS_RANK7_ENDS_AND_X54_ON_CHECKED_SLOT_BASELINE`. It runs the intermediate ends7 negative controls BEFORE X54, then the X54-specific builder and controls, composite native pins, independent exact audit, full PR1049 premise, and both global replays. + +## Exact intermediate and final pins + +- The baseline is pinned by `construction/slots/SLOT-PINS-k8.json` and must be a completed successful slot replay. +- The ends7 intermediate is pinned by `construction/ends7/ENDS7-PINS-k8.json` and `RECIPE-ENDS7-k8.json`. Its old result numbers are provenance for that stage; they are not the final bound. +- The final composite is pinned by `construction/ends7/x54/X54-PINS.json` and `RECIPE-X54-ends7.json`. The triangle builder checks both input and output content hashes. +- Binding final T8/T16 owner/spec data is `data/T8`, `data/SPEC-T8.json`, and `data/{PLAN.json,OWNERS.json.gz,SPEC.json}`. + +## X54 implementation + +X54/E589 is the S-register image of the existing X62 slot. The incoming arbitrary helper value is absorbed with donation922→holder367 before read1197 and donation933→holder335 before read1213 (indices refer to the U15 search word). Read assignment is {922:E,933:X,1196:E,1212:X}. The admitted native recipe uses one FULL cleanup prepend for holder335 and one rank-eight early restoration for holder367. Moving the latter to FULL fails the exact endpoint check. + +Final paid profile is {1:2406,2:432,3:426,4:138,5:84,8:8}, with480 helpers and residual width3728. Helper widths are {4:56,5:32,7:32,8:120,9:240}; X54 does not change the ends7 width supply. + +The unchanged scalar endpoint and inverse-transpose orientation are checked on every native column, with arbitrary dirt and all entrance/end frames. No isolated set-model estimate is used as an admission result. The PR589 bit supplier and inherited conditional assumptions remain unchanged. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/LICENSE b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/LOCAL-VALIDATION.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/LOCAL-VALIDATION.json new file mode 100644 index 0000000000..5973645e1a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/LOCAL-VALIDATION.json @@ -0,0 +1,356 @@ +{ + "status": "PASS_LOCAL_INCREMENTAL_GAUGE44", + "python": "3.14.8", + "upstream_main": "17ce0c79b7b51c2634b439ea5a2b754f09909693", + "pr635": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f", + "construction_steps": [ + { + "step": "shadow-early", + "exit_code": 0, + "seconds": 0.322 + }, + { + "step": "shadow-prefix", + "exit_code": 0, + "seconds": 0.429 + }, + { + "step": "gauge-forward", + "exit_code": 0, + "seconds": 0.474 + }, + { + "step": "port0", + "exit_code": 0, + "seconds": 0.388 + }, + { + "step": "port1", + "exit_code": 0, + "seconds": 0.407 + }, + { + "step": "port2", + "exit_code": 0, + "seconds": 0.403 + }, + { + "step": "port3", + "exit_code": 0, + "seconds": 0.389 + }, + { + "step": "cold44-exact", + "exit_code": 0, + "seconds": 2.544 + }, + { + "step": "native", + "exit_code": 0, + "seconds": 3.63 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 2.759 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 15.924 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 2.706 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 186.772 + } + ], + "five_mathematical_local_artifacts_match_frozen_evidence": true, + "phase_edges": 3019, + "endpoint_adapters": 224, + "independent_scalar_audit": { + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "compressed_sha256": "0ad202612f010df4ab66432a628247b37ad8b497dd6b27595b1685cbd7eb119e", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 492, + "entering": 204, + "lowends": 78, + "coldends": 44, + "compensation_gates": 7348, + "local_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "checked_columns": 716, + "elapsed_seconds": 2.443164045999765, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." + }, + "independent_guard_review": { + "status": "PASS_PR635_ADMISSION_ASSERTION_PRESERVATION", + "files": [ + { + "file": "code/assemble.py", + "baseline_sha256": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "new_sha256": "7ac28118d69416e4fb67b61216285fb0823310b7635ce1b9025aa3f10119ef6a", + "byte_identical": false, + "assert_count": 91, + "all_assertions_identical_in_order": true + }, + { + "file": "code/invoice_allcold.py", + "baseline_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "new_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "byte_identical": true, + "assert_count": 67, + "all_assertions_identical_in_order": true + }, + { + "file": "code/bind_providers_portable.py", + "baseline_sha256": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "new_sha256": "7c9aba6c7f138d270852d859d902f905a15598b6263567700b5b08a153823cb6", + "byte_identical": false, + "assert_count": 22, + "all_assertions_identical_in_order": true + }, + { + "file": "code/generated_identity.py", + "baseline_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "new_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "byte_identical": true, + "assert_count": 4, + "all_assertions_identical_in_order": true + }, + { + "file": "code/witness.py", + "baseline_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "new_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "byte_identical": true, + "assert_count": 3, + "all_assertions_identical_in_order": true + } + ], + "centre_interface_review": "CENTRE-GUARD-REVIEW.md", + "scope": "Exact syntax preservation for all admission assertions in these five files. The changed emitter/controller centre boundary and single-provider controls require the separate semantic review; assertion counts alone do not prove them." + }, + "owner_replay": { + "status": "PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY", + "seed_mode": "included_frozen_seed", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "owners_gzip_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "scope": "Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate." + }, + "global_replay": { + "status": "PASS_GAUGE44_STRICT_GLOBAL_REPLAY", + "kappa": "1649483702558979/1000000000000000000", + "kappa_decimal": "0.001649483702558979", + "complex_lower": "1652208994368411824947/1000000000000000000000000", + "bit_lower": "413456747036699736067/250000000000000000000000", + "gain_over_pr635_percent": "0.8093060205252829126484020359439672024956960385078942889840023844750830", + "spec_sha256": "fee57674a7f36b30b1e7eb96a8f567a90a522217bc644c1a6a1f8bff85196fbf", + "stages": [ + { + "name": "restore-parent", + "seconds": 2.089, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind", + "seconds": 0.962, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 4.817, + "exit_code": 0, + "log_sha256": "90ce07d06a8eaffdb66201e8346021183e5a803395fb9f6d8ceb0e5ff068ef2c" + }, + { + "name": "audit", + "seconds": 19.625, + "exit_code": 0, + "log_sha256": "66b4abb2a88a4eaba8a8baa3585ef4aa819be5f8acb7947bae734b3478280456" + }, + { + "name": "invoice", + "seconds": 1.804, + "exit_code": 0, + "log_sha256": "5d10712d494304287749dd7a6c3369f9b707bba30e9f567b68230669dcf5418a" + }, + { + "name": "assembly", + "seconds": 0.808, + "exit_code": 0, + "log_sha256": "768d3215f1918117dc6c33b4cfeaf0b5f5da9ba5c77178db4bb1d08d000e226f" + }, + { + "name": "admission-controls", + "seconds": 0.885, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the same cited unchanged PR543 bit supplier as PR635. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." + }, + "admission_mutations_rejected": 69, + "controller_mutations_rejected": 15, + "frozen_template_content_sha256": "0c2aab7dc120f5882a0171496cbbe819cac81373dcb425802a15f45e36898a46", + "fresh_template_content_sha256": "a1692259fb5a06bbebdc1049a7f757c6d2fc79ff8c31ed0c25b38fe9f98ed051", + "template_comparison": { + "sole_changed_field": "async_schedule.source_plan_sha256", + "frozen_plan_sha256": "609adb126d7d3de2abdd9275f9015589c0b137d0d19821c2c3e7c1a8541c18d2", + "fresh_plan_sha256": "b2e4b1f063250c40e0087f77e896882c60f36ed8764e86ba1610dec9bdff7394", + "explanation": "Fresh phase review differs only in its measured seconds. Runtime provider binding consequently changes the plan byte hash. All remaining serialized template fields match exactly; each runtime hash is checked against its own file." + }, + "assembly_matches_frozen_rates_and_profile": true, + "post_replay_packaging": "Four files received trailing-whitespace cleanup only; complete parsed ASTs were checked unchanged. Constructor input pin refreshed. Admission assertion comparison rerun.", + "scope": "Changed construction and exact recipe, fresh native ledgers/wrappers/phases, independent scalar and guard audits, integer owner reproduction, strict global admission and independent pricing. No predecessor full replay, seed-discovery optimizer or PDF generation. Local Python 3.14; Python 3.11 is covered by CI." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/MANIFEST.json new file mode 100644 index 0000000000..81f6b2ef3a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/MANIFEST.json @@ -0,0 +1,206 @@ +{ + "code/assemble.py": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a", + "code/assembly_controls.py": "da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d", + "code/audit_allcold.py": "1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc", + "code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "code/emit_allcold.py": "354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e", + "code/freeze_spec.py": "5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2", + "code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "code/invoice_allcold.py": "71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8", + "code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "construction/barch/build_tri.py": "0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e", + "construction/barch/LOCAL-PINS-barch-U8.json": "2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5", + "construction/barch/RECIPE-U8.json": "292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652", + "construction/barch/reproduce_barch.py": "19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1", + "construction/barch/run_controls.py": "42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476", + "construction/build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "construction/COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "construction/COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "construction/construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "construction/ends7/build_ends7.py": "4f575f1e73b2ea5f051b3defdf2013310fa462cc120e44d26a3b1ab6a3ef2148", + "construction/ends7/end7_controls.py": "c7edf1d6ee059d6c9e73921179154f1c8556b2a6b738246c4ea9021ccc0fe067", + "construction/ends7/ENDS7-PINS-k8.json": "88b276bb95c5cc8b93fd7aaa935ee6ae3544cf704952ba797d929ee8a18d6044", + "construction/ends7/fastpath/lowering.py": "ba42903b841722b872f98f3afa77d47976ca66a0cb4c0dd6b8de04462d4baa2b", + "construction/ends7/fastpath/NOTICE.md": "3da80a5155c625bff907a42a82c65bfcf92854d2c960bcea4537c19c99efd4f2", + "construction/ends7/fastpath/phases_fast.py": "122c671f5bf49a1696b5edc91d76d7c16b1837513dd6c54ace4add747cd3c657", + "construction/ends7/fastpath/PROOF.md": "d73e4522602404caba8e7f247005a45c8a8cd26ffd2a70d65f4f9556a391d053", + "construction/ends7/fastpath/sparse_state.py": "e91210ecd5085cf9add872f40bb434806838da488e12152c63c86e51fb5a7a37", + "construction/ends7/premise/inputs/CODED-CELLS-k8.json": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "construction/ends7/premise/inputs/TRI-LEAVER-k8.json": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "construction/ends7/premise/premise_check.py": "28a7f881a988b29b8ed3c927dd142ac3d4ee273dedab3a65bb02c01a64eb2639", + "construction/ends7/premise/verify_1049.py": "a1736324c6db161733d8e11f608defd87b7f97cacd611203d22499e4c7de5545", + "construction/ends7/README.md": "3190ed220438c4c611ab2dd4f695991c3ed2ed90cc9e9dfaed9b8cee5da28cfd", + "construction/ends7/RECIPE-ENDS7-k8.json": "18b8563294b9052a33dd7eafc4ca35f4feec3871bfdec4b00153966fa87e24b3", + "construction/ends7/verify_ends7.py": "23e1408149ee4a23de1e77d989fc4fba43bd3978663c846c9147334db5368764", + "construction/ends7/x54/build_tri.py": "2432372f148a4d34d2909ff8a7e2a239d6ee51837892380963de6efd45c8f2d6", + "construction/ends7/x54/RECIPE-X54-ends7.json": "5704c7d1ad8be05f51b7c8ff39c6f2430bf787bc1ac5919e6f1ae293df369748", + "construction/ends7/x54/run_controls.py": "51454916979eabf8f69a130a558216cb02df18626b8dd4cddd77a2fb745f2a86", + "construction/ends7/x54/X54-PINS.json": "a3cd63bcbe77c5e42efeac5234b8b9d5bc2e0234838020622fe1dda717d8020d", + "construction/frames/build_frames.py": "200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb", + "construction/frames/FRAME-RECIPE-sw4.json": "a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473", + "construction/frames/frame_controls.py": "477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77", + "construction/frames/LOCAL-PINS-frames-sw4.json": "bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f", + "construction/frames/reproduce_frames.py": "dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832", + "construction/INPUTS.json": "edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99", + "construction/jx/build_jx.py": "3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916", + "construction/jx/LOCAL-PINS-jx-X4.json": "95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974", + "construction/jx/RECIPE-X4.json": "9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd", + "construction/jx/reproduce_jx.py": "5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c", + "construction/layers/build_pivot_swap.py": "8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8", + "construction/layers/layer_end_controls.py": "7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef", + "construction/layers/reproduce_layers.py": "435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e", + "construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz": "3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0", + "construction/layers_np/HPE-RECIPE-NP.json": "43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1", + "construction/layers_np/PIVOT-SWAP-K8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "construction/layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "construction/layers_np/reproduce_np.py": "1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c", + "construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz": "17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4", + "construction/layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "construction/layers_p6n/P6N-SPEC.json": "132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1", + "construction/layers_p6n/reproduce_p6n.py": "aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca", + "construction/leaver/build_frames_lv.py": "2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b", + "construction/leaver/cells-k8/CORE-01+.json": "3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c", + "construction/leaver/cells-k8/CORE-01-.json": "8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927", + "construction/leaver/cells-k8/CORE-23+.json": "53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d", + "construction/leaver/cells-k8/CORE-23-.json": "e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d", + "construction/leaver/cells-k8/CORE-45+.json": "ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9", + "construction/leaver/cells-k8/CORE-45-.json": "302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7", + "construction/leaver/cells-k8/CORE-67+.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "construction/leaver/cells-k8/CORE-67-.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "construction/leaver/cgx_leaver.py": "3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c", + "construction/leaver/CHAIN-PINS-k8.json": "9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9", + "construction/leaver/CODED-CELLS-k8.json": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz": "6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33", + "construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz": "24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb", + "construction/leaver/FRAME-RECIPE-LV-k8.json": "b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065", + "construction/leaver/HPE-RECIPE-k8.json": "907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9", + "construction/leaver/layer_end_controls_leaver.py": "4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206", + "construction/leaver/LEAVER-PINS-k8.json": "ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6", + "construction/leaver/LEC-REASON-PINS-k8.json": "b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914", + "construction/leaver/LEC-REASON-PINS-STACK-k8.json": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "construction/leaver/PROMO-RECIPE-k8.json": "bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83", + "construction/leaver/RECIPE-U8-k8.json": "51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e", + "construction/leaver/RECIPE-X4-k8.json": "4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1", + "construction/leaver/REGROUP-LEAVER-k8.json": "b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e", + "construction/leaver/reproduce_leaver.py": "831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30", + "construction/leaver/reproduce_leaver_chain.py": "2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5", + "construction/leaver/TRI-LEAVER-k8.json": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "construction/LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "construction/NOTICE.md": "defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816", + "construction/notri/cgx.py": "3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418", + "construction/notri/cold44x.py": "f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296", + "construction/notri/port_stage_x.py": "38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7", + "construction/notri/PRIO6.json": "de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15", + "construction/notri/reproduce_notri.py": "90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8", + "construction/promo/build_promotion.py": "9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf", + "construction/promo/LOCAL-PINS-p6n-k4.json": "a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f", + "construction/promo/make_recipe.py": "ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122", + "construction/promo/PROMO-RECIPE-p6n-k4.json": "fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90", + "construction/promo/promo_controls.py": "786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372", + "construction/promo/reproduce_promo.py": "f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026", + "construction/REBUILD-CHECKS.json": "1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91", + "construction/reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92", + "construction/slots/RECIPE-SLOTS-k8.json": "0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b", + "construction/slots/SLOT-PINS-k8.json": "55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2", + "construction/slots/verify_slots.py": "bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be", + "construction/sw4/build_sw4.py": "9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66", + "construction/sw4/LOCAL-PINS-sw4-P6k4.json": "3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327", + "construction/sw4/NOTES.md": "3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446", + "construction/sw4/reproduce_sw4.py": "3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac", + "construction/sw4/SW4-RECIPE-P6k4.json": "fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa", + "construction/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "CONSTRUCTION.md": "29ff356276e2f5d09071d1e1a22d3364d7c4bba0c9c0d01f448baadb75721f51", + "data/FRONTIER.json": "56bed9070d5f0b7585d7b7fd62984696dbc5158e5187663030920a57e1cbfab2", + "data/OWNERS.json.gz": "d275e6c0ef501fdc9cb6fba883d65666d10391ad35ed5e66b2f4d7689ec75d4b", + "data/PLAN.json": "e104d46a767dd0e223902d6f965aca2485d303499c019cc0d29e1b270da68e5f", + "data/PREPARATION.json": "1d576298bfafc509992113fdd58b5482655a88e321cbfafe9386588eb6fbb6e9", + "data/SPEC-T8.json": "4823f39d0d89ab148bbbbe42bdbc2a27755d921424041887c8614d0bacb293f9", + "data/SPEC.json": "8d7f0576d4aeca183c6e3b23a56897ff668cd0b943b75886fb1ea922091bd3e1", + "data/T8/OWNERS.json.gz": "93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045", + "data/T8/PLAN.json": "0214279f43204f9334aef8c3f6f691e8b81a715628c45fc8341c21a19d26d4a5", + "data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "evidence/ADMISSION-CONTROLS.json": "a433ec1f6bb62f2190e9abb70af8066b5264296d3c8c72de0bd7dcd034486f7d", + "evidence/ASSEMBLY.json": "1b2779a637ec4b6e52df11000f58beef5298be7e20ccdb1cc2260c3688d547eb", + "evidence/audit/ASYNC-AUDIT.json": "a63a9378f1d3c901317334822ac8e286ef29ebcf50337cf6386214b9b5e651b8", + "evidence/audit/GLOBAL-PREFIX.json": "1c4ca6a87f565623e1ea4a477cb18c25fee4e312053b79d0c2762010ae7dd157", + "evidence/audit/IDLE-REMAINDER-FRAMES.json": "c5f200950fda60416c657903d85ffbf270013de23165a6a401a40b9b7f2a6e10", + "evidence/audit/OWNERS-AND-PROFILE.json": "1fa9c9acbd54f9bec183a070f99eb9803395d35e847ab6e37d2489b2d41d2e40", + "evidence/audit/PREFIX-AND-INVOICE.json": "17749a944bbeb7980a56aeb8ad929d522480869f4c9760e6103a606a58b5b034", + "evidence/AUDIT-LOCAL-COMPOSITE.json": "7a4910a23f38e2f1f2b4cac8fe39ef535cf19a5c8a0f339ba8391749f38862f3", + "evidence/BINDING.json": "3c8b3f3c7aae4b604ff6cd6f40bd9e6b6ca0507624892b5266e86523ec5fa5f6", + "evidence/BIT-SUPPLIER-CONTROLS.json": "23d0ef02c2bf4daeba56aba2660a7284f84a9bacacfc63d5b6b987717cca1e13", + "evidence/CENTER-COMPATIBILITY.json": "c66c7da1099ac8618381e2a7cb48b09b43ccf8d125ff124e129aba8ddb922cf3", + "evidence/ENDS7-X54-T16-STANDALONE.json": "bf2c45dc34ceb397f7a6a7df709100fbdfc14b31592a3ee01ea889cab4c11e17", + "evidence/global/ACTUAL-SIGMAS.json.gz": "86a34c81c1c85e9fcf57ce7dec1c29669377c1d3fb734de9f9c6e031a8f5ef1d", + "evidence/global/GLOBAL-TEMPLATE.json.gz": "e845c64551b8db5782dd2544e2feeb8245e6f66766ef824e5668938fca5133ca", + "evidence/global/HOSTED.json": "24c04f2da0ee6334d806f71e461e2d6ce46aa363be98f06dd256199d840bad8e", + "evidence/global/IDLE-REMAINDER-FRAMES.json.gz": "9caadc6bd699825eca1458b51d3fcc78d31463b53d7b6001477e24f082a10350", + "evidence/INDEPENDENT-T16.json": "1a1631047d00b241f2869473894621a6f364f317454f3548055db19919570def", + "evidence/INTERMEDIATE-ENDS7-T16-PROVENANCE.json": "43bf3476c9d5583ccd2567b0278365244e259eeeeda7cf155e4276eb58f99263", + "evidence/layers/LOCAL-AUDIT-LAYERED.json": "a596d7262374a023ae079e0da41d20189bd3ca4594101e5e6f402ce5799df9ff", + "evidence/leaver/CELL-MUTANTS-LV.json": "308975b8288cb9c853ee6b69e68b25e6f3727d259dccfb7509042f103bb03220", + "evidence/leaver/FRAME-CONTROLS-LV-k8.json": "9629e499a7f01f2db1e41873344a1476708f41698a0b145888ee569e580a31dd", + "evidence/local/CANONICAL-WORD.json.gz": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "evidence/local/CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "evidence/local/CLIFFORD-REVIEW.json": "1f71895a8511e536684feac71ab250941634cdfb59141ac0b831c358c021ef7f", + "evidence/local/FULL-WORD.json.gz": "34d708aa590b16b54094fbaaa804fe2ea00690e0d863525c85db7b0213861c4b", + "evidence/local/INDEPENDENT-LOCAL-REPLAY.json": "0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2", + "evidence/local/LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "evidence/local/LOCAL-PROGRAMS.json.gz": "94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac", + "evidence/local/RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108", + "evidence/local/SCALAR-FRAME-AUDIT.json": "512a8d52cf28fd249eceb4557428327430e81b2b236ca2b60812b5ba5a544513", + "evidence/local/WRAPPER-CHECKS.json": "4b5ebb62b23dae93fc1fe9174c8145654a8452f4b07645c285aa41c961adb1a3", + "evidence/LOCAL-STAGES.json": "8627a02402bae24dbb79c3e7945b5ae2fc3c71384530fdba8b011424ac004de5", + "evidence/REPLAY.json": "0cabd7661da0d91e9141f6d4bfe8530e4c29cb30add3c67aecb71e2b5ffb9120", + "evidence/STAGES.json": "f12cc135a68a12555db77345c18c14f61c459b5a7eee5c0b42ecd91248318751", + "hosting/audit_frozen.py": "a8d9c7c894cb44453aea93b33141559824f6c3ff81a85a6d066f4a10a2757659", + "hosting/expand_owners.py": "0f826377881d0c9405f90d9f5feac857c7c7cf8aef5bcf22d326bc274f038a70", + "hosting/frozen/FROZEN-AUDIT.json": "df6c7181a097900ee9d37db17bd25436a570f21caaa0cc2108712907ab02904b", + "hosting/frozen/MAJORIZATION.json.gz": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "hosting/frozen/MANIFEST.json": "9df028adfa5120c60d2c78bfab06822cf4e6ed55502816b7d6dec19c1a2e4967", + "hosting/frozen/MATCHING-RECEIPT.json": "e1af2ac2c6e2457646d52dd693fb961f6279e10fe50eae9873f2ed149b6735b2", + "hosting/frozen/OWNERS.json.gz": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "hosting/frozen/REPRODUCTION.json": "8354f63148621c5fcf09cd16b496dedd677d813f83974e1f341ce38a1fffec81", + "hosting/frozen/SEED-OWNERS.json.gz": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "hosting/frozen/SEED-RECEIPT.json": "aecfef753379106f5289f31251584c642e2cf7e4fa2d0886bb4ef9e922f8d9ba", + "hosting/frozen/SEED-REPRODUCTION.json": "4f6d49a85f43c98c816877d783470ca717be2349caceb991bf756eedece1b194", + "hosting/PROOF.md": "45bb3de8a10298a4cf5a278c3343be22a7d2e735be93a4e9454f24df7275faf0", + "hosting/README.md": "004bcdf6c78bd0316f0606d9e636511f94e1e80cbd79cce1a7e3bc55076d9bf1", + "hosting/reproduce.py": "7551004d8d15cebcecc6793ebd17385830390935ccd1a8957f1c5472bce6ec82", + "hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "independent/CENTRE-GUARD-REVIEW.md": "7b82518d7ddf042d6e71174bc286311fa72127e0dc6dc9e500025fcf7abbf897", + "independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json": "9fb5265c4d2ddf3d615e46600954c79cd1a42481500a0973a5695fcb9f2558c9", + "independent/GAUGE44-GLOBAL-GUARD-REVIEW.json": "631107a9a9acb02441ce80298f815e0c624f811b0d58c6fd78f8dc58d564bb5b", + "independent/GAUGE44-INDEPENDENT-PRICE.json": "6e222b252f3453446d0e41b08f00a9bf9449ce3588b6ddc00c9accc1c00e7683", + "independent/price_profile.py": "d2f548ad6b99f64a8ca5fbaf822a89560bb99359957ce3420b497f6a46fc0acf", + "independent/README.md": "25668a62d8c91f6860f8412cf2fc750ba41bf1085dad3709ad5067c7956eac89", + "independent/review_guards.py": "b83164d6c0122a055b3281f3381b305683a875760a2d727dd0188bb2aa59d67d", + "inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "LOCAL-VALIDATION.json": "f81fbd98eb608b8119f03f89a5692bcd610845fc97022337931586d8582b706e", + "NOTICE.md": "7a8d17b04da1e6c9d0ec217fb5bda72faa09d9a21695128722dd1e2827870fcf", + "PROOF-NOTE-BARCH.md": "c24f211b09358b25d6cf47dd18e4bbd8bcf4ecf279e6f1c6c90613cfa230818d", + "PROOF-NOTE-BIT.md": "dd771adb12f6f0bef0e2931c28b21b243b04d5f512370cbad1207275c342aaf7", + "PROOF-NOTE-FRAMES-X4.md": "39c50420ebb6e8813706a49b2cf759f277c4afac9f6780fc0a7ac6a5fb86e036", + "PROOF-NOTE-LAYERS.md": "92bb85b056803770882afa916277c5b49a7027159c113a106e7b2b33e57c097f", + "PROOF-NOTE-LEAVER.md": "e4f9482ef551d6d4300d8ed8bb7c34dc9327fbcfa30a502bf3476b78468e60c3", + "PROOF-NOTE-NOTRI.md": "774d1ff7b77844990da7bc1feff7f9ffff8b1f4f9b03232a620f1f9a29935414", + "PROOF-NOTE-P6N.md": "cef8fad3d6644b4376ed15c4c5c46c68324009ab8f42d10bfa2da4b505b2c26d", + "PROOF-NOTE-PROMO.md": "c170e5196d3081f86ac377c6fe614ca17f6281972837580275ce5af41cbc64ae", + "PROOF-NOTE-SW4.md": "d7bb225f1a7f9fd363e819a67e92a5fe14c0942f6c3616d73609cc48042daf3d", + "README.md": "4da874b54a0ba5618e420d0849620fe518e14cade39b26ffba1b3914e97085f9", + "RESULT.json": "e84145a136dce8483034ed536795568dfc15ede3e44f5e07ff86620eec4dbd98", + "SOURCES.json": "15e351f394964140a7e8841df44185e7cdc5bdeef3042cb9d1302e10b39c1d49", + "t16/build_parent.py": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "t16/indep16.py": "1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7", + "t16/lift16.py": "072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689", + "t16/NOTICE.md": "902370e6bfcd39dbea2ece474f15fccbcce3b8e966b2b94066bd03e5174591b5", + "UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "verify_t16.py": "050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/NOTICE.md new file mode 100644 index 0000000000..30d0c8cd3c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/NOTICE.md @@ -0,0 +1,24 @@ +# Gauge44 attribution and scope + +New contributions by icekylinx, with OpenAI GPT-6 Astra assistance. +Local review and packaging used OpenAI Codex. Apache-2.0 applies; +the license is included. The full original PR635 notice is preserved as +UPSTREAM-NOTICE.md and construction/UPSTREAM-NOTICE.md. + +The new contribution is the changed source-branch gauge and retired-row +completion, source-carried coordinate totals, exact 44-cold-end realization, +and explicit all72 whole-family assignment using concave capacity matching +with integer majorization certificates. The center-carrier generalization +retains the exact ordered common frames and complete native local contract. +Independent local, price, interface and owner fixed-point checks are included. + +The construction retains the credited PR635 K-triangle and porting machinery, +earlier joint-prefix/HPE/frame ancestry and icekylinx's prior factory work. +#645 used the same cited PR543 bit supplier as PR635. This package (research/gauge44-leaver8) cites the merged PR589 bit supplier instead, with a derived rank-mass deficit (PROOF-NOTE-BIT.md); #645's retained PR543-based evidence is historical. It builds #645's word without K-triangles (PartialK) and stacks earlier community jp8 layers on it (G44Stack), adds the p6n ends (NoTriReopen), entrance promotions (BlockInvert) a read-set exchange (BRoute), chafreaky's #741 frames, JointXF's joint exchange, NewBArch's triangle-hybrid B rewrite and LeaverSAT's eight k8 leaver cells (with LeaverSAT2's frame re-optimisation); see README. All-size, realization, +hosting, precision/tape, analytic-transfer and bit H1-H5 assumptions remain +conditional. No upstream license, credit, source pin or AI disclosure is +replaced by this notice. + +PR641 and PR642 were checked as concurrent reported frontier comparisons. +Their endpoints and owner maps are not included here. See CONSTRUCTION.md, +hosting/PROOF.md, independent/ and README.md for the exact contribution scope. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-BARCH.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-BARCH.md new file mode 100644 index 0000000000..8cea5a6846 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-BARCH.md @@ -0,0 +1,43 @@ +# PROOF-NOTE-BARCH: width-neutral triangle-hybrid B-delivery rewrite (U8) + +Construction by NewBArch (`construction/barch/`, builder `build_tri.py`, controls `run_controls.py`, recipe +`RECIPE-U8.json`). Driver: `construction/barch/reproduce_barch.py`, chained after `construction/jx`. + +## The move +On research/gauge44-frames-x's X4 word (`1e1d99ba…`), eight disjoint slots are rewritten. In each slot X an entering +copy E donates into a halves-copy X: 231 (E 450), 230 (E 452), 232 (E 454), 236 (E 456), 226 (E 451), 228 (E 453), 62 (E 455), 238 (E 457). That way, so that one target +read takes X + H in a single gate. A holder pair (for example 496/484) carries the value. Each holder is restored by a +low-end tail at its frame (early cleanup) and a FULL-cleanup restore. Entrance pre-reads keep the entering helper's +start value away from every target. + +The recipe is explicit, with every index referring to the X4 word: +- 40 B deletions; +- 40 B insertions, each with its frame; +- 32 explicit re-chosen B frames; +- 8 early-cleanup tails; +- 8 FULL-cleanup restores. + +The A section and X4's tail frames are untouched. The width is unchanged at 3778. The profile goes +{1:2548, 2:338, 3:430, 4:194, 5:56, 8:8} → {1:2548, 2:338, 3:446, 4:162, 5:72, 8:8}, a delta of {3:+16, 4:−32, 5:+16}. +The eight slots are additive (8 × 3.925e-8 ideal = 3.140e-7). Output word `090fd574…`. U8 contains B0's four slots +(231, 230, 226, 228) plus 232, 236, 62 and 238. + +## Checks rerun on every rebuild +- `build_tri.py` (standard library only) checks the base sha (`1e1d99ba…`) and the result sha (`090fd574…`). +- `run_controls.py` produces 38 outcomes, all required. The control set is pinned in `LOCAL-PINS-barch-U8.json`. + - C0 identity reproduces the input. + - The recipe word PASSes #645's independent `audit_local.py`. + - Four mutants must each FAIL `audit_local` with a pinned message, both globally and for each of the eight slots + (NAME@X): + - drop_restore: the holder is not restored, giving "all-column endpoint failure"; + - restore_full: the low-end restore is moved into the FULL cleanup, giving "all-column endpoint failure"; + - drop_preread: the inserted entrance pre-reads are omitted, giving "nonzero entrance response"; + - donation_after: the donation is placed after the target read, giving "nonzero entrance response". +- The per-end layer-end controls (`../layers_p6n/layer_end_controls.py`) reject 95. +- PR635's native chain runs, with the canonical word, local programs and Clifford recipes pinned. + +## Strict +NewBArch's strict replay: the #741 map (`G44Pack/m741`, byte-identical OWNERS) is rebound to the U8 locals with +`rewidth.py` and admitted with this package's own code (NEWWORD `admit645.py` on research/gauge44-frames-x's tree). +The result is κ 0.001661948695165034, +3.1404e-7 over research/gauge44-frames-x. The four-slot subset B0 strict-passes +at 0.001661791659578416 and the single slot V1 at 0.001661673902364948. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-BIT.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-BIT.md new file mode 100644 index 0000000000..da06360da0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-BIT.md @@ -0,0 +1,112 @@ +# PROOF-NOTE-BIT: citing the PR589 bit supplier with a derived rank-mass deficit (gauge44) + +This note is BitCap's `PROOF-NOTE-BIT.md` from `complex-571-cold14-k492-bit589`, adapted to the gauge44 package. It +covers the only verifier change relative to #645's package (`research/gauge44-global`): the bit supplier changes from +PR543 to PR589. The complex side is #645's construction, unchanged: supplier word, recipes and every complex check in +`code/assemble.py`. The only complex-side change is the repacked owner map (`data/PLAN.json`, `data/OWNERS.json.gz`), +with expected values re-derived in `data/SPEC.json`. + +## Changed sites + +The changes are in `code/assemble.py`, plus one new stage in `verify_global.py` and a new file +`code/bit_supplier_controls.py`. The independent (non-verifier) `independent/price_profile.py` is ported to PR589 as well. Every other `.py` file equals #645's. + +| # | site | before (#645) | after | +|---|---|---|---| +| S1 | bit input | `inputs/PR543-EXPECTED.json` from the multicold source, blob pin `b61d8598…` | `inputs/PR589-EXPECTED.json`, shipped in this package, blob pin `e293ddc5…`, through `load_bit` | +| S2 | bit deficit | literal `9984` | `bit_deficit(word, live)` = T(2Kv − L·cst), with L = 9, T = 32, K = (L−1)/2 = 4 | +| S3 | profile binding | (none) | Σ r·n of the bit profile = `bit.rank_mass`; moment width `BIT_M = 1 + 7L` asserted = 64 | +| S4 | pipeline binding | (none) | the record's `nine.pipeline` names the nine-stage template with 32 replicas | +| S5 | citation / receipt | input hash names the PR543 file | `bit_supplier` cites PR589 (head `a5afc8c6`, merged as `b3eb785a`, path `research/e8-bit-p111-tuned/tune/EXPECTED.json`) and records v = 111, cst = 63, COPY ranks [7×9] and the derived deficit 10272 | +| S6 | `verify_global.py` | (none) | stage `bit-supplier-controls` runs `code/bit_supplier_controls.py`; it requires status `PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS`, exactly 12 rejected controls and derived deficit 10272 | + +The shipped `inputs/PR589-EXPECTED.json` has git blob `e293ddc557742637f9f679f083a1a282d87b1b13`, which equals +`origin/main:research/e8-bit-p111-tuned/tune/EXPECTED.json`. + +## Why the derived deficit is correct + +**The identity.** The rank-mass identity of #545 and #555 is M·live − mass = T(2Kv − L·cst). Its source is +#555's README, "Rank-mass identity", and `code/adapt9p.py`, whose audit carries `DEFICIT=T*(2*K*V-L*CST)`. + +**The parameters.** The bit word has v live ports and decoder constant cst, the sum of the nine retained totals' COPY +ranks. The nine-stage chain is #463/#510 with 32 replicas, so L = 9, T = 32, K = 4 and M = 1 + 7L = 64. The live data +wires number 2KvT. + +**The constraints checked.** The verifier asserts all of: +1. cst = Σ copy_ranks, with exactly `retained_totals` = 9 entries, each in (0, 8]. +2. live = 2KvT. For #589: 2·4·111·32 = 28416. +3. Σ r·n over the priced profile = the record's `rank_mass` = 1808352. +4. M·live − Σ r·n = T(2Kv − L·cst). For #589: 64·28416 − 1808352 = 10272 = 32·(888 − 567). + +Check (4) is #645's `check_moment` guard, unchanged. So v, cst, the profile and live must all agree. + +**PR543 consistency.** The same formula reproduces #645's constant: PR543 has live = 30720, so v = 120; its nine +totals have COPY rank 8, so cst = 72; 32·(960 − 648) = 9984. + +**The deficit does not raise c.** `check_moment` uses the deficit only as an equality guard. The moment engines +compute from (profile, m = 64, live, z) and never read it. The bit value c is established only by the unchanged +acceptance tests at the same exact endpoints, with the bit bad-residue surcharge retained: accept at c and reject at +c + 10⁻²⁴, by both engines. + +## Effect on the outer chain (differs from the k492 package) + +In the k492 package the complex side bound under either supplier, so κ did not move. Here it does. With the +gm3 map the complex side certifies b = 0.001654663299688920102557, with research/gauge44-bit589's dz1 map +b = 0.00165526410310589140991, and with research/gauge44-bit589b's L1g4 map b = 0.001655496738330440231813. PR543's c = 0.001653826988146798944268 is +below b, so under PR543 the bit side would bind. BitCap's table gives the PR543 bit-side κ cap as +0.001651096360425895, which is exactly the κ of `research/gauge44-repack`. PR589's c = 0.001733427039589844234749 +exceeds b, so the complex side binds again (`binding = complex` in `ASSEMBLY.json`): κ = 0.001651929911890057 for gm3 +(conservative 0.001651929909011672) κ = 0.001652528731617094 for dz1 (conservative 0.001652528728737236), and +κ = 0.001652760598550299 for L1g4 (conservative 0.001652760595670246). +Bit589Reviewer recomputed both suppliers with the outer engine and confirmed this. The gain over gauge44-repack therefore depends on this change and on the +assumptions below. + +## Negative controls (all must be rejected; the verifier requires exactly these 12) + +Each control runs the real `assemble()` on the fresh owner/invoice receipts with one input mutated. The strict run's +`BIT-SUPPLIER-CONTROLS.json` lists all 12 as rejected. + +| control | site | rejected at | +|---|---|---| +| `revert_hardcoded_9984` | S2 | `check_moment` deficit guard (10272 ≠ 9984) | +| `ports_112` | S2 | `bit_deficit`: live ≠ 2KvT | +| `decoder_constant_64_copy_ranks_unchanged` | S2 | `bit_deficit`: cst ≠ Σ COPY ranks | +| `decoder_constant_64_with_one_copy_rank_8` (derives exactly 9984) | S2 | `check_moment` deficit guard | +| `eight_retained_totals` | S2 | `bit_deficit`: totals count ≠ 9 | +| `live_minus_one` | S2 | `bit_deficit`: live ≠ 2KvT | +| `profile_rank_mass_plus_one` | S2/S3 | `check_moment` deficit guard | +| `profile_rank_mass_receipt_mismatch` | S3 | profile mass ≠ `rank_mass` | +| `bit_lower_next_grid` | endpoint | `check_moment` reject-side moment test | +| `not_nine_stage_record` | S4 | pipeline binding | +| `tampered_bytes_next_grid` | S1 | blob pin | +| `pr543_file_under_pr589_pin` | S1 | blob pin | + +Bit589Reviewer re-traced all 12 rejection sites on the gauge44 word (b589gm3), and they match the table: `code/assemble.py` L191 (`revert_hardcoded_9984`, `decoder_constant_64_with_one_copy_rank_8`, `profile_rank_mass_plus_one`), L48 (`ports_112`, `live_minus_one`), L47 (`decoder_constant_64_copy_ranks_unchanged`, `eight_retained_totals`), L201 (`profile_rank_mass_receipt_mismatch`), L197 (`bit_lower_next_grid`), L179 (`not_nine_stage_record`) and L39 (both blob controls). dz1 and L1g4 run the same code. + +The ported `independent/price_profile.py` re-derives the deficit separately (`pr589_deficit`) and checks the same blob pin. Its regenerated receipt on this package's PLAN gives the same κ. + +## Inherited assumptions + +**PR merge status (`gh pr view`, 2026-10-13):** #589 MERGED 2026-10-12T17:00:38Z. #555 was merged 2026-10-12. #645 +is OPEN. Main's review replayed #589 freshly as "supplier-only headroom", and main's *selected* composition still +cites #543. + +**Unmerged assumptions:** +1. **#645 itself (open):** the gauge44 factory, its construction steps and all of its retained interfaces and notes. + These are unchanged here. +2. **This verifier change (S1–S6):** under review (Bit589Reviewer). The PR589 record replaces PR543 as an *input of + the gauge44 assembly*, a composition main has not selected. + +**Assumptions carried by #555/#589 (merged, stated there as review points, not theorems):** +3. #545's punctured unit: a 111-port unit with decoder constant 63 is an admissible bit supplier on the same hypotheses + as v = 120. +4. #510's nine-stage chain as re-parameterised for v ≤ 120 by #555's `code/adapt9p.py`, including the rank-mass + identity used in S2. +5. #543's interleaved scalar-interface lemma (H1–H5) for phase-B source rewrites. This is not new: #645 already + inherits it through PR543. +6. #589's two A-section transports. +7. The same bit bad-residue surcharge model as PR543 (`surcharge_model = {'complex': False, 'bit': True}`). + +## Result + +The bit-supplier change is the same as in research/gauge44-bit589 and gauge44-bit589b: the code is byte-identical and was signed by Bit589Reviewer. For this package (k8 leaver word db2c7cfb, K8c8 map), the complex side certifies b = 0.001674185476674086429846 and binds under PR589. Under PR543 the bit side would cap κ at 0.001651096360425895. κ is given in the README and `RESULT.json`. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-FRAMES-X4.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-FRAMES-X4.md new file mode 100644 index 0000000000..a456a8127b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-FRAMES-X4.md @@ -0,0 +1,58 @@ +# PROOF-NOTE-FRAMES-X4: chafreaky's #741 frames and JointXF's joint exchange (X4) + +Two construction steps on top of research/gauge44-promo-p6k4sw's SW4 word P6k4sw4 (`d232183f…`). + +## 1. #741's eight B frames (`construction/frames/`) +The eight B-gate frame raises are by **chafreaky**, [#741](https://github.com/CrocSwap/integer-mult-bounds/pull/741) +(`research/complex-sw4-frame8`, commit e516b146). `FRAME-RECIPE-sw4.json` is byte-identical to #741's +`data/FRAME-RECIPE.json` (a2c7ca4d…). CompetitorMine ported #741's builder and controls; only package paths are adapted. +The step applies the frames with BlockInvert's `build_promotion.apply` and checks: +- the scalar program of A, cut, B, precondition and cleanup is unchanged; +- start and end frames are unchanged; +- the profile, the widths and the output word `e7804702…` are pinned; +- 3 pin controls are rejected; +- #741's 10 focused native controls are rejected (8 frames emptied, a changed read coefficient, paid-profile tampering); +- the per-end layer-end controls reject 95; +- the native chain matches its pins. + +The rebuilt locals equal G44Pack's F741 locals except the `seconds` field in CLIFFORD-REVIEW. +This step reproduces #741's word. The final word is built by step 2, which contains these frames. + +## 2. Joint exchange X4 (`construction/jx/`, JointXF) +There are four disjoint instances of BRoute's sw4 read-set exchange rule. Each one exchanges *two* copy pairs that +share targets: (448, 472), (458, 592), (470, 604) and (482, 614), with face registers 235, 267, 58, 427, 26, 443, 18 +and 50. #741's eight frames sit on top. The 16 moved reads keep their original stored dim-6 frames: they are +monotone-repaired rather than refitted to the plain join. The recipe `RECIPE-X4.json` is explicit: +- 32 replaced gates, 16 deleted gates and 16 inserted gates, each with its old gate asserted; +- #741's 8 frames, listed with their source; +- 16 explicit frames at the moved reads, each asserted equal to the recomputed frame. + +The builder `build_jx.py` uses only the standard library. It checks: +- target frames lie inside u_t^⊥; +- tails and ends; +- exactness of the whole B segment's rational linear map against the input (a Fraction replay); +- the recomputed paid profile and the output sha `1e1d99ba…`. + +Effect against #741's word: the profile goes {1:2556, 2:334, 3:430, 4:194, 5:56, 8:8} → {1:2548, 2:338, 3:430, +4:194, 5:56, 8:8}. The width inventory is unchanged, and each instance gives +1.0798e-7 at ideal, exactly additive. + +**Controls**, each pinned in the recipe and rerun by `reproduce_jx.py`: + +| control | outcome | +|---|---| +| C0 identity | returns the input `d232183f` | +| C1 #741 only | `e7804702`, #741's word (ties step 1 to step 2) | +| M1 one pair (448) with frames retained | `5fb6fb2e`, neutral (profile = #741) | +| N1 pre-read dropped | rejected: exactness rows [132, 135] | +| N2 pre-read with wrong sign | rejected: exactness rows [132, 135] | +| N3 plain-join refit of the moved reads | `7241cd59`, strictly worse | +| N4 a raise made dim-7 at B855 | rejected: cap at (1302, 174) | + +N3 and M1 are pinned-outcome controls (a specific different word), not rejections. They show the gain needs both the +target-sharing pair and the retained frames. + +**Other checks (JointXF):** +- `audit_local` PASS; +- native chain PASS; +- FrameCoal's global frame optimiser reaches the same profile on this move set, so X4 is frame-optimal for these moves; +- SW4Extend found the same word independently. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-LAYERS.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-LAYERS.md new file mode 100644 index 0000000000..c4b4e85b6a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-LAYERS.md @@ -0,0 +1,129 @@ +# PROOF-NOTE-LAYERS: earlier jp8 layers, here stacked on the no-triangle gauge44 word + +> In this package the layers sit on the no-triangle word (R = 504), not on #645's 492-helper word. The mapping, the +> NP chain (regroup `864ff4a1` → swap `beb3579f` → layered `a9de804f`), the per-layer status on this base and the +> checks are in `PROOF-NOTE-NOTRI.md` ("Layers on this word"). The text below is research/gauge44-layered's note. It +> describes the same layers and controls on the 492-helper word; its word shas, helper numbers, counts and result +> table refer to that word. + + +This note covers the second change of research/gauge44-layered relative to research/gauge44-bit589. The first change, +the PR589 bit supplier, is covered unchanged by `PROOF-NOTE-BIT.md`. Here the community jp8 layers that were reviewed +on the k492 words (#629/#637/#641 lineage) are re-applied to #645's gauge44 provider word. The layers, their +construction code and their recipes were all reviewed earlier, on k492 words. This note says what carries over +unchanged, what is re-checked on the gauge44 word, and what is new. Sources: G44Stack's report (porting and checks on +gauge44); PivotReviewer's report (sections 1-4, Addenda 3-5); H4aReviewer's report (Addenda 7-8); JP8Ends' report. + +## What the layered word is + +`construction/layers/reproduce_layers.py` builds the layered word from a fresh `construction/reproduce.py --until word` +output. Each step is checked exactly: + +1. **Pivot swaps** (`build_pivot_swap.py`, PR641's constructor, LF sha256 `8e8bced8…`, the file PivotReviewer signed for + st2s4). It reads `PIVOT-SWAP-S6.json` and runs on #645's `regroup/FULL-WORD`. There are six pivot-role swaps: 488→560, + 489→561, 500→572, 501→573 (s4) and 513→537, 525→549 (s6). The `swaps` list is identical, gate for gate, to S6Ship's + s6/s6j3 recipe (`k492-jp8-pivot_swap.json`); only `input_content_sha256` differs, because the base word is #645's + regroup word. The constructor replays the zero response exactly, keeps the profile and width multiset unchanged, and + rejects its 30 negative controls. +2. **HPE.** PR635's `build_hpe.apply` applies the inherited jp8 hyperplane-end changes (`HYPERPLANE-END-S6.json`). Its + LF sha256 `23c9d7ce…` equals the k492 jp8 hyperplane_end recipe committed in s6j3 and earlier. +3. **cold44, exactly.** #645's `build_gauge_cold44.py` runs on the swapped HPE word. Its 44 rank-four cold ends, premix + and low tails must equal the unswapped (pinned) cold44 construction; only the FULL inverse differs. Consequently the + swaps touch no factory block. +4. **Layers.** PR635's unchanged `build_cold_end.apply(HPE, COLD-LAYERS-RECIPE)` applies the cold44 recipe plus: + - 8 entering ends: 560/561/572/573 at U24 (s4) and 597/599/537/549 at U30 (x30: #629's E1 pair, which #645 dropped, + plus s6's two ends); + - 10 factored dim-8 cold ends: p123 (310/506, 311/504, 516/327) and q4 (579, 592, 589, 518). + The output word's sha256 is pinned (`0be48b1d…`), as are its local profile `{1:2542, 2:414, 3:434, 4:154, 5:56, + 8:8}` and width inventory `{4:52, 5:48, 7:42, 8:116, 9:234}`. The recipe's `refactored_cleanup` meta lists the 8 + entering ends in `entering_low_frame_ended_helpers` (LayerReviewer's fix). That meta is copied into the word, which + is why the pinned word sha moved from `b25f0ed9…` to `0be48b1d…`; gates, frames and report are unchanged. +5. **Layer-end controls** (`layer_end_controls.py`, LayerReviewer's adaptation of PR635's `cold_end_controls.py` + d966e29a). These are raw-word negative controls on the layered word, judged by PR635's unchanged + `hpe_audit_and_transport.py`. Each mutant must be rejected at its pinned reason. The adaptation has three parts: the + lower→FULL mutant is pinned at "cleanup on non-FULL end", where gauge44 rejects it; entering ends come from the + recipe meta; and the premix-gate controls are skipped for entering ends that have no premix gate. `reproduce_layers.py` + requires exactly 59 rejections. +6. **Native locals.** PR635's native audit and transport, ledgers, local replay (the 192-bit payload bound), wrappers and + phases all pass. The result is the `--local` that `verify_global.py` consumes. + +G44Stack's run of this driver (`rlayers2`, all steps exit 0, 59 controls rejected) reproduces `locs/pq/local`, the +local G44Pack's strict runs used. Every SPEC-pinned artifact is byte-identical: CANONICAL-WORD, LOCAL-PROGRAMS, +LOCAL-CHECKS, INDEPENDENT-LOCAL-REPLAY, CLIFFORD-RECIPES, RESIDUAL-ADAPTERS and WRAPPER-CHECKS. CLIFFORD-REVIEW differs +only in a seconds field; its semantic hash is what SPEC pins. The two unpinned files that embed the word, +FULL-WORD and SCALAR-FRAME-AUDIT, differ because of the meta. + +## Per-layer status on gauge44 (G44Stack, ideal Δκ at ×72) + +| layer | prior review (k492 words) | on gauge44 | per-call Δ profile | ideal Δκ | +|---|---|---|---|---| +| pivot swaps (6) | PivotReviewer §1-2 (s4), Addenda 4-5 (s6): exact; omitting any rewritten gate is rejected; cost-neutral | all 6 recipe `before` gates match the regroup word; 30 controls rejected; cold44 rebuilds the same 44 ends | neutral | 0 | +| s4 ends 560/561/572/573 @U24 | PivotReviewer §3: (N) exact for ([24], U24) and its canonical pair; climbs paid | positive | {1:+8, 2:−4, 3:+4, 4:−4}, w −4 | +7.0e-8 | +| x30: E1 597/599 + 537/549 @U30 | #629 (E1); PivotReviewer Addenda 4-5 (537/549 end monotonically at the E1 hyperplane, whose (N) is exact) | positive | {1:+10, 2:−6, 3:+2, 4:−2}, w −4 | +2.0e-7 | +| p123 | H4aReviewer Addendum 7: 0 bad rows, dyadic, exact in all 3 orientations; (N) for (0,1039)-(0,1041); Δ recomputed | positive | {1:+6, 2:+12, 3:−12}, w −6 | +2.0e-8 | +| q4 (after p123) | H4aReviewer Addendum 8 (n_q4): exact; (N) for the 310/311/327 frames and 518's (0,1042); independent of u4 | positive | {1:+4, 2:+8, 3:−8}, w −4 | +1.4e-8 | +| **stack T_pq** | — | built and audited | {1:+28, 2:+10, 3:−14, 4:−6}, w 3794→3776 | **+3.08e-7** | + +These layers were left out because they are negative or dead on gauge44: u4 (−1.2e-6), the 249 end (−3.2e-7), a joint +p123+q4 (−2.6e-7, worse than sequential), and #627's dim-7 ends 581/590 (no dyadic basis). j3 is dead: its st2 partner +403 is one of #645's 44 ends, and cold44's block premix uses up the row space. + +**Payload.** H4aReviewer's Addendum 8 correction found that the k492 word n_q4 broke the 192-bit local payload bound +(backward prefix 280 bits). On gauge44 the layered word passes PR635's `hpe_audit_local.py` local-replay stage +(`prefix < 2**192`), both in G44Stack's `localchain.py` and as step 5 of `reproduce_layers.py`. So the q4 layer here +does not repeat that failure. + +## Verifier changes (spot widths) + +A swapped-out pivot p becomes an ordinary cold helper, and its width goes from 8 to 9. #645's global code checks the +spot helpers' widths as all 8, so the five global files gain the spot-width rule PivotReviewer signed as SOUND for +S4Ship (Addendum 3), ported to gauge44: + +- `code/witness.py`: `spot_widths(v)` gives 9 at a spot helper h with 2v+h among the swapped-out pivots and 8 + elsewhere. The swapped-out pivots are read from the recipe that SPEC key `pivot_swap` names (path and sha256; the + sha256 is asserted). Without `pivot_swap` the tuple is all 8, the same as #645. +- `code/bind_providers_portable.py`, `code/audit_allcold.py`, `code/assemble.py`: the `all(... == 8)` spot checks become + tuple equality with `spot_widths()`, which pins every spot width exactly. +- `code/assembly_controls.py`: the `cold_swap` control picks a swap partner whose width differs, so the mutant can + never be the identity. + +Here the spot helpers 264 and 276 (pivots 488 and 500) expect width 9 and the other spot helpers expect 8. The k492 +spot-width review (PivotReviewer Addendum 3) covered the same rule on k492 code. Its gauge44 port is part of this +package's review (LayerReviewer). + +## Controls and what is not re-run + +- The pivot-swap constructor's 30 controls run inside `reproduce_layers.py` (step 1). +- `verify_global.py`'s strict controls are unchanged, including the 12 bit-supplier controls and #645's admission + controls. They run on the layered locals. +- Layer-end controls: 59 raw-word mutants, all rejected at pinned reasons, run as step 5 of `reproduce_layers.py` + (see above). They cover the cold low-frame ends, the refactored cleanup, every entering end (its lower-frame gate, + profile pin and hyperplane, plus its premix gate where it has one) and each distinct dim-8 frame. LayerReviewer ran + them on the layered word (59 rejected). The k492 version (d966e29a) rejected 103-112 on the p123/q4 words; the + k492-only primitives (absorptions, factored accumulators, target writes) are absent from this word. +- #645's independent audit `independent/audit_local.py` on the layered word: PASS, with 204 entering helpers, 96 low ends, + 54 cold ends and 716 columns. Its receipt is `evidence/layers/LOCAL-AUDIT-LAYERED.json` (word `0be48b1d…`, run with + `--main`). The README's clean-clone command reruns it; only `elapsed_seconds` varies. The other `independent/` + receipts are #645's own. +- The prior (N), exactness and pricing checks for each layer were done on k492 words. On gauge44 they are covered by + the native chain (native audit, local replay, wrappers, phases) on the layered word, together with the pinned + profile and width inventory. + +## Inherited assumptions + +These are the same as `PROOF-NOTE-BIT.md` (#645 open; PR589 citation; #545/#555/#589 review points; H1-H5). In +addition: + +1. **(N) for the entering-end pairs outside #599's three Lean-covered pairs** (U24, U30, the dim-8 frames). As on + k492, these are covered by the tool check (clifford_exact / `nchk.py`) and by the native wrappers, not by a Lean + proof (PivotReviewer §3). +2. **The reviews of PR641's pivot-swap constructor and PR635's `build_cold_end.apply` / `build_hpe.apply`**, which this + package uses unchanged. + +## Result + +| | gauge44-bit589b (L1g4 map) | this package (layered, LN5c map) | +|---|---|---| +| κ | 0.001652760598550299 | 0.00165395497190225 | +| per-call width | 3794 | 3776 | +| local profile | #645's {1:2514, 2:404, 3:448, 4:160, 5:56, 8:8} | {1:2542, 2:414, 3:434, 4:154, 5:56, 8:8} | diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-LEAVER.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-LEAVER.md new file mode 100644 index 0000000000..b34a289c48 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-LEAVER.md @@ -0,0 +1,82 @@ +# PROOF-NOTE-LEAVER: no-helper mutable-leaver all-K cells, re-stacked layers, hybrids and a frame re-optimisation (k8) + +Construction: LeaverSAT (cells, layer re-indexing, frozen recipes) and LeaverSAT2 (frame re-optimisation). +Drivers: `construction/leaver/reproduce_leaver.py` (cell word) and `construction/leaver/reproduce_leaver_chain.py` +(everything after it). Reviews: PromoReviewer (leaver chain, k8 cells and frames, k8 clean rebuild), SW4Reviewer (hybrid structure), Q6Reviewer +(`layer_end_controls_leaver.py` v2, `LEC-REASON-PINS-k8.json`), LecReviewer (`LEC-REASON-PINS-STACK-k8.json`). + +## 1. The cell (set model, LeaverSAT) +In #781's all-K cell, a pair p with sign e replaces three face events and three packet copies. Direct delivery uses +15 reads y_i += c x_j. LeaverSAT's 21-gate circuit uses the six leaver sources x_j (face-event operands with no later +reads, restored at FULL by the inherited cleanup) as mutable intermediates. It has 3 leaver gates x_k += c x_m, +3 target gates y_a += c y_b (inverted at frame zero in the precondition and scatter, #781's recipe) and 15 reads. +Coefficients are rescaled exactly per cell, C_ij = r_i c_j. The driver re-derives the scaled gates from the unit +circuit and checks the clean map Y_i = Σ_j C_ij X_j in exact rationals. + +Native legality needs one relabelling: the plain circuit fails the native audit, because a y += y source carries +port-stage entering-helper dirt. Each cell is therefore relabelled by S6 so that y–y sources avoid targets carrying +entering dirt at that time. + +**Set k8:** all eight cells (01±, 23±, 45±, 67±), R = 480. The cores are in `construction/leaver/cells-k8/` (documentary; +the driver re-derives every scaled gate from `CODED-CELLS-k8.json`). The regroup word is `00aeefe0…` and the cell word is +cold44 `58e14a02…`. Its pairing ranks are pinned to [0,0,0,4,4,4,4,4,4,4,4,0,0,0] in `cold44x.py` and checked again in +the driver. + +## 2. Re-stacked layers (LeaverSAT; signed builders unchanged, recipes re-indexed) +| step | recipe (data) | word | +|---|---|---| +| pivot swaps (6), mapped through the leaver helper map | `PIVOT-SWAP-k8.json` | `377ab10c…` | +| HPE, greedy (22) | `HPE-RECIPE-k8.json` | `598543fa…` | +| cold44, exact (same ends, premix and tails as the unswapped cell word) | — | — | +| NP layers (s4, x30, b6, q4) | `COLD-LAYERS-RECIPE-NP-k8` | `2c1740f6…` | +| p6n ends | `COLD-LAYERS-RECIPE-P6N-k8` | `25c40614…` | +| promotions (16, minimal) | `PROMO-RECIPE-k8.json` | `84d4da2e…` | +| joint exchange (re-indexed X4) | `RECIPE-X4-k8.json` | `84d4da2e…` (identity) | +| U8-style hybrids ×6 (NewBArch's builder; instances 62, 226, 228, 230, 231, 232) | `RECIPE-U8-k8.json` | `c836d892…` | +| frame re-optimisation (exact global frame optimum, gopt2; 137 B and 2 T frames) | `FRAME-RECIPE-LV-k8.json` | **`db2c7cfb…`** | + +Three steps don't apply to k8. The sw4 exchanges use copy helpers 461, 581, 591 and 603, which the cells drop. Of +#741's eight frames, none survives. All four X4 exchange groups use dropped helpers, so the joint exchange is the +identity (0 raises, 0 frames); it is still run, with its three remaining controls (C0, C1, N3) at their pins. + +The two cold-layer recipes are LeaverSAT's frozen k8 recipes (`fea82fb8…`, `76aedf23…` as .gz) with one key added, +`input_content_sha256` = the swapped HPE word `598543fa…`, as in the k5 package. Removing the key gives the frozen +recipe content exactly. + +## 3. Controls rerun on every rebuild +- **Cell stage:** the exact clean-map check; native audit, ledgers, local replay, wrappers and phases on the cell word. +- **Pivot swaps:** the swap constructor's 30 controls. +- **Promotions:** BlockInvert's `promo_controls.py`, 11 mutants rejected at pinned sites. +- **Joint exchange:** the 3 `RECIPE-X4-k8` controls reproduce their pinned outcomes. +- **Hybrids:** `run_controls.py` gives 30 outcomes, all required. These are C0, the recipe word passing audit_local, + and 4 mutants, each run both globally and per instance. +- **Frames:** `build_frames_lv.py`'s 3 pin controls. LeaverSAT2's 6 frame-recipe mutants are rejected by the builder; + that receipt was reviewed by PromoReviewer and is not rerun. +- **Layer-end controls:** `layer_end_controls_leaver.py` v2 (`4ba676f1…`), Q6Reviewer-signed. It is the signed + per-end controls with per-word reason re-pins and **declared not-applicable sites**. A vacuous mutant site is never + skipped silently: the pins file must declare it, the declared set must equal the detected set, an identity is proven by + sha equality of the mutated and honest words, and a same-class substitute mutant is built and must be rejected at the + class's pinned reason. The count stays 95 on every word. The controls run on all five words: + - p6n, promoted, jx and hybrid words, with `LEC-REASON-PINS-STACK-k8.json`: `extra_end` only. h0 273's first + premixed partner 282 is already cold-ended at h0's frame, so the mutant is the identity (sha-proven per word); the + substitute is partner 281, cold-ended at h0's frame. + - the re-framed final word, with `LEC-REASON-PINS-k8.json`: `extra_end` as above, and `other_hp:554`. The frame + re-optimisation lowers entering end 554's tail frame to dimension 5, and no helper_final frame has dimension 5, so + the 'end at another hyperplane' mutant cannot be built; the substitute moves 554's end to another dim-8 frame and + must be rejected at the cone pre-check. This replaces the interim skip of research/gauge44-leaver. + No reason re-pins are needed on the k8 words. The receipts (`COLD-END-CONTROLS.json`) carry the not-applicable list; + the counts, the not-applicable sites with their reasons and the sha256 of each pins file (`LEC-REASON-PINS-STACK-k8.json` + d87ed7b5…, signed by LecReviewer; `LEC-REASON-PINS-k8.json` b07279e4…, signed by Q6Reviewer) are pinned in + `CHAIN-PINS-k8.json`. +- **Native chain on the final word:** the canonical word, local programs and Clifford recipes are pinned in + `CHAIN-PINS-k8.json`, which also pins every count above. + +## 4. Cell mutants (evidence, not rerun) +LeaverSAT2's `CELL-MUTANTS-LV.json` (in `evidence/leaver/`) records PromoReviewer's cell mutants M1–M6, generalised +to every cell sign. All 42 are rejected by both audit_local and the native audit, on single-cell builds. + +## 5. Strict +The owner map is G44Pack3's K8c8: its pattern-flow LNS on the R = 480 k8 word. Admitted on this package's own code, +with SPEC `width_spot_helpers` [258,270,282,294] and `pivot_swap` → `construction/leaver/PIVOT-SWAP-k8.json` (NEWWORD +discovery, freeze, strict), it gives κ 0.001671387264390146. That is +7.154e-6 over research/gauge44-leaver (k5, +0.001664233607446043). diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-NOTRI.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-NOTRI.md new file mode 100644 index 0000000000..54bd84e01d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-NOTRI.md @@ -0,0 +1,53 @@ +# PROOF-NOTE-NOTRI: #645's gauge44 word without K-triangles (R = 504) + +Construction by PartialK; review by NotriReviewer (scratch/NotriReviewer/FINAL-REPORT.md). Drivers: +`construction/notri/reproduce_notri.py` (this word) and `construction/layers_np/reproduce_np.py` (layers on it). + +## Why the triangles were the blocker +- In #645's gauge44, a K-block has I = 6 low registers with rank C = 4, so L = 2. Only the 2-row priority completion + fits there. The (p,−) triangle reads climb copies loc17/19/21 and source loc2. +- Without the triangles, I = 8. With the 2-row completion, rank C stays 6 (L = 2), which is why the plain removal sweep + restored nothing. With the 6-row completion (`PRIO6.json`, the list blocks 3–10 already use), rank C = 4, so L = 4, + the cap. All 14 blocks then pair at rank 4: 56 rank-four cold ends, R = 504, width 3818, profile + {1:2506, 2:336, 3:472, 4:184, 5:56, 8:8}, rank mass 5674. + +## Constructor changes (NotriReviewer §1) +- **`cgx.py`** is #645's `construct_gauge_xcentre.py`, parameterised by XPARAM. On this path the only change that takes + effect is the K-block priority: `PRIO[c]` is placed in front of the inherited rows. The prepended rows equal the + shared 6-row list of blocks 3–10 (all 8 lists identical). Every completion assert is kept (`qr_rank(M)==4`, + `len(M)==8`, the exact block-total rows). An empty TRI schedule is an input #645 already supports (`NH = 504 − 3·0`). + `HELPER-MAP` is the identity on 728. The `exch`, `COPYL` and `hyb` branches are inert here (defaults, empty, not + reached). +- **`port_stage_x.py`** is PR635's `build_port_stage.py`. The helper map only has to be injective rather than onto; + with no triangles it is onto again. +- **`cold44x.py`** is #645's `build_gauge_cold44.py`. Its per-block pin `r == len(L) == (2 if K-block else 4)` is + replaced by `r == len(L)` together with the explicit per-block pin `PAIRING_RANKS` (set by the driver to [4]*14, + and to #645's pattern in `--control-g44`). Helpers outside the 224+16b ranges join their blocks (EXTRAH, empty here). + Every other assert is kept (U, nonlocal premix, `rank(Qmat) == NB`). +- **Control.** `reproduce_notri.py --control-g44` runs the same scripts with #645's four triangles and no XPARAM. It + reproduces #645's gauge44 word `78c7aada…` exactly, with ranks [2,2,2,4,4,4,4,4,4,4,4,2,2,2]. + +## Exactness and locals (NotriReviewer §2) +- Replay: 0 bad rows over 27,932 gates, all dyadic; forward, inverse and adjoint are exact. None of the 6,448 + compensation additions reads an ended helper, and the precondition never touches one. +- 0 FULL-remainder gates touch an ended helper; E⊂U holds for every entering end. The delta against gauge44 + ({1:−8, 2:−68, 3:+24, 4:+24}, width +24) matches the reported profiles. +- (N): all 17 pairs pass (14 cold dim-4 pairs with 4 helpers each, plus 3 dim-8 entering pairs). +- `audit_local.py --main`: PASS. Payload: prefix bits 66 forward and 72 backward, against 192. +- Native locals: 25 controls rejected, Lemma A on 22 frames, 17 wrapper mutants rejected. The rebuilt locals equal + the strict locals (`PartialK/runs/none_p6/local`): byte-identical except CLIFFORD-REVIEW and SCALAR-FRAME-AUDIT, + which differ only in their `seconds` field. + +## Layers on this word (G44Stack) +The layers are research/gauge44-layered's (see `PROOF-NOTE-LAYERS.md`), mapped to the 504 numbering: +- the 6 pivot swaps 494→566, 495→567, 506→578, 507→579, 519→543, 531→555, which are neutral (same 46 HPE helpers, + same 56 cold ends); +- s4 566/567/578/579 at U24; +- x30 608/610/543/555 at U30; +- BlockCombine's b6; +- q4. + +p123 is negative on this base and dropped; j3 is dead (L = 0 at U24 and U30). The chain is regroup `864ff4a1` → swap +`beb3579f` → layered `a9de804f`, with profile {1:2534, 2:346, 3:458, 4:178, 5:56, 8:8} and width 3800. On that word +the signed `layer_end_controls.py` rejects 59/59 and `audit_local.py` passes with 216 entering helpers, 120 low ends, +66 cold ends and 728 columns. NotriReviewer independently reproduced a9de804f from the packaged recipes. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-P6N.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-P6N.md new file mode 100644 index 0000000000..bef9ad2de0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-P6N.md @@ -0,0 +1,34 @@ +# PROOF-NOTE-P6N: six b-type dim-8 cold ends on the layered no-triangle word (p6n) + +Construction by NoTriReopen. Driver: `construction/layers_p6n/reproduce_p6n.py`. Review: Q6Reviewer. + +## What p6n adds +On research/gauge44-notri-layered's word NP (`a9de804f…`), p123's lane is rebuilt as three factored dim-8 pairs +(`P6N-SPEC.json`): +- [512, 513] at U = (256,128,66,34,16,8,6,1). The old pair [310,512] split a rank-3 end; [512,513] replaces it; +- [311, 510] at U = (256,128,72,40,24,4,2,1); +- [522, 327] at U = (256,128,66,34,18,10,6,1). + +They are built with the same premix-only factored construction as p123/q4/b6 (JP8Ends' stackJ/stackE, CarrierBypass +pattern; PR635's unchanged `build_cold_end.apply`). The cold-layer recipe `COLD-LAYERS-RECIPE-P6N.json.gz` is NP's +recipe plus these six ends; its meta lists 72 cold ends and the 8 entering ends. Applied to NP's swapped HPE word, it +gives p6n `34b683fa…`: +- profile {1:2540, 2:358, 3:446, 4:178, 5:56, 8:8}; +- widths {4:64, 5:48, 7:54, 8:122, 9:216}; +- width 3794 (NP 3800); +- Δ per call {1:+6, 2:+12, 3:−12}, w −6, every end b-type. + +## Checks +- **NoTriReopen:** native chain including phases PASS; audit_local PASS; 95/95 layer-end controls rejected. +- **Q6Reviewer:** + - exact; + - (N) passes on all 21 pairs; + - payload 55/72 bits, against 192; + - the per-end control variant `layer_end_controls.py` (fc58c569…, which Q6Reviewer signed for research/gauge44-pq6) rejects 95/95; + - 165 further mutants on the six ends are all rejected. + The LayerReviewer-signed `../layers/layer_end_controls.py` controls one end per dim-8 frame family, so it would not + control each new end. This package therefore uses the per-end variant for p6n and for the promoted word built on it. +- **Rebuild:** `reproduce_p6n.py` pins the input NP word, the output sha, profile and widths, and 95 controls. + +## Remaining capacity (NoTriReopen) +After p6n, the only residual cold capacity on the word is 2 a-type units, and every end there prices about −9e-7. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-PROMO.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-PROMO.md new file mode 100644 index 0000000000..8233bbd6b8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-PROMO.md @@ -0,0 +1,46 @@ +# PROOF-NOTE-PROMO: entrance promotions E4 → E5 on the p6n word + +Construction by BlockInvert (`construction/promo/`); driver `construction/promo/reproduce_promo.py`. + +## What a promotion is +An entering helper h starts at an entrance frame E (its `start_extra`) and climbs to its final frame. Promotion +enlarges E to E′ ⊃ E (here dim 4 → dim 5). That removes one paid climb from h's chain (width −1 per helper) at the +cost of re-choosing the frames of the gates on h's early chain. It is the time-reverse dual of end deepening. Two +conditions make it legal: +1. **Zero target response for h's dirt.** This condition does not depend on E, so it is inherited unchanged from the + input word. +2. **Monotone frames.** Every gate's frame must contain its registers' current frames. +Only frame annotations and start frames change. The scalar program (every gate's registers and coefficients) is +untouched, so the endpoint, every cone and the compensation are those of the input word. + +## The recipe (`PROMO-RECIPE-p6n-k4.json`, data only, minimal) +- Input: the p6n word `34b683fa…` (`PROOF-NOTE-P6N.md`), pinned. +- `entrances`: the 16 entering helpers 627, 629–631, 635, 637–639, 651, 653–655, 659 and 661–663 (four E4 kernel groups) go E4 → E5. +- `gate_frames`: 48 frame re-choices, the promotion's own entry-gate raises (12 per group); each records the old frame, + which must equal the input's exactly. This is BlockInvert's **minimal** recipe: the deterministic rule + E′ = E + ⟨smallest x⟩ on each group's entry gates (PromoReviewer). Unlike research/gauge44-promo's k3 recipe, it + carries none of the 72 price-neutral CP-SAT re-choices. +- `expected`: output `0390ec65…`, profile {1:2572, 2:326, 3:430, 4:194, 5:56, 8:8}, widths + {4:80, 5:32, 7:54, 8:122, 9:216} (width 3778). Against p6n the delta is {1:+32, 2:−32, 3:−16, 4:+16}, width −16. + +## Checks rerun on every rebuild (`reproduce_promo.py`) +- `build_promotion.py`: input pin; each old frame matches; each new entrance strictly contains the old one; the + profile and widths are recomputed from the chains, including target end climbs; output pins. +- `promo_controls.py`: the honest word passes #645's independent `audit_local.py` (exact forward and dual endpoint + frames, entrances, cones). For p6n-k4, 11 mutants are rejected at pinned sites (the count is pinned in `LOCAL-PINS-p6n-k4.json`): + - entrance outside the first gate frame; + - raised gate missing, once per promoted group; + - entrance reverted, so the profile does not match; + - ungrouped promotion; + - a recipe gate whose old frame is wrong; + - a recipe entry that is not a promotion; + - a tampered input word (the constructor's own `__main__` must refuse it at the input pin); + - a scalar tamper on a raised gate. +- The per-end layer-end controls (`../layers_p6n/layer_end_controls.py`, Q6Reviewer-signed): 95 rejected. +- PR635's native chain: transport audit (all columns, native frames), ledgers, local replay (192-bit payload), + wrappers and phases, with the canonical word, local programs and Clifford recipes pinned (`LOCAL-PINS-p6n-k4.json`). + +## Search (not run by the rebuild) +`make_recipe.py` writes the recipe from BlockInvert's CP-SAT solution (`prom.py` with `exactframe2.py`, using MinCutSel's +chain model). These promotions were priced negative before (MinCutSel #3, under a fixed-window arc-flow packer). Under +near-ideal packing (G44Pack's dissolve/gapmerge) they price positive; the strict replay confirms the gain. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-SW4.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-SW4.md new file mode 100644 index 0000000000..a064cc54cc --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/PROOF-NOTE-SW4.md @@ -0,0 +1,44 @@ +# PROOF-NOTE-SW4: read-set exchange on four entering-copy pairs + +Construction by BRoute (`construction/sw4/`, with the author's notes in `construction/sw4/NOTES.md`). Driver: +`construction/sw4/reproduce_sw4.py`. + +## The move +In P6k4 (`0390ec65…`; research/gauge44-promo-p6sw applied the same exchange to P6k3 `a38bb414…`), each of four entering packet copies h is written first as h = E_h + r: copy gate add(h, r, 1) +from a non-target face register r, with E_h being h's entering content. The pairs are (h, r) = +(461, 25), (581, 89), (591, 415), (603, 431). For each pair the read sets of h and r are exchanged in phase B: +- every post-copy target read add(t, h, c) becomes add(t, r, c), and t's entrance pre-read add(t, h, −c) (taken + while h = E_h) is deleted; +- every target read add(t, r, c) becomes add(t, h, c), with a pre-read add(t, h, −c) inserted after h's last existing + pre-read and before h's copy gate. + +Since h − r = E_h after the copy, each target's value is unchanged at the end of B. The builder checks this for every +register mod p (p = 2147483629). Moved and inserted gates take the plain join of their operands' current frames. +Every other B gate and every early-cleanup tail keeps span(old frame + current operand frames). Targets must stay +inside u_t^⊥, and tails and ends must contain the current frame. start_extra, helper_final, cleanup and the helper +numbering are unchanged. + +## Effect +Output `d232183f…`. Width 3778 is unchanged. The profile goes from {1:2572, 2:326, 3:430, 4:194, 5:56, 8:8} to +{1:2548, 2:342, 3:438, 4:186, 5:56, 8:8}, a delta of {1:−24, 2:+16, 3:+8, 4:−8}, the same as on P6k3. The four +exchanges are additive. The fourth promotion group (659, 661–663; gates B420–431) commutes exactly with the exchange: +there is no index or register overlap, and SW4Reviewer checked that applying the k3→k4 frame and start differences +to f35a852b gives d232183f. Ideal κ +3.271e-7 over P6k4. + +## Checks rerun on every rebuild +- `build_sw4.py` (standard library only): the input sha pin; the 16 explicit moves of `SW4-RECIPE-P6k4.json`; B-end + state exactness mod p; frame caps, tails and ends; the output sha, profile and W. It also runs 4 controls, all of + which must hold, each at the exact site pinned in the recipe's `rejection_expected` (all three keys N1, N2 and N3 are required): + - C0: the identity recipe reproduces the input B and early_cleanup byte for byte; + - N1: h2r without deleting the pre-read is rejected by exactness, with changed B-end rows exactly {168, 171}; + - N2: a partial exchange (one read only) is rejected by the frame cap, first at ('cap', B1192, register 169), 10 violations; + - N3: an inserted pre-read with the wrong sign is rejected by exactness, with changed rows exactly {129, 130, 169, 170}. +- The per-end layer-end controls (`../layers_p6n/layer_end_controls.py`, Q6Reviewer-signed): 95 rejected. +- PR635's native chain, with the canonical word, local programs and Clifford recipes pinned (`LOCAL-PINS-sw4-P6k4.json`). + The native transport audit re-checks every column and native frame of the exchanged word. + +## Scope of the search (BRoute) +The search was exhaustive within the single-pair family only. NP has 107 copy pairs, and 54 of them have movable +reads. Over those, every nonempty subset of one pair's movable reads gives 602 candidates: 564 are frame-illegal, and +the 38 legal ones are all full single-pair exchanges, of which exactly these 4 are positive. Cross-pair combinations +of partial moves were not enumerated. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/README.md new file mode 100644 index 0000000000..912eaedee5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/README.md @@ -0,0 +1,43 @@ +# Eight-slot k8 word with rank-seven helper ends and T16 packing + +Conditional κ = **0.001673006105142741**, conservative κ = **0.00167300610229067600**. The upstream conditional assumptions and PR589 bit supplier remain unchanged. + +This package adds the eighth triangle-hybrid slot **X54/E589** after the rank-seven ends of helpers574/575, then binds the strongest checked ends7-X54-E7G4d4 T16 owner map. The final local word is NOT the seven-slot baseline and NOT the ends7-only intermediate word. + +## Binding artifacts + +- Final FULL-WORD content SHA256: `9fca1fc6f1fa0a9469fc10e3b90dc2c9802bf391b45f84d52ce5e7f6706c9674`. +- Canonical content SHA256: `4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838`. +- R480, residual width3728; widths {4:56,5:32,7:32,8:120,9:240}. +- Local paid profile {1:2406,2:432,3:426,4:138,5:84,8:8}. +- Frozen T16 owners SHA256: `d275e6c0ef501fdc9cb6fba883d65666d10391ad35ed5e66b2f4d7689ec75d4b`. +- Frozen T16 PLAN SHA256: `d64d0314634805d9a919a0251935a91f84146281cbc9a97d8de6a2b62d3cabe7`. +- Frozen T8 κ =0.001671160051689084; its data is in `data/T8` and `data/SPEC-T8.json`. + +## Complete construction verification + +First obtain a completed seven-slot k8 replay using `research/gauge44-slots/construction/slots/verify_slots.py` (or its exact sparse-phase equivalent). The completed baseline's word, locals and full successful step list are checked against `construction/slots/SLOT-PINS-k8.json`; no unchecked word is accepted. + +```sh +python -B research/gauge44-ends7-x54-t16/construction/ends7/verify_ends7.py \ + --main . --pr635 /tmp/gauge44-pr635 --baseline /tmp/slots \ + --work /tmp/ends7-x54 --phase-jobs 2 +``` + +This single command rebuilds and verifies the entire changed construction: + +1. Hash-check the completed seven-slot baseline. +2. Apply `construction/ends7/RECIPE-ENDS7-k8.json` using its literal old-value and output pins. Run the existing ends7 controls on THIS intermediate word: six rejections by both independent and native auditors. +3. Apply `construction/ends7/x54/RECIPE-X54-ends7.json` with the unchanged triangle builder. It has five B deletes and five inserts, one FULL holder335 restoration and one rank-eight early holder367 restoration. Both restorations at FULL are NOT legal. +4. Run all ten X54 identity/recipe/global/per-X controls with pinned exact-audit rejection reasons. +5. Rebuild native canonical/program locals, ledgers, replay, wrappers and exact phases against the composite pins in `x54/X54-PINS.json`. +6. Check the final word with the independent exact forward/dual endpoint/frame/entrance/cone auditor and PR1049's complete leaver-premise check. +7. Run fresh strict T8 AND strict T16, including actual owner-window reconstruction, exact invoice, assembly and independent T16 negative controls. + +Final marker: **PASS_RANK7_ENDS_AND_X54_ON_CHECKED_SLOT_BASELINE**. An ends7-only marker is not sufficient for this package. `verify_t16.py` remains available to replay T16 alone on already checked COMPOSITE locals; it does not substitute for the construction command. + +## Mechanism and attribution + +Rank-seven ends transfer PR1030's codimension-one end-frame mechanism to helpers574/575. X54 is an additional S-source instance of PR987's triangle-hybrid mechanism, missed by a search filter that admitted only packet sources with register index≥224. Its width-neutral profile change is {3:+2,4:-4,5:+2}. Donations feed holders367 and335 before their target reads. The eighth slot gives a strict same-map gain of about3.977e-8, not merely an estimated gain. The ends7-X54-E7G4d4 map was produced by exact T16 pattern-flow packing; every frozen role is checked against actual windows. + +The local mechanism, width supply and frozen owner assignment are independently checked. Prefix397 agrees between independent and invoice checks; physical row coefficient16469. Apache-2.0 notices, vendored source provenance and conditional proof scope remain in the existing notice/proof files. Other proof notes describe inherited intermediate stages, not alternative final locals. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/RESULT.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/RESULT.json new file mode 100644 index 0000000000..b59a7802f7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/RESULT.json @@ -0,0 +1,109 @@ +{ + "status": "PASS_GAUGE44_T16_STRICT_GLOBAL_REPLAY", + "kappa": "1673006105142741/1000000000000000000", + "kappa_decimal": "0.001673006105142741", + "conservative_kappa_decimal": "0.001673006102290676", + "complex_lower": "837904872538656759753/500000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "complex_profile": { + "1": 348673, + "2": 62209, + "3": 61704, + "4": 19872, + "5": 12096, + "7": 3, + "8": 1152, + "48": 4875 + }, + "idle_remainder_profile": { + "1": 2209, + "2": 1, + "3": 360, + "7": 3, + "48": 4875 + }, + "complete_invocations": 144, + "roles": 69120, + "prefix_bits": 397, + "charged_prefix_bits": 512, + "physical_row_coefficient": 16469, + "retained_row_coefficient": 20161, + "actual_73_axis_charts": 10239, + "controls": { + "admission": 69, + "bit_supplier": 12, + "independent_t16": 6, + "controller_mutations": 15 + }, + "t8_kappa": "417790012922271/250000000000000000", + "spec_sha256": "8d7f0576d4aeca183c6e3b23a56897ff668cd0b943b75886fb1ea922091bd3e1", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.157, + "exit_code": 0, + "log_sha256": "3aea2a4b68e7aaeadd9ffef649be0d25e2dff1535d9a61bffeaf6d92e55ba6a8" + }, + { + "name": "bind8", + "seconds": 0.328, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "lift16", + "seconds": 2.359, + "exit_code": 0, + "log_sha256": "825fdb88a34697946960aaecca810fbe9076a46f4433aa1cdf73373503fc696f" + }, + { + "name": "bind", + "seconds": 0.375, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "emit", + "seconds": 4.594, + "exit_code": 0, + "log_sha256": "182036d062995961dc20ab33d6292f7decb81e6312a5baa264ff7c1a9d34e711" + }, + { + "name": "audit", + "seconds": 19.797, + "exit_code": 0, + "log_sha256": "83610e3360dec64ab51954767e68d6e6fc063e33d0b1a78ba8c646154e48b217" + }, + { + "name": "invoice", + "seconds": 0.969, + "exit_code": 0, + "log_sha256": "1dc7b287373e03726149adfe00de84fb53bf9c93a4bd4c979e7b9fc3b8dad543" + }, + { + "name": "assembly", + "seconds": 0.281, + "exit_code": 0, + "log_sha256": "3b96a0b15292e7a688c0f258f1ebc3c3e12daa88128f2ad72b88f7053c096496" + }, + { + "name": "admission-controls", + "seconds": 0.375, + "exit_code": 0, + "log_sha256": "34527ddfe1e53bec71dc5759eb9a26417be6d4e93e76cbf80575d9bafebd876b" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.515, + "exit_code": 0, + "log_sha256": "c648542cd6dddbb154af7d02a41aaed1025603d9a4ab54f7c249d2b683e22249" + }, + { + "name": "independent-t16", + "seconds": 0.766, + "exit_code": 0, + "log_sha256": "d2c13b333d463a5c2de42078e9c47a89209075e1d1beac24cf3fc1f573f18c05" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, the gauge44-barch U8 local word and all 72 cold helper ends, and explicit all144 whole-owner dispatch with a two-copy remainder trade are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; This is a new T16 composition of the accepted PR799 and PR589 suppliers. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/SOURCES.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/SOURCES.json new file mode 100644 index 0000000000..0ffc164bc7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/SOURCES.json @@ -0,0 +1,37 @@ +{ + "contributor": "icekylinx", + "research_assistance": "OpenAI GPT-6 Astra", + "local_review_and_packaging": "OpenAI Codex", + "original_archive": { + "filename": "integer_mult_round23_gauge44_delta.zip", + "sha256": "40a20a120f51cbed3c9ae4017603be74a9e9332ad4068bd914bf3e81bf8be6b4", + "manifest_sha256": "ffa23eb668ad558ebb5601470fc1997a9fb8cea0e188aa3c5d61318be9000603" + }, + "upstream_main": "17ce0c79b7b51c2634b439ea5a2b754f09909693", + "construction_parent": { + "pr": 635, + "commit": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f" + }, + "bit_supplier_pr": 589, + "packaging_changes": [ + "Omit original run logs; retain their original receipts as historical evidence.", + "Use repository paths and dollar-delimited Markdown mathematics.", + "Add manifest verification, incremental CI and local validation record.", + "Trim trailing whitespace in four Python files; complete ASTs are unchanged. Refresh the corresponding constructor input hash.", + "research/gauge44-bit589: PR589 bit supplier (G44Stack port, Bit589Reviewer SOUND-WITH-FIXES), G44Pack dz1 owner map, re-derived SPEC, LF line endings, regenerated MANIFEST.", + "research/gauge44-leaver: research/gauge44-barch tree plus construction/leaver (k5 cells, chain, frames); G44Pack3 FO_c1 owner map, re-derived SPEC, regenerated independent price receipt, RESULT.json = strict REPLAY, LF, regenerated MANIFEST.", + "research/gauge44-leaver8: research/gauge44-leaver tree with the k8 cell set (all eight cells, R = 480) and its chain recipes (LeaverSAT/LeaverSAT2 pkg_k8), layer_end_controls_leaver v2 with declared not-applicable sites on all five stack words (replacing the final-word interim skip), CHAIN-PINS-k8; G44Pack3 K8c8 owner map, re-derived SPEC, regenerated independent price receipt and local audit, RESULT.json = strict REPLAY, LF, regenerated MANIFEST." + ], + "attribution": "Original notices and licenses retained. See NOTICE.md, UPSTREAM-NOTICE.md and CONSTRUCTION.md.", + "whitespace_only_python_files": [ + "code/audit_allcold.py", + "code/bind_providers_portable.py", + "construction/construct_gauge_xcentre.py", + "independent/audit_local.py" + ], + "historical_bit_supplier_pr": 543, + "bit_supplier_note": "This package cites PR589 (inputs/PR589-EXPECTED.json, git blob e293ddc5\u00e2\u20ac\u00a6). PR543 is the supplier of #645's retained historical evidence (LOCAL-VALIDATION.json, independent/ audit files, hosting/, evidence/). RESULT.json is this package's strict replay.", + "owner_map": "Frozen X54G4_1 T16 map on the rank-seven-end plus X54 word; owners sha256 d275e6c0ef501fdc9cb6fba883d65666d10391ad35ed5e66b2f4d7689ec75d4b; PLAN sha256 e104d46a767dd0e223902d6f965aca2485d303499c019cc0d29e1b270da68e5f; exact strict kappa 0.001673006105142741.", + "composite_construction": "Checked c2b29430 seven-slot k8 baseline, PR1030 rank-seven-end transfer to helpers574/575 (f64e0942), then PR987 triangle mechanism eighth instance X54/E589 (9fca1fc6). Explicit post-ends7 recipe and ten controls in construction/ends7/x54; full native/PR1049 premise/T8/T16 verifier construction/ends7/verify_ends7.py. Inherited construction and original archive metadata below are intermediate provenance, not alternate final providers.", + "construction_changes": "PartialK: no-triangle gauge44 word (R=504, PRIO6, ranks [4]*14); G44Stack: layers on it (pivot swaps, s4, x30, b6, q4); LeaverSAT: no-helper mutable-leaver cells and re-stacked recipes, LeaverSAT2: frame re-optimisation (construction/leaver); NewBArch: triangle-hybrid B rewrite U8 (construction/barch); chafreaky #741: eight B frames (construction/frames, ported by CompetitorMine) and the owner map; JointXF: joint exchange X4 (construction/jx); BRoute: read-set exchange SW4 (construction/sw4); NoTriReopen: p6n ends (construction/layers_p6n); BlockInvert: entrance promotions E4->E5 (construction/promo, minimal recipe p6n-k4); drivers construction/notri/reproduce_notri.py, construction/layers_np/reproduce_np.py, construction/promo/reproduce_promo.py" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/UPSTREAM-NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/UPSTREAM-NOTICE.md @@ -0,0 +1,34 @@ +# Attribution and scope + +Four verified provider types are offered to every call: PR571's prefix word with twelve multi-cut cold kernels (PR568's unchanged constructor), the same word with forty width-five entrance promotions (PR569's unchanged frame constructor) before those kernels, PR575's plain joint-prefix provider, and PR568's eight-cold provider. A window MILP with an exact per-pattern model chooses the dispatch and a literal owner map. PR583's six source-bound kernel frame coalescences (its unchanged constructor and negative controls) are applied to every PR571-prefix provider word (ck and atm3), followed by two further coalescences that each first move one addition past two commuting additions (package code/build_gate_moves.py, extending PR583's constructor); a final hyperplane_end step (package code/build_hpe.py) then runs 46 single-gate cleanups h -= p right after part B at the dim-8 join U of their registers, so 46 width-8 entering helpers per call end at U with width 7; each such gate commutes with every earlier cleanup gate on its registers (for 8 of them the partner's one earlier gate x -= p only reads p), and the reordered program is replayed exactly. A window MILP (exact windows, RINS around an LP vertex) gives the dispatch ck 45 / atm3 21 / jp8 6 and the literal owner map. + +Pinned external sources (unchanged; `verify.py` checks their manifests and every file it uses): +- PR568 (`research/complex-multicold`, commit `71c99ac935a33bb7b59a1b4a7af8725a939b0b90`). +- PR571 (`research/structural-gain`, commit `b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3`). +- PR569 (`research/larger-gain`, commit `897213a855b7fb8a1b8b0e552a2f5c42e6c1b326`). +- PR575 (`research/complex-joint-prefix`, commit `eac6f7e378ab622dac50a2fd4b7ef6eab014de44`). +- PR583 (`research/kernel-frame-coalescing`, commit `89be768f0157f5a3d8e4db69cf1748768605eac9`). + +Provider construction is described as typed steps in `data/SPEC.json` (`build`); `verify.py` runs only allowlisted step types with their paired omission audits and checks every input and output content hash. `code/` holds the spec-driven global admission scripts adapted from PR571's `frontier-composition/global-code/` (OpenAI Codex assisted, Apache-2.0): every expected value is read from `data/SPEC.json` and compared only after independent recomputation. `code/generated_identity.py` and `code/generated_identity_controls.py`, and the decompressed-content artifact identities in the bind, audit, invoice, assembly and phase-timing scripts, are taken unchanged from PR586 by chafreaky (`research/promoted-kernel-coalescing`, commit `4846fee5b06af770e9b3a10c36200f673d656725`, OpenAI Codex assisted, Apache-2.0), including its proof-content and reference/metadata mutation controls; the normalization of descriptive width metadata after frame changes follows the same PR. + +In PR601, the owner map was nominated by a HiGHS window MILP (adapted from PR569's `global/nominate_width7.py`) with lazy cross-time Hall cuts; this package's re-solved map is described below. Neither is an admission dependency. + +DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. (The PR601 package this one starts from states: "Prepared by Claude Code (Anthropic) research agents.") Apache-2.0 applies; LICENSE is included. All notices, licenses, source pins and AI disclosures of the pinned sources and their ancestry are retained in those packages and are not replaced by this notice. All inherited conditional assumptions remain conditional. + +**This package (complex-571-cold14, DreamingOfClouds).** It starts from PR601 (jeremykothe2, `research/complex-571-hpem46`, commit `529ab7dcb59d5ea7a5798e9e06cf5b3aee8a1550`). Everything above is kept unchanged except the following: +- every provider chain (ck, atm3, jp8) gains the typed step `cold_end` (`code/build_cold_end.py`, `code/cold_end_controls.py`; recipes `data/recipes/*-cold_end.json.gz`); +- the generalised native chain and the global admission scripts accept cold helpers that end below FULL (with `0:U` wrappers), a refactored exact cleanup, and check the wrapper order; +- `data/PLAN.json` / `data/OWNERS.json.gz` (dispatch and literal owner map) come from a relocate/swap/ejection-chain/provider-flip annealing search started from PR601's map, refined by an exact pattern-restricted owner model (CP-SAT) with a literal edge-colouring expansion (not an admission dependency); +- `data/SPEC.json` holds the expected values, recorded by a discovery run and then checked by a strict run. + +The cold-end construction (a row-plus-column cone condition for low-frame ends, a rank-0 dirt-spread premix and multi-gate lower-frame cleanup) builds on PR591 / PR592 / PR593 / PR601 (jeremykothe2) and our PR599 (Lean: multi-gate and cold hyperplane-end tails). DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. Build on this at your own risk. + +**This package (complex-571-cold14-b3, jeremykothe2).** It is PR604's `complex-571-cold14` (DreamingOfClouds) with ColdBeyond's second cold end per block (two new `cold_end` A-gate primitives, `PROOF-NOTE.md`), ColdSupply's E1 entering pair and reviewed controls, a free dispatch (jp8 ×60, atm3 ×12) and a literal owner map from an exact per-time-Hall window MIP. All other construction, code, controls and proofs are PR604's and earlier contributors', unchanged. + +**This package (complex-571-cold14-k492).** It is complex-571-cold14-b3 with these changes: +- **K-triangle base words.** The leaver-read K-triangle skeleton atom and its read schedule (`data/TRI-SCHEDULE.json`) are by AtomScout, a Claude Code research agent. `code/construct_k_triangle.py` is PR531's `code/construct_504.py` (icekylinx, OpenAI Codex / GPT assisted, Apache-2.0; pinned source `direct_delivery`) extended with that atom. +- **Ported chains.** The PR604/B3 chains are ported stage by stage onto the K-triangle words by `code/build_port_stage.py` (Port480, a Claude Code research agent). `code/build_frame_regroup.py` extends PR583's `build_frames.py` (chafreaky). +- **Helper count R.** The generalisation of the global scripts to the provider helper count R is by GlobalR (a Claude Code research agent), with AtomReviewer's fixes (PROOF-NOTE-R.md). +- **Owner map.** The owner map, the cold_end recipes on the K-triangle words and the package assembly are by Stack492, Port480 and ColdBeyond (Claude Code research agents). + +Build on this at your own risk. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/assemble.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/assemble.py new file mode 100644 index 0000000000..581dd9cb29 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/assemble.py @@ -0,0 +1,241 @@ +"""Gauge44 complete global admission with the retained native exact-complex moment. + +Prepared with OpenAI Codex assistance. The rational engines and outer +constraints are retained from PR547/PR548 and their preserved ancestry. +The bit operator is the cited unchanged PR589 supplier (PR555's punctured +R439 word, v = 111, decoder constant 63, two A-section transports), shipped +as inputs/PR589-EXPECTED.json and pinned by git blob id. Its rank-mass +deficit is derived from the word's parameters, T(2Kv - L*cst) at nine +stages (PR545/PR555 rank-mass identity), not hard-coded. The complex owner +and invoice inputs must be freshly emitted by the packaged physical replay. +All conservative admission guards and conservative moment/outer witnesses run +before the PR559 native-complex correction. The bit surcharge is retained. +""" +from pathlib import Path +from fractions import Fraction as Q +from decimal import Decimal, localcontext +import argparse,json,hashlib,importlib.util,os,sys +from collections import Counter +assert __debug__, 'Assertions required' +P=Path(sys.argv[1] if __name__=='__main__' else os.environ['GAIN_PR564_SOURCE']).resolve() +read=lambda p:json.loads(p.read_text()) +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +hash_ok=lambda x:isinstance(x,str) and len(x)==64 and all(t in '0123456789abcdef'for t in x) +digest=lambda x:hashlib.sha256(json.dumps(x,separators=(',',':')).encode()).hexdigest() +def load(n): + s=importlib.util.spec_from_file_location(n,P/'engines'/(n+'.py'));m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m +M,B,A=[load(n)for n in ('moment','base_two_moment','outer')] +def dec(x): + with localcontext()as ctx:ctx.prec=70;return str(Decimal(x.numerator)/Decimal(x.denominator)) +from witness import DISPATCH,CALL_ORDER,COUNTS,PIDS,X,DISCOVER,pin,SPOT,spot_widths +# Cited bit supplier: PR589's tune/EXPECTED.json (merged on main as research/e8-bit-p111-tuned/tune/EXPECTED.json). +BIT_PATH=Path(__file__).resolve().parents[1]/'inputs/PR589-EXPECTED.json' +BIT_BLOB='e293ddc557742637f9f679f083a1a282d87b1b13' +# Nine-stage bit template (PR463/PR510 chain, 32 replicas): L stages, T replicas, K=(L-1)//2 pairs, moment width M=1+7L. +BIT_L,BIT_T=9,32;BIT_K=(BIT_L-1)//2;BIT_M=1+7*BIT_L +def git_blob(data):return hashlib.sha1(b'blob '+str(len(data)).encode()+b'\0'+data).hexdigest() +def load_bit(data): + """The pinned supplier record: its full record (word parameters) and its nine-stage price.""" + assert git_blob(data)==BIT_BLOB,'bit supplier blob pin' + return json.loads(data) +def bit_deficit(word,live): + """Rank-mass deficit M*live - mass = T(2Kv - L*cst) of a v-port bit word with decoder constant cst (PR545/PR555). + cst is the sum of the retained totals' COPY ranks and live = 2KvT data wires; both are cross-checked here, and the + caller checks the result against the priced profile, so neither v nor cst is free.""" + v,cst,ranks=word['v'],word['decoder_constant'],word['copy_ranks'] + assert type(v)is int and type(cst)is int and all(type(r)is int and 00;return d + + +def assemble(owner,invoice,owner_sha,invoice_sha): + # These are admission receipts, not optional collections of successful rows. + # Require both orientations and every finite check before pricing anything. + assert owner['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert invoice['status']=='PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE' + assert all(hash_ok(x)for x in (owner_sha,invoice_sha,owner['template_sha256'],owner['controller_audit_sha256'],invoice['parent_template_sha256'])) + checks={'local_primitive_bound','logical','router','literal','mass','precision','tape','row','halving'} + assert set(invoice['strict_checks'])==checks + assert all(invoice['strict_checks'][name] is True for name in checks) + assert set(invoice['providers'])==set(PIDS) + assert invoice['provider_counts']==COUNTS + assert owner['all_live_owners_per_call_distinct'] is True + # R (helpers per provider word) is read from the invoice and must be shared by every provider; n=2v+R. + R=invoice['helpers'];assert type(R) is int and R>0 and all(p['helpers']==R for p in invoice['providers'].values()) + assert owner['owners_per_call']==2*112+R and owner['actual_helper_owner_charts']==owner['hosted_residuals']==144*R==pin('expected.hosted_residuals',owner['hosted_residuals']) + pin('expected.rank_mass',owner['rank_mass']) + pin('expected.actual_73column_sigmas',owner['actual_73column_sigmas']);pin('expected.cross_replica_helper_roles',owner['cross_replica_helper_roles']) + pin('expected.idle_remainders',owner['explicit_idle_remainder_children']) + assert invoice['complete_invocation_sweeps']==invoice['bridge_sweeps']==144 + assert invoice['live']==owner['live'] and invoice['physical']==owner['physical'] + assert invoice['centres']==8 + assert invoice['physical_stock_identity']==dict(data_and_owner_families=14336,local_helpers=R,private_centres=8,coefficient_work=2) + assert sum(invoice['physical_stock_identity'].values())==invoice['physical'] + assert invoice['controller_audit_sha256']==owner['controller_audit_sha256'] + for pid,p in invoice['providers'].items(): + assert set(p['local'])=={'forward','backward'} + assert p['helpers']==R and p['centres']==8 and p['n']==2*112+R and p['v']==112 and p['h']==9 + K='providers.'+pid+'.';pin(K+'entering',p['entering_helpers']);pin(K+'entrance',p['entrance_rank']) + pin(K+'inventory',p['width_inventory']) + assert all(type(w) is int and 0=0 for n in idle.values()) + idle=+idle;assert sum(idle.values())==owner['explicit_idle_remainder_children'] + pin('expected.idle_remainder_profile',{str(r):n for r,n in sorted(idle.items())}) + paid.update(idle) + assert dict(paid)=={int(r):n for r,n in owner['paid_profile'].items()} + assert invoice['compiler']==64*74**3 + assert invoice['local_adapters']==max(p['local_adapters']for p in invoice['providers'].values()) + assert invoice['local_primitive_bound']==max(p['local_primitive_bound']for p in invoice['providers'].values()) + # Recount the retained dedicated-bank envelope independently. Its geometry + # stays fixed, while every local primitive and wrapper comes from the actual + # selected provider/orientation sums above. + parent_live,parent_physical,parent_idle=23408,23922,32256 + parent_banks,rem=divmod(parent_live-2*112*4*16,9);assert rem==0 and parent_physical==parent_live+504+8+2 # two independent bank groups, each with R0=504 helpers; restored private workspace is shared + assert owner['source_idle_children_charged']==parent_idle + bridges,shifts=2*112*144,4*112*16;moves=2*shifts + nonlocal_items=(4*112*16*9+2*112*16*9+2*144*R+parent_idle+9*parent_banks+bridges+shifts+moves+parent_live+parent_physical+invoice['wrapper_elementary_factors_charged']) + outside=8*nonlocal_items+64*73 + pervertex=(invoice['selected_real_component_primitives']+bridges+shifts+moves+parent_live+(144*invoice['local_adapters']+outside)*invoice['compiler']+64*parent_physical) + rebased=pervertex+65*(invoice['physical']-parent_physical)+(invoice['live']-parent_live) + assert invoice['unhosted_pervertex']==pervertex and invoice['hosted_rebased_pervertex']==rebased + used=max(pervertex,rebased) + prior=invoice['retained_prior_overcharge'] + if prior is not None: + assert hash_ok(prior['sha256']) and type(prior['previous_pervertex_allowance']) is int and prior['previous_pervertex_allowance']>0 + assert prior['added_complete_new_pervertex']==pervertex + assert prior['policy']=='Retain old allowance and add entire fresh mixed recount.' + used=max(used,prior['previous_pervertex_allowance']+pervertex) + assert invoice['conservative_pervertex_used']==used + finite=invoice['finite'] + assert 02*48*48) + assert actual_checks==invoice['strict_checks'] and all(actual_checks.values()) + bit_record=load_bit(BIT_PATH.read_bytes()) + bit=bit_record['nine'] + assert 'nine-stage' in bit['pipeline'] and '32 replicas' in bit['pipeline'] + c=Q(bit['bit_lower']) + bit_D=bit_deficit(bit_record['word'],bit['bit']['live']) + H={int(r):n for r,n in owner['paid_profile'].items()};pin('expected.global_profile',owner['paid_profile']) + # Claimed lower endpoints come from the spec; discovery derives them with the same certified moment engine. + # Either way they are verified below (accepted at b, rejected at b+1e-24). + if DISCOVER:b=Q(M.certify(H,73,owner['live'],False)['lower']);conservative_b=Q(M.certify(H,73,owner['live'],True)['lower']) + else:b=Q(X['complex_lower']);conservative_b=Q(X['conservative_complex_lower']) + assert owner['template_sha256']==invoice['template_sha256'] and owner_sha==invoice['owner_audit_sha256'] + pin('expected.live',owner['live']);pin('expected.physical',owner['physical']);assert owner['deficit']==5120 + assert owner['banked_residuals']==0 + def check_moment(side,h,m,W,lower,deficit,bad): + assert m*W-sum(r*n for r,n in h.items())==deficit and m*m>2*max(h)**2 + rows=[] + for z,accept in [(lower,True),(lower+Q(1,10**24),False)]: + l,u=M.moment(h,m,W,z,bad);ll,uu=B.moment(m,W,list(h.items()),z) + if bad: + fl,fu=B.moment(m,W,[(1,32*m*m*sum(h.values()))],z);ll+=fl/10**16;uu+=fu/10**16 + assert (u<1 and uu<1)if accept else(l>1 and ll>1) + rows.append(dict(side=side,surcharge=bad,endpoint=str(z),accept=accept,mercator=[str(l-1),str(u-1)],base_two=[str(ll-1),str(uu-1)])) + return rows + bitH={int(r):n for r,n in bit['profile'].items()} + assert BIT_M==64 and sum(r*n for r,n in bitH.items())==bit['bit']['rank_mass'] + bit_moments=check_moment('bit',bitH,BIT_M,bit['bit']['live'],c,bit_D,True) + conservative_moments=check_moment('conservative_complex',H,73,owner['live'],conservative_b,5120,True) + assert bit['bit']['two_level_coefficient_bits']0 + ceil=lambda x:-(-x.numerator//x.denominator);cut=max(ceil(36/gap**2),ceil(2*(4+512)/gap));assert cut*gap**2>=36 and cut*gap>=2*(4+512) + cuts.append(dict(exponent=str(a),gap=str(gap),cutoff_log2=str(cut)));chain.append(a) + q=chain[-1]*(1-2*eta);margin=(1-eta)*q/(1+q);ticks=margin*10**18;k=Q((ticks.numerator-1)//ticks.denominator,10**18) + bridge={'semantic':{'C0':{'base':2,'exponent':210000},'strict_literal_gap':1},'rows':{'degree_gap':Q(10**6)-Q(51*20161,25)}} + outer=A.assembly(chain[-1],bb,bridge,k,eta=eta,beta=beta);assert len(outer['strict_constraints'])==47 and all(v>0 for v in outer['strict_constraints'].values()) + controls=[] + for name,kk,ee,be in [('next_grid',k+Q(1,10**18),eta,beta),('zero_eta',k,Q(0),beta),('zero_beta',k,eta,Q(0)),('unit_beta',k,eta,Q(1))]: + try:A.assembly(chain[-1],bb,bridge,kk,eta=ee,beta=be) + except AssertionError:controls.append(name) + else:raise AssertionError(name) + return k,cuts,outer,controls + conservative_k,conservative_cuts,conservative_outer,conservative_controls=outer_witness(conservative_b) + pin('expected.conservative_kappa_decimal',dec(conservative_k)) + # Only after every conservative supplier/admission/outer check succeeds is + # the reviewed native exact-complex recurrence selected. Bit charge stays. + native_moments=check_moment('complex',H,73,owner['live'],b,5120,False) + k,cuts,outer,controls=outer_witness(b) + pin('expected.kappa_decimal',dec(k)) + assert M.moment(H,73,owner['live'],b,True)[0]>1 + assert M.moment(bitH,64,bit['bit']['live'],c+Q(1,10**24),False)[1]<1 + model_controls=['native_complex_endpoint_rejected_with_old_surcharge','omitting_bit_surcharge_would_fail_next_endpoint_rejection'] + moments=bit_moments+native_moments + input_hashes={'owner_audit':owner_sha,'fresh_invoice':invoice_sha,'package:inputs/PR589-EXPECTED.json':sha(BIT_PATH)} + input_hashes.update({'engines/'+name+'.py':sha(P/'engines'/(name+'.py'))for name in ('moment','base_two_moment','outer')}) + return dict(status='PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY',kappa=str(k),kappa_decimal=dec(k),complex_lower=str(b),complex_decimal=dec(b),bit_lower=str(c),bit_decimal=dec(c),binding='complex',gain_over_pr635_percent=dec(100*(k/Q(X['gain_baseline_kappa'])-1)),complex_profile=H,provider_counts=invoice['provider_counts'],surcharge_model={'complex':False,'bit':True},conservative_complex_lower=str(conservative_b),conservative_complex_decimal=dec(conservative_b),conservative_kappa=str(conservative_k),conservative_kappa_decimal=dec(conservative_k),conservative_moments=conservative_moments,conservative_bootstrap=conservative_cuts,conservative_outer={n:str(v)for n,v in conservative_outer['strict_constraints'].items()},conservative_controls=conservative_controls,model_controls=model_controls,native_correction_gain=dec(k-conservative_k),template_sha256=owner['template_sha256'],input_sha256=input_hashes,bit_supplier=dict(pr=589,repository='CrocSwap/integer-mult-bounds',commit='a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46',merged_as='b3eb785ac5b4b1ca2beea0f80db078a505626a90',path='research/e8-bit-p111-tuned/tune/EXPECTED.json',git_blob_sha1=BIT_BLOB,word=dict(v=bit_record['word']['v'],decoder_constant=bit_record['word']['decoder_constant'],copy_ranks=bit_record['word']['copy_ranks']),derived_deficit=bit_D,deficit_formula='T(2Kv-L*cst), L=%d T=%d K=%d M=%d'%(BIT_L,BIT_T,BIT_K,BIT_M),replay_scope='Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit.'),moments=moments,bootstrap=cuts,outer={n:str(v)for n,v in outer['strict_constraints'].items()},controls=controls,scope='Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, the gauge44-barch U8 local word and all 72 cold helper ends, and explicit all144 whole-owner dispatch with a two-copy remainder trade are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; This is a new T16 composition of the accepted PR799 and PR589 suppliers. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification.') +if __name__=='__main__': + import sys + package,C,out=map(Path,sys.argv[1:4]);assert package.resolve()==P and not out.exists() + owner_path=C/'audit/OWNERS-AND-PROFILE.json';invoice_path=C/'audit/PREFIX-AND-INVOICE.json' + owner,invoice=read(owner_path),read(invoice_path) + assert owner['template_sha256']==read(C/'hosted/HOSTED.json')['template_sha256'] + r=assemble(owner,invoice,sha(owner_path),sha(invoice_path));out.write_text(json.dumps(r,indent=2)+'\n');print(r['status'],r['kappa_decimal']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/assembly_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/assembly_controls.py new file mode 100644 index 0000000000..096ba9cdfe --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/assembly_controls.py @@ -0,0 +1,260 @@ +"""Independent admission controls for the N-provider native-complex assembly (per-provider controls). + +Prepared with OpenAI Codex assistance; Apache-2.0. Mutation receipts are +rebound to their new owner digest, so unrelated stale hashes cannot conceal +an incomplete width, provider, orientation, paid-profile or finite check. +The fresh physical replay remains a separate prerequisite. +""" +import argparse +import copy +import itertools +import math +import hashlib +import json +import os +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * + +assert __debug__, 'Assertions required' +P = Path(__file__).resolve().parent +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() +digest = lambda x: hashlib.sha256(json.dumps(x, sort_keys=True, separators=(',', ':')).encode()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + from assemble import assemble + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + baseline = assemble(owner, invoice, sha(owner_path), sha(invoice_path)) + + def empty_maps(o, i): + i['strict_checks'] = {} + i['providers'] = {} + + def understated_stock(o, i): + o['physical'] -= 1 + i['physical'] -= 1 + i['physical_stock_identity']['coefficient_work'] -= 1 + + def changed_profile(o, i): + o['paid_profile']['1'] += 2 + o['paid_profile']['2'] -= 1 + + def wrong_orientation(o, i): + c = next(c for c in i['selected_calls'] if c['stage'] == 0) + c['orientation'] = 'backward' + p = i['providers'][c['provider_id']] + z = p['local']['backward'] + c['program_sha256'] = p['program_hashes']['backward'] + for name in ('events', 'macros', 'real_component_primitives', + 'coefficient_work_primitive_count', 'pre_wrappers', 'post_wrappers'): + c[name] = z[name] + i['selected_real_component_primitives'] = sum(c['real_component_primitives'] for c in i['selected_calls']) + i['selected_coefficient_work_primitive_count'] = sum(c['coefficient_work_primitive_count'] for c in i['selected_calls']) + + def understated_prefix(o, i): + for p in i['providers'].values(): + for z in p['local'].values(): + z['prefix_bits'], z['prefix_l1'] = 1, '1' + i['global_prefix_bits'] = 1 + 37 + 144 + 144 + 4 + + def reordered_calls(o, i): + i['selected_calls'][0], i['selected_calls'][1] = i['selected_calls'][1], i['selected_calls'][0] + + def no_cold_wrappers(o, i): + for p in i['providers'].values(): + p['entering_helpers'] -= 4 + for z in p['local'].values():z['pre_wrappers'] = z['post_wrappers'] = p['entering_helpers'] + for c in i['selected_calls']: + c['entering_helpers'] = c['pre_wrappers'] = c['post_wrappers'] = i['providers'][c['provider_id']]['entering_helpers'] + i['wrapper_elementary_factors_charged'] = sum(2*c['pre_wrappers'] for c in i['selected_calls'])*i['factors_per_wrapper'] + + controls = [ + ('empty_certification_maps', empty_maps), + ('failed_invoice_status', lambda o, i: i.__setitem__('status', 'FAIL')), + ('nonboolean_precision_check', lambda o, i: i['strict_checks'].__setitem__('precision', 'true')), + ('wrong_owner_role_count', lambda o, i: o.__setitem__('actual_helper_owner_charts', o['actual_helper_owner_charts'] - 1)), + ('understated_physical_stock', understated_stock), + ('changed_profile_same_rank_mass', changed_profile), + ('insufficient_finite_C0', lambda o, i: i['finite'].__setitem__('required_C0_bits', 210001)), + ('missing_finite_check', lambda o, i: i['strict_checks'].pop('halving')), + ('wrong_reflected_orientation_selfconsistent_totals', wrong_orientation), + ('missing_selected_call', lambda o, i: i['selected_calls'].pop()), + ('wrong_selected_primitive_sum', lambda o, i: i.__setitem__('selected_real_component_primitives', i['selected_real_component_primitives'] - 1)), + ('wrong_selected_coefficient_work_sum', lambda o, i: i.__setitem__('selected_coefficient_work_primitive_count', i['selected_coefficient_work_primitive_count'] - 1)), + ('unpaid_wrapper_factors', lambda o, i: i.__setitem__('wrapper_elementary_factors_charged', i['wrapper_elementary_factors_charged'] - 144)), + ('wrong_global_compiler', lambda o, i: i.__setitem__('compiler', 1)), + ('wrong_global_adapter_maximum', lambda o, i: i.__setitem__('local_adapters', 1)), + ('understated_exact_prefix_and_global_sum', understated_prefix), + ('wrong_global_prefix_sum', lambda o, i: i.__setitem__('global_prefix_bits', 224)), + ('wrong_row_prefix_reserve', lambda o, i: i.__setitem__('row_prefix_extra', 0)), + ('wrong_parent_geometry_charge', lambda o, i: i.__setitem__('unhosted_pervertex', 1)), + ('wrong_rebased_geometry_charge', lambda o, i: i.__setitem__('hosted_rebased_pervertex', 1)), + ('wrong_complete_pervertex_envelope', lambda o, i: i.__setitem__('conservative_pervertex_used', 1)), + ('wrong_prior_added_complete_invoice', lambda o, i: i['retained_prior_overcharge'].__setitem__('added_complete_new_pervertex', 1)), + ('wrong_finite_router_bits', lambda o, i: i['finite'].__setitem__('router_bits', 1)), + ('wrong_finite_literal_bits', lambda o, i: i['finite'].__setitem__('literal_bits', 1)), + ('wrong_finite_physical_stock_bits', lambda o, i: i['finite'].__setitem__('physical_stock_bits', 1)), + ('wrong_finite_row_coefficient', lambda o, i: i['finite'].__setitem__('physical_row_coefficient', 1)), + ('reordered_complete_calls', reordered_calls), + ('understated_explicit_idle_remainders', lambda o, i: o.__setitem__('explicit_idle_remainder_children', o['explicit_idle_remainder_children']-1)), + ('understated_actual_chart_types', lambda o, i: o.__setitem__('actual_73column_sigmas', o['actual_73column_sigmas']-1)), + ('wrong_cross_replica_role_count', lambda o, i: o.__setitem__('cross_replica_helper_roles', o['cross_replica_helper_roles']-1)), + ('old_no_cold_wrapper_counts_selfconsistent', no_cold_wrappers), + ] + + def resync(i, c): + p = i['providers'][c['provider_id']] + c['program_sha256'] = p['program_hashes'][c['orientation']] + c['entering_helpers'], c['entrance_rank'] = p['entering_helpers'], p['entrance_rank'] + for name in ('events','macros','real_component_primitives','coefficient_work_primitive_count','pre_wrappers','post_wrappers'): + c[name] = p['local'][c['orientation']][name] + + # Every provider gets the full per-provider control set, substituting a partner provider where needed. + for P in PIDS: + Qp = partner(P) if len(PIDS)>1 else '__unregistered__' + widths = invoice['providers'][P]['widths'] + + def forged_program_hash(o, i, P=P): + i['providers'][P]['program_hashes']['forward'] = '0' * 64 + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = '0' * 64 + + def wrong_selected_call(o, i, P=P): + c = next(c for c in i['selected_calls'] if c['provider_id'] == P) + d = next(d for d in i['selected_calls'] if d is not c and (d['provider_id'] != P or len(PIDS)==1) and (d['stage'] - c['stage']) % 2 == 0) + c['stage'], d['stage'], c['replica'], d['replica'] = d['stage'], c['stage'], d['replica'], c['replica'] + + def stale_program(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['program_hashes'] = copy.deepcopy(i['providers'][Qp]['program_hashes']) + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = p['program_hashes'][c['orientation']] + + def stale_profile(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['paid_profile'] = copy.deepcopy(i['providers'][Qp]['paid_profile']) + p['children'] = sum(p['paid_profile'].values()) + + def moved(o, i, P=P): + a = next(c for c in i['selected_calls'] if c['provider_id'] == P) + b = next(c for c in i['selected_calls'] if c['provider_id'] != P and c['orientation'] == a['orientation']) + a['provider_id'], b['provider_id'] = b['provider_id'], a['provider_id'] + resync(i, a); resync(i, b) + + def compensating(o, i, P=P, Qp=Qp): + # Two dishonest profiles that cancel exactly in the dispatch-weighted aggregate. + g = math.gcd(COUNTS[P], COUNTS[Qp]); dp, dq = COUNTS[Qp] // g, COUNTS[P] // g + p, q = i['providers'][P], i['providers'][Qp] + p['paid_profile']['1'] += dp; q['paid_profile']['1'] -= dq + p['children'] += dp; q['children'] -= dq + + def forged_recipe(o, i, P=P): + name = 'CLIFFORD-RECIPES.json' + i['providers'][P]['artifacts'][name] = '0'*64 + o['source_artifacts']['providers/'+P+'/'+name] = '0'*64 + + def forged_phase(o, i, P=P): + i['providers'][P]['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] = '0'*64 + o['provider_phase_semantic_sha256'][P] = i['provider_phase_semantic_sha256'][P] = '0'*64 + + controls += [ + (P + ':missing_provider', lambda o, i, P=P: i['providers'].pop(P)), + (P + ':missing_backward_orientation', lambda o, i, P=P: i['providers'][P]['local'].pop('backward')), + (P + ':unpaid_scalar_primitive', lambda o, i, P=P: i['providers'][P]['local']['forward'].__setitem__('real_component_primitives', i['providers'][P]['local']['forward']['real_component_primitives'] - 1)), + (P + ':wrong_local_artifact_binding', lambda o, i, P=P: i['providers'][P]['artifacts'].__setitem__('LOCAL-PROGRAMS.json.gz', '0' * 64)), + (P + ':false_dirty_restoration', lambda o, i, P=P: i['providers'][P]['local']['backward'].__setitem__('all_dirty_helper_columns_restored', False)), + (P + ':wrong_declared_provider_count', lambda o, i, P=P: i['provider_counts'].__setitem__(P, i['provider_counts'][P] + 1)), + (P + ':wrong_local_compiler', lambda o, i, P=P: i['providers'][P].__setitem__('compiler', 1)), + (P + ':wrong_local_adapter_charge', lambda o, i, P=P: i['providers'][P].__setitem__('local_adapters', 1)), + (P + ':wrong_local_primitive_bound', lambda o, i, P=P: i['providers'][P].__setitem__('local_primitive_bound', 1)), + (P + ':forged_provider_and_call_program_hash', forged_program_hash), + (P + ':provider_at_wrong_call', wrong_selected_call), + (P + ':stale_partner_program_consistent_call_hashes', stale_program), + (P + ':stale_partner_profile_consistent_child_total', stale_profile), + (P + ':relocated_against_partner_same_counts', moved), + (P + ':compensating_false_profiles_with_' + Qp, compensating), + (P + ':synchronized_forged_source_recipe_hash', forged_recipe), + (P + ':synchronized_forged_phase_review_semantics', forged_phase), + ] + if len(PIDS)==1: + # Cross-provider substitutions require a second actual supplier. + # All single-provider program, phase, profile and dispatch bindings + # retain their direct mutations above and in the controller audit. + partner_only = {P+':stale_partner_program_consistent_call_hashes', + P+':stale_partner_profile_consistent_child_total', + P+':relocated_against_partner_same_counts', + P+':compensating_false_profiles_with_'+Qp} + controls = [(name, fn) for name, fn in controls if name not in partner_only] + # Width order and inventory: swap the first helper of every pair of distinct widths (same inventory), + # and shift one unit between them (same total). + first = {} + for h, w in enumerate(widths): + first.setdefault(w, h) + for wa, wb in itertools.combinations(sorted(first), 2): + def swap(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a], w[b] = w[b], w[a] + def shift(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a] += 1; w[b] -= 1 + controls.append((P + ':width_order_swap_%d_%d' % (wa, wb), swap)) + controls.append((P + ':width_inventory_shift_%d_%d' % (wa, wb), shift)) + for h in SPOT: + def cold_swap(o, i, P=P, h=h): + w = i['providers'][P]['widths']; j = w.index(9 if w[h] != 9 else 8); w[h], w[j] = w[j], w[h] # never the identity + controls.append((P + ':cold_helper_width_swap_%d' % h, cold_swap)) + rejected = [] + accepted = [] + for name, mutate in controls: + o, i = copy.deepcopy(owner), copy.deepcopy(invoice) + mutate(o, i) + oh = digest(o) + i['owner_audit_sha256'] = oh + try: + assemble(o, i, oh, digest(i)) + except (AssertionError, KeyError): + rejected.append(name) + else: + # Discovery has no pinned values to reject spec-only mutations; the strict run must reject every control. + if not DISCOVER: + raise AssertionError('Invalid admission receipt accepted: ' + name) + accepted.append(name) + try: + assemble(owner, invoice, '0' * 64, sha(invoice_path)) + except AssertionError: + rejected.append('wrong_owner_receipt_hash') + else: + raise AssertionError('Wrong owner digest accepted') + pin('expected.assembly_controls_rejected', len(rejected)) + assert baseline['controls'] == ['next_grid', 'zero_eta', 'zero_beta', 'unit_beta'] + assert baseline['conservative_controls'] == baseline['controls'] + assert baseline['surcharge_model'] == {'complex': False, 'bit': True} + assert len(baseline['model_controls']) == 2 + return dict( + status='PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS', + valid_receipt_kappa=baseline['kappa'], + input_sha256=baseline['input_sha256'], + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + rejected_controls=rejected, + discovery_accepted_controls=accepted, + exact_outer_controls=baseline['controls'], + conservative_outer_controls=baseline['conservative_controls'], + recurrence_model_controls=baseline['model_controls'], + scope='Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay.', + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/audit_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/audit_allcold.py new file mode 100644 index 0000000000..923bf7b675 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/audit_allcold.py @@ -0,0 +1,254 @@ +"""OpenAI Codex independent serialized ASYNCHRONOUS controller/spectator audit. +Imports no emitter, optimizer, expander, edge-coloring, or source hosting code. +CLI: BASE HOSTED REPORT [--mutation-controls] +Each provider is independently read from BASE/providers, never from a baseline width histogram. +OpenAI Codex two-provider width-seven extension; retains all inherited independent controller checks. +The exact 63 width-seven and 9 plain calls are frozen below. +""" +import sys,json,gzip,hashlib,copy +assert __debug__, 'Assertions must remain enabled' +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +BASE,OUT,REPORT=map(lambda p:Path(p).resolve(),sys.argv[1:4]);read=lambda p:json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +parent=read(BASE/'split-centres/GLOBAL-TEMPLATE.json.gz') +ph=read(BASE/'work/complex-nine-native/DATA-PHASES.json') +ct=read(OUT/'GLOBAL-TEMPLATE.json.gz');summary=read(OUT/'HOSTED.json') +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +provider_ids=PIDS +providers={};registry={};phase_semantic_hashes={};artifact_semantic_hashes={} +required_artifacts={'work/complex-nine-native/DATA-PHASES.json'} +provider_files=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json') +for pid in provider_ids: + p=BASE/'providers'/pid + c=read(p/'CANONICAL-WORD.json.gz');checks=read(p/'LOCAL-CHECKS.json') + programs=read(p/'LOCAL-PROGRAMS.json.gz');replay=read(p/'INDEPENDENT-LOCAL-REPLAY.json') + phase=read(p/'CLIFFORD-REVIEW.json');adapters=read(p/'RESIDUAL-ADAPTERS.json')['recipes'] + widths=[len(c['frames'][c['final'][2*c['v']+h]])-len(c['frames'][c['start'][2*c['v']+h]])for h in range(c['R'])] # HPE: residual width |final|-|start| + assert tuple(widths[h]for h in SPOT)==spot_widths();pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + canonical_sha=sha(p/'CANONICAL-WORD.json.gz');programs_sha=sha(p/'LOCAL-PROGRAMS.json.gz') + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==canonical_sha and replay['local_programs_sha256']==programs_sha + assert replay['v']==c['v'] and replay['helpers']==c['R'] + assert set(programs)==set(checks)==set(replay['local'])==set(replay['paid_profiles'])=={'forward','backward'} + for orientation,events in programs.items(): + ck=checks[orientation];rr=replay['local'][orientation] + assert hashlib.sha256(json.dumps(events,sort_keys=True,separators=(',',':')).encode()).hexdigest()==ck['sha256'] + assert ck['events']==len(events) and ck['all_columns']==2*c['v']+c['R'] + assert ck['private_centers_cleared'] and ck['private_coefficient_stream_cleared_after_each_macro'] + assert rr['all_exact_columns']==2*c['v']+c['R'] and rr['private_work_erased'] + literal=Counter(e[-1]for e in events if e[0]in('climb','center')) + assert dict(literal)=={int(r):n for r,n in ck['paid_profile'].items()}=={int(r):n for r,n in c['local_profile'].items()} + assert ck['paid_profile']==replay['paid_profiles'][orientation] + assert phase['canonical_word_sha256']==canonical_sha and phase['recipe_sha256']==sha(p/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] + artifact_semantic_hashes[pid]=artifact_identities(p) + pin('providers.%s.artifact_semantic_sha256'%pid,artifact_semantic_hashes[pid]) + phase_semantic_hashes[pid]=artifact_semantic_hashes[pid]['CLIFFORD-REVIEW.json'] + for h,w in enumerate(widths): + assert 0>i)&1==0);a=q^(1<>i&1 else 0)for i in order]+[1<2*max(paid)**2 + return dict(profile=dict(sorted(paid.items())),mass=mass,hosted=HOSTED,entering=entering,cross_replica=cross,sigma_digest=digest.hexdigest(),sigmas=sigmas,idle_remainders=len(wanted),busy_family_checks=len(roles),invocations=144) + +r=audit(ct);raw=gzip.decompress((OUT/'GLOBAL-TEMPLATE.json.gz').read_bytes());assert hashlib.sha256(raw).hexdigest()==summary['template_sha256'];assert r['profile']=={int(k):v for k,v in summary['global_profile'].items()};assert r['sigmas']==read(OUT/'ACTUAL-SIGMAS.json.gz');assert r['sigma_digest']==summary['sigma_stream_sha256'] +assert all(hashlib.sha256((BASE/name).read_bytes()).hexdigest()==value for name,value in summary['source_artifacts'].items()) +controls=[] +def reject(name,mut): + if '--mutation-controls' not in sys.argv[4:]:return + q=copy.deepcopy(ct);mut(q) + try:audit(q) + except(AssertionError,KeyError,IndexError,ValueError,TypeError):controls.append(name) + else:raise AssertionError('ACCEPTED '+name) +enter=lambda q:next(o for c in q['calls']for o in c['owners'][(2*V):]if o[1][0]==4) +reject('alias two whole owners',lambda q:q['calls'][0]['owners'].__setitem__((2*V+1),q['calls'][0]['owners'][(2*V)])) +reject('helper on active data family',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,q['calls'][0]['owners'][0][0])) +reject('owner in private namespace',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,DATA)) +reject('wrong residual width',lambda q:enter(q)[1].__setitem__(3,enter(q)[1][3]-1)) +reject('wrong spectator coordinate',lambda q:enter(q)[1][4].__setitem__(0,72)) +reject('omit idle remainder',lambda q:q['idle_children'].pop()) +reject('understate physical reserve',lambda q:q.__setitem__('physical',PHYSICAL-1)) +# Single-provider dispatch still has all source/program/width binding controls. +if len(provider_ids)==1: + P=provider_ids[0] + at_p=lambda q:next(c for c in q['calls']if c['provider_id']==P) + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q:at_p(q).__setitem__('provider_id','__unregistered__')) + reject(P+': stale per-call local program hash',lambda q:at_p(q).__setitem__('local_program_sha256','0'*64)) + reject(P+': stale serialized provider program',lambda q:q['local_providers'][P]['local_programs']['forward'].pop()) + reject(P+': unbound residual adapter hash',lambda q:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + reject(P+': wrong provider width registry',lambda q:q['local_providers'][P]['widths'].__setitem__(narrow,providers[P]['widths'][narrow]-1)) + reject(P+': wrong per-call residual width',lambda q:at_p(q)['owners'][2*V+narrow][1].__setitem__(3,at_p(q)['owners'][2*V+narrow][1][3]-1)) + reject(P+': wrong sweep provider',lambda q:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep').__setitem__('provider_id','__unregistered__')) + reject(P+': entering helper width silently restored to nine',lambda q:q['local_providers'][P]['widths'].__setitem__(narrow,9)) +else: + # Per-provider substitution controls: every provider is swapped against a partner provider. + for P in provider_ids: + Qp=partner(P) + at_p=lambda q,P=P:next(c for c in q['calls']if c['provider_id']==P) + diff=[h for h in range(R)if providers[P]['widths'][h]!=providers[Qp]['widths'][h]] + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q,P=P,Qp=Qp,at_p=at_p:at_p(q).__setitem__('provider_id',Qp)) + reject(P+': stale per-call local program hash',lambda q,Qp=Qp,at_p=at_p:at_p(q).__setitem__('local_program_sha256',registry[Qp]['local_program_checks'][at_p(q)['orientation']]['sha256'])) + reject(P+': stale serialized provider program',lambda q,P=P,Qp=Qp:q['local_providers'][P].__setitem__('local_programs',registry[Qp]['local_programs'])) + reject(P+': unbound residual adapter hash',lambda q,P=P:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + if diff:reject(P+': partner width in provider width registry',lambda q,P=P,Qp=Qp,h=diff[0]:q['local_providers'][P]['widths'].__setitem__(h,providers[Qp]['widths'][h])) + reject(P+': wrong per-call residual width',lambda q,at_p=at_p,h=narrow:at_p(q)['owners'][2*V+h][1].__setitem__(3,at_p(q)['owners'][2*V+h][1][3]-1)) + reject(P+': wrong sweep provider',lambda q,P=P,Qp=Qp:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep'and DISPATCH[e['stage'],e['replica']]==P).__setitem__('provider_id',Qp)) + reject(P+': entering helper width silently restored to nine',lambda q,P=P,h=narrow:q['local_providers'][P]['widths'].__setitem__(h,9)) + +report=dict(status='PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS',template_sha256=summary['template_sha256'],complex_template_sha256=summary['template_sha256'],complex_live=DATA,complex_profile=r['profile'],complex_hosted_residuals=HOSTED,physical=PHYSICAL,rank_mass=r['mass'],deficit=5120,entering_helper_roles=r['entering'],cross_replica_helper_roles=r['cross_replica'],one_owner_per_complete_invocation=True,helper_busy_family_window_checks=r['busy_family_checks'],complete_invocations=r['invocations'],actual_orthogonal_73column_maps=len(r['sigmas']),actual_sigma_stream_sha256=r['sigma_digest'],all_actual_residual_and_spectator_charts=True,idle_remainders=r['idle_remainders'],mutations_rejected=controls,mutation_controls_run='--mutation-controls' in sys.argv[4:],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,widths_by_provider={pid:dict(sorted(Counter(providers[pid]['widths']).items()))for pid in provider_ids},provider_counts=dict(Counter(c['provider_id']for c in ct['calls'])),all_provider_program_phase_and_wrapper_bindings=True,scope='Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations.') +REPORT.parent.mkdir(parents=True,exist_ok=True) +REPORT.write_text(json.dumps(report,indent=2)+'\n');print(json.dumps(report,indent=2)) + +owners=dict(status='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE',template_sha256=summary['template_sha256'],paid_profile=r['profile'],live=DATA,physical=PHYSICAL,rank_mass=r['mass'],deficit=5120,hosted_residuals=HOSTED,banked_residuals=0,all_live_owners_per_call_distinct=True,owners_per_call=N,actual_helper_owner_charts=HOSTED,actual_73column_sigmas=len(r['sigmas']),cross_replica_helper_roles=r['cross_replica'],explicit_idle_remainder_children=r['idle_remainders'],source_idle_children_charged=sum(x['replicas']for x in parent['idle_children']),source_artifacts=summary['source_artifacts'],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,controller_audit_sha256=hashlib.sha256(REPORT.read_bytes()).hexdigest()) +(REPORT.parent/'OWNERS-AND-PROFILE.json').write_text(json.dumps(owners,indent=2)+'\n') + +# Literal residual frames are a compact export of the already checked offsets, +# not another global replay. Every row names its actual inherited axes. +frames=[] +for z in ct['idle_children']: + axes=list(map(int,ph['recipes'][z['port']]['idle_children'][z['child']]['orthogonal_axes'])) + tail=axes[z['pending_offset']:] + assert len(tail)==z['rank'] + frames.append(dict(z,orthogonal_axes=tail)) +frame_raw=json.dumps(frames,sort_keys=True,separators=(',',':')).encode() +portable=bytearray(gzip.compress(frame_raw,mtime=0));portable[9]=255 +(OUT/'IDLE-REMAINDER-FRAMES.json.gz').write_bytes(bytes(portable)) +frame_receipt=dict(status='PASS_LITERAL_IDLE_REMAINDER_FRAMES',template_sha256=summary['template_sha256'], + uncompressed_frames_sha256=hashlib.sha256(frame_raw).hexdigest(),children=len(frames), + rank_profile=dict(sorted(Counter(z['rank']for z in frames).items())), + source_data_phase_sha256=hashlib.sha256((BASE/'work/complex-nine-native/DATA-PHASES.json').read_bytes()).hexdigest(), + scope='Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child.') +(REPORT.parent/'IDLE-REMAINDER-FRAMES.json').write_text(json.dumps(frame_receipt,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/bind_providers_portable.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/bind_providers_portable.py new file mode 100644 index 0000000000..97e28da17e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/bind_providers_portable.py @@ -0,0 +1,67 @@ +"""Bind freshly verified plain and width-seven four-cold providers to the frozen literal owner plan. +Prepared with OpenAI Codex assistance; Apache-2.0. All byte-stable native +files are pinned to the plan. Only validated phase-receipt timing/serialization +and directory fields are rebound; no dispatch, width or owner choice changes. +""" +import argparse,copy,gzip,hashlib,json,shutil +from collections import Counter +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +assert __debug__, 'Assertions required' +ap=argparse.ArgumentParser(description=__doc__) +for name in ('baseline','plan','out'):ap.add_argument('--'+name,type=Path,required=True) +ap.add_argument('--provider',action='append',required=True,help='PID=DIR');a=ap.parse_args();assert not a.out.exists();a.out.mkdir(parents=True) +def read(p):return json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +base=a.out/'base';shutil.copytree(a.baseline/'complex-global/base',base) +ap2=dict(x.split('=',1)for x in a.provider);dirs={k:Path(v)for k,v in ap2.items()};assert set(dirs)==set(PIDS) +for pid,src in dirs.items():shutil.copytree(src,base/'providers'/pid) +pin('data.plan_sha256',sha(a.plan)) +plan=read(a.plan);original=copy.deepcopy(plan);sources={};helpers=set() # R: helper count per provider word; all providers must agree +assert set(plan['provider_registry'])==set(dirs) +assert {(c['stage'],c['replica']):c['provider']for c in plan['provider_calls']}==DISPATCH,'PLAN dispatch differs from spec dispatch' +stable=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json') +for pid,desc in plan['provider_registry'].items(): + d=base/'providers'/pid + word,program,checks,native,phase=[read(d/name)for name in('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-REVIEW.json')] + assert (word['v'],word['h'],len(word['centers']))==(112,9,8) and type(word['R']) is int and word['R']>0;helpers.add(word['R']) + assert word['ports']==desc['ports'] and word['centers']==desc['centers'] + widths=[len(word['frames'][word['final'][r]])-len(word['frames'][word['start'][r]])for r in range(2*112,2*112+word['R'])] # HPE: residual width |final|-|start| + assert tuple(widths[h]for h in SPOT)==spot_widths() + assert widths==desc['widths'];pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + assert native['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + pin('providers.%s.native_negative_controls'%pid,len(native['negative_controls_rejected'])) + assert native['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and native['local_programs_sha256']==sha(d/'LOCAL-PROGRAMS.json.gz') + assert phase['status']=='PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES' + assert phase['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and phase['recipe_sha256']==sha(d/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] is True and phase['endpoint_adapters']==224 + pin('providers.%s.phase_edges'%pid,phase['directed_edges']) + assert set(program)==set(checks)=={'forward','backward'} + expected={int(r):n for r,n in checks['forward']['paid_profile'].items()};pin('providers.%s.expected_profile'%pid,checks['forward']['paid_profile']) + for orientation,events in program.items(): + profile=Counter() + for e in events: + if e[0]=='climb':profile[e[5]]+=1 + elif e[0]=='center':profile[e[4]]+=1 + assert dict(profile)==expected=={int(r):n for r,n in checks[orientation]['paid_profile'].items()}=={int(r):n for r,n in native['paid_profiles'][orientation].items()} + assert hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest()==checks[orientation]['sha256'] + identities=artifact_identities(d) + pin('providers.%s.artifact_semantic_sha256'%pid,identities) + assert identities==desc['artifact_semantic_sha256'] + for name in ('LOCAL-CHECKS.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json'): + assert sha(d/name)==desc['artifact_sha256'][name],(pid,name,'changed non-reference artifact') + for c in plan['provider_calls']: + if c['provider']==pid: + assert c['orientation']==('forward'if c['stage']%2==0 else'backward') + assert c['local_program_sha256']==checks[c['orientation']]['sha256'] + desc['directory']='providers/'+pid + desc['artifact_sha256']={name:sha(d/name)for name in desc['artifact_sha256']} + sources[pid]=dict(artifact_sha256=desc['artifact_sha256'],canonical_content_sha256=hashlib.sha256(json.dumps(word,sort_keys=True,separators=(',',':')).encode()).hexdigest(),all_phase_edges=phase['directed_edges']) +assert len(helpers)==1,'providers disagree on helper count R: %s'%sorted(helpers) +plan['runtime_source_plan_sha256']=sha(a.plan) +(a.out/'PLAN.json').write_text(json.dumps(plan,indent=2)+'\n') +receipt=dict(status='PASS_FROZEN_048_ALLCOLD_DISPATCH_FRESH_PROVIDER_BINDING',source_plan_sha256=sha(a.plan),runtime_plan_sha256=sha(a.out/'PLAN.json'),providers=sources,only_rebound_fields=['provider_registry.directory','provider_registry.artifact_sha256','runtime_source_plan_sha256']) +(a.out/'BINDING.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(receipt['status']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/bit_supplier_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/bit_supplier_controls.py new file mode 100644 index 0000000000..e86b8527b4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/bit_supplier_controls.py @@ -0,0 +1,111 @@ +"""Negative controls for the cited PR589 bit supplier and its derived rank-mass deficit. + +Apache-2.0. Each control mutates one input of the changed bit-supplier sites in assemble.py (the pinned record, the +deficit derivation from the word's parameters, the profile/live binding, the claimed endpoint) and runs the unchanged +assemble() on the fresh owner/invoice receipts. Every control must be rejected; the unmutated run must pass. +`revert_hardcoded_9984` restores the PR543 constant the parent package hard-coded: with PR589's word it must fail. +""" +import argparse +import copy +import hashlib +import json +import os +import tempfile +from fractions import Fraction as Q +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) + +assert __debug__, 'Assertions required' +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + import assemble as A + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + args = (owner, invoice, sha(owner_path), sha(invoice_path)) + baseline = A.assemble(*args) + data = A.BIT_PATH.read_bytes() + record = A.load_bit(data) + word = record['word'] + assert A.bit_deficit(word, record['nine']['bit']['live']) == 10272 == 32 * (8 * 111 - 9 * 63) + + real_load, real_deficit = A.load_bit, A.bit_deficit + + def with_record(mutate): + def load(d): + r = copy.deepcopy(real_load(d)); mutate(r); return r + return load + + def shift_profile(r): # one rank-1 child becomes rank 2: rank mass +1, totals unchanged + p = r['nine']['profile']; p['1'] -= 1; p['2'] += 1; r['nine']['bit']['rank_mass'] += 1 + + bumped = data.replace(record['nine']['bit_lower'].encode(), + str(Q(record['nine']['bit_lower']) + Q(1, 10**24)).encode(), 1) + assert bumped != data + pr543 = (source_package / 'inputs/PR543-EXPECTED.json').read_bytes() + controls = [ + # deficit site: the parent's hard-coded constant, restored + ('revert_hardcoded_9984', dict(bit_deficit=lambda w, live: 9984)), + # deficit site: each word parameter perturbed alone + ('ports_112', dict(load_bit=with_record(lambda r: r['word'].__setitem__('v', 112)))), + ('decoder_constant_64_copy_ranks_unchanged', dict(load_bit=with_record(lambda r: r['word'].__setitem__('decoder_constant', 64)))), + # v=111, cst=64 derives 32*(888-576)=9984: consistent word, wrong for the priced profile + ('decoder_constant_64_with_one_copy_rank_8', dict(load_bit=with_record(lambda r: (r['word'].__setitem__('decoder_constant', 64), r['word']['copy_ranks'].__setitem__(0, 8))))), + ('eight_retained_totals', dict(load_bit=with_record(lambda r: (r['word'].__setitem__('copy_ranks', [7] * 8), r['word'].__setitem__('decoder_constant', 56))))), + ('live_minus_one', dict(load_bit=with_record(lambda r: r['nine']['bit'].__setitem__('live', r['nine']['bit']['live'] - 1)))), + # profile binding: same totals, rank mass +1 + ('profile_rank_mass_plus_one', dict(load_bit=with_record(shift_profile))), + ('profile_rank_mass_receipt_mismatch', dict(load_bit=with_record(lambda r: r['nine']['bit'].__setitem__('rank_mass', r['nine']['bit']['rank_mass'] + 1)))), + # endpoint: the next 1e-24 grid point + ('bit_lower_next_grid', dict(load_bit=with_record(lambda r: r['nine'].__setitem__('bit_lower', str(Q(r['nine']['bit_lower']) + Q(1, 10**24)))))), + ('not_nine_stage_record', dict(load_bit=with_record(lambda r: r['nine'].__setitem__('pipeline', r['nine']['pipeline'].replace('nine-stage', 'eleven-stage'))))), + # pinned-input site: tampered bytes and the parent's PR543 file under the PR589 pin + ('tampered_bytes_next_grid', dict(read=bumped)), + ('pr543_file_under_pr589_pin', dict(read=pr543)), + ] + rejected = [] + scratch = Path(tempfile.mkdtemp(prefix='bitctl-')) + for name, patch in controls: + saved_path = A.BIT_PATH + try: + if 'read' in patch: + tmp = scratch / (name + '.json'); tmp.write_bytes(patch['read']); A.BIT_PATH = tmp + A.load_bit = patch.get('load_bit', real_load) + A.bit_deficit = patch.get('bit_deficit', real_deficit) + try: + A.assemble(*args) + except (AssertionError, KeyError): + rejected.append(name) + else: + raise AssertionError('Invalid bit supplier accepted: ' + name) + finally: + A.load_bit, A.bit_deficit, A.BIT_PATH = real_load, real_deficit, saved_path + if 'read' in patch: + tmp.unlink() + scratch.rmdir() + assert rejected == [n for n, _ in controls] + again = A.assemble(*args) + assert again['kappa'] == baseline['kappa'] and again['bit_lower'] == baseline['bit_lower'] + return dict( + status='PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS', + kappa=baseline['kappa_decimal'], bit_lower=baseline['bit_lower'], bit_decimal=baseline['bit_decimal'], + binding=baseline['binding'], bit_supplier=baseline['bit_supplier'], + derived_deficit=baseline['bit_supplier']['derived_deficit'], + rejected_controls=rejected, + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n', newline='\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/emit_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/emit_allcold.py new file mode 100644 index 0000000000..28a08a79da --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/emit_allcold.py @@ -0,0 +1,150 @@ +"""Two-provider width-seven whole-owner derivative, adapted with OpenAI Codex assistance. +Based on PR514 and its credited PR484/507 lineage. +CLI: --base VERIFIED_VARIANT --owners ASYNC-OWNERS.json.gz --plan ASYNC-PLAN.json --out OUT +No optimizer or unpublished word builder runs. The frozen map explicitly names +one whole helper per family per complete invocation, plus borrowed spectators. +""" +import sys,json,gzip,hashlib,copy,argparse +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +parser=argparse.ArgumentParser(description=__doc__) +parser.add_argument('--base',type=Path,required=True);parser.add_argument('--owners',type=Path,required=True);parser.add_argument('--plan',type=Path,required=True);parser.add_argument('--out',type=Path,required=True) +a=parser.parse_args();BASE,MAP,PLAN,OUT=(p.resolve()for p in(a.base,a.owners,a.plan,a.out));assert not OUT.exists();OUT.mkdir(parents=True) +class OH: + @staticmethod + def idle_basis(q): + z=next(i for i in range(9)if not(q>>i)&1);u=q^(1<>i&1 else 0)for i in order]+[1<0 and all(x['R']==R for x in registry.values()),'providers disagree on helper count R' + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz')and replay['local_programs_sha256']==sha(directory/'LOCAL-PROGRAMS.json.gz') + widths=[len(pc['frames'][pc['final'][2*V+h]])-len(pc['frames'][pc['start'][2*V+h]])for h in range(R)] # HPE: residual width |final|-|start| + assert widths==plan['provider_registry'][provider_id]['widths'] + for name in provider_files: + value=sha(directory/name);assert value==plan['provider_registry'][provider_id]['artifact_sha256'][name] + source_artifacts[f'providers/{provider_id}/{name}']=value + registry[provider_id]=dict(local_programs=programs,canonical_word_sha256=sha(directory/'CANONICAL-WORD.json.gz'),local_programs_sha256=sha(directory/'LOCAL-PROGRAMS.json.gz'),local_program_checks=checks,exact_local_clifford_recipe_sha256=sha(directory/'CLIFFORD-RECIPES.json'),residual_adapter_sha256=sha(directory/'RESIDUAL-ADAPTERS.json'),v=V,h=9,R=R,ports=pc['ports'],centers=pc['centers'],widths=widths) +assert len(roles)==144*R # one whole-owner role per (call, provider helper) +selected={(c['stage'],c['replica']):c for c in plan['provider_calls']} +assert len(selected)==144 and set(selected)==set(call_order) +assert Counter(c['provider']for c in selected.values())==COUNTS +per_call_widths={(c['stage'],c['replica']):c['widths']for c in plan['per_call_widths']} +for key,c in selected.items(): + assert c['time']==at[key] and c['provider']in registry + assert per_call_widths[key]==registry[c['provider']]['widths'] +for key in('local_programs','exact_local_clifford_recipe_sha256','residual_adapter_sha256'):t.pop(key) +t['local_providers']=registry +rank={z['child']:z['rank']for z in parent['idle_children']};side={};pairs={} +for e in parent['execution_schedule']: + if e['kind']=='idle_cover_sweep': + for sd,ch in enumerate(e['child_indices']):side[ch]=sd;pairs[ch]=e['pair'] +bycall=defaultdict(dict);used=defaultdict(set);sigmas={};digest=hashlib.sha256();entering=0 +for z in roles: + s,rep,h=z['stage'],z['replica'],z['helper'];i,cp,off,w,f=z['child'],z['copy'],z['offset'],z['width'],z['family'];orp,port=divmod(cp,V) + assert 0<=s<9 and 0<=rep=0 and off+w<=rank[i] + assert z['time']==at[s,rep] and z['time'] in plan['windows'][f'{orp},{i}'][1] + B=OH.idle_basis(canon['ports'][port]);pending=list(map(int,ph['recipes'][port]['idle_children'][i]['orthogonal_axes']));assert len(pending)==rank[i] + occ=[B.index(v)for v in pending[off:off+w]];sp=OH.spectators(canon['ports'][port],pending,off,w)if w<9 else[] + order=occ+sp+[j for j in range(M)if j not in occ and j not in sp];assert len(order)==len(set(order))==M + sigma=[B[j]for j in order];sigmahash=hashlib.sha256(json.dumps(sigma,separators=(',',':')).encode()).hexdigest();sigmas[sigmahash]=sigma + route=[4,i,off,w,sp]if w<9 else[3,i,off];bycall[s,rep][h]=[f,route];entering+=w<9 + cells=set(range(off,off+w));assert not used[i,orp,port]&cells;used[i,orp,port]|=cells + digest.update(json.dumps([s,rep,h,f,sigmahash],separators=(',',':')).encode()+b'\n') +for c in t['calls']: + k=(c['stage'],c['replica']);assert set(bycall[k])==set(range(R)) + c['owners']=c['owners'][:(2*V)]+[bycall[k][h]for h in range(R)];assert len({f for f,r in c['owners']})==2*V+R and all(f2*max(paid)**2 + +assert all(c['local_program_sha256']==registry[c['provider_id']]['local_program_checks'][c['orientation']]['sha256']for c in t['calls']) +t['provider_dispatch']='For each indivisible local_cover_sweep, execute local_providers[call.provider_id].local_programs[call.orientation] with that provider residual adapters and Clifford recipes. The sweep provider_id must equal its call provider_id.' +raw=json.dumps(t,sort_keys=True,separators=(',',':')).encode();(OUT/'GLOBAL-TEMPLATE.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +res=dict(status='EMITTED_MIXED_PROVIDER_ASYNCHRONOUS_WHOLE_OWNER_COMPLEX_TEMPLATE', + template_sha256=hashlib.sha256(raw).hexdigest(), + parent_template_sha256=hashlib.sha256(gzip.decompress((BASE/'split-centres/GLOBAL-TEMPLATE.json.gz').read_bytes())).hexdigest(), + live=DATA,physical=physical,global_profile=dict(sorted(paid.items())), + rank_mass=sum(r*n for r,n in paid.items()),deficit=5120,maxchild=max(paid), + hosted_residuals=len(roles),banks_per_stage=[0]*9,entering_helper_roles=entering, + unique_actual_73column_sigmas=len(sigmas),sigma_stream_sha256=digest.hexdigest(), + cross_replica_helper_roles=sum(z['replica']!=z['owner_replica']for z in roles), + asynchronous_order_sha256=hashlib.sha256(json.dumps(call_order,separators=(',',':')).encode()).hexdigest(), + source_artifacts=source_artifacts,provider_counts=dict(Counter(c['provider_id']for c in t['calls'])), + scope='Two actual verified plain/width-seven providers dispatched per complete invocation; independent controller/spectator/normalization and complete finite invoice admission required.') +(OUT/'HOSTED.json').write_text(json.dumps(res,indent=2)+'\n');(OUT/'ACTUAL-SIGMAS.json.gz').write_bytes(gzip.compress(json.dumps(sigmas,separators=(',',':')).encode(),mtime=0));print(json.dumps(res,indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/freeze_spec.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/freeze_spec.py new file mode 100644 index 0000000000..4fe3b88915 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/freeze_spec.py @@ -0,0 +1,29 @@ +"""Freeze independently recomputed discovery values before strict replay.""" +import argparse +import json +from pathlib import Path + +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--spec', type=Path, required=True) +ap.add_argument('--discovery', type=Path, required=True) +a = ap.parse_args() +spec = json.loads(a.spec.read_text()) +for line in (a.discovery/'WITNESS-RECORD.jsonl').read_text().splitlines(): + key, value = json.loads(line) + parts = key.split('.') + if len(parts)>3 and parts[0]=='providers' and parts[2]=='artifacts': + parts = parts[:3] + ['.'.join(parts[3:])] + target = spec + for part in parts[:-1]: + target = target.setdefault(part, {}) + if parts[-1] in target: + assert target[parts[-1]]==value, 'Conflicting independent recomputations: '+key + target[parts[-1]] = value +assembly = json.loads((a.discovery/'ASSEMBLY.json').read_text()) +for key in ('complex_lower','conservative_complex_lower','kappa','kappa_decimal','conservative_kappa_decimal'): + spec['expected'][key] = assembly[key] +spec['expected']['assembly_controls_rejected'] = 69 +spec['expected']['provider_counts'] = {'gauge44':144} +spec['expected']['mutations_rejected'] = 15 +a.spec.write_text(json.dumps(spec, indent=2)+'\n') +print('Frozen exact witness for strict replay:', assembly['kappa_decimal']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/generated_identity.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/generated_identity.py new file mode 100644 index 0000000000..74a9b60479 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/generated_identity.py @@ -0,0 +1,62 @@ +"""Proof-relevant identities for generated artifacts, independent of gzip streams. + +Immutable source archives retain their exact byte hashes. For freshly emitted +artifacts, gzip identity is the exact decompressed payload and JSON identity +retains every field. Only CLIFFORD-REVIEW's root timing field is excluded. +Literal receipt references are checked against actual files before replacing +the three gzip references (and the phase recipe reference) with content hashes. +Prepared with OpenAI Codex assistance; Apache-2.0. +""" +from pathlib import Path +import copy +import gzip +import hashlib +import json +import math + +if not __debug__: + raise RuntimeError('Assertions must remain enabled') + +FILES=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json') + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + +def json_identity(value): + return hashlib.sha256(json.dumps(value,sort_keys=True,separators=(',',':'),allow_nan=False).encode('utf-8')).hexdigest() + +def payload_identity(path): + return hashlib.sha256(gzip.decompress(Path(path).read_bytes())).hexdigest() + +def phase_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'CLIFFORD-REVIEW.json').read_bytes())if value is None else value) + assert value['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz'),'stale phase canonical word reference' + assert value['recipe_sha256']==sha(directory/'CLIFFORD-RECIPES.json'),'stale phase recipe reference' + seconds=value.pop('seconds') + assert type(seconds)in(int,float) and math.isfinite(seconds) and seconds>=0,'invalid phase timing metadata' + value['canonical_word_sha256']=payload_identity(directory/'CANONICAL-WORD.json.gz') + value['recipe_sha256']=json_identity(json.loads((directory/'CLIFFORD-RECIPES.json').read_bytes())) + return value + +def native_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'INDEPENDENT-LOCAL-REPLAY.json').read_bytes())if value is None else value) + for field,name in [('canonical_word_sha256','CANONICAL-WORD.json.gz'),('local_programs_sha256','LOCAL-PROGRAMS.json.gz')]: + assert value[field]==sha(directory/name),'stale native artifact reference: '+field + value[field]=payload_identity(directory/name) + return value + +def artifact_identities(directory): + directory=Path(directory) + result={} + for name in FILES: + path=directory/name + if name.endswith('.gz'): + result[name]=payload_identity(path) + else: + value=phase_value(directory)if name=='CLIFFORD-REVIEW.json'else native_value(directory)if name=='INDEPENDENT-LOCAL-REPLAY.json'else json.loads(path.read_bytes()) + result[name]=json_identity(value) + return result diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/invoice_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/invoice_allcold.py new file mode 100644 index 0000000000..d1dd221291 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/code/invoice_allcold.py @@ -0,0 +1,329 @@ +"""Fresh call-specific mixed-provider finite invoice. + +Prepared with OpenAI Codex assistance, Apache-2.0. The scalar/Horner recount +and finite inequalities are adapted from the retained PR558 -> PR552 -> +PR531 invoice_final.py, whose notices and sources are preserved in the package. +Every call selects a hash-bound provider. Shared compiler reserves use maxima; +primitive work, coefficient work, local children and wrappers are also summed +from actual selected provider/orientation records. +""" +import argparse, gzip, hashlib, json +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path +assert __debug__, 'Assertions required' + +def read(path): + data=path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix=='.gz' else data) +def filehash(path): return hashlib.sha256(path.read_bytes()).hexdigest() +def contenthash(path): + data=path.read_bytes() + return hashlib.sha256(gzip.decompress(data) if path.suffix=='.gz' else data).hexdigest() +def programhash(events): + return hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest() + +def recount_provider(local_dir, registry): + cp=local_dir/'CANONICAL-WORD.json.gz'; pp=local_dir/'LOCAL-PROGRAMS.json.gz' + rp=local_dir/'INDEPENDENT-LOCAL-REPLAY.json' + w,programs,replay=read(cp),read(pp),read(rp) + checks=read(local_dir/'LOCAL-CHECKS.json') + assert set(programs)=={'forward','backward'} + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==filehash(cp)==registry['canonical_word_sha256'] + assert replay['local_programs_sha256']==filehash(pp)==registry['local_programs_sha256'] + assert programs==registry['local_programs'] + assert checks==registry['local_program_checks'] + assert filehash(local_dir/'CLIFFORD-RECIPES.json')==registry['exact_local_clifford_recipe_sha256'] + assert filehash(local_dir/'RESIDUAL-ADAPTERS.json')==registry['residual_adapter_sha256'] + v,helpers,h,m=w['v'],w['R'],w['h'],73 + assert (v,h)==(112,9) and type(helpers) is int and helpers>0 + assert registry['v']==v and registry['R']==helpers and registry['h']==h + assert registry['ports']==w['ports'] and registry['centers']==w['centers'] + assert replay['v']==v and replay['helpers']==helpers + n=2*v+helpers + widths = [len(w['frames'][w['final'][r]])-len(w['frames'][w['start'][r]]) for r in range(2*v, 2*v+helpers)] # HPE: |final|-|start| + terminal_codim = sum(h-len(w['frames'][w['final'][r]]) for r in range(2*v, 2*v+helpers)) # HPE: 0 for FULL-ended helpers + ends = {r: f for r, f in enumerate(w['final']) if r >= 2*v and f != 1} + assert len(widths) == helpers + entrances = {r: f for r, f in enumerate(w['start']) if r >= 2*v and f != 0} + entering = len(entrances) + wrapped = {**entrances, **{r: 0 for r in ends if r not in entrances}} # COLD-HPE: cold hyperplane-ended helpers carry wrappers too + cold_ends = len(wrapped) - len(entrances) + assert entering == replay['entering_helpers'] + local = {} + for orientation, events in programs.items(): + # Endpoint equality and native frames were already independently + # replayed on all n columns in the hash-bound receipt above. + env = {('L', r): Q(1) for r in range(n)} + peak = Q(1) + real = macros = workops = 0 + paid = Counter() + wrappers = {'pre': set(), 'post': set()} + for event in events: + tag = event[0] + if tag == 'climb': + paid[event[5]] += 1 + elif tag == 'center': + paid[event[4]] += 1 + elif tag == 'residual_adapter': + _, kind, register, frame, *end = event + assert kind in wrappers and wrapped.get(register) == frame + assert end == ([ends[register]] if register in ends else []) # HPE: R_{E,U}^-1 and L_{E,U}^-1 name U + assert register not in wrappers[kind] + wrappers[kind].add(register) + elif tag == 'scalar': + macros += 1 + scalar = event[1] + op, target = scalar[0], tuple(scalar[1]) + if op == 'clear': + env[target] = Q(0) + count = 1 + elif op == 'copy': + env[target] = env[tuple(scalar[2])] + count = 1 + elif op == 'scale': + q = Q(scalar[2], scalar[3]) + numerator, denominator = abs(q.numerator), q.denominator + assert numerator and numerator & (numerator-1) == 0 + assert denominator & (denominator-1) == 0 + env[target] *= abs(q) + count = abs(numerator.bit_length()-denominator.bit_length()) + int(q < 0) + elif op == 'add': + source = tuple(scalar[2]) + q = Q(scalar[3], scalar[4]) + numerator, denominator = abs(q.numerator), q.denominator + assert source != target and numerator > 0 + assert denominator & (denominator-1) == 0 + acc, count = 0, 1 # clear coefficient work + for i, bit in enumerate(bin(numerator)[2:]): + if i: + acc *= 2 + count += 1 + peak = max(peak, acc*env[source]) + if bit == '1': + acc += 1 + count += 1 + peak = max(peak, acc*env[source]) + value = Q(acc) + for _ in range(denominator.bit_length()-1): + value /= 2 + count += 1 + peak = max(peak, value*env[source]) + assert value == abs(q) + count += 2 # signed accumulation and work clear + env[target] = env.get(target, Q(0)) + abs(q)*env[source] + workops += count + else: + raise AssertionError(op) + real += 2*count + peak = max(peak, env[target]) + else: + assert tag in ('adapter', 'phase') + assert wrappers['pre'] == wrappers['post'] == set(wrapped) + assert all(value == 0 for register, value in env.items() if register[0] == 'C') + prior = replay['local'][orientation] + assert prior['all_exact_columns'] == n and prior['private_work_erased'] + assert peak == Q(prior['prefix_l1_upper']) and peak < 2**prior['charged_payload_bits'] + bits = peak.numerator.bit_length()-peak.denominator.bit_length()+1 + assert bits == prior['prefix_bits_upper'] + assert real == checks[orientation]['real_component_primitive_bound'] + assert macros == checks[orientation]['scalar_macros'] + assert dict(paid) == {int(r): count for r, count in checks[orientation]['paid_profile'].items()} + assert dict(paid) == {int(r): count for r, count in replay['paid_profiles'][orientation].items()} + local[orientation] = dict( + events=len(events), macros=macros, real_component_primitives=real, + prefix_l1=str(peak), prefix_bits=bits, + coefficient_work_primitive_count=workops, all_exact_columns=n, + dirty_helper_columns=helpers, all_dirty_helper_columns_restored=True, + private_centres_and_coefficient_work_cleared=True, + pre_wrappers=len(wrappers['pre']), post_wrappers=len(wrappers['post']), + endpoint_evidence='Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json') + + centres = len(w['centers']) + children = sum(checks['forward']['paid_profile'].values()) + assert checks['forward']['paid_profile'] == checks['backward']['paid_profile'] + macro_bound = max(row['macros'] for row in local.values()) + compiler = 64*(m+1)**3 + adapters = 16*(macro_bound+children+n+centres)+64*m + primitive_bound = max(row['real_component_primitives'] for row in local.values())+adapters*compiler + + assert widths==registry['widths'] + artifacts={f.name:filehash(f) for f in local_dir.iterdir() if f.is_file()} + phase_review=read(local_dir/'CLIFFORD-REVIEW.json') + return dict(local=local,helpers=helpers,centres=centres,v=v,h=h,n=n, + entering_helpers=entering,entrance_rank=sum(len(w['frames'][f]) for f in w['start'][2*v:]), + terminal_codimension=terminal_codim, hyperplane_ended_helpers=len(ends), # HPE: always reported (0 for FULL-ended words) + **({'cold_hyperplane_ended_helpers': cold_ends} if cold_ends else {}), # COLD-HPE: absent without cold ends + width_inventory=dict(sorted(Counter(widths).items())),widths=widths, + local_adapters=adapters,local_primitive_bound=primitive_bound, + compiler=compiler,children=children,artifacts=artifacts, + paid_profile=checks['forward']['paid_profile'], + program_hashes={o:programhash(events) for o,events in programs.items()},semantic_artifact_sha256=artifact_identities(local_dir)) + + +def run(base, hosted, audit, out, retained_invoice=None): + local_dir=base/'split-centres' + parent=read(local_dir/'GLOBAL-TEMPLATE.json.gz') + template_path=hosted/'GLOBAL-TEMPLATE.json.gz' + template=read(template_path); summary=read(hosted/'HOSTED.json') + owners=read(audit/'OWNERS-AND-PROFILE.json'); control=read(audit/'ASYNC-AUDIT.json') + template_hash=contenthash(template_path) + assert template_hash==control['complex_template_sha256']==owners['template_sha256']==summary['template_sha256'] + assert owners['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert template['recipe']==parent['recipe'] + assert 'local_programs' not in template + assert set(template['local_providers'])==set(PIDS) + providers={pid:recount_provider(base/'providers'/pid,registry) + for pid,registry in template['local_providers'].items()} + for pid,p in providers.items(): + assert owners['provider_phase_semantic_sha256'][pid]==control['provider_phase_semantic_sha256'][pid]==p['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] + # The fresh controller admission must cite precisely these provider bytes. + for name in ('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json'): + path='providers/'+pid+'/'+name + assert summary['source_artifacts'][path]==p['artifacts'][name] + assert owners['source_artifacts'][path]==p['artifacts'][name] + # R is read from the provider words (all must agree); the parent dedicated-bank + # envelope keeps its own helper count R0 from the parent split-centres word. + assert len({p['helpers'] for p in providers.values()})==1,'providers disagree on helper count R' + v,h,m,centres=112,9,73,8 + helpers=next(iter(providers.values()))['helpers']; n=2*v+helpers + assert all((p['v'],p['h'],p['centres'],p['n'])==(v,h,centres,n) for p in providers.values()) + parent_helpers=read(local_dir/'CANONICAL-WORD.json.gz')['R'] + stages,replicas,blocks_per_stream=9,16,4 + call_count=len(template['calls']) + assert call_count==stages*replicas==control['complete_invocations'] + assert control['one_owner_per_complete_invocation'] + assert len({(c['stage'],c['replica']) for c in template['calls']})==call_count + parent_calls={(c['stage'],c['replica']):c for c in parent['calls']} + sweeps=[e for e in template['execution_schedule'] if e['kind']=='local_cover_sweep'] + assert len(sweeps)==call_count + selected=[]; selected_paid=Counter(); provider_counts=Counter(); orientation_counts=Counter() + scalar=coefficient_work=macros=0; wrapper_factors=0 + factors_per_wrapper=2*(m-1) + for c in template['calls']: + pid,orientation=c['provider_id'],c['orientation']; p=providers[pid] + old=parent_calls[(c['stage'],c['replica'])] + assert orientation==old['orientation'] and c['owners'][:2*v]==old['owners'][:2*v] + assert c['local_program_sha256']==p['program_hashes'][orientation] + r=p['local'][orientation] + scalar+=r['real_component_primitives']; coefficient_work+=r['coefficient_work_primitive_count']; macros+=r['macros'] + wrapper_factors+=(r['pre_wrappers']+r['post_wrappers'])*factors_per_wrapper + provider_counts[pid]+=1; orientation_counts[(pid,orientation)]+=1 + selected_paid.update({int(k):v for k,v in p['paid_profile'].items()}) + selected.append(dict(stage=c['stage'],replica=c['replica'],provider_id=pid,orientation=orientation, + program_sha256=c['local_program_sha256'],events=r['events'],macros=r['macros'], + real_component_primitives=r['real_component_primitives'], + coefficient_work_primitive_count=r['coefficient_work_primitive_count'], + entering_helpers=p['entering_helpers'],entrance_rank=p['entrance_rank'], + pre_wrappers=r['pre_wrappers'],post_wrappers=r['post_wrappers'])) + assert provider_counts==COUNTS + # The sweep registry is executable: no hidden use of the historical supplier. + by_call={(c['stage'],c['replica']):c for c in template['calls']} + for e in sweeps: + c=by_call[(e['stage'],e['replica'])] + assert e['provider_id']==c['provider_id'] + assert set(p['compiler'] for p in providers.values())=={64*(m+1)**3} + compiler=64*(m+1)**3 + adapters=max(p['local_adapters'] for p in providers.values()) + primitive_bound=max(p['local_primitive_bound'] for p in providers.values()) + bridge_steps=sum(event['kind']=='bridge' for event in parent['recipe']) + bridge_sweeps=sum(event['kind']=='bridge' for event in template['execution_schedule']) + assert bridge_sweeps==replicas*bridge_steps + bridge_additions=2*v*bridge_sweeps + shifts=blocks_per_stream*v*replicas; moves=2*shifts + parent_live,parent_physical=parent['live'],parent['physical'] + data_stock=2*v*blocks_per_stream*replicas + assert (parent_live-data_stock)%stages==0 + parent_banks=(parent_live-data_stock)//stages + assert parent_banks>=0 and parent_physical==parent_live+parent_helpers+centres+2 + nonlocal_items=(4*v*replicas*stages+2*v*replicas*stages+2*call_count*helpers + +sum(child['replicas'] for child in parent['idle_children'])+stages*parent_banks + +bridge_additions+shifts+moves+parent_live+parent_physical+wrapper_factors) + outside=8*nonlocal_items+64*m + parent_pervertex=(scalar+bridge_additions+shifts+moves+parent_live + +(call_count*adapters+outside)*compiler+64*parent_physical) + live,physical=template['live'],template['physical'] + mass,profile=owners['rank_mass'],owners['paid_profile'] + assert m*live-mass==owners['deficit']==5120 + assert mass==sum(int(r)*count for r,count in profile.items()) + assert physical==live+helpers+centres+2 + assert live==owners['live'] and physical==owners['physical'] + assert live<=parent_live and physical<=parent_physical + assert not template['bank_padding']['families'] + assert owners['explicit_idle_remainder_children']<=owners['source_idle_children_charged'] + # The old dedicated-bank geometry is only a conservative reserve envelope. + # Its singular program is never used as evidence for a mixed invocation. + rebased=parent_pervertex+65*(physical-parent_physical)+(live-parent_live) + used=max(rebased,parent_pervertex); retained=None; payload=512 + if retained_invoice is not None: + previous=read(retained_invoice) + assert previous['compiler']==compiler and previous['charged_prefix_bits']==payload + previous_bound=previous['conservative_pervertex_used'] + used=max(used,previous_bound+parent_pervertex) + retained=dict(sha256=filehash(retained_invoice),previous_pervertex_allowance=previous_bound, + added_complete_new_pervertex=parent_pervertex,policy='Retain old allowance and add entire fresh mixed recount.') + half=m//2; group=2**(half*half) + for i in range(1,half+1): group*=2**(2*i)-1 + stock,streamed_mass=group*physical,group*mass + logical=group*used+64; router=compiler*(logical+1)*(stock+1)**2 + g_bound,e_bound,c0=2**30000,2**100000,2**210000 + total_mass=streamed_mass+e_bound + literal=2*g_bound*stock**2+8*streamed_mass+4*stock+4+32*m + row=2*stock.bit_length()+9909+252+2*payload + maxchild=max(map(int,profile)) + inequalities=dict(local_primitive_bound=primitive_bound<2**48, + logical=logical<2**6050,router=router2*maxchild*maxchild) + assert all(inequalities.values()) + localbits=max(r['prefix_bits'] for p in providers.values() for r in p['local'].values()) + input_l2_bits=(m+1)//2 + required_prefix=localbits+input_l2_bits+call_count+bridge_sweeps+4 + assert required_prefix R helper map +# (verify.py checks the spec value against the constructor's HELPER-MAP.json) +SPOT=tuple(SPEC.get('width_spot_helpers',(270,282,294,306))) +# A pivot swap moves a kernel family's pivot role p -> x; the old pivot p becomes an ordinary cold helper and its width +# goes 8 -> 9 (construction/layers, PR641 PROOF-NOTE-PIVOT). Expected spot widths are derived from the package's pinned +# pivot-swap recipe (path and sha256 in the spec), not from free data: 9 at a swapped-out pivot, 8 otherwise. +_PKG=Path(os.environ['WITNESS_SPEC']).resolve().parents[1] +def _old_pivots(): + ps=SPEC.get('pivot_swap') + if not ps:return frozenset() + raw=(_PKG/ps['recipe']).read_bytes();import hashlib + assert hashlib.sha256(raw).hexdigest()==ps['sha256'],'pivot-swap recipe pin' + return frozenset(s['pivot']for s in json.loads(raw)['swaps']) +OLD_PIVOTS=_old_pivots() +def spot_widths(v=112): + """Expected residual widths at the spot helpers (helper indices) of the gauge44 provider.""" + return tuple(9 if 2*v+h in OLD_PIVOTS else 8 for h in SPOT) +PIDS=tuple(sorted(set(DISPATCH.values()))) +COUNTS=dict(Counter(DISPATCH.values())) +assert DISCOVER or set(PROVIDERS)==set(PIDS),'spec providers differ from dispatch providers' +def lookup(key): + """Dotted spec path; a segment may itself contain dots when it names a file (split at most once per known file suffix).""" + v=SPEC;parts=key.split('.') + while parts: + for n in range(len(parts),0,-1): + k='.'.join(parts[:n]) + if isinstance(v,dict) and k in v:v=v[k];parts=parts[n:];break + else:raise KeyError('spec has no key %s'%key) + return v +def pin(key,got): + """Strict mode: got must equal the spec value at dotted key; the failure names the key.""" + if DISCOVER: + if os.environ.get('WITNESS_RECORD'): # discovery bookkeeping only: append (key, value) for the spec writer + with open(os.environ['WITNESS_RECORD'],'a')as f:f.write(json.dumps([key,got],default=str)+chr(10)) + return got + want=lookup(key) + assert got==want,'SPEC MISMATCH %s: expected %s got %s'%(key,json.dumps(want)[:400],json.dumps(got,default=str)[:400]) + return got +def partner(pid): + """A different provider for substitution controls (next in sorted order).""" + assert len(PIDS)>1 + return PIDS[(PIDS.index(pid)+1)%len(PIDS)] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/COLD44-RECIPE.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/COLD44-RECIPE.json.gz new file mode 100644 index 0000000000..6f59d88920 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/COLD44-RECIPE.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/COMPLETION-PRIORITY.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/COMPLETION-PRIORITY.json new file mode 100644 index 0000000000..e0df30aeef --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/COMPLETION-PRIORITY.json @@ -0,0 +1,746 @@ +{ + "0,1,2,3": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 64, + 67 + ] + }, + "0,1,4,5": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 32, + 35 + ] + }, + "0,1,6,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 24, + 27 + ] + }, + "0,2,4,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 16, + 18, + 19, + 297, + 301, + 303 + ] + }, + "0,2,5,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 40, + 42, + 43, + 313, + 317, + 319 + ] + }, + "0,3,4,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 72, + 74, + 75, + 329, + 333, + 335 + ] + }, + "0,3,5,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 112, + 114, + 115, + 345, + 349, + 351 + ] + }, + "1,2,4,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 8, + 10, + 11, + 361, + 365, + 367 + ] + }, + "1,2,5,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 48, + 50, + 51, + 377, + 381, + 383 + ] + }, + "1,3,4,6": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 80, + 82, + 83, + 393, + 397, + 399 + ] + }, + "1,3,5,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "0", + "-1/2", + "1/2", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ], + [ + "0", + "0", + "0", + "0", + "1", + "0", + "0", + "1" + ], + [ + "0", + "0", + "0", + "0", + "0", + "-1/2", + "1/2", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "-1/2", + "0", + "0", + "1/2" + ] + ], + "registers": [ + 104, + 106, + 107, + 409, + 413, + 415 + ] + }, + "2,3,4,5": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 96, + 99 + ] + }, + "2,3,6,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 88, + 91 + ] + }, + "4,5,6,7": { + "rows": [ + [ + "1", + "0", + "0", + "1", + "0", + "0", + "0", + "0" + ], + [ + "-1/2", + "0", + "0", + "1/2", + "0", + "0", + "0", + "0" + ] + ], + "registers": [ + 56, + 59 + ] + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/INPUTS.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/INPUTS.json new file mode 100644 index 0000000000..2b12294b58 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/INPUTS.json @@ -0,0 +1,65 @@ +{ + "schema": "gauge44-compact-construction-v1", + "repository": "https://github.com/CrocSwap/integer-mult-bounds", + "commits": { + "main": "17ce0c79b7b51c2634b439ea5a2b754f09909693", + "pr635": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f" + }, + "files": { + "main": { + "research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PACKET-PROGRAMS.json.gz": "d833ae0390d165d7da0c639a3c7aeb77156c2ddb52447087cb49b9d03b19e9b9", + "research/complex-k492-owner-repair/vendor/direct_delivery/inputs/hamming/PROTOTYPE.json": "327d2a868043e846381aa58a33053c24425e8cad522ff401b10ec8af1d649a3f", + "research/complex-k492-owner-repair/vendor/joint_prefix/code/build_joint_prefix.py": "d7804669e528b6fd8d80195a4a2e76efac9bc67440b82c73973f4bc9fe273783", + "research/complex-k492-owner-repair/vendor/joint_prefix/data/JOINT-PREFIX.json": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2", + "research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/data/EIGHT-COLD.json": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/vendor/clifford/clifford_exact.py": "2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz": "e070ae2c78b4a1b644b418774af62b40d8d16e6ba89602f0474afb557d507c37", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_common.py": "e68d190fd436b2f3955decb590adb53344d5d4ea0a19d62d86df1e4b55ecd198", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/gk/gk_word.py": "f027a9273bcf4e0971258c160b7d3b3c196366b32a529cff6e6a0e666b03826b", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-local/static44/inputs/RAW504.json.gz": "1c6144791dbedf6427e3ee7b4c24fb05b5bf407f6346592f50f8dd8d9638108d", + "research/structural-gain/frontier-composition/global-replay/base/split-centres/FULL-WORD.json.gz": "375bd23001cd805707968005a9342827d5464e3f8e3a754197b31c46fc3f63c2", + "research/structural-gain/frontier-composition/multicold-eight-word/FULL-WORD.json.gz": "4d4a59db7f74d7505447fbb2aa87735771cca1d04a0afafa455d21bd8dbf1f77" + }, + "pr635": { + "research/complex-571-cold14-st2/code/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-571-cold14-st2/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-571-cold14-st2/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-571-cold14-st2/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-571-cold14-st2/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-571-cold14-st2/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-571-cold14-st2/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-571-cold14-st2/data/TRI-SCHEDULE.json": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e", + "research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json": "9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a", + "research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json": "e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1" + }, + "delta": { + "COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92" + } + }, + "word_content_sha256": { + "shadow-early": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d", + "shadow-prefix": "6c361b33967bb62d878b3acef44a4ac2c70970e99f36a11906b03811495de533", + "raw": "0ac47f92fc2e3f5aa457d78f7b8a5c785bf140c546932b9dfcd9e610ad319180", + "port0": "7086d4309f145f0bf85b97f567e2cbeeaca9fc5011f62c86c805bfadeb0300fc", + "port1": "8f47545698a11072f8c6a0b50ae9c8acf8e4e2b0e35a0e8c672bbca216b04534", + "port2": "4e4919c140e07f6c820bea4aae83565b3b4967ffbfbb907611216ff6e2e6105d", + "port3": "9774dca3e4295e2eb9171a9cf34e1973bc72bad38eddec2cc0fc498bd9e041f3", + "regroup": "989082402d2292a18328e86927c0a12d34fcab18ef4ff724bd1ce691cf4e7531", + "hpe": "42fb8b3aa314593fe976820cf65824f5fce0ee4f95281796992d4809709864cc", + "cold44": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290" + }, + "helper_map_sha256": "688d5115b221be68c96970822cc04ff698e2a84432fa7db9cb59057f6fe55def", + "canonical_content_sha256": "e6daee410e04d5e023faf21144081534ad222d334ce786e6b5f52407e6b3c41f", + "local_program_sha256": { + "forward": "d17399c8c7458bb7110d8596fab5f769cd4cb3733a3042277fa08bf03f42d6c9", + "backward": "4772df0663f88cc218fd7254eb202f46daf136c06e9e96c19ed8ea218b545dc4" + }, + "clifford_recipes_sha256": "0a60293f43d88dbb1b321f02e61204afe1b6272b1346968ef35705caea1e4771" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/LICENSE b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/LICENSE new file mode 100644 index 0000000000..261eeb9e9f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/NOTICE.md new file mode 100644 index 0000000000..16b0507070 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/NOTICE.md @@ -0,0 +1,9 @@ +# Construction delta notice + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. + +`construct_gauge_xcentre.py` modifies PR635's credited `construct_k_triangle.py`, which in turn extends icekylinx's PR531/PR514/PR425 factory lineage. Its original source comments are retained. The K-triangle schedule and the upstream porting, JP8 frame, kernel and HPE procedures are reused from the pinned source checkouts and are not new contributions of this delta. + +The new source-copy exchanges, complementary factory basis, carrier assignment, exact cold44 constructor and compact reproduction driver are described in `../CONSTRUCTION.md`. + +`UPSTREAM-NOTICE.md` is the complete unmodified notice from the pinned PR635 package. `LICENSE` is that package's Apache-2.0 license. All further notices and source credits of the referenced upstream packages remain applicable and are retained in the source checkouts rather than vendored again here. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/REBUILD-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/REBUILD-CHECKS.json new file mode 100644 index 0000000000..0801f35da7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/REBUILD-CHECKS.json @@ -0,0 +1,51 @@ +{ + "status": "PASS_COMPACT_SCALAR_REPRODUCTION_AND_FROZEN_RECIPE_SPLICE", + "steps": [ + { + "step": "shadow-early", + "exit_code": 0, + "seconds": 0.355 + }, + { + "step": "shadow-prefix", + "exit_code": 0, + "seconds": 0.511 + }, + { + "step": "gauge-forward", + "exit_code": 0, + "seconds": 0.527 + }, + { + "step": "port0", + "exit_code": 0, + "seconds": 0.468 + }, + { + "step": "port1", + "exit_code": 0, + "seconds": 0.636 + }, + { + "step": "port2", + "exit_code": 0, + "seconds": 0.474 + }, + { + "step": "port3", + "exit_code": 0, + "seconds": 0.497 + }, + { + "step": "cold44-exact", + "exit_code": 0, + "seconds": 2.754 + } + ], + "constructor_seconds": 6.222, + "word_content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "all_step_input_and_output_pins_checked": true, + "regenerated_recipe_equals_frozen_recipe": true, + "frozen_splice_matches_exact_constructor": true, + "scope": "One portable scalar reconstruction from pinned main and PR635 inputs; existing native and independent mathematical receipts accompany the package separately." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/UPSTREAM-NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/UPSTREAM-NOTICE.md @@ -0,0 +1,34 @@ +# Attribution and scope + +Four verified provider types are offered to every call: PR571's prefix word with twelve multi-cut cold kernels (PR568's unchanged constructor), the same word with forty width-five entrance promotions (PR569's unchanged frame constructor) before those kernels, PR575's plain joint-prefix provider, and PR568's eight-cold provider. A window MILP with an exact per-pattern model chooses the dispatch and a literal owner map. PR583's six source-bound kernel frame coalescences (its unchanged constructor and negative controls) are applied to every PR571-prefix provider word (ck and atm3), followed by two further coalescences that each first move one addition past two commuting additions (package code/build_gate_moves.py, extending PR583's constructor); a final hyperplane_end step (package code/build_hpe.py) then runs 46 single-gate cleanups h -= p right after part B at the dim-8 join U of their registers, so 46 width-8 entering helpers per call end at U with width 7; each such gate commutes with every earlier cleanup gate on its registers (for 8 of them the partner's one earlier gate x -= p only reads p), and the reordered program is replayed exactly. A window MILP (exact windows, RINS around an LP vertex) gives the dispatch ck 45 / atm3 21 / jp8 6 and the literal owner map. + +Pinned external sources (unchanged; `verify.py` checks their manifests and every file it uses): +- PR568 (`research/complex-multicold`, commit `71c99ac935a33bb7b59a1b4a7af8725a939b0b90`). +- PR571 (`research/structural-gain`, commit `b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3`). +- PR569 (`research/larger-gain`, commit `897213a855b7fb8a1b8b0e552a2f5c42e6c1b326`). +- PR575 (`research/complex-joint-prefix`, commit `eac6f7e378ab622dac50a2fd4b7ef6eab014de44`). +- PR583 (`research/kernel-frame-coalescing`, commit `89be768f0157f5a3d8e4db69cf1748768605eac9`). + +Provider construction is described as typed steps in `data/SPEC.json` (`build`); `verify.py` runs only allowlisted step types with their paired omission audits and checks every input and output content hash. `code/` holds the spec-driven global admission scripts adapted from PR571's `frontier-composition/global-code/` (OpenAI Codex assisted, Apache-2.0): every expected value is read from `data/SPEC.json` and compared only after independent recomputation. `code/generated_identity.py` and `code/generated_identity_controls.py`, and the decompressed-content artifact identities in the bind, audit, invoice, assembly and phase-timing scripts, are taken unchanged from PR586 by chafreaky (`research/promoted-kernel-coalescing`, commit `4846fee5b06af770e9b3a10c36200f673d656725`, OpenAI Codex assisted, Apache-2.0), including its proof-content and reference/metadata mutation controls; the normalization of descriptive width metadata after frame changes follows the same PR. + +In PR601, the owner map was nominated by a HiGHS window MILP (adapted from PR569's `global/nominate_width7.py`) with lazy cross-time Hall cuts; this package's re-solved map is described below. Neither is an admission dependency. + +DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. (The PR601 package this one starts from states: "Prepared by Claude Code (Anthropic) research agents.") Apache-2.0 applies; LICENSE is included. All notices, licenses, source pins and AI disclosures of the pinned sources and their ancestry are retained in those packages and are not replaced by this notice. All inherited conditional assumptions remain conditional. + +**This package (complex-571-cold14, DreamingOfClouds).** It starts from PR601 (jeremykothe2, `research/complex-571-hpem46`, commit `529ab7dcb59d5ea7a5798e9e06cf5b3aee8a1550`). Everything above is kept unchanged except the following: +- every provider chain (ck, atm3, jp8) gains the typed step `cold_end` (`code/build_cold_end.py`, `code/cold_end_controls.py`; recipes `data/recipes/*-cold_end.json.gz`); +- the generalised native chain and the global admission scripts accept cold helpers that end below FULL (with `0:U` wrappers), a refactored exact cleanup, and check the wrapper order; +- `data/PLAN.json` / `data/OWNERS.json.gz` (dispatch and literal owner map) come from a relocate/swap/ejection-chain/provider-flip annealing search started from PR601's map, refined by an exact pattern-restricted owner model (CP-SAT) with a literal edge-colouring expansion (not an admission dependency); +- `data/SPEC.json` holds the expected values, recorded by a discovery run and then checked by a strict run. + +The cold-end construction (a row-plus-column cone condition for low-frame ends, a rank-0 dirt-spread premix and multi-gate lower-frame cleanup) builds on PR591 / PR592 / PR593 / PR601 (jeremykothe2) and our PR599 (Lean: multi-gate and cold hyperplane-end tails). DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. Build on this at your own risk. + +**This package (complex-571-cold14-b3, jeremykothe2).** It is PR604's `complex-571-cold14` (DreamingOfClouds) with ColdBeyond's second cold end per block (two new `cold_end` A-gate primitives, `PROOF-NOTE.md`), ColdSupply's E1 entering pair and reviewed controls, a free dispatch (jp8 ×60, atm3 ×12) and a literal owner map from an exact per-time-Hall window MIP. All other construction, code, controls and proofs are PR604's and earlier contributors', unchanged. + +**This package (complex-571-cold14-k492).** It is complex-571-cold14-b3 with these changes: +- **K-triangle base words.** The leaver-read K-triangle skeleton atom and its read schedule (`data/TRI-SCHEDULE.json`) are by AtomScout, a Claude Code research agent. `code/construct_k_triangle.py` is PR531's `code/construct_504.py` (icekylinx, OpenAI Codex / GPT assisted, Apache-2.0; pinned source `direct_delivery`) extended with that atom. +- **Ported chains.** The PR604/B3 chains are ported stage by stage onto the K-triangle words by `code/build_port_stage.py` (Port480, a Claude Code research agent). `code/build_frame_regroup.py` extends PR583's `build_frames.py` (chafreaky). +- **Helper count R.** The generalisation of the global scripts to the provider helper count R is by GlobalR (a Claude Code research agent), with AtomReviewer's fixes (PROOF-NOTE-R.md). +- **Owner map.** The owner map, the cold_end recipes on the K-triangle words and the package assembly are by Stack492, Port480 and ColdBeyond (Claude Code research agents). + +Build on this at your own risk. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/LOCAL-PINS-barch-U8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/LOCAL-PINS-barch-U8.json new file mode 100644 index 0000000000..4028b95c0e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/LOCAL-PINS-barch-U8.json @@ -0,0 +1,50 @@ +{ + "word": "U8", + "barch_controls": [ + "C0_identity", + "recipe", + "drop_restore", + "restore_full", + "drop_preread", + "donation_after", + "drop_restore@231", + "restore_full@231", + "drop_preread@231", + "donation_after@231", + "drop_restore@230", + "restore_full@230", + "drop_preread@230", + "donation_after@230", + "drop_restore@232", + "restore_full@232", + "drop_preread@232", + "donation_after@232", + "drop_restore@236", + "restore_full@236", + "drop_preread@236", + "donation_after@236", + "drop_restore@226", + "restore_full@226", + "drop_preread@226", + "donation_after@226", + "drop_restore@228", + "restore_full@228", + "drop_preread@228", + "donation_after@228", + "drop_restore@62", + "restore_full@62", + "drop_preread@62", + "donation_after@62", + "drop_restore@238", + "restore_full@238", + "drop_preread@238", + "donation_after@238" + ], + "layer_controls": 95, + "canonical_sha256": "24db880b7dab31e6af4eec8a1aba1bbbae29cd50d9a7b77cf0e9b571b3e5ae7c", + "program_sha256": { + "forward": "83d65a63f51bd1ce7f3dd4e4d3597311e065b4775796cd87aea3e3a62689047c", + "backward": "e4e483b764e9a85f84a04425e57d73ecdcc72eb2e4d97a64f17d9da58fa5ace0" + }, + "clifford_recipes_sha256": "4629507dcbdd516457c001ff8f9dbe750d1a0cbfa5cfa3c6be003d45804ba0c5" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/RECIPE-U8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/RECIPE-U8.json new file mode 100644 index 0000000000..ee215a805a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/RECIPE-U8.json @@ -0,0 +1,1528 @@ +{ + "base_sha256": "1e1d99ba7aab877d6b573c41f7030ee73de9a52fee51d0a822ddaae71251999f", + "B_delete": [ + 5, + 7, + 9, + 11, + 13, + 15, + 17, + 19, + 878, + 880, + 886, + 888, + 894, + 896, + 902, + 904, + 910, + 912, + 918, + 920, + 926, + 928, + 934, + 936, + 1215, + 1217, + 1223, + 1225, + 1231, + 1233, + 1239, + 1241, + 1247, + 1249, + 1255, + 1257, + 1263, + 1265, + 1271, + 1273 + ], + "B_insert": [ + [ + 5, + [ + "add", + 125, + 450, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 7, + [ + "add", + 121, + 451, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 9, + [ + "add", + 181, + 452, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 11, + [ + "add", + 177, + 453, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 13, + [ + "add", + 117, + 454, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 15, + [ + "add", + 113, + 455, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 17, + [ + "add", + 189, + 456, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 19, + [ + "add", + 185, + 457, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 676, + [ + "add", + 484, + 231, + 1, + 1, + [ + 386, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 677, + [ + "add", + 485, + 226, + 1, + 1, + [ + 388, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 693, + [ + "add", + 496, + 450, + 1, + 1, + [ + 260, + 132, + 70, + 38, + 24, + 1 + ] + ] + ], + [ + 694, + [ + "add", + 497, + 451, + 1, + 1, + [ + 260, + 132, + 64, + 32, + 24, + 1 + ] + ] + ], + [ + 711, + [ + "add", + 508, + 230, + 1, + 1, + [ + 390, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 712, + [ + "add", + 509, + 228, + 1, + 1, + [ + 390, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 729, + [ + "add", + 520, + 452, + 1, + 1, + [ + 268, + 140, + 64, + 38, + 30, + 1 + ] + ] + ], + [ + 730, + [ + "add", + 521, + 453, + 1, + 1, + [ + 266, + 138, + 70, + 32, + 30, + 1 + ] + ] + ], + [ + 747, + [ + "add", + 532, + 232, + -2, + 1, + [ + 385, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 748, + [ + "add", + 533, + 62, + -2, + 1, + [ + 385, + 65, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 763, + [ + "add", + 544, + 454, + -2, + 1, + [ + 267, + 139, + 65, + 33, + 25, + 7 + ] + ] + ], + [ + 764, + [ + "add", + 545, + 455, + -2, + 1, + [ + 267, + 139, + 64, + 32, + 25, + 7 + ] + ] + ], + [ + 779, + [ + "add", + 556, + 236, + -2, + 1, + [ + 385, + 65, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 780, + [ + "add", + 557, + 238, + -2, + 1, + [ + 385, + 64, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 795, + [ + "add", + 568, + 456, + -2, + 1, + [ + 258, + 130, + 64, + 33, + 24, + 7 + ] + ] + ], + [ + 796, + [ + "add", + 569, + 457, + -2, + 1, + [ + 259, + 131, + 65, + 32, + 24, + 7 + ] + ] + ], + [ + 1215, + [ + "add", + 125, + 450, + -1, + 2, + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1217, + [ + "add", + 121, + 451, + -1, + 2, + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1223, + [ + "add", + 149, + 231, + -1, + 2, + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1225, + [ + "add", + 145, + 226, + -1, + 2, + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1231, + [ + "add", + 181, + 452, + -1, + 2, + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1233, + [ + "add", + 177, + 453, + -1, + 2, + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1239, + [ + "add", + 221, + 230, + -1, + 2, + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1241, + [ + "add", + 217, + 228, + -1, + 2, + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1247, + [ + "add", + 117, + 454, + 1, + 1, + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1249, + [ + "add", + 113, + 455, + 1, + 1, + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 1255, + [ + "add", + 157, + 232, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1257, + [ + "add", + 153, + 62, + 1, + 1, + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 1263, + [ + "add", + 189, + 456, + 1, + 1, + [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 1265, + [ + "add", + 185, + 457, + 1, + 1, + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1271, + [ + "add", + 213, + 236, + 1, + 1, + [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 1273, + [ + "add", + 209, + 238, + 1, + 1, + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + ] + ] + ], + "B_frames": { + "1340": [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ], + "1343": [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ], + "1346": [ + 260, + 132, + 68, + 36, + 24, + 2, + 1 + ], + "1349": [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ], + "1352": [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ], + "1355": [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ], + "1358": [ + 256, + 130, + 64, + 34, + 24, + 4, + 1 + ], + "1361": [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ], + "1364": [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ], + "1367": [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ], + "1370": [ + 256, + 128, + 64, + 38, + 18, + 12, + 1 + ], + "1373": [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ], + "1376": [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ], + "1379": [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ], + "1382": [ + 262, + 128, + 70, + 38, + 20, + 10, + 1 + ], + "1385": [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ], + "1388": [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ], + "1391": [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ], + "1394": [ + 257, + 129, + 65, + 33, + 19, + 10, + 7 + ], + "1397": [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ], + "1400": [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ], + "1403": [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ], + "1406": [ + 256, + 129, + 64, + 33, + 18, + 11, + 7 + ], + "1409": [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ], + "1412": [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ], + "1415": [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ], + "1418": [ + 256, + 128, + 64, + 33, + 24, + 5, + 2 + ], + "1421": [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ], + "1424": [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ], + "1427": [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ], + "1430": [ + 257, + 128, + 65, + 33, + 24, + 4, + 3 + ], + "1433": [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + }, + "tail_insert": [ + [ + 7, + [ + "add", + 496, + 450, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 6, + [ + "add", + 497, + 451, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 5, + [ + "add", + 520, + 452, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 4, + [ + "add", + 521, + 453, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 3, + [ + "add", + 544, + 454, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 2, + [ + "add", + 545, + 455, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 1, + [ + "add", + 568, + 456, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 0, + [ + "add", + 569, + 457, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ] + ], + "cleanup_prepend": [ + [ + "add", + 484, + 231, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 485, + 226, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 508, + 230, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 509, + 228, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 532, + 232, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 533, + 62, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 556, + 236, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 557, + 238, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ] + ], + "local_profile": { + "1": 2548, + "2": 338, + "3": 446, + "4": 162, + "5": 72, + "8": 8 + }, + "expect_sha256": "090fd574747fbf9628e70cb9beb792732914cfa52e1df147579fe4dbccc68c5a", + "priced": { + "dk_ideal": 3.140480230774418e-07, + "dP": { + "5": 16, + "4": -32, + "3": 16 + } + }, + "variants": [ + { + "X": 231, + "E": 450, + "dsides": [ + 878, + 886 + ], + "donors": [ + 450, + 231 + ], + "hold": [ + 496, + 484 + ], + "kept": { + "1215": 450, + "1223": 231 + }, + "when": "mid" + }, + { + "X": 230, + "E": 452, + "dsides": [ + 894, + 902 + ], + "donors": [ + 452, + 230 + ], + "hold": [ + 520, + 508 + ], + "kept": { + "1231": 452, + "1239": 230 + }, + "when": "mid" + }, + { + "X": 232, + "E": 454, + "dsides": [ + 910, + 918 + ], + "donors": [ + 454, + 232 + ], + "hold": [ + 544, + 532 + ], + "kept": { + "1247": 454, + "1255": 232 + }, + "when": "mid" + }, + { + "X": 236, + "E": 456, + "dsides": [ + 926, + 934 + ], + "donors": [ + 456, + 236 + ], + "hold": [ + 568, + 556 + ], + "kept": { + "1263": 456, + "1271": 236 + }, + "when": "mid" + }, + { + "X": 226, + "E": 451, + "dsides": [ + 880, + 888 + ], + "donors": [ + 451, + 226 + ], + "hold": [ + 497, + 485 + ], + "kept": { + "1217": 451, + "1225": 226 + }, + "when": "mid" + }, + { + "X": 228, + "E": 453, + "dsides": [ + 896, + 904 + ], + "donors": [ + 453, + 228 + ], + "hold": [ + 521, + 509 + ], + "kept": { + "1233": 453, + "1241": 228 + }, + "when": "mid" + }, + { + "X": 62, + "E": 455, + "dsides": [ + 912, + 920 + ], + "donors": [ + 455, + 62 + ], + "hold": [ + 545, + 533 + ], + "kept": { + "1249": 455, + "1257": 62 + }, + "when": "mid" + }, + { + "X": 238, + "E": 457, + "dsides": [ + 928, + 936 + ], + "donors": [ + 457, + 238 + ], + "hold": [ + 569, + 557 + ], + "kept": { + "1265": 457, + "1273": 238 + }, + "when": "mid" + } + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/build_tri.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/build_tri.py new file mode 100644 index 0000000000..11c4371114 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/build_tri.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python3 +"""build_tri.py BASE_WORD RECIPE OUT_WORD [--control NAME] + +Standard library only. Applies a NewBArch triangle-hybrid recipe to the X4 word (1e1d99ba) and writes a FULL-WORD.json.gz. +Recipe keys (all indices refer to the BASE word): + base_sha256 sha256 of the decompressed base JSON (checked) + B_delete list of B indices removed + B_insert list of [pos, gate]: gate (with frame) inserted before base B gate pos (list order kept) + B_frames {index: frame}: explicit re-chosen frame of a kept base B gate + tail_insert list of [early_index, gate]: gates appended to cleanup in list order, then registered as early cleanup at early_index (ascending) + cleanup_prepend list of gates prepended to the full cleanup (early indices are shifted) + local_profile report.local_profile of the result + expect_sha256 sha256 of the decompressed result (checked unless a control is requested) +Controls (each must be REJECTED by audit_local; see controls.json): + drop_restore omit cleanup_prepend (end value of the holder not restored) + restore_full move tail_insert gates into the full cleanup (FULL frame) instead of early cleanup + drop_preread omit the inserted entrance pre-reads (inserted target += E gates at pos < first donation) + donation_after insert each donation after its reading target's read instead of before it + NAME@X the same control restricted to the instance whose packet register is X (recipe 'variants') +""" +import sys, json, gzip, hashlib, copy + +FULL = [256, 128, 64, 32, 16, 8, 4, 2, 1] + +def load(p): + raw = gzip.decompress(open(p, 'rb').read()); return json.loads(raw), hashlib.sha256(raw).hexdigest() + +def apply(w, rc, control=None): + w = copy.deepcopy(w); B = w['B'] + S = None + if control and '@' in control: # per-instance control: name@X mutates only instance X's gates + control, x = control.split('@'); x = int(x) + vv = [s for s in rc['variants'] if s['X'] == x][0]; S = {vv['X'], vv['E'], *vv['hold']} + sel = lambda g: S is None or bool({g[1], g[2]} & S) + dele = set(rc['B_delete']); fr = {int(k): f for k, f in rc['B_frames'].items()} + ins = [list(x) for x in rc['B_insert']] + don = [x for x in ins if not (112 <= x[1][1] < 224)] # donations: destination is not a target + first_don = min(p for p, _ in don) if don else 0 + if control == 'drop_preread': + ins = [x for x in ins if not (x[0] < first_don and 112 <= x[1][1] < 224 and sel(x[1]))] + if control == 'donation_after': + new = [] + for p, g in ins: + if g in [d[1] for d in don] and sel(g): + rd = [i for i, e in enumerate(B) if i >= p and e[0] == 'add' and e[2] == g[1] and 112 <= e[1] < 224] + p = rd[0] + 1 + new.append([p, g]) + ins = new + at = {} + for p, g in ins: at.setdefault(p, []).append(list(g)) + out = [] + for i, e in enumerate(B): + out.extend(at.get(i, [])) + if i in dele: continue + e = list(e) + if i in fr: e = e[:-1] + [list(fr[i])] + out.append(e) + out.extend(at.get(len(B), [])) + w['B'] = out + pre = [list(g) for g in rc['cleanup_prepend'] if not (control == 'drop_restore' and sel(g))] + tails = [list(x) for x in rc['tail_insert']] + if control == 'restore_full': + pre = pre + [g[1][:-1] + [FULL] for g in tails if sel(g[1])]; tails = [g for g in tails if not sel(g[1])] + C = pre + w['cleanup']; sh = len(pre) + early = [[i + sh, U] for i, U in w['early_cleanup']] + idx = [] + for j, g in tails: C.append(list(g)); idx.append((j, len(C) - 1, list(g[-1]))) # appended in recipe order + for j, ci, U in sorted(idx): early.insert(j, [ci, U]) # then registered at their early index + w['cleanup'] = C; w['early_cleanup'] = early + w['report'] = dict(w['report']); w['report']['local_profile'] = rc['local_profile'] + return w + +def main(): + a = sys.argv[1:]; control = None + if '--control' in a: k = a.index('--control'); control = a[k + 1]; del a[k:k + 2] + base, out = a[0], a[2] + w, sha = load(base); rc = json.load(open(a[1])) + if sha != rc['base_sha256']: raise SystemExit('base sha mismatch ' + sha) + w2 = apply(w, rc, control) + raw = json.dumps(w2, separators=(',', ':')).encode() + open(out, 'wb').write(gzip.compress(raw, mtime=0)) + s = hashlib.sha256(raw).hexdigest() + if control is None and s != rc['expect_sha256']: raise SystemExit('result sha mismatch ' + s) + print(json.dumps(dict(control=control, sha256=s))) + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/reproduce_barch.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/reproduce_barch.py new file mode 100644 index 0000000000..22f15b491d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/reproduce_barch.py @@ -0,0 +1,92 @@ +#!/usr/bin/env python3 +"""Rebuild the B0 word (NewBArch's width-neutral triangle-hybrid B-delivery rewrite on X4) and its native locals. + +Input: a fresh `construction/jx/reproduce_jx.py` output directory; its X4 word (1e1d99ba...) is pinned there and by +RECIPE-B0.json (base_sha256). Steps, each checked exactly: + 1. barch: build_tri.py (standard library only; NewBArch) applies the recipe's explicit B deletes and inserts (with frames), + re-chosen B frames, early-cleanup tails and FULL-cleanup restores; it checks the base and result shas (d9ba0942...). + 2. barch-controls: run_controls.py rebuilds C0 (identity, must reproduce the input), the recipe word (must PASS #645's + independent audit_local.py) and four mutants (drop_restore, restore_full, drop_preread, donation_after), globally + and for each recipe variant (NAME@X); each mutant must FAIL audit_local with its pinned message. Every outcome is + required and the control set is pinned (LOCAL-PINS). + 3. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant) on the B0 word; count pinned. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs; canonical word, local programs and + Clifford recipes pinned (LOCAL-PINS-barch-.json). +Apache-2.0. Driver by ColdWitness around NewBArch's builder and controls. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +PKG = HERE.parents[1] +P6 = HERE.parent / 'layers_p6n' +MUTANTS = ('drop_restore', 'restore_full', 'drop_preread', 'donation_after') + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--jx-dir', type=Path, required=True, help='construction/jx/reproduce_jx.py output') + ap.add_argument('--recipe', default='U8', help='RECIPE-.json and LOCAL-PINS-barch-.json') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-barch-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + inp = a.jx_dir.resolve() / 'jx/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['base_sha256'], 'input must be the pinned X4 word' + (out / 'barch').mkdir(); word = out / 'barch/FULL-WORD.json.gz' + run('barch', HERE / 'build_tri.py', inp, rfile, word, portable=False) + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['expect_sha256'] + run('barch-controls', HERE / 'run_controls.py', inp, rfile, PKG / 'independent/audit_local.py', out / 'barch-controls', portable=False) + res = read(out / 'barch-controls/controls.json') + want = ['C0_identity', 'recipe', *MUTANTS] + [m + '@' + str(v['X']) for v in rec.get('variants', []) for m in MUTANTS] + assert sorted(res) == sorted(want) == sorted(pins['barch_controls']) and all(x['ok'] for x in res.values()), res + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/run_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/run_controls.py new file mode 100644 index 0000000000..f1ce999bfb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/barch/run_controls.py @@ -0,0 +1,33 @@ +#!/usr/bin/env python3 +"""run_controls.py BASE_WORD RECIPE AUDIT_LOCAL_PY OUTDIR : C0 identity, the recipe word (must PASS) and the four negative +controls (each must FAIL audit_local with its pinned message prefix). Standard library only; writes OUTDIR/controls.json.""" +import sys, json, subprocess, os, gzip, hashlib +base, recipe, audit, out = sys.argv[1:5] +here = os.path.dirname(os.path.abspath(__file__)); os.makedirs(out, exist_ok=True) +# pinned rejection sites (observed on RECIPE-V1 and RECIPE-B0; the failing rows are recorded in controls.json): the holder 485 is not restored; the low-end restore 497-=451 moved to the +# FULL cleanup runs after 451's own tail and leaves 497 wrong; without the pre-read (or with the donation after the read) +# the entering helper's start value reaches a target. +EXPECT = {None: 'PASS', 'drop_restore': 'all-column endpoint failure (False, ', + 'restore_full': 'all-column endpoint failure (False, ', + 'drop_preread': 'nonzero entrance response', 'donation_after': 'nonzero entrance response'} +res = {} +ident = os.path.join(out, 'C0.json') +json.dump(dict(json.load(open(recipe)), B_delete=[], B_insert=[], B_frames={}, tail_insert=[], cleanup_prepend=[], + local_profile=json.loads(gzip.decompress(open(base, 'rb').read()))['report']['local_profile'], + expect_sha256=hashlib.sha256(gzip.decompress(open(base, 'rb').read())).hexdigest()), open(ident, 'w')) +r = subprocess.run([sys.executable, '-B', os.path.join(here, 'build_tri.py'), base, ident, os.path.join(out, 'C0.json.gz')], capture_output=True, text=True) +res['C0_identity'] = dict(ok=r.returncode == 0, out=r.stdout.strip() or r.stderr.strip()[-200:]) +ctls = list(EXPECT) + [c + '@' + str(s['X']) for s in json.load(open(recipe)).get('variants', []) for c in EXPECT if c] +for ctl in ctls: + name = ctl or 'recipe'; wp = os.path.join(out, name + '.json.gz') + cmd = [sys.executable, '-B', os.path.join(here, 'build_tri.py'), base, recipe, wp] + (['--control', ctl] if ctl else []) + b = subprocess.run(cmd, capture_output=True, text=True) + if b.returncode: res[name] = dict(ok=False, build=b.stderr[-300:]); continue + a = subprocess.run([sys.executable, '-B', audit, '--word', wp, '--output', os.path.join(out, name + '.audit.json')], capture_output=True, text=True) + txt = a.stdout + a.stderr + if ctl is None: ok = a.returncode == 0 and 'PASS_INDEPENDENT' in txt + else: ok = a.returncode != 0 and EXPECT[ctl.split('@')[0]] in txt + res[name] = dict(ok=ok, build=json.loads(b.stdout), audit_tail=txt.strip().splitlines()[-1][:200]) +json.dump(res, open(os.path.join(out, 'controls.json'), 'w'), indent=1) +print(json.dumps({k: x['ok'] for k, x in res.items()})) +sys.exit(0 if all(x['ok'] for x in res.values()) else 1) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/build_gauge_cold44.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/build_gauge_cold44.py new file mode 100644 index 0000000000..72d2945f6b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/build_gauge_cold44.py @@ -0,0 +1,210 @@ +"""Exact dyadic cold-end realization of the source-branch/factory-completion word. +Prepared for icekylinx with OpenAI Codex assistance; Apache-2.0. +This is a constructor: independent endpoint/frame audits remain required. +""" +from pathlib import Path +from fractions import Fraction as Q +from collections import Counter +import copy,gzip,json,hashlib,time,sys,argparse,importlib.util +D=Path(__file__).resolve().parent +ap=argparse.ArgumentParser(description=__doc__) +for name in ('input','out','hamming','upstream-package'):ap.add_argument('--'+name,type=Path,required=True) +args=ap.parse_args();WPATH=args.input;OUT=args.out +assert __debug__, 'Assertions are required' +OUT.mkdir(exist_ok=False,parents=True) +def rd(p):return json.loads(gzip.decompress(p.read_bytes()) if p.suffix=='.gz' else p.read_bytes()) +w=rd(WPATH);v=w['report']['v'];n=2*v+w['report']['R'];N=list(range(v))+list(range(2*v,n));ix={x:i for i,x in enumerate(N)} +F9=[256,128,64,32,16,8,4,2,1];t0=time.monotonic() +def basis(vs): + d={} + for a in vs: + for k in sorted(d,reverse=True): + if a>>k&1:a^=d[k] + if a: + k=a.bit_length()-1 + for j in d: + if d[j]>>k&1:d[j]^=a + d[k]=a + return tuple(d[k] for k in sorted(d,reverse=True)) +def inside(a,b):return basis(a+b)==b +def regs(e):return e[1:3] if e[0]=='add' else e[1:2] +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]=-e[3] + else:e[2],e[3]=e[3],e[2] + return e +def apply(e,M,mapping=None): + t=mapping[e[1]] if mapping is not None else e[1] + if e[0]=='add': + s=mapping[e[2]] if mapping is not None else e[2];q=Q(e[3],e[4]) + for j,a in M[s].items(): + x=M[t].get(j,Q(0))+q*a + if x:M[t][j]=x + else:M[t].pop(j,None) + else: + q=Q(e[2],e[3]);M[t]={j:q*a for j,a in M[t].items()} +def rref(A): + a=[list(map(Q,row)) for row in A];nr=len(a);nc=len(a[0]) if nr else 0;row=0;piv=[] + for c in range(nc): + k=next((i for i in range(row,nr) if a[i][c]),None) + if k is None:continue + a[row],a[k]=a[k],a[row];q=a[row][c];a[row]=[x/q for x in a[row]] + for i in range(nr): + if i!=row and a[i][c]:q=a[i][c];a[i]=[x-q*y for x,y in zip(a[i],a[row])] + piv.append(c);row+=1 + if row==nr:break + return a,piv +def rank(A):return len(rref(A)[1]) +def null(A,nc=None): + if A:a,piv=rref(A);nc=len(a[0]) + else:a=[];piv=[];assert nc is not None + free=[j for j in range(nc) if j not in piv];out=[[Q(0) for j in free] for i in range(nc)] + for k,c in enumerate(free):out[c][k]=Q(1) + for i,c in enumerate(piv): + for k,j in enumerate(free):out[c][k]=-a[i][j] + return out +def mm(A,B): + if not A:return [] + if not B:return [[] for row in A] + bt=list(zip(*B));return [[sum((a*b for a,b in zip(row,col)),Q(0)) for col in bt] for row in A] +def tr(A):return list(map(list,zip(*A))) +def inv(A): + n0=len(A);a,p=rref([row+[Q(i==j) for j in range(n0)] for i,row in enumerate(A)]) + assert p[:n0]==list(range(n0)) + return [row[n0:] for row in a] +def unit(q): + if not q:return False + a=abs(q.numerator);b=q.denominator + return not a&(a-1) and not b&(b-1) +def dyadic(q):return not q.denominator&(q.denominator-1) +def opadd(t,s,q,F):return ['add',t,s,q.numerator,q.denominator,list(F)] +def opscale(t,q,F):return ['scale',t,q.numerator,q.denominator,list(F)] +def eliminate(M,ids,F,skip=()): + """Return legal dyadic row operations taking an invertible sparse matrix to I.""" + skip=set(skip);ops=[];dim=len(M) + def add(i,j,q): + if q: + assert dyadic(q);e=opadd(ids[i],ids[j],q,F);ops.append(e) + for c,x in M[j].items(): + z=M[i].get(c,Q(0))+q*x + if z:M[i][c]=z + else:M[i].pop(c,None) + def scale(i,q): + if q!=1: + assert unit(q);ops.append(opscale(ids[i],q,F));M[i]={c:q*x for c,x in M[i].items()} + def swap(i,j): + if i!=j: + add(i,j,Q(1));add(j,i,Q(-1));add(i,j,Q(1));scale(j,Q(-1)) + for c in range(dim): + if c in skip: + assert M[c]=={c:Q(1)} and all(not M[i].get(c) for i in range(dim) if i!=c) + continue + cand=[i for i in range(c,dim) if i not in skip and M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + if k is None: + # Elementary Euclidean row additions reduce the pivot-column numerator gcd. + assert cand,('singular',c) + while k is None: + cand.sort(key=lambda i:abs(M[i][c]));a=cand[0] + b=next((i for i in cand[1:] if M[i][c]),None) + if b is None:raise ValueError(('non-dyadic determinant pivot',c,M[a][c])) + rat=M[b][c]/M[a][c];q=rat.numerator//rat.denominator + if q==0:q=1 if rat>0 else -1 + add(b,a,Q(-q));cand=[i for i in cand if M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + swap(c,k);scale(c,1/M[c][c]) + for i in range(dim): + if i!=c and M[i].get(c): + assert i not in skip + add(i,c,-M[i][c]) + assert all(row=={i:Q(1)} for i,row in enumerate(M)) + return ops +def realize(A,ids,F): + M=[{j:Q(x) for j,x in enumerate(row) if x} for row in A] + return [inverse(e) for e in reversed(eliminate(M,ids,F))] +# Reconstruct the actual non-target map after the inherited HPE tail. +inherited_tail=[w['cleanup'][i][:-1]+[list(f)] for i,f in w.get('early_cleanup',[])] +mainN=[e for e in w['A']+w['B'] if not v<=e[1]<2*v] +M=[{i:Q(1)} for i in range(len(N))] +for e in mainN+inherited_tail:apply(e,M,ix) +MI=[{i:Q(1)} for i in range(len(N))] +for e in reversed(mainN+inherited_tail):apply(inverse(e),MI,ix) +cur={x:(w['ports'][x],) if xlen(ih):ih.append(j) + if len(ih)==r:break + assert len(ih)==r + endhs=[N[I[j]] for j in ih];endhidx=[hs.index(h) for h in endhs] + kerR=null(RR,16);Qmat=[[Q(0) for j in range(16)] for i in range(16)] + for j,hj in enumerate(endhidx): + for i in range(16):Qmat[i][hj]=qH[i][j] + other=[j for j in range(16) if j not in endhidx] + for k,j in enumerate(other): + for i in range(16):Qmat[i][j]=kerR[i][k] + assert rank(Qmat)==16 + pops=realize(Qmat,hs,());premix+=pops + T=[[Q(i==j)-sum((U[i][k]*L[k][j] for k in range(r)),Q(0)) for j in range(len(I))] for i in range(len(I))] + for k,i in enumerate(ih):T[i]=L[k] + tops=realize(T,[N[i] for i in I],F);tail+=tops + # Right-compose this initial helper premix; other blocks have disjoint H sets. + for row in Mafter: + vals=[row.get(h,Q(0)) for h in H] + if any(vals): + for hj in H:row.pop(hj,None) + for j,hj in enumerate(H): + z=sum((vals[i]*Qmat[i][j] for i in range(16)),Q(0)) + if z:row[hj]=z + for e in tops:apply(e,Mafter,ix) + ends.update({h:list(F) for h in endhs}) + plans.append(dict(block=b,frame=list(F),registers=[N[i] for i in I],ends=endhs,pairing_rank=r,premix_gates=len(pops),tail_gates=len(tops),Q=[[str(x) for x in row] for row in Qmat],T=[[str(x) for x in row] for row in T])) + print('BLOCK',b,'ends',endhs,'Qops',len(pops),'Tops',len(tops),flush=True) +# Check actual post-tail isolation before constructing the high-frame inverse. +allends=set(ends)|set(map(int,w.get('helper_final',{}))) +for h in allends: + j=ix[h];assert Mafter[j]=={j:Q(1)},('row not isolated',h,Mafter[j]);assert all(not row.get(j) for i,row in enumerate(Mafter) if i!=j),('column not isolated',h) +print('EXACT_ISOLATED',len(ends),'new;',len(allends),'total',round(time.monotonic()-t0,3),flush=True) +fullops=eliminate(copy.deepcopy(Mafter),N,F9,[ix[x] for x in allends]) +print('FULL_INVERSE',len(fullops),round(time.monotonic()-t0,3),flush=True) +# Cancel new cold-axis target responses inside A, after their wrappers. +Dirt=[({h:Q(1)} if h in ends else {}) for h in range(n)] +for e in premix+w['A']+w['cut']+w['B']:apply(e,Dirt) +for e in w['precondition']:apply(e,Dirt) +postcomp=[opadd(y,h,-a,()) for y in range(v,2*v) for h,a in sorted(Dirt[y].items()) if a] +assert all(h in ends for e in postcomp for h in [e[2]]) +new=copy.deepcopy(w);new['A']=postcomp+premix+w['A'];new['cleanup']=inherited_tail+tail+fullops +new['early_cleanup']=[[i,e[-1]] for i,e in enumerate(inherited_tail+tail)] +new['helper_final'].update({str(h):f for h,f in ends.items()}) +new['refactored_cleanup']={'kind':'source_branch_gauge_and_retired_completion_cold44','new_cold_ends':len(ends),'exact_non_target_isolation_checked':True,'high_inverse':'dyadic_sparse_Gauss_Jordan'} +# Derive paid profile by subtracting and adding literal frame-chain counts. +spec=importlib.util.spec_from_file_location('upstream_cold_end',args.upstream_package/'code/build_cold_end.py') +profile_module=importlib.util.module_from_spec(spec);spec.loader.exec_module(profile_module) +oldprof,_=profile_module.chain_profile(w);newprof,_=profile_module.chain_profile(new) +prof=Counter({int(k):z for k,z in w['report']['local_profile'].items()});prof.subtract(oldprof);prof.update(newprof) +widths=Counter(len(basis(new['helper_final'].get(str(h),F9)))-len(basis(new.get('start_extra',{}).get(str(h),[]))) for h in range(224,n)) +new['report'].update(local_profile={str(k):z for k,z in sorted(prof.items()) if z},local_rank_mass=sum(k*z for k,z in prof.items()),width_inventory={str(k):z for k,z in sorted(widths.items()) if z},status='EXACT_COLD44_CONSTRUCTED_PENDING_INDEPENDENT_AUDIT') +raw=json.dumps(new,sort_keys=True,separators=(',',':')).encode();sha=hashlib.sha256(raw).hexdigest();(OUT/'FULL-WORD.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +recipe={'premix':postcomp+premix,'cleanup':new['cleanup'],'early_cleanup':new['early_cleanup'],'cold_ends':{str(h):f for h,f in ends.items()},'refactored_cleanup':new['refactored_cleanup'],'output_content_sha256':sha} +(OUT/'RECIPE.json.gz').write_bytes(gzip.compress(json.dumps(recipe,sort_keys=True,separators=(',',':')).encode(),mtime=0)) +receipt=dict(input_content_sha256=hashlib.sha256(gzip.decompress(WPATH.read_bytes())).hexdigest(),output_content_sha256=sha,blocks=plans,new_cold_ends=len(ends),all_low_ended_helpers=len(allends),premix_gates=len(premix),postwrapper_compensation_gates=len(postcomp),tail_gates=len(tail),inherited_tail_gates=len(inherited_tail),full_inverse_gates=len(fullops),profile=new['report']['local_profile'],width_inventory=new['report']['width_inventory'],rank_mass=new['report']['local_rank_mass'],seconds=time.monotonic()-t0) +(OUT/'CONSTRUCTION.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(json.dumps({k:z for k,z in receipt.items() if k!='blocks'},indent=2),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/construct_gauge_xcentre.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/construct_gauge_xcentre.py new file mode 100644 index 0000000000..1010d86746 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/construct_gauge_xcentre.py @@ -0,0 +1,381 @@ +# Round20 early-coordinate-center / own-Y variant, prepared for icekylinx +# with OpenAI Codex assistance. Apache-2.0. Scalar elementary-operation +# helpers below are retained from the attributed PR514 construct_partial.py. +# Adapted by OpenAI Codex for isolated structural research. +# Modified from PR425 by icekylinx with Codex assistance. +"""Full discovery word for Hamming packets with borrowed X and Y registers. + +This changes the scalar architecture. It is not accepted by the old restricted +gx interface: source bases may change until full-frame cleanup, and targets use +an explicitly inverted output basis. No supplier admission is asserted. +""" +import copy,gzip,json,math,time +import itertools as it +from collections import Counter,defaultdict +from fractions import Fraction as Q +from pathlib import Path + +import sys +INPUT=Path(sys.argv[1]);OUT=Path(sys.argv[2]);OUT.mkdir(parents=True,exist_ok=False);D=json.loads((INPUT/'PROTOTYPE.json').read_text()) +P=D['binary_ports'];R=D['root_lines'];v=120;h=9 +modules=json.load(gzip.open(INPUT/'PACKET-PROGRAMS.json.gz')) +# AtomScout: leaver-read K-triangles (schedule from atom1.py / rog.py CP-SAT) +TRI=json.loads(Path(sys.argv[3]).read_text()) +FULLT={(tuple(tr['p']),tr['e']) for tr in TRI['triangles']} +TRI_COORDS={t+8 for tr in TRI['triangles'] for t,_,_ in tr['reads']} +COPYL=[] +NH=504-3*len(FULLT)+len(COPYL) + +def basis(vectors): + b={} + for x in vectors: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def inside(a,b):return basis(a+b)==b +def hyper(p):return basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) +FULL=basis([1<=v,r)) + for col,s in enumerate(ids): + k=next(i for i in range(col,len(regs)) if rows[regs[i]].get(s,Q(0))) + swap(regs[k],regs[col],F) + scale(regs[col],1/rows[regs[col]][s],F) + for i in range(len(regs)): + if i!=col and rows[regs[i]].get(s,Q(0)):add(regs[i],regs[col],-rows[regs[i]][s],F) + assert all(rows[regs[i]]=={s:Q(1)} for i,s in enumerate(ids)) + M=[[Q(R[s][i]) for s in ids] for i in c] + def qr_rank(rs): + bs={} + for r in rs: + r=r.copy() + for i,b in sorted(bs.items()): + if r[i]:q=r[i];r=[x-q*y for x,y in zip(r,b)] + i=next((i for i,x in enumerate(r) if x),None) + if i is not None:q=r[i];bs[i]=[x/q for x in r] + return len(bs) + assert qr_rank(M)==4 + for rr0 in PRIORITY[",".join(map(str,c))]["rows"]: + rr=list(map(Q,rr0)) + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + for i in range(8): + if len(M)==8:break + rr=[Q(i==j) for j in range(8)] + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + assert len(M)==8 + linear(regs,M,F) + for i,r in zip(c,regs): + assert rows[r]=={s:Q(R[s][i]) for s in ids} + block_totals[c,i]=r + +# All centers are complete while Y is still at zero. This is the crucial +# difference from an illegal early-own-Y prefix using the old center order. +centers=[] +for i in range(8): + regs=[block_totals[c,i] for c in sorted(blocks) if i in c] + F=hyper(P[frame[i]]);a=regs[0] + for b in regs[1:]:add(a,b,1,F) + centers.append(a) +centers += [frame[i] for i in range(8)] +center_frames=[cur[r] for r in centers] +assert list(map(len,center_frames))==[8]*8+[1]*8 +assert all(cur[v+t]==() for t in range(v)) + +phase=B +for t,(r,coef,F) in sorted(own_rows.items()): + if t in TRI_COORDS:continue + assert cur[r]==F + add(v+t,r,coef,F) +# requests are needed for TRI coefficients +requests=defaultdict(list) +for pid,pair in enumerate(pairs): + if not pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + requests[key1].append((t,-Q(mat[0][0],2))) + requests[key2].append((u,-Q(mat[0][1],2))) +reqcoef={t:(key,coef) for key,reqs in requests.items() for t,coef in reqs} +def face_info(c,p,eps): + z=blocks[c];keys=[(pp,ee) for pp in it.combinations(c,2) for ee in (-1,1)] + r_local,alpha=z['outputs'][keys.index((p,eps))] + j=[j for j in range(40,len(z['events'])) if z['events'][j][0]==r_local];assert len(j)==1 + return j[0],Q(alpha) +tri_join_counts=Counter() +lcopy={} +for s8 in COPYL: + r=s8+8;c=alloc();add(c,r,1,cur[r]);lcopy[r]=c +for tr in TRI['triangles']: + p,eps=tuple(tr['p']),tr['e'] + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];r0=r;r=lcopy.get(r,r) + key,coef=reqcoef[t];assert key[1]==p and key[2]==eps,(key,p,eps) + if blk==key[0]: + rr,c0,F0=own_rows[t];assert rr==r0;q=c0 + else: + j,alpha=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert loc in ev[:2] + q=coef*alpha + F=basis(cur[v+t]+cur[r]);assert inside(F,hyper(P[t])),('TRI frame',t) + tri_join_counts[len(F)]+=1;add(v+t,r,q,F) + +packets={} +for c,z in sorted(blocks.items()): + mp=maps[c] + keys=[(p,eps) for p in it.combinations(c,2) for eps in (-1,1)] + skipev={face_info(c,p,eps)[0] for p,eps in keys if (p,eps) in FULLT} + for j,(e,F) in enumerate(list(zip(z['events'],z['event_frames']))[40:]): + if j not in early[c] and 40+j not in skipev: + t,s,a,b=e;add(mp[t],mp[s],Q(a,b),tuple(F)) + for key,(r,alpha) in zip(keys,z['outputs']): + if tuple(key) in FULLT:skip();continue + a=mp[r];b=alloc();add(b,a,1,cur[a]) + consumers=sorted(d for d in blocks if d!=c and set(key[0])<=set(d)) + assert len(consumers)==2 + for target,r in zip(consumers,(a,b)):packets[c,key[0],key[1],target]=(r,Q(alpha)) + +# Both tetrahedra use the same partition. A selected key has exactly two +# selected Y loads and no ordinary M consumer. Supply its two raw halves in +# opposite orders and never form that M. Other keys retain the old M path. +second=[];first_join_counts=Counter() +for key,reqs in sorted(requests.items()): + assert len(reqs)==2 + c,p,eps=key + if (p,eps) in FULLT:continue + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d));a,b=ds + for j,(target,coef) in enumerate(sorted(reqs)): + first_source,second_source=(a,b) if j==0 else (b,a) + r,alpha=packets[first_source,p,eps,second_source] + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + first_join_counts[len(F)]+=1;add(v+target,r,coef*alpha,F) + r,alpha=packets[second_source,p,eps,c] + second.append((target,r,coef*alpha)) + +Ms={} +for c in sorted(blocks): + for p in it.combinations(c,2): + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d)) + for eps in (-1,1): + if (c,p,eps) in requests:continue + (a,alpha),(b,beta)=[packets[d,p,eps,c] for d in ds] + F=basis(cur[a]+cur[b]);add(a,b,beta/alpha,F) + Ms[c,p,eps]=(a,alpha) + +consumers=defaultdict(list) +for pid,pair in enumerate(pairs): + for key in pair['keys']:consumers[key].append(pid) +slots={} +for key,uses in sorted(consumers.items()): + assert len(uses)==2 + if key in requests: + assert all(pairs[i]['selected'] for i in uses) + continue + assert all(not pairs[i]['selected'] for i in uses) + a,alpha=Ms[key] + for j,pid in enumerate(uses): + if j==0:r=a + else:r=alloc();add(r,a,1,cur[a]) + slots[pid,key]=(r,alpha) +assert len(cur)-240==NH,len(cur)-240 + +selected_join_counts=Counter() +for target,r,coef in second: + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + selected_join_counts[len(F)]+=1;add(v+target,r,coef,F) +output_basis=[] +for pair in pairs: + if not pair['selected']:continue + (t,u),mat=pair['targets'],pair['matrix'] + F=basis(cur[v+t]+cur[v+u]);assert inside(F,hyper(P[t])) and inside(F,hyper(P[u])) + add(v+t,v+u,1,F);add(v+u,v+t,-Q(1,2),F) + z=-Q(2*mat[1][0],mat[0][0]);scale(v+u,z,F);output_basis.append((t,u,z)) + +for pid,pair in enumerate(pairs): + if pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + (a,alpha),(b,beta)=slots[pid,key1],slots[pid,key2] + F=basis(cur[a]+cur[b]);aa,ab=Q(mat[0][0])*alpha,Q(mat[0][1])*beta + ba,bb=Q(mat[1][0])*alpha,Q(mat[1][1])*beta + add(a,b,ab/aa,F);q=ba/(bb-ba*ab/aa);add(b,a,q,F) + add(v+t,a,-aa/2,hyper(P[t]));add(v+u,b,-(bb-ba*ab/aa)/2,hyper(P[u])) + +for t in range(v): + expected={s:-Q(G[t][s],2) for s in range(v) if s!=t and G[t][s] and s not in frame.values()} if t not in frame.values() else {} + assert rows[v+t]==expected,('side identity',t) + +scatter=[[Q(r[i],4) if t not in frame.values() else Q(0) for i in range(8)]+[Q(t==frame[i]) for i in range(8)] for t,r in enumerate(R)] +precondition=[] +for t,u,z in output_basis: + a,b=scatter[t].copy(),scatter[u].copy() + scatter[t]=[x/2-y/z for x,y in zip(a,b)] + scatter[u]=[x/2+y/z for x,y in zip(a,b)] + precondition.extend([['scale',v+u,(1/z).numerator,(1/z).denominator,[]], + ['add',v+u,v+t,1,2,[]],['add',v+t,v+u,-1,1,[]]]) +for r in range(len(cur)):climb(r,hyper(P[r-v]) if v<=r<2*v else FULL) +H[8]+=8;H[1]+=8 +assert sum(r*z for r,z in H.items())==9*NH+240*8+72,sum(r*z for r,z in H.items()) + +def apply(e,matrix): + if e[0]=='add': + _,t,s,a,b,*_=e;q=Q(a,b) + for j,x in list(matrix[s].items()): + z=matrix[t].get(j,Q(0))+q*x + if z:matrix[t][j]=z + else:matrix[t].pop(j,None) + else: + _,t,a,b,*_=e;q=Q(a,b);matrix[t]={j:q*x for j,x in matrix[t].items()} +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + e[-1]=list(FULL);return e +cut=[['add',v+t,centers[i],q.numerator,q.denominator,None] for t,row in enumerate(scatter) for i,q in enumerate(row) if q] +cleanup=[inverse(e) for e in reversed(A+B) if not v<=e[1]<2*v] +matrix=[{r:Q(1)} if r --pr635 \ + --baseline --work [--phases reference] +``` + +Steps: baseline pins (SLOT-PINS-k8) → `build_ends7.py` (output pinned) → `end7_controls.py` (positive control plus +`end_restored`, `wrong_frame`, `cone_violation`, each rejected by both audit_local and the native hpe auditor: +6 rejections) → native locals (phases through PR1029's sparse evaluator by default) pinned in `ENDS7-PINS-k8.json` +→ audit_local → PR1049 leaver premise on the new word → strict `verify_global.py` with this package's data, κ pinned. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/RECIPE-ENDS7-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/RECIPE-ENDS7-k8.json new file mode 100644 index 0000000000..64c025dc5a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/RECIPE-ENDS7-k8.json @@ -0,0 +1 @@ +{"schema": 1, "input_sha256": "c2b294300760e1fd6eeab8c22c4d13e4633dca40e52cac8da0d68163a76e3ca8", "ends": [[574, [256, 128, 96, 16, 8, 4, 2, 1], [256, 128, 96, 17, 9, 5, 3]], [575, [256, 128, 96, 16, 8, 4, 2, 1], [256, 128, 96, 17, 9, 5, 3]]], "frames": [["B", 994, [260, 130, 96, 20, 10, 1], [261, 131, 96, 20, 10]], ["B", 995, [258, 132, 96, 20, 10, 1], [259, 133, 96, 20, 10]], ["B", 1026, [264, 137, 96, 24, 4, 3], [268, 137, 96, 24, 3]], ["B", 1027, [265, 136, 96, 24, 4, 3], [265, 140, 96, 24, 3]], ["B", 1106, [260, 130, 96, 20, 10, 1], [261, 131, 96, 20, 10]], ["B", 1107, [258, 132, 96, 20, 10, 1], [259, 133, 96, 20, 10]], ["B", 1138, [264, 137, 96, 24, 4, 3], [268, 137, 96, 24, 3]], ["B", 1139, [265, 136, 96, 24, 4, 3], [265, 140, 96, 24, 3]]], "early_cleanup": [[93, 93, [256, 128, 96, 16, 8, 4, 2, 1], [256, 128, 96, 17, 9, 5, 3]], [94, 94, [256, 128, 96, 16, 8, 4, 2, 1], [256, 128, 96, 17, 9, 5, 3]]], "expected": {"output_sha256": "f64e0942edc5eb2d45b0a3b068ba942436f35ba9a077ff53d7e4424d1617b2cd", "local_profile": {"1": 2406, "2": 432, "3": 424, "4": 142, "5": 82, "8": 8}, "local_rank_mass": 5584, "width_inventory": {"4": 56, "5": 32, "7": 32, "8": 120, "9": 240}}, "controls": {"end_restored": {"helper": 574}, "wrong_frame": {"frame": ["B", 994], "wrong": [130, 96, 20, 10, 1]}, "cone_violation": {"helper": 574, "end": [256, 128, 96, 17, 9, 5, 1], "own_frames": []}}} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/build_ends7.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/build_ends7.py new file mode 100644 index 0000000000..9270bab3ae --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/build_ends7.py @@ -0,0 +1,76 @@ +#!/usr/bin/env python3 +"""build_ends7.py BASE_WORD RECIPE OUT [--control NAME] +Rank-seven helper ends (after PR1030) on the seven-slot k8 word: every listed helper end drops by one dimension to the +recorded subspace; the recorded B frames and early-cleanup (tail) frames drop with it. Each edit is literal (old -> new, +old checked), each new frame is a codimension-one subspace of the old one, and the input and output contents are pinned. +Controls (negative, for end7_controls.py): end_restored, wrong_frame, cone_violation. Standard library only.""" +import argparse, gzip, hashlib, json, sys + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def span(vs): + s = {0} + for v in vs: + assert type(v) is int and 0 < v < 512, 'GF(2)^9 vector' + s |= {x ^ v for x in s} + assert len(s) == 1 << len(vs), 'dependent frame basis' + return frozenset(s) + + +def codim1(old, new): + a, b = span(old), span(new) + assert b < a and len(a) == 2 * len(b), 'not a codimension-one lowering' + + +def build(word, rec, control=None): + assert rec['schema'] == 1 + assert hashlib.sha256(enc(word)).hexdigest() == rec['input_sha256'], 'base word content pin' + for q, old, new in rec['ends']: + assert word['helper_final'][str(q)] == old, 'old end %d' % q + codim1(old, new); word['helper_final'][str(q)] = new + for sec, i, old, new in rec['frames']: + assert sec in ('A', 'B') and word[sec][i][-1] == old, 'old %s frame %d' % (sec, i) + codim1(old, new); word[sec][i][-1] = new + for j, ci, old, new in rec['early_cleanup']: + assert word['early_cleanup'][j] == [ci, old], 'old tail %d' % j + codim1(old, new); word['early_cleanup'][j][1] = new + for k in ('local_profile', 'local_rank_mass', 'width_inventory'): + word['report'][k] = rec['expected'][k] + if control is None: + assert hashlib.sha256(enc(word)).hexdigest() == rec['expected']['output_sha256'], 'output content pin' + return word + c = rec['controls'][control] + if control == 'end_restored': # the end goes back to dimension eight; frames and accounting stay lowered + q, old, new = next(e for e in rec['ends'] if e[0] == c['helper']) + word['helper_final'][str(q)] = old + elif control == 'wrong_frame': # one lowered B frame replaced by a different codimension-one subspace + sec, i, old, new = next(f for f in rec['frames'] if [f[0], f[1]] == c['frame']) + codim1(old, c['wrong']); word[sec][i][-1] = c['wrong'] + elif control == 'cone_violation': # helper end and its own chain lowered to a subspace that misses the cone + q = c['helper']; word['helper_final'][str(q)] = c['end'] + for sec, i, fr in c['own_frames']: + if sec == 'T': word['early_cleanup'][i][1] = fr + else: word[sec][i][-1] = fr + else: + raise SystemExit('unknown control ' + control) + return word + + +def main(): + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('base'); ap.add_argument('recipe'); ap.add_argument('out'); ap.add_argument('--control') + a = ap.parse_args() + word = json.loads(gzip.decompress(open(a.base, 'rb').read())) + rec = json.load(open(a.recipe)) + w = build(word, rec, a.control) + raw = enc(w); gz = gzip.compress(raw, 9, mtime=0); gz = gz[:9] + b'\xff' + gz[10:] + open(a.out, 'wb').write(gz) + print(json.dumps(dict(status='PASS_RANK7_ENDS_BUILT' if a.control is None else 'CONTROL_BUILT', control=a.control, + content_sha256=hashlib.sha256(raw).hexdigest(), ends=len(rec['ends']), frames=len(rec['frames']), + tails=len(rec['early_cleanup'])))) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/end7_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/end7_controls.py new file mode 100644 index 0000000000..a888c1eae5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/end7_controls.py @@ -0,0 +1,56 @@ +#!/usr/bin/env python3 +"""end7_controls.py BASE_WORD RECIPE AUDIT_LOCAL_PY NATIVE_AUDITOR PORTABLE_RUNNER ROUTING OUTDIR +Positive control (the recipe word passes both auditors) and three negative controls, each rejected by BOTH the independent +audit_local and the native hpe auditor with its pinned reason: + end_restored : one lowered helper end restored to its dimension-eight value (frames/accounting stay lowered) + wrong_frame : one required B lowering replaced by a different codimension-one subspace + cone_violation : one helper end set to another dimension-seven subspace that misses its row cone +Writes OUTDIR/END7-CONTROLS.json. Standard library only (the auditors are the package's own).""" +import gzip, hashlib, json, os, subprocess, sys +from pathlib import Path + +EXPECT = { + 'end_restored': dict(independent='paid profile mismatch', native='paid local profile differs from the reported local_profile'), + 'wrong_frame': dict(independent='frame not monotone', native="'nonmonotone'"), + 'cone_violation': dict(independent='frame not monotone', native='hpe cone pre-check (row / column)'), +} + + +def main(): + base, recipe, audit, native, runner, routing, out = map(Path, sys.argv[1:8]) + here = Path(__file__).resolve().parent; out = out.resolve(); out.mkdir(parents=True, exist_ok=True) + rec = json.loads(recipe.read_text()) + assert sorted(rec['controls']) == sorted(EXPECT), 'control set' + res = {} + + def check(name, word, expect): + rows = {} + a = subprocess.run([sys.executable, '-B', str(audit), '--word', str(word), '--output', str(out / (name + '.audit.json'))], + capture_output=True, text=True) + n = subprocess.run([sys.executable, '-B', str(runner), str(native), '--raw', str(word), '--routing', str(routing), + '--out', str(out / (name + '.native'))], capture_output=True, text=True, cwd=str(out)) + for k, r in (('independent', a), ('native', n)): + last = (r.stdout + r.stderr).strip().splitlines()[-1] if (r.stdout + r.stderr).strip() else '' + ok = r.returncode == 0 if expect is None else (r.returncode != 0 and expect[k] in last) + rows[k] = dict(ok=ok, exit=r.returncode, last=last[:240]) + res[name] = rows + print(name, {k: v['ok'] for k, v in rows.items()}, flush=True) + + w = out / 'recipe.json.gz' + subprocess.run([sys.executable, '-B', str(here / 'build_ends7.py'), str(base), str(recipe), str(w)], check=True, capture_output=True) + check('recipe', w, None) + for ctl, exp in EXPECT.items(): + cw = out / (ctl + '.json.gz') + subprocess.run([sys.executable, '-B', str(here / 'build_ends7.py'), str(base), str(recipe), str(cw), '--control', ctl], + check=True, capture_output=True) + check(ctl, cw, exp) + ok = all(v['ok'] for r in res.values() for v in r.values()) + rep = dict(status='PASS_RANK7_END_CONTROLS' if ok else 'FAIL', recipe_sha256=hashlib.sha256(recipe.read_bytes()).hexdigest(), + controls=res, rejections=sum(1 for n, r in res.items() if n != 'recipe' for v in r.values() if v['ok'])) + (out / 'END7-CONTROLS.json').write_text(json.dumps(rep, indent=1) + '\n') + print(rep['status'], rep['rejections'], 'rejections', flush=True) + sys.exit(0 if ok else 1) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/NOTICE.md new file mode 100644 index 0000000000..a3b31e157f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/NOTICE.md @@ -0,0 +1,33 @@ +# Attribution + +Prepared for Ali Romman (@aliromman) with substantial OpenAI Codex assistance. +New code, tests and documentation use the repository's Apache-2.0 license. +No independent human review is claimed. + +- Charles Bethin (@cbethin), PR662, supplied the exact permutation and phase + tables. This package imports those tables unchanged and compares against + his complete dense evaluator. PR662 head: + `458744109003e0958798f27c1f04be78f03663ce`. +- The Gaussian-dyadic algebra and lowering come from the retained + `clifford_exact.py`. `lowering.py` adapts its `monomial` and `lower_child` + routines to take an evaluator argument. `run.py` adapts `phases_full.py`. + The latter credits icekylinx and the PR425 ancestry, with Codex assistance. + The PR531 license and notice remain at + `research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/`. + Those files retain the upstream contributor and AI-assistance notices. +- Jonathan Capalbo's PR942 supplies the retained U8 replay archive used by + the benchmark. Its head is + `1960cfa919a0945d0ca4cb14ea96237000037903`. + The U8 word comes from the PR869/870 lineage, which credits NewBArch's + triangle-hybrid construction and ColdWitness/icekylinx's driver, on Jeremy + Kothe's PR799 X4 work. Chafik Boukhalfa's PR741/890 work and Hao Yan's + PR858 work remain credited in the retained package notices. + +The new contribution is the sparse state update, its explicit compiler +entry point, and the complete U8 comparison with corruption controls and +time/memory measurements. Sparse state propagation is an established general +technique; this package makes no priority claim for that technique. + +The package does not change frozen source files, accepted certificates, +`upstream/`, or the default selected replay. All inherited compiler, +realization, hosting, precision, tape and analytic obligations remain. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/PROOF.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/PROOF.md new file mode 100644 index 0000000000..bbd5990439 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/PROOF.md @@ -0,0 +1,81 @@ +# Exact support updates + +This argument applies to the valid gates from the pinned `clifford_exact.py`. +The input is a basis index `0 <= basis < 2^n`. Each state has Gaussian integer +numerators and a common denominator `2^den`. A missing dictionary key has +numerator zero. The output contains all `2^n` numerators, including zeros. + +## Induction over the circuit + +The initial dictionary has the one entry `basis -> (1, 0)`. It is the same +state as the retained dense evaluator. + +For `P`, the validated binary matrix is invertible. Its index map is a +permutation. Thus no two nonzero entries collide, and omitted zero entries +contribute no value. For `X`, translation by XOR is also a permutation. + +For `D` and `phase`, each amplitude is multiplied by a power of `i`. The +four rotations of `(a, b)` are `(a, b)`, `(-b, a)`, `(-a, -b)`, and `(b, -a)`. +Zero remains zero. The `D` phases and `P` index maps use the unchanged PR662 +tables. Those tables depend on the dimension and all gate coefficients. +They do not depend on a state or on a previous check result. The source pins +retain their exact formulas and bounded caches. + +For `C`, put `y = x xor q` and let `s` be the sign. If the numerators at +`x` and `y` are `(a, b)` and `(c, d)`, the new numerators are + +```text +x: (a - s*b + c + s*d, b + s*a + d - s*c) +y: (c - s*d + a + s*b, d + s*c + b - s*a). +``` + +The denominator exponent increases by one. These are the two rows of the +retained dense update. XOR partitions the index set into pairs when `q != 0`. +The loop visits a pair once if either entry is nonzero. If both entries are +present, it skips the larger index. If only one entry is present, its partner +has value zero. A pair with two zero entries contributes two zeros and need +not be visited. Exact cancellation removes a zero output entry. When `q = 0`, +both formulas give `(2*a, 2*b)` at the same index; the update is the identity +after division by two. + +The common-factor test after `C` gives the same answer on the dictionary as +on the dense vector: omitted entries are zero and are divisible by two. +The other gates only permute entries or rotate their Gaussian coordinates. +They cannot change the common power of two. Thus those gates need no further +normalization. This proves equality of both the complete vector and `den` +after every gate. It also covers circuits whose support shrinks after a +`C` gate. A valid Clifford circuit cannot map a nonzero input to the zero +state, because each gate is invertible. + +## The compiler checks + +`lowering.py` retains the algebra and checks of the pinned lowering routine. +It passes a state evaluator through ordinary function arguments. It changes +no retained module, method or global value. The reference mode calls the +original lowering routine. The dense and sparse modes use the same explicit +lowering code with their respective evaluators. + +Every tableau equality, off-support zero check, denominator check, and global +phase check remains. The final comparison still checks the complete compiled +state against the complete input state. No phase is inferred from a tableau. + +`run.py` retains the frame-span, frame-rank, edge-rank and endpoint-rank checks +of `phases_full.py`. It visits every frame, every directed edge including +center transitions, and every source and target adapter. Its public entry +point rejects optimized Python before it loads the retained assertion-based +algebra. It also rejects source drift and an existing output directory. + +## Work and storage + +Let `s` be the current number of nonzero amplitudes and `N = 2^n`. A state +update now visits `s` entries, or at most `s` XOR pairs, in place of all `N` +entries. Dictionary operations have their usual expected constant lookup +cost. Integer arithmetic remains exact. A first use of a PR662 gate table +still takes `O(N)` work, and the final full output also takes `O(N)` work. +Each of the two retained table caches has at most 64 entries. + +This is a support-sensitive improvement. It is not a polynomial-size +stabilizer representation: the support can be all `N` indices. The benchmark +measures the complete selected dimension-nine phase command, including table +construction, source admission, parsing, lowering, checks and output writing. +It makes no claim about multiplication runtime or the full cold replay. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/lowering.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/lowering.py new file mode 100644 index 0000000000..75232da380 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/lowering.py @@ -0,0 +1,65 @@ +"""Retain the exact lowering checks with an explicit state evaluator. + +The algebra and algorithm are from the pinned clifford_exact.py. +This module passes the evaluator as an argument. It does not change that module. +Apache-2.0. See NOTICE.md for source credit. +""" + + +def monomial(op, algebra, evaluate): + n, tab = op.n, op.tab + assert all(x == 0 and p % 2 == 0 for x, z, p in tab[n:]) + G = algebra.transpose([x for x, z, p in tab[:n]], n) + b = algebra.mv(G, sum((p // 2) << i for i, (x, z, p) in enumerate(tab[n:]))) + gt = algebra.transpose(G, n) + cols = [algebra.mv(gt, z) for x, z, p in tab[:n]] + Q = algebra.transpose(cols, n) + alpha = [(p - 2*algebra.parity(b & z)) % 4 for x, z, p in tab[:n]] + out = algebra.diag(n, Q, alpha).then(algebra.perm(n, G)).then(algebra.xgate(n, b)) + assert out.tab == tab + vec, den = evaluate(op) + assert den == 0 and all(a == (0, 0) for i, a in enumerate(vec) if i != b) + phase = [(1, 0), (0, 1), (-1, 0), (0, -1)].index(vec[b]) + out = out.then(algebra.Op(n, algebra.identity(n), [('phase', phase)])) + assert evaluate(out) == evaluate(op) + return out, dict(matrix_rows=G, offset=b, quadratic_rows=Q, + linear_Z4=alpha, phase=phase) + + +def lower_child(op, algebra, evaluate): + n = op.n + Bcols = [x for x, z, p in op.tab[n:]] + r = algebra.rank(Bcols) + if not r: + mon, rec = monomial(op, algebra, evaluate) + return dict(rank=0, left=rec, right=None), mon + G = algebra.transpose(algebra.basis_extend(Bcols, n), n) + A = algebra.inv(G, n) + PA = algebra.perm(n, A) + part = op.then(PA) + Bcols = [x for x, z, p in part.tab[n:]] + Dcols = [z for x, z, p in part.tab[n:]] + picks, selected = [], [] + for j, x in enumerate(Bcols): + if algebra.rank(selected + [x]) > len(selected): + picks.append(j) + selected.append(x) + assert len(picks) == r and all(x >> r == 0 for x in Bcols) + Br = algebra.transpose(selected, r) + Bi = algebra.inv(Br, r) + Dr = algebra.transpose([Dcols[j] & ((1 << r) - 1) for j in picks], r) + Qsmall = tuple(sum(algebra.parity(row & col) << j + for j, col in enumerate(algebra.transpose(Bi, r))) for row in Dr) + Q = Qsmall + (0,) * (n-r) + DQ = algebra.diag(n, Q) + V = part.then(DQ).then(algebra.hadamard(n, range(r))) + assert all(x == 0 for x, z, p in V.tab[n:]) + Vmon, _ = monomial(V, algebra, evaluate) + S = algebra.diag(n, tuple(1 << i if i < r else 0 for i in range(n))) + left = S.adjoint().then(DQ.adjoint()).then(PA.adjoint()) + right = Vmon.then(S.adjoint()).then(algebra.xgate(n, (1 << r)-1)) + lmon, lrec = monomial(left, algebra, evaluate) + rmon, rrec = monomial(right, algebra, evaluate) + compiled = rmon.then(algebra.fourier(n, range(r))).then(lmon) + assert compiled.tab == op.tab and evaluate(compiled) == evaluate(op) + return dict(rank=r, left=lrec, right=rrec), compiled diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/phases_fast.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/phases_fast.py new file mode 100644 index 0000000000..ce73f874bd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/phases_fast.py @@ -0,0 +1,120 @@ +# Same driver as pr558/code/phases_full.py (sha a273c325...) with PR1029's exact sparse state evaluator. +"""Exact phase-aware lowering of every used edge; sparse exact state evaluation (PR1029). + +Usage (same positional arguments as phases_full.py, plus the PR662 gate-table module): + phases_fast.py LOCAL_DIR CLIFFORD_DIR FAST_STATE_PY [JOBS] +JOBS > 1 schedules edges and adapters over worker processes (as PR1041 phases_parallel.py) and collects them in +the serial order; each worker rebuilds the same frame ops and keeps every per-edge assertion. +The frame, edge and adapter loop, every assertion, and the output serialization are those of phases_full.py. +Only the state evaluator passed to the retained lowering routine differs (PR1029 lowering.py / sparse_state.py). +""" +import gzip, hashlib, importlib.util, json, multiprocessing as mp, sys, time +from collections import Counter +from pathlib import Path + +if not __debug__: + raise RuntimeError('Assertions must remain enabled') +HERE = Path(__file__).resolve().parent +PINS = { # pinned bytes: PR1029 SOURCES.json (algebra, PR662 tables) and PR1029 head ff4d7b9a (lowering, sparse) + 'clifford_exact.py': '2982ead07721e83358dc67c6f49c2b4c16a236a6bebdfd72f58221be1f5d0962', + 'fast_state.py': '2fe087ba4558bd21ca49945dbedaa4047e4170e8fd4e2280701bb2f0481811b5', + 'lowering.py': 'ba42903b841722b872f98f3afa77d47976ca66a0cb4c0dd6b8de04462d4baa2b', + 'sparse_state.py': 'e91210ecd5085cf9add872f40bb434806838da488e12152c63c86e51fb5a7a37', +} + + +def load(path, name): + path = Path(path).resolve() + assert hashlib.sha256(path.read_bytes()).hexdigest() == PINS[path.name], 'pinned source changed: ' + str(path) + spec = importlib.util.spec_from_file_location(name, path) + mod = importlib.util.module_from_spec(spec); sys.modules[name] = mod; spec.loader.exec_module(mod) + return mod + + +A = tables = lowering = sparse = WORD = OPS = None + + +def setup(clifford_dir, fast_state): + global A, tables, lowering, sparse + A = load(Path(clifford_dir) / 'clifford_exact.py', 'clifford_exact') + tables = load(fast_state, 'pr662_fast_state') + lowering = load(HERE / 'lowering.py', 'pr1029_lowering') + sparse = load(HERE / 'sparse_state.py', 'pr1029_sparse_state') + + +def lower_child(op): + return lowering.lower_child(op, A, lambda o: sparse.zero_state(o, tables)) + + +def frame_ops(c, check): + n = c['h']; ops = [] + for U in c['frames']: + op = A.canonical_frame(n, U) + if check: + L = [u | (u << n) for u in U] + [v << n for v in A.nullspace(U, n)] + pre = [x | (z << n) for x, z, p in A.inverse(op.tab)[n:]] + assert A.rank(L) == n and A.rank(L + pre) == n + assert A.rank([x for x, z, p in op.tab[n:]]) == len(U) + ops.append(op) + return ops + + +def init_worker(clifford_dir, fast_state, word_path): + global WORD, OPS + setup(clifford_dir, fast_state); WORD = json.load(gzip.open(word_path)); OPS = frame_ops(WORD, check=False) + + +def edge_task(ab): + a, b = ab + rec, compiled = lower_child(OPS[a].adjoint().then(OPS[b])) + assert rec['rank'] == abs(len(WORD['frames'][a]) - len(WORD['frames'][b])) + return {'old': a, 'new': b, **rec} + + +def adapter_task(item): + i, role = item; c = WORD; n = c['h']; q = c['ports'][i] + old, f = ((A.cgate(n, q), c['start'][i]) if role == 'source' else + (A.cgate(n, q).adjoint().then(A.fourier(n)), c['final'][c['v'] + i])) + rec, compiled = lower_child(old.adjoint().then(OPS[f])); assert rec['rank'] == 0 + return {'port': i, 'role': role, 'frame': f, **rec} + + +def main(): + OUT = Path(sys.argv[1]); P = OUT / 'CANONICAL-WORD.json.gz' + jobs = int(sys.argv[4]) if len(sys.argv) > 4 else 1 + setup(sys.argv[2], sys.argv[3]) + c = json.load(gzip.open(P)); frames = c['frames']; start = time.monotonic() + frame_ops(c, check=True) + edges = set(map(tuple, c['edges'])) | {(a, b) for f in c['center_frames'] for a, b in ((f, 0), (0, f))} + items = [(i, role) for i in range(len(c['ports'])) for role in ('source', 'target')] + if jobs == 1: + init_worker(sys.argv[2], sys.argv[3], P) + recipes = [] + for i, e in enumerate(sorted(edges)): + recipes.append(edge_task(e)) + if i % 200 == 0: print('exact phase edges', i, '/', len(edges), 'seconds', time.monotonic() - start, flush=True) + adapters = [adapter_task(x) for x in items] + else: + ctx = mp.get_context('spawn') + if sys.platform == 'win32': # windowless workers: spawn console python.exe can open a visible console + # base interpreter: a venv pythonw.exe launcher re-spawns and breaks the inherited pool pipe + w = Path(getattr(sys, '_base_executable', sys.executable)).with_name('pythonw.exe') + if w.exists(): ctx.set_executable(str(w)) + with ctx.Pool(jobs, initializer=init_worker, initargs=(sys.argv[2], sys.argv[3], str(P))) as pool: + recipes = pool.map(edge_task, sorted(edges), chunksize=16) + adapters = pool.map(adapter_task, items, chunksize=8) + hist = Counter(r['rank'] for r in recipes) + raw = json.dumps({'children': recipes, 'endpoint_adapters': adapters}, sort_keys=True, separators=(',', ':')).encode() + (OUT / 'CLIFFORD-RECIPES.json').write_bytes(raw) + result = {'status': 'PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES', + 'canonical_word_sha256': hashlib.sha256(P.read_bytes()).hexdigest(), + 'frames': len(frames), 'directed_edges': len(edges), 'ranks': dict(hist), + 'endpoint_adapters': len(adapters), 'all_child_equalities_include_global_phase': True, + 'recipe_sha256': hashlib.sha256(raw).hexdigest(), 'seconds': time.monotonic() - start, + 'scope': 'Every local frame and center transition. Expanded scalar-interface integration and global emitted program are separate obligations.'} + (OUT / 'CLIFFORD-REVIEW.json').write_text(json.dumps(result, indent=2) + '\n') + print('PASS exact local phases', result['seconds'], 'seconds', flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/sparse_state.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/sparse_state.py new file mode 100644 index 0000000000..ca39f73494 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/fastpath/sparse_state.py @@ -0,0 +1,65 @@ +"""Evaluate exact Clifford states on their nonzero support. + +Gate tables are from Charles Bethin's PR662. The support update is new. +Prepared for Ali Romman with substantial OpenAI Codex assistance. +Apache-2.0. +""" + + +def zero_state(op, tables, basis=0): + """Return every Gaussian numerator and the power-of-two denominator.""" + size = 1 << op.n + if not 0 <= basis < size: + raise IndexError(basis) + state = {basis: (1, 0)} + den = 0 + for gate in op.circuit: + kind = gate[0] + if kind == 'P': + mapping = tables.permutation_table(op.n, tuple(gate[1])) + state = {mapping[x]: value for x, value in state.items()} + elif kind == 'X': + state = {x ^ gate[1]: value for x, value in state.items()} + elif kind in ('D', 'phase'): + phases = (tables.phase_table(op.n, tuple(gate[1]), tuple(gate[2])) + if kind == 'D' else None) + out = {} + for x, (a, b) in state.items(): + phase = phases[x] if phases is not None else gate[1] % 4 + if phase == 0: + out[x] = (a, b) + elif phase == 1: + out[x] = (-b, a) + elif phase == 2: + out[x] = (-a, -b) + else: + out[x] = (b, -a) + state = out + elif kind == 'C': + q, sign = gate[1:] + out = {} + for x, (a, b) in state.items(): + y = x ^ q + if y < x and y in state: + continue + c, d = state.get(y, (0, 0)) + first = (a - sign*b + c + sign*d, + b + sign*a + d - sign*c) + second = (c - sign*d + a + sign*b, + d + sign*c + b - sign*a) + if first != (0, 0): + out[x] = first + if second != (0, 0): + out[y] = second + state = out + den += 1 + while den and all((a & 1) == (b & 1) == 0 + for a, b in state.values()): + state = {x: (a // 2, b // 2) for x, (a, b) in state.items()} + den -= 1 + else: + raise AssertionError(gate) + vec = [(0, 0)] * size + for x, value in state.items(): + vec[x] = value + return vec, den diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/inputs/CODED-CELLS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/inputs/CODED-CELLS-k8.json new file mode 100644 index 0000000000..cd23561e0b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/inputs/CODED-CELLS-k8.json @@ -0,0 +1,2826 @@ +[ + { + "cell": "01+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 1 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 0 + ], + "x2": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 1 + ], + "x3": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 0 + ], + "x4": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 65 + ], + "y1": [ + "target", + 64 + ], + "y2": [ + "target", + 33 + ], + "y3": [ + "target", + 32 + ], + "y4": [ + "target", + 25 + ], + "y5": [ + "target", + 24 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "-1/2" + ], + [ + "y0", + "x1", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "-1/2" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "23+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 1 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 0 + ], + "x4": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 71 + ], + "y1": [ + "target", + 67 + ], + "y2": [ + "target", + 97 + ], + "y3": [ + "target", + 96 + ], + "y4": [ + "target", + 89 + ], + "y5": [ + "target", + 88 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "45+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 23 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 3 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 39 + ], + "y1": [ + "target", + 35 + ], + "y2": [ + "target", + 103 + ], + "y3": [ + "target", + 99 + ], + "y4": [ + "target", + 57 + ], + "y5": [ + "target", + 56 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "-1/2" + ], + [ + "x4", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "0", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "-1/2", + "0" + ] + ] + }, + { + "cell": "67+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 23 + ], + "x3": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 3 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 23 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 3 + ], + "y0": [ + "target", + 31 + ], + "y1": [ + "target", + 27 + ], + "y2": [ + "target", + 95 + ], + "y3": [ + "target", + 91 + ], + "y4": [ + "target", + 63 + ], + "y5": [ + "target", + 59 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "1", + "1" + ], + [ + "1", + "0", + "1", + "1", + "1", + "1" + ], + [ + "1", + "1", + "0", + "1", + "1", + "1" + ], + [ + "1", + "1", + "1", + "0", + "1", + "1" + ], + [ + "1", + "1", + "1", + "1", + "0", + "1" + ], + [ + "1", + "1", + "1", + "1", + "1", + "0" + ] + ] + }, + { + "cell": "67-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 2 + ], + "x3": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 21 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 2 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 21 + ], + "y0": [ + "target", + 26 + ], + "y1": [ + "target", + 30 + ], + "y2": [ + "target", + 90 + ], + "y3": [ + "target", + 94 + ], + "y4": [ + "target", + 58 + ], + "y5": [ + "target", + 62 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "1", + "1" + ], + [ + "1", + "0", + "1", + "1", + "1", + "1" + ], + [ + "1", + "1", + "0", + "1", + "1", + "1" + ], + [ + "1", + "1", + "1", + "0", + "1", + "1" + ], + [ + "1", + "1", + "1", + "1", + "0", + "1" + ], + [ + "1", + "1", + "1", + "1", + "1", + "0" + ] + ] + }, + { + "cell": "01-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 19 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 17 + ], + "x2": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 19 + ], + "x3": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 17 + ], + "x4": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 69 + ], + "y1": [ + "target", + 68 + ], + "y2": [ + "target", + 37 + ], + "y3": [ + "target", + 36 + ], + "y4": [ + "target", + 29 + ], + "y5": [ + "target", + 28 + ] + }, + "scaled": [ + [ + "y0", + "x1", + "-1/2" + ], + [ + "y1", + "x0", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x1", + "x0", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y0", + "x3", + "-1/2" + ], + [ + "y2", + "x1", + "-1/2" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y1", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y0", + "1" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ] + ], + "unit": [ + [ + "y0", + "x1", + 1 + ], + [ + "y1", + "x0", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x1", + "x0", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y0", + "x3", + 1 + ], + [ + "y2", + "x1", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y1", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y0", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x0", + 1 + ], + [ + "y4", + "x1", + 1 + ] + ], + "coefficients": [ + [ + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "23-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 19 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 17 + ], + "x4": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 66 + ], + "y1": [ + "target", + 70 + ], + "y2": [ + "target", + 101 + ], + "y3": [ + "target", + 100 + ], + "y4": [ + "target", + 93 + ], + "y5": [ + "target", + 92 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y1", + "x3", + "-1/2" + ], + [ + "y2", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y1", + "x3", + 1 + ], + [ + "y2", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "45-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 2 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 21 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 34 + ], + "y1": [ + "target", + 38 + ], + "y2": [ + "target", + 98 + ], + "y3": [ + "target", + 102 + ], + "y4": [ + "target", + 61 + ], + "y5": [ + "target", + 60 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x4", + "-1/2" + ], + [ + "y3", + "x5", + "-1/2" + ], + [ + "y5", + "x3", + "1" + ], + [ + "y4", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x4", + "-1/2" + ], + [ + "x5", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x4", + 1 + ], + [ + "y3", + "x5", + 1 + ], + [ + "y5", + "x3", + 1 + ], + [ + "y4", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x4", + 1 + ], + [ + "x5", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "0", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "-1/2", + "0" + ] + ] + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/inputs/TRI-LEAVER-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/inputs/TRI-LEAVER-k8.json new file mode 100644 index 0000000000..e3bb24cc49 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/inputs/TRI-LEAVER-k8.json @@ -0,0 +1,590 @@ +{ + "full_pairs": [ + [ + 0, + 1 + ], + [ + 2, + 3 + ], + [ + 4, + 5 + ], + [ + 6, + 7 + ] + ], + "triangles": [ + { + "p": [ + 0, + 1 + ], + "e": 1, + "reads": [ + [ + 57, + [ + 0, + 1, + 2, + 3 + ], + 0 + ], + [ + 56, + [ + 0, + 1, + 2, + 3 + ], + 1 + ], + [ + 25, + [ + 0, + 1, + 4, + 5 + ], + 0 + ], + [ + 24, + [ + 0, + 1, + 4, + 5 + ], + 1 + ], + [ + 17, + [ + 0, + 1, + 6, + 7 + ], + 0 + ], + [ + 16, + [ + 0, + 1, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 0 + }, + { + "p": [ + 2, + 3 + ], + "e": 1, + "reads": [ + [ + 63, + [ + 0, + 1, + 2, + 3 + ], + 3 + ], + [ + 59, + [ + 0, + 1, + 2, + 3 + ], + 23 + ], + [ + 89, + [ + 2, + 3, + 4, + 5 + ], + 0 + ], + [ + 88, + [ + 2, + 3, + 4, + 5 + ], + 1 + ], + [ + 81, + [ + 2, + 3, + 6, + 7 + ], + 0 + ], + [ + 80, + [ + 2, + 3, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 1 + }, + { + "p": [ + 4, + 5 + ], + "e": 1, + "reads": [ + [ + 31, + [ + 0, + 1, + 4, + 5 + ], + 3 + ], + [ + 27, + [ + 0, + 1, + 4, + 5 + ], + 23 + ], + [ + 95, + [ + 2, + 3, + 4, + 5 + ], + 3 + ], + [ + 91, + [ + 2, + 3, + 4, + 5 + ], + 23 + ], + [ + 49, + [ + 4, + 5, + 6, + 7 + ], + 0 + ], + [ + 48, + [ + 4, + 5, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 2 + }, + { + "p": [ + 6, + 7 + ], + "e": 1, + "reads": [ + [ + 23, + [ + 0, + 1, + 6, + 7 + ], + 3 + ], + [ + 19, + [ + 0, + 1, + 6, + 7 + ], + 23 + ], + [ + 87, + [ + 2, + 3, + 6, + 7 + ], + 3 + ], + [ + 83, + [ + 2, + 3, + 6, + 7 + ], + 23 + ], + [ + 55, + [ + 4, + 5, + 6, + 7 + ], + 3 + ], + [ + 51, + [ + 4, + 5, + 6, + 7 + ], + 23 + ] + ], + "coded": true, + "cell": 3 + }, + { + "p": [ + 6, + 7 + ], + "e": -1, + "reads": [ + [ + 18, + [ + 0, + 1, + 6, + 7 + ], + 21 + ], + [ + 22, + [ + 0, + 1, + 6, + 7 + ], + 2 + ], + [ + 82, + [ + 2, + 3, + 6, + 7 + ], + 21 + ], + [ + 86, + [ + 2, + 3, + 6, + 7 + ], + 2 + ], + [ + 50, + [ + 4, + 5, + 6, + 7 + ], + 21 + ], + [ + 54, + [ + 4, + 5, + 6, + 7 + ], + 2 + ] + ], + "coded": true, + "cell": 4 + }, + { + "p": [ + 0, + 1 + ], + "e": -1, + "reads": [ + [ + 61, + [ + 0, + 1, + 2, + 3 + ], + 17 + ], + [ + 60, + [ + 0, + 1, + 2, + 3 + ], + 19 + ], + [ + 29, + [ + 0, + 1, + 4, + 5 + ], + 17 + ], + [ + 28, + [ + 0, + 1, + 4, + 5 + ], + 19 + ], + [ + 21, + [ + 0, + 1, + 6, + 7 + ], + 17 + ], + [ + 20, + [ + 0, + 1, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 5 + }, + { + "p": [ + 2, + 3 + ], + "e": -1, + "reads": [ + [ + 58, + [ + 0, + 1, + 2, + 3 + ], + 21 + ], + [ + 62, + [ + 0, + 1, + 2, + 3 + ], + 2 + ], + [ + 93, + [ + 2, + 3, + 4, + 5 + ], + 17 + ], + [ + 92, + [ + 2, + 3, + 4, + 5 + ], + 19 + ], + [ + 85, + [ + 2, + 3, + 6, + 7 + ], + 17 + ], + [ + 84, + [ + 2, + 3, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 6 + }, + { + "p": [ + 4, + 5 + ], + "e": -1, + "reads": [ + [ + 26, + [ + 0, + 1, + 4, + 5 + ], + 21 + ], + [ + 30, + [ + 0, + 1, + 4, + 5 + ], + 2 + ], + [ + 90, + [ + 2, + 3, + 4, + 5 + ], + 21 + ], + [ + 94, + [ + 2, + 3, + 4, + 5 + ], + 2 + ], + [ + 53, + [ + 4, + 5, + 6, + 7 + ], + 17 + ], + [ + 52, + [ + 4, + 5, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 7 + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/premise_check.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/premise_check.py new file mode 100644 index 0000000000..98efec187d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/premise_check.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python3 +"""premise_check.py WORD : PR1049's independent checks on a NEW word -- literal location of all eight coded cells, the leaver +premise (no post-cell touch, no early-tail touch, FULL-cleanup restoration, not a centre/entering/low-ended register), +the exact all-column endpoint, and the frame/profile recount. verify_1049.py is PR1049's verify.py, unchanged; its two +coded-cell inputs are copied byte-for-byte (sha256-pinned inside it).""" +import gzip, json, sys +from pathlib import Path +sys.path.insert(0, str(Path(__file__).resolve().parent)) +import verify_1049 as V +w = json.loads(gzip.decompress(Path(sys.argv[1]).read_bytes())) +cells = V.read_pinned('CODED-CELLS-k8.json'); tri = V.read_pinned('TRI-LEAVER-k8.json') +cells = cells['cells'] if isinstance(cells, dict) and 'cells' in cells else cells +found, rep = V.audit_word(w, cells, V.cell_targets(cells, tri)) +print(json.dumps(dict(status='PASS_LEAVER_PREMISE', cells=len(found), leavers=len(rep['leavers']), + paid_profile=rep['paid_profile']))) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/verify_1049.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/verify_1049.py new file mode 100644 index 0000000000..3e34e2c5a6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/premise/verify_1049.py @@ -0,0 +1,430 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: Apache-2.0 +# Prepared by Sagar Thakrar with substantial Anthropic Claude assistance. +"""Independent audit of the mutable-leaver all-K cells of PR1005, and of the same cells in PR1018's word. + +Standard library only. No code from the audited packages is imported; their words are read as data +(see SOURCES.json for how each pinned input was produced). The checks follow the documented +scalar/frame semantics of the gauge44 local words: + +E Endpoint. Each data column is replayed forward through precondition + A + cut + B + tail + + cleanup and must give x_t -> x_t + y_t-coordinate, i.e. x -> x, y_t -> y_t + x_t. Each helper + column is replayed through the inverse of the post-precondition program; the result must be + the unit vector plus a target-only residue. That is exactly the condition under which a + pre-main compensation y -= a*h exists. The residue must vanish for entering helpers. +F Frames. Monotone climbs over A, the centre paths, B, the early-cleanup tail and the terminal + ends. The FULL cleanup may touch only registers that end at FULL. The paid histogram must equal + the word's recorded local profile. +L Leaver cells. Each coded cell's 21 scaled gates are located literally (contiguous, in order) + in A + cut + B by unification. Each name binds to one register, the y-names bind to the cell's + six targets (TRI read indices; the coded index is t8 + 8), and the x-names bind to non-targets. + For every mutated leaver: it is not a centre, entering helper or low-ended helper. It is never + touched again in A/cut/B or the tail after its cell, and it is written later in the FULL + cleanup. Its value at the end of B differs from its input, so the restoration is real work. +D Profile deltas. The raw-stage paid profiles of the no-triangle, k5 and k8 words are recomputed + with F and differenced. +Every check raises AuditError directly (no assert), so it also runs under python -O. +""" +import argparse, copy, gzip, hashlib, json, sys +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path + +HERE = Path(__file__).resolve().parent +IN = HERE / 'inputs' +PINS = { # sha256 of the decompressed JSON (of the file itself for .json) + 'k8-cell-word.json.gz': '58e14a02f2c1d4dcfeb363ebd5fa2e713064b5c724d90f6721419a8cfa67729b', + 'k8-final-word.json.gz': 'db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83', + 'k8-seven-slot-word.json.gz': 'c2b294300760e1fd6eeab8c22c4d13e4633dca40e52cac8da0d68163a76e3ca8', + 'notri-cold44-word.json.gz': '3e99ba778ab8a97853f50912776247802b529439937176363f6c42786163b1f9', + 'raw-notri.json.gz': '5a55ea28628e3d76ed31393505f4605d7a8d5b002716a44115fea60cdc3477e3', + 'raw-k5.json.gz': 'c9114254533c7e272504016764c93370e18734469587a86fb07652b85f8ae209', + 'raw-k8.json.gz': '85c0e64718a9ceafe094e7152ea27ec9d7f804e514b5efaab085a94b7ef1841f', + 'CODED-CELLS-k8.json': '7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563', + 'TRI-LEAVER-k8.json': 'b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30', +} + + +class AuditError(Exception): + pass + + +def need(ok, msg): + if not ok: + raise AuditError(msg) + + +def read_pinned(name): + data = (IN / name).read_bytes() + raw = gzip.decompress(data) if name.endswith('.gz') else data + need(hashlib.sha256(raw).hexdigest() == PINS[name], 'input pin mismatch: ' + name) + return json.loads(raw) + + +# ------------------------------------------------------------------ scalar semantics + +def regs(g): + return (g[1], g[2]) if g[0] == 'add' else (g[1],) + + +def coef(g): + return Q(g[3], g[4]) if g[0] == 'add' else Q(g[2], g[3]) + + +def forward(gates, col): + for g in gates: + if g[0] == 'add': + x = col.get(g[2]) + if x: + y = col.get(g[1], 0) + coef(g) * x + if y: + col[g[1]] = y + else: + col.pop(g[1], None) + elif g[0] == 'scale': + if g[1] in col: + col[g[1]] *= coef(g) + else: + raise AuditError('unknown gate ' + str(g[0])) + return col + + +def inverse(gates, col): + for g in reversed(gates): + if g[0] == 'add': + x = col.get(g[2]) + if x: + y = col.get(g[1], 0) - coef(g) * x + if y: + col[g[1]] = y + else: + col.pop(g[1], None) + elif g[1] in col: + col[g[1]] /= coef(g) + return col + + +def parts(w): + early = w.get('early_cleanup', []) + ids = [i for i, _ in early] + need(len(ids) == len(set(ids)), 'duplicate early-cleanup index') + tail = [list(w['cleanup'][i][:-1]) + [U] for i, U in early] + cleanup = [g for i, g in enumerate(w['cleanup']) if i not in set(ids)] + return w['precondition'], w['A'] + w['cut'] + w['B'], tail, cleanup + + +def endpoint(w): + v, R = w['report']['v'], w['report']['R'] + n = 2 * v + R + pre, main, tail, cleanup = parts(w) + for g in pre + main + tail + cleanup: + need(all(0 <= r < n for r in regs(g)), 'register out of range') + need(g[0] != 'add' or g[1] != g[2], 'self add') + q = coef(g) + need(q != 0 and q.denominator & (q.denominator - 1) == 0, 'non-dyadic or zero scalar') + need(all(v <= r < 2 * v for g in pre for r in regs(g)), 'precondition touches a non-target') + full, post = pre + main + tail + cleanup, main + tail + cleanup + entering = {int(k) for k in w.get('start_extra', {})} + bad, residue = [], 0 + for c in range(2 * v): + want = {c: Q(1)} + if c < v: + want[v + c] = Q(1) + if forward(full, {c: Q(1)}) != want: + bad.append(('data', c)) + for k in range(2 * v, n): + out = inverse(post, {k: Q(1)}) + rest = {r: x for r, x in out.items() if r != k} + if out.get(k) != 1 or any(not v <= r < 2 * v for r in rest): + bad.append(('helper', k)) + elif rest and k in entering: + bad.append(('entering-response', k)) + residue += len(rest) + need(not bad, 'endpoint failures %s' % bad[:6]) + return dict(columns=n, data_columns=2 * v, helper_columns=R, target_residue_entries=residue) + + +# ------------------------------------------------------------------ frames + +def span(vectors): + piv = {} + for x in vectors: + need(type(x) is int and x >= 0, 'bad frame vector') + while x: + b = x.bit_length() - 1 + if b in piv: + x ^= piv[b] + else: + piv[b] = x + break + for b in sorted(piv): + for u in piv: + if u > b and piv[u] >> b & 1: + piv[u] ^= piv[b] + return frozenset(piv.values()) + + +def frames(w): + v, h, R = w['report']['v'], w['report']['h'], w['report']['R'] + n = 2 * v + R + FULL = span([1 << i for i in range(h)]) + hyper = lambda p: span([x for x in range(1, 1 << h) if bin(x & p).count('1') % 2 == 0]) + cur = [span([p]) for p in w['ports']] + [span([])] * (v + R) + for q, U in w.get('start_extra', {}).items(): + need(2 * v <= int(q) < n, 'entrance on a non-helper') + cur[int(q)] = span(U) + start = list(cur) + end = [FULL] * v + [hyper(p) for p in w['ports']] + [FULL] * R + for q, U in w.get('helper_final', {}).items(): + end[int(q)] = span(U) + paid = Counter() + + def climb(r, U, where): + U = U if isinstance(U, frozenset) else span(U) + need(span(list(cur[r]) + list(U)) == U, 'non-monotone climb in %s, register %d' % (where, r)) + if len(U) > len(cur[r]): + paid[len(U) - len(cur[r])] += 1 + cur[r] = U + + pre, main, tail, cleanup = parts(w) + for g in w['A']: + for r in regs(g): + climb(r, g[-1], 'A') + need(not w.get('target_levels'), 'nonzero target levels are outside this audit') + need(all(cur[v + t] == span([]) for t in range(v)), 'targets not at level zero before B') + for q, U in zip(w['centers'], w['center_frames']): + need(cur[q] == span(U), 'centre carrier frame') + paid[len(span(U))] += 1 + for g in w['B']: + for r in regs(g): + climb(r, g[-1], 'B') + for g in tail: + for r in regs(g): + climb(r, g[-1], 'tail') + for r in range(n): + climb(r, end[r], 'end') + need(all(end[r] == FULL for g in cleanup for r in regs(g)), 'FULL cleanup touches a low end') + paid = {k: paid[k] for k in sorted(paid)} + need(paid == {int(k): x for k, x in w['report']['local_profile'].items()}, 'paid profile differs from the recorded profile') + return paid + + +# ------------------------------------------------------------------ leaver cells + +def cell_targets(cells, tri): + out = {} + for tr in tri['triangles']: + if tr.get('coded'): + c = cells[tr['cell']] + t8 = {r[0] for r in tr['reads']} + need({b[1] - 8 for b in c['bindings'].values() if b[0] == 'target'} == t8, 'TRI/coded index mismatch ' + c['cell']) + out[c['cell']] = t8 + need(len(out) == len(cells), 'a coded cell lacks a TRI entry') + return out + + +def locate(w, cells, targets): + v = w['report']['v'] + main = w['A'] + w['cut'] + w['B'] + found = [] + for cell in cells: + pat = [(t, s, Q(q)) for t, s, q in cell['scaled']] + T = {v + t for t in targets[cell['cell']]} + hits = [] + for i in range(len(main) - len(pat) + 1): + bind, ok = {}, True + for k, (tn, sn, q) in enumerate(pat): + g = main[i + k] + if g[0] != 'add' or Q(g[3], g[4]) != q: + ok = False + break + for name, reg in ((tn, g[1]), (sn, g[2])): + if bind.setdefault(name, reg) != reg or (name[0] == 'y') != (reg in T): + ok = False + if not ok: + break + if ok and len(set(bind.values())) == len(bind): + hits.append((i, bind)) + need(len(hits) == 1, 'cell %s located %d times' % (cell['cell'], len(hits))) + i, bind = hits[0] + need({bind[x] for x in bind if x[0] == 'y'} == T, 'cell %s target set' % cell['cell']) + found.append(dict(cell=cell['cell'], start=i, stop=i + len(pat), bind=bind, + leavers=sorted({bind[t] for t, s, q in pat if t[0] == 'x'}))) + ivals = sorted((c['start'], c['stop']) for c in found) + need(all(a[1] <= b[0] for a, b in zip(ivals, ivals[1:])), 'overlapping cells') + return found + + +def premise(w, found): + v, R = w['report']['v'], w['report']['R'] + pre, main, tail, cleanup = parts(w) + special = set(w['centers']) | {int(k) for k in w.get('start_extra', {})} | {int(k) for k in w.get('helper_final', {})} + tail_regs = {r for g in tail for r in regs(g)} + rows = [] + for c in found: + for r in c['leavers']: + need(r not in special, 'leaver %d is a centre, entering or low-ended register' % r) + later = [j for j in range(c['stop'], len(main)) if r in regs(main[j])] + need(not later, 'leaver %d touched in main after its cell (index %d)' % (r, later[0] if later else -1)) + need(r not in tail_regs, 'leaver %d touched in the early-cleanup tail' % r) + writes = [j for j, g in enumerate(cleanup) if g[1] == r] + need(writes, 'leaver %d is never written in the FULL cleanup' % r) + rows.append(dict(cell=c['cell'], register=r, kind='data' if r < v else 'helper', + first_full_cleanup_write=writes[0], full_cleanup_writes=len(writes))) + # value after precondition + main, as a linear form in the inputs + want = {row['register'] for row in rows} + form = {r: {r: Q(1)} for r in range(2 * v + R)} + for g in pre + main: + if g[0] == 'add': + dst, q = form[g[1]], coef(g) + for k, x in form[g[2]].items(): + y = dst.get(k, 0) + q * x + if y: + dst[k] = y + else: + dst.pop(k, None) + else: + form[g[1]] = {k: x * coef(g) for k, x in form[g[1]].items()} + need(all(form[r] != {r: Q(1)} for r in want), 'a leaver holds its input value at the end of B') + return rows + + +def audit_word(w, cells, targets): + found = locate(w, cells, targets) + rows = premise(w, found) + return found, dict(R=w['report']['R'], paid_profile=frames(w), endpoint=endpoint(w), + cells=[dict(cell=c['cell'], main_index=c['start'], leavers=c['leavers']) for c in found], + leavers=rows) + + +# ------------------------------------------------------------------ negative controls + +def controls(w, found, cells, targets): + by = {c['cell']: c for c in cells} + nA, nC = len(w['A']), len(w['cut']) + c0 = found[0] + pat = by[c0['cell']]['scaled'] + r0 = c0['leavers'][0] + + def at(i): + return ('A', i) if i < nA else (('cut', i - nA) if i < nA + nC else ('B', i - nA - nC)) + + def outcome(name, m, expect): + for check, fn in (('endpoint', lambda: endpoint(m)), ('frames', lambda: frames(m)), + ('premise', lambda: premise(m, found))): + try: + fn() + except AuditError as e: + need(check == expect, 'control %s rejected by %s, expected %s: %s' % (name, check, expect, e)) + return name, '%s: %s' % (check, str(e)[:70]) + raise SystemExit('CONTROL ACCEPTED: ' + name) + + out = [] + h = w['report']['h'] + FULLF = [1 << j for j in range(h)] + kx = next(k for k, (t, s, q) in enumerate(pat) if t[0] == 'x') + m = copy.deepcopy(w); sec, i = at(c0['start'] + kx); del m[sec][i] + out.append(outcome('N1_drop_leaver_write', m, 'endpoint')) + early = {i for i, _ in w.get('early_cleanup', [])} + k = next(i for i, g in enumerate(w['cleanup']) if i not in early and g[1] == r0) + m = copy.deepcopy(w); del m['cleanup'][k] + m['early_cleanup'] = [[i - (i > k), U] for i, U in w.get('early_cleanup', [])] + out.append(outcome('N2_drop_full_cleanup_restore', m, 'endpoint')) + # A semantically neutral pair at FULL: only the premise check can see it. + pre, main, tail, cleanup = parts(w) + busy = {r for g in tail for r in regs(g)} | set(w['centers']) | {int(q) for q in w.get('helper_final', {})} + v, R = w['report']['v'], w['report']['R'] + hh = max(r for r in range(2 * v, 2 * v + R) if r not in busy) + m = copy.deepcopy(w); m['B'] += [['add', hh, r0, 1, 2, FULLF], ['add', hh, r0, -1, 2, FULLF]] + out.append(outcome('N3_neutral_touch_of_leaver_after_cell', m, 'premise')) + m = copy.deepcopy(w); sec, i = at(c0['start']); m[sec][i][3] *= 3 + out.append(outcome('N4_wrong_cell_coefficient', m, 'endpoint')) + xn = pat[kx][0] + kr = next(k for k, (t, s, q) in enumerate(pat) if k > kx and s == xn) + m = copy.deepcopy(w); a, b = at(c0['start'] + kx), at(c0['start'] + kr) + need(a[0] == b[0], 'control N5 spans sections') + m[a[0]][a[1]], m[b[0]][b[1]] = m[b[0]][b[1]], m[a[0]][a[1]] + out.append(outcome('N5_leaver_write_after_its_read', m, 'endpoint')) + y = next(b for nm, b in c0['bind'].items() if nm[0] == 'y') + e = min(int(q) for q in w['start_extra']) + m = copy.deepcopy(w); m['B'].insert(0, ['add', y, e, 1, 1, FULLF]) + out.append(outcome('N6_entering_dirt_into_cell_target', m, 'endpoint')) + m = copy.deepcopy(w); sec, i = at(c0['start'] + kx); m[sec][i][-1] = [] + out.append(outcome('N7_leaver_gate_below_current_frame', m, 'frames')) + return dict(out) + + +# ------------------------------------------------------------------ driver + +def delta(a, b): + return {r: a.get(r, 0) - b.get(r, 0) for r in sorted(set(a) | set(b)) if a.get(r, 0) != b.get(r, 0)} + + +def scale(u, s): + return {r: s * x for r, x in u.items()} + + +def run(): + cells = read_pinned('CODED-CELLS-k8.json') + targets = cell_targets(cells, read_pinned('TRI-LEAVER-k8.json')) + words = {name: read_pinned(f) for name, f in [('cell', 'k8-cell-word.json.gz'), ('final', 'k8-final-word.json.gz'), + ('seven_slot', 'k8-seven-slot-word.json.gz')]} + res = dict(status=None, audited={}, controls={}) + keep = {} + for name, w in words.items(): + found, res['audited'][name] = audit_word(w, cells, targets) + res['audited'][name]['content_sha256'] = PINS[{'cell': 'k8-cell-word.json.gz', 'final': 'k8-final-word.json.gz', 'seven_slot': 'k8-seven-slot-word.json.gz'}[name]] + keep[name] = found + print('PASS', name, res['audited'][name]['paid_profile'], flush=True) + for name in ('final', 'seven_slot'): + res['controls'][name] = controls(words[name], keep[name], cells, targets) + print('PASS controls', name, len(res['controls'][name]), flush=True) + # Face events: data-register leavers receive one B-section write in both the base and the cell word. + base = read_pinned('notri-cold44-word.json.gz') + v = base['report']['v'] + data_leavers = sorted(r for c in keep['cell'] for r in c['leavers'] if r < v) + def bwrites(w): + return {x: [[g[2], str(coef(g))] for g in w['B'] if g[0] == 'add' and g[1] == x] for x in data_leavers} + wb, wc = bwrites(base), bwrites(words['cell']) + need(all(len(wb[x]) == 1 and len(wc[x]) == 1 for x in data_leavers), 'a data leaver lacks exactly one B write') + awrites = lambda w: [[g[1], g[2], str(coef(g))] for g in w['A'] if g[0] == 'add' and g[1] in data_leavers] + need(awrites(base) == awrites(words['cell']), 'A-section writes to data leavers changed') + res['face_events'] = dict(data_leavers=data_leavers, base_B_write=wb, cell_B_write=wc, + repaired=[x for x in data_leavers if wb[x] != wc[x]]) + # Profile deltas. + raw = {k: read_pinned(f) for k, f in [('notri', 'raw-notri.json.gz'), ('k5', 'raw-k5.json.gz'), ('k8', 'raw-k8.json.gz')]} + P = {k: frames(w) for k, w in raw.items()} + d5, d3 = delta(P['k5'], P['notri']), delta(P['k8'], P['k5']) + unit = {r: x // 5 for r, x in d5.items()} + need(scale(unit, 5) == d5 and scale(unit, 3) == d3, 'raw per-cell deltas are not additive') + need(raw['notri']['report']['R'] - raw['k5']['report']['R'] == 15 and raw['k5']['report']['R'] - raw['k8']['report']['R'] == 9, 'helper counts') + claimed = {1: -30, 2: 6, 3: 6} + slot = delta(res['audited']['seven_slot']['paid_profile'], res['audited']['final']['paid_profile']) + need(slot == scale({3: 2, 4: -4, 5: 2}, 7), 'seven-slot delta is not 7 x {3:+2,4:-4,5:+2}') + res['profile_deltas'] = dict(raw_profiles={k: P[k] for k in P}, k5_minus_notri=d5, k8_minus_k5=d3, + per_cell_raw=unit, helpers_removed_per_cell=3, + pr_description_per_cell=claimed, matches_pr_description=unit == claimed, + rank_mass_per_cell_raw=sum(r * x for r, x in unit.items()), + seven_slot_minus_final=slot) + res['status'] = 'PASS_INDEPENDENT_MUTABLE_LEAVER_AUDIT' + return res + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--write', action='store_true', help='write RESULT.json instead of comparing with it') + a = ap.parse_args() + try: + res = run() + except AuditError as e: + print('FAIL', e) + sys.exit(1) + text = json.dumps(res, indent=1, sort_keys=True) + '\n' + if a.write: + (HERE / 'RESULT.json').write_text(text) + else: + need((HERE / 'RESULT.json').read_text() == text, 'result differs from committed RESULT.json') + d = res['profile_deltas'] + print('%s cells=8 leavers=%d columns=%d controls=%d per_cell_raw=%s claimed_match=%s' % ( + res['status'], len(res['audited']['final']['leavers']), res['audited']['final']['endpoint']['columns'], + sum(map(len, res['controls'].values())), d['per_cell_raw'], d['matches_pr_description'])) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/verify_ends7.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/verify_ends7.py new file mode 100644 index 0000000000..594a843b15 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/verify_ends7.py @@ -0,0 +1,150 @@ +#!/usr/bin/env python3 +"""Rebuild rank-seven ends574/575 AND the eighth triangle slot X54 on the checked seven-slot k8 baseline. + +The completed baseline replay is hash-checked. Ends7 is rebuilt and its dual-auditor controls run on that intermediate +word. Then the pinned post-ends7 X54 recipe is applied with the unchanged triangle builder and all ten X54 controls +are checked. Native transport, ledgers, replay, wrappers, exact phases, independent audit and PR1049's full leaver +premise are checked against COMPOSITE pins. Strict T8 and T16 both run on the rebuilt composite locals and frozen data. +The CLI is retained for autoship dispatch, but the final marker explicitly identifies the eight-slot construction. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +PKG = HERE.parents[1] +FASTPATH = HERE / 'fastpath/phases_fast.py' # PR1029 sparse exact evaluator driver (FastPhases) +BASE_STEPS = ['parent-manifest', 'slots', 'slot-controls', 'native', 'ledgers', 'local-replay', 'wrappers', 'phases', + 'audit-local', 'strict'] + + +def read(p): + b = Path(p).read_bytes() + return json.loads(gzip.decompress(b) if str(p).endswith('.gz') else b) + + +def csha(p): return hashlib.sha256(gzip.decompress(Path(p).read_bytes())).hexdigest() +def fsha(p): return hashlib.sha256(Path(p).read_bytes()).hexdigest() + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True, help='repository root') + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--baseline', type=Path, required=True, help='completed verify_slots[_fast].py --work directory') + ap.add_argument('--work', type=Path, required=True) + ap.add_argument('--phases', choices=('sparse', 'reference'), default='sparse') + ap.add_argument('--fastpath', type=Path, default=FASTPATH, help="FastPhases' fastpath/phases_fast.py (PR1029 driver)") + ap.add_argument('--phase-jobs', type=int, default=4) + a = ap.parse_args() + root = a.main.resolve(); work = a.work.resolve(); assert not work.exists(); work.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = root / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; par = base / 'vendor/pr552' + routing = par / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + env.pop('PYTHONOPTIMIZE', None) + sp = read(PKG / 'construction/slots/SLOT-PINS-k8.json'); epins = read(HERE / 'ENDS7-PINS-k8.json') + pins = read(HERE / 'x54/X54-PINS.json'); steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (work / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT, cwd=root, + creationflags=0x08000000 if os.name == 'nt' else 0) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (work / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + return (work / (label + '.log')).read_text() + + # 1. baseline: completed slot replay + bl = a.baseline.resolve(); bw = bl / 'slots/FULL-WORD.json.gz'; blocal = bl / 'local' + bsteps = read(bl / 'STEPS.json') + assert [s['step'] for s in bsteps] == BASE_STEPS and all(s['exit_code'] == 0 for s in bsteps), 'baseline is not a complete slot replay' + assert csha(bw) == sp['word_sha256'] == epins['base_sha256'], 'baseline slot word' + assert csha(blocal / 'CANONICAL-WORD.json.gz') == sp['canonical_sha256'], 'baseline canonical' + chk = read(blocal / 'LOCAL-CHECKS.json') + assert {o: chk[o]['sha256'] for o in ('forward', 'backward')} == sp['program_sha256'], 'baseline programs' + assert fsha(blocal / 'CLIFFORD-RECIPES.json') == sp['clifford_recipes_sha256'], 'baseline Clifford' + assert read(bl / 'RESULT.json')['status'] == 'PASS_SLOTS_ON_CHECKED_K8_BASELINE' + print('PASS baseline', flush=True) + + # 2. rank-seven ends and their controls + rec = HERE / 'RECIPE-ENDS7-k8.json'; r = read(rec) + assert r['input_sha256'] == epins['base_sha256'] and r['expected']['output_sha256'] == epins['word_sha256'] + assert [e[0] for e in r['ends']] == epins['helpers'] + (work / 'ends7').mkdir(); ew = work / 'ends7/FULL-WORD.json.gz' + run('ends7', HERE / 'build_ends7.py', bw, rec, ew, portable=False) + assert csha(ew) == epins['word_sha256'] == pins['base_sha256'], 'intermediate ends7 word' + run('ends7-controls', HERE / 'end7_controls.py', bw, rec, PKG / 'independent/audit_local.py', + up / 'code/hpe_audit_and_transport.py', src / 'code/run_portable.py', routing, work / 'ends7-controls', portable=False) + c = read(work / 'ends7-controls/END7-CONTROLS.json') + assert c['status'] == 'PASS_RANK7_END_CONTROLS' and c['rejections'] == epins['control_rejections'], c['status'] + + # Explicit eighth slot; never pass the intermediate ends7 word as the final construction. + xr = HERE / 'x54/RECIPE-X54-ends7.json'; recipe = read(xr) + assert recipe['base_sha256'] == pins['base_sha256'] and recipe['expect_sha256'] == pins['word_sha256'] + assert recipe['variants'] == [{'X': 54, 'E': 589, 'hold': [335, 367]}] + assert recipe['local_profile'] == pins['local_profile'] + (work / 'x54').mkdir(); fw = work / 'x54/FULL-WORD.json.gz' + run('x54', HERE / 'x54/build_tri.py', ew, xr, fw, portable=False) + assert csha(fw) == pins['word_sha256'], 'composite word' + run('x54-controls', HERE / 'x54/run_controls.py', ew, xr, PKG / 'independent/audit_local.py', + work / 'x54-controls', portable=False) + xc = read(work / 'x54-controls/controls.json') + assert len(xc) == pins['control_cases'] and all(case['ok'] for case in xc.values()), 'X54 controls' + + # 3. native locals of the new word + local = work / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', fw, '--routing', routing, '--out', local) + assert csha(local / 'CANONICAL-WORD.json.gz') == pins['canonical_sha256'] + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + chk = read(local / 'LOCAL-CHECKS.json') + assert {o: chk[o]['sha256'] for o in ('forward', 'backward')} == pins['program_sha256'] + if a.phases == 'reference': + run('phases', base / 'code/phases_full.py', local, par / 'complex-global/vendor531/vendor/clifford') + else: + run('phases', a.fastpath.resolve(), local, par / 'complex-global/vendor531/vendor/clifford', + root / 'research/clifford-state-performance/fast_state.py', max(1, a.phase_jobs)) + assert fsha(local / 'CLIFFORD-RECIPES.json') == pins['clifford_recipes_sha256'] + + # 4. independent local audit and PR1049's leaver premise on the new word + run('audit-local', PKG / 'independent/audit_local.py', '--word', fw, '--main', root, '--output', work / 'AUDIT-LOCAL.json', portable=False) + assert read(work / 'AUDIT-LOCAL.json')['status'] == 'PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES' + out = run('leaver-premise', HERE / 'premise/premise_check.py', fw, portable=False) + lp = json.loads(out.strip().splitlines()[-1]) + assert lp['status'] == 'PASS_LEAVER_PREMISE' and lp['cells'] == 8 and lp['paid_profile'] == pins['local_profile'], lp + + # 5. strict replay of this package's data on the new locals: T8 (verify_global.py) or, in a T16 package, verify_t16.py + gpkg = PKG + if (PKG / 'data/T8').is_dir(): # T16 package: strict T8 = research/gauge44-slots (#1018, the T8 admission code) with + import shutil # this package's frozen T8 data (data/T8 + data/SPEC-T8.json) swapped in + gpkg = work / 't8-view' + shutil.copytree(root / 'research/gauge44-slots', gpkg, ignore=shutil.ignore_patterns('__pycache__')) + shutil.copytree(PKG / 'construction', gpkg / 'construction', dirs_exist_ok=True, + ignore=shutil.ignore_patterns('__pycache__')) + for f in ('PLAN.json', 'OWNERS.json.gz'): shutil.copyfile(PKG / 'data/T8' / f, gpkg / 'data' / f) + shutil.copyfile(PKG / 'data/SPEC-T8.json', gpkg / 'data/SPEC.json') + out = run('strict', gpkg / 'verify_global.py', '--main', root, '--local', local, '--work', work / 'global', portable=False) + last = [l for l in out.splitlines() if l.startswith('PASS_GAUGE44')][-1] + assert last.split()[1] == pins['kappa_decimal'], last + kd8 = pins['kappa_decimal'] + run('strict-t16', PKG / 'verify_t16.py', '--main', root, '--local', local, + '--work', work / 't16', portable=False) + t16 = read(work / 't16/REPLAY.json') + assert t16['kappa_decimal'] == pins['kappa_t16_decimal'], 'composite T16 kappa' + kd = pins['kappa_t16_decimal'] + res = dict(status='PASS_RANK7_ENDS_AND_X54_ON_CHECKED_SLOT_BASELINE', kappa_decimal=kd, + kappa_t8_decimal=kd8, strict=last, word_sha256=pins['word_sha256'], + baseline=str(bl), steps=steps) + (work / 'RESULT.json').write_text(json.dumps(res, indent=1) + '\n') + print(res['status'], kd, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/RECIPE-X54-ends7.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/RECIPE-X54-ends7.json new file mode 100644 index 0000000000..af03c4606e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/RECIPE-X54-ends7.json @@ -0,0 +1,163 @@ +{ + "base_sha256": "f64e0942edc5eb2d45b0a3b068ba942436f35ba9a077ff53d7e4424d1617b2cd", + "B_delete": [ + 44, + 922, + 933, + 1196, + 1212 + ], + "B_insert": [ + [ + 44, + [ + "add", + 219, + 589, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 898, + [ + "add", + 367, + 589, + 1, + 1, + [ + 288, + 166, + 96, + 20, + 10, + 1 + ] + ] + ], + [ + 898, + [ + "add", + 335, + 54, + 1, + 1, + [ + 267, + 138, + 75, + 42, + 25, + 7 + ] + ] + ], + [ + 1196, + [ + "add", + 219, + 589, + 1, + 1, + [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1212, + [ + "add", + 155, + 54, + 1, + 1, + [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ] + ] + ] + ], + "B_frames": {}, + "tail_insert": [ + [ + 0, + [ + "add", + 367, + 589, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ] + ], + "cleanup_prepend": [ + [ + "add", + 335, + 54, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ] + ], + "local_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "expect_sha256": "9fca1fc6f1fa0a9469fc10e3b90dc2c9802bf391b45f84d52ce5e7f6706c9674", + "variants": [ + { + "X": 54, + "E": 589, + "hold": [ + 335, + 367 + ] + } + ], + "source": "Recovered X54 eighth triangle slot composed after verified rank-seven ends574/575", + "note": "early-cleanup gate frames in cleanup are kept as in base (package T-frame convention)" +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/X54-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/X54-PINS.json new file mode 100644 index 0000000000..b654ea4bde --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/X54-PINS.json @@ -0,0 +1,21 @@ +{ + "base_sha256": "f64e0942edc5eb2d45b0a3b068ba942436f35ba9a077ff53d7e4424d1617b2cd", + "word_sha256": "9fca1fc6f1fa0a9469fc10e3b90dc2c9802bf391b45f84d52ce5e7f6706c9674", + "canonical_sha256": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "program_sha256": { + "forward": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "backward": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + "clifford_recipes_sha256": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "local_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "control_cases": 10, + "kappa_decimal": "0.001671160051689084", + "kappa_t16_decimal": "0.001673006105142741" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/build_tri.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/build_tri.py new file mode 100644 index 0000000000..a4d3c74914 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/build_tri.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python3 +"""build_tri.py BASE_WORD RECIPE OUT_WORD [--control NAME] + +Standard library only. Applies a NewBArch triangle-hybrid recipe to the X4 word (1e1d99ba) and writes a FULL-WORD.json.gz. +Recipe keys (all indices refer to the BASE word): + base_sha256 sha256 of the decompressed base JSON (checked) + B_delete list of B indices removed + B_insert list of [pos, gate]: gate (with frame) inserted before base B gate pos (list order kept) + B_frames {index: frame}: explicit re-chosen frame of a kept base B gate + tail_insert list of [early_index, gate]: gates appended to cleanup in list order, then registered as early cleanup at early_index (ascending) + cleanup_prepend list of gates prepended to the full cleanup (early indices are shifted) + local_profile report.local_profile of the result + expect_sha256 sha256 of the decompressed result (checked unless a control is requested) +Controls (each must be REJECTED by audit_local; see controls.json): + drop_restore omit cleanup_prepend (end value of the holder not restored) + restore_full move tail_insert gates into the full cleanup (FULL frame) instead of early cleanup + drop_preread omit the inserted entrance pre-reads (inserted target += E gates at pos < first donation) + donation_after insert each donation after its reading target's read instead of before it + NAME@X the same control restricted to the instance whose packet register is X (recipe 'variants') +""" +import sys, json, gzip, hashlib, copy + +FULL = [256, 128, 64, 32, 16, 8, 4, 2, 1] + +def load(p): + raw = gzip.decompress(open(p, 'rb').read()); return json.loads(raw), hashlib.sha256(raw).hexdigest() + +def apply(w, rc, control=None): + w = copy.deepcopy(w); B = w['B'] + S = None + if control and '@' in control: # per-instance control: name@X mutates only instance X's gates + control, x = control.split('@'); x = int(x) + vv = [s for s in rc['variants'] if s['X'] == x][0]; S = {vv['X'], vv['E'], *vv['hold']} + sel = lambda g: S is None or bool({g[1], g[2]} & S) + dele = set(rc['B_delete']); fr = {int(k): f for k, f in rc['B_frames'].items()} + ins = [list(x) for x in rc['B_insert']] + don = [x for x in ins if not (112 <= x[1][1] < 224)] # donations: destination is not a target + first_don = min(p for p, _ in don) if don else 0 + if control == 'drop_preread': + ins = [x for x in ins if not (x[0] < first_don and 112 <= x[1][1] < 224 and sel(x[1]))] + if control == 'donation_after': + new = [] + for p, g in ins: + if g in [d[1] for d in don] and sel(g): + rd = [i for i, e in enumerate(B) if i >= p and e[0] == 'add' and e[2] == g[1] and 112 <= e[1] < 224] + p = rd[0] + 1 + new.append([p, g]) + ins = new + at = {} + for p, g in ins: at.setdefault(p, []).append(list(g)) + out = [] + for i, e in enumerate(B): + out.extend(at.get(i, [])) + if i in dele: continue + e = list(e) + if i in fr: e = e[:-1] + [list(fr[i])] + out.append(e) + out.extend(at.get(len(B), [])) + w['B'] = out + pre = [list(g) for g in rc['cleanup_prepend'] if not (control == 'drop_restore' and sel(g))] + tails = [list(x) for x in rc['tail_insert']] + if control == 'restore_full': + pre = pre + [g[1][:-1] + [FULL] for g in tails if sel(g[1])]; tails = [g for g in tails if not sel(g[1])] + C = pre + w['cleanup']; sh = len(pre) + early = [[i + sh, U] for i, U in w['early_cleanup']] + idx = [] + for j, g in tails: C.append(list(g)); idx.append((j, len(C) - 1, list(g[-1]))) # appended in recipe order + for j, ci, U in sorted(idx): early.insert(j, [ci, U]) # then registered at their early index + w['cleanup'] = C; w['early_cleanup'] = early + w['report'] = dict(w['report']); w['report']['local_profile'] = rc['local_profile'] + return w + +def main(): + a = sys.argv[1:]; control = None + if '--control' in a: k = a.index('--control'); control = a[k + 1]; del a[k:k + 2] + base, out = a[0], a[2] + w, sha = load(base); rc = json.load(open(a[1])) + if sha != rc['base_sha256']: raise SystemExit('base sha mismatch ' + sha) + w2 = apply(w, rc, control) + raw = json.dumps(w2, separators=(',', ':')).encode() + open(out, 'wb').write(gzip.compress(raw, mtime=0)) + s = hashlib.sha256(raw).hexdigest() + if control is None and s != rc['expect_sha256']: raise SystemExit('result sha mismatch ' + s) + print(json.dumps(dict(control=control, sha256=s))) + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/run_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/run_controls.py new file mode 100644 index 0000000000..471d151451 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/ends7/x54/run_controls.py @@ -0,0 +1,33 @@ +#!/usr/bin/env python3 +"""run_controls.py BASE_WORD RECIPE AUDIT_LOCAL_PY OUTDIR : C0 identity, the recipe word (must PASS) and the four negative +controls (each must FAIL audit_local with its pinned message prefix). Standard library only; writes OUTDIR/controls.json.""" +import sys, json, subprocess, os, gzip, hashlib +base, recipe, audit, out = sys.argv[1:5] +here = os.path.dirname(os.path.abspath(__file__)); os.makedirs(out, exist_ok=True) +# X54 controls: omitting the FULL restoration leaves holder335 wrong; moving holder367's +# rank-eight early restoration to FULL breaks the endpoint. Omitting the pre-read or moving +# its donation after the target read exposes the entering helper's arbitrary start value. +EXPECT = {None: 'PASS', 'drop_restore': 'all-column endpoint failure (False, ', + 'restore_full': 'all-column endpoint failure (False, ', + 'drop_preread': 'nonzero entrance response', 'donation_after': 'nonzero entrance response'} +res = {} +ident = os.path.join(out, 'C0.json') +json.dump(dict(json.load(open(recipe)), B_delete=[], B_insert=[], B_frames={}, tail_insert=[], cleanup_prepend=[], + local_profile=json.loads(gzip.decompress(open(base, 'rb').read()))['report']['local_profile'], + expect_sha256=hashlib.sha256(gzip.decompress(open(base, 'rb').read())).hexdigest()), open(ident, 'w')) +r = subprocess.run([sys.executable, '-B', os.path.join(here, 'build_tri.py'), base, ident, os.path.join(out, 'C0.json.gz')], capture_output=True, text=True, creationflags=0x08000000 if os.name == 'nt' else 0) +res['C0_identity'] = dict(ok=r.returncode == 0, out=r.stdout.strip() or r.stderr.strip()[-200:]) +ctls = list(EXPECT) + [c + '@' + str(s['X']) for s in json.load(open(recipe)).get('variants', []) for c in EXPECT if c] +for ctl in ctls: + name = ctl or 'recipe'; wp = os.path.join(out, name + '.json.gz') + cmd = [sys.executable, '-B', os.path.join(here, 'build_tri.py'), base, recipe, wp] + (['--control', ctl] if ctl else []) + b = subprocess.run(cmd, capture_output=True, text=True, creationflags=0x08000000 if os.name == 'nt' else 0) + if b.returncode: res[name] = dict(ok=False, build=b.stderr[-300:]); continue + a = subprocess.run([sys.executable, '-B', audit, '--word', wp, '--output', os.path.join(out, name + '.audit.json')], capture_output=True, text=True, creationflags=0x08000000 if os.name == 'nt' else 0) + txt = a.stdout + a.stderr + if ctl is None: ok = a.returncode == 0 and 'PASS_INDEPENDENT' in txt + else: ok = a.returncode != 0 and EXPECT[ctl.split('@')[0]] in txt + res[name] = dict(ok=ok, build=json.loads(b.stdout), audit_tail=txt.strip().splitlines()[-1][:200]) +json.dump(res, open(os.path.join(out, 'controls.json'), 'w'), indent=1) +print(json.dumps({k: x['ok'] for k, x in res.items()})) +sys.exit(0 if all(x['ok'] for x in res.values()) else 1) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/FRAME-RECIPE-sw4.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/FRAME-RECIPE-sw4.json new file mode 100644 index 0000000000..7394064c5e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/FRAME-RECIPE-sw4.json @@ -0,0 +1,167 @@ +{ + "input_content_sha256": "d232183f233899961bf55cac67a18545ed33548d9a7ca7078990d1a83d557c59", + "gate_frames": [ + [ + "B", + 856, + [ + 272, + 144, + 64, + 6 + ], + [ + 272, + 144, + 64, + 8, + 6, + 1 + ] + ], + [ + "B", + 860, + [ + 265, + 137, + 88, + 6 + ], + [ + 256, + 128, + 65, + 16, + 9, + 6 + ] + ], + [ + "B", + 868, + [ + 265, + 200, + 33, + 6 + ], + [ + 256, + 144, + 81, + 33, + 9, + 6 + ] + ], + [ + "B", + 873, + [ + 320, + 192, + 16, + 6 + ], + [ + 320, + 192, + 32, + 16, + 6, + 1 + ] + ], + [ + "B", + 876, + [ + 392, + 73, + 33, + 6 + ], + [ + 273, + 144, + 64, + 33, + 9, + 6 + ] + ], + [ + "B", + 953, + [ + 265, + 137, + 73, + 6 + ], + [ + 265, + 137, + 73, + 32, + 25, + 6 + ] + ], + [ + "B", + 961, + [ + 265, + 185, + 80, + 6 + ], + [ + 265, + 128, + 64, + 41, + 16, + 6 + ] + ], + [ + "B", + 965, + [ + 272, + 185, + 73, + 6 + ], + [ + 257, + 128, + 73, + 40, + 17, + 6 + ] + ] + ], + "expected": { + "output_content_sha256": "e78047028c7dcd25fb1b6216c2b53eda76d2f91292b21d43f5d1903cc13a5c6c", + "local_profile": { + "1": 2556, + "2": 334, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 80, + "5": 32, + "7": 54, + "8": 122, + "9": 216 + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/LOCAL-PINS-frames-sw4.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/LOCAL-PINS-frames-sw4.json new file mode 100644 index 0000000000..834ae13a2f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/LOCAL-PINS-frames-sw4.json @@ -0,0 +1,12 @@ +{ + "word": "P6k4sw4f8", + "frame_build_controls": 3, + "frame_controls": 10, + "layer_controls": 95, + "canonical_sha256": "b0d27d99423047ce07af847734f5a86f9411038bb3b0bf721918ece1ee579325", + "program_sha256": { + "forward": "b2cf8298488cc81aeee1385d4d9ebd842efbb21abb9296fca903adb8ad50f8d0", + "backward": "6f28cf1413671d5b7c50488a1603fa8f1558da469abbbb45b6a9b66ec640712b" + }, + "clifford_recipes_sha256": "eb7569e004bd2a2937928db9db49dad949ec291f00c2d21df6af722df7cb6c9c" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/build_frames.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/build_frames.py new file mode 100644 index 0000000000..22021549e6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/build_frames.py @@ -0,0 +1,63 @@ +#!/usr/bin/env python3 +"""Apply the eight pinned B-gate frame raises of FRAME-RECIPE-sw4.json (chafreaky's PR741) to the SW4 word. + +usage: build_frames.py INPUT_WORD.json.gz OUT_DIR RECIPE.json + +Standard library only. The frames are applied by BlockInvert's `../promo/build_promotion.apply` (no entrances, eight +'B' gate_frames), which checks each old frame and recomputes the local profile and widths. This builder then checks: +input sha pin; the scalar program of A, cut, B, precondition and cleanup unchanged (every field but the frame); start +and end frames unchanged; local profile and width inventory equal to the recipe's; output sha pin. Three pin controls +(input pin, wrong old frame, output pin) must be rejected at their pinned reasons on every build. +Adapted from PR741's extras/build_frames.py (chafreaky). Apache-2.0. +""" +import copy, gzip, hashlib, importlib.util, json, sys +from pathlib import Path + +HERE = Path(__file__).resolve().parent +_s = importlib.util.spec_from_file_location('promotion', HERE.parent / 'promo/build_promotion.py') +B = importlib.util.module_from_spec(_s); _s.loader.exec_module(B) + + +def construct(raw, recipe): + assert hashlib.sha256(raw).hexdigest() == recipe['input_content_sha256'], 'input word pin' + w = json.loads(raw) + assert len(recipe['gate_frames']) == 8 and all(c[0] == 'B' for c in recipe['gate_frames']), 'eight B frames' + out = B.apply(w, dict(entrances={}, gate_frames=recipe['gate_frames'])) + for section in ('A', 'cut', 'B', 'precondition', 'cleanup'): + assert [e[:-1] for e in w[section]] == [e[:-1] for e in out[section]], 'scalar program unchanged' + assert out['start_extra'] == w['start_extra'] and out['helper_final'] == w['helper_final'], 'endpoint frames unchanged' + assert out['report']['local_profile'] == recipe['expected']['local_profile'] and \ + out['report']['width_inventory'] == recipe['expected']['width_inventory'], 'profile and width pins' + data = json.dumps(out, sort_keys=True, separators=(',', ':')).encode() + assert hashlib.sha256(data).hexdigest() == recipe['expected']['output_content_sha256'], 'output word pin' + return data + + +def main(): + assert __debug__, 'Assertions are required' + inp, outd, rfile = map(Path, sys.argv[1:4]) + raw = gzip.decompress(inp.read_bytes()); recipe = json.loads(rfile.read_text()) + data = construct(raw, recipe) + rejected = [] + for name, change, reason in [ + ('input-pin', lambda r: r.__setitem__('input_content_sha256', '0' * 64), 'input word pin'), + ('old-frame', lambda r: r['gate_frames'][0].__setitem__(2, []), 'gate frame mismatch'), + ('output-pin', lambda r: r['expected'].__setitem__('output_content_sha256', '0' * 64), 'output word pin')]: + r = copy.deepcopy(recipe); change(r) + try: + construct(raw, r) + except AssertionError as e: + assert reason in str(e), (name, str(e)); rejected.append(dict(name=name, reason=reason)) + else: + raise AssertionError('accepted ' + name) + outd.mkdir(parents=True) + (outd / 'FULL-WORD.json.gz').write_bytes(gzip.compress(data, mtime=0)) + (outd / 'BUILD.json').write_text(json.dumps(dict( + status='PASS_EIGHT_FRAME_EXACT_CONSTRUCTION', input_sha256=hashlib.sha256(raw).hexdigest(), + output_sha256=hashlib.sha256(data).hexdigest(), scalar_program_unchanged=True, frames=8, + rejected_controls=rejected), indent=2) + '\n') + print('PASS eight B frames and three pin controls') + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/frame_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/frame_controls.py new file mode 100644 index 0000000000..cd951a9f0e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/frame_controls.py @@ -0,0 +1,45 @@ +#!/usr/bin/env python3 +"""Focused native controls for the eight B-frame raises (PR741's extras/frame_controls.py, ported). + +usage: frame_controls.py WORD.json.gz ROUTING.json.gz OUT.json RECIPE.json (env PR635_CODE = PR635's code/ directory) + +The positive word must pass PR635's unchanged native audit `hpe_audit_and_transport.run`. Ten mutants must be rejected +at their pinned reasons: each of the eight raised gates with its frame emptied ('nonmonotone'), a doubled read +coefficient on the first raised gate ('arbitrary-dirt endpoint') and a tampered paid profile ('paid local profile +differs'). Apache-2.0; adapted from chafreaky's PR741. +""" +import copy, gzip, importlib.util, json, os, sys, tempfile, time +from pathlib import Path + +_s = importlib.util.spec_from_file_location('audit', Path(os.environ['PR635_CODE']) / 'hpe_audit_and_transport.py') +A = importlib.util.module_from_spec(_s); _s.loader.exec_module(A) + + +def main(): + assert __debug__, 'Assertions are required' + word, routing, out, rfile = map(Path, sys.argv[1:5]) + w = json.loads(gzip.decompress(word.read_bytes())); recipe = json.loads(rfile.read_text()) + + def trial(z): + with tempfile.TemporaryDirectory() as td: + d = Path(td); f = d / 'word.json.gz'; f.write_bytes(gzip.compress(json.dumps(z).encode(), mtime=0)) + try: + A.run(f, routing, d / 'native'); return None + except AssertionError as e: + return str(e) + + start = time.monotonic(); assert trial(w) is None, 'positive word rejected'; records = [] + for section, i, old, new in recipe['gate_frames']: + z = copy.deepcopy(w); z[section][i][-1] = []; error = trial(z) + assert error and 'nonmonotone' in error, (i, error); records.append(dict(name='frame-%d-emptied' % i, rejected=error)) + z = copy.deepcopy(w); i = recipe['gate_frames'][0][1]; z['B'][i][3] *= 2; error = trial(z) + assert error and 'arbitrary-dirt endpoint' in error, error; records.append(dict(name='changed-read-coefficient', rejected=error)) + z = copy.deepcopy(w); z['report']['local_profile']['1'] += 1; error = trial(z) + assert error and 'paid local profile differs' in error, error; records.append(dict(name='paid-profile-tampering', rejected=error)) + out.write_text(json.dumps(dict(status='PASS_FOCUSED_EIGHT_FRAME_NATIVE_CONTROLS', positive=1, rejected=records, + seconds=time.monotonic() - start), indent=2) + '\n') + print('PASS', len(records), 'mutations', flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/reproduce_frames.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/reproduce_frames.py new file mode 100644 index 0000000000..eaf9b47cac --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/frames/reproduce_frames.py @@ -0,0 +1,89 @@ +#!/usr/bin/env python3 +"""Rebuild the SW4F8 word (eight B-gate frame raises on the SW4 word, chafreaky's PR741 recipe) and its native locals. + +Input: a fresh `construction/sw4/reproduce_sw4.py --recipe P6k4` output directory; its SW4 word (d232183f...) is pinned +there and by FRAME-RECIPE-.json. Steps, each checked exactly: + 1. frames: build_frames.py (standard library only) applies the eight 'B' gate_frames with BlockInvert's + build_promotion.apply. Scalar program, start and end frames unchanged; profile, widths and output sha pinned; + three pin controls must be rejected (count pinned). + 2. frame-controls: frame_controls.py, PR741's ten focused mutants judged by PR635's unchanged native audit. + 3. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant) on the SW4F8 word; count pinned. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs, with the canonical word, local + programs and Clifford recipes pinned (LOCAL-PINS-frames-.json). +Apache-2.0. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +P6 = HERE.parent / 'layers_p6n' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--sw4-dir', type=Path, required=True, help='construction/sw4/reproduce_sw4.py output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--recipe', default='sw4', help='FRAME-RECIPE-.json and LOCAL-PINS-frames-.json') + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('FRAME-RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-frames-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + inp = a.sw4_dir.resolve() / 'sw4/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['input_content_sha256'], 'input must be the pinned SW4 word' + run('frames', HERE / 'build_frames.py', inp, out / 'frames', rfile, portable=False) + b = read(out / 'frames/BUILD.json') + assert b['status'] == 'PASS_EIGHT_FRAME_EXACT_CONSTRUCTION' and len(b['rejected_controls']) == pins['frame_build_controls'], b + word = out / 'frames/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['expected']['output_content_sha256'] + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('frame-controls', HERE / 'frame_controls.py', word, routing, out / 'FRAME-CONTROLS.json', rfile, portable=False) + fc = read(out / 'FRAME-CONTROLS.json') + assert fc['status'] == 'PASS_FOCUSED_EIGHT_FRAME_NATIVE_CONTROLS' and len(fc['rejected']) == pins['frame_controls'], len(fc['rejected']) + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/LOCAL-PINS-jx-X4.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/LOCAL-PINS-jx-X4.json new file mode 100644 index 0000000000..417e4ba7a1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/LOCAL-PINS-jx-X4.json @@ -0,0 +1,11 @@ +{ + "word": "X4", + "jx_controls": 7, + "layer_controls": 95, + "canonical_sha256": "1c0e9da767d4418f70016af599e4a447a3f7777acabe930318459c0fbbd260aa", + "program_sha256": { + "forward": "076a2d428f97abb30473df05110998efbe5ac809885bae4ceb1b8bd81329a1e6", + "backward": "7915679ee305927463d19725360cc15132dd21ede18897d09a935dca1df0d55d" + }, + "clifford_recipes_sha256": "20dddfce0ded7e41dc507939df7297bd98aec1286e05d7dbf18000d57e69a0b7" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/RECIPE-X4.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/RECIPE-X4.json new file mode 100644 index 0000000000..30f7fa5948 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/RECIPE-X4.json @@ -0,0 +1,1412 @@ +{ + "input_content_sha256": "d232183f233899961bf55cac67a18545ed33548d9a7ca7078990d1a83d557c59", + "input_word": "P6k4sw4 (BRoute w/P6k4sw4, d232183f)", + "frames_741_source": { + "pr": 741, + "commit": "e516b146", + "recipe": "scratch/WasteAttack/FRAME-RECIPE-741.json", + "frames_only_output_sha": "e78047028c7dcd25fb1b6216c2b53eda76d2f91292b21d43f5d1903cc13a5c6c" + }, + "frames_741": [ + [ + 856, + [ + 272, + 144, + 64, + 8, + 6, + 1 + ] + ], + [ + 860, + [ + 256, + 128, + 65, + 16, + 9, + 6 + ] + ], + [ + 868, + [ + 256, + 144, + 81, + 33, + 9, + 6 + ] + ], + [ + 873, + [ + 320, + 192, + 32, + 16, + 6, + 1 + ] + ], + [ + 876, + [ + 273, + 144, + 64, + 33, + 9, + 6 + ] + ], + [ + 953, + [ + 265, + 137, + 73, + 32, + 25, + 6 + ] + ], + [ + 961, + [ + 265, + 128, + 64, + 41, + 16, + 6 + ] + ], + [ + 965, + [ + 257, + 128, + 73, + 40, + 17, + 6 + ] + ] + ], + "raises": [ + [ + 855, + [ + 280, + 128, + 64, + 40, + 6, + 1 + ] + ], + [ + 859, + [ + 256, + 129, + 65, + 40, + 25, + 6 + ] + ], + [ + 862, + [ + 280, + 144, + 80, + 56, + 6, + 1 + ] + ], + [ + 863, + [ + 272, + 136, + 80, + 56, + 6, + 1 + ] + ], + [ + 867, + [ + 256, + 136, + 64, + 41, + 16, + 6 + ] + ], + [ + 870, + [ + 256, + 200, + 40, + 16, + 6, + 1 + ] + ], + [ + 875, + [ + 272, + 144, + 80, + 49, + 8, + 6 + ] + ], + [ + 942, + [ + 256, + 136, + 72, + 33, + 25, + 6 + ] + ], + [ + 943, + [ + 320, + 193, + 33, + 16, + 9, + 6 + ] + ], + [ + 946, + [ + 256, + 129, + 64, + 41, + 16, + 6 + ] + ], + [ + 947, + [ + 273, + 128, + 81, + 33, + 9, + 6 + ] + ], + [ + 950, + [ + 257, + 193, + 33, + 16, + 9, + 6 + ] + ], + [ + 954, + [ + 272, + 129, + 80, + 49, + 8, + 6 + ] + ], + [ + 955, + [ + 256, + 128, + 64, + 33, + 17, + 6 + ] + ], + [ + 958, + [ + 257, + 128, + 81, + 33, + 9, + 6 + ] + ], + [ + 962, + [ + 273, + 128, + 64, + 33, + 8, + 6 + ] + ] + ], + "edits": { + "replace": [ + { + "h": 448, + "i": 862, + "old": [ + "add", + 140, + 448, + -1, + 2 + ], + "new": [ + "add", + 140, + 235, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 448, + "i": 1207, + "old": [ + "add", + 133, + 448, + -1, + 2 + ], + "new": [ + "add", + 133, + 235, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 448, + "i": 870, + "old": [ + "add", + 132, + 235, + -1, + 2 + ], + "new": [ + "add", + 132, + 448, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 448, + "i": 1199, + "old": [ + "add", + 141, + 235, + -1, + 2 + ], + "new": [ + "add", + 141, + 448, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 472, + "i": 855, + "old": [ + "add", + 173, + 472, + -1, + 2 + ], + "new": [ + "add", + 173, + 267, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 472, + "i": 1198, + "old": [ + "add", + 140, + 472, + -1, + 2 + ], + "new": [ + "add", + 140, + 267, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 472, + "i": 863, + "old": [ + "add", + 141, + 267, + -1, + 2 + ], + "new": [ + "add", + 141, + 472, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 472, + "i": 1190, + "old": [ + "add", + 172, + 267, + -1, + 2 + ], + "new": [ + "add", + 172, + 472, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 458, + "i": 942, + "old": [ + "add", + 204, + 458, + 1, + 1 + ], + "new": [ + "add", + 204, + 58, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 458, + "i": 1287, + "old": [ + "add", + 197, + 458, + 1, + 1 + ], + "new": [ + "add", + 197, + 58, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 458, + "i": 950, + "old": [ + "add", + 196, + 58, + 1, + 1 + ], + "new": [ + "add", + 196, + 458, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 458, + "i": 1279, + "old": [ + "add", + 205, + 58, + 1, + 1 + ], + "new": [ + "add", + 205, + 458, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 592, + "i": 859, + "old": [ + "add", + 174, + 592, + -1, + 2 + ], + "new": [ + "add", + 174, + 427, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 592, + "i": 1278, + "old": [ + "add", + 204, + 592, + -1, + 2 + ], + "new": [ + "add", + 204, + 427, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 592, + "i": 943, + "old": [ + "add", + 205, + 427, + -1, + 2 + ], + "new": [ + "add", + 205, + 592, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 592, + "i": 1194, + "old": [ + "add", + 170, + 427, + -1, + 2 + ], + "new": [ + "add", + 170, + 592, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 470, + "i": 946, + "old": [ + "add", + 202, + 470, + 1, + 1 + ], + "new": [ + "add", + 202, + 26, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 470, + "i": 1295, + "old": [ + "add", + 165, + 470, + 1, + 1 + ], + "new": [ + "add", + 165, + 26, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 470, + "i": 958, + "old": [ + "add", + 164, + 26, + 1, + 1 + ], + "new": [ + "add", + 164, + 470, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 470, + "i": 1283, + "old": [ + "add", + 206, + 26, + 1, + 1 + ], + "new": [ + "add", + 206, + 470, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 604, + "i": 867, + "old": [ + "add", + 142, + 604, + -1, + 2 + ], + "new": [ + "add", + 142, + 443, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 604, + "i": 1282, + "old": [ + "add", + 202, + 604, + -1, + 2 + ], + "new": [ + "add", + 202, + 443, + -1, + 2 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 604, + "i": 947, + "old": [ + "add", + 206, + 443, + -1, + 2 + ], + "new": [ + "add", + 206, + 604, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 604, + "i": 1202, + "old": [ + "add", + 138, + 443, + -1, + 2 + ], + "new": [ + "add", + 138, + 604, + -1, + 2 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 482, + "i": 954, + "old": [ + "add", + 194, + 482, + 1, + 1 + ], + "new": [ + "add", + 194, + 18, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 482, + "i": 1299, + "old": [ + "add", + 166, + 482, + 1, + 1 + ], + "new": [ + "add", + 166, + 18, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 482, + "i": 962, + "old": [ + "add", + 162, + 18, + 1, + 1 + ], + "new": [ + "add", + 162, + 482, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 482, + "i": 1291, + "old": [ + "add", + 198, + 18, + 1, + 1 + ], + "new": [ + "add", + 198, + 482, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 614, + "i": 875, + "old": [ + "add", + 134, + 614, + 1, + 1 + ], + "new": [ + "add", + 134, + 50, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 614, + "i": 1290, + "old": [ + "add", + 194, + 614, + 1, + 1 + ], + "new": [ + "add", + 194, + 50, + 1, + 1 + ], + "why": "h2r: read of h -> read of r" + }, + { + "h": 614, + "i": 955, + "old": [ + "add", + 198, + 50, + 1, + 1 + ], + "new": [ + "add", + 198, + 614, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + }, + { + "h": 614, + "i": 1210, + "old": [ + "add", + 130, + 50, + 1, + 1 + ], + "new": [ + "add", + 130, + 614, + 1, + 1 + ], + "why": "r2h: read of r -> read of h" + } + ], + "delete": [ + { + "h": 448, + "i": 1, + "old": [ + "add", + 140, + 448, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 448, + "i": 0, + "old": [ + "add", + 133, + 448, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 472, + "i": 33, + "old": [ + "add", + 173, + 472, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 472, + "i": 32, + "old": [ + "add", + 140, + 472, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 458, + "i": 21, + "old": [ + "add", + 204, + 458, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 458, + "i": 20, + "old": [ + "add", + 197, + 458, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 592, + "i": 64, + "old": [ + "add", + 174, + 592, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 592, + "i": 65, + "old": [ + "add", + 204, + 592, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 470, + "i": 29, + "old": [ + "add", + 202, + 470, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 470, + "i": 28, + "old": [ + "add", + 165, + 470, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 604, + "i": 72, + "old": [ + "add", + 142, + 604, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 604, + "i": 73, + "old": [ + "add", + 202, + 604, + 1, + 2 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 482, + "i": 37, + "old": [ + "add", + 194, + 482, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 482, + "i": 36, + "old": [ + "add", + 166, + 482, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 614, + "i": 95, + "old": [ + "add", + 134, + 614, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + }, + { + "h": 614, + "i": 96, + "old": [ + "add", + 194, + 614, + -1, + 1 + ], + "why": "h2r: delete t pre-read of h" + } + ], + "insert": [ + { + "h": 448, + "before": 2, + "gate": [ + "add", + 132, + 448, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 448, + "before": 2, + "gate": [ + "add", + 141, + 448, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 472, + "before": 34, + "gate": [ + "add", + 141, + 472, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 472, + "before": 34, + "gate": [ + "add", + 172, + 472, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 458, + "before": 22, + "gate": [ + "add", + 196, + 458, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 458, + "before": 22, + "gate": [ + "add", + 205, + 458, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 592, + "before": 66, + "gate": [ + "add", + 205, + 592, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 592, + "before": 66, + "gate": [ + "add", + 170, + 592, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 470, + "before": 30, + "gate": [ + "add", + 164, + 470, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 470, + "before": 30, + "gate": [ + "add", + 206, + 470, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 604, + "before": 74, + "gate": [ + "add", + 206, + 604, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 604, + "before": 74, + "gate": [ + "add", + 138, + 604, + 1, + 2 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 482, + "before": 38, + "gate": [ + "add", + 162, + 482, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 482, + "before": 38, + "gate": [ + "add", + 198, + 482, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 614, + "before": 97, + "gate": [ + "add", + 198, + 614, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + }, + { + "h": 614, + "before": 97, + "gate": [ + "add", + 130, + 614, + -1, + 1 + ], + "why": "r2h: pre-read of h (h = E_h) after h last pre-read" + } + ] + }, + "pairs": { + "448": 235, + "458": 58, + "470": 26, + "472": 267, + "482": 18, + "592": 427, + "604": 443, + "614": 50 + }, + "expected": { + "output_content_sha256": "1e1d99ba7aab877d6b573c41f7030ee73de9a52fee51d0a822ddaae71251999f", + "local_profile": { + "1": 2548, + "2": 338, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + } + }, + "controls": { + "C0_identity": { + "mutation": { + "kind": "empty" + }, + "expected_sha": "d232183f233899961bf55cac67a18545ed33548d9a7ca7078990d1a83d557c59", + "local_profile": { + "1": 2548, + "2": 342, + "3": 438, + "4": 186, + "5": 56, + "8": 8 + } + }, + "C1_741_only": { + "mutation": { + "kind": "only_edits_of", + "h": [], + "raises": [] + }, + "expected_sha": "e78047028c7dcd25fb1b6216c2b53eda76d2f91292b21d43f5d1903cc13a5c6c", + "local_profile": { + "1": 2556, + "2": 334, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + } + }, + "M1_one_pair_448": { + "mutation": { + "kind": "only_edits_of", + "h": [ + 448 + ], + "raises": [ + 862, + 870 + ] + }, + "expected_sha": "5fb6fb2e5e63d18b865535c1dbd3dbaddab530c39429a4b09f11ac96723257c9", + "local_profile": { + "1": 2556, + "2": 334, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + } + }, + "N1_drop_preread": { + "mutation": { + "kind": "drop_insert", + "k": 0 + }, + "rejection_expected": [ + "exactness rows", + [ + 132, + 135 + ] + ] + }, + "N2_wrong_sign_preread": { + "mutation": { + "kind": "flip_insert_sign", + "k": 0 + }, + "rejection_expected": [ + "exactness rows", + [ + 132, + 135 + ] + ] + }, + "N3_plain_join_moved_reads": { + "mutation": { + "kind": "drop_raises" + }, + "expected_sha": "7241cd59dd0376e0b2e1b5ba8403c5423d247ddd7cbcc2f02bdc353752806f30", + "local_profile": { + "1": 2532, + "2": 378, + "3": 430, + "4": 178, + "5": 56, + "8": 8 + } + }, + "N4_raise_dim7_at_855": { + "mutation": { + "kind": "frame", + "i": 855, + "frame": [ + 280, + 128, + 64, + 40, + 4, + 2, + 1 + ] + }, + "rejection_expected": [ + "cap", + 1302, + 174 + ] + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/build_jx.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/build_jx.py new file mode 100644 index 0000000000..f8d74a6324 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/build_jx.py @@ -0,0 +1,167 @@ +#!/usr/bin/env python3 +"""build_jx.py --input WORD --recipe RECIPE.json --out OUT.json.gz [--control NAME] [--no-pin] + +Stdlib-only builder: joint read-set exchange (copy pairs, BRoute sw4 rule) + explicit B frame raises on P6k4sw4. +Steps: + 1. input content sha256 must equal recipe.input_content_sha256. + 2. explicit B edits: replace (old gate asserted), delete (old gate asserted), insert (before an original index). + 3. frames: replaced/inserted gates take the plain join of their operands' current frames; gates listed in + frames_741 / raises take base = the listed frame and the resulting frame must EQUAL it (explicit frames); + every other gate keeps span(stored frame + operand frames) (monotone repair). Early cleanup likewise. + 4. legality: target frames inside u_t^perp at every gate; tails inside helper_final; every end frame contains the + final frame; the explicit frame must contain the join (enforced by equality in 3). + 5. exactness: the rational linear map of the whole B segment is identical to the input's (Fraction replay). + 6. paid profile recomputed (A + centre levels + B + tails + ends) and written to report.local_profile. +Output: canonical json (sort_keys, compact) gzip mtime=0. Exit 0 and prints output sha; exit 2 with the first +rejection (site) on failure. --control applies a named mutation from recipe.controls (expected to be rejected +or to give a pinned sha).""" +import argparse, gzip, json, hashlib, sys, copy +from fractions import Fraction as Fr +from collections import Counter + +V, H = 112, 9 + +def basis(vs): + piv = {} + for a in vs: + while a: + b = a.bit_length() - 1 + if b in piv: a ^= piv[b] + else: piv[b] = a; break + for k in sorted(piv): + for j in sorted(piv): + if j > k and (piv[j] >> k) & 1: piv[j] ^= piv[k] + return tuple(piv[k] for k in sorted(piv, reverse=True)) + +def contained(a, b): return basis(list(a) + list(b)) == tuple(b) +def registers(e): return e[1:3] if e[0] == 'add' else e[1:2] +def hyper(p): return basis([x for x in range(1, 1 << H) if (x & p).bit_count() % 2 == 0]) +FULL = basis([1 << i for i in range(H)]) +def csha(w): return hashlib.sha256(json.dumps(w, sort_keys=True, separators=(',', ':')).encode()).hexdigest() + +class Reject(Exception): pass + +def symstate(gs): + rows = {} + for e in gs: + for q in registers(e): rows.setdefault(q, {q: Fr(1)}) + if e[0] == 'add': + t, s = e[1], e[2]; c = Fr(e[3], e[4]); d = rows[t] + for k, x in list(rows[s].items()): + a = d.get(k, 0) + c * x + if a: d[k] = a + else: d.pop(k, None) + else: + t = e[1]; c = Fr(e[2], e[3]); rows[t] = {k: c * x for k, x in rows[t].items()} + return rows + +def build(w, rc, control=None): + w = copy.deepcopy(w); B0 = w['B'] + edits = copy.deepcopy(rc['edits']); explicit = {int(i): f for i, f in rc['frames_741']} + for i, f in rc['raises']: + if int(i) in explicit: raise Reject(('duplicate frame', i)) + explicit[int(i)] = f + if control: + c = rc['controls'][control]['mutation'] + if c['kind'] == 'drop_insert': edits['insert'] = [x for k, x in enumerate(edits['insert']) if k != c['k']] + elif c['kind'] == 'flip_insert_sign': edits['insert'][c['k']]['gate'][3] *= -1 + elif c['kind'] == 'frame': explicit[c['i']] = c['frame'] + elif c['kind'] == 'drop_edits': edits = dict(replace=[], delete=[], insert=[]) + elif c['kind'] == 'drop_raises': explicit = {int(i): f for i, f in rc['frames_741']} + elif c['kind'] == 'only_edits_of': + hs = set(c['h']) + edits = {k: [x for x in v if x['h'] in hs] for k, v in edits.items()} + explicit = {i: f for i, f in explicit.items() if i in {int(j) for j, _ in rc['frames_741']} or i in set(c['raises'])} + elif c['kind'] == 'empty': edits = dict(replace=[], delete=[], insert=[]); explicit = {} + else: raise SystemExit('unknown control') + B = [list(e) for e in B0]; tag = set(); dele = set(); ins = {} + for x in edits['replace']: + i = x['i'] + if B[i][:-1] != x['old']: raise Reject(('replace old mismatch', i)) + B[i] = list(x['new']) + [B[i][-1]]; tag.add(i) + for x in edits['delete']: + i = x['i'] + if B[i][:-1] != x['old']: raise Reject(('delete old mismatch', i)) + dele.add(i) + for x in edits['insert']: ins.setdefault(x['before'], []).append(list(x['gate']) + [None]) + NB, nt, key = [], set(), [] + for i, e in enumerate(B): + for g in ins.get(i, []): nt.add(len(NB)); NB.append(g); key.append(None) + if i in dele: continue + if i in tag: nt.add(len(NB)) + NB.append(e); key.append(i) + # frames + paid + R = w['report']['R']; n = 2 * V + R + END = [FULL] * V + [hyper(p) for p in w['ports']] + [FULL] * R + for q, U in w['helper_final'].items(): END[int(q)] = basis(U) + cur = [(p,) for p in w['ports']] + [()] * (V + R) + for q, U in w['start_extra'].items(): cur[int(q)] = basis(U) + paid = Counter() + for e in w['A']: + for q in registers(e): + U = basis(e[-1]); d = len(U) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = U + lev = {int(t): basis(U) for t, U in w.get('target_levels', {}).items()} + for q, U in zip(w['centers'], w['center_frames']): + U = basis(U); served = {lev.get(e[1] - V, ()) for e in w['cut'] if e[2] == q} + for T in sorted(served, key=lambda x: -len(x)): + if T != U: paid[len(U) - len(T)] += 1 + U = T + used = set() + for j, e in enumerate(NB): + rs = registers(e); k = key[j] + if k is not None and k in explicit: base = list(explicit[k]); used.add(k) + elif j in nt or e[-1] is None: base = [] + else: base = list(e[-1]) + F = basis(base + [x for q in rs for x in cur[q]]) + if k is not None and k in explicit and F != basis(explicit[k]): raise Reject(('explicit frame below join', k)) + for q in rs: + if V <= q < 2 * V and not contained(F, END[q]): raise Reject(('cap', j, q)) + d = len(F) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = F + NB[j] = list(e[:-1]) + [list(F)] + if used != set(explicit): raise Reject(('unused explicit frame', sorted(set(explicit) - used))) + newearly = [] + for i, U in w['early_cleanup']: + rs = registers(w['cleanup'][i]); F = basis(list(U) + [x for q in rs for x in cur[q]]) + for q in rs: + if w['helper_final'].get(str(q)) is not None and not contained(F, END[q]): raise Reject(('tailend', i, q)) + d = len(F) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = F + newearly.append([i, list(F)]) + for q in range(n): + if not contained(cur[q], END[q]): raise Reject(('end', q)) + d = len(END[q]) - len(cur[q]) + if d: paid[d] += 1 + # exactness of the B segment + a, b = symstate([e[:-1] for e in B0]), symstate([e[:-1] for e in NB]) + bad = sorted(q for q in set(a) | set(b) if a.get(q, {q: Fr(1)}) != b.get(q, {q: Fr(1)})) + if bad: raise Reject(('exactness rows', bad)) + w['B'] = NB; w['early_cleanup'] = newearly + w['report'] = dict(w['report']); w['report']['local_profile'] = {str(k): v for k, v in sorted(paid.items())} + return w + +def main(): + ap = argparse.ArgumentParser(); ap.add_argument('--input', required=True); ap.add_argument('--recipe', required=True) + ap.add_argument('--out'); ap.add_argument('--control'); ap.add_argument('--no-pin', action='store_true') + a = ap.parse_args() + w = json.loads(gzip.decompress(open(a.input, 'rb').read())); rc = json.load(open(a.recipe)) + if csha(w) != rc['input_content_sha256']: print('REJECT input pin'); sys.exit(2) + pin = rc['controls'][a.control].get('rejection_expected') if a.control else None + try: o = build(w, rc, a.control) + except Reject as r: + got = json.loads(json.dumps(r.args[0])); print('REJECT', json.dumps(got)) + if pin is not None: + print('CONTROL', 'PINNED' if got == pin else 'PIN MISMATCH %s' % json.dumps(pin)); sys.exit(0 if got == pin else 4) + sys.exit(2) + if pin is not None and not a.no_pin: print('CONTROL NOT REJECTED, pinned', json.dumps(pin)); sys.exit(4) + s = csha(o) + exp = rc['controls'][a.control].get('expected_sha') if a.control else rc['expected']['output_content_sha256'] + print('OK', s, o['report']['local_profile']) + if a.out: open(a.out, 'wb').write(gzip.compress(json.dumps(o, sort_keys=True, separators=(',', ':')).encode(), mtime=0)) + if not a.no_pin and exp and s != exp: print('REJECT output pin', exp); sys.exit(3) + +if __name__ == '__main__': main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/reproduce_jx.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/reproduce_jx.py new file mode 100644 index 0000000000..6829a1b25d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/jx/reproduce_jx.py @@ -0,0 +1,99 @@ +#!/usr/bin/env python3 +"""Rebuild the X4 word (JointXF: joint read-set exchange on four further copy-pair instances plus explicit B frame +raises, including chafreaky's PR741 eight frames) and its native locals. + +Input: a fresh `construction/sw4/reproduce_sw4.py --recipe P6k4` output directory; its SW4 word (d232183f...) is pinned +there and by RECIPE-X4.json. Steps, each checked exactly: + 1. jx: build_jx.py (standard library only; JointXF) applies the recipe's explicit B edits (replace / delete / insert, + each old gate asserted), the PR741 frames and the explicit raises, repairs all other frames monotonically, checks + target frames inside u_t^perp, tails and ends, and the exactness of the whole B segment (rational replay), and + pins the output sha. + 2. jx-controls: every control in the recipe is rebuilt and must reproduce its pinned outcome exactly: a pinned + rejection site (exit 0 with CONTROL PINNED) or a pinned output sha. C1_741_only must reproduce PR741's word + e78047028c... (the construction/frames step's output); C0_identity reproduces the input. + 3. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant) on the X4 word; count pinned. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs; canonical word, local programs + and Clifford recipes pinned (LOCAL-PINS-jx-X4.json). +Apache-2.0. Driver by ColdWitness around JointXF's builder. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +P6 = HERE.parent / 'layers_p6n' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--sw4-dir', type=Path, required=True, help='construction/sw4/reproduce_sw4.py output') + ap.add_argument('--recipe', default='X4', help='RECIPE-.json and LOCAL-PINS-jx-.json') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-jx-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True, ok=(0,)): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc in ok, (label, rc) + print('PASS', label, flush=True) + return (out / (label + '.log')).read_text() + + inp = a.sw4_dir.resolve() / 'sw4/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['input_content_sha256'], 'input must be the pinned SW4 word' + (out / 'jx').mkdir(); word = out / 'jx/FULL-WORD.json.gz' + run('jx', HERE / 'build_jx.py', '--input', inp, '--recipe', rfile, '--out', word, portable=False) + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['expected']['output_content_sha256'] + assert len(rec['controls']) == pins['jx_controls'], len(rec['controls']) + results = {} + for name, c in sorted(rec['controls'].items()): + log = run('jx-control-' + name, HERE / 'build_jx.py', '--input', inp, '--recipe', rfile, '--control', name, portable=False) + if 'rejection_expected' in c: + assert 'CONTROL PINNED' in log, (name, log[-300:]); results[name] = dict(rejected=c['rejection_expected']) + else: + assert ('OK ' + c['expected_sha']) in log, (name, log[-300:]); results[name] = dict(sha=c['expected_sha']) + assert rec['controls']['C1_741_only']['expected_sha'] == rec['frames_741_source']['frames_only_output_sha'] + (out / 'JX-CONTROLS.json').write_text(json.dumps(dict(status='PASS_JX_PINNED_CONTROLS', controls=results), indent=1) + '\n') + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/build_pivot_swap.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/build_pivot_swap.py new file mode 100644 index 0000000000..b225601c01 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/build_pivot_swap.py @@ -0,0 +1,160 @@ +"""Cost-neutral pivot-role swaps inside existing entrance-kernel families. Apache-2.0. Prepared with Claude Code +assistance. The pivot/donor role exchange follows PR266's "pivot role is moved" idea (bit side), applied here to the +complex supplier's multicut kernel families (PR568 build_multicut_kernels.py shape). + +A kernel family on the input word is an entering helper p (start_extra E) together with the gates that read p at frame +E before any other touch of p: d += c_d * p @E (d a helper or, in B, a target). They cancel p's complete dirty +response: col(p) + sum_d c_d * col_{g_d}(d) = 0, where col_{g}(d) is d's suffix response from gate g on. + +Swap to the new pivot x (a helper donor of the family with exactly one family gate g_x = x's FIRST touch, and no other +touch of x up to the family's last gate): + g_x : x += c_x p -> p += (1/c_x) x + g_d : d += c_d p -> d += (c_d/c_x) x (d != x, same position and frame E) + start_extra: p -> x (same E); cleanup regenerated by the inherited inverse rule. +Exactness (PROOF-NOTE-PIVOT.md): x holds only its initial dirt at every rewritten gate, and p holds only its initial dirt +until g_x, so x's new response is col(x) + col(p)/c_x + sum_d (c_d/c_x) col_{g_d}(d) = (c_x col(x) + col(p) + +sum_d c_d col_{g_d}(d)) / c_x = 0, because col(x) = col_{g_x}(x). This script checks it by exact rational replay anyway. +Cost: the frame chains of p and x are exchanged (p now climbs [] -> E at g_x where x did; x starts at E where p did), so +gk_word.profile and the width multiset are unchanged; both are asserted. + +Recipe: {input_content_sha256, output_content_sha256, swaps: [{pivot, new_pivot, entrance, gates: [{part, index, +before, after}]}]}. Every expected `after` gate is recomputed from the rule above and must equal the recipe. + +Negative controls (--controls): mutated recipes/words that must be rejected at pinned reasons: + * nonzero response: another family gate's rescaled coefficient has the wrong sign; + * wrong pivot coefficient: g_x's new coefficient doubled; + * wrong entrance: the recipe's entrance is not p's start_extra; + * non-family gate: a recipe gate whose `before` is not the word's gate; + * new pivot touched in the window: x replaced by a family donor that is not a fresh helper (a target donor, or the + first other helper donor when the family has no target donor). +""" +from pathlib import Path +from collections import Counter +from fractions import Fraction as Q +import argparse, copy, gzip, hashlib, json, sys +assert __debug__, 'Assertions required' +ap = argparse.ArgumentParser() +for k in ('--input', '--recipe', '--gk-dir', '--out'): ap.add_argument(k, type=Path, required=True) +a = ap.parse_args(); assert not a.out.exists() +sys.path.insert(0, str(a.gk_dir)); import gk_word as G, gk_common as C +G.V = C.V = 112; G.DATA = C.DATA = 7168 +V = 112 +raw = json.loads(gzip.decompress(a.input.read_bytes())); recipe = json.loads(a.recipe.read_text()) +enc = lambda x: json.dumps(x, sort_keys=True, separators=(',', ':')).encode(); sha = lambda x: hashlib.sha256(x).hexdigest() +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +inv_rule = lambda w: [G.inverse(e, G.FULL) for e in reversed(w['A'] + w['B']) if not V <= e[1] < 2 * V] +dy = lambda q: q != 0 and q.denominator & (q.denominator - 1) == 0 + + +def response(w, h): + rows = {} + def get(r): return rows.setdefault(r, {r: Q(1)}) + for e in w['A'] + w['cut'] + w['B']: + if e[0] == 'scale': + q = Q(e[2], e[3]); rows[e[1]] = {j: q * x for j, x in get(e[1]).items()} + else: + t, s = e[1], e[2]; q = Q(e[3], e[4]); src = get(s); tgt = get(t) + for j, x in list(src.items()): + z = tgt.get(j, Q(0)) + q * x + if z: tgt[j] = z + else: tgt.pop(j, None) + return {r: rows[r][h] for r in range(V, 2 * V) if r in rows and rows[r].get(h)} + + +def build(w0, rec): + w = copy.deepcopy(w0); n = 2 * V + w['report']['R'] + assert w['cleanup'] == inv_rule(w), 'input cleanup is not the inherited inverse rule' + P0 = G.profile(w); W0 = Counter(C.widths_of(w)) + AB = [('A', i) for i in range(len(w['A']))] + [('B', i) for i in range(len(w['B']))] + pos = {k: j for j, k in enumerate(AB)} + seen = set(); receipts = []; rules = [] + for s in rec['swaps']: + p, x, E = s['pivot'], s['new_pivot'], s['entrance'] + assert 2 * V <= p < n and w['start_extra'].get(str(p)) == E, 'pivot is not an entering helper at the entrance' + assert 2 * V <= x < n and x not in w['centers'], 'new pivot must be a helper' + assert str(x) not in w['start_extra'], 'new pivot already entering' + assert not {p, x} & seen, 'registers shared between swaps'; seen |= {p, x} + gs = s['gates']; ks = [pos[(g['part'], g['index'])] for g in gs] + assert ks == sorted(ks) and len(set(ks)) == len(ks) + for g in gs: + e = w[g['part']][g['index']] + assert e == g['before'], 'recipe gate is not the word gate' + assert e[0] == 'add' and e[2] == p and e[1] != p and list(e[-1]) == list(E), 'not a family gate (d += c p @E)' + touch = lambda r: [j for j, (part, i) in enumerate(AB) if r in regs(w[part][i])] + tp = touch(p); assert tp[:len(ks)] == ks, 'family gates must be all touches of the pivot up to its first other touch' + gx = [k for k, g in zip(ks, gs) if g['before'][1] == x]; assert len(gx) == 1, 'new pivot must have exactly one family gate' + tx = touch(x); assert tx[0] == gx[0], 'new pivot touched before its family gate' + assert len(tx) == 1 or tx[1] > ks[-1], 'new pivot touched inside the family window' + cx = Q(*[g['before'][3:5] for g in gs if g['before'][1] == x][0]) + for g in gs: + d, f = g['before'][1], g['after'] + assert f[0] == 'add' and list(f[-1]) == list(E) and (f[1:3] == [p, x] if d == x else f[1:3] == [d, x]), 'after-gate shape' + assert dy(Q(f[3], f[4])), 'non-dyadic swapped coefficient' + w[g['part']][g['index']] = f + q = 1 / cx if d == x else Q(g['before'][3], g['before'][4]) / cx + rules.append((f, ['add', p, x, q.numerator, q.denominator, list(E)] if d == x else ['add', d, x, q.numerator, q.denominator, list(E)])) + w['start_extra'][str(x)] = w['start_extra'].pop(str(p)) + receipts.append(dict(pivot=p, new_pivot=x, entrance=E, family_gates=len(gs))) + w['cleanup'] = inv_rule(w) + for s in rec['swaps']: + assert not response(w, s['new_pivot']), 'new pivot dirty response not zero' + assert all(f == e for f, e in rules), 'recipe after-gate is not the swap rule' + P1 = G.profile(w) + assert P1 == P0, 'paid profile not identical (swap is not cost-neutral)' + assert Counter(C.widths_of(w)) == W0, 'width multiset changed' + w['report']['local_profile'] = {str(k): v for k, v in sorted(P1.items())} + w['report']['local_rank_mass'] = sum(k * v for k, v in P1.items()) + return w, receipts + + +assert sha(enc(raw)) == recipe['input_content_sha256'], 'input content' +out, receipts = build(raw, recipe) +o = enc(out); assert sha(o) == recipe['output_content_sha256'], sha(o) + +# ---- negative controls ------------------------------------------------------------------------------------------- +WHY = dict(nonzero='new pivot dirty response not zero', coef='new pivot dirty response not zero', + entrance='paid profile not identical', nonfamily='recipe gate is not the word gate', + window='new pivot') +controls = [] + + +def reject(name, mut, why): + r = copy.deepcopy(recipe); w = copy.deepcopy(raw) + mut(r, w) + try: + build(w, r) + except AssertionError as ex: + msg = str(ex) + assert why in msg, ('control rejected for the wrong reason', name, msg) + controls.append(dict(control=name, reason=msg)); return + raise AssertionError('control accepted: ' + name) + + +for si, s in enumerate(recipe['swaps']): + x = s['new_pivot']; tag = '%d->%d' % (s['pivot'], x) + def m_other(r, w, si=si): + g = [g for g in r['swaps'][si]['gates'] if g['before'][1] != r['swaps'][si]['new_pivot']][0] + g['after'] = list(g['after']); g['after'][3] = -g['after'][3] + def m_coef(r, w, si=si): + g = [g for g in r['swaps'][si]['gates'] if g['before'][1] == r['swaps'][si]['new_pivot']][0] + g['after'] = list(g['after']); g['after'][3] *= 2 + def m_nonfamily(r, w, si=si): + g = r['swaps'][si]['gates'][0]; g['before'] = list(g['before']); g['before'][3] = -g['before'][3] + def m_window(r, w, si=si): + S = r['swaps'][si]; S['new_pivot'] = [g['before'][1] for g in S['gates'] if g['before'][1] != S['new_pivot']][0] + def m_entrance(r, w, si=si): + S = r['swaps'][si]; S['entrance'] = [1] + reject('swap %s: another family gate keeps a wrong (unrescaled-sign) coefficient: new pivot response nonzero' % tag, m_other, WHY['nonzero']) + reject('swap %s: wrong pivot coefficient (1/c doubled) on the new pivot gate' % tag, m_coef, WHY['coef']) + reject('swap %s: non-family gate in the recipe' % tag, m_nonfamily, WHY['nonfamily']) + reject('swap %s: new pivot replaced by another family donor (not a fresh cold helper)' % tag, m_window, WHY['window']) + reject('swap %s: wrong entrance frame for the moved entrance' % tag, m_entrance, 'pivot is not an entering helper at the entrance') +controls_receipt = list(controls) + +a.out.mkdir(parents=True); (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(o, mtime=0)) +rc = dict(status='PASS_COST_NEUTRAL_PIVOT_SWAPS', input_content_sha256=recipe['input_content_sha256'], + output_content_sha256=recipe['output_content_sha256'], swaps=receipts, local_profile=out['report']['local_profile'], + negative_controls_rejected=controls_receipt, + scope='Exact family rewrite, exact zero dirty response of every new pivot, identical paid profile and widths, ' + 'regenerated inverse-rule cleanup. Native all-column audit, HPE/cold steps and global checks remain separate.') +(a.out / 'PIVOT-SWAP.json').write_text(json.dumps(rc, indent=2, sort_keys=True) + '\n', newline='\n'); print(json.dumps(rc, indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/layer_end_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/layer_end_controls.py new file mode 100644 index 0000000000..317da36d95 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/layer_end_controls.py @@ -0,0 +1,201 @@ +"""layer_end_controls.py LAYERED-WORD.json.gz ROUTING OUTDIR (env PR635_CODE): adapted PR635 cold_end_controls.py (LayerReviewer): raw-word negative controls for the cold low-frame ends and the +refactored cleanup accepted by hpe_audit_and_transport.py. Every mutation MUST be rejected (AssertionError); the +unmutated word MUST pass. Apache-2.0. DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code.""" +import copy, gzip, json, shutil, sys, tempfile +from pathlib import Path +import os +sys.path.insert(0, os.environ['PR635_CODE']) # PR635's unchanged hpe_audit_and_transport.py +import hpe_audit_and_transport as atc + +src, routing, outdir = Path(sys.argv[1]), Path(sys.argv[2]), Path(sys.argv[3]) +word = json.load(gzip.open(src)) +v, R = word['report']['v'], word['report']['R']; n = 2*v + R +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +meta = word['refactored_cleanup'] +cold = [int(h) for h in meta['cold_low_frame_ended_helpers']] +npre = meta['premix_gates']; nlow = meta['lower_frame_gates'] +early = word['early_cleanup']; eidx = {i for i, _ in early} +rest = [i for i in range(len(word['cleanup'])) if i not in eidx] + + +def trial(w): + """None if the transport audit accepts w, else the AssertionError message.""" + tmp = Path(tempfile.mkdtemp()) + p = tmp/'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w).encode(), mtime=0)) + try: + atc.run(p, routing, tmp/'out') + return None + except AssertionError as e: + return repr(e.args[0]) if e.args else 'AssertionError' + finally: + shutil.rmtree(tmp, ignore_errors=True) + + +# Pinned rejection reasons: each mutant must fail at this assertion of hpe_audit_and_transport.py (message substring). +ENDPOINT, COLDPRE, CONE = "'arbitrary-dirt endpoint'", 'touches a cold hyperplane-ended helper', 'hpe cone pre-check (row / column)' +WHY = dict(premix_to_precondition=COLDPRE, premix_dropped=COLDPRE, e_premix_dropped=ENDPOINT, lower_dropped=ENDPOINT, + remainder_dropped=ENDPOINT, coefficient=ENDPOINT, into_full='cleanup on non-FULL end', dyadic=ENDPOINT, frame_below="'nonmonotone'", + nonmonotone="'nonmonotone'", other_frame=CONE, cone=CONE, extra_end=COLDPRE, marker='cleanup is not the literal reversed inverse', + target='refactored cleanup touches a target', profile_pin='paid local profile differs from the reported local_profile', + entering_precondition='zero-frame precondition/compensation touches an entering helper') +assert trial(word) is None, 'unmutated cold-end word must pass' +results = [] + + +def reject(name, mut, why): + """the mutation must be rejected, and for the pinned reason (a substring of the audit's assertion message).""" + w = copy.deepcopy(word); mut(w) + msg = trial(w) + assert msg is not None, 'cold-end mutation accepted: ' + name + assert why in msg, 'cold-end mutation %r rejected for the wrong reason: %s' % (name, msg[:300]) + results.append(name); print('rejected', name, '|', why, flush=True) + + +h0 = cold[0] +i0, U0 = next((i, f) for i, f in early if h0 in regs(word['cleanup'][i])) +r0 = rest[len(rest)//2] + + +def premix_to_precondition(w): # premix before the wrappers; compensation then reads the cold ends + w['precondition'] = w['precondition'] + w['A'][:npre]; w['A'] = w['A'][npre:] + + +def lower_gate_into_full(w): # a lower-frame gate on a cold-ended helper executed in the FULL remainder instead + w['early_cleanup'] = [x for x in w['early_cleanup'] if x[0] != i0] + + +def drop_cleanup_gate(w, i): # remove the gate AND its early_cleanup entry: a structurally valid word missing one gate + w['cleanup'].pop(i) + w['early_cleanup'] = [[j - (j > i), f] for j, f in w['early_cleanup'] if j != i] + + +def other_frame(w): # a different frame of the same dimension as the cold end (another cold helper's) + f = next(w['helper_final'][str(h)] for h in cold if w['helper_final'][str(h)] != w['helper_final'][str(h0)]) + w['helper_final'][str(h0)] = f + + +def extra_cold_end(w): # declare a premixed partner of h0 cold-ended at h0's frame: fails the row/column cone + p = next(r for e in w['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + w['helper_final'][str(p)] = w['helper_final'][str(h0)] + + +reject('premix placed in the zero-frame precondition (before the cold wrappers)', premix_to_precondition, WHY['premix_to_precondition']) +reject('one premix gate dropped (the compensation then reads a cold-ended helper)', lambda w: w['A'].pop(npre - 1), WHY['premix_dropped']) +reject('one lower-frame cleanup gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, i0), WHY['lower_dropped']) +reject('one FULL-remainder gate dropped', lambda w: drop_cleanup_gate(w, r0), WHY['remainder_dropped']) +reject('lower-frame gate coefficient changed', lambda w: w['cleanup'][i0].__setitem__(3, w['cleanup'][i0][3] * 2), WHY['coefficient']) +reject('lower-frame gate moved into the FULL remainder (touches a cold-ended helper at FULL)', lower_gate_into_full, WHY['into_full']) +reject('lower-frame gate frame below its registers\' frames', lambda w: next(x for x in w['early_cleanup'] if x[0] == i0).__setitem__(1, U0[:-1]), WHY['frame_below']) +reject('cold end at another dim-4 frame', other_frame, WHY['other_frame']) +# PROFILE-PIN control: without its helper_final entry the cold-ended helper is a valid FULL-ended helper; the word is +# rejected because its reported paid profile (which counts the low end) no longer matches the frame chains. +reject('profile pin: cold end dropped (valid FULL end, but the reported profile counts the low end)', lambda w: w['helper_final'].pop(str(h0)), WHY['profile_pin']) +reject('extra cold end on a premixed partner (the compensation reads it before its wrapper)', extra_cold_end, WHY['extra_end']) +reject('refactored-cleanup marker removed (literal-inverse rule applies)', lambda w: w.pop('refactored_cleanup'), WHY['marker']) +reject('remainder gate retargeted to a target register', lambda w: w['cleanup'][r0].__setitem__(1, v + 3), WHY['target']) +reject('non-dyadic remainder coefficient', lambda w: w['cleanup'][r0].__setitem__(4 if w['cleanup'][r0][0] == 'add' else 3, 3 * w['cleanup'][r0][4 if w['cleanup'][r0][0] == 'add' else 3]), WHY['dyadic']) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('5', w['report']['local_profile']['5'] - 1), WHY['profile_pin']) +ent = [int(h) for h in sys.argv[4].split(',')] if len(sys.argv) > 4 else [int(h) for h in meta.get('entering_low_frame_ended_helpers', [])] +for e0 in ent: # ENTERING LOW-FRAME ENDS (ColdSupply extension; every entering end; absent for words without them) + j0 = next((i for i, e in enumerate(word['A'][:npre]) if e0 in regs(e)), None) + print('entering end', e0, 'premix gate', j0, flush=True) + k0, Ue = next((i, f) for i, f in early if e0 in regs(word['cleanup'][i])) + def to_pre(w, j0=j0): w['precondition'].append(w['A'][j0]); w['A'].pop(j0) + def other_hp(w, e0=e0, Ue=Ue): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Ue) and sorted(f) != sorted(Ue)) + if j0 is not None: reject('entering end %d: premix gate dropped' % e0, lambda w, j0=j0: w['A'].pop(j0), WHY['e_premix_dropped']) + if j0 is not None: reject('entering end %d: premix gate at frame [] instead of its entrance E' % e0, lambda w, j0=j0: w['A'][j0].__setitem__(-1, []), WHY['nonmonotone']) + if j0 is not None: reject('entering end %d: premix gate moved into the zero-frame precondition' % e0, to_pre, WHY['entering_precondition']) + reject('entering end %d: lower-frame gate dropped (gate and its early_cleanup entry)' % e0, lambda w, k0=k0: drop_cleanup_gate(w, k0), WHY['lower_dropped']) + reject('entering end %d: profile pin: end dropped (valid FULL end, but the reported profile counts the low end)' % e0, lambda w, e0=e0: w['helper_final'].pop(str(e0)), WHY['profile_pin']) + reject('entering end %d: end at another hyperplane' % e0, other_hp, WHY['cone']) +# Pinned rejection reasons of the COLD-BEYOND mutants (substrings of hpe_audit_and_transport.py assertion messages). +MYWHY = dict(tw_precondition=COLDPRE, tw_dropped=COLDPRE, tw_coefficient=COLDPRE, tw_other_block=COLDPRE, + tw_entering='zero-frame compensation reads an entering helper', + ab_dropped=ENDPOINT, ab_coefficient=ENDPOINT, ab_early=ENDPOINT, ab_live=ENDPOINT, ab_centre=ENDPOINT, + ab_lower="'nonmonotone'", ab_higher="'nonmonotone'", + sh_dropped=ENDPOINT, sh_coefficient=ENDPOINT, rel_dropped=ENDPOINT, rel_coefficient=ENDPOINT, rel_live=ENDPOINT, + h8_other=CONE, h8_lower=ENDPOINT) +# COLD-BEYOND primitives (present only when the word carries them): frame-[] target writes in the premix (explicit +# post-wrapper compensation of an ended helper's dirt) and forward absorptions into dead registers. +nw = meta.get('premix_target_writes', 0) +if nw: + wi = [i for i in range(npre) if v <= word['A'][i][1] < 2*v] + assert len(wi) == nw + + def writes_to_precondition(w): # the target writes run before the cold wrappers (inside the zero-frame precondition) + g = [w['A'][i] for i in wi]; w['precondition'] = w['precondition'] + g + w['A'] = [e for i, e in enumerate(w['A']) if i not in set(wi)] + reject('premix target writes placed in the zero-frame precondition (before the cold wrappers)', writes_to_precondition, MYWHY['tw_precondition']) + reject('one premix target write dropped (compensation must read an ended helper)', lambda w: w['A'].pop(wi[0]), MYWHY['tw_dropped']) + reject('premix target write coefficient changed', lambda w: w['A'][wi[0]].__setitem__(3, w['A'][wi[0]][3] * 2), MYWHY['tw_coefficient']) + # (reading another register that carries the SAME weight of the ended helper's dirt is a valid variant, so the mutant reads + # the same factory slot of the next block, which carries none of it) + entering_regs = sorted(int(r) for r in word.get('start_extra', {})) + reject('premix target write reads an entering helper', lambda w: w['A'][wi[0]].__setitem__(2, entering_regs[0]), MYWHY['tw_entering']) + reject('premix target write reads a cold helper of another block', lambda w: w['A'][wi[0]].__setitem__(2, 2*v + (w['A'][wi[0]][2] - 2*v + 16) % 224), MYWHY['tw_other_block']) +ab = meta.get('forward_absorption_A_indices', []) +if any(len(word['helper_final'][str(h)]) == 8 for h in cold): + # with dim-8 cold ends, the centre-retargeted absorption first leaks an ended helper's dirt into the cut's targets + MYWHY['ab_centre'] = COLDPRE +if ab: + # the ColdBeyond U_b absorption (q += -1/2 g); ColdThird's extra absorptions have their own controls below + a0 = next(a for a in ab if word['A'][a][3] * 2 == -word['A'][a][4]); g0 = word['A'][a0] + + def absorption_moved_early(w): # absorbed before the absorbed register's last kernel write + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[2] == w['A'][i][1] and w['A'][i][-1] == g0[-1]) + w['A'].insert(j, e) + + def absorption_into_live(w): # q += a g moved right after g's previous frame-mate gate, while q is still live + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[1] in regs(w['A'][i])) + w['A'].insert(j, e) + reject('forward absorption dropped', lambda w: w['A'].pop(a0), MYWHY['ab_dropped']) + reject('forward absorption into a centre (a live register read by the cut)', lambda w: w['A'][a0].__setitem__(1, next(c for c in word['centers'] if c not in g0[1:3] and c not in cold)), MYWHY['ab_centre']) + reject('forward absorption coefficient changed', lambda w: w['A'][a0].__setitem__(3, w['A'][a0][3] * 2), MYWHY['ab_coefficient']) + reject('forward absorption placed before the absorbed register\'s last kernel write', absorption_moved_early, MYWHY['ab_early']) + reject('forward absorption placed while the absorbing register is still live', absorption_into_live, MYWHY['ab_live']) + reject('forward absorption at a lower frame than its registers', lambda w: w['A'][a0].__setitem__(-1, w['A'][a0][-1][:-1]), MYWHY['ab_lower']) + reject('forward absorption at a higher frame (FULL) than its registers', lambda w: w['A'][a0].__setitem__(-1, [256, 128, 64, 32, 16, 8, 4, 2, 1]), MYWHY['ab_higher']) +# COLD-THIRD primitives (present only when the word carries them): several absorptions after one input gate, dirt-release +# absorptions (a dead port takes a live helper's value so that a hyperplane unit's column has no dirt on it), and cold ends at +# a dim-8 frame with lifted partners. +hyper = [h for h in cold if len(word['helper_final'][str(h)]) == 8] +if hyper and ab: + sh = next(a for a, b in zip(ab, ab[1:]) if b == a + 1) # two absorptions sharing one input anchor + rel = next(a for a in ab if a - 1 not in ab and a + 1 not in ab and word['A'][a][2] in hyper and word['A'][a][3] * 2 != -word['A'][a][4]) + hh = hyper[0]; ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + reject('second absorption sharing an input anchor dropped', lambda w: w['A'].pop(sh + 1), MYWHY['sh_dropped']) + reject('shared-anchor absorption coefficient changed', lambda w: w['A'][sh + 1].__setitem__(3, w['A'][sh + 1][3] * 2), MYWHY['sh_coefficient']) + reject('dirt-release absorption dropped', lambda w: w['A'].pop(rel), MYWHY['rel_dropped']) + reject('dirt-release absorption coefficient changed', lambda w: w['A'][rel].__setitem__(3, w['A'][rel][3] * 2), MYWHY['rel_coefficient']) + jr = max(i for i in range(npre, rel) if word['A'][i][0] == 'add' and word['A'][i][2] == word['A'][rel][1]) + + def release_while_read(w): # the release runs before a kernel gate that still READS the port (port live) + e = w['A'].pop(rel); w['A'].insert(jr, e) + reject('dirt-release absorption moved before a kernel gate that still reads the port', release_while_read, MYWHY['rel_live']) +if hyper: + # dim-8 cold-end controls once PER DISTINCT dim-8 terminal frame (each family of dim-8 cold ends keeps its own controls) + fams = [] + for h in hyper: + if sorted(word['helper_final'][str(h)]) not in [sorted(word['helper_final'][str(x)]) for x in fams]: fams.append(h) + for hh in fams: + ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + Uh = word['helper_final'][str(hh)] + reject('dim-8 cold end %d (frame %s) at another dim-8 frame' % (hh, Uh), lambda w, hh=hh: w['helper_final'].__setitem__(str(hh), next(f for h, f in w['helper_final'].items() if len(f) == 8 and sorted(f) != sorted(w['helper_final'][str(hh)]))), MYWHY['h8_other']) + reject('dim-8 cold end %d (frame %s): one lower-frame gate dropped (gate and its early_cleanup entry)' % (hh, Uh), lambda w, ih=ih: drop_cleanup_gate(w, ih), MYWHY['h8_lower']) + reject('dim-8 cold end %d (frame %s): profile pin (end dropped)' % (hh, Uh), lambda w, hh=hh: w['helper_final'].pop(str(hh)), WHY['profile_pin']) +# FACTORED ACCUMULATOR (CarrierBypass; present only when the word carries one): a lower-frame tail gate a += x*g on two +# non-ended registers whose accumulator a is afterwards read by a dim-8 cold end's tail gate (h += y*a at its U). +ended_all = {int(h) for h in word['helper_final']} +tailg = [(i, word['cleanup'][i]) for i, _ in early] +accs = [] # EVERY factored accumulator gate (one per accumulator register a), each controlled on its own +for k, (i, e) in enumerate(tailg): + if e[0] == 'add' and e[1] not in ended_all and e[2] not in ended_all and len(next(f for j, f in early if j == i)) < 8: + if e[1] not in [word['cleanup'][j][1] for j in accs] and any(t[0] == 'add' and t[2] == e[1] and t[1] in hyper for _, t in tailg[k + 1:]): + accs.append(i) +for acc in accs: + a = word['cleanup'][acc][1] + reject('factored accumulator %d (gate %d) zeroed' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, 0), ENDPOINT) + reject('factored accumulator %d (gate %d) coefficient doubled' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, w['cleanup'][acc][3] * 2), ENDPOINT) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'COLD-END-CONTROLS.json').write_text(json.dumps(dict(status='PASS_COLD_END_RAW_WORD_CONTROLS', word=str(src), rejected=results), indent=1) + '\n') +print('PASS', len(results), 'cold-end raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/reproduce_layers.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/reproduce_layers.py new file mode 100644 index 0000000000..ed517ba1dd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers/reproduce_layers.py @@ -0,0 +1,105 @@ +#!/usr/bin/env python3 +"""Rebuild the layered gauge44 word (pivot swaps + entering ends + factored dim-8 cold ends) and its native locals. + +Input: a fresh `construction/reproduce.py --until word` output directory (its regroup/ and cold44/ words are pinned +by reproduce.py itself). Steps, each checked exactly: + 1. pivot-swap: construction/layers/build_pivot_swap.py on regroup/FULL-WORD (six cost-neutral pivot-role swaps, + exact zero-response replay, unchanged profile and width multiset, 30 negative controls); + 2. hpe: the inherited jp8 hyperplane-end changes (HYPERPLANE-END-S6.json) applied with PR635's build_hpe.apply; + 3. cold44-exact: #645's build_gauge_cold44.py on the swapped HPE word; its 44 rank-four cold ends, premix and tail + must equal the unswapped cold44 construction's (the swaps touch no factory block); + 4. layers: PR635's unchanged build_cold_end.apply(HPE, COLD-LAYERS-RECIPE) - the cold44 recipe plus 8 entering ends + (560/561/572/573 at U24, 597/599/537/549 at U30) and 10 factored dim-8 cold ends; output sha pinned; + 5. layer-end-controls: raw-word negative controls on the layered word (PR635 cold_end_controls adapted by + LayerReviewer: lower->FULL pinned at 'cleanup on non-FULL end', entering ends from the recipe); 59 rejected; + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs (as in reproduce.py). +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +LAYERED_SHA = '0be48b1d8a6105059addf3f0d5e420c27ae3398b3a1186b6b11e9c4aa9e3f3d4' +LAYER_CONTROLS = 59 + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--word-dir', type=Path, required=True, help='construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + env.pop('PYTHONOPTIMIZE', None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + wd = a.word_dir.resolve() + run('pivot-swap', HERE / 'build_pivot_swap.py', '--input', wd / 'regroup/FULL-WORD.json.gz', + '--recipe', HERE / 'PIVOT-SWAP-S6.json', '--gk-dir', gk, '--out', out / 'swap') + hpe = load('upstream_hpe', up / 'code/build_hpe.py') + w = hpe.apply(read(out / 'swap/FULL-WORD.json.gz'), read(HERE / 'HYPERPLANE-END-S6.json')['changes']) + (out / 'hpe').mkdir(); (out / 'hpe/FULL-WORD.json.gz').write_bytes(gzip.compress(enc(w), mtime=0)) + run('cold44-exact', HERE.parent / 'build_gauge_cold44.py', '--input', out / 'hpe/FULL-WORD.json.gz', + '--out', out / 'cold44', '--hamming', wd / 'hamming', '--upstream-package', up) + new, old = read(out / 'cold44/RECIPE.json.gz'), read(wd / 'cold44/RECIPE.json.gz') + # The swaps touch no factory block: the 44 ends, their premix and their low tails are identical; only the FULL + # inverse (rebuilt from the whole word) differs. + for key in ('premix', 'early_cleanup', 'cold_ends'): + assert new[key] == old[key], ('swapped cold44 differs from the pinned cold44 construction', key) + tail = len(new['early_cleanup']); assert new['cleanup'][:tail] == old['cleanup'][:tail], 'low tails' + bce = load('upstream_cold', up / 'code/build_cold_end.py') + layered = bce.apply(w, read(HERE / 'COLD-LAYERS-RECIPE.json.gz')) + raw = enc(layered); assert hashlib.sha256(raw).hexdigest() == LAYERED_SHA, 'layered word' + rep = layered['report'] + assert rep['local_profile'] == {'1': 2542, '2': 414, '3': 434, '4': 154, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 52, '5': 48, '7': 42, '8': 116, '9': 234}, rep['width_inventory'] + (out / 'layers').mkdir(); word = out / 'layers/FULL-WORD.json.gz'; word.write_bytes(gzip.compress(raw, mtime=0)) + print('PASS layered scalar word', word, flush=True) + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', HERE / 'layer_end_controls.py', word, routing, out / 'controls') + ctl = json.loads((out / 'controls/COLD-END-CONTROLS.json').read_text()) + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == LAYER_CONTROLS, len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', routing, '--out', local) + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz new file mode 100644 index 0000000000..f9155e3079 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/COLD-LAYERS-RECIPE-NP.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/HPE-RECIPE-NP.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/HPE-RECIPE-NP.json new file mode 100644 index 0000000000..2605d199ed --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/HPE-RECIPE-NP.json @@ -0,0 +1 @@ +{"changes": [{"helper": 448, "cleanup_index": 674, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 449, "cleanup_index": 673, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 450, "cleanup_index": 672, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 451, "cleanup_index": 671, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 452, "cleanup_index": 670, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 453, "cleanup_index": 669, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 454, "cleanup_index": 668, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 455, "cleanup_index": 667, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 456, "cleanup_index": 666, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 457, "cleanup_index": 665, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 458, "cleanup_index": 664, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 459, "cleanup_index": 663, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 460, "cleanup_index": 658, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 461, "cleanup_index": 657, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 470, "cleanup_index": 648, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 471, "cleanup_index": 647, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 472, "cleanup_index": 642, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 473, "cleanup_index": 641, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 482, "cleanup_index": 632, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 483, "cleanup_index": 631, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 496, "cleanup_index": 609, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 497, "cleanup_index": 608, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 520, "cleanup_index": 573, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 521, "cleanup_index": 572, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 544, "cleanup_index": 539, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 545, "cleanup_index": 538, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 568, "cleanup_index": 507, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 569, "cleanup_index": 506, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 580, "cleanup_index": 491, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 581, "cleanup_index": 490, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 590, "cleanup_index": 481, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 591, "cleanup_index": 480, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 592, "cleanup_index": 475, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 593, "cleanup_index": 474, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 602, "cleanup_index": 465, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 603, "cleanup_index": 464, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 604, "cleanup_index": 459, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 605, "cleanup_index": 458, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 606, "cleanup_index": 457, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 607, "cleanup_index": 456, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 609, "cleanup_index": 454, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 611, "cleanup_index": 452, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 612, "cleanup_index": 451, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 613, "cleanup_index": 450, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 614, "cleanup_index": 449, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}, {"helper": 615, "cleanup_index": 448, "frame": [256, 128, 64, 32, 16, 8, 6, 1]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/PIVOT-SWAP-K8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/PIVOT-SWAP-K8.json new file mode 100644 index 0000000000..7a8edeb1e4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/PIVOT-SWAP-K8.json @@ -0,0 +1 @@ +{"input_content_sha256": "00aeefe0c778ff64125628d7c869ae1aa27db60911f0289a2d4283af5cff85d2", "output_content_sha256": "377ab10c2bf6173498c8af15f8654060331ec9ee232e58cc75956dc015b23685", "swaps": [{"pivot": 482, "new_pivot": 554, "entrance": [24], "gates": [{"part": "B", "index": 331, "before": ["add", 554, 482, -1, 1, [24]], "after": ["add", 482, 554, -1, 1, [24]]}, {"part": "B", "index": 332, "before": ["add", 616, 482, 2, 1, [24]], "after": ["add", 616, 554, -2, 1, [24]]}, {"part": "B", "index": 333, "before": ["add", 618, 482, -2, 1, [24]], "after": ["add", 618, 554, 2, 1, [24]]}, {"part": "B", "index": 334, "before": ["add", 664, 482, 1, 1, [24]], "after": ["add", 664, 554, -1, 1, [24]]}, {"part": "B", "index": 335, "before": ["add", 666, 482, -1, 1, [24]], "after": ["add", 666, 554, 1, 1, [24]]}]}, {"pivot": 483, "new_pivot": 555, "entrance": [24], "gates": [{"part": "B", "index": 468, "before": ["add", 123, 483, 1, 1, [24]], "after": ["add", 123, 555, -1, 1, [24]]}, {"part": "B", "index": 504, "before": ["add", 187, 483, -1, 1, [24]], "after": ["add", 187, 555, 1, 1, [24]]}, {"part": "B", "index": 734, "before": ["add", 555, 483, -1, 1, [24]], "after": ["add", 483, 555, -1, 1, [24]]}]}, {"pivot": 494, "new_pivot": 566, "entrance": [24], "gates": [{"part": "B", "index": 128, "before": ["add", 628, 494, 2, 1, [24]], "after": ["add", 628, 566, -2, 1, [24]]}, {"part": "B", "index": 130, "before": ["add", 628, 494, -2, 1, [24]], "after": ["add", 628, 566, 2, 1, [24]]}, {"part": "B", "index": 230, "before": ["add", 676, 494, -2, 1, [24]], "after": ["add", 676, 566, 2, 1, [24]]}, {"part": "B", "index": 232, "before": ["add", 676, 494, 2, 1, [24]], "after": ["add", 676, 566, -2, 1, [24]]}, {"part": "B", "index": 750, "before": ["add", 566, 494, -1, 1, [24]], "after": ["add", 494, 566, -1, 1, [24]]}]}, {"pivot": 495, "new_pivot": 567, "entrance": [24], "gates": [{"part": "B", "index": 49, "before": ["add", 211, 495, -1, 1, [24]], "after": ["add", 211, 567, 1, 1, [24]]}, {"part": "B", "index": 477, "before": ["add", 147, 495, 1, 1, [24]], "after": ["add", 147, 567, -1, 1, [24]]}, {"part": "B", "index": 752, "before": ["add", 567, 495, -1, 1, [24]], "after": ["add", 495, 567, -1, 1, [24]]}]}, {"pivot": 507, "new_pivot": 531, "entrance": [30], "gates": [{"part": "B", "index": 459, "before": ["add", 115, 507, -1, 1, [30]], "after": ["add", 115, 531, 1, 1, [30]]}, {"part": "B", "index": 495, "before": ["add", 179, 507, 1, 1, [30]], "after": ["add", 179, 531, -1, 1, [30]]}, {"part": "B", "index": 770, "before": ["add", 531, 507, -1, 1, [30]], "after": ["add", 507, 531, -1, 1, [30]]}]}, {"pivot": 519, "new_pivot": 543, "entrance": [30], "gates": [{"part": "B", "index": 486, "before": ["add", 155, 519, -1, 1, [30]], "after": ["add", 155, 543, 1, 1, [30]]}, {"part": "B", "index": 521, "before": ["add", 219, 519, 1, 1, [30]], "after": ["add", 219, 543, -1, 1, [30]]}, {"part": "B", "index": 788, "before": ["add", 543, 519, -1, 1, [30]], "after": ["add", 519, 543, -1, 1, [30]]}]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/PIVOT-SWAP-NP.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/PIVOT-SWAP-NP.json new file mode 100644 index 0000000000..4e0d846426 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/PIVOT-SWAP-NP.json @@ -0,0 +1,588 @@ +{ + "input_content_sha256": "864ff4a19987bcb27016367801a98ca50dae69eafe01d3614f8bae69f5713d6d", + "output_content_sha256": "beb3579fce83cb3b70f4e85761cbb3b8c91d711d4b9cf473074269b8447fc4e4", + "swaps": [ + { + "pivot": 494, + "new_pivot": 566, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 379, + "before": [ + "add", + 566, + 494, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 494, + 566, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 380, + "before": [ + "add", + 640, + 494, + 2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 640, + 566, + -2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 381, + "before": [ + "add", + 642, + 494, + -2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 642, + 566, + 2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 382, + "before": [ + "add", + 688, + 494, + 1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 688, + 566, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 383, + "before": [ + "add", + 690, + 494, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 690, + 566, + 1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 495, + "new_pivot": 567, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 516, + "before": [ + "add", + 123, + 495, + 1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 123, + 567, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 584, + "before": [ + "add", + 187, + 495, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 187, + 567, + 1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 686, + "before": [ + "add", + 567, + 495, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 495, + 567, + -1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 506, + "new_pivot": 578, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 176, + "before": [ + "add", + 652, + 506, + 2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 652, + 578, + -2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 178, + "before": [ + "add", + 652, + 506, + -2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 652, + 578, + 2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 278, + "before": [ + "add", + 700, + 506, + -2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 700, + 578, + 2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 280, + "before": [ + "add", + 700, + 506, + 2, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 700, + 578, + -2, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 702, + "before": [ + "add", + 578, + 506, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 506, + 578, + -1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 507, + "new_pivot": 579, + "entrance": [ + 24 + ], + "gates": [ + { + "part": "B", + "index": 93, + "before": [ + "add", + 211, + 507, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 211, + 579, + 1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 541, + "before": [ + "add", + 147, + 507, + 1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 147, + 579, + -1, + 1, + [ + 24 + ] + ] + }, + { + "part": "B", + "index": 704, + "before": [ + "add", + 579, + 507, + -1, + 1, + [ + 24 + ] + ], + "after": [ + "add", + 507, + 579, + -1, + 1, + [ + 24 + ] + ] + } + ] + }, + { + "pivot": 519, + "new_pivot": 543, + "entrance": [ + 30 + ], + "gates": [ + { + "part": "B", + "index": 507, + "before": [ + "add", + 115, + 519, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 115, + 543, + 1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 575, + "before": [ + "add", + 179, + 519, + 1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 179, + 543, + -1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 722, + "before": [ + "add", + 543, + 519, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 519, + 543, + -1, + 1, + [ + 30 + ] + ] + } + ] + }, + { + "pivot": 531, + "new_pivot": 555, + "entrance": [ + 30 + ], + "gates": [ + { + "part": "B", + "index": 550, + "before": [ + "add", + 155, + 531, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 155, + 555, + 1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 617, + "before": [ + "add", + 219, + 531, + 1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 219, + 555, + -1, + 1, + [ + 30 + ] + ] + }, + { + "part": "B", + "index": 740, + "before": [ + "add", + 555, + 531, + -1, + 1, + [ + 30 + ] + ], + "after": [ + "add", + 531, + 555, + -1, + 1, + [ + 30 + ] + ] + } + ] + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/reproduce_np.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/reproduce_np.py new file mode 100644 index 0000000000..79cb6fa912 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_np/reproduce_np.py @@ -0,0 +1,149 @@ +#!/usr/bin/env python3 +"""Rebuild the layered no-triangle word (NP) and its native locals. + +Input: a fresh `construction/notri/reproduce_notri.py --word-only` output directory. That driver pins the +no-triangle word (3e99ba77...) and writes its regroup/ and cold44/ words. Steps, each checked exactly: + 1. pivot-swap: ../layers/build_pivot_swap.py (PR641's constructor, signed, unchanged) on the no-triangle regroup word, with PIVOT-SWAP-NP.json: + the six pivot-role swaps of research/gauge44-layered, mapped through the 504-helper map (494->566, 495->567, + 506->578, 507->579, 519->543, 531->555). Exact zero-response replay, unchanged profile and width multiset, + 30 negative controls. + 2. hpe: PR635's build_hpe.candidates, greedy with disjoint registers. Must equal HPE-RECIPE-NP.json (46 changes, + the same helpers as the unswapped word); applied with build_hpe.apply. + 3. cold44-exact: notri/cold44x.py on the swapped HPE word, pairing ranks pinned [4]*14. Its 56 cold ends, premix + and low tails must equal the unswapped no-triangle construction's. + 4. layers: PR635's unchanged build_cold_end.apply(HPE, COLD-LAYERS-RECIPE-NP): cold44 plus the entering ends + 566/567/578/579 at U24 (s4) and 608/610/543/555 at U30 (x30), BlockCombine's b6 and the q4 dim-8 cold ends. + The output word sha and its profile and widths are pinned. + 5. layer-end-controls: ../layers/layer_end_controls.py (LayerReviewer's signed adaptation of PR635's + cold_end_controls.py, unchanged) on the layered word; exactly 59 rejections at pinned reasons. +../layers/reproduce_layers.py is research/gauge44-layered's driver for the 492-helper word, shipped unchanged as +signed; it is not used for this word. + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs, with pins. +Apache-2.0. Driver by ColdWitness after G44Stack's NP chain (NP/chain.py, seq.py). +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NOTRI = HERE.parent / 'notri' +LAYERS = HERE.parent / 'layers' # the signed research/gauge44-layered files, unchanged +REGROUP_SHA = '864ff4a1' # prefix; full value checked against PIVOT-SWAP-NP.json's input_content_sha256 +SWAP_SHA = 'beb3579f' +NP_SHA = 'a9de804f194eeb39f52a4c6e54c14d93e881bec4b632694249733ed410b58113' +LAYER_CONTROLS = 59 +CANONICAL_SHA = '1ae812a336178760071efe347e876e0102b5b71f799d957db15c5f3004c19d7a' +PROGRAM_SHA = {'forward': 'a3882a428bdafab888072211d4ed8d34572746873d77c6ef900495853cc3fa11', + 'backward': 'f67a3dc20c27fb39295b8030e951e9779109ef1537f6f8de9d08510b9ad6792a'} +CLIFFORD_SHA = '890b60fc4ae183c773c51405e0f4ef6a945dc2aae55ba2480f134602e8296cda' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def dump(p, v): + p.parent.mkdir(parents=True, exist_ok=True); p.write_bytes(gzip.compress(enc(v), mtime=0)) + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--notri-dir', type=Path, required=True, help='construction/notri/reproduce_notri.py --word-only output') + ap.add_argument('--hamming', type=Path, required=True, help='hamming/ of the construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + nd = a.notri_dir.resolve() + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + # the input must be the pinned no-triangle construction + nr = load('notri_driver', NOTRI / 'reproduce_notri.py') + assert hashlib.sha256(enc(read(nd / 'cold44/FULL-WORD.json.gz'))).hexdigest() == nr.NOTRI_SHA, 'notri word' + # 1. pivot swaps on the regroup word + rg = hashlib.sha256(enc(read(nd / 'regroup/FULL-WORD.json.gz'))).hexdigest() + assert rg.startswith(REGROUP_SHA) and rg == read(HERE / 'PIVOT-SWAP-NP.json')['input_content_sha256'], ('regroup word', rg) + run('pivot-swap', LAYERS / 'build_pivot_swap.py', '--input', nd / 'regroup/FULL-WORD.json.gz', + '--recipe', HERE / 'PIVOT-SWAP-NP.json', '--gk-dir', gk, '--out', out / 'swap') + w = read(out / 'swap/FULL-WORD.json.gz') + sw = hashlib.sha256(enc(w)).hexdigest(); assert sw.startswith(SWAP_SHA) and sw == read(HERE / 'PIVOT-SWAP-NP.json')['output_content_sha256'], ('swap word', sw) + # 2. HPE (greedy, must equal the pinned recipe) + h = load('upstream_hpe', up / 'code/build_hpe.py') + used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + assert ch == read(HERE / 'HPE-RECIPE-NP.json')['changes'], 'HPE recipe' + w = h.apply(w, ch); dump(out / 'hpe/FULL-WORD.json.gz', w) + # 3. cold44 on the swapped word: same ends, premix and tails as the unswapped no-triangle construction + hm = set(read(nd / 'raw/HELPER-MAP.json')['map'].values()) + env['EXTRAH'] = json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)) + env['PAIRING_RANKS'] = json.dumps([4] * 14) + run('cold44-exact', NOTRI / 'cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', a.hamming.resolve(), '--upstream-package', up) + for k in ('EXTRAH', 'PAIRING_RANKS'): env.pop(k) + new, old = read(out / 'cold44/RECIPE.json.gz'), read(nd / 'cold44/RECIPE.json.gz') + for key in ('premix', 'early_cleanup', 'cold_ends'): + assert new[key] == old[key], ('swapped cold44 differs from the pinned no-triangle construction', key) + tail = len(new['early_cleanup']); assert new['cleanup'][:tail] == old['cleanup'][:tail], 'low tails' + # 4. layers + bce = load('upstream_cold', up / 'code/build_cold_end.py') + layered = bce.apply(w, read(HERE / 'COLD-LAYERS-RECIPE-NP.json.gz')) + raw = enc(layered); assert hashlib.sha256(raw).hexdigest() == NP_SHA, ('layered word', hashlib.sha256(raw).hexdigest()) + rep = layered['report'] + assert rep['local_profile'] == {'1': 2534, '2': 346, '3': 458, '4': 178, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 64, '5': 48, '7': 54, '8': 116, '9': 222}, rep['width_inventory'] + (out / 'layers').mkdir(); word = out / 'layers/FULL-WORD.json.gz'; word.write_bytes(gzip.compress(raw, mtime=0)) + print('PASS layered no-triangle word', NP_SHA, flush=True) + # 5. layer-end controls + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', LAYERS / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = json.loads((out / 'controls/COLD-END-CONTROLS.json').read_text()) + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == LAYER_CONTROLS, len(ctl['rejected']) + # 6. native locals + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == CANONICAL_SHA, 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in PROGRAM_SHA.items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == CLIFFORD_SHA, 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz new file mode 100644 index 0000000000..a408c95816 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/P6N-SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/P6N-SPEC.json new file mode 100644 index 0000000000..43c3ec265c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/P6N-SPEC.json @@ -0,0 +1 @@ +{"ends":[{"U":[256,128,66,34,16,8,6,1],"labels":[512,513]},{"U":[256,128,72,40,24,4,2,1],"labels":[311,510]},{"U":[256,128,66,34,18,10,6,1],"labels":[522,327]}]} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/layer_end_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/layer_end_controls.py new file mode 100644 index 0000000000..dd321fe255 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/layer_end_controls.py @@ -0,0 +1,199 @@ +"""layer_end_controls.py LAYERED-WORD.json.gz ROUTING OUTDIR (env PR635_CODE): adapted PR635 cold_end_controls.py (LayerReviewer): raw-word negative controls for the cold low-frame ends and the +refactored cleanup accepted by hpe_audit_and_transport.py. Every mutation MUST be rejected (AssertionError); the +unmutated word MUST pass. Apache-2.0. DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code.""" +import copy, gzip, json, shutil, sys, tempfile +from pathlib import Path +import os +sys.path.insert(0, os.environ['PR635_CODE']) # PR635's unchanged hpe_audit_and_transport.py +import hpe_audit_and_transport as atc + +src, routing, outdir = Path(sys.argv[1]), Path(sys.argv[2]), Path(sys.argv[3]) +word = json.load(gzip.open(src)) +v, R = word['report']['v'], word['report']['R']; n = 2*v + R +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +meta = word['refactored_cleanup'] +cold = [int(h) for h in meta['cold_low_frame_ended_helpers']] +npre = meta['premix_gates']; nlow = meta['lower_frame_gates'] +early = word['early_cleanup']; eidx = {i for i, _ in early} +rest = [i for i in range(len(word['cleanup'])) if i not in eidx] + + +def trial(w): + """None if the transport audit accepts w, else the AssertionError message.""" + tmp = Path(tempfile.mkdtemp()) + p = tmp/'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w).encode(), mtime=0)) + try: + atc.run(p, routing, tmp/'out') + return None + except AssertionError as e: + return repr(e.args[0]) if e.args else 'AssertionError' + finally: + shutil.rmtree(tmp, ignore_errors=True) + + +# Pinned rejection reasons: each mutant must fail at this assertion of hpe_audit_and_transport.py (message substring). +ENDPOINT, COLDPRE, CONE = "'arbitrary-dirt endpoint'", 'touches a cold hyperplane-ended helper', 'hpe cone pre-check (row / column)' +WHY = dict(premix_to_precondition=COLDPRE, premix_dropped=COLDPRE, e_premix_dropped=ENDPOINT, lower_dropped=ENDPOINT, + remainder_dropped=ENDPOINT, coefficient=ENDPOINT, into_full='cleanup on non-FULL end', dyadic=ENDPOINT, frame_below="'nonmonotone'", + nonmonotone="'nonmonotone'", other_frame=CONE, cone=CONE, extra_end=COLDPRE, marker='cleanup is not the literal reversed inverse', + target='refactored cleanup touches a target', profile_pin='paid local profile differs from the reported local_profile', + entering_precondition='zero-frame precondition/compensation touches an entering helper') +assert trial(word) is None, 'unmutated cold-end word must pass' +results = [] + + +def reject(name, mut, why): + """the mutation must be rejected, and for the pinned reason (a substring of the audit's assertion message).""" + w = copy.deepcopy(word); mut(w) + msg = trial(w) + assert msg is not None, 'cold-end mutation accepted: ' + name + assert why in msg, 'cold-end mutation %r rejected for the wrong reason: %s' % (name, msg[:300]) + results.append(name); print('rejected', name, '|', why, flush=True) + + +h0 = cold[0] +i0, U0 = next((i, f) for i, f in early if h0 in regs(word['cleanup'][i])) +r0 = rest[len(rest)//2] + + +def premix_to_precondition(w): # premix before the wrappers; compensation then reads the cold ends + w['precondition'] = w['precondition'] + w['A'][:npre]; w['A'] = w['A'][npre:] + + +def lower_gate_into_full(w): # a lower-frame gate on a cold-ended helper executed in the FULL remainder instead + w['early_cleanup'] = [x for x in w['early_cleanup'] if x[0] != i0] + + +def drop_cleanup_gate(w, i): # remove the gate AND its early_cleanup entry: a structurally valid word missing one gate + w['cleanup'].pop(i) + w['early_cleanup'] = [[j - (j > i), f] for j, f in w['early_cleanup'] if j != i] + + +def other_frame(w): # a different frame of the same dimension as the cold end (another cold helper's) + f = next(w['helper_final'][str(h)] for h in cold if w['helper_final'][str(h)] != w['helper_final'][str(h0)]) + w['helper_final'][str(h0)] = f + + +def extra_cold_end(w): # declare a premixed partner of h0 cold-ended at h0's frame: fails the row/column cone + p = next(r for e in w['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + w['helper_final'][str(p)] = w['helper_final'][str(h0)] + + +reject('premix placed in the zero-frame precondition (before the cold wrappers)', premix_to_precondition, WHY['premix_to_precondition']) +reject('one premix gate dropped (the compensation then reads a cold-ended helper)', lambda w: w['A'].pop(npre - 1), WHY['premix_dropped']) +reject('one lower-frame cleanup gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, i0), WHY['lower_dropped']) +reject('one FULL-remainder gate dropped', lambda w: drop_cleanup_gate(w, r0), WHY['remainder_dropped']) +reject('lower-frame gate coefficient changed', lambda w: w['cleanup'][i0].__setitem__(3, w['cleanup'][i0][3] * 2), WHY['coefficient']) +reject('lower-frame gate moved into the FULL remainder (touches a cold-ended helper at FULL)', lower_gate_into_full, WHY['into_full']) +reject('lower-frame gate frame below its registers\' frames', lambda w: next(x for x in w['early_cleanup'] if x[0] == i0).__setitem__(1, U0[:-1]), WHY['frame_below']) +reject('cold end at another dim-4 frame', other_frame, WHY['other_frame']) +# PROFILE-PIN control: without its helper_final entry the cold-ended helper is a valid FULL-ended helper; the word is +# rejected because its reported paid profile (which counts the low end) no longer matches the frame chains. +reject('profile pin: cold end dropped (valid FULL end, but the reported profile counts the low end)', lambda w: w['helper_final'].pop(str(h0)), WHY['profile_pin']) +reject('extra cold end on a premixed partner (the compensation reads it before its wrapper)', extra_cold_end, WHY['extra_end']) +reject('refactored-cleanup marker removed (literal-inverse rule applies)', lambda w: w.pop('refactored_cleanup'), WHY['marker']) +reject('remainder gate retargeted to a target register', lambda w: w['cleanup'][r0].__setitem__(1, v + 3), WHY['target']) +reject('non-dyadic remainder coefficient', lambda w: w['cleanup'][r0].__setitem__(4 if w['cleanup'][r0][0] == 'add' else 3, 3 * w['cleanup'][r0][4 if w['cleanup'][r0][0] == 'add' else 3]), WHY['dyadic']) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('5', w['report']['local_profile']['5'] - 1), WHY['profile_pin']) +ent = [int(h) for h in sys.argv[4].split(',')] if len(sys.argv) > 4 else [int(h) for h in meta.get('entering_low_frame_ended_helpers', [])] +for e0 in ent: # ENTERING LOW-FRAME ENDS (ColdSupply extension; every entering end; absent for words without them) + j0 = next((i for i, e in enumerate(word['A'][:npre]) if e0 in regs(e)), None) + print('entering end', e0, 'premix gate', j0, flush=True) + k0, Ue = next((i, f) for i, f in early if e0 in regs(word['cleanup'][i])) + def to_pre(w, j0=j0): w['precondition'].append(w['A'][j0]); w['A'].pop(j0) + def other_hp(w, e0=e0, Ue=Ue): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Ue) and sorted(f) != sorted(Ue)) + if j0 is not None: reject('entering end %d: premix gate dropped' % e0, lambda w, j0=j0: w['A'].pop(j0), WHY['e_premix_dropped']) + if j0 is not None: reject('entering end %d: premix gate at frame [] instead of its entrance E' % e0, lambda w, j0=j0: w['A'][j0].__setitem__(-1, []), WHY['nonmonotone']) + if j0 is not None: reject('entering end %d: premix gate moved into the zero-frame precondition' % e0, to_pre, WHY['entering_precondition']) + reject('entering end %d: lower-frame gate dropped (gate and its early_cleanup entry)' % e0, lambda w, k0=k0: drop_cleanup_gate(w, k0), WHY['lower_dropped']) + reject('entering end %d: profile pin: end dropped (valid FULL end, but the reported profile counts the low end)' % e0, lambda w, e0=e0: w['helper_final'].pop(str(e0)), WHY['profile_pin']) + reject('entering end %d: end at another hyperplane' % e0, other_hp, WHY['cone']) +# Pinned rejection reasons of the COLD-BEYOND mutants (substrings of hpe_audit_and_transport.py assertion messages). +MYWHY = dict(tw_precondition=COLDPRE, tw_dropped=COLDPRE, tw_coefficient=COLDPRE, tw_other_block=COLDPRE, + tw_entering='zero-frame compensation reads an entering helper', + ab_dropped=ENDPOINT, ab_coefficient=ENDPOINT, ab_early=ENDPOINT, ab_live=ENDPOINT, ab_centre=ENDPOINT, + ab_lower="'nonmonotone'", ab_higher="'nonmonotone'", + sh_dropped=ENDPOINT, sh_coefficient=ENDPOINT, rel_dropped=ENDPOINT, rel_coefficient=ENDPOINT, rel_live=ENDPOINT, + h8_other=CONE, h8_lower=ENDPOINT) +# COLD-BEYOND primitives (present only when the word carries them): frame-[] target writes in the premix (explicit +# post-wrapper compensation of an ended helper's dirt) and forward absorptions into dead registers. +nw = meta.get('premix_target_writes', 0) +if nw: + wi = [i for i in range(npre) if v <= word['A'][i][1] < 2*v] + assert len(wi) == nw + + def writes_to_precondition(w): # the target writes run before the cold wrappers (inside the zero-frame precondition) + g = [w['A'][i] for i in wi]; w['precondition'] = w['precondition'] + g + w['A'] = [e for i, e in enumerate(w['A']) if i not in set(wi)] + reject('premix target writes placed in the zero-frame precondition (before the cold wrappers)', writes_to_precondition, MYWHY['tw_precondition']) + reject('one premix target write dropped (compensation must read an ended helper)', lambda w: w['A'].pop(wi[0]), MYWHY['tw_dropped']) + reject('premix target write coefficient changed', lambda w: w['A'][wi[0]].__setitem__(3, w['A'][wi[0]][3] * 2), MYWHY['tw_coefficient']) + # (reading another register that carries the SAME weight of the ended helper's dirt is a valid variant, so the mutant reads + # the same factory slot of the next block, which carries none of it) + entering_regs = sorted(int(r) for r in word.get('start_extra', {})) + reject('premix target write reads an entering helper', lambda w: w['A'][wi[0]].__setitem__(2, entering_regs[0]), MYWHY['tw_entering']) + reject('premix target write reads a cold helper of another block', lambda w: w['A'][wi[0]].__setitem__(2, 2*v + (w['A'][wi[0]][2] - 2*v + 16) % 224), MYWHY['tw_other_block']) +ab = meta.get('forward_absorption_A_indices', []) +if any(len(word['helper_final'][str(h)]) == 8 for h in cold): + # with dim-8 cold ends, the centre-retargeted absorption first leaks an ended helper's dirt into the cut's targets + MYWHY['ab_centre'] = COLDPRE +if ab: + # the ColdBeyond U_b absorption (q += -1/2 g); ColdThird's extra absorptions have their own controls below + a0 = next(a for a in ab if word['A'][a][3] * 2 == -word['A'][a][4]); g0 = word['A'][a0] + + def absorption_moved_early(w): # absorbed before the absorbed register's last kernel write + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[2] == w['A'][i][1] and w['A'][i][-1] == g0[-1]) + w['A'].insert(j, e) + + def absorption_into_live(w): # q += a g moved right after g's previous frame-mate gate, while q is still live + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[1] in regs(w['A'][i])) + w['A'].insert(j, e) + reject('forward absorption dropped', lambda w: w['A'].pop(a0), MYWHY['ab_dropped']) + reject('forward absorption into a centre (a live register read by the cut)', lambda w: w['A'][a0].__setitem__(1, next(c for c in word['centers'] if c not in g0[1:3] and c not in cold)), MYWHY['ab_centre']) + reject('forward absorption coefficient changed', lambda w: w['A'][a0].__setitem__(3, w['A'][a0][3] * 2), MYWHY['ab_coefficient']) + reject('forward absorption placed before the absorbed register\'s last kernel write', absorption_moved_early, MYWHY['ab_early']) + reject('forward absorption placed while the absorbing register is still live', absorption_into_live, MYWHY['ab_live']) + reject('forward absorption at a lower frame than its registers', lambda w: w['A'][a0].__setitem__(-1, w['A'][a0][-1][:-1]), MYWHY['ab_lower']) + reject('forward absorption at a higher frame (FULL) than its registers', lambda w: w['A'][a0].__setitem__(-1, [256, 128, 64, 32, 16, 8, 4, 2, 1]), MYWHY['ab_higher']) +# COLD-THIRD primitives (present only when the word carries them): several absorptions after one input gate, dirt-release +# absorptions (a dead port takes a live helper's value so that a hyperplane unit's column has no dirt on it), and cold ends at +# a dim-8 frame with lifted partners. +hyper = [h for h in cold if len(word['helper_final'][str(h)]) == 8] +if hyper and ab: + sh = next(a for a, b in zip(ab, ab[1:]) if b == a + 1) # two absorptions sharing one input anchor + rel = next(a for a in ab if a - 1 not in ab and a + 1 not in ab and word['A'][a][2] in hyper and word['A'][a][3] * 2 != -word['A'][a][4]) + hh = hyper[0]; ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + reject('second absorption sharing an input anchor dropped', lambda w: w['A'].pop(sh + 1), MYWHY['sh_dropped']) + reject('shared-anchor absorption coefficient changed', lambda w: w['A'][sh + 1].__setitem__(3, w['A'][sh + 1][3] * 2), MYWHY['sh_coefficient']) + reject('dirt-release absorption dropped', lambda w: w['A'].pop(rel), MYWHY['rel_dropped']) + reject('dirt-release absorption coefficient changed', lambda w: w['A'][rel].__setitem__(3, w['A'][rel][3] * 2), MYWHY['rel_coefficient']) + jr = max(i for i in range(npre, rel) if word['A'][i][0] == 'add' and word['A'][i][2] == word['A'][rel][1]) + + def release_while_read(w): # the release runs before a kernel gate that still READS the port (port live) + e = w['A'].pop(rel); w['A'].insert(jr, e) + reject('dirt-release absorption moved before a kernel gate that still reads the port', release_while_read, MYWHY['rel_live']) +if hyper: + # dim-8 cold-end controls for EVERY dim-8 cold end of the word (read from the word's helper_final and the recipe meta's + # cold_low_frame_ended_helpers), not one representative per terminal frame + for hh in hyper: + ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + Uh = word['helper_final'][str(hh)] + reject('dim-8 cold end %d (frame %s) at another dim-8 frame' % (hh, Uh), lambda w, hh=hh: w['helper_final'].__setitem__(str(hh), next(f for h, f in w['helper_final'].items() if len(f) == 8 and sorted(f) != sorted(w['helper_final'][str(hh)]))), MYWHY['h8_other']) + reject('dim-8 cold end %d (frame %s): one lower-frame gate dropped (gate and its early_cleanup entry)' % (hh, Uh), lambda w, ih=ih: drop_cleanup_gate(w, ih), MYWHY['h8_lower']) + reject('dim-8 cold end %d (frame %s): profile pin (end dropped)' % (hh, Uh), lambda w, hh=hh: w['helper_final'].pop(str(hh)), WHY['profile_pin']) +# FACTORED ACCUMULATOR (CarrierBypass; present only when the word carries one): a lower-frame tail gate a += x*g on two +# non-ended registers whose accumulator a is afterwards read by a dim-8 cold end's tail gate (h += y*a at its U). +ended_all = {int(h) for h in word['helper_final']} +tailg = [(i, word['cleanup'][i]) for i, _ in early] +accs = [] # EVERY factored accumulator gate (one per accumulator register a), each controlled on its own +for k, (i, e) in enumerate(tailg): + if e[0] == 'add' and e[1] not in ended_all and e[2] not in ended_all and len(next(f for j, f in early if j == i)) < 8: + if e[1] not in [word['cleanup'][j][1] for j in accs] and any(t[0] == 'add' and t[2] == e[1] and t[1] in hyper for _, t in tailg[k + 1:]): + accs.append(i) +for acc in accs: + a = word['cleanup'][acc][1] + reject('factored accumulator %d (gate %d) zeroed' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, 0), ENDPOINT) + reject('factored accumulator %d (gate %d) coefficient doubled' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, w['cleanup'][acc][3] * 2), ENDPOINT) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'COLD-END-CONTROLS.json').write_text(json.dumps(dict(status='PASS_COLD_END_RAW_WORD_CONTROLS', word=str(src), rejected=results), indent=1) + '\n') +print('PASS', len(results), 'cold-end raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/reproduce_p6n.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/reproduce_p6n.py new file mode 100644 index 0000000000..f9eb173bc1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/layers_p6n/reproduce_p6n.py @@ -0,0 +1,78 @@ +#!/usr/bin/env python3 +"""Rebuild the p6n word (NoTriReopen): the layered no-triangle word with p123's lane rebuilt as three factored dim-8 pairs. + +Input: a fresh `construction/layers_np/reproduce_np.py` output directory. Its swapped HPE word (hpe/) and its +layered word a9de804f... are pinned there. Steps, each checked exactly: + 1. layers: PR635's unchanged build_cold_end.apply(swapped HPE word, COLD-LAYERS-RECIPE-P6N.json.gz). The recipe is + NP's cold-layer recipe (cold44, s4, x30, b6, q4) plus the six cold ends of P6N-SPEC.json, built by NoTriReopen + with JP8Ends' stackJ/stackE (the CarrierBypass premix-only factored construction): [512,513] at + U(256,128,66,34,16,8,6,1), [311,510] at U(256,128,72,40,24,4,2,1), [522,327] at U(256,128,66,34,18,10,6,1). + The output word sha (34b683fa...), profile and widths are pinned. + 2. layer-end-controls: layer_end_controls.py (Q6Reviewer-signed variant fc58c569..., which controls every dim-8 + cold end individually) on the p6n word; exactly 95 rejections at pinned reasons. +The promotion step (construction/promo/reproduce_promo.py --base p6n) builds the final word and its native locals. +Apache-2.0. Driver by ColdWitness after NoTriReopen's runspec.py. +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NP_SHA = 'a9de804f194eeb39f52a4c6e54c14d93e881bec4b632694249733ed410b58113' +P6N_SHA = '34b683fa08f0' # prefix; full value is the recipe's output_content_sha256 (asserted equal below) +LAYER_CONTROLS = 95 + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--np-dir', type=Path, required=True, help='construction/layers_np/reproduce_np.py output') + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + parent = src / 'vendor/pr558/vendor/pr552' + npd = a.np_dir.resolve() + assert hashlib.sha256(enc(read(npd / 'layers/FULL-WORD.json.gz'))).hexdigest() == NP_SHA, 'np-dir must hold the pinned NP word' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src), PR635_CODE=str(up / 'code')) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + bce = load('upstream_cold', up / 'code/build_cold_end.py') + rec = read(HERE / 'COLD-LAYERS-RECIPE-P6N.json.gz') + w = bce.apply(read(npd / 'hpe/FULL-WORD.json.gz'), rec) + raw = enc(w); got = hashlib.sha256(raw).hexdigest() + assert got == rec['output_content_sha256'] and got.startswith(P6N_SHA), ('p6n word', got) + rep = w['report'] + assert rep['local_profile'] == {'1': 2540, '2': 358, '3': 446, '4': 178, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 64, '5': 48, '7': 54, '8': 122, '9': 216}, rep['width_inventory'] + (out / 'p6n').mkdir(); word = out / 'p6n/FULL-WORD.json.gz'; word.write_bytes(gzip.compress(raw, mtime=0)) + print('PASS p6n word', got, flush=True) + t = time.monotonic() + with (out / 'layer-end-controls.log').open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(HERE / 'layer_end_controls.py'), str(word), + str(parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz'), str(out / 'controls')], + env=env, stdout=f, stderr=subprocess.STDOUT) + (out / 'STEPS.json').write_text(json.dumps([dict(step='layer-end-controls', exit_code=rc, seconds=round(time.monotonic() - t, 3))], indent=2) + '\n') + assert rc == 0, 'layer-end-controls' + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == LAYER_CONTROLS, len(ctl['rejected']) + print('PASS layer-end-controls', LAYER_CONTROLS, flush=True) + print('DONE', word, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/CHAIN-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/CHAIN-PINS-k8.json new file mode 100644 index 0000000000..afd0467911 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/CHAIN-PINS-k8.json @@ -0,0 +1,89 @@ +{ + "np_profile": { + "1": 2422, + "2": 408, + "3": 494, + "4": 136, + "5": 56, + "8": 8 + }, + "p6n_profile": { + "1": 2428, + "2": 420, + "3": 482, + "4": 136, + "5": 56, + "8": 8 + }, + "lec-p6n_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-p6n": 95, + "lec-p6n_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "promo_controls": 11, + "lec-promo_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-promo": 95, + "lec-promo_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "jx_controls": [ + "C0_identity", + "C1_741_only", + "N3_plain_join_moved_reads" + ], + "lec-jx_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-jx": 95, + "lec-jx_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "hybrid_controls": [ + "C0_identity", + "donation_after", + "donation_after@226", + "donation_after@228", + "donation_after@230", + "donation_after@231", + "donation_after@232", + "donation_after@62", + "drop_preread", + "drop_preread@226", + "drop_preread@228", + "drop_preread@230", + "drop_preread@231", + "drop_preread@232", + "drop_preread@62", + "drop_restore", + "drop_restore@226", + "drop_restore@228", + "drop_restore@230", + "drop_restore@231", + "drop_restore@232", + "drop_restore@62", + "recipe", + "restore_full", + "restore_full@226", + "restore_full@228", + "restore_full@230", + "restore_full@231", + "restore_full@232", + "restore_full@62" + ], + "lec-hyb_pins_sha256": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "lec-hyb": 95, + "lec-hyb_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + }, + "frame_build_controls": 3, + "lec-frames_pins_sha256": "b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914", + "lec-frames": 95, + "lec-frames_not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)", + "other_hp:554": "tail frame dim 5; no other helper_final frame of that dim" + }, + "canonical_sha256": "d1bf3c6f250a61be7421ce566668092f362c465274fb472d4bb01fc80cba9b23", + "program_sha256": { + "forward": "683f83231d4d4890a7fc3d18f30d4ac7bfbd7bbdf4e7ff57ad0eb09e8a5f571c", + "backward": "2d184e4d9d48aa4d5e3679368ee0eca7e0388b1966eb05e0fd17d22d00d36293" + }, + "clifford_recipes_sha256": "e3bfdfa2c044f14c00a8706950c8ae838ceeedd9ca78a83bffefe7886219516a" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/CODED-CELLS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/CODED-CELLS-k8.json new file mode 100644 index 0000000000..cd23561e0b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/CODED-CELLS-k8.json @@ -0,0 +1,2826 @@ +[ + { + "cell": "01+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 1 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 0 + ], + "x2": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 1 + ], + "x3": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 0 + ], + "x4": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 65 + ], + "y1": [ + "target", + 64 + ], + "y2": [ + "target", + 33 + ], + "y3": [ + "target", + 32 + ], + "y4": [ + "target", + 25 + ], + "y5": [ + "target", + 24 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "-1/2" + ], + [ + "y0", + "x1", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "-1/2" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "23+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 1 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 0 + ], + "x4": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 71 + ], + "y1": [ + "target", + 67 + ], + "y2": [ + "target", + 97 + ], + "y3": [ + "target", + 96 + ], + "y4": [ + "target", + 89 + ], + "y5": [ + "target", + 88 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "45+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 23 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 3 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 1 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 0 + ], + "y0": [ + "target", + 39 + ], + "y1": [ + "target", + 35 + ], + "y2": [ + "target", + 103 + ], + "y3": [ + "target", + 99 + ], + "y4": [ + "target", + 57 + ], + "y5": [ + "target", + 56 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "-1/2" + ], + [ + "x4", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "0", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "-1/2", + "0" + ] + ] + }, + { + "cell": "67+", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 23 + ], + "x1": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 3 + ], + "x2": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 23 + ], + "x3": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 3 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 23 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 3 + ], + "y0": [ + "target", + 31 + ], + "y1": [ + "target", + 27 + ], + "y2": [ + "target", + 95 + ], + "y3": [ + "target", + 91 + ], + "y4": [ + "target", + 63 + ], + "y5": [ + "target", + 59 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "1", + "1" + ], + [ + "1", + "0", + "1", + "1", + "1", + "1" + ], + [ + "1", + "1", + "0", + "1", + "1", + "1" + ], + [ + "1", + "1", + "1", + "0", + "1", + "1" + ], + [ + "1", + "1", + "1", + "1", + "0", + "1" + ], + [ + "1", + "1", + "1", + "1", + "1", + "0" + ] + ] + }, + { + "cell": "67-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 2 + ], + "x3": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 21 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 2 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 21 + ], + "y0": [ + "target", + 26 + ], + "y1": [ + "target", + 30 + ], + "y2": [ + "target", + 90 + ], + "y3": [ + "target", + 94 + ], + "y4": [ + "target", + 58 + ], + "y5": [ + "target", + 62 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "1", + "1" + ], + [ + "1", + "0", + "1", + "1", + "1", + "1" + ], + [ + "1", + "1", + "0", + "1", + "1", + "1" + ], + [ + "1", + "1", + "1", + "0", + "1", + "1" + ], + [ + "1", + "1", + "1", + "1", + "0", + "1" + ], + [ + "1", + "1", + "1", + "1", + "1", + "0" + ] + ] + }, + { + "cell": "01-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 19 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 17 + ], + "x2": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 19 + ], + "x3": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 17 + ], + "x4": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 0, + 1, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 69 + ], + "y1": [ + "target", + 68 + ], + "y2": [ + "target", + 37 + ], + "y3": [ + "target", + 36 + ], + "y4": [ + "target", + 29 + ], + "y5": [ + "target", + 28 + ] + }, + "scaled": [ + [ + "y0", + "x1", + "-1/2" + ], + [ + "y1", + "x0", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x1", + "x0", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y0", + "x3", + "-1/2" + ], + [ + "y2", + "x1", + "-1/2" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y1", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y0", + "1" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ] + ], + "unit": [ + [ + "y0", + "x1", + 1 + ], + [ + "y1", + "x0", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x1", + "x0", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y0", + "x3", + 1 + ], + [ + "y2", + "x1", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y1", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y0", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x0", + 1 + ], + [ + "y4", + "x1", + 1 + ] + ], + "coefficients": [ + [ + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "23-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 2, + 3 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 19 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 17 + ], + "x4": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 2, + 3, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 66 + ], + "y1": [ + "target", + 70 + ], + "y2": [ + "target", + 101 + ], + "y3": [ + "target", + 100 + ], + "y4": [ + "target", + 93 + ], + "y5": [ + "target", + 92 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y1", + "x3", + "-1/2" + ], + [ + "y2", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y1", + "x3", + 1 + ], + [ + "y2", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "-1/2", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "-1/2", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "0", + "-1/2" + ], + [ + "1", + "1", + "-1/2", + "-1/2", + "-1/2", + "0" + ] + ] + }, + { + "cell": "45-", + "bindings": { + "x0": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 2 + ], + "x1": [ + "source", + [ + 0, + 1, + 4, + 5 + ], + 21 + ], + "x2": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 2 + ], + "x3": [ + "source", + [ + 2, + 3, + 4, + 5 + ], + 21 + ], + "x4": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 19 + ], + "x5": [ + "source", + [ + 4, + 5, + 6, + 7 + ], + 17 + ], + "y0": [ + "target", + 34 + ], + "y1": [ + "target", + 38 + ], + "y2": [ + "target", + 98 + ], + "y3": [ + "target", + 102 + ], + "y4": [ + "target", + 61 + ], + "y5": [ + "target", + 60 + ] + }, + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x4", + "-1/2" + ], + [ + "y3", + "x5", + "-1/2" + ], + [ + "y5", + "x3", + "1" + ], + [ + "y4", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x4", + "-1/2" + ], + [ + "x5", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ], + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x4", + 1 + ], + [ + "y3", + "x5", + 1 + ], + [ + "y5", + "x3", + 1 + ], + [ + "y4", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x4", + 1 + ], + [ + "x5", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "coefficients": [ + [ + "0", + "1", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "0", + "1", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "0", + "1", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "0", + "-1/2", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "0", + "-1/2" + ], + [ + "1", + "1", + "1", + "1", + "-1/2", + "0" + ] + ] + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz new file mode 100644 index 0000000000..6850696b19 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz new file mode 100644 index 0000000000..dc0275695d Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/FRAME-RECIPE-LV-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/FRAME-RECIPE-LV-k8.json new file mode 100644 index 0000000000..982bd357da --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/FRAME-RECIPE-LV-k8.json @@ -0,0 +1,2987 @@ +{ + "input_content_sha256": "c836d8922fc9e50529e006488ca2ce4a542a93150de0e0e8f7d3955ad991968f", + "gate_frames": [ + [ + "B", + 539, + [ + 336, + 208, + 32, + 8, + 6 + ], + [ + 336, + 208, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 540, + [ + 400, + 80, + 32, + 8, + 6 + ], + [ + 400, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 541, + [ + 256, + 128, + 64, + 16, + 6 + ], + [ + 256, + 128, + 64, + 16, + 6, + 1 + ] + ], + [ + "B", + 542, + [ + 256, + 128, + 64, + 16, + 8, + 6 + ], + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 545, + [ + 256, + 144, + 80, + 32, + 8, + 6 + ], + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 547, + [ + 272, + 144, + 64, + 32, + 8, + 6 + ], + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 557, + [ + 280, + 137, + 73, + 6 + ], + [ + 257, + 137, + 73, + 25, + 6 + ] + ], + [ + "B", + 559, + [ + 265, + 137, + 81, + 6 + ], + [ + 265, + 137, + 72, + 25, + 6 + ] + ], + [ + "B", + 560, + [ + 265, + 137, + 81, + 32, + 6 + ], + [ + 265, + 137, + 72, + 32, + 25, + 6 + ] + ], + [ + "B", + 561, + [ + 401, + 64, + 32, + 9, + 6 + ], + [ + 385, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 562, + [ + 265, + 137, + 73, + 17, + 6 + ], + [ + 257, + 129, + 65, + 17, + 8, + 6 + ] + ], + [ + "B", + 563, + [ + 256, + 128, + 64, + 17, + 9, + 6 + ], + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 564, + [ + 265, + 137, + 73, + 32, + 24, + 6 + ], + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + [ + "B", + 566, + [ + 273, + 128, + 64, + 32, + 9, + 6 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 567, + [ + 265, + 137, + 73, + 32, + 17, + 6 + ], + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + [ + "B", + 568, + [ + 256, + 128, + 81, + 32, + 9, + 6 + ], + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 580, + [ + 265, + 193, + 40, + 6 + ], + [ + 265, + 144, + 81, + 40, + 6 + ] + ], + [ + "B", + 581, + [ + 265, + 193, + 40, + 17, + 6 + ], + [ + 265, + 129, + 64, + 40, + 17, + 6 + ] + ], + [ + "B", + 582, + [ + 289, + 176, + 96, + 9, + 6 + ], + [ + 289, + 160, + 96, + 16, + 9, + 6 + ] + ], + [ + "B", + 583, + [ + 265, + 152, + 80, + 33, + 6 + ], + [ + 257, + 144, + 80, + 33, + 8, + 6 + ] + ], + [ + "B", + 584, + [ + 256, + 145, + 80, + 33, + 9, + 6 + ], + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 585, + [ + 265, + 128, + 65, + 40, + 17, + 6 + ], + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 586, + [ + 256, + 145, + 65, + 33, + 9, + 6 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 587, + [ + 273, + 128, + 80, + 48, + 9, + 6 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 589, + [ + 256, + 193, + 33, + 17, + 9, + 6 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 602, + [ + 256, + 144, + 73, + 57, + 6 + ], + [ + 256, + 129, + 73, + 40, + 17, + 6 + ] + ], + [ + "B", + 603, + [ + 297, + 169, + 104, + 16, + 6 + ], + [ + 288, + 160, + 97, + 16, + 9, + 6 + ] + ], + [ + "B", + 604, + [ + 272, + 152, + 73, + 33, + 6 + ], + [ + 272, + 145, + 64, + 33, + 9, + 6 + ] + ], + [ + "B", + 605, + [ + 272, + 144, + 65, + 33, + 8, + 6 + ], + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 606, + [ + 256, + 128, + 73, + 41, + 16, + 6 + ], + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 607, + [ + 264, + 136, + 73, + 33, + 16, + 6 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 609, + [ + 264, + 128, + 73, + 33, + 24, + 6 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 610, + [ + 256, + 136, + 73, + 33, + 24, + 6 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 620, + [ + 368, + 161, + 8, + 6 + ], + [ + 273, + 161, + 97, + 8, + 6 + ] + ], + [ + "B", + 623, + [ + 256, + 193, + 33, + 16, + 6 + ], + [ + 256, + 129, + 64, + 33, + 16, + 6 + ] + ], + [ + "B", + 624, + [ + 289, + 161, + 112, + 8, + 6 + ], + [ + 289, + 161, + 97, + 17, + 8, + 6 + ] + ], + [ + "B", + 625, + [ + 321, + 144, + 49, + 8, + 6 + ], + [ + 273, + 144, + 80, + 49, + 8, + 6 + ] + ], + [ + "B", + 626, + [ + 272, + 144, + 81, + 49, + 8, + 6 + ], + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + [ + "B", + 627, + [ + 256, + 128, + 65, + 33, + 16, + 6 + ], + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + [ + "B", + 629, + [ + 256, + 128, + 81, + 33, + 8, + 6 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 630, + [ + 321, + 128, + 33, + 16, + 8, + 6 + ], + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 631, + [ + 256, + 193, + 33, + 16, + 8, + 6 + ], + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 641, + [ + 256, + 216, + 40, + 6 + ], + [ + 256, + 216, + 40, + 6, + 1 + ] + ], + [ + "B", + 644, + [ + 272, + 144, + 80, + 56, + 6 + ], + [ + 272, + 144, + 80, + 56, + 6, + 1 + ] + ], + [ + "B", + 645, + [ + 392, + 64, + 40, + 16, + 6 + ], + [ + 392, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 646, + [ + 256, + 128, + 88, + 40, + 6 + ], + [ + 256, + 128, + 88, + 40, + 6, + 1 + ] + ], + [ + "B", + 648, + [ + 264, + 136, + 72, + 32, + 24, + 6 + ], + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + [ + "B", + 649, + [ + 264, + 128, + 64, + 40, + 16, + 6 + ], + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 651, + [ + 256, + 128, + 72, + 40, + 16, + 6 + ], + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 665, + [ + 320, + 192, + 41, + 17, + 6 + ], + [ + 320, + 192, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 666, + [ + 401, + 81, + 49, + 9, + 6 + ], + [ + 385, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 667, + [ + 280, + 152, + 64, + 49, + 6 + ], + [ + 257, + 129, + 64, + 40, + 25, + 6 + ] + ], + [ + "B", + 668, + [ + 256, + 128, + 64, + 41, + 24, + 6 + ], + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + [ + "B", + 669, + [ + 320, + 192, + 32, + 17, + 9, + 6 + ], + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 670, + [ + 256, + 145, + 81, + 49, + 9, + 6 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 672, + [ + 273, + 145, + 64, + 49, + 9, + 6 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 673, + [ + 256, + 128, + 64, + 41, + 17, + 6 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 686, + [ + 280, + 137, + 80, + 33, + 6 + ], + [ + 272, + 129, + 80, + 33, + 8, + 6 + ] + ], + [ + "B", + 687, + [ + 304, + 161, + 96, + 9, + 6 + ], + [ + 288, + 161, + 96, + 16, + 9, + 6 + ] + ], + [ + "B", + 688, + [ + 321, + 137, + 40, + 17, + 6 + ], + [ + 257, + 137, + 64, + 40, + 17, + 6 + ] + ], + [ + "B", + 689, + [ + 256, + 137, + 65, + 40, + 17, + 6 + ], + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 690, + [ + 273, + 128, + 80, + 33, + 9, + 6 + ], + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 691, + [ + 256, + 145, + 80, + 48, + 9, + 6 + ], + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 692, + [ + 273, + 128, + 65, + 33, + 9, + 6 + ], + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 693, + [ + 321, + 128, + 33, + 17, + 9, + 6 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 1232, + [ + 256, + 128, + 64, + 34, + 18, + 10, + 6, + 1 + ], + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + [ + "B", + 1235, + [ + 256, + 128, + 64, + 34, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 1238, + [ + 258, + 130, + 66, + 32, + 18, + 10, + 6, + 1 + ], + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + [ + "B", + 1241, + [ + 258, + 130, + 66, + 32, + 16, + 8, + 6, + 1 + ], + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + [ + "B", + 1244, + [ + 256, + 130, + 64, + 34, + 16, + 10, + 6, + 1 + ], + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 1247, + [ + 256, + 130, + 66, + 32, + 18, + 8, + 6, + 1 + ], + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 1250, + [ + 258, + 128, + 64, + 34, + 16, + 10, + 6, + 1 + ], + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 1253, + [ + 258, + 128, + 66, + 32, + 18, + 8, + 6, + 1 + ], + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 1256, + [ + 258, + 130, + 66, + 34, + 18, + 8, + 6, + 1 + ], + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + [ + "B", + 1259, + [ + 258, + 130, + 64, + 32, + 18, + 8, + 6, + 1 + ], + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ] + ], + [ + "B", + 1262, + [ + 256, + 128, + 66, + 34, + 16, + 10, + 6, + 1 + ], + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + [ + "B", + 1265, + [ + 256, + 128, + 64, + 32, + 16, + 10, + 6, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + [ + "B", + 1268, + [ + 256, + 128, + 66, + 34, + 16, + 8, + 4, + 1 + ], + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ] + ], + [ + "B", + 1271, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ] + ], + [ + "B", + 1274, + [ + 260, + 132, + 68, + 36, + 20, + 12, + 2, + 1 + ], + [ + 260, + 132, + 68, + 36, + 24, + 2, + 1 + ] + ], + [ + "B", + 1277, + [ + 260, + 132, + 64, + 32, + 16, + 8, + 2, + 1 + ], + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ], + [ + "B", + 1280, + [ + 258, + 128, + 64, + 34, + 18, + 10, + 4, + 1 + ], + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ] + ], + [ + "B", + 1283, + [ + 260, + 128, + 68, + 32, + 16, + 8, + 2, + 1 + ], + [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ] + ], + [ + "B", + 1286, + [ + 256, + 130, + 64, + 34, + 16, + 8, + 4, + 1 + ], + [ + 256, + 130, + 64, + 34, + 24, + 4, + 1 + ] + ], + [ + "B", + 1289, + [ + 256, + 132, + 68, + 32, + 20, + 12, + 2, + 1 + ], + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ], + [ + "B", + 1292, + [ + 258, + 130, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ] + ], + [ + "B", + 1295, + [ + 258, + 130, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ] + ], + [ + "B", + 1298, + [ + 256, + 128, + 64, + 34, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 64, + 38, + 18, + 12, + 1 + ] + ], + [ + "B", + 1301, + [ + 256, + 128, + 66, + 32, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ] + ], + [ + "B", + 1304, + [ + 256, + 132, + 68, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ] + ], + [ + "B", + 1307, + [ + 256, + 130, + 64, + 32, + 16, + 10, + 4, + 1 + ], + [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ] + ], + [ + "B", + 1310, + [ + 258, + 128, + 66, + 34, + 16, + 10, + 4, + 1 + ], + [ + 262, + 128, + 70, + 38, + 20, + 10, + 1 + ] + ], + [ + "B", + 1313, + [ + 260, + 128, + 64, + 32, + 20, + 8, + 2, + 1 + ], + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ] + ], + [ + "B", + 1316, + [ + 256, + 128, + 65, + 33, + 16, + 9, + 5, + 2 + ], + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ] + ], + [ + "B", + 1319, + [ + 256, + 128, + 64, + 32, + 17, + 8, + 4, + 3 + ], + [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ] + ], + [ + "B", + 1322, + [ + 257, + 129, + 65, + 33, + 17, + 8, + 5, + 2 + ], + [ + 257, + 129, + 65, + 33, + 19, + 10, + 7 + ] + ], + [ + "B", + 1325, + [ + 257, + 129, + 64, + 32, + 16, + 9, + 4, + 3 + ], + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ] + ], + [ + "B", + 1328, + [ + 257, + 128, + 64, + 33, + 17, + 8, + 4, + 3 + ], + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ] + ], + [ + "B", + 1331, + [ + 257, + 128, + 65, + 32, + 16, + 9, + 4, + 3 + ], + [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ] + ], + [ + "B", + 1334, + [ + 256, + 129, + 64, + 33, + 16, + 9, + 5, + 2 + ], + [ + 256, + 129, + 64, + 33, + 18, + 11, + 7 + ] + ], + [ + "B", + 1337, + [ + 256, + 129, + 65, + 32, + 17, + 8, + 5, + 2 + ], + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ] + ], + [ + "B", + 1340, + [ + 257, + 129, + 64, + 33, + 16, + 8, + 4, + 3 + ], + [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ] + ], + [ + "B", + 1343, + [ + 257, + 129, + 65, + 32, + 17, + 9, + 5, + 2 + ], + [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ] + ], + [ + "B", + 1346, + [ + 256, + 128, + 64, + 33, + 17, + 9, + 5, + 2 + ], + [ + 256, + 128, + 64, + 33, + 24, + 5, + 2 + ] + ], + [ + "B", + 1349, + [ + 256, + 128, + 65, + 32, + 16, + 8, + 4, + 3 + ], + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ] + ], + [ + "B", + 1352, + [ + 256, + 129, + 65, + 33, + 17, + 9, + 4, + 3 + ], + [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ] + ], + [ + "B", + 1355, + [ + 256, + 129, + 64, + 32, + 16, + 8, + 4, + 3 + ], + [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ] + ], + [ + "B", + 1358, + [ + 257, + 128, + 65, + 33, + 16, + 8, + 4, + 3 + ], + [ + 257, + 128, + 65, + 33, + 24, + 4, + 3 + ] + ], + [ + "B", + 1361, + [ + 257, + 128, + 64, + 32, + 17, + 9, + 4, + 3 + ], + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + ], + [ + "B", + 1364, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 5, + 3 + ], + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 1367, + [ + 257, + 128, + 64, + 32, + 16, + 9, + 5, + 3 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 1370, + [ + 256, + 129, + 65, + 33, + 16, + 9, + 5, + 3 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 1373, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 5, + 3 + ], + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 1376, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + [ + "B", + 1379, + [ + 256, + 128, + 65, + 32, + 16, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ] + ], + [ + "B", + 1382, + [ + 257, + 129, + 64, + 33, + 16, + 9, + 5, + 3 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + [ + "B", + 1385, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 5, + 3 + ], + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + [ + "B", + 1388, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 5, + 3 + ], + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 1391, + [ + 256, + 129, + 64, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 1394, + [ + 257, + 128, + 64, + 33, + 17, + 9, + 5, + 3 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + [ + "B", + 1397, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 5, + 3 + ], + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + [ + "B", + 1398, + [ + 256, + 128, + 64, + 34, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 35, + 24, + 6 + ] + ], + [ + "B", + 1399, + [ + 256, + 128, + 64, + 34, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 35, + 24, + 6 + ] + ], + [ + "B", + 1402, + [ + 256, + 128, + 64, + 24, + 4, + 2, + 1 + ], + [ + 257, + 129, + 65, + 24, + 4, + 2 + ] + ], + [ + "B", + 1403, + [ + 256, + 128, + 64, + 24, + 4, + 2, + 1 + ], + [ + 257, + 129, + 65, + 24, + 4, + 2 + ] + ], + [ + "B", + 1406, + [ + 256, + 128, + 64, + 42, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 42, + 24, + 6 + ] + ], + [ + "B", + 1407, + [ + 256, + 128, + 64, + 42, + 24, + 6, + 1 + ], + [ + 257, + 129, + 65, + 42, + 24, + 6 + ] + ], + [ + "B", + 1410, + [ + 256, + 128, + 64, + 18, + 10, + 6, + 1 + ], + [ + 257, + 129, + 65, + 19, + 11, + 6 + ] + ], + [ + "B", + 1411, + [ + 256, + 128, + 64, + 18, + 10, + 6, + 1 + ], + [ + 257, + 129, + 65, + 19, + 11, + 6 + ] + ], + [ + "B", + 1814, + [ + 256, + 129, + 64, + 33, + 24, + 5, + 3 + ], + [ + 259, + 129, + 67, + 33, + 24, + 6 + ] + ], + [ + "B", + 1815, + [ + 256, + 129, + 64, + 33, + 24, + 5, + 3 + ], + [ + 259, + 129, + 67, + 33, + 24, + 6 + ] + ], + [ + "B", + 1818, + [ + 256, + 129, + 64, + 33, + 24, + 4, + 2 + ], + [ + 320, + 129, + 33, + 24, + 4, + 2 + ] + ], + [ + "B", + 1819, + [ + 256, + 129, + 64, + 33, + 24, + 4, + 2 + ], + [ + 320, + 129, + 33, + 24, + 4, + 2 + ] + ], + [ + "B", + 1822, + [ + 256, + 129, + 64, + 33, + 18, + 10, + 6 + ], + [ + 266, + 129, + 74, + 33, + 24, + 6 + ] + ], + [ + "B", + 1823, + [ + 256, + 129, + 64, + 33, + 18, + 10, + 6 + ], + [ + 266, + 129, + 74, + 33, + 24, + 6 + ] + ], + [ + "B", + 1826, + [ + 256, + 129, + 64, + 33, + 19, + 11, + 6 + ], + [ + 320, + 129, + 33, + 19, + 11, + 6 + ] + ], + [ + "B", + 1827, + [ + 256, + 129, + 64, + 33, + 19, + 11, + 6 + ], + [ + 320, + 129, + 33, + 19, + 11, + 6 + ] + ], + [ + "T", + 76, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + [ + 386, + 67, + 33, + 24, + 6 + ] + ], + [ + "T", + 97, + [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ], + [ + 386, + 74, + 40, + 26, + 6, + 1 + ] + ] + ], + "expected": { + "output_content_sha256": "db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83", + "local_profile": { + "1": 2412, + "2": 418, + "3": 418, + "4": 170, + "5": 68, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/HPE-RECIPE-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/HPE-RECIPE-k8.json new file mode 100644 index 0000000000..94d36f2279 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/HPE-RECIPE-k8.json @@ -0,0 +1 @@ +{"changes": [{"helper": 448, "cleanup_index": 630, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 449, "cleanup_index": 629, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 450, "cleanup_index": 628, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 451, "cleanup_index": 627, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 452, "cleanup_index": 626, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 453, "cleanup_index": 625, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 454, "cleanup_index": 624, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 455, "cleanup_index": 623, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 484, "cleanup_index": 585, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 485, "cleanup_index": 584, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 508, "cleanup_index": 549, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 509, "cleanup_index": 548, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 532, "cleanup_index": 515, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 533, "cleanup_index": 514, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 556, "cleanup_index": 483, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 557, "cleanup_index": 482, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 584, "cleanup_index": 455, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 585, "cleanup_index": 454, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 587, "cleanup_index": 452, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 589, "cleanup_index": 450, "frame": [256, 128, 64, 32, 18, 10, 6, 1]}, {"helper": 590, "cleanup_index": 449, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}, {"helper": 591, "cleanup_index": 448, "frame": [256, 128, 64, 32, 24, 4, 2, 1]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEAVER-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEAVER-PINS-k8.json new file mode 100644 index 0000000000..b22678629c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEAVER-PINS-k8.json @@ -0,0 +1,45 @@ +{ + "raw_sha256": "85c0e64718a9ceafe094e7152ea27ec9d7f804e514b5efaab085a94b7ef1841f", + "regroup_count": 12, + "regroup_sha256": "00aeefe0c778ff64125628d7c869ae1aa27db60911f0289a2d4283af5cff85d2", + "hpe_recipe_sha256": "f04e4d152a9169726d0afabd7c6e0fd2e17388707dd6d10c7b51593e360ab38a", + "pairing_ranks": [ + 0, + 0, + 0, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 4, + 0, + 0, + 0 + ], + "cold44_sha256": "58e14a02f2c1d4dcfeb363ebd5fa2e713064b5c724d90f6721419a8cfa67729b", + "R": 480, + "local_profile": { + "1": 2394, + "2": 398, + "3": 508, + "4": 142, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 40, + "5": 48, + "7": 22, + "8": 114, + "9": 256 + }, + "canonical_sha256": "854c4cfa867bb75b63412044235c3df5af00b3470c3b310aff4df839a1d71c6e", + "program_sha256": { + "forward": "f0e42fdb881155e7712220e1469452f04343b98c5b414ddd1271d80c9fa2a6f1", + "backward": "95df892bdee54f5700780c989edc9bf7618efaa56058af63a946aff63f5dbeb4" + }, + "clifford_recipes_sha256": "aab63b0a825fdf0ca504038a78b7371310eaef2748fbf80af74f7e4e47abce76" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEC-REASON-PINS-STACK-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEC-REASON-PINS-STACK-k8.json new file mode 100644 index 0000000000..820ee8d63a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEC-REASON-PINS-STACK-k8.json @@ -0,0 +1,5 @@ +{ + "not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEC-REASON-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEC-REASON-PINS-k8.json new file mode 100644 index 0000000000..5218a5f096 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/LEC-REASON-PINS-k8.json @@ -0,0 +1,6 @@ +{ + "not_applicable": { + "extra_end": "partner 282 already cold-ended at h0 273 frame (identity)", + "other_hp:554": "tail frame dim 5; no other helper_final frame of that dim" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/PIVOT-SWAP-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/PIVOT-SWAP-k8.json new file mode 100644 index 0000000000..7a8edeb1e4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/PIVOT-SWAP-k8.json @@ -0,0 +1 @@ +{"input_content_sha256": "00aeefe0c778ff64125628d7c869ae1aa27db60911f0289a2d4283af5cff85d2", "output_content_sha256": "377ab10c2bf6173498c8af15f8654060331ec9ee232e58cc75956dc015b23685", "swaps": [{"pivot": 482, "new_pivot": 554, "entrance": [24], "gates": [{"part": "B", "index": 331, "before": ["add", 554, 482, -1, 1, [24]], "after": ["add", 482, 554, -1, 1, [24]]}, {"part": "B", "index": 332, "before": ["add", 616, 482, 2, 1, [24]], "after": ["add", 616, 554, -2, 1, [24]]}, {"part": "B", "index": 333, "before": ["add", 618, 482, -2, 1, [24]], "after": ["add", 618, 554, 2, 1, [24]]}, {"part": "B", "index": 334, "before": ["add", 664, 482, 1, 1, [24]], "after": ["add", 664, 554, -1, 1, [24]]}, {"part": "B", "index": 335, "before": ["add", 666, 482, -1, 1, [24]], "after": ["add", 666, 554, 1, 1, [24]]}]}, {"pivot": 483, "new_pivot": 555, "entrance": [24], "gates": [{"part": "B", "index": 468, "before": ["add", 123, 483, 1, 1, [24]], "after": ["add", 123, 555, -1, 1, [24]]}, {"part": "B", "index": 504, "before": ["add", 187, 483, -1, 1, [24]], "after": ["add", 187, 555, 1, 1, [24]]}, {"part": "B", "index": 734, "before": ["add", 555, 483, -1, 1, [24]], "after": ["add", 483, 555, -1, 1, [24]]}]}, {"pivot": 494, "new_pivot": 566, "entrance": [24], "gates": [{"part": "B", "index": 128, "before": ["add", 628, 494, 2, 1, [24]], "after": ["add", 628, 566, -2, 1, [24]]}, {"part": "B", "index": 130, "before": ["add", 628, 494, -2, 1, [24]], "after": ["add", 628, 566, 2, 1, [24]]}, {"part": "B", "index": 230, "before": ["add", 676, 494, -2, 1, [24]], "after": ["add", 676, 566, 2, 1, [24]]}, {"part": "B", "index": 232, "before": ["add", 676, 494, 2, 1, [24]], "after": ["add", 676, 566, -2, 1, [24]]}, {"part": "B", "index": 750, "before": ["add", 566, 494, -1, 1, [24]], "after": ["add", 494, 566, -1, 1, [24]]}]}, {"pivot": 495, "new_pivot": 567, "entrance": [24], "gates": [{"part": "B", "index": 49, "before": ["add", 211, 495, -1, 1, [24]], "after": ["add", 211, 567, 1, 1, [24]]}, {"part": "B", "index": 477, "before": ["add", 147, 495, 1, 1, [24]], "after": ["add", 147, 567, -1, 1, [24]]}, {"part": "B", "index": 752, "before": ["add", 567, 495, -1, 1, [24]], "after": ["add", 495, 567, -1, 1, [24]]}]}, {"pivot": 507, "new_pivot": 531, "entrance": [30], "gates": [{"part": "B", "index": 459, "before": ["add", 115, 507, -1, 1, [30]], "after": ["add", 115, 531, 1, 1, [30]]}, {"part": "B", "index": 495, "before": ["add", 179, 507, 1, 1, [30]], "after": ["add", 179, 531, -1, 1, [30]]}, {"part": "B", "index": 770, "before": ["add", 531, 507, -1, 1, [30]], "after": ["add", 507, 531, -1, 1, [30]]}]}, {"pivot": 519, "new_pivot": 543, "entrance": [30], "gates": [{"part": "B", "index": 486, "before": ["add", 155, 519, -1, 1, [30]], "after": ["add", 155, 543, 1, 1, [30]]}, {"part": "B", "index": 521, "before": ["add", 219, 519, 1, 1, [30]], "after": ["add", 219, 543, -1, 1, [30]]}, {"part": "B", "index": 788, "before": ["add", 543, 519, -1, 1, [30]], "after": ["add", 519, 543, -1, 1, [30]]}]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/PROMO-RECIPE-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/PROMO-RECIPE-k8.json new file mode 100644 index 0000000000..1952580fc8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/PROMO-RECIPE-k8.json @@ -0,0 +1,971 @@ +{ + "input_content_sha256": "25c406149bd3fddf8548ea03521983720d88b11096ce1c1f01e6d480ce50ce18", + "groups": [ + 627, + 629, + 630, + 631, + 635, + 637, + 638, + 639, + 651, + 653, + 654, + 655, + 659, + 661, + 662, + 663 + ], + "entrances": { + "603": [ + 408, + 80, + 40, + 6, + 1 + ], + "605": [ + 408, + 80, + 40, + 6, + 1 + ], + "606": [ + 408, + 80, + 40, + 6, + 1 + ], + "607": [ + 408, + 80, + 40, + 6, + 1 + ], + "611": [ + 272, + 144, + 96, + 6, + 1 + ], + "613": [ + 272, + 144, + 96, + 6, + 1 + ], + "614": [ + 272, + 144, + 96, + 6, + 1 + ], + "615": [ + 272, + 144, + 96, + 6, + 1 + ], + "627": [ + 390, + 68, + 34, + 24, + 1 + ], + "629": [ + 390, + 68, + 34, + 24, + 1 + ], + "630": [ + 390, + 68, + 34, + 24, + 1 + ], + "631": [ + 390, + 68, + 34, + 24, + 1 + ], + "635": [ + 298, + 170, + 102, + 30, + 1 + ], + "637": [ + 298, + 170, + 102, + 30, + 1 + ], + "638": [ + 298, + 170, + 102, + 30, + 1 + ], + "639": [ + 298, + 170, + 102, + 30, + 1 + ] + }, + "gate_frames": [ + [ + "B", + 372, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 373, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 374, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 375, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 376, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 377, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 378, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 379, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 380, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 381, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 382, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 383, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 384, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 385, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 386, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 387, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 388, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 389, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 390, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 391, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 392, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 393, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 394, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 395, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 396, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 397, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 398, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 399, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 400, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 401, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 402, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 403, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 404, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 405, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 406, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 407, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 408, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 409, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 410, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 411, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 412, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 413, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 414, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 415, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 416, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 417, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 418, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 419, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ] + ], + "expected": { + "output_content_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/RECIPE-U8-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/RECIPE-U8-k8.json new file mode 100644 index 0000000000..98ea6e3d23 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/RECIPE-U8-k8.json @@ -0,0 +1,933 @@ +{ + "base_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "B_delete": [ + 1, + 3, + 5, + 7, + 9, + 11, + 878, + 880, + 886, + 888, + 894, + 896, + 902, + 904, + 910, + 912, + 918, + 920, + 1167, + 1169, + 1175, + 1177, + 1183, + 1185, + 1191, + 1193, + 1199, + 1201, + 1207, + 1209 + ], + "B_insert": [ + [ + 1, + [ + "add", + 125, + 448, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 3, + [ + "add", + 121, + 449, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 5, + [ + "add", + 181, + 450, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 7, + [ + "add", + 177, + 451, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 9, + [ + "add", + 117, + 452, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 11, + [ + "add", + 113, + 453, + -1, + 1, + [ + 30 + ] + ] + ], + [ + 724, + [ + "add", + 472, + 231, + 1, + 1, + [ + 386, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 725, + [ + "add", + 473, + 226, + 1, + 1, + [ + 388, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 741, + [ + "add", + 484, + 448, + 1, + 1, + [ + 260, + 132, + 70, + 38, + 24, + 1 + ] + ] + ], + [ + 742, + [ + "add", + 485, + 449, + 1, + 1, + [ + 260, + 132, + 64, + 32, + 24, + 1 + ] + ] + ], + [ + 759, + [ + "add", + 496, + 230, + 1, + 1, + [ + 390, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 760, + [ + "add", + 497, + 228, + 1, + 1, + [ + 390, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 777, + [ + "add", + 508, + 450, + 1, + 1, + [ + 268, + 140, + 64, + 38, + 30, + 1 + ] + ] + ], + [ + 778, + [ + "add", + 509, + 451, + 1, + 1, + [ + 266, + 138, + 70, + 32, + 30, + 1 + ] + ] + ], + [ + 795, + [ + "add", + 520, + 232, + -2, + 1, + [ + 385, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 796, + [ + "add", + 521, + 62, + -2, + 1, + [ + 385, + 65, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 811, + [ + "add", + 532, + 452, + -2, + 1, + [ + 267, + 139, + 65, + 33, + 25, + 7 + ] + ] + ], + [ + 812, + [ + "add", + 533, + 453, + -2, + 1, + [ + 267, + 139, + 64, + 32, + 25, + 7 + ] + ] + ], + [ + 1167, + [ + "add", + 125, + 448, + -1, + 2, + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1169, + [ + "add", + 121, + 449, + -1, + 2, + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1175, + [ + "add", + 149, + 231, + -1, + 2, + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ] + ] + ], + [ + 1177, + [ + "add", + 145, + 226, + -1, + 2, + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1183, + [ + "add", + 181, + 450, + -1, + 2, + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1185, + [ + "add", + 177, + 451, + -1, + 2, + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1191, + [ + "add", + 221, + 230, + -1, + 2, + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ] + ] + ], + [ + 1193, + [ + "add", + 217, + 228, + -1, + 2, + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ] + ] + ], + [ + 1199, + [ + "add", + 117, + 452, + 1, + 1, + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1201, + [ + "add", + 113, + 453, + 1, + 1, + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ] + ] + ], + [ + 1207, + [ + "add", + 157, + 232, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ] + ] + ], + [ + 1209, + [ + "add", + 153, + 62, + 1, + 1, + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ] + ] + ] + ], + "B_frames": {}, + "tail_insert": [ + [ + 5, + [ + "add", + 484, + 448, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 3, + [ + "add", + 508, + 450, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 1, + [ + "add", + 532, + 452, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 4, + [ + "add", + 485, + 449, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 2, + [ + "add", + 509, + 451, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 0, + [ + "add", + 533, + 453, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ] + ], + "cleanup_prepend": [ + [ + "add", + 472, + 231, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 496, + 230, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 520, + 232, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 473, + 226, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 497, + 228, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 521, + 62, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ] + ], + "local_profile": { + "1": 2460, + "2": 388, + "3": 478, + "4": 128, + "5": 68, + "8": 8 + }, + "expect_sha256": "c836d8922fc9e50529e006488ca2ce4a542a93150de0e0e8f7d3955ad991968f", + "priced": { + "dk_ideal_stored_frames": 2.38661054604997e-07 + }, + "variants": [ + { + "X": 231, + "E": 448, + "dsides": [ + 878, + 886 + ], + "donors": [ + 448, + 231 + ], + "hold": [ + 484, + 472 + ], + "kept": { + "1167": 448, + "1175": 231 + }, + "when": "mid" + }, + { + "X": 230, + "E": 450, + "dsides": [ + 894, + 902 + ], + "donors": [ + 450, + 230 + ], + "hold": [ + 508, + 496 + ], + "kept": { + "1183": 450, + "1191": 230 + }, + "when": "mid" + }, + { + "X": 232, + "E": 452, + "dsides": [ + 910, + 918 + ], + "donors": [ + 452, + 232 + ], + "hold": [ + 532, + 520 + ], + "kept": { + "1199": 452, + "1207": 232 + }, + "when": "mid" + }, + { + "X": 226, + "E": 449, + "dsides": [ + 880, + 888 + ], + "donors": [ + 449, + 226 + ], + "hold": [ + 485, + 473 + ], + "kept": { + "1169": 449, + "1177": 226 + }, + "when": "mid" + }, + { + "X": 228, + "E": 451, + "dsides": [ + 896, + 904 + ], + "donors": [ + 451, + 228 + ], + "hold": [ + 509, + 497 + ], + "kept": { + "1185": 451, + "1193": 228 + }, + "when": "mid" + }, + { + "X": 62, + "E": 453, + "dsides": [ + 912, + 920 + ], + "donors": [ + 453, + 62 + ], + "hold": [ + 533, + 521 + ], + "kept": { + "1201": 453, + "1209": 62 + }, + "when": "mid" + } + ], + "source": "NewBArch RECIPE-U8 (X4 1e1d99ba), instances [62, 226, 228, 230, 231, 232] ported by LeaverSAT/hyb.py; X=236 dropped (its tail uses dropped copy helper 449)" +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/RECIPE-X4-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/RECIPE-X4-k8.json new file mode 100644 index 0000000000..3483acd5a5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/RECIPE-X4-k8.json @@ -0,0 +1,75 @@ +{ + "input_content_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "input_word": "leaver k8 sw4-stage word", + "frames_741_source": { + "pr": 741, + "commit": "e516b146", + "recipe": "scratch/WasteAttack/FRAME-RECIPE-741.json", + "frames_only_output_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "note": "leaver: surviving #741 frames only" + }, + "frames_741": [], + "raises": [], + "edits": { + "replace": [], + "delete": [], + "insert": [] + }, + "expected": { + "output_content_sha256": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + }, + "controls": { + "C0_identity": { + "mutation": { + "kind": "empty" + }, + "expected_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + }, + "C1_741_only": { + "mutation": { + "kind": "only_edits_of", + "h": [], + "raises": [] + }, + "expected_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + }, + "N3_plain_join_moved_reads": { + "mutation": { + "kind": "drop_raises" + }, + "expected_sha": "84d4da2e2ee227821c132a635c41415243d083935c0410ec4ded805d00d645a4", + "local_profile": { + "1": 2460, + "2": 388, + "3": 466, + "4": 152, + "5": 56, + "8": 8 + } + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/REGROUP-LEAVER-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/REGROUP-LEAVER-k8.json new file mode 100644 index 0000000000..d482da23a8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/REGROUP-LEAVER-k8.json @@ -0,0 +1,725 @@ +{ + "source": "PR635 k492-jp8-frame_regroup + PR646 k480-jp8-frame_regroup, changes whose before gate occurs in the leaver port3 word", + "changes": [ + { + "section": "B", + "index": 600, + "before": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6 + ] + ], + "after": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 601, + "before": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 602, + "before": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6 + ] + ], + "after": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 631, + "before": [ + "add", + 205, + 409, + -1, + 2, + [ + 273, + 128, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 205, + 409, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 663, + "before": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 137, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 685, + "before": [ + "add", + 194, + 429, + 1, + 1, + [ + 272, + 144, + 65, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 194, + 429, + 1, + 1, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 552, + "before": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6 + ] + ], + "after": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 553, + "before": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 554, + "before": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6 + ] + ], + "after": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 582, + "before": [ + "add", + 129, + 56, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 6 + ] + ], + "after": [ + "add", + 129, + 56, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 583, + "before": [ + "add", + 137, + 24, + -1, + 2, + [ + 272, + 128, + 80, + 32, + 8, + 6 + ] + ], + "after": [ + "add", + 137, + 24, + -1, + 2, + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 584, + "before": [ + "add", + 169, + 16, + -1, + 2, + [ + 320, + 192, + 32, + 16, + 8, + 6 + ] + ], + "after": [ + "add", + 169, + 16, + -1, + 2, + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 613, + "before": [ + "add", + 205, + 409, + -1, + 2, + [ + 273, + 128, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 205, + 409, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 643, + "before": [ + "add", + 201, + 88, + -1, + 2, + [ + 256, + 145, + 64, + 32, + 9, + 6 + ] + ], + "after": [ + "add", + 201, + 88, + -1, + 2, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 675, + "before": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 137, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 705, + "before": [ + "add", + 161, + 27, + 1, + 1, + [ + 265, + 128, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 161, + 27, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 727, + "before": [ + "add", + 194, + 429, + 1, + 1, + [ + 272, + 144, + 65, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 194, + 429, + 1, + 1, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 757, + "before": [ + "add", + 195, + 431, + 1, + 1, + [ + 256, + 128, + 65, + 41, + 16, + 6 + ] + ], + "after": [ + "add", + 195, + 431, + 1, + 1, + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/TRI-LEAVER-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/TRI-LEAVER-k8.json new file mode 100644 index 0000000000..e3bb24cc49 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/TRI-LEAVER-k8.json @@ -0,0 +1,590 @@ +{ + "full_pairs": [ + [ + 0, + 1 + ], + [ + 2, + 3 + ], + [ + 4, + 5 + ], + [ + 6, + 7 + ] + ], + "triangles": [ + { + "p": [ + 0, + 1 + ], + "e": 1, + "reads": [ + [ + 57, + [ + 0, + 1, + 2, + 3 + ], + 0 + ], + [ + 56, + [ + 0, + 1, + 2, + 3 + ], + 1 + ], + [ + 25, + [ + 0, + 1, + 4, + 5 + ], + 0 + ], + [ + 24, + [ + 0, + 1, + 4, + 5 + ], + 1 + ], + [ + 17, + [ + 0, + 1, + 6, + 7 + ], + 0 + ], + [ + 16, + [ + 0, + 1, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 0 + }, + { + "p": [ + 2, + 3 + ], + "e": 1, + "reads": [ + [ + 63, + [ + 0, + 1, + 2, + 3 + ], + 3 + ], + [ + 59, + [ + 0, + 1, + 2, + 3 + ], + 23 + ], + [ + 89, + [ + 2, + 3, + 4, + 5 + ], + 0 + ], + [ + 88, + [ + 2, + 3, + 4, + 5 + ], + 1 + ], + [ + 81, + [ + 2, + 3, + 6, + 7 + ], + 0 + ], + [ + 80, + [ + 2, + 3, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 1 + }, + { + "p": [ + 4, + 5 + ], + "e": 1, + "reads": [ + [ + 31, + [ + 0, + 1, + 4, + 5 + ], + 3 + ], + [ + 27, + [ + 0, + 1, + 4, + 5 + ], + 23 + ], + [ + 95, + [ + 2, + 3, + 4, + 5 + ], + 3 + ], + [ + 91, + [ + 2, + 3, + 4, + 5 + ], + 23 + ], + [ + 49, + [ + 4, + 5, + 6, + 7 + ], + 0 + ], + [ + 48, + [ + 4, + 5, + 6, + 7 + ], + 1 + ] + ], + "coded": true, + "cell": 2 + }, + { + "p": [ + 6, + 7 + ], + "e": 1, + "reads": [ + [ + 23, + [ + 0, + 1, + 6, + 7 + ], + 3 + ], + [ + 19, + [ + 0, + 1, + 6, + 7 + ], + 23 + ], + [ + 87, + [ + 2, + 3, + 6, + 7 + ], + 3 + ], + [ + 83, + [ + 2, + 3, + 6, + 7 + ], + 23 + ], + [ + 55, + [ + 4, + 5, + 6, + 7 + ], + 3 + ], + [ + 51, + [ + 4, + 5, + 6, + 7 + ], + 23 + ] + ], + "coded": true, + "cell": 3 + }, + { + "p": [ + 6, + 7 + ], + "e": -1, + "reads": [ + [ + 18, + [ + 0, + 1, + 6, + 7 + ], + 21 + ], + [ + 22, + [ + 0, + 1, + 6, + 7 + ], + 2 + ], + [ + 82, + [ + 2, + 3, + 6, + 7 + ], + 21 + ], + [ + 86, + [ + 2, + 3, + 6, + 7 + ], + 2 + ], + [ + 50, + [ + 4, + 5, + 6, + 7 + ], + 21 + ], + [ + 54, + [ + 4, + 5, + 6, + 7 + ], + 2 + ] + ], + "coded": true, + "cell": 4 + }, + { + "p": [ + 0, + 1 + ], + "e": -1, + "reads": [ + [ + 61, + [ + 0, + 1, + 2, + 3 + ], + 17 + ], + [ + 60, + [ + 0, + 1, + 2, + 3 + ], + 19 + ], + [ + 29, + [ + 0, + 1, + 4, + 5 + ], + 17 + ], + [ + 28, + [ + 0, + 1, + 4, + 5 + ], + 19 + ], + [ + 21, + [ + 0, + 1, + 6, + 7 + ], + 17 + ], + [ + 20, + [ + 0, + 1, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 5 + }, + { + "p": [ + 2, + 3 + ], + "e": -1, + "reads": [ + [ + 58, + [ + 0, + 1, + 2, + 3 + ], + 21 + ], + [ + 62, + [ + 0, + 1, + 2, + 3 + ], + 2 + ], + [ + 93, + [ + 2, + 3, + 4, + 5 + ], + 17 + ], + [ + 92, + [ + 2, + 3, + 4, + 5 + ], + 19 + ], + [ + 85, + [ + 2, + 3, + 6, + 7 + ], + 17 + ], + [ + 84, + [ + 2, + 3, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 6 + }, + { + "p": [ + 4, + 5 + ], + "e": -1, + "reads": [ + [ + 26, + [ + 0, + 1, + 4, + 5 + ], + 21 + ], + [ + 30, + [ + 0, + 1, + 4, + 5 + ], + 2 + ], + [ + 90, + [ + 2, + 3, + 4, + 5 + ], + 21 + ], + [ + 94, + [ + 2, + 3, + 4, + 5 + ], + 2 + ], + [ + 53, + [ + 4, + 5, + 6, + 7 + ], + 17 + ], + [ + 52, + [ + 4, + 5, + 6, + 7 + ], + 19 + ] + ], + "coded": true, + "cell": 7 + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/build_frames_lv.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/build_frames_lv.py new file mode 100644 index 0000000000..5f8aa7a24b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/build_frames_lv.py @@ -0,0 +1,64 @@ +#!/usr/bin/env python3 +"""Apply the pinned gate/tail frame re-optimisation of FRAME-RECIPE-LV-k5.json (exact global frame optimum, gopt2) to the +leaver U8 word. + +usage: build_frames_lv.py INPUT_WORD.json.gz OUT_DIR RECIPE.json + +Standard library only. The frames are applied by BlockInvert's `../promo/build_promotion.apply` (no entrances; 'B' gate +frames and 'T' tail frames), which checks each old frame and recomputes the local profile and widths. This builder then checks: +input sha pin; the scalar program of A, cut, B, precondition and cleanup unchanged (every field but the frame); start +and end frames unchanged; local profile and width inventory equal to the recipe's; output sha pin. Three pin controls +(input pin, wrong old frame, output pin) must be rejected at their pinned reasons on every build. +Adapted from ../frames/build_frames.py (from PR741's extras/build_frames.py, chafreaky). Apache-2.0. +""" +import copy, gzip, hashlib, importlib.util, json, sys +from pathlib import Path + +HERE = Path(__file__).resolve().parent +_s = importlib.util.spec_from_file_location('promotion', HERE.parent / 'promo/build_promotion.py') +B = importlib.util.module_from_spec(_s); _s.loader.exec_module(B) + + +def construct(raw, recipe): + assert hashlib.sha256(raw).hexdigest() == recipe['input_content_sha256'], 'input word pin' + w = json.loads(raw) + assert recipe['gate_frames'] and all(c[0] in ('B', 'T') for c in recipe['gate_frames']), 'B and T frames only' + out = B.apply(w, dict(entrances={}, gate_frames=recipe['gate_frames'])) + for section in ('A', 'cut', 'B', 'precondition', 'cleanup'): + assert [e[:-1] for e in w[section]] == [e[:-1] for e in out[section]], 'scalar program unchanged' + assert out['start_extra'] == w['start_extra'] and out['helper_final'] == w['helper_final'], 'endpoint frames unchanged' + assert out['report']['local_profile'] == recipe['expected']['local_profile'] and \ + out['report']['width_inventory'] == recipe['expected']['width_inventory'], 'profile and width pins' + data = json.dumps(out, sort_keys=True, separators=(',', ':')).encode() + assert hashlib.sha256(data).hexdigest() == recipe['expected']['output_content_sha256'], 'output word pin' + return data + + +def main(): + assert __debug__, 'Assertions are required' + inp, outd, rfile = map(Path, sys.argv[1:4]) + raw = gzip.decompress(inp.read_bytes()); recipe = json.loads(rfile.read_text()) + data = construct(raw, recipe) + rejected = [] + for name, change, reason in [ + ('input-pin', lambda r: r.__setitem__('input_content_sha256', '0' * 64), 'input word pin'), + ('old-frame', lambda r: r['gate_frames'][0].__setitem__(2, []), 'gate frame mismatch'), + ('output-pin', lambda r: r['expected'].__setitem__('output_content_sha256', '0' * 64), 'output word pin')]: + r = copy.deepcopy(recipe); change(r) + try: + construct(raw, r) + except AssertionError as e: + assert reason in str(e), (name, str(e)); rejected.append(dict(name=name, reason=reason)) + else: + raise AssertionError('accepted ' + name) + outd.mkdir(parents=True) + (outd / 'FULL-WORD.json.gz').write_bytes(gzip.compress(data, mtime=0)) + (outd / 'BUILD.json').write_text(json.dumps(dict( + status='PASS_FRAME_REOPT_EXACT_CONSTRUCTION', input_sha256=hashlib.sha256(raw).hexdigest(), + output_sha256=hashlib.sha256(data).hexdigest(), scalar_program_unchanged=True, frames=len(recipe['gate_frames']), + rejected_controls=rejected), indent=2) + '\n') + print('PASS', len(recipe['gate_frames']), 'frames and three pin controls') + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-01+.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-01+.json new file mode 100644 index 0000000000..bfef820f29 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-01+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "-1/2" + ], + [ + "y0", + "x1", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "-1/2" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-01-.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-01-.json new file mode 100644 index 0000000000..3afa894b20 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-01-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y0", + "x1", + 1 + ], + [ + "y1", + "x0", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x1", + "x0", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y0", + "x3", + 1 + ], + [ + "y2", + "x1", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y1", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y0", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x0", + 1 + ], + [ + "y4", + "x1", + 1 + ] + ], + "scaled": [ + [ + "y0", + "x1", + "-1/2" + ], + [ + "y1", + "x0", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x1", + "x0", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y0", + "x3", + "-1/2" + ], + [ + "y2", + "x1", + "-1/2" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y1", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y0", + "1" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x0", + "-1/2" + ], + [ + "y4", + "x1", + "-1/2" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-23+.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-23+.json new file mode 100644 index 0000000000..98ff8050e7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-23+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "-1/2" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-23-.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-23-.json new file mode 100644 index 0000000000..517b89d382 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-23-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x3", + "x4", + 1 + ], + [ + "x5", + "x2", + 1 + ], + [ + "y1", + "x3", + 1 + ], + [ + "y2", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y3", + "y2", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y5", + "x2", + "-1/2" + ], + [ + "y4", + "x3", + "-1/2" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x3", + "x4", + "1" + ], + [ + "x5", + "x2", + "1" + ], + [ + "y1", + "x3", + "-1/2" + ], + [ + "y2", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y3", + "y2", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y3", + "x2", + "-1/2" + ], + [ + "y2", + "x3", + "-1/2" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-45+.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-45+.json new file mode 100644 index 0000000000..2bc89e1de1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-45+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "-1/2" + ], + [ + "y3", + "x4", + "-1/2" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "-1/2" + ], + [ + "x4", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "-1/2" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "-1/2" + ], + [ + "y0", + "x5", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-45-.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-45-.json new file mode 100644 index 0000000000..b9c1904b83 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-45-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x4", + 1 + ], + [ + "y3", + "x5", + 1 + ], + [ + "y5", + "x3", + 1 + ], + [ + "y4", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x4", + 1 + ], + [ + "x5", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y4", + "x5", + 1 + ], + [ + "y0", + "y4", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y5", + "y1", + 1 + ], + [ + "y1", + "x5", + 1 + ], + [ + "y0", + "x4", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y5", + "x1", + 1 + ], + [ + "y4", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x4", + "-1/2" + ], + [ + "y3", + "x5", + "-1/2" + ], + [ + "y5", + "x3", + "1" + ], + [ + "y4", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x4", + "-1/2" + ], + [ + "x5", + "x3", + "-2" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y4", + "x5", + "-1/2" + ], + [ + "y0", + "y4", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y5", + "y1", + "1" + ], + [ + "y1", + "x5", + "-1/2" + ], + [ + "y0", + "x4", + "-1/2" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y5", + "x1", + "1" + ], + [ + "y4", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-67+.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-67+.json new file mode 100644 index 0000000000..7d756cb19d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-67+.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-67-.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-67-.json new file mode 100644 index 0000000000..7d756cb19d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cells-k8/CORE-67-.json @@ -0,0 +1,216 @@ +{ + "unit": [ + [ + "y1", + "x0", + 1 + ], + [ + "y0", + "x1", + 1 + ], + [ + "y2", + "x5", + 1 + ], + [ + "y3", + "x4", + 1 + ], + [ + "y4", + "x3", + 1 + ], + [ + "y5", + "x2", + 1 + ], + [ + "x0", + "x1", + 1 + ], + [ + "x2", + "x5", + 1 + ], + [ + "x4", + "x3", + 1 + ], + [ + "y1", + "x2", + 1 + ], + [ + "y3", + "x0", + 1 + ], + [ + "y5", + "x4", + 1 + ], + [ + "y0", + "y5", + 1 + ], + [ + "y2", + "y3", + 1 + ], + [ + "y4", + "y1", + 1 + ], + [ + "y1", + "x4", + 1 + ], + [ + "y0", + "x5", + 1 + ], + [ + "y2", + "x3", + 1 + ], + [ + "y3", + "x2", + 1 + ], + [ + "y4", + "x1", + 1 + ], + [ + "y5", + "x0", + 1 + ] + ], + "scaled": [ + [ + "y1", + "x0", + "1" + ], + [ + "y0", + "x1", + "1" + ], + [ + "y2", + "x5", + "1" + ], + [ + "y3", + "x4", + "1" + ], + [ + "y4", + "x3", + "1" + ], + [ + "y5", + "x2", + "1" + ], + [ + "x0", + "x1", + "1" + ], + [ + "x2", + "x5", + "1" + ], + [ + "x4", + "x3", + "1" + ], + [ + "y1", + "x2", + "1" + ], + [ + "y3", + "x0", + "1" + ], + [ + "y5", + "x4", + "1" + ], + [ + "y0", + "y5", + "1" + ], + [ + "y2", + "y3", + "1" + ], + [ + "y4", + "y1", + "1" + ], + [ + "y1", + "x4", + "1" + ], + [ + "y0", + "x5", + "1" + ], + [ + "y2", + "x3", + "1" + ], + [ + "y3", + "x2", + "1" + ], + [ + "y4", + "x1", + "1" + ], + [ + "y5", + "x0", + "1" + ] + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cgx_leaver.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cgx_leaver.py new file mode 100644 index 0000000000..e686c66306 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/cgx_leaver.py @@ -0,0 +1,491 @@ +# LeaverSAT: no-helper mutable-leaver all-K cells (coded triangles) on the no-triangle word. Generated by +# LeaverSAT/mkpkg.py from construction/notri/cgx.py with the leaver edits (lv.leaver_source); Apache-2.0. +import json as _lj, os as _lo, sys as _ls +from fractions import Fraction as _lF +CODED_CELLS=[(c['bindings'],[[t,s,_lF(q)] for t,s,q in c['scaled']]) for c in _lj.load(open(_lo.path.join(_lo.path.dirname(_lo.path.abspath(_ls.argv[3])),'CODED-CELLS.json')))] +# Round20 early-coordinate-center / own-Y variant, prepared for icekylinx +# with OpenAI Codex assistance. Apache-2.0. Scalar elementary-operation +# helpers below are retained from the attributed PR514 construct_partial.py. +# Adapted by OpenAI Codex for isolated structural research. +# Modified from PR425 by icekylinx with Codex assistance. +"""Full discovery word for Hamming packets with borrowed X and Y registers. + +This changes the scalar architecture. It is not accepted by the old restricted +gx interface: source bases may change until full-frame cleanup, and targets use +an explicitly inverted output basis. No supplier admission is asserted. +""" +import copy,gzip,json,math,time +import itertools as it +from collections import Counter,defaultdict +from fractions import Fraction as Q +from pathlib import Path + +import sys +INPUT=Path(sys.argv[1]);OUT=Path(sys.argv[2]);OUT.mkdir(parents=True,exist_ok=False);D=json.loads((INPUT/'PROTOTYPE.json').read_text()) +P=D['binary_ports'];R=D['root_lines'];v=120;h=9 +modules=json.load(gzip.open(INPUT/'PACKET-PROGRAMS.json.gz')) +# AtomScout: leaver-read K-triangles (schedule from atom1.py / rog.py CP-SAT) +TRI=json.loads(Path(sys.argv[3]).read_text()) +FULLT={(tuple(tr['p']),tr['e']) for tr in TRI['triangles']} +TRI_COORDS={t+8 for tr in TRI['triangles'] for t,_,_ in tr['reads']} +import os as _o +COPYL=json.loads(open(_o.environ['XPARAM']).read()).get('copyl',[]) if _o.environ.get('XPARAM') else [] +NH=504-3*len(FULLT)+len(COPYL) + +def basis(vectors): + b={} + for x in vectors: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def inside(a,b):return basis(a+b)==b +def hyper(p):return basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) +FULL=basis([1<=v,r)) + for col,s in enumerate(ids): + k=next(i for i in range(col,len(regs)) if rows[regs[i]].get(s,Q(0))) + swap(regs[k],regs[col],F) + scale(regs[col],1/rows[regs[col]][s],F) + for i in range(len(regs)): + if i!=col and rows[regs[i]].get(s,Q(0)):add(regs[i],regs[col],-rows[regs[i]][s],F) + assert all(rows[regs[i]]=={s:Q(1)} for i,s in enumerate(ids)) + M=[[Q(R[s][i]) for s in ids] for i in c] + def qr_rank(rs): + bs={} + for r in rs: + r=r.copy() + for i,b in sorted(bs.items()): + if r[i]:q=r[i];r=[x-q*y for x,y in zip(r,b)] + i=next((i for i,x in enumerate(r) if x),None) + if i is not None:q=r[i];bs[i]=[x/q for x in r] + return len(bs) + assert qr_rank(M)==4 + for rr0 in PRIO.get(",".join(map(str,c)),[])+PRIORITY[",".join(map(str,c))]["rows"]: + rr=list(map(Q,rr0)) + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + for i in range(8): + if len(M)==8:break + rr=[Q(i==j) for j in range(8)] + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + assert len(M)==8 + linear(regs,M,F) + for i,r in zip(c,regs): + assert rows[r]=={s:Q(R[s][i]) for s in ids} + block_totals[c,i]=r + +# All centers are complete while Y is still at zero. This is the crucial +# difference from an illegal early-own-Y prefix using the old center order. +centers=[] +for i in range(8): + regs=[block_totals[c,i] for c in sorted(blocks) if i in c] + F=hyper(P[frame[i]]);a=regs[0] + for b in regs[1:]:add(a,b,1,F) + centers.append(a) +centers += [frame[i] for i in range(8)] +center_frames=[cur[r] for r in centers] +assert list(map(len,center_frames))==[8]*8+[1]*8 +assert all(cur[v+t]==() for t in range(v)) + +phase=B +for t,(r,coef,F) in sorted(own_rows.items()): + if t in TRI_COORDS:continue + assert cur[r]==F + add(v+t,r,coef,F) +# requests are needed for TRI coefficients +requests=defaultdict(list) +for pid,pair in enumerate(pairs): + if not pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + requests[key1].append((t,-Q(mat[0][0],2))) + requests[key2].append((u,-Q(mat[0][1],2))) +reqcoef={t:(key,coef) for key,reqs in requests.items() for t,coef in reqs} +def face_info(c,p,eps): + z=blocks[c];keys=[(pp,ee) for pp in it.combinations(c,2) for ee in (-1,1)] + r_local,alpha=z['outputs'][keys.index((p,eps))] + j=[j for j in range(40,len(z['events'])) if z['events'][j][0]==r_local];assert len(j)==1 + return j[0],Q(alpha) +tri_join_counts=Counter() +coded_shadow_slot={} +coded_target_edges=[];TRILOG=[] +lcopy={} +for s8 in COPYL: + r=s8+8;c=len(cur);cur.append(());rows.append({});shadow.append(None);add(c,r,1,cur[r]);lcopy[r]=c +BF={c:basis([P[x] for x in z['receipt']['source_lines']]) for c,z in blocks.items()} +HYB={(tuple(map(int,h[0])),tuple(map(int,h[1])),int(h[2])) for h in XP.get('hyb',[])} +HYBLOG=[] +def triread(t,blk,r,q): + F=basis(cur[v+t]+cur[r]);assert inside(F,hyper(P[t])),('TRI frame',t,blk,r,cur[v+t],cur[r],hyper(P[t]),[x for x in TRILOG if x[2]==r],HYBLOG) + tri_join_counts[len(F)]+=1;add(v+t,r,q,F);TRILOG.append([t,list(blk),r,str(q),list(F),list(cur[r])]) +for tr in TRI['triangles']: + if tr.get('coded'): + bindings={} + for name,binding in CODED_CELLS[tr['cell']][0].items(): + bindings[name]=maps[tuple(binding[1])][binding[2]] if binding[0]=='source' else v+binding[1] + for tn,sn,q in CODED_CELLS[tr['cell']][1]: + target,source=bindings[tn],bindings[sn] + F=basis(cur[target]+cur[source]) + for register in (target,source): + if v<=register<2*v:assert inside(F,hyper(P[register-v])),('coded frame',register,F) + add(target,source,q,F) + if sn.startswith('y'):coded_target_edges.append((target,source,Q(q))) + continue + p,eps=tuple(tr['p']),tr['e'] + hb={blk for _,blk,_ in map(lambda x:(x[0],tuple(x[1]),x[2]),tr['reads']) if (blk,p,eps) in HYB} + own=[];rest=[] + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];r0=r;r=lcopy.get(r,r) + key,coef=reqcoef[t];assert key[1]==p and key[2]==eps,(key,p,eps) + if blk==key[0]: + rr,c0,F0=own_rows[t];assert rr==r0;own.append((t,blk,r,c0)) + else: + j,alpha=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert loc in ev[:2] + rest.append((t,blk,loc,r,coef*alpha)) + if not hb: + # original interleaved order + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:q=own_rows[t][1] + else:j,alpha=face_info(blk,p,eps);q=coef*alpha + triread(t,blk,r,q) + continue + items=[] # (kind, t, reg, q, blk) + for t,blk,r,q in own:items.append(('r',t,r,q,blk,blk in hb)) + for blk in sorted(hb):items.append(('e',None,None,None,blk,True)) + done=set() + for t,blk,loc,r,q in rest: + if blk in hb: + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j] + ws=[x for x in rest if x[0]==t and x[1]==blk];assert len(ws)==2 and ws[0][4]==ws[1][4] and {ws[0][2],ws[1][2]}==set(ev[:2]) + if (t,blk) in done:continue + done.add((t,blk));items.append(('m',t,maps[blk][ev[0]],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + # Original read order with the two half reads collapsed into one M read at the first half's slot; the face event goes + # just before the first M read of its block; own reads of the M register are hoisted ahead of that event. + def evinfo(blk): + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert ev[2]==ev[3]==1,ev + mpb=maps[blk];return mpb[ev[0]],mpb[ev[1]],tuple(blocks[blk]['event_frames'][j]) + items=[] + seen=set() + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:items.append(('r',t,r,own_rows[t][1],blk,blk in hb)) + else: + j,alpha=face_info(blk,p,eps);q=coef*alpha + if blk in hb: + if (t,blk) not in seen:seen.add((t,blk));continue + items.append(('m',t,evinfo(blk)[0],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + for blk in sorted(hb): + k0=min(i for i,x in enumerate(items) if x[0]=='m' and x[4]==blk) + items.insert(k0,('e',None,None,None,blk,True)) + n=len(items) + def step(it,st): + k,t,r,q,blk,h=it;g=lambda x:st.get(x,cur[x]) + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(g(a_))+list(g(b_))) + return {a_:FF,b_:FF} if inside(FF,BF[blk]) else None + F=basis(list(g(v+t))+list(g(r))) + if not inside(F,hyper(P[t])):return None + if h and k=='r' and r==evinfo(blk)[1] and not inside(F,BF[blk]):return None + return {v+t:F,r:F} + def allowed(i,used): + k,t,r,q,blk,h=items[i] + evi=[j for j,x in enumerate(items) if x[0]=='e' and x[4]==blk] if h else [] + if k=='e':return all(j in used for j,x in enumerate(items) if x[0]=='r' and x[4]==blk and x[5] and x[2]==evinfo(blk)[0]) + if k=='m':return evi[0] in used + if k=='r' and h and r==evinfo(blk)[0]:return evi[0] not in used + return True + budget=[int(os.environ.get('HYBBUDGET','300000'))];memo=set() + def dfs(st,used,order): + if len(order)==n:return order + budget[0]-=1 + if budget[0]<0:return None + sig=(used,tuple(sorted(st.items()))) + if sig in memo:return None + memo.add(sig) + for i in range(n): + if i in used or not allowed(i,used):continue + d=step(items[i],st) + if d is None:continue + ns=dict(st);ns.update(d);res=dfs(ns,used|{i},order+[i]) + if res:return res + return None + import sys as _s;_s.setrecursionlimit(20000) + order=dfs({},frozenset(),[]) + assert order,('no feasible hybrid order',p,eps,sorted(hb),budget) + for i in order: + k,t,r,q,blk,h=items[i] + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(cur[a_])+list(cur[b_]));add(a_,b_,1,FF);HYBLOG.append([list(blk),list(p),eps,list(FF)]) + else:triread(t,blk,r,q) + +packets={} +for c,z in sorted(blocks.items()): + mp=maps[c] + keys=[(p,eps) for p in it.combinations(c,2) for eps in (-1,1)] + skipev={face_info(c,p,eps)[0] for p,eps in keys if (p,eps) in FULLT} + for j,(e,F) in enumerate(list(zip(z['events'],z['event_frames']))[40:]): + if j not in early[c] and 40+j not in skipev: + t,s,a,b=e;add(mp[t],mp[s],Q(a,b),tuple(F)) + for key,(r,alpha) in zip(keys,z['outputs']): + if tuple(key) in FULLT:skip();continue + a=mp[r];b=alloc();add(b,a,1,cur[a]) + consumers=sorted(d for d in blocks if d!=c and set(key[0])<=set(d)) + assert len(consumers)==2 + for target,r in zip(consumers,(a,b)):packets[c,key[0],key[1],target]=(r,Q(alpha)) + +# Both tetrahedra use the same partition. A selected key has exactly two +# selected Y loads and no ordinary M consumer. Supply its two raw halves in +# opposite orders and never form that M. Other keys retain the old M path. +second=[];first_join_counts=Counter() +for key,reqs in sorted(requests.items()): + assert len(reqs)==2 + c,p,eps=key + if (p,eps) in FULLT:continue + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d));a,b=ds + for j,(target,coef) in enumerate(sorted(reqs)): + first_source,second_source=(a,b) if j==0 else (b,a) + r,alpha=packets[first_source,p,eps,second_source] + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + first_join_counts[len(F)]+=1;add(v+target,r,coef*alpha,F) + r,alpha=packets[second_source,p,eps,c] + second.append((target,r,coef*alpha)) + +Ms={} +for c in sorted(blocks): + for p in it.combinations(c,2): + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d)) + for eps in (-1,1): + if (c,p,eps) in requests:continue + (a,alpha),(b,beta)=[packets[d,p,eps,c] for d in ds] + F=basis(cur[a]+cur[b]);add(a,b,beta/alpha,F) + Ms[c,p,eps]=(a,alpha) + +consumers=defaultdict(list) +for pid,pair in enumerate(pairs): + for key in pair['keys']:consumers[key].append(pid) +slots={} +for key,uses in sorted(consumers.items()): + assert len(uses)==2 + if key in requests: + assert all(pairs[i]['selected'] for i in uses) + continue + assert all(not pairs[i]['selected'] for i in uses) + a,alpha=Ms[key] + for j,pid in enumerate(uses): + if j==0:r=a + else:r=alloc();add(r,a,1,cur[a]) + slots[pid,key]=(r,alpha) +assert len(cur)-240==NH,len(cur)-240 + +selected_join_counts=Counter() +for target,r,coef in second: + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + selected_join_counts[len(F)]+=1;add(v+target,r,coef,F) +output_basis=[] +for pair in pairs: + if not pair['selected']:continue + (t,u),mat=pair['targets'],pair['matrix'] + F=basis(cur[v+t]+cur[v+u]);assert inside(F,hyper(P[t])) and inside(F,hyper(P[u])) + add(v+t,v+u,1,F);add(v+u,v+t,-Q(1,2),F) + z=-Q(2*mat[1][0],mat[0][0]);scale(v+u,z,F);output_basis.append((t,u,z)) + +for pid,pair in enumerate(pairs): + if pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + (a,alpha),(b,beta)=slots[pid,key1],slots[pid,key2] + F=basis(cur[a]+cur[b]);aa,ab=Q(mat[0][0])*alpha,Q(mat[0][1])*beta + ba,bb=Q(mat[1][0])*alpha,Q(mat[1][1])*beta + add(a,b,ab/aa,F);q=ba/(bb-ba*ab/aa);add(b,a,q,F) + add(v+t,a,-aa/2,hyper(P[t]));add(v+u,b,-(bb-ba*ab/aa)/2,hyper(P[u])) + +for t in range(v): + expected={s:-Q(G[t][s],2) for s in range(v) if s!=t and G[t][s] and s not in frame.values()} if t not in frame.values() else {} + assert rows[v+t]==expected,('side identity',t) + +scatter=[[Q(r[i],4) if t not in frame.values() else Q(0) for i in range(8)]+[Q(t==frame[i]) for i in range(8)] for t,r in enumerate(R)] +precondition=[] +for t,u,z in output_basis: + a,b=scatter[t].copy(),scatter[u].copy() + scatter[t]=[x/2-y/z for x,y in zip(a,b)] + scatter[u]=[x/2+y/z for x,y in zip(a,b)] + precondition.extend([['scale',v+u,(1/z).numerator,(1/z).denominator,[]], + ['add',v+u,v+t,1,2,[]],['add',v+t,v+u,-1,1,[]]]) +for target,source,q in reversed(coded_target_edges): + scatter[target-v]=[a-q*b for a,b in zip(scatter[target-v],scatter[source-v])] + precondition.append(['add',target,source,-q.numerator,q.denominator,[]]) +for r in range(len(cur)):climb(r,hyper(P[r-v]) if v<=r<2*v else FULL) +H[8]+=8;H[1]+=8 +assert sum(r*z for r,z in H.items())==9*NH+240*8+72,sum(r*z for r,z in H.items()) + +def apply(e,matrix): + if e[0]=='add': + _,t,s,a,b,*_=e;q=Q(a,b) + for j,x in list(matrix[s].items()): + z=matrix[t].get(j,Q(0))+q*x + if z:matrix[t][j]=z + else:matrix[t].pop(j,None) + else: + _,t,a,b,*_=e;q=Q(a,b);matrix[t]={j:q*x for j,x in matrix[t].items()} +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + e[-1]=list(FULL);return e +cut=[['add',v+t,centers[i],q.numerator,q.denominator,None] for t,row in enumerate(scatter) for i,q in enumerate(row) if q] +cleanup=[inverse(e) for e in reversed(A+B) if not v<=e[1]<2*v] +matrix=[{r:Q(1)} if r - entering end e's tail frame has a dimension that no helper_final frame has, so the mutant cannot be built. +Such a site is never skipped silently: the pins file MUST declare it under "not_applicable" ({site: reason}), the +declared set MUST equal the detected set, an identity is PROVEN by byte equality of the mutated and honest words (both +sha256 recorded), and a substitute mutant of the same class is built and MUST be rejected at the class's pinned reason: + extra_end -> the first premixed partner of h0 that is not yet ended, cold-ended at h0's frame; + other_hp: -> e's end moved to another helper_final frame of the dimension of e's own end frame. +Original docstring: layer_end_controls.py LAYERED-WORD.json.gz ROUTING OUTDIR (env PR635_CODE): adapted PR635 cold_end_controls.py (LayerReviewer): raw-word negative controls for the cold low-frame ends and the +refactored cleanup accepted by hpe_audit_and_transport.py. Every mutation MUST be rejected (AssertionError); the +unmutated word MUST pass. Apache-2.0. DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code.""" +import copy, gzip, hashlib, json, shutil, sys, tempfile +from pathlib import Path +import os +sys.path.insert(0, os.environ['PR635_CODE']) # PR635's unchanged hpe_audit_and_transport.py +import hpe_audit_and_transport as atc + +src, routing, outdir = Path(sys.argv[1]), Path(sys.argv[2]), Path(sys.argv[3]) +word = json.load(gzip.open(src)) +v, R = word['report']['v'], word['report']['R']; n = 2*v + R +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +meta = word['refactored_cleanup'] +cold = [int(h) for h in meta['cold_low_frame_ended_helpers']] +npre = meta['premix_gates']; nlow = meta['lower_frame_gates'] +early = word['early_cleanup']; eidx = {i for i, _ in early} +rest = [i for i in range(len(word['cleanup'])) if i not in eidx] + + +def trial(w): + """None if the transport audit accepts w, else the AssertionError message.""" + tmp = Path(tempfile.mkdtemp()) + p = tmp/'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w).encode(), mtime=0)) + try: + atc.run(p, routing, tmp/'out') + return None + except AssertionError as e: + return repr(e.args[0]) if e.args else 'AssertionError' + finally: + shutil.rmtree(tmp, ignore_errors=True) + + +# Pinned rejection reasons: each mutant must fail at this assertion of hpe_audit_and_transport.py (message substring). +ENDPOINT, COLDPRE, CONE = "'arbitrary-dirt endpoint'", 'touches a cold hyperplane-ended helper', 'hpe cone pre-check (row / column)' +WHY = dict(premix_to_precondition=COLDPRE, premix_dropped=COLDPRE, e_premix_dropped=ENDPOINT, lower_dropped=ENDPOINT, + remainder_dropped=ENDPOINT, coefficient=ENDPOINT, into_full='cleanup on non-FULL end', dyadic=ENDPOINT, frame_below="'nonmonotone'", + nonmonotone="'nonmonotone'", other_frame=CONE, cone=CONE, extra_end=COLDPRE, marker='cleanup is not the literal reversed inverse', + target='refactored cleanup touches a target', profile_pin='paid local profile differs from the reported local_profile', + entering_precondition='zero-frame precondition/compensation touches an entering helper') +_REASONS = dict(ENDPOINT=ENDPOINT, COLDPRE=COLDPRE, CONE=CONE) +NA_DECLARED = {} +if os.environ.get('LEC_REASON_PINS'): + for _k, _v in json.loads(Path(os.environ['LEC_REASON_PINS']).read_text()).items(): + if _k == 'not_applicable': NA_DECLARED = dict(_v); continue + assert _k in WHY, ('unknown mutant key', _k); WHY[_k] = _REASONS.get(_v, _v) +assert trial(word) is None, 'unmutated cold-end word must pass' +results = [] + + +def reject(name, mut, why): + """the mutation must be rejected, and for the pinned reason (a substring of the audit's assertion message).""" + w = copy.deepcopy(word); mut(w) + msg = trial(w) + assert msg is not None, 'cold-end mutation accepted: ' + name + assert why in msg, 'cold-end mutation %r rejected for the wrong reason: %s' % (name, msg[:300]) + results.append(name); print('rejected', name, '|', why, flush=True) + + +h0 = cold[0] +i0, U0 = next((i, f) for i, f in early if h0 in regs(word['cleanup'][i])) +r0 = rest[len(rest)//2] + + +def premix_to_precondition(w): # premix before the wrappers; compensation then reads the cold ends + w['precondition'] = w['precondition'] + w['A'][:npre]; w['A'] = w['A'][npre:] + + +def lower_gate_into_full(w): # a lower-frame gate on a cold-ended helper executed in the FULL remainder instead + w['early_cleanup'] = [x for x in w['early_cleanup'] if x[0] != i0] + + +def drop_cleanup_gate(w, i): # remove the gate AND its early_cleanup entry: a structurally valid word missing one gate + w['cleanup'].pop(i) + w['early_cleanup'] = [[j - (j > i), f] for j, f in w['early_cleanup'] if j != i] + + +def other_frame(w): # a different frame of the same dimension as the cold end (another cold helper's) + f = next(w['helper_final'][str(h)] for h in cold if w['helper_final'][str(h)] != w['helper_final'][str(h0)]) + w['helper_final'][str(h0)] = f + + +NA = [] # detected not-applicable sites: dict(site, reason, ...) +wsha = lambda w: hashlib.sha256(json.dumps(w, sort_keys=True, separators=(',', ':')).encode()).hexdigest() +HONEST_SHA = wsha(word) + + +def extra_cold_end(w): # declare a premixed partner of h0 cold-ended at h0's frame: fails the row/column cone + p = next(r for e in w['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + w['helper_final'][str(p)] = w['helper_final'][str(h0)] + + +_m = copy.deepcopy(word); extra_cold_end(_m) +if wsha(_m) == HONEST_SHA: # identity: the first partner is already ended at h0's frame + _p = next(r for e in word['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + _q = next(r for e in word['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e) and str(r) not in word['helper_final'] and not v <= r < 2*v) + NA.append(dict(site='extra_end', reason='partner %d already cold-ended at h0 %d frame (identity)' % (_p, h0), + honest_sha256=HONEST_SHA, mutated_sha256=wsha(_m), substitute='partner %d' % _q)) + + def extra_cold_end(w, q=_q): w['helper_final'][str(q)] = w['helper_final'][str(h0)] + assert wsha((lambda x: (extra_cold_end(x), x)[1])(copy.deepcopy(word))) != HONEST_SHA + + +reject('premix placed in the zero-frame precondition (before the cold wrappers)', premix_to_precondition, WHY['premix_to_precondition']) +reject('one premix gate dropped (the compensation then reads a cold-ended helper)', lambda w: w['A'].pop(npre - 1), WHY['premix_dropped']) +reject('one lower-frame cleanup gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, i0), WHY['lower_dropped']) +reject('one FULL-remainder gate dropped', lambda w: drop_cleanup_gate(w, r0), WHY['remainder_dropped']) +reject('lower-frame gate coefficient changed', lambda w: w['cleanup'][i0].__setitem__(3, w['cleanup'][i0][3] * 2), WHY['coefficient']) +reject('lower-frame gate moved into the FULL remainder (touches a cold-ended helper at FULL)', lower_gate_into_full, WHY['into_full']) +reject('lower-frame gate frame below its registers\' frames', lambda w: next(x for x in w['early_cleanup'] if x[0] == i0).__setitem__(1, U0[:-1]), WHY['frame_below']) +reject('cold end at another dim-4 frame', other_frame, WHY['other_frame']) +# PROFILE-PIN control: without its helper_final entry the cold-ended helper is a valid FULL-ended helper; the word is +# rejected because its reported paid profile (which counts the low end) no longer matches the frame chains. +reject('profile pin: cold end dropped (valid FULL end, but the reported profile counts the low end)', lambda w: w['helper_final'].pop(str(h0)), WHY['profile_pin']) +reject('extra cold end on a premixed partner (the compensation reads it before its wrapper)', extra_cold_end, WHY['extra_end']) +reject('refactored-cleanup marker removed (literal-inverse rule applies)', lambda w: w.pop('refactored_cleanup'), WHY['marker']) +reject('remainder gate retargeted to a target register', lambda w: w['cleanup'][r0].__setitem__(1, v + 3), WHY['target']) +reject('non-dyadic remainder coefficient', lambda w: w['cleanup'][r0].__setitem__(4 if w['cleanup'][r0][0] == 'add' else 3, 3 * w['cleanup'][r0][4 if w['cleanup'][r0][0] == 'add' else 3]), WHY['dyadic']) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('5', w['report']['local_profile']['5'] - 1), WHY['profile_pin']) +ent = [int(h) for h in sys.argv[4].split(',')] if len(sys.argv) > 4 else [int(h) for h in meta.get('entering_low_frame_ended_helpers', [])] +for e0 in ent: # ENTERING LOW-FRAME ENDS (ColdSupply extension; every entering end; absent for words without them) + j0 = next((i for i, e in enumerate(word['A'][:npre]) if e0 in regs(e)), None) + print('entering end', e0, 'premix gate', j0, flush=True) + k0, Ue = next((i, f) for i, f in early if e0 in regs(word['cleanup'][i])) + def to_pre(w, j0=j0): w['precondition'].append(w['A'][j0]); w['A'].pop(j0) + def other_hp(w, e0=e0, Ue=Ue): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Ue) and sorted(f) != sorted(Ue)) + if not any(len(f) == len(Ue) and sorted(f) != sorted(Ue) for f in word['helper_final'].values()): # unbuildable + Uh = word['helper_final'][str(e0)] + NA.append(dict(site='other_hp:%d' % e0, reason='tail frame dim %d; no other helper_final frame of that dim' % len(Ue), + dims_available=sorted({len(f) for f in word['helper_final'].values()}), substitute='end-frame dim %d' % len(Uh))) + + def other_hp(w, e0=e0, Uh=Uh): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Uh) and sorted(f) != sorted(Uh)) + if j0 is not None: reject('entering end %d: premix gate dropped' % e0, lambda w, j0=j0: w['A'].pop(j0), WHY['e_premix_dropped']) + if j0 is not None: reject('entering end %d: premix gate at frame [] instead of its entrance E' % e0, lambda w, j0=j0: w['A'][j0].__setitem__(-1, []), WHY['nonmonotone']) + if j0 is not None: reject('entering end %d: premix gate moved into the zero-frame precondition' % e0, to_pre, WHY['entering_precondition']) + reject('entering end %d: lower-frame gate dropped (gate and its early_cleanup entry)' % e0, lambda w, k0=k0: drop_cleanup_gate(w, k0), WHY['lower_dropped']) + reject('entering end %d: profile pin: end dropped (valid FULL end, but the reported profile counts the low end)' % e0, lambda w, e0=e0: w['helper_final'].pop(str(e0)), WHY['profile_pin']) + reject('entering end %d: end at another hyperplane' % e0, other_hp, WHY['cone']) +# Pinned rejection reasons of the COLD-BEYOND mutants (substrings of hpe_audit_and_transport.py assertion messages). +MYWHY = dict(tw_precondition=COLDPRE, tw_dropped=COLDPRE, tw_coefficient=COLDPRE, tw_other_block=COLDPRE, + tw_entering='zero-frame compensation reads an entering helper', + ab_dropped=ENDPOINT, ab_coefficient=ENDPOINT, ab_early=ENDPOINT, ab_live=ENDPOINT, ab_centre=ENDPOINT, + ab_lower="'nonmonotone'", ab_higher="'nonmonotone'", + sh_dropped=ENDPOINT, sh_coefficient=ENDPOINT, rel_dropped=ENDPOINT, rel_coefficient=ENDPOINT, rel_live=ENDPOINT, + h8_other=CONE, h8_lower=ENDPOINT) +# COLD-BEYOND primitives (present only when the word carries them): frame-[] target writes in the premix (explicit +# post-wrapper compensation of an ended helper's dirt) and forward absorptions into dead registers. +nw = meta.get('premix_target_writes', 0) +if nw: + wi = [i for i in range(npre) if v <= word['A'][i][1] < 2*v] + assert len(wi) == nw + + def writes_to_precondition(w): # the target writes run before the cold wrappers (inside the zero-frame precondition) + g = [w['A'][i] for i in wi]; w['precondition'] = w['precondition'] + g + w['A'] = [e for i, e in enumerate(w['A']) if i not in set(wi)] + reject('premix target writes placed in the zero-frame precondition (before the cold wrappers)', writes_to_precondition, MYWHY['tw_precondition']) + reject('one premix target write dropped (compensation must read an ended helper)', lambda w: w['A'].pop(wi[0]), MYWHY['tw_dropped']) + reject('premix target write coefficient changed', lambda w: w['A'][wi[0]].__setitem__(3, w['A'][wi[0]][3] * 2), MYWHY['tw_coefficient']) + # (reading another register that carries the SAME weight of the ended helper's dirt is a valid variant, so the mutant reads + # the same factory slot of the next block, which carries none of it) + entering_regs = sorted(int(r) for r in word.get('start_extra', {})) + reject('premix target write reads an entering helper', lambda w: w['A'][wi[0]].__setitem__(2, entering_regs[0]), MYWHY['tw_entering']) + reject('premix target write reads a cold helper of another block', lambda w: w['A'][wi[0]].__setitem__(2, 2*v + (w['A'][wi[0]][2] - 2*v + 16) % 224), MYWHY['tw_other_block']) +ab = meta.get('forward_absorption_A_indices', []) +if any(len(word['helper_final'][str(h)]) == 8 for h in cold): + # with dim-8 cold ends, the centre-retargeted absorption first leaks an ended helper's dirt into the cut's targets + MYWHY['ab_centre'] = COLDPRE +if ab: + # the ColdBeyond U_b absorption (q += -1/2 g); ColdThird's extra absorptions have their own controls below + a0 = next(a for a in ab if word['A'][a][3] * 2 == -word['A'][a][4]); g0 = word['A'][a0] + + def absorption_moved_early(w): # absorbed before the absorbed register's last kernel write + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[2] == w['A'][i][1] and w['A'][i][-1] == g0[-1]) + w['A'].insert(j, e) + + def absorption_into_live(w): # q += a g moved right after g's previous frame-mate gate, while q is still live + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[1] in regs(w['A'][i])) + w['A'].insert(j, e) + reject('forward absorption dropped', lambda w: w['A'].pop(a0), MYWHY['ab_dropped']) + reject('forward absorption into a centre (a live register read by the cut)', lambda w: w['A'][a0].__setitem__(1, next(c for c in word['centers'] if c not in g0[1:3] and c not in cold)), MYWHY['ab_centre']) + reject('forward absorption coefficient changed', lambda w: w['A'][a0].__setitem__(3, w['A'][a0][3] * 2), MYWHY['ab_coefficient']) + reject('forward absorption placed before the absorbed register\'s last kernel write', absorption_moved_early, MYWHY['ab_early']) + reject('forward absorption placed while the absorbing register is still live', absorption_into_live, MYWHY['ab_live']) + reject('forward absorption at a lower frame than its registers', lambda w: w['A'][a0].__setitem__(-1, w['A'][a0][-1][:-1]), MYWHY['ab_lower']) + reject('forward absorption at a higher frame (FULL) than its registers', lambda w: w['A'][a0].__setitem__(-1, [256, 128, 64, 32, 16, 8, 4, 2, 1]), MYWHY['ab_higher']) +# COLD-THIRD primitives (present only when the word carries them): several absorptions after one input gate, dirt-release +# absorptions (a dead port takes a live helper's value so that a hyperplane unit's column has no dirt on it), and cold ends at +# a dim-8 frame with lifted partners. +hyper = [h for h in cold if len(word['helper_final'][str(h)]) == 8] +if hyper and ab: + sh = next(a for a, b in zip(ab, ab[1:]) if b == a + 1) # two absorptions sharing one input anchor + rel = next(a for a in ab if a - 1 not in ab and a + 1 not in ab and word['A'][a][2] in hyper and word['A'][a][3] * 2 != -word['A'][a][4]) + hh = hyper[0]; ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + reject('second absorption sharing an input anchor dropped', lambda w: w['A'].pop(sh + 1), MYWHY['sh_dropped']) + reject('shared-anchor absorption coefficient changed', lambda w: w['A'][sh + 1].__setitem__(3, w['A'][sh + 1][3] * 2), MYWHY['sh_coefficient']) + reject('dirt-release absorption dropped', lambda w: w['A'].pop(rel), MYWHY['rel_dropped']) + reject('dirt-release absorption coefficient changed', lambda w: w['A'][rel].__setitem__(3, w['A'][rel][3] * 2), MYWHY['rel_coefficient']) + jr = max(i for i in range(npre, rel) if word['A'][i][0] == 'add' and word['A'][i][2] == word['A'][rel][1]) + + def release_while_read(w): # the release runs before a kernel gate that still READS the port (port live) + e = w['A'].pop(rel); w['A'].insert(jr, e) + reject('dirt-release absorption moved before a kernel gate that still reads the port', release_while_read, MYWHY['rel_live']) +if hyper: + # dim-8 cold-end controls for EVERY dim-8 cold end of the word (read from the word's helper_final and the recipe meta's + # cold_low_frame_ended_helpers), not one representative per terminal frame + for hh in hyper: + ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + Uh = word['helper_final'][str(hh)] + reject('dim-8 cold end %d (frame %s) at another dim-8 frame' % (hh, Uh), lambda w, hh=hh: w['helper_final'].__setitem__(str(hh), next(f for h, f in w['helper_final'].items() if len(f) == 8 and sorted(f) != sorted(w['helper_final'][str(hh)]))), MYWHY['h8_other']) + reject('dim-8 cold end %d (frame %s): one lower-frame gate dropped (gate and its early_cleanup entry)' % (hh, Uh), lambda w, ih=ih: drop_cleanup_gate(w, ih), MYWHY['h8_lower']) + reject('dim-8 cold end %d (frame %s): profile pin (end dropped)' % (hh, Uh), lambda w, hh=hh: w['helper_final'].pop(str(hh)), WHY['profile_pin']) +# FACTORED ACCUMULATOR (CarrierBypass; present only when the word carries one): a lower-frame tail gate a += x*g on two +# non-ended registers whose accumulator a is afterwards read by a dim-8 cold end's tail gate (h += y*a at its U). +ended_all = {int(h) for h in word['helper_final']} +tailg = [(i, word['cleanup'][i]) for i, _ in early] +accs = [] # EVERY factored accumulator gate (one per accumulator register a), each controlled on its own +for k, (i, e) in enumerate(tailg): + if e[0] == 'add' and e[1] not in ended_all and e[2] not in ended_all and len(next(f for j, f in early if j == i)) < 8: + if e[1] not in [word['cleanup'][j][1] for j in accs] and any(t[0] == 'add' and t[2] == e[1] and t[1] in hyper for _, t in tailg[k + 1:]): + accs.append(i) +for acc in accs: + a = word['cleanup'][acc][1] + reject('factored accumulator %d (gate %d) zeroed' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, 0), ENDPOINT) + reject('factored accumulator %d (gate %d) coefficient doubled' % (a, acc), lambda w, acc=acc: w['cleanup'][acc].__setitem__(3, w['cleanup'][acc][3] * 2), ENDPOINT) +assert {x['site']: x['reason'] for x in NA} == NA_DECLARED, ('not-applicable sites differ from the pins file', NA, NA_DECLARED) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'COLD-END-CONTROLS.json').write_text(json.dumps(dict(status='PASS_COLD_END_RAW_WORD_CONTROLS', word=str(src), rejected=results, not_applicable=NA), indent=1) + '\n') +print('PASS', len(results), 'cold-end raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/reproduce_leaver.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/reproduce_leaver.py new file mode 100644 index 0000000000..bc4360ef93 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/reproduce_leaver.py @@ -0,0 +1,177 @@ +#!/usr/bin/env python3 +"""Rebuild the leaver word: the no-triangle word with no-helper mutable-leaver all-K cells, and its native locals. + +Each cell (pair p, sign e) replaces the three face events of the blocks containing p and their three packet copies +by a 21-gate circuit on the cell's six leaver sources x_j (the face-event operands, which have no later reads and are +restored by the inherited cleanup at FULL) and its six targets y_i: 3 leaver gates x_k += c x_m, 3 target gates +y_a += c y_b (inverted at frame zero in the precondition and scatter, #781's recipe) and 15 reads y_i += c x_j. +Unit circuit (LeaverSAT, layered CP-SAT on the exact set model), relabelled per cell so that no y += y source carries +port-stage entering-helper dirt at the gate; coefficients rescaled exactly to the cell (C_ij = r_i c_j). +Input: a fresh `construction/reproduce.py --until word` output directory (hamming/, shadow-early/, shadow-prefix/). +Steps, each checked exactly (pins in LEAVER-PINS.json): + 0. cells: CODED-CELLS.json's scaled gates are re-derived from the unit circuits and the cell coefficients, and the + clean map Y_i = sum_j C_ij X_j is checked in exact rationals. + 1. gauge-forward: cgx_leaver.py (notri/cgx.py + the leaver edits) with TRI-LEAVER.json, XPARAM = notri/PRIO6.json. + 2. port0-3: notri/port_stage_x.py. + 3. regroup: REGROUP-LEAVER.json's changes where their `before` gate occurs (count pinned). + 4. hpe: PR635's build_hpe.candidates greedy with disjoint registers, build_hpe.apply (recipe pinned). + 5. cold44: notri/cold44x.py with EXTRAH and pinned pairing ranks; output sha, profile and widths pinned. + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs (pins). +Apache-2.0. LeaverSAT (Claude Code research agent), driver after construction/notri/reproduce_notri.py. +""" +import argparse, gzip, hashlib, importlib.util, json, os, shutil, subprocess, sys, time +from fractions import Fraction +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NOTRI = HERE.parent / 'notri' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def dump(p, v): + p.parent.mkdir(parents=True, exist_ok=True); p.write_bytes(gzip.compress(enc(v), mtime=0)) + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def check_cells(cells): + for c in cells: + C = [[Fraction(q) for q in r] for r in c['coefficients']] + col = [None] * 6; row = [Fraction(1)] + [None] * 5 + for j in range(1, 6): col[j] = C[0][j] + col[0] = C[1][0] / (C[1][2] / col[2]) + for i in range(1, 6): row[i] = C[i][(i + 1) % 6] / col[(i + 1) % 6] + assert all(C[i][j] == row[i] * col[j] for i in range(6) for j in range(6) if i != j), ('rank-one cell', c['cell']) + idx = lambda s: int(s[1:]) + scaled = [] + for t, s, q in c['unit']: + assert Fraction(q) == 1 + if t[0] == 'x': assert s[0] == 'x'; q = col[idx(s)] / col[idx(t)] + elif s[0] == 'y': q = row[idx(t)] / row[idx(s)] + else: q = row[idx(t)] * col[idx(s)] + scaled.append([t, s, str(q)]) + assert scaled == c['scaled'], ('scaled gates', c['cell']) + R = {f'x{j}': {j: Fraction(1)} for j in range(6)}; R.update({f'y{i}': {} for i in range(6)}) + for t, s, q in scaled: + for k, x in list(R[s].items()): R[t][k] = R[t].get(k, 0) + Fraction(q) * x + for i in range(6): + assert {k: x for k, x in R[f'y{i}'].items() if x} == {j: C[i][j] for j in range(6) if j != i}, ('clean map', c['cell'], i) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--word-dir', type=Path, required=True, help='construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + ap.add_argument('--word-only', action='store_true', help='stop after the pinned scalar word (input to the layers)') + ap.add_argument('--id', default='k5', help='cell set: TRI-LEAVER-, CODED-CELLS-, REGROUP-LEAVER-, LEAVER-PINS-') + ap.add_argument('--record-pins', action='store_true', help='write LEAVER-PINS.json from this run instead of checking') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + pins = {} if a.record_pins else read(HERE / ('LEAVER-PINS-%s.json' % a.id)); got = {} + def pin(k, v): + got[k] = v + if not a.record_pins: assert pins[k] == v, ('pin', k, v, pins[k]) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + structural = a.main.resolve() / 'research/structural-gain/frontier-composition' + wd = a.word_dir.resolve() + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + # 0. cells + cells = read(HERE / ('CODED-CELLS-%s.json' % a.id)); check_cells(cells); print('PASS cells', [c['cell'] for c in cells], flush=True) + # 1. gauge-forward + shutil.copy(HERE / ('TRI-LEAVER-%s.json' % a.id), out / 'TRI.json'); shutil.copy(HERE / ('CODED-CELLS-%s.json' % a.id), out / 'CODED-CELLS.json') + env['XPARAM'] = str(NOTRI / 'PRIO6.json') + raw = out / 'raw' + run('gauge-forward', HERE / 'cgx_leaver.py', wd / 'hamming', raw, out / 'TRI.json') + word = raw / 'FULL-WORD.json.gz'; pin('raw_sha256', hashlib.sha256(enc(read(word))).hexdigest()) + # 2. port stages + chain = [parent / 'complex-local/static44/inputs/RAW504.json.gz', structural / 'global-replay/base/split-centres/FULL-WORD.json.gz', + wd / 'shadow-early/FULL-WORD.json.gz', structural / 'multicold-eight-word/FULL-WORD.json.gz', + wd / 'shadow-prefix/FULL-WORD.json.gz'] + for i, (b, c) in enumerate(zip(chain, chain[1:])): + t = out / ('port%d' % i) + run('port%d' % i, NOTRI / 'port_stage_x.py', '--shadow-input', b, '--shadow-output', c, '--input', word, + '--map', raw / 'HELPER-MAP.json', '--gk-dir', gk, '--out', t) + word = t / 'FULL-WORD.json.gz' + # 3. regroup + w = read(word); rg = {json.dumps(c['before']): c['after'] for c in read(HERE / ('REGROUP-LEAVER-%s.json' % a.id))['changes']} + n = 0 + for part in ('A', 'B'): + for i, e in enumerate(w[part]): + k = json.dumps(e) + if k in rg: w[part][i] = rg[k]; n += 1 + sys.path.insert(0, str(gk)); import gk_word as GW, gk_common as GC + GW.V = GC.V = 112; GW.DATA = GC.DATA = 7168 + H = GW.profile(w) + w['report'].update(local_profile={str(k): z for k, z in sorted(H.items()) if z}, local_rank_mass=sum(r * z for r, z in H.items())) + pin('regroup_count', n); dump(out / 'regroup/FULL-WORD.json.gz', w); pin('regroup_sha256', hashlib.sha256(enc(w)).hexdigest()) + # 4. HPE + h = load('upstream_hpe', up / 'code/build_hpe.py') + used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + (out / 'HPE-RECIPE.json').write_text(json.dumps(dict(changes=ch))) + pin('hpe_recipe_sha256', hashlib.sha256(enc(dict(changes=ch))).hexdigest()) + w = h.apply(w, ch); dump(out / 'hpe/FULL-WORD.json.gz', w) + # 5. cold44 + hm = set(read(raw / 'HELPER-MAP.json')['map'].values()) + env['EXTRAH'] = json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)) + if not a.record_pins: env['PAIRING_RANKS'] = json.dumps(pins['pairing_ranks']) + run('cold44', NOTRI / 'cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', wd / 'hamming', '--upstream-package', up) + pin('pairing_ranks', [b['pairing_rank'] for b in read(out / 'cold44/CONSTRUCTION.json')['blocks']]) + word = out / 'cold44/FULL-WORD.json.gz'; w = read(word) + pin('cold44_sha256', hashlib.sha256(enc(w)).hexdigest()); rep = w['report'] + pin('R', rep['R']); pin('local_profile', rep['local_profile']); pin('width_inventory', rep['width_inventory']) + print('PASS leaver scalar word', got['cold44_sha256'], flush=True) + if not a.word_only: + for k in ('XPARAM', 'EXTRAH', 'PAIRING_RANKS'): env.pop(k, None) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz', '--out', local) + pin('canonical_sha256', hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest()) + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + pin('program_sha256', {o: checks[o]['sha256'] for o in ('forward', 'backward')}) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + pin('clifford_recipes_sha256', hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest()) + if a.record_pins: (HERE / ('LEAVER-PINS-%s.json' % a.id)).write_text(json.dumps(got, indent=1) + '\n') + print('DONE', out, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/reproduce_leaver_chain.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/reproduce_leaver_chain.py new file mode 100644 index 0000000000..19fcd28f4d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/leaver/reproduce_leaver_chain.py @@ -0,0 +1,187 @@ +#!/usr/bin/env python3 +"""Rebuild the leaver stack on top of the leaver cell word: layers (NP, p6n), promotions, joint exchange and U8-style +hybrids, and the final word's native locals. + +Input: a fresh `construction/leaver/reproduce_leaver.py --word-only` output directory (raw/HELPER-MAP.json, regroup/, +cold44/; the cell word and its regroup word are pinned there by LEAVER-PINS.json). Each step uses an unchanged signed +builder with a LeaverSAT recipe (data only), and every intermediate word is pinned: + 1. pivot-swap: ../layers/build_pivot_swap.py with PIVOT-SWAP-.json on the regroup word (its own 30 controls). + 2. hpe: PR635's build_hpe.candidates (greedy, disjoint registers) must equal HPE-RECIPE-.json; build_hpe.apply. + The swapped HPE word is pinned by the cold-layer recipes' input_content_sha256. + 3. cold44-exact: ../notri/cold44x.py on the swapped HPE word (pairing ranks pinned to LEAVER-PINS); its cold ends, + premix and low tails must equal the unswapped leaver construction's. + 4. layers: PR635's build_cold_end.apply(HPE, COLD-LAYERS-RECIPE-NP-) -> NP word and (.., -P6N-) -> p6n word; + output shas pinned by the recipes. + 5. promotion: ../promo/build_promotion.py with PROMO-RECIPE-.json on the p6n word; ../promo/promo_controls.py. + 6. jx: ../jx/build_jx.py with RECIPE-X4-.json on the promoted word; all recipe controls rerun at their pins. + 7. hybrids: ../barch/build_tri.py with RECIPE-U8-.json on the jx word; ../barch/run_controls.py (all outcomes). + 8. frames: build_frames_lv.py (LeaverSAT2) applies FRAME-RECIPE-LV-.json (B/T frame changes, exact global frame + optimum) with ../promo/build_promotion.apply; scalar program unchanged; 3 pin controls; output pinned. + 8b. layer-end-controls: layer_end_controls_leaver.py (v2: the signed per-end controls with per-word reason re-pins + and declared not-applicable sites, each replaced by a same-class substitute mutant) on the p6n, promoted, jx and + hybrid words with LEC-REASON-PINS-STACK-.json, and on the re-framed final word with LEC-REASON-PINS-.json; + counts, not-applicable sites and the sha256 of each pins file pinned. + 9. native, ledgers, local-replay, wrappers, phases on the final word; canonical, programs, Clifford pinned. +All counts and native pins are in CHAIN-PINS-.json (--record-pins writes it from a run instead of checking; +a checking run requires its pins to equal the file exactly). +Apache-2.0. Driver by ColdWitness over LeaverSAT's frozen recipes and the signed builders. +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +C = HERE.parent +MUTANTS = ('drop_restore', 'restore_full', 'drop_preread', 'donation_after') + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def csha(p): return hashlib.sha256(gzip.decompress(Path(p).read_bytes())).hexdigest() + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--leaver-dir', type=Path, required=True, help='construction/leaver/reproduce_leaver.py --word-only output') + ap.add_argument('--hamming', type=Path, required=True, help='hamming/ of the construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + ap.add_argument('--id', default='k5', help='recipe set id: every recipe and pin file below is -') + ap.add_argument('--record-pins', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + lp = read(HERE / ('LEAVER-PINS-%s.json' % a.id)) + pins = {} if a.record_pins else read(HERE / ('CHAIN-PINS-%s.json' % a.id)); got = {} + + def pin(key, value): + got[key] = value + if not a.record_pins: assert pins[key] == value, (key, value, pins.get(key)) + + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE', 'LEC_REASON_PINS', 'SW4_PIN'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True, extra=None): + t = time.monotonic(); e = dict(env, **(extra or {})) + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=e, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + return (out / (label + '.log')).read_text() + + def lec(label, word, pins_name): + pf = HERE / ('%s-%s.json' % (pins_name, a.id)); pin(label + '_pins_sha256', hashlib.sha256(pf.read_bytes()).hexdigest()) + run(label, HERE / 'layer_end_controls_leaver.py', word, routing, out / label, + extra=dict(PR635_CODE=str(up / 'code'), LEC_REASON_PINS=str(pf))) + c = read(out / label / 'COLD-END-CONTROLS.json'); assert c['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' + pin(label, len(c['rejected'])); pin(label + '_not_applicable', {x['site']: x['reason'] for x in c['not_applicable']}) + + ld = a.leaver_dir.resolve() + assert hashlib.sha256(enc(read(ld / 'cold44/FULL-WORD.json.gz'))).hexdigest() == lp['cold44_sha256'], 'leaver cell word' + rg = ld / 'regroup/FULL-WORD.json.gz' + sw = read(HERE / ('PIVOT-SWAP-%s.json' % a.id)) + assert hashlib.sha256(enc(read(rg))).hexdigest() == lp['regroup_sha256'] == sw['input_content_sha256'], 'regroup word' + # 1. pivot swaps + run('pivot-swap', C / 'layers/build_pivot_swap.py', '--input', rg, '--recipe', HERE / ('PIVOT-SWAP-%s.json' % a.id), '--gk-dir', gk, '--out', out / 'swap') + w = read(out / 'swap/FULL-WORD.json.gz'); assert hashlib.sha256(enc(w)).hexdigest() == sw['output_content_sha256'], 'swap word' + # 2. HPE + h = load('upstream_hpe', up / 'code/build_hpe.py'); used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + assert ch == read(HERE / ('HPE-RECIPE-%s.json' % a.id))['changes'], 'HPE recipe' + w = h.apply(w, ch); (out / 'hpe').mkdir(); (out / 'hpe/FULL-WORD.json.gz').write_bytes(gzip.compress(enc(w), mtime=0)) + rnp, rp6 = read(HERE / ('COLD-LAYERS-RECIPE-NP-%s.json.gz' % a.id)), read(HERE / ('COLD-LAYERS-RECIPE-P6N-%s.json.gz' % a.id)) + assert hashlib.sha256(enc(w)).hexdigest() == rnp['input_content_sha256'] == rp6['input_content_sha256'], 'swapped HPE word' + # 3. cold44 on the swapped word: same ends, premix and tails + hm = set(read(ld / 'raw/HELPER-MAP.json')['map'].values()) + run('cold44-exact', C / 'notri/cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', a.hamming.resolve(), '--upstream-package', up, + extra=dict(EXTRAH=json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)), PAIRING_RANKS=json.dumps(lp['pairing_ranks']))) + new, old = read(out / 'cold44/RECIPE.json.gz'), read(ld / 'cold44/RECIPE.json.gz') + for key in ('premix', 'early_cleanup', 'cold_ends'): assert new[key] == old[key], ('swapped cold44 differs', key) + tail = len(new['early_cleanup']); assert new['cleanup'][:tail] == old['cleanup'][:tail], 'low tails' + # 4. NP and p6n layers + bce = load('upstream_cold', up / 'code/build_cold_end.py') + for name, r in (('np', rnp), ('p6n', rp6)): + lw = bce.apply(w, r); raw = enc(lw); assert hashlib.sha256(raw).hexdigest() == r['output_content_sha256'], (name, 'word') + (out / name).mkdir(); (out / name / 'FULL-WORD.json.gz').write_bytes(gzip.compress(raw, mtime=0)) + pin(name + '_profile', lw['report']['local_profile']) + p6n = out / 'p6n/FULL-WORD.json.gz'; lec('lec-p6n', p6n, 'LEC-REASON-PINS-STACK') + # 5. promotion + pr = HERE / ('PROMO-RECIPE-%s.json' % a.id) + run('promotion', C / 'promo/build_promotion.py', '--input', p6n, '--recipe', pr, '--out', out / 'promo', portable=False) + assert csha(out / 'promo/FULL-WORD.json.gz') == read(pr)['expected']['output_content_sha256'] + run('promo-controls', C / 'promo/promo_controls.py', '--input', p6n, '--recipe', pr, '--audit', C.parent / 'independent/audit_local.py', + '--out', out / 'PROMO-CONTROLS.json', portable=False) + pc = read(out / 'PROMO-CONTROLS.json'); assert pc['honest'] == 'PASS'; pin('promo_controls', pc['rejected']) + lec('lec-promo', out / 'promo/FULL-WORD.json.gz', 'LEC-REASON-PINS-STACK') + # 6. jx + xr = HERE / ('RECIPE-X4-%s.json' % a.id); rec = read(xr); inp = out / 'promo/FULL-WORD.json.gz' + (out / 'jx').mkdir(); jw = out / 'jx/FULL-WORD.json.gz' + run('jx', C / 'jx/build_jx.py', '--input', inp, '--recipe', xr, '--out', jw, portable=False) + assert csha(jw) == rec['expected']['output_content_sha256'] + for name, cc in sorted(rec['controls'].items()): + log = run('jx-control-' + name, C / 'jx/build_jx.py', '--input', inp, '--recipe', xr, '--control', name, portable=False) + if 'rejection_expected' in cc: assert 'CONTROL PINNED' in log, (name, log[-300:]) + else: assert ('OK ' + cc['expected_sha']) in log, (name, log[-300:]) + pin('jx_controls', sorted(rec['controls'])) + lec('lec-jx', jw, 'LEC-REASON-PINS-STACK') + # 7. hybrids + ur = HERE / ('RECIPE-U8-%s.json' % a.id); u = read(ur); (out / 'hyb').mkdir(); fw = out / 'hyb/FULL-WORD.json.gz' + run('hybrids', C / 'barch/build_tri.py', jw, ur, fw, portable=False) + assert csha(fw) == u['expect_sha256'] + run('hybrid-controls', C / 'barch/run_controls.py', jw, ur, C.parent / 'independent/audit_local.py', out / 'hybrid-controls', portable=False) + res = read(out / 'hybrid-controls/controls.json') + want = ['C0_identity', 'recipe', *MUTANTS] + [m + '@' + str(v['X']) for v in u.get('variants', []) for m in MUTANTS] + assert sorted(res) == sorted(want) and all(x['ok'] for x in res.values()), res + pin('hybrid_controls', sorted(want)) + lec('lec-hyb', fw, 'LEC-REASON-PINS-STACK') + # 8. frame re-optimisation (LeaverSAT2): exact global frame optimum of the hybrid word; scalar program unchanged + fr = HERE / ('FRAME-RECIPE-LV-%s.json' % a.id); frec = read(fr) + run('frames', HERE / 'build_frames_lv.py', fw, out / 'frames', fr, portable=False) + fw = out / 'frames/FULL-WORD.json.gz'; assert csha(fw) == frec['expected']['output_content_sha256'] + pin('frame_build_controls', len(read(out / 'frames/BUILD.json')['rejected_controls'])) + # 8b. layer-end controls on the re-framed final word (v2, not-applicable sites declared in LEC-REASON-PINS-): + # the frame re-optimisation lowers an entering-end tail frame to a dimension no helper_final frame has, so that + # site's 'end at another hyperplane' mutant is replaced by its same-class substitute. + lec('lec-frames', fw, 'LEC-REASON-PINS') + # 9. native locals of the final word + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', fw, '--routing', routing, '--out', local) + pin('canonical_sha256', hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest()) + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json'); pin('program_sha256', {o: checks[o]['sha256'] for o in ('forward', 'backward')}) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + pin('clifford_recipes_sha256', hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest()) + if a.record_pins: (out / ('CHAIN-PINS-%s.json' % a.id)).write_bytes((json.dumps(got, indent=1) + '\n').encode()) + else: assert got == pins, ('chain pins differ', sorted(set(got) ^ set(pins))) + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/PRIO6.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/PRIO6.json new file mode 100644 index 0000000000..069a7bf5a5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/PRIO6.json @@ -0,0 +1 @@ +{"prio": {"0,1,2,3": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "0,1,4,5": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "0,1,6,7": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "2,3,4,5": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "2,3,6,7": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]], "4,5,6,7": [["1", "0", "0", "1", "0", "0", "0", "0"], ["0", "-1/2", "1/2", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "0", "0", "0", "0"], ["0", "0", "0", "0", "1", "0", "0", "1"], ["0", "0", "0", "0", "0", "-1/2", "1/2", "0"], ["-1/2", "0", "0", "1/2", "-1/2", "0", "0", "1/2"]]}} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/cgx.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/cgx.py new file mode 100644 index 0000000000..08e80804eb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/cgx.py @@ -0,0 +1,469 @@ +# Round20 early-coordinate-center / own-Y variant, prepared for icekylinx +# with OpenAI Codex assistance. Apache-2.0. Scalar elementary-operation +# helpers below are retained from the attributed PR514 construct_partial.py. +# Adapted by OpenAI Codex for isolated structural research. +# Modified from PR425 by icekylinx with Codex assistance. +"""Full discovery word for Hamming packets with borrowed X and Y registers. + +This changes the scalar architecture. It is not accepted by the old restricted +gx interface: source bases may change until full-frame cleanup, and targets use +an explicitly inverted output basis. No supplier admission is asserted. +""" +import copy,gzip,json,math,time +import itertools as it +from collections import Counter,defaultdict +from fractions import Fraction as Q +from pathlib import Path + +import sys +INPUT=Path(sys.argv[1]);OUT=Path(sys.argv[2]);OUT.mkdir(parents=True,exist_ok=False);D=json.loads((INPUT/'PROTOTYPE.json').read_text()) +P=D['binary_ports'];R=D['root_lines'];v=120;h=9 +modules=json.load(gzip.open(INPUT/'PACKET-PROGRAMS.json.gz')) +# AtomScout: leaver-read K-triangles (schedule from atom1.py / rog.py CP-SAT) +TRI=json.loads(Path(sys.argv[3]).read_text()) +FULLT={(tuple(tr['p']),tr['e']) for tr in TRI['triangles']} +TRI_COORDS={t+8 for tr in TRI['triangles'] for t,_,_ in tr['reads']} +import os as _o +COPYL=json.loads(open(_o.environ['XPARAM']).read()).get('copyl',[]) if _o.environ.get('XPARAM') else [] +NH=504-3*len(FULLT)+len(COPYL) + +def basis(vectors): + b={} + for x in vectors: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def inside(a,b):return basis(a+b)==b +def hyper(p):return basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) +FULL=basis([1<=v,r)) + for col,s in enumerate(ids): + k=next(i for i in range(col,len(regs)) if rows[regs[i]].get(s,Q(0))) + swap(regs[k],regs[col],F) + scale(regs[col],1/rows[regs[col]][s],F) + for i in range(len(regs)): + if i!=col and rows[regs[i]].get(s,Q(0)):add(regs[i],regs[col],-rows[regs[i]][s],F) + assert all(rows[regs[i]]=={s:Q(1)} for i,s in enumerate(ids)) + M=[[Q(R[s][i]) for s in ids] for i in c] + def qr_rank(rs): + bs={} + for r in rs: + r=r.copy() + for i,b in sorted(bs.items()): + if r[i]:q=r[i];r=[x-q*y for x,y in zip(r,b)] + i=next((i for i,x in enumerate(r) if x),None) + if i is not None:q=r[i];bs[i]=[x/q for x in r] + return len(bs) + assert qr_rank(M)==4 + for rr0 in PRIO.get(",".join(map(str,c)),[])+PRIORITY[",".join(map(str,c))]["rows"]: + rr=list(map(Q,rr0)) + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + for i in range(8): + if len(M)==8:break + rr=[Q(i==j) for j in range(8)] + if qr_rank(M+[rr])>len(M):M.append(rr) + if len(M)==8:break + assert len(M)==8 + linear(regs,M,F) + for i,r in zip(c,regs): + assert rows[r]=={s:Q(R[s][i]) for s in ids} + block_totals[c,i]=r + +# All centers are complete while Y is still at zero. This is the crucial +# difference from an illegal early-own-Y prefix using the old center order. +centers=[] +for i in range(8): + regs=[block_totals[c,i] for c in sorted(blocks) if i in c] + F=hyper(P[frame[i]]);a=regs[0] + for b in regs[1:]:add(a,b,1,F) + centers.append(a) +centers += [frame[i] for i in range(8)] +center_frames=[cur[r] for r in centers] +assert list(map(len,center_frames))==[8]*8+[1]*8 +assert all(cur[v+t]==() for t in range(v)) + +phase=B +for t,(r,coef,F) in sorted(own_rows.items()): + if t in TRI_COORDS:continue + assert cur[r]==F + add(v+t,r,coef,F) +# requests are needed for TRI coefficients +requests=defaultdict(list) +for pid,pair in enumerate(pairs): + if not pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + requests[key1].append((t,-Q(mat[0][0],2))) + requests[key2].append((u,-Q(mat[0][1],2))) +reqcoef={t:(key,coef) for key,reqs in requests.items() for t,coef in reqs} +def face_info(c,p,eps): + z=blocks[c];keys=[(pp,ee) for pp in it.combinations(c,2) for ee in (-1,1)] + r_local,alpha=z['outputs'][keys.index((p,eps))] + j=[j for j in range(40,len(z['events'])) if z['events'][j][0]==r_local];assert len(j)==1 + return j[0],Q(alpha) +tri_join_counts=Counter();TRILOG=[] +lcopy={} +for s8 in COPYL: + r=s8+8;c=len(cur);cur.append(());rows.append({});shadow.append(None);add(c,r,1,cur[r]);lcopy[r]=c +BF={c:basis([P[x] for x in z['receipt']['source_lines']]) for c,z in blocks.items()} +HYB={(tuple(map(int,h[0])),tuple(map(int,h[1])),int(h[2])) for h in XP.get('hyb',[])} +HYBLOG=[] +def triread(t,blk,r,q): + F=basis(cur[v+t]+cur[r]);assert inside(F,hyper(P[t])),('TRI frame',t,blk,r,cur[v+t],cur[r],hyper(P[t]),[x for x in TRILOG if x[2]==r],HYBLOG) + tri_join_counts[len(F)]+=1;add(v+t,r,q,F);TRILOG.append([t,list(blk),r,str(q),list(F),list(cur[r])]) +for tr in TRI['triangles']: + p,eps=tuple(tr['p']),tr['e'] + hb={blk for _,blk,_ in map(lambda x:(x[0],tuple(x[1]),x[2]),tr['reads']) if (blk,p,eps) in HYB} + own=[];rest=[] + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];r0=r;r=lcopy.get(r,r) + key,coef=reqcoef[t];assert key[1]==p and key[2]==eps,(key,p,eps) + if blk==key[0]: + rr,c0,F0=own_rows[t];assert rr==r0;own.append((t,blk,r,c0)) + else: + j,alpha=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert loc in ev[:2] + rest.append((t,blk,loc,r,coef*alpha)) + if not hb: + # original interleaved order + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:q=own_rows[t][1] + else:j,alpha=face_info(blk,p,eps);q=coef*alpha + triread(t,blk,r,q) + continue + items=[] # (kind, t, reg, q, blk) + for t,blk,r,q in own:items.append(('r',t,r,q,blk,blk in hb)) + for blk in sorted(hb):items.append(('e',None,None,None,blk,True)) + done=set() + for t,blk,loc,r,q in rest: + if blk in hb: + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j] + ws=[x for x in rest if x[0]==t and x[1]==blk];assert len(ws)==2 and ws[0][4]==ws[1][4] and {ws[0][2],ws[1][2]}==set(ev[:2]) + if (t,blk) in done:continue + done.add((t,blk));items.append(('m',t,maps[blk][ev[0]],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + # Original read order with the two half reads collapsed into one M read at the first half's slot; the face event goes + # just before the first M read of its block; own reads of the M register are hoisted ahead of that event. + def evinfo(blk): + j,_=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert ev[2]==ev[3]==1,ev + mpb=maps[blk];return mpb[ev[0]],mpb[ev[1]],tuple(blocks[blk]['event_frames'][j]) + items=[] + seen=set() + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];key,coef=reqcoef[t] + if blk==key[0]:items.append(('r',t,r,own_rows[t][1],blk,blk in hb)) + else: + j,alpha=face_info(blk,p,eps);q=coef*alpha + if blk in hb: + if (t,blk) not in seen:seen.add((t,blk));continue + items.append(('m',t,evinfo(blk)[0],q,blk,True)) + else:items.append(('r',t,r,q,blk,False)) + for blk in sorted(hb): + k0=min(i for i,x in enumerate(items) if x[0]=='m' and x[4]==blk) + items.insert(k0,('e',None,None,None,blk,True)) + n=len(items) + def step(it,st): + k,t,r,q,blk,h=it;g=lambda x:st.get(x,cur[x]) + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(g(a_))+list(g(b_))) + return {a_:FF,b_:FF} if inside(FF,BF[blk]) else None + F=basis(list(g(v+t))+list(g(r))) + if not inside(F,hyper(P[t])):return None + if h and k=='r' and r==evinfo(blk)[1] and not inside(F,BF[blk]):return None + return {v+t:F,r:F} + def allowed(i,used): + k,t,r,q,blk,h=items[i] + evi=[j for j,x in enumerate(items) if x[0]=='e' and x[4]==blk] if h else [] + if k=='e':return all(j in used for j,x in enumerate(items) if x[0]=='r' and x[4]==blk and x[5] and x[2]==evinfo(blk)[0]) + if k=='m':return evi[0] in used + if k=='r' and h and r==evinfo(blk)[0]:return evi[0] not in used + return True + budget=[int(os.environ.get('HYBBUDGET','300000'))];memo=set() + def dfs(st,used,order): + if len(order)==n:return order + budget[0]-=1 + if budget[0]<0:return None + sig=(used,tuple(sorted(st.items()))) + if sig in memo:return None + memo.add(sig) + for i in range(n): + if i in used or not allowed(i,used):continue + d=step(items[i],st) + if d is None:continue + ns=dict(st);ns.update(d);res=dfs(ns,used|{i},order+[i]) + if res:return res + return None + import sys as _s;_s.setrecursionlimit(20000) + order=dfs({},frozenset(),[]) + assert order,('no feasible hybrid order',p,eps,sorted(hb),budget) + for i in order: + k,t,r,q,blk,h=items[i] + if k=='e': + a_,b_,EF=evinfo(blk);FF=basis(list(EF)+list(cur[a_])+list(cur[b_]));add(a_,b_,1,FF);HYBLOG.append([list(blk),list(p),eps,list(FF)]) + else:triread(t,blk,r,q) + +packets={} +for c,z in sorted(blocks.items()): + mp=maps[c] + keys=[(p,eps) for p in it.combinations(c,2) for eps in (-1,1)] + skipev={face_info(c,p,eps)[0] for p,eps in keys if (p,eps) in FULLT} + for j,(e,F) in enumerate(list(zip(z['events'],z['event_frames']))[40:]): + if j not in early[c] and 40+j not in skipev: + t,s,a,b=e;add(mp[t],mp[s],Q(a,b),tuple(F)) + for key,(r,alpha) in zip(keys,z['outputs']): + if tuple(key) in FULLT:skip();continue + a=mp[r];b=alloc();add(b,a,1,cur[a]) + consumers=sorted(d for d in blocks if d!=c and set(key[0])<=set(d)) + assert len(consumers)==2 + for target,r in zip(consumers,(a,b)):packets[c,key[0],key[1],target]=(r,Q(alpha)) + +# Both tetrahedra use the same partition. A selected key has exactly two +# selected Y loads and no ordinary M consumer. Supply its two raw halves in +# opposite orders and never form that M. Other keys retain the old M path. +second=[];first_join_counts=Counter() +for key,reqs in sorted(requests.items()): + assert len(reqs)==2 + c,p,eps=key + if (p,eps) in FULLT:continue + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d));a,b=ds + for j,(target,coef) in enumerate(sorted(reqs)): + first_source,second_source=(a,b) if j==0 else (b,a) + r,alpha=packets[first_source,p,eps,second_source] + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + first_join_counts[len(F)]+=1;add(v+target,r,coef*alpha,F) + r,alpha=packets[second_source,p,eps,c] + second.append((target,r,coef*alpha)) + +Ms={} +for c in sorted(blocks): + for p in it.combinations(c,2): + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d)) + for eps in (-1,1): + if (c,p,eps) in requests:continue + (a,alpha),(b,beta)=[packets[d,p,eps,c] for d in ds] + F=basis(cur[a]+cur[b]);add(a,b,beta/alpha,F) + Ms[c,p,eps]=(a,alpha) + +consumers=defaultdict(list) +for pid,pair in enumerate(pairs): + for key in pair['keys']:consumers[key].append(pid) +slots={} +for key,uses in sorted(consumers.items()): + assert len(uses)==2 + if key in requests: + assert all(pairs[i]['selected'] for i in uses) + continue + assert all(not pairs[i]['selected'] for i in uses) + a,alpha=Ms[key] + for j,pid in enumerate(uses): + if j==0:r=a + else:r=alloc();add(r,a,1,cur[a]) + slots[pid,key]=(r,alpha) +assert len(cur)-240==NH,len(cur)-240 + +selected_join_counts=Counter() +for target,r,coef in second: + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + selected_join_counts[len(F)]+=1;add(v+target,r,coef,F) +output_basis=[] +for pair in pairs: + if not pair['selected']:continue + (t,u),mat=pair['targets'],pair['matrix'] + F=basis(cur[v+t]+cur[v+u]);assert inside(F,hyper(P[t])) and inside(F,hyper(P[u])) + add(v+t,v+u,1,F);add(v+u,v+t,-Q(1,2),F) + z=-Q(2*mat[1][0],mat[0][0]);scale(v+u,z,F);output_basis.append((t,u,z)) + +for pid,pair in enumerate(pairs): + if pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + (a,alpha),(b,beta)=slots[pid,key1],slots[pid,key2] + F=basis(cur[a]+cur[b]);aa,ab=Q(mat[0][0])*alpha,Q(mat[0][1])*beta + ba,bb=Q(mat[1][0])*alpha,Q(mat[1][1])*beta + add(a,b,ab/aa,F);q=ba/(bb-ba*ab/aa);add(b,a,q,F) + add(v+t,a,-aa/2,hyper(P[t]));add(v+u,b,-(bb-ba*ab/aa)/2,hyper(P[u])) + +for t in range(v): + expected={s:-Q(G[t][s],2) for s in range(v) if s!=t and G[t][s] and s not in frame.values()} if t not in frame.values() else {} + assert rows[v+t]==expected,('side identity',t) + +scatter=[[Q(r[i],4) if t not in frame.values() else Q(0) for i in range(8)]+[Q(t==frame[i]) for i in range(8)] for t,r in enumerate(R)] +precondition=[] +for t,u,z in output_basis: + a,b=scatter[t].copy(),scatter[u].copy() + scatter[t]=[x/2-y/z for x,y in zip(a,b)] + scatter[u]=[x/2+y/z for x,y in zip(a,b)] + precondition.extend([['scale',v+u,(1/z).numerator,(1/z).denominator,[]], + ['add',v+u,v+t,1,2,[]],['add',v+t,v+u,-1,1,[]]]) +for r in range(len(cur)):climb(r,hyper(P[r-v]) if v<=r<2*v else FULL) +H[8]+=8;H[1]+=8 +assert sum(r*z for r,z in H.items())==9*NH+240*8+72,sum(r*z for r,z in H.items()) + +def apply(e,matrix): + if e[0]=='add': + _,t,s,a,b,*_=e;q=Q(a,b) + for j,x in list(matrix[s].items()): + z=matrix[t].get(j,Q(0))+q*x + if z:matrix[t][j]=z + else:matrix[t].pop(j,None) + else: + _,t,a,b,*_=e;q=Q(a,b);matrix[t]={j:q*x for j,x in matrix[t].items()} +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + e[-1]=list(FULL);return e +cut=[['add',v+t,centers[i],q.numerator,q.denominator,None] for t,row in enumerate(scatter) for i,q in enumerate(row) if q] +cleanup=[inverse(e) for e in reversed(A+B) if not v<=e[1]<2*v] +matrix=[{r:Q(1)} if r>k&1:a^=d[k] + if a: + k=a.bit_length()-1 + for j in d: + if d[j]>>k&1:d[j]^=a + d[k]=a + return tuple(d[k] for k in sorted(d,reverse=True)) +def inside(a,b):return basis(a+b)==b +def regs(e):return e[1:3] if e[0]=='add' else e[1:2] +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]=-e[3] + else:e[2],e[3]=e[3],e[2] + return e +def apply(e,M,mapping=None): + t=mapping[e[1]] if mapping is not None else e[1] + if e[0]=='add': + s=mapping[e[2]] if mapping is not None else e[2];q=Q(e[3],e[4]) + for j,a in M[s].items(): + x=M[t].get(j,Q(0))+q*a + if x:M[t][j]=x + else:M[t].pop(j,None) + else: + q=Q(e[2],e[3]);M[t]={j:q*a for j,a in M[t].items()} +def rref(A): + a=[list(map(Q,row)) for row in A];nr=len(a);nc=len(a[0]) if nr else 0;row=0;piv=[] + for c in range(nc): + k=next((i for i in range(row,nr) if a[i][c]),None) + if k is None:continue + a[row],a[k]=a[k],a[row];q=a[row][c];a[row]=[x/q for x in a[row]] + for i in range(nr): + if i!=row and a[i][c]:q=a[i][c];a[i]=[x-q*y for x,y in zip(a[i],a[row])] + piv.append(c);row+=1 + if row==nr:break + return a,piv +def rank(A):return len(rref(A)[1]) +def null(A,nc=None): + if A:a,piv=rref(A);nc=len(a[0]) + else:a=[];piv=[];assert nc is not None + free=[j for j in range(nc) if j not in piv];out=[[Q(0) for j in free] for i in range(nc)] + for k,c in enumerate(free):out[c][k]=Q(1) + for i,c in enumerate(piv): + for k,j in enumerate(free):out[c][k]=-a[i][j] + return out +def mm(A,B): + if not A:return [] + if not B:return [[] for row in A] + bt=list(zip(*B));return [[sum((a*b for a,b in zip(row,col)),Q(0)) for col in bt] for row in A] +def tr(A):return list(map(list,zip(*A))) +def inv(A): + n0=len(A);a,p=rref([row+[Q(i==j) for j in range(n0)] for i,row in enumerate(A)]) + assert p[:n0]==list(range(n0)) + return [row[n0:] for row in a] +def unit(q): + if not q:return False + a=abs(q.numerator);b=q.denominator + return not a&(a-1) and not b&(b-1) +def dyadic(q):return not q.denominator&(q.denominator-1) +def opadd(t,s,q,F):return ['add',t,s,q.numerator,q.denominator,list(F)] +def opscale(t,q,F):return ['scale',t,q.numerator,q.denominator,list(F)] +def eliminate(M,ids,F,skip=()): + """Return legal dyadic row operations taking an invertible sparse matrix to I.""" + skip=set(skip);ops=[];dim=len(M) + def add(i,j,q): + if q: + assert dyadic(q);e=opadd(ids[i],ids[j],q,F);ops.append(e) + for c,x in M[j].items(): + z=M[i].get(c,Q(0))+q*x + if z:M[i][c]=z + else:M[i].pop(c,None) + def scale(i,q): + if q!=1: + assert unit(q);ops.append(opscale(ids[i],q,F));M[i]={c:q*x for c,x in M[i].items()} + def swap(i,j): + if i!=j: + add(i,j,Q(1));add(j,i,Q(-1));add(i,j,Q(1));scale(j,Q(-1)) + for c in range(dim): + if c in skip: + assert M[c]=={c:Q(1)} and all(not M[i].get(c) for i in range(dim) if i!=c) + continue + cand=[i for i in range(c,dim) if i not in skip and M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + if k is None: + # Elementary Euclidean row additions reduce the pivot-column numerator gcd. + assert cand,('singular',c) + while k is None: + cand.sort(key=lambda i:abs(M[i][c]));a=cand[0] + b=next((i for i in cand[1:] if M[i][c]),None) + if b is None:raise ValueError(('non-dyadic determinant pivot',c,M[a][c])) + rat=M[b][c]/M[a][c];q=rat.numerator//rat.denominator + if q==0:q=1 if rat>0 else -1 + add(b,a,Q(-q));cand=[i for i in cand if M[i].get(c)] + k=next((i for i in cand if unit(M[i][c])),None) + swap(c,k);scale(c,1/M[c][c]) + for i in range(dim): + if i!=c and M[i].get(c): + assert i not in skip + add(i,c,-M[i][c]) + assert all(row=={i:Q(1)} for i,row in enumerate(M)) + return ops +def realize(A,ids,F): + M=[{j:Q(x) for j,x in enumerate(row) if x} for row in A] + return [inverse(e) for e in reversed(eliminate(M,ids,F))] +# Reconstruct the actual non-target map after the inherited HPE tail. +inherited_tail=[w['cleanup'][i][:-1]+[list(f)] for i,f in w.get('early_cleanup',[])] +mainN=[e for e in w['A']+w['B'] if not v<=e[1]<2*v] +M=[{i:Q(1)} for i in range(len(N))] +for e in mainN+inherited_tail:apply(e,M,ix) +MI=[{i:Q(1)} for i in range(len(N))] +for e in reversed(mainN+inherited_tail):apply(inverse(e),MI,ix) +cur={x:(w['ports'][x],) if xlen(ih):ih.append(j) + if len(ih)==r:break + assert len(ih)==r + endhs=[N[I[j]] for j in ih];endhidx=[hs.index(h) for h in endhs] + kerR=null(RR,NB);Qmat=[[Q(0) for j in range(NB)] for i in range(NB)] + for j,hj in enumerate(endhidx): + for i in range(NB):Qmat[i][hj]=qH[i][j] + other=[j for j in range(NB) if j not in endhidx] + for k,j in enumerate(other): + for i in range(NB):Qmat[i][j]=kerR[i][k] + assert rank(Qmat)==NB + pops=realize(Qmat,hs,());premix+=pops + T=[[Q(i==j)-sum((U[i][k]*L[k][j] for k in range(r)),Q(0)) for j in range(len(I))] for i in range(len(I))] + for k,i in enumerate(ih):T[i]=L[k] + tops=realize(T,[N[i] for i in I],F);tail+=tops + # Right-compose this initial helper premix; other blocks have disjoint H sets. + for row in Mafter: + vals=[row.get(h,Q(0)) for h in H] + if any(vals): + for hj in H:row.pop(hj,None) + for j,hj in enumerate(H): + z=sum((vals[i]*Qmat[i][j] for i in range(NB)),Q(0)) + if z:row[hj]=z + for e in tops:apply(e,Mafter,ix) + ends.update({h:list(F) for h in endhs}) + plans.append(dict(block=b,frame=list(F),registers=[N[i] for i in I],ends=endhs,pairing_rank=r,premix_gates=len(pops),tail_gates=len(tops),Q=[[str(x) for x in row] for row in Qmat],T=[[str(x) for x in row] for row in T])) + print('BLOCK',b,'ends',endhs,'Qops',len(pops),'Tops',len(tops),flush=True) +# Check actual post-tail isolation before constructing the high-frame inverse. +allends=set(ends)|set(map(int,w.get('helper_final',{}))) +for h in allends: + j=ix[h];assert Mafter[j]=={j:Q(1)},('row not isolated',h,Mafter[j]);assert all(not row.get(j) for i,row in enumerate(Mafter) if i!=j),('column not isolated',h) +print('EXACT_ISOLATED',len(ends),'new;',len(allends),'total',round(time.monotonic()-t0,3),flush=True) +fullops=eliminate(copy.deepcopy(Mafter),N,F9,[ix[x] for x in allends]) +print('FULL_INVERSE',len(fullops),round(time.monotonic()-t0,3),flush=True) +# Cancel new cold-axis target responses inside A, after their wrappers. +Dirt=[({h:Q(1)} if h in ends else {}) for h in range(n)] +for e in premix+w['A']+w['cut']+w['B']:apply(e,Dirt) +for e in w['precondition']:apply(e,Dirt) +postcomp=[opadd(y,h,-a,()) for y in range(v,2*v) for h,a in sorted(Dirt[y].items()) if a] +assert all(h in ends for e in postcomp for h in [e[2]]) +new=copy.deepcopy(w);new['A']=postcomp+premix+w['A'];new['cleanup']=inherited_tail+tail+fullops +new['early_cleanup']=[[i,e[-1]] for i,e in enumerate(inherited_tail+tail)] +new['helper_final'].update({str(h):f for h,f in ends.items()}) +new['refactored_cleanup']={'kind':'source_branch_gauge_and_retired_completion_cold44','new_cold_ends':len(ends),'exact_non_target_isolation_checked':True,'high_inverse':'dyadic_sparse_Gauss_Jordan'} +# Derive paid profile by subtracting and adding literal frame-chain counts. +spec=importlib.util.spec_from_file_location('upstream_cold_end',args.upstream_package/'code/build_cold_end.py') +profile_module=importlib.util.module_from_spec(spec);spec.loader.exec_module(profile_module) +oldprof,_=profile_module.chain_profile(w);newprof,_=profile_module.chain_profile(new) +prof=Counter({int(k):z for k,z in w['report']['local_profile'].items()});prof.subtract(oldprof);prof.update(newprof) +widths=Counter(len(basis(new['helper_final'].get(str(h),F9)))-len(basis(new.get('start_extra',{}).get(str(h),[]))) for h in range(224,n)) +new['report'].update(local_profile={str(k):z for k,z in sorted(prof.items()) if z},local_rank_mass=sum(k*z for k,z in prof.items()),width_inventory={str(k):z for k,z in sorted(widths.items()) if z},status='EXACT_COLD44_CONSTRUCTED_PENDING_INDEPENDENT_AUDIT') +raw=json.dumps(new,sort_keys=True,separators=(',',':')).encode();sha=hashlib.sha256(raw).hexdigest();(OUT/'FULL-WORD.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +recipe={'premix':postcomp+premix,'cleanup':new['cleanup'],'early_cleanup':new['early_cleanup'],'cold_ends':{str(h):f for h,f in ends.items()},'refactored_cleanup':new['refactored_cleanup'],'output_content_sha256':sha} +(OUT/'RECIPE.json.gz').write_bytes(gzip.compress(json.dumps(recipe,sort_keys=True,separators=(',',':')).encode(),mtime=0)) +receipt=dict(input_content_sha256=hashlib.sha256(gzip.decompress(WPATH.read_bytes())).hexdigest(),output_content_sha256=sha,blocks=plans,new_cold_ends=len(ends),all_low_ended_helpers=len(allends),premix_gates=len(premix),postwrapper_compensation_gates=len(postcomp),tail_gates=len(tail),inherited_tail_gates=len(inherited_tail),full_inverse_gates=len(fullops),profile=new['report']['local_profile'],width_inventory=new['report']['width_inventory'],rank_mass=new['report']['local_rank_mass'],seconds=time.monotonic()-t0) +(OUT/'CONSTRUCTION.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(json.dumps({k:z for k,z in receipt.items() if k!='blocks'},indent=2),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/port_stage_x.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/port_stage_x.py new file mode 100644 index 0000000000..81ac65ceff --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/port_stage_x.py @@ -0,0 +1,125 @@ +"""Port one 504-helper construction stage onto the K-triangle word. Apache-2.0. Prepared with Claude Code assistance. + +usage: build_port_stage.py --shadow-input I4 --shadow-output O4 --input I8 --map HELPER-MAP.json --gk-dir GK --out DIR + +The shadow pair (I4 -> O4) is one stage of a 504-helper chain, rebuilt in the same run from pinned sources. I8 is the +K-triangle word at the matching point of its own chain, and HELPER-MAP.json is the 504 -> R register map written by +construct_k_triangle.py. Registers below 448 keep their ids; the removed packet copies have no image. + +The port does the following: +* It renumbers I4 and O4 through the map and drops their gates that touch a removed register. +* It matches gates by scalar operation (the gate without its frame), aligning I4 with O4 and I4 with I8 separately. +* It builds O8 in O4 gate order: + * each matched gate is taken from I8, with O4's frame wherever the stage changed that frame; + * each gate the stage introduced is taken from O4; + * each I8-only gate (the K-triangle reads) stays after the O4 image of its I8 predecessor. +* It replays the stage's entrance (start_extra) and target_levels changes. +* It rebuilds the cleanup with the inherited inverse rule. + +The constructor is a search transfer only. The verifier certifies the output independently: the generalised native +audit (exact forward and inverse replay of every column, native frame chains) runs on every ported word, and every +input and output is pinned by content hash.""" +import argparse, copy, difflib, gzip, hashlib, json, sys +from collections import Counter +from pathlib import Path + +assert __debug__, 'Assertions required' +FULL = [256, 128, 64, 32, 16, 8, 4, 2, 1] + + +def regs(g): return (g[1], g[2]) if g[0] == 'add' else (g[1],) + + +def key(g): return json.dumps(g[:-1]) + + +def inverse(e): + e = copy.deepcopy(e) + if e[0] == 'add': e[3] *= -1 + else: e[2], e[3] = e[3], e[2] + e[-1] = list(FULL); return e + + +def align(xs, ys): + """index map xs -> ys over runs of equal scalar operations""" + sm = difflib.SequenceMatcher(None, [key(g) for g in xs], [key(g) for g in ys], autojunk=False) + return {i1 + k: j1 + k for tag, i1, i2, j1, j2 in sm.get_opcodes() if tag == 'equal' for k in range(i2 - i1)} + + +def transfer_section(I4, O4, I8, stats): + a, b = align(I4, O4), align(I4, I8) + o2i = {j: i for i, j in a.items()}; i8from4 = {j: i for i, j in b.items()} + anchor = {j8: a[i4] for j8, i4 in i8from4.items() if i4 in a} + pending, last = {}, -1 + for j8, g in enumerate(I8): + if j8 in anchor: last = anchor[j8] + elif j8 not in i8from4: pending.setdefault(last, []).append(copy.deepcopy(g)); stats['kept_own'] += 1 + else: stats['dropped_by_stage'] += 1 + out = list(pending.get(-1, [])) + for k, g in enumerate(O4): + if k in o2i: + i4 = o2i[k] + if i4 in b: + g8 = copy.deepcopy(I8[b[i4]]) + if I4[i4][-1] != g[-1]: g8[-1] = copy.deepcopy(g[-1]); stats['frames_changed'] += 1 + out.append(g8) + else: + out.append(copy.deepcopy(g)); stats['introduced'] += 1 + out.extend(pending.get(k, [])) + return out + + +def main(): + ap = argparse.ArgumentParser() + for k in ('--shadow-input', '--shadow-output', '--input', '--map', '--gk-dir', '--out'): ap.add_argument(k, type=Path, required=True) + a = ap.parse_args(); assert not a.out.exists() + sys.path.insert(0, str(a.gk_dir)); import gk_word as G, gk_common as C + G.V = C.V = 112 + rd = lambda p: json.loads(gzip.decompress(p.read_bytes())) + enc = lambda x: json.dumps(x, sort_keys=True, separators=(',', ':')).encode(); sha = lambda x: hashlib.sha256(x).hexdigest() + I4, O4, I8 = rd(a.shadow_input), rd(a.shadow_output), rd(a.input) + fm = {int(k): int(v) for k, v in json.loads(a.map.read_text())['map'].items()} + assert all(fm[k] == k for k in fm if k < 448), 'only ids >= 448 may move' + R = I8['report']['R']; EXTRA = set(range(224 + R)) - set(fm.values()); assert len(set(fm.values())) == len(fm) and set(fm.values()) <= set(range(224 + R)), 'map is not injective into the K-triangle registers' + assert I4['report'].get('R', 504) == 504 and len(fm) + len(set(range(728)) - set(fm)) == 728 + rem = set(range(728)) - set(fm) + rn = lambda r: fm[r] + touches = lambda g: any(r in rem for r in regs(g)) + def rg(g): + g = copy.deepcopy(g); g[1] = rn(g[1]) + if g[0] == 'add': g[2] = rn(g[2]) + return g + def rn_word(w): + w = copy.deepcopy(w) + for s in ('A', 'B', 'cut', 'precondition', 'cleanup'): + if s in w: w[s] = [rg(g) for g in w[s] if not touches(g)] + for k in ('start_extra', 'helper_final'): + if k in w: w[k] = {str(rn(int(r))): f for r, f in w[k].items() if int(r) not in rem} + return w + I4r, O4r = rn_word(I4), rn_word(O4) + O8 = copy.deepcopy(I8); stats = {s: Counter() for s in ('A', 'B')} + for s in ('A', 'B'): O8[s] = transfer_section(I4r[s], O4r[s], I8[s], stats[s]) + for k in ('start_extra', 'target_levels'): + x, y = I4r.get(k, {}), O4r.get(k, {}); d = dict(I8.get(k, {})) + for r in set(x) | set(y): + if x.get(r) != y.get(r): + if r in y: d[r] = y[r] + else: d.pop(r, None) + if k in O4 or k in I8: O8[k] = dict(sorted(d.items(), key=lambda kv: int(kv[0]))) + for k in O4: + if k not in ('A', 'B', 'cleanup', 'report', 'start_extra', 'target_levels', 'cut', 'precondition'): + assert O4r[k] == I4r[k], 'stage changed an unported field: ' + k + O8['cleanup'] = [inverse(e) for e in reversed(O8['A'] + O8['B']) if not 112 <= e[1] < 224] + H = G.profile(O8) + ws = [9 - len(G.basis(O8['start_extra'].get(str(224 + h), []))) for h in range(R)] + O8['report'] = dict(I8['report'], local_profile={str(k): v for k, v in sorted(H.items())}, local_rank_mass=sum(k * v for k, v in H.items()), + width_inventory={str(k): v for k, v in sorted(Counter(ws).items())}) + a.out.mkdir(parents=True); (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(enc(O8), mtime=0)) + receipt = dict(status='PORTED_STAGE_PENDING_NATIVE_AUDIT', R=R, removed_504_helpers=sorted(rem), + shadow_input_content_sha256=sha(enc(I4)), shadow_output_content_sha256=sha(enc(O4)), input_content_sha256=sha(enc(I8)), + output_content_sha256=sha(enc(O8)), sections={s: dict(v) for s, v in stats.items()}, local_profile=O8['report']['local_profile'], + scope='Transfer construction only; exactness, frame chains and profile are certified by the native audit run on the output.') + (a.out / 'PORT-STAGE.json').write_text(json.dumps(receipt, indent=2, sort_keys=True) + '\n', newline='\n'); print(json.dumps(receipt, indent=2)) + + +main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/reproduce_notri.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/reproduce_notri.py new file mode 100644 index 0000000000..a85f2acf15 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/notri/reproduce_notri.py @@ -0,0 +1,166 @@ +#!/usr/bin/env python3 +"""Rebuild the no-triangle gauge44 word (R = 504) and its native locals. + +The no-triangle word is #645's gauge44 chain with none of the four (p,-1) K-triangles. In the six K-blocks +{0,1,2,11,12,13}, the completion priority is extended by the 6-row list PRIO6.json, the list blocks 3-10 already use. +Each block then pairs at rank 4, giving 56 rank-four cold ends instead of 44 (PartialK). + +Input: a fresh `construction/reproduce.py --until word` output directory. Its shadow-early and shadow-prefix words and +its hamming inputs are pinned by reproduce.py itself. Steps, each checked exactly: + 1. gauge-forward: cgx.py, #645's construct_gauge_xcentre.py generalised by PartialK. The extra rows come from XPARAM, + and the K-triangle schedule comes from the TRI file. Run on the triangle set {} with XPARAM = PRIO6.json. + 2. port0-3: port_stage_x.py, PR635's build_port_stage.py with the helper map allowed to be injective rather than onto. + With R = 504 and no triangles, the map is onto again. + 3. regroup: PR635's k492 frame-regroup changes, applied where their `before` gate occurs. For this word none occurs, + and that count (0) is pinned. + 4. hpe: PR635's build_hpe.candidates, taken greedily with disjoint registers, and build_hpe.apply. 46 changes, pinned. + 5. cold44: cold44x.py, #645's build_gauge_cold44.py generalised by PartialK to blocks whose helper list includes the + helpers outside the 224+16b ranges (EXTRAH). 56 cold ends; the 14 pairing ranks are pinned to [4]*14 inside cold44x (PAIRING_RANKS) and rechecked here. The output word content sha256 is pinned (3e99ba77...). + 6. native, ledgers, local-replay, wrappers, phases: PR635's native local programs, as in reproduce.py. +--control-g44 instead runs steps 1-5 with #645's four triangles and no XPARAM. It must reproduce #645's pinned gauge44 +cold44 word (78c7aada...), the same word #645's own reproduce.py builds. This shows the generalised scripts reduce to +#645's constructors. +Apache-2.0. Driver by ColdWitness from PartialK's variant.py; constructors credited above. +""" +import argparse, gzip, hashlib, importlib.util, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +NOTRI_SHA = '3e99ba778ab8a97853f50912776247802b529439937176363f6c42786163b1f9' +G44_SHA = '78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290' +# native-local pins (the strict locals the SPEC was frozen against: PartialK runs/none_p6/local) +CANONICAL_SHA = '4265a3bb7f9b46967dfadfca5f2cc1f5b3e6e8681f16c02590f1b9430c013637' +PROGRAM_SHA = {'forward': '0afda28699e15cf5a5a17aee5475ac608c9fb68b15766d463b93ec8e2df4ae85', + 'backward': '5be6cb4ea7a1da36d7bbe7eb2392873c058dd3cbb3cc2eeadd55ecca9310ca8a'} +CLIFFORD_SHA = '4b5789e43e04d71f02c2d480450ec0b354007d9cf523bda76c7345730806344b' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() + + +def dump(p, v): + p.parent.mkdir(parents=True, exist_ok=True); p.write_bytes(gzip.compress(enc(v), mtime=0)) + + +def load(name, path): + s = importlib.util.spec_from_file_location(name, path); m = importlib.util.module_from_spec(s); s.loader.exec_module(m); return m + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--word-dir', type=Path, required=True, help='construction/reproduce.py --until word output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--control-g44', action='store_true', help='rebuild #645 gauge44 (4 triangles) instead; word only') + ap.add_argument('--skip-phases', action='store_true') + ap.add_argument('--word-only', action='store_true', help='stop after the pinned scalar word (input to construction/layers_np)') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552'; gk = parent / 'complex-local/static44/gk' + structural = a.main.resolve() / 'research/structural-gain/frontier-composition' + wd = a.word_dir.resolve() + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET'): env.pop(k, None) + steps = [] + + def run(label, script, *args): + t = time.monotonic() + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call([sys.executable, '-B', str(src / 'code/run_portable.py'), str(script), *map(str, args)], + env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + # 1. gauge-forward on the chosen K-triangle set + tri = read(up / 'data/TRI-SCHEDULE.json') + if not a.control_g44: + tri = dict(full_pairs=tri['full_pairs'], triangles=[]) + env['XPARAM'] = str(HERE / 'PRIO6.json') + (out / 'TRI.json').write_text(json.dumps(tri)) + raw = out / 'raw' + run('gauge-forward', HERE / 'cgx.py', wd / 'hamming', raw, out / 'TRI.json') + word = raw / 'FULL-WORD.json.gz' + # 2. port stages (same chain as reproduce.py) + chain = [parent / 'complex-local/static44/inputs/RAW504.json.gz', structural / 'global-replay/base/split-centres/FULL-WORD.json.gz', + wd / 'shadow-early/FULL-WORD.json.gz', structural / 'multicold-eight-word/FULL-WORD.json.gz', + wd / 'shadow-prefix/FULL-WORD.json.gz'] + for i, (b, c) in enumerate(zip(chain, chain[1:])): + t = out / ('port%d' % i) + run('port%d' % i, HERE / 'port_stage_x.py', '--shadow-input', b, '--shadow-output', c, '--input', word, + '--map', raw / 'HELPER-MAP.json', '--gk-dir', gk, '--out', t) + word = t / 'FULL-WORD.json.gz' + # 3. PR635 frame regroup where its `before` gate occurs + w = read(word); rg = {json.dumps(c['before']): c['after'] for c in read(up / 'data/recipes/k492-jp8-frame_regroup.json')['changes']} + n = 0 + for part in ('A', 'B'): + for i, e in enumerate(w[part]): + k = json.dumps(e) + if k in rg: w[part][i] = rg[k]; n += 1 + sys.path.insert(0, str(gk)); import gk_word as GW, gk_common as GC + GW.V = GC.V = 112; GW.DATA = GC.DATA = 7168 + H = GW.profile(w) + w['report'].update(local_profile={str(k): z for k, z in sorted(H.items()) if z}, local_rank_mass=sum(r * z for r, z in H.items())) + assert n == (24 if a.control_g44 else 0), ('regroup count', n) + dump(out / 'regroup/FULL-WORD.json.gz', w) + # 4. HPE: PR635's candidates, greedy with disjoint registers + h = load('upstream_hpe', up / 'code/build_hpe.py') + used, ch = set(), [] + for c in h.candidates(w): + rs = set(h.regs(w['cleanup'][c['cleanup_index']])) + if rs & used: continue + used |= rs; ch.append(c) + assert len(ch) == (34 if a.control_g44 else 46), ('hpe count', len(ch)) + (out / 'HPE-RECIPE.json').write_text(json.dumps(dict(changes=ch))) + w = h.apply(w, ch); dump(out / 'hpe/FULL-WORD.json.gz', w) + # 5. cold44 (generalised): helpers outside the 224+16b ranges join their blocks + hm = set(read(raw / 'HELPER-MAP.json')['map'].values()) + env['EXTRAH'] = json.dumps(sorted(set(range(224, 224 + w['report']['R'])) - hm)) + ranks = [2, 2, 2, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2] if a.control_g44 else [4] * 14 + env['PAIRING_RANKS'] = json.dumps(ranks) # cold44x asserts every block's pairing rank + run('cold44', HERE / 'cold44x.py', '--input', out / 'hpe/FULL-WORD.json.gz', '--out', out / 'cold44', + '--hamming', wd / 'hamming', '--upstream-package', up) + assert [b['pairing_rank'] for b in read(out / 'cold44/CONSTRUCTION.json')['blocks']] == ranks, 'pairing ranks' + word = out / 'cold44/FULL-WORD.json.gz'; w = read(word) + got = hashlib.sha256(enc(w)).hexdigest() + assert got == (G44_SHA if a.control_g44 else NOTRI_SHA), ('word', got) + rep = w['report'] + if a.control_g44: + print('PASS control: #645 gauge44 word reproduced', got, flush=True); return + assert rep['R'] == 504 and rep['local_rank_mass'] == 5674 + assert rep['local_profile'] == {'1': 2506, '2': 336, '3': 472, '4': 184, '5': 56, '8': 8}, rep['local_profile'] + assert rep['width_inventory'] == {'4': 64, '5': 48, '7': 46, '8': 114, '9': 232}, rep['width_inventory'] + print('PASS no-triangle scalar word', got, flush=True) + if a.word_only: + return + # 6. native locals (PR635, as in reproduce.py) + for k in ('XPARAM', 'EXTRAH', 'PAIRING_RANKS'): env.pop(k, None) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz', '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == CANONICAL_SHA, 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in PROGRAM_SHA.items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == CLIFFORD_SHA, 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/LOCAL-PINS-p6n-k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/LOCAL-PINS-p6n-k4.json new file mode 100644 index 0000000000..c43b391a43 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/LOCAL-PINS-p6n-k4.json @@ -0,0 +1,11 @@ +{ + "word": "P6k4", + "layer_controls": 95, + "promo_controls": 11, + "canonical_sha256": "c0c5734a2eb6984ccd1e314dbcea2a6971b9708e5f611aa8912fcf47f02de61d", + "program_sha256": { + "forward": "6cfedac02e899df7fa50a3e38845982a4e9dbc866e9decc4052e011532bdb30f", + "backward": "207d9352aeea7d56a6da865745a1ad756e28531fbf9bcb0cd54950aac7270381" + }, + "clifford_recipes_sha256": "1c1d037d602b503b35f01a65d0ccc07ac63fde9df501b0a61e3e189a44a779de" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/PROMO-RECIPE-p6n-k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/PROMO-RECIPE-p6n-k4.json new file mode 100644 index 0000000000..3f336c07ea --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/PROMO-RECIPE-p6n-k4.json @@ -0,0 +1,971 @@ +{ + "input_content_sha256": "34b683fa08f054fe725704ec15b1c8da42f846430999d14d0cae0fcd42296fe2", + "groups": [ + 627, + 629, + 630, + 631, + 635, + 637, + 638, + 639, + 651, + 653, + 654, + 655, + 659, + 661, + 662, + 663 + ], + "entrances": { + "627": [ + 408, + 80, + 40, + 6, + 1 + ], + "629": [ + 408, + 80, + 40, + 6, + 1 + ], + "630": [ + 408, + 80, + 40, + 6, + 1 + ], + "631": [ + 408, + 80, + 40, + 6, + 1 + ], + "635": [ + 272, + 144, + 96, + 6, + 1 + ], + "637": [ + 272, + 144, + 96, + 6, + 1 + ], + "638": [ + 272, + 144, + 96, + 6, + 1 + ], + "639": [ + 272, + 144, + 96, + 6, + 1 + ], + "651": [ + 390, + 68, + 34, + 24, + 1 + ], + "653": [ + 390, + 68, + 34, + 24, + 1 + ], + "654": [ + 390, + 68, + 34, + 24, + 1 + ], + "655": [ + 390, + 68, + 34, + 24, + 1 + ], + "659": [ + 298, + 170, + 102, + 30, + 1 + ], + "661": [ + 298, + 170, + 102, + 30, + 1 + ], + "662": [ + 298, + 170, + 102, + 30, + 1 + ], + "663": [ + 298, + 170, + 102, + 30, + 1 + ] + }, + "gate_frames": [ + [ + "B", + 420, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 421, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 422, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 423, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 424, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 425, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 426, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 427, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 428, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 429, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 430, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 431, + [ + 298, + 170, + 102, + 30 + ], + [ + 298, + 170, + 102, + 30, + 1 + ] + ], + [ + "B", + 432, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 433, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 434, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 435, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 436, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 437, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 438, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 439, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 440, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 441, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 442, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 443, + [ + 390, + 68, + 34, + 24 + ], + [ + 390, + 68, + 34, + 24, + 1 + ] + ], + [ + "B", + 444, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 445, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 446, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 447, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 448, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 449, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 450, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 451, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 452, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 453, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 454, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 455, + [ + 408, + 80, + 40, + 6 + ], + [ + 408, + 80, + 40, + 6, + 1 + ] + ], + [ + "B", + 456, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 457, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 458, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 459, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 460, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 461, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 462, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 463, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 464, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 465, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 466, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ], + [ + "B", + 467, + [ + 272, + 144, + 96, + 6 + ], + [ + 272, + 144, + 96, + 6, + 1 + ] + ] + ], + "expected": { + "output_content_sha256": "0390ec65dc4d47df1887aabdc2ec5b6ddea3cfc8e65582873fdfeba81d100073", + "local_profile": { + "1": 2572, + "2": 326, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 80, + "5": 32, + "7": 54, + "8": 122, + "9": 216 + } + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/build_promotion.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/build_promotion.py new file mode 100644 index 0000000000..f1daad34c2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/build_promotion.py @@ -0,0 +1,109 @@ +"""Entrance promotions E4 -> E5 of whole kernel groups: deterministic constructor. Apache-2.0. +BlockInvert (Claude Code research agent) for the gauge44 lineage. + +usage: build_promotion.py --input FULL-WORD.json.gz --recipe PROMO-RECIPE.json --out DIR + +The recipe is data only: + input_content_sha256 sha256 of the decompressed input word (pinned); + entrances {helper: frame vectors}: new start frames (each strictly contains the old one); + gate_frames [[section, index, old frame, new frame], ...]: section 'A' / 'B' (main gates) or 'T' + (early_cleanup entry index); the old frame must match the input exactly (as a span); + expected output_content_sha256, local_profile, width_inventory. +The scalar program is unchanged (only frame annotations and start frames move), so the endpoint, the +zero-target-response entrance condition and every cone are those of the input; the independent audit +(audit_local.py) re-checks all of them, plus monotone chains and the recomputed profile/widths.""" +import argparse, gzip, hashlib, json +from collections import Counter +from pathlib import Path + + +def span(vs): + p = {} + for x in vs: + for k in sorted(p, reverse=True): + if x >> k & 1: x ^= p[k] + if x: + k = x.bit_length() - 1 + for j in list(p): + if p[j] >> k & 1: p[j] ^= x + p[k] = x + return tuple(p[k] for k in sorted(p, reverse=True)) + + +def regs(e): return [e[1]] + ([e[2]] if e[0] == 'add' else []) + + +def chain_profile(w): + """paid climbs of the A, B, early-tail and final chains, target ends included (centre descents unchanged, not counted).""" + v, R = w['report']['v'], w['report']['R']; n = 2*v + R + cur = [() for _ in range(n)] + for i, p in enumerate(w['ports']): cur[i] = span([p]) + for r, f in w.get('start_extra', {}).items(): cur[int(r)] = span(f) + prof = Counter() + + def climb(r, F): + assert span(list(cur[r]) + list(F)) == F, ('nonmonotone', r) + if len(F) > len(cur[r]): prof[len(F) - len(cur[r])] += 1 + cur[r] = F + for part in ('A', 'B'): + for e in w[part]: + for r in regs(e): climb(r, span(e[-1])) + for i, f in w.get('early_cleanup', []): + for r in regs(w['cleanup'][i]): climb(r, span(f)) + full = span([1 << i for i in range(9)]) + final = {int(r): span(f) for r, f in w.get('helper_final', {}).items()} + for r in range(n): + if v <= r < 2*v: # targets end at their port hyperplane (as in the independent audit); counted on both sides + climb(r, span([x for x in range(1, 512) if (x & w['ports'][r - v]).bit_count() % 2 == 0])); continue + climb(r, final.get(r, full)) + return prof + + +def widths(w): + v, R = w['report']['v'], w['report']['R']; full = [1 << i for i in range(9)] + return Counter(len(span(w['helper_final'].get(str(r), full))) - len(span(w['start_extra'].get(str(r), []))) + for r in range(2*v, 2*v + R)) + + +def apply(w, r): + nw = json.loads(json.dumps(w)) + for h, F in r['entrances'].items(): + assert h in nw['start_extra'], ('not an entering helper', h) + old, new = span(nw['start_extra'][h]), span(F) + assert len(new) > len(old) and span(list(old) + list(new)) == new, ('not a promotion', h) + nw['start_extra'][h] = list(new) + for sec, i, old, new in r['gate_frames']: + if sec in ('A', 'B'): + assert span(nw[sec][i][-1]) == span(old), ('gate frame mismatch', sec, i) + nw[sec][i][-1] = list(span(new)) + else: + assert sec == 'T' and span(nw['early_cleanup'][i][1]) == span(old), ('tail frame mismatch', i) + nw['early_cleanup'][i][1] = list(span(new)) + old_prof, new_prof = chain_profile(w), chain_profile(nw) + lp = Counter({int(k): c for k, c in w['report']['local_profile'].items()}); lp.subtract(old_prof); lp.update(new_prof) + assert min(lp.values()) >= 0 + inv = widths(nw) + rep = dict(w['report']) + rep['local_profile'] = {str(k): c for k, c in sorted(lp.items()) if c} + rep['local_rank_mass'] = sum(k*c for k, c in lp.items()) + rep['width_inventory'] = {str(k): c for k, c in sorted(inv.items()) if c} + nw['report'] = rep + return nw + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(); ap.add_argument('--input', type=Path, required=True) + ap.add_argument('--recipe', type=Path, required=True); ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + raw = gzip.decompress(a.input.read_bytes()); r = json.loads(a.recipe.read_text()) + assert hashlib.sha256(raw).hexdigest() == r['input_content_sha256'], 'input word pin' + nw = apply(json.loads(raw), r) + data = json.dumps(nw, separators=(',', ':')).encode() + x = r['expected'] + assert nw['report']['local_profile'] == x['local_profile'], 'profile pin' + assert nw['report']['width_inventory'] == x['width_inventory'], 'width pin' + assert hashlib.sha256(data).hexdigest() == x['output_content_sha256'], 'output word pin' + a.out.mkdir(parents=True, exist_ok=True) + (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(data, mtime=0)) + print('PASS', len(r['entrances']), 'promoted entrances;', len(r['gate_frames']), 'gate frames;', + 'profile', x['local_profile'], 'sha', x['output_content_sha256']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/make_recipe.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/make_recipe.py new file mode 100644 index 0000000000..618d609453 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/make_recipe.py @@ -0,0 +1,12 @@ +"""make_recipe.py BASEWORD SOLUTION.json BUILTWORD OUT: discovery-side recipe writer (CP-SAT solution -> data recipe).""" +import sys, json, gzip, hashlib +base = gzip.decompress(open(sys.argv[1], 'rb').read()); s = json.load(open(sys.argv[2])) +built = gzip.decompress(open(sys.argv[3], 'rb').read()); bw = json.loads(built) +key = {'A': 0, 'B': 1, 'T': 2} +r = dict(input_content_sha256=hashlib.sha256(base).hexdigest(), + groups=sorted(int(h) for h in s['newstarts']), + entrances={h: s['newstarts'][h] for h in sorted(s['newstarts'], key=int)}, + gate_frames=sorted(s['changed'], key=lambda c: (key[c[0]], c[1])), + expected=dict(output_content_sha256=hashlib.sha256(built).hexdigest(), + local_profile=bw['report']['local_profile'], width_inventory=bw['report']['width_inventory'])) +json.dump(r, open(sys.argv[4], 'w'), indent=1) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/promo_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/promo_controls.py new file mode 100644 index 0000000000..20ee51f7db --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/promo_controls.py @@ -0,0 +1,115 @@ +"""Promotion controls: mutate the promoted word / recipe and require rejection at a pinned site. Apache-2.0. +BlockInvert (Claude Code research agent). + +usage: promo_controls.py --input BASE-FULL-WORD.json.gz --recipe PROMO-RECIPE.json --audit audit_local.py --out CONTROLS.json + +Word-level mutants are checked by the independent audit (audit_local.py, imported from the given path; it shares no +code with the constructor); recipe-level mutants by build_promotion.apply / its pins. Each mutant must raise with the +pinned message prefix; the honest word must pass both.""" +import argparse, gzip, hashlib, importlib.util, json, sys, tempfile +from pathlib import Path +sys.path.insert(0, str(Path(__file__).resolve().parent)) +import build_promotion as B + +ap = argparse.ArgumentParser() +for k in ('input', 'recipe', 'audit', 'out'): ap.add_argument('--' + k, type=Path, required=True) +a = ap.parse_args() +s = importlib.util.spec_from_file_location('audit_local', a.audit); AL = importlib.util.module_from_spec(s); s.loader.exec_module(AL) +raw = gzip.decompress(a.input.read_bytes()); base = json.loads(raw); r = json.loads(a.recipe.read_text()) +assert hashlib.sha256(raw).hexdigest() == r['input_content_sha256'] +honest = B.apply(base, r) +v = base['report']['v'] +tmp = Path(tempfile.mkdtemp()) + + +def audit(w): + p = tmp / 'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w, separators=(',', ':')).encode(), mtime=0)) + import io, contextlib + with contextlib.redirect_stdout(io.StringIO()): + AL.run(p, tmp / 'r.json') + + +def first_gate(w, h): + for sec in ('A', 'B'): + for i, e in enumerate(w[sec]): + if h in B.regs(e): return sec, i + raise AssertionError(h) + + +results = [] + + +def expect(name, fn, prefix): + try: + fn(); got = 'ACCEPTED' + except (RuntimeError, AssertionError) as e: + got = str(e.args[0]) if e.args else type(e).__name__ + ok = got.startswith(prefix) + results.append(dict(control=name, expected=prefix, got=got[:160], rejected_at_pinned_site=ok)) + print(('OK ' if ok else 'BAD ') + name + ': ' + got[:120], flush=True) + + +# honest +audit(honest); print('honest word: audit PASS', flush=True) +H = sorted(int(h) for h in r['entrances']) +h0 = str(H[0]); E5 = B.span(r['entrances'][h0]); sec, i = first_gate(honest, int(h0)); F1 = B.span(honest[sec][i][-1]) +full = B.span([1 << k for k in range(9)]) + + +def mut(f): + w = json.loads(json.dumps(honest)); f(w); return w + + +# 1. promoted entrance moved to a dim-5 frame NOT inside its first gate frame +def bad_entrance(w): + for x in range(1, 512): + G = B.span(list(B.span(base['start_extra'][h0])) + [x]) + if len(G) == 5 and B.span(list(G) + list(F1)) != F1: + w['start_extra'][h0] = list(G); return + raise AssertionError('no frame') +expect('entrance_outside_first_gate_frame', lambda: audit(mut(bad_entrance)), 'frame not monotone') +# 2. a raised gauge gate of a promoted helper left at its old (E4) frame +old_of = {(c[0], c[1]): c[2] for c in r['gate_frames']} +assert (sec, i) in old_of, 'first gate of a promoted helper is a raised gate' +expect('raised_gate_missing', lambda: audit(mut(lambda w: w[sec][i].__setitem__(-1, list(B.span(old_of[(sec, i)]))))), 'frame not monotone') +# 2b. per promoted group: its first helper's raised entry gate left at the old frame +for hg in H[4::4]: + sg, ig = first_gate(honest, hg) + if (sg, ig) in old_of: + expect('raised_gate_missing_group_%d' % hg, lambda sg=sg, ig=ig: audit(mut(lambda w: w[sg][ig].__setitem__(-1, list(B.span(old_of[(sg, ig)]))))), 'frame not monotone') +# 3. every raised gate kept but one entrance reverted to E4 (report kept): the paid profile no longer matches +expect('entrance_reverted_profile', lambda: audit(mut(lambda w: w['start_extra'].__setitem__(h0, list(B.span(base['start_extra'][h0]))))), 'paid profile mismatch') +# 4. an E4 helper outside the promoted groups promoted alone (no raised gates) +others = sorted(int(h) for h, f in base['start_extra'].items() if len(B.span(f)) == 4 and h not in r['entrances']) +if others: + h1 = str(others[0]) + expect('ungrouped_promotion', lambda: audit(mut(lambda w: w['start_extra'].__setitem__(h1, list(E5)))), 'frame not monotone') +# 5. recipe-level: wrong old frame for a raised gate; non-promotion entrance; input pin +def r_bad_old(): + q = json.loads(json.dumps(r)); q['gate_frames'][0][2] = list(full); B.apply(base, q) +expect('recipe_gate_old_frame', r_bad_old, "('gate frame mismatch'" if r['gate_frames'][0][0] != 'T' else "('tail frame mismatch'") +def r_demote(): + q = json.loads(json.dumps(r)); q['entrances'][h0] = base['start_extra'][h0]; B.apply(base, q) +expect('recipe_not_a_promotion', r_demote, "('not a promotion'") +def r_pin(): # the driver's own __main__ path on a tampered input word (one gate scalar changed) + import subprocess + t = json.loads(raw); e = t['B'][0] + if e[0] == 'add': e[3] += e[4] + else: e[2] = -e[2] + p = tmp / 'tampered.json.gz'; p.write_bytes(gzip.compress(json.dumps(t, separators=(',', ':')).encode(), mtime=0)) + q = subprocess.run([sys.executable, '-B', str(Path(B.__file__)), '--input', str(p), '--recipe', str(a.recipe), '--out', str(tmp / 'o')], + capture_output=True, text=True) + assert q.returncode == 0, q.stderr.strip().splitlines()[-1].split('AssertionError: ', 1)[-1] +expect('recipe_input_pin', r_pin, 'input word pin') +# 6. scalar tamper inside a promoted group's raised gate (frames intact): exactness must fail +def scal(w): + e = w[sec][i] + if e[0] == 'add': e[3] = e[3] + e[4] + else: e[2] = -e[2] +expect('raised_gate_scalar_tamper', lambda: audit(mut(scal)), '') +results[-1]['rejected_at_pinned_site'] = results[-1]['got'] != 'ACCEPTED' +bad = [x for x in results if not x['rejected_at_pinned_site']] +a.out.write_text(json.dumps(dict(recipe=r['expected']['output_content_sha256'], honest='PASS', controls=results, + rejected=len(results) - len(bad)), indent=1)) +assert not bad, bad +print('PASS', len(results), 'controls rejected at pinned sites') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/reproduce_promo.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/reproduce_promo.py new file mode 100644 index 0000000000..6e04aa71b1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/promo/reproduce_promo.py @@ -0,0 +1,99 @@ +#!/usr/bin/env python3 +"""Rebuild a promoted no-triangle layered word (entrance promotions E4 -> E5) and its native locals. + +Input (--base): `np` = a fresh `construction/layers_np/reproduce_np.py` output (word a9de804f...), or `p6n` = a fresh +`construction/layers_p6n/reproduce_p6n.py` output (word 34b683fa...). Recipe k: PROMO-RECIPE-.json (BlockInvert; +data only; it pins its input word) and LOCAL-PINS-.json. Steps, each +checked exactly: + 1. promotion: BlockInvert's build_promotion.py. It pins the input word and the recipe's output sha, profile and + widths; every old frame must match the input; only frame annotations and start frames move (no scalar change). + 2. promo-controls: BlockInvert's promo_controls.py. The honest word must pass #645's independent audit_local.py, + and its recipe- and word-level mutants must be rejected at their pinned sites (count pinned in LOCAL-PINS). + 3. layer-end-controls on the promoted word, pinned count: ../layers/layer_end_controls.py (LayerReviewer-signed) for + base np; ../layers_p6n/layer_end_controls.py (Q6Reviewer-signed per-end variant) for base p6n. + 4. native, ledgers, local-replay, wrappers, phases: PR635's native local programs; the canonical word, local + programs and Clifford recipes are pinned (LOCAL-PINS). +Moving to another recipe k is a recipe and pins swap; this driver does not change. +Apache-2.0. Driver by ColdWitness around BlockInvert's constructor and controls. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +PKG = HERE.parents[1] +LAYERS = HERE.parent / 'layers' +BASES = {'np': ('layers/FULL-WORD.json.gz', 'a9de804f194eeb39f52a4c6e54c14d93e881bec4b632694249733ed410b58113'), + 'p6n': ('p6n/FULL-WORD.json.gz', '34b683fa08f0')} # p6n: prefix; full pin is the p6n recipe's output sha + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--base', choices=sorted(BASES), default='p6n') + ap.add_argument('--base-dir', type=Path, required=True, help='reproduce_np.py (np) or reproduce_p6n.py (p6n) output') + ap.add_argument('--k', default='p6n-k4', help='recipe id (PROMO-RECIPE-.json)') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + recipe = HERE / ('PROMO-RECIPE-%s.json' % a.k); pins = read(HERE / ('LOCAL-PINS-%s.json' % a.k)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + rel, pin = BASES[a.base]; inp = a.base_dir.resolve() / rel + got = hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() + assert got.startswith(pin) and got == read(recipe)['input_content_sha256'], ('input must be the pinned base word', a.base, got) + if a.base == 'p6n': + assert got == read(HERE.parent / 'layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz')['output_content_sha256'] + run('promotion', HERE / 'build_promotion.py', '--input', inp, '--recipe', recipe, '--out', out / 'promo', portable=False) + word = out / 'promo/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == read(recipe)['expected']['output_content_sha256'] + run('promo-controls', HERE / 'promo_controls.py', '--input', inp, '--recipe', recipe, + '--audit', PKG / 'independent/audit_local.py', '--out', out / 'PROMO-CONTROLS.json', portable=False) + pc = read(out / 'PROMO-CONTROLS.json'); assert pc['honest'] == 'PASS' and pc['rejected'] == pins['promo_controls'], pc['rejected'] + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + ctlpy = (HERE.parent / 'layers_p6n/layer_end_controls.py') if a.base == 'p6n' else (LAYERS / 'layer_end_controls.py') + run('layer-end-controls', ctlpy, word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/reproduce.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/reproduce.py new file mode 100644 index 0000000000..8b51efa646 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/reproduce.py @@ -0,0 +1,194 @@ +#!/usr/bin/env python3 +"""Rebuild the frozen gauge44 delta from two pinned upstream checkouts. + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. +This driver calls the credited upstream constructors unchanged; it runs no +search or optimizer. See ../CONSTRUCTION.md and INPUTS.json. +""" +import argparse +import gzip +import hashlib +import importlib.util +import json +import os +from pathlib import Path +import shutil +import subprocess +import sys +import time + +HERE = Path(__file__).resolve().parent + + +def read(path): + raw = path.read_bytes() + return json.loads(gzip.decompress(raw) if path.suffix == '.gz' else raw) + + +def sha(path, content=False): + raw = path.read_bytes() + if content and path.suffix == '.gz': + raw = gzip.decompress(raw) + return hashlib.sha256(raw).hexdigest() + + +def dump(path, value): + path.parent.mkdir(parents=True, exist_ok=True) + raw = json.dumps(value, sort_keys=True, separators=(',', ':')).encode() + path.write_bytes(gzip.compress(raw, mtime=0) if path.suffix == '.gz' else raw) + + +def load_module(name, path): + spec = importlib.util.spec_from_file_location(name, path) + module = importlib.util.module_from_spec(spec) + spec.loader.exec_module(module) + return module + + +def main(): + assert __debug__, 'Assertions are required; do not use python -O.' + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--main', type=Path, required=True, + help='integer-mult-bounds checkout at the pinned main commit') + parser.add_argument('--pr635', type=Path, required=True, + help='integer-mult-bounds checkout at the pinned PR635 commit') + parser.add_argument('--out', type=Path, required=True, + help='new output directory outside both checkouts') + parser.add_argument('--until', choices=('word', 'local', 'phases'), default='word', + help='default: scalar constructor only; local adds exact native replay and wrappers') + parser.add_argument('--frozen-cold', action='store_true', + help='splice the pinned cold recipe instead of deriving its exact Q/T matrices again') + args = parser.parse_args() + roots = {'main': args.main.resolve(), 'pr635': args.pr635.resolve(), 'delta': HERE} + out = args.out.resolve() + assert not out.exists(), 'Use a new output directory.' + assert not any(out.is_relative_to(root) for root in roots.values()) + pins = read(HERE / 'INPUTS.json') + for family, files in pins['files'].items(): + for relative, expected in files.items(): + path = roots[family] / relative + assert sha(path) == expected, ('input pin', family, relative) + out.mkdir(parents=True) + upstream = roots['pr635'] / 'research/complex-571-cold14-st2' + source = roots['main'] / 'research/complex-k492-owner-repair/vendor/multicold' + joint = source.parent / 'joint_prefix' + base = source / 'vendor/pr558' + parent = base / 'vendor/pr552' + gk = parent / 'complex-local/static44/gk' + hamming = source.parent / 'direct_delivery/inputs/hamming' + structural = roots['main'] / 'research/structural-gain/frontier-composition' + runner = source / 'code/run_portable.py' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', + PYTHONINTMAXSTRDIGITS='0', MULTICOLD_SOURCE=str(source), + GAIN_PR564_SOURCE=str(source)) + env.pop('PYTHONOPTIMIZE', None) + records = [] + + def run(label, script, *arguments): + start = time.monotonic() + log = out / (label + '.log') + print('RUN', label, flush=True) + with log.open('w', encoding='utf-8') as stream: + result = subprocess.run([sys.executable, '-B', str(runner), str(script), + *map(str, arguments)], env=env, stdout=stream, + stderr=subprocess.STDOUT) + records.append({'step': label, 'exit_code': result.returncode, + 'seconds': round(time.monotonic() - start, 3)}) + (out / 'STEPS.json').write_text(json.dumps(records, indent=2) + '\n') + if result.returncode: + raise RuntimeError(label + '\n' + log.read_text()[-6000:]) + print('PASS', label, flush=True) + + def check_word(label, path): + assert sha(path, content=True) == pins['word_content_sha256'][label], ('step pin', label) + return path + + raw504 = parent / 'complex-local/static44/inputs/RAW504.json.gz' + promoted = structural / 'global-replay/base/split-centres/FULL-WORD.json.gz' + multi = structural / 'multicold-eight-word/FULL-WORD.json.gz' + early = out / 'shadow-early' + run('shadow-early', source / 'code/build_cold_kernel.py', '--input', promoted, + '--recipe', source / 'data/EIGHT-COLD.json', '--gk-dir', gk, '--out', early) + early_word = check_word('shadow-early', early / 'FULL-WORD.json.gz') + prefix = out / 'shadow-prefix' + run('shadow-prefix', joint / 'code/build_joint_prefix.py', '--input', multi, + '--recipe', joint / 'data/JOINT-PREFIX.json', '--variant', 'eightcold', + '--gk-dir', gk, '--out', prefix) + prefix_word = check_word('shadow-prefix', prefix / 'FULL-WORD.json.gz') + + inputs = out / 'hamming' + inputs.mkdir() + for name in ('PROTOTYPE.json', 'PACKET-PROGRAMS.json.gz'): + shutil.copyfile(hamming / name, inputs / name) + shutil.copyfile(HERE / 'COMPLETION-PRIORITY.json', inputs / 'COMPLETION-PRIORITY.json') + raw = out / 'raw' + run('gauge-forward', HERE / 'construct_gauge_xcentre.py', inputs, raw, + upstream / 'data/TRI-SCHEDULE.json') + word = check_word('raw', raw / 'FULL-WORD.json.gz') + assert sha(raw / 'HELPER-MAP.json') == pins['helper_map_sha256'] + chain = [raw504, promoted, early_word, multi, prefix_word] + for i, (before, after) in enumerate(zip(chain, chain[1:])): + target = out / ('port' + str(i)) + run('port' + str(i), upstream / 'code/build_port_stage.py', + '--shadow-input', before, '--shadow-output', after, '--input', word, + '--map', raw / 'HELPER-MAP.json', '--gk-dir', gk, '--out', target) + word = check_word('port' + str(i), target / 'FULL-WORD.json.gz') + + changed = read(word) + regroup = read(upstream / 'data/recipes/k492-jp8-frame_regroup.json') + # The inherited changes are B-only and are checked against the actual new gates. + for edit in regroup['changes']: + assert changed[edit['section']][edit['index']] == edit['before'] + changed[edit['section']][edit['index']] = edit['after'] + changed['report'].update(local_profile=regroup['after'], + local_rank_mass=sum(int(r)*n for r, n in regroup['after'].items())) + word = out / 'regroup/FULL-WORD.json.gz' + dump(word, changed) + check_word('regroup', word) + hpe = load_module('upstream_hpe', upstream / 'code/build_hpe.py') + changed = hpe.apply(changed, read(upstream / 'data/recipes/k492-jp8-hyperplane_end.json')['changes']) + word = out / 'hpe/FULL-WORD.json.gz' + dump(word, changed) + check_word('hpe', word) + + target = out / 'cold44' + if args.frozen_cold: + cold = load_module('upstream_cold', upstream / 'code/build_cold_end.py') + changed = cold.apply(changed, read(HERE / 'COLD44-RECIPE.json.gz')) + # Match the exact constructor's descriptive status; this is not an audit assertion. + changed['report']['status'] = 'EXACT_COLD44_CONSTRUCTED_PENDING_INDEPENDENT_AUDIT' + dump(target / 'FULL-WORD.json.gz', changed) + else: + run('cold44-exact', HERE / 'build_gauge_cold44.py', '--input', word, + '--out', target, '--hamming', inputs, '--upstream-package', upstream) + assert read(target / 'RECIPE.json.gz') == read(HERE / 'COLD44-RECIPE.json.gz') + word = check_word('cold44', target / 'FULL-WORD.json.gz') + report = read(word)['report'] + assert report['local_rank_mass'] == 5650 + assert report['local_profile'] == {'1': 2514, '2': 404, '3': 448, '4': 160, '5': 56, '8': 8} + assert report['width_inventory'] == {'4': 52, '5': 48, '7': 34, '8': 114, '9': 244} + print('PASS exact frozen scalar word', word, flush=True) + if args.until == 'word': + return + + local = out / 'local' + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + run('native', upstream / 'code/hpe_audit_and_transport.py', '--raw', word, + '--routing', routing, '--out', local) + assert sha(local / 'CANONICAL-WORD.json.gz', content=True) == pins['canonical_content_sha256'] + run('ledgers', upstream / 'code/hpe_emit_local.py', local) + run('local-replay', upstream / 'code/hpe_audit_local.py', local) + run('wrappers', upstream / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for orientation, expected in pins['local_program_sha256'].items(): + assert checks[orientation]['sha256'] == expected + if args.until == 'phases': + clifford = parent / 'complex-global/vendor531/vendor/clifford' + run('phases', base / 'code/phases_full.py', local, clifford) + assert sha(local / 'CLIFFORD-RECIPES.json') == pins['clifford_recipes_sha256'] + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/RECIPE-SLOTS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/RECIPE-SLOTS-k8.json new file mode 100644 index 0000000000..acc1a733d6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/RECIPE-SLOTS-k8.json @@ -0,0 +1,991 @@ +{ + "base_sha256": "db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83", + "B_delete": [ + 13, + 15, + 33, + 35, + 39, + 47, + 50, + 893, + 895, + 899, + 901, + 907, + 919, + 926, + 928, + 931, + 933, + 934, + 936, + 939, + 941, + 1170, + 1172, + 1178, + 1180, + 1188, + 1204, + 1215, + 1217, + 1218, + 1220, + 1223, + 1225, + 1226, + 1228 + ], + "B_insert": [ + [ + 13, + [ + "add", + 189, + 454, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 15, + [ + "add", + 185, + 455, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 32, + [ + "add", + 122, + 584, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 33, + [ + "add", + 123, + 585, + 1, + 2, + [ + 24 + ] + ] + ], + [ + 39, + [ + "add", + 179, + 587, + 1, + 2, + [ + 30 + ] + ] + ], + [ + 46, + [ + "add", + 146, + 590, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 47, + [ + "add", + 147, + 591, + -1, + 1, + [ + 24 + ] + ] + ], + [ + 839, + [ + "add", + 544, + 236, + -2, + 1, + [ + 385, + 65, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 840, + [ + "add", + 545, + 238, + -2, + 1, + [ + 385, + 64, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 855, + [ + "add", + 556, + 454, + -2, + 1, + [ + 258, + 130, + 64, + 33, + 24, + 7 + ] + ] + ], + [ + 856, + [ + "add", + 557, + 455, + -2, + 1, + [ + 259, + 131, + 65, + 32, + 24, + 7 + ] + ] + ], + [ + 883, + [ + "add", + 74, + 584, + -1, + 2, + [ + 260, + 132, + 66, + 34, + 24, + 1 + ] + ] + ], + [ + 883, + [ + "add", + 10, + 439, + -1, + 2, + [ + 288, + 160, + 97, + 24, + 4, + 3 + ] + ] + ], + [ + 884, + [ + "add", + 383, + 585, + -1, + 2, + [ + 260, + 132, + 68, + 36, + 24, + 1 + ] + ] + ], + [ + 884, + [ + "add", + 287, + 434, + -1, + 2, + [ + 289, + 161, + 97, + 24, + 5, + 2 + ] + ] + ], + [ + 886, + [ + "add", + 351, + 587, + -1, + 2, + [ + 294, + 166, + 102, + 18, + 12, + 1 + ] + ] + ], + [ + 886, + [ + "add", + 319, + 436, + -1, + 2, + [ + 267, + 139, + 75, + 43, + 25, + 7 + ] + ] + ], + [ + 889, + [ + "add", + 98, + 590, + 1, + 1, + [ + 258, + 132, + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 889, + [ + "add", + 34, + 444, + 1, + 1, + [ + 289, + 160, + 96, + 24, + 4, + 3 + ] + ] + ], + [ + 890, + [ + "add", + 399, + 591, + 1, + 1, + [ + 260, + 130, + 68, + 34, + 24, + 1 + ] + ] + ], + [ + 890, + [ + "add", + 303, + 446, + 1, + 1, + [ + 288, + 161, + 96, + 24, + 4, + 3 + ] + ] + ], + [ + 1170, + [ + "add", + 122, + 584, + -1, + 2, + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1172, + [ + "add", + 123, + 585, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ] + ] + ], + [ + 1178, + [ + "add", + 146, + 590, + 1, + 1, + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1180, + [ + "add", + 147, + 591, + 1, + 1, + [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ] + ] + ], + [ + 1188, + [ + "add", + 179, + 587, + -1, + 2, + [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ] + ] + ], + [ + 1204, + [ + "add", + 115, + 436, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ] + ] + ], + [ + 1215, + [ + "add", + 189, + 454, + 1, + 1, + [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 1217, + [ + "add", + 185, + 455, + 1, + 1, + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1217, + [ + "add", + 186, + 439, + -1, + 2, + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1220, + [ + "add", + 187, + 434, + -1, + 2, + [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ] + ] + ], + [ + 1223, + [ + "add", + 213, + 236, + 1, + 1, + [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ] + ] + ], + [ + 1225, + [ + "add", + 209, + 238, + 1, + 1, + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1225, + [ + "add", + 210, + 444, + 1, + 1, + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ] + ] + ], + [ + 1228, + [ + "add", + 211, + 446, + 1, + 1, + [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ] + ] + ] + ], + "B_frames": {}, + "tail_insert": [ + [ + 6, + [ + "add", + 98, + 590, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 5, + [ + "add", + 399, + 591, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 4, + [ + "add", + 557, + 455, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 3, + [ + "add", + 383, + 585, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 2, + [ + "add", + 351, + 587, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + ] + ], + [ + 1, + [ + "add", + 556, + 454, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ], + [ + 0, + [ + "add", + 74, + 584, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ] + ] + ], + "cleanup_prepend": [ + [ + "add", + 10, + 439, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 544, + 236, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 319, + 436, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 287, + 434, + 1, + 2, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 545, + 238, + 2, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 303, + 446, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ], + [ + "add", + 34, + 444, + -1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 8, + 4, + 2, + 1 + ] + ] + ], + "local_profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "expect_sha256": "c2b294300760e1fd6eeab8c22c4d13e4633dca40e52cac8da0d68163a76e3ca8", + "variants": [ + { + "X": 444, + "E": 590, + "hold": [ + 34, + 98 + ] + }, + { + "X": 446, + "E": 591, + "hold": [ + 303, + 399 + ] + }, + { + "X": 238, + "E": 455, + "hold": [ + 545, + 557 + ] + }, + { + "X": 434, + "E": 585, + "hold": [ + 287, + 383 + ] + }, + { + "X": 436, + "E": 587, + "hold": [ + 319, + 351 + ] + }, + { + "X": 236, + "E": 454, + "hold": [ + 544, + 556 + ] + }, + { + "X": 439, + "E": 584, + "hold": [ + 10, + 74 + ] + } + ], + "source": "PR #987 (rohanarun) triangle-hybrid slots, transferred to k8 db2c7cfb by MineB; recipe U10k8", + "note": "early-cleanup gate frames in cleanup are kept as in base (package T-frame convention)" +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/SLOT-PINS-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/SLOT-PINS-k8.json new file mode 100644 index 0000000000..2702c368f4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/SLOT-PINS-k8.json @@ -0,0 +1,47 @@ +{ + "base_sha256": "db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83", + "word_sha256": "c2b294300760e1fd6eeab8c22c4d13e4633dca40e52cac8da0d68163a76e3ca8", + "canonical_sha256": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "program_sha256": { + "forward": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "backward": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23" + }, + "clifford_recipes_sha256": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "slot_controls": [ + "C0_identity", + "donation_after", + "donation_after@236", + "donation_after@238", + "donation_after@434", + "donation_after@436", + "donation_after@439", + "donation_after@444", + "donation_after@446", + "drop_preread", + "drop_preread@236", + "drop_preread@238", + "drop_preread@434", + "drop_preread@436", + "drop_preread@439", + "drop_preread@444", + "drop_preread@446", + "drop_restore", + "drop_restore@236", + "drop_restore@238", + "drop_restore@434", + "drop_restore@436", + "drop_restore@439", + "drop_restore@444", + "drop_restore@446", + "recipe", + "restore_full", + "restore_full@236", + "restore_full@238", + "restore_full@434", + "restore_full@436", + "restore_full@439", + "restore_full@444", + "restore_full@446" + ], + "kappa_decimal": "0.00167166528321877" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/verify_slots.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/verify_slots.py new file mode 100644 index 0000000000..fd06b654af --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/slots/verify_slots.py @@ -0,0 +1,122 @@ +#!/usr/bin/env python3 +"""Slot layer on research/gauge44-leaver8 with explicit, hash-checked reuse of a completed k8 chain replay. + +Follows the repository's baseline-reuse pattern (cf. research/complex-t37-owners/verify.py --baseline799): +the completed k8 replay is rechecked against the parent package's pins, and only the new layer is rebuilt. + + 1. parent manifest, then baseline: the completed reproduce_leaver_chain.py --id k8 output; its final word and its + canonical/program/Clifford locals must equal CHAIN-PINS-k8 and the final frame recipe's output pin. + 2. slots: the reviewed construction/barch/build_tri.py (unchanged) with RECIPE-SLOTS-k8.json; output pinned. + All per-slot controls (run_controls.py, unchanged) must reject exactly as pinned. + 3. native locals of the new word (the same steps as reproduce_leaver_chain step 9); canonical/programs/Clifford pinned. + 4. independent audit_local on the new word. + 5. strict global replay (verify_global.py) of this package's data on the new locals. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +PKG = HERE.parents[1] +MUTANTS = ('drop_restore', 'restore_full', 'drop_preread', 'donation_after') # as reproduce_leaver_chain.py +# Complete step receipt of reproduce_leaver_chain.py --id k8 (unchanged driver of the parent package). +CHAIN_STEPS = ['pivot-swap', 'cold44-exact', 'lec-p6n', 'promotion', 'promo-controls', 'lec-promo', 'jx', + 'jx-control-C0_identity', 'jx-control-C1_741_only', 'jx-control-N3_plain_join_moved_reads', 'lec-jx', + 'hybrids', 'hybrid-controls', 'lec-hyb', 'frames', 'lec-frames', + 'native', 'ledgers', 'local-replay', 'wrappers', 'phases'] + + +def read(p): + b = Path(p).read_bytes() + return json.loads(gzip.decompress(b) if str(p).endswith('.gz') else b) + + +def enc(x): return json.dumps(x, sort_keys=True, separators=(',', ':')).encode() +def csha(p): return hashlib.sha256(gzip.decompress(Path(p).read_bytes())).hexdigest() +def fsha(p): return hashlib.sha256(Path(p).read_bytes()).hexdigest() + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True, help='repository root') + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--baseline', type=Path, required=True, + help='completed research/gauge44-leaver8 reproduce_leaver_chain.py --id k8 --out directory') + ap.add_argument('--work', type=Path, required=True) + a = ap.parse_args() + root = a.main.resolve(); work = a.work.resolve(); assert not work.exists(); work.mkdir(parents=True) + parent_pkg = root / 'research/gauge44-leaver8' + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = root / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; par = base / 'vendor/pr552' + routing = par / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + env.pop('PYTHONOPTIMIZE', None) + pins = read(HERE / 'SLOT-PINS-k8.json'); steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (work / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT, cwd=root) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (work / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + return (work / (label + '.log')).read_text() + + # 1. parent package and baseline coverage + run('parent-manifest', parent_pkg / 'verify_manifest.py', portable=False) + cp = read(parent_pkg / 'construction/leaver/CHAIN-PINS-k8.json') + fr = read(parent_pkg / 'construction/leaver/FRAME-RECIPE-LV-k8.json') + bl = a.baseline.resolve(); bw = bl / 'frames/FULL-WORD.json.gz'; blocal = bl / 'local' + bsteps = read(bl / 'STEPS.json') + assert [s['step'] for s in bsteps] == CHAIN_STEPS and all(s['exit_code'] == 0 for s in bsteps), 'baseline is not a complete k8 chain replay' + assert csha(bw) == fr['expected']['output_content_sha256'] == pins['base_sha256'], 'baseline final word' + assert hashlib.sha256(gzip.decompress((blocal / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == cp['canonical_sha256'], 'baseline canonical' + chk = read(blocal / 'LOCAL-CHECKS.json') + assert {o: chk[o]['sha256'] for o in ('forward', 'backward')} == cp['program_sha256'], 'baseline programs' + assert fsha(blocal / 'CLIFFORD-RECIPES.json') == cp['clifford_recipes_sha256'], 'baseline Clifford' + for lab in ('lec-p6n', 'lec-promo', 'lec-jx', 'lec-hyb', 'lec-frames'): + c = read(bl / lab / 'COLD-END-CONTROLS.json') + assert c['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(c['rejected']) == cp[lab], 'baseline ' + lab + print('PASS baseline', flush=True) + + # 2. slot layer with the reviewed builder and controls (unchanged files from research/gauge44-leaver8) + barch = parent_pkg / 'construction/barch'; rec = HERE / 'RECIPE-SLOTS-k8.json'; r = read(rec) + assert r['base_sha256'] == pins['base_sha256'] and r['expect_sha256'] == pins['word_sha256'] + (work / 'slots').mkdir(); fw = work / 'slots/FULL-WORD.json.gz' + run('slots', barch / 'build_tri.py', bw, rec, fw, portable=False) + assert csha(fw) == pins['word_sha256'], 'slot word' + run('slot-controls', barch / 'run_controls.py', bw, rec, parent_pkg / 'independent/audit_local.py', work / 'slot-controls', portable=False) + res = read(work / 'slot-controls/controls.json') + want = ['C0_identity', 'recipe', *MUTANTS] + [m + '@' + str(v['X']) for v in r.get('variants', []) for m in MUTANTS] + assert sorted(res) == sorted(want) == sorted(pins['slot_controls']) and all(x['ok'] for x in res.values()), res + + # 3. native locals of the new word + local = work / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', fw, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'] + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + chk = read(local / 'LOCAL-CHECKS.json') + assert {o: chk[o]['sha256'] for o in ('forward', 'backward')} == pins['program_sha256'] + run('phases', base / 'code/phases_full.py', local, par / 'complex-global/vendor531/vendor/clifford') + assert fsha(local / 'CLIFFORD-RECIPES.json') == pins['clifford_recipes_sha256'] + + # 4. independent local audit; 5. strict global replay of this package's data + run('audit-local', PKG / 'independent/audit_local.py', '--word', fw, '--main', root, '--output', work / 'AUDIT-LOCAL.json', portable=False) + assert read(work / 'AUDIT-LOCAL.json')['status'] == 'PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES' + out = run('strict', PKG / 'verify_global.py', '--main', root, '--local', local, '--work', work / 'global', portable=False) + last = [l for l in out.splitlines() if l.startswith('PASS_GAUGE44')][-1] + assert last.split()[1] == pins['kappa_decimal'], last + res = dict(status='PASS_SLOTS_ON_CHECKED_K8_BASELINE', kappa_decimal=pins['kappa_decimal'], strict=last, + baseline=str(bl), steps=steps) + (work / 'RESULT.json').write_text(json.dumps(res, indent=1) + '\n') + print(res['status'], pins['kappa_decimal'], flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/LOCAL-PINS-sw4-P6k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/LOCAL-PINS-sw4-P6k4.json new file mode 100644 index 0000000000..ae26a0f2f1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/LOCAL-PINS-sw4-P6k4.json @@ -0,0 +1,11 @@ +{ + "word": "P6k4sw4", + "sw4_controls": 4, + "layer_controls": 95, + "canonical_sha256": "5f5f163e43e8c21c16e2f10aef0078131d127a1ccacc39e0238d111fbd29f195", + "program_sha256": { + "forward": "36e75fc972766fa42f1b371a055e74976a165c894b816911c3510a88b431ea09", + "backward": "3176ccde98d90e754105e60096598fee348e2455e046290d3674b79dd6b402df" + }, + "clifford_recipes_sha256": "202eeaf5fac0c801b98811c1e140fd0af443090d7f7e05c7b55a4ddc6f6acdab" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/NOTES.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/NOTES.md new file mode 100644 index 0000000000..2a53ffb3b8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/NOTES.md @@ -0,0 +1,21 @@ +# SW4: read-set exchange on 4 entering-copy pairs + +- **Input.** P6k3, sha a38bb414. +- **Output.** sha f35a852b. Strict PASS at κ 0.001659645685315104, which is +3.267e-7 over P6k3 and equal to the ideal. +- **Width.** W 3782 is unchanged, as are start_extra, helper_final, cleanup and the helper numbering. +- **Rebuild.** `python build_sw4.py INPUT OUT [SW4-RECIPE.json]`. It is a deterministic apply of the 16 explicit moves, with 4 pinned controls: C0 (identity), N1 (keeping the pre-read is rejected), N2 (a partial exchange is rejected) and N3 (a wrong-sign pre-read is rejected). + +## Move +For each pair (h,r) in {(461,25), (581,89), (591,415), (603,431)}, where h = E_h + r after h's copy gate: +- every post-copy target read of h becomes a read of r, and that target's entrance pre-read of h is deleted; +- every target read of r becomes a read of h, with the pre-read add(t,h,−c) inserted after h's last pre-read, while h = E_h. + +The B-end state of every register is unchanged (checked mod p). + +## How exhaustive the search was +These 4 are the only positives within an exactly defined family. +- **Copy pair.** h is an entering helper whose first B write is add(h,r,1/1) from a non-target r, and whose only earlier B gates are single target pre-reads. NP has 107 such pairs. +- **Candidates.** Every nonempty subset of one pair's movable reads (target reads of h or r between the copy and the next write of h or r), with all other pairs left unchanged. That is 602 candidates over the 54 pairs that have reads. +- **Outcome.** 564 are frame-illegal. The 38 legal ones are all full single-pair exchanges, and only these 4 are positive. Their gains are additive. + +**What is not covered.** Cross-pair combinations of partial moves were not enumerated. Without a decomposition proof (moves can shrink as well as grow target frames), the result is exhaustive only within this single-pair family. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/SW4-RECIPE-P6k4.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/SW4-RECIPE-P6k4.json new file mode 100644 index 0000000000..b9dea4152a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/SW4-RECIPE-P6k4.json @@ -0,0 +1,314 @@ +{ + "name": "SW4", + "description": "BRoute read-set exchange on entering-copy pairs (h,r); indices refer to the input word B section", + "input_sha256": "0390ec65dc4d47df1887aabdc2ec5b6ddea3cfc8e65582873fdfeba81d100073", + "output_sha256": "d232183f233899961bf55cac67a18545ed33548d9a7ca7078990d1a83d557c59", + "pairs": { + "461": 25, + "581": 89, + "591": 415, + "603": 431 + }, + "moves": [ + { + "kind": "h2r", + "h": 461, + "r": 25, + "read_index": 856, + "target": 168, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 27 + }, + { + "kind": "h2r", + "h": 461, + "r": 25, + "read_index": 1208, + "target": 128, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 26 + }, + { + "kind": "r2h", + "h": 461, + "r": 25, + "read_index": 873, + "target": 129, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 28, + "preread": [ + "add", + 129, + 461, + 1, + 2 + ] + }, + { + "kind": "r2h", + "h": 461, + "r": 25, + "read_index": 1193, + "target": 169, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 28, + "preread": [ + "add", + 169, + 461, + 1, + 2 + ] + }, + { + "kind": "h2r", + "h": 581, + "r": 89, + "read_index": 860, + "target": 171, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 58 + }, + { + "kind": "h2r", + "h": 581, + "r": 89, + "read_index": 1288, + "target": 192, + "coef": [ + -1, + 2 + ], + "delete_preread_index": 59 + }, + { + "kind": "r2h", + "h": 581, + "r": 89, + "read_index": 953, + "target": 193, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 60, + "preread": [ + "add", + 193, + 581, + 1, + 2 + ] + }, + { + "kind": "r2h", + "h": 581, + "r": 89, + "read_index": 1197, + "target": 175, + "coef": [ + -1, + 2 + ], + "insert_preread_before": 60, + "preread": [ + "add", + 175, + 581, + 1, + 2 + ] + }, + { + "kind": "h2r", + "h": 591, + "r": 415, + "read_index": 868, + "target": 139, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 62 + }, + { + "kind": "h2r", + "h": 591, + "r": 415, + "read_index": 1296, + "target": 160, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 63 + }, + { + "kind": "r2h", + "h": 591, + "r": 415, + "read_index": 961, + "target": 161, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 64, + "preread": [ + "add", + 161, + 591, + -1, + 1 + ] + }, + { + "kind": "r2h", + "h": 591, + "r": 415, + "read_index": 1205, + "target": 143, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 64, + "preread": [ + "add", + 143, + 591, + -1, + 1 + ] + }, + { + "kind": "h2r", + "h": 603, + "r": 431, + "read_index": 876, + "target": 131, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 70 + }, + { + "kind": "h2r", + "h": 603, + "r": 431, + "read_index": 1300, + "target": 163, + "coef": [ + 1, + 1 + ], + "delete_preread_index": 71 + }, + { + "kind": "r2h", + "h": 603, + "r": 431, + "read_index": 965, + "target": 167, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 72, + "preread": [ + "add", + 167, + 603, + -1, + 1 + ] + }, + { + "kind": "r2h", + "h": 603, + "r": 431, + "read_index": 1213, + "target": 135, + "coef": [ + 1, + 1 + ], + "insert_preread_before": 72, + "preread": [ + "add", + 135, + 603, + -1, + 1 + ] + } + ], + "kappa_ideal_in": 0.0016603565408383088, + "kappa_ideal_out": 0.0016606836036204419, + "W": 3778, + "profile_in": { + "1": 2572, + "2": 326, + "3": 430, + "4": 194, + "5": 56, + "8": 8 + }, + "profile_out": { + "1": 2548, + "2": 342, + "3": 438, + "4": 186, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 80, + "5": 32, + "7": 54, + "8": 122, + "9": 216 + }, + "rejection_expected": { + "N1": { + "changed_registers": [ + 168, + 171 + ], + "n": 2 + }, + "N2": { + "first": [ + "cap", + 1192, + 169 + ], + "n": 10 + }, + "N3": { + "changed_registers": [ + 129, + 130, + 169, + 170 + ], + "n": 4 + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/build_sw4.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/build_sw4.py new file mode 100644 index 0000000000..617e0ed06d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/build_sw4.py @@ -0,0 +1,203 @@ +#!/usr/bin/env python3 +"""build_sw4.py INPUT_WORD OUT_DIR [RECIPE] : deterministic, standard-library-only rebuild of the BRoute SW4 word. + +SW4 exchanges the B-phase target read sets of four entering packet copies h and their face registers r +(h = E_h + r after h's copy gate; E_h = h's entering content): + h2r: a post-copy read add(t,h,c) becomes add(t,r,c), and t's entrance pre-read add(t,h,-c) (taken while h = E_h) is deleted; + r2h: a read add(t,r,c) becomes add(t,h,c), and a pre-read add(t,h,-c) is inserted before index insert_preread_before + (right after h's last existing pre-read, still before h's copy gate). +Every register holds the same value at the end of B (checked mod p). Frames: a moved or inserted gate gets the plain join of +its operands' current frames; every other B gate and every early-cleanup tail keeps span(old frame + current operand frames). +Targets must stay inside u_t^perp, and tails and ends must contain the current frame. + +Controls (run on every build; the count is pinned to 4 and all must hold, else exit 1): + C0 the identity recipe (no moves) reproduces the input B and early_cleanup byte for byte; + N1 h2r without deleting the pre-read is rejected by exactness; + N2 a partial exchange (one read only) is rejected by the frame cap; + N3 an inserted pre-read with the wrong sign is rejected by exactness. +Rejection sites are pinned: the recipe's 'rejection_expected' gives, for N1/N3, the exact set of target rows whose B-end +state changes (the mutated target plus its butterfly partner(s)) and, for N2, the first cap violation (kind, B index, +register) and the violation count. Each control must reproduce its pinned site exactly. BUILD.json records the observed +sites under 'rejection'. +Writes OUT_DIR/FULL-WORD.json.gz (sha checked against the recipe) and OUT_DIR/BUILD.json.""" +import sys, json, gzip, hashlib, os +from collections import Counter, defaultdict + +PR = 2147483629 +HERE = os.path.dirname(os.path.abspath(__file__)) +V, HH = 112, 9 + + +def basis(vs): + piv = {} + for a in vs: + while a: + bit = a.bit_length() - 1 + if bit in piv: a ^= piv[bit] + else: + piv[bit] = a; break + for k in sorted(piv): + for j in piv: + if j > k and piv[j] >> k & 1: piv[j] ^= piv[k] + return tuple(piv[k] for k in sorted(piv, reverse=True)) + + +def contained(a, b): return basis(list(a) + list(b)) == tuple(b) +def registers(e): return e[1:3] if e[0] == 'add' else e[1:2] +def hyper(p): return basis([x for x in range(1, 1 << HH) if (x & p).bit_count() % 2 == 0]) +FULL = basis([1 << i for i in range(HH)]) + + +def coef(e): + a, b = (e[3], e[4]) if e[0] == 'add' else (e[2], e[3]) + return a % PR * pow(b % PR, PR - 2, PR) % PR + + +def bend_state(w): + """sparse rows mod p of every register after A + cut + B (identity start).""" + n = 2 * V + w['report']['R']; rows = [{i: 1} for i in range(n)] + for e in w['A'] + w['cut'] + w['B']: + q = coef(e); t = e[1] + if e[0] == 'scale': rows[t] = {k: x * q % PR for k, x in rows[t].items()} + else: + d = rows[t] + for k, x in rows[e[2]].items(): + y = (d.get(k, 0) + q * x) % PR + if y: d[k] = y + else: d.pop(k, None) + return rows + + +def apply_recipe(w, moves, drop_delete=False, wrong_sign=False): + B = [list(e[:-1]) + [list(e[-1]) if e[-1] is not None else None] for e in w['B']] + tag = {}; dele = set(); ins = defaultdict(list) + for m in moves: + i = m['read_index']; e = B[i]; t = m['target']; a, b = m['coef'] + assert e[0] == 'add' and e[1] == t and [e[3], e[4]] == [a, b], ('recipe/word mismatch', m) + if m['kind'] == 'h2r': + assert e[2] == m['h'] + pi = m['delete_preread_index']; g = B[pi] + assert g[:5] == ['add', t, m['h'], -a, b], ('pre-read mismatch', m) + B[i] = ['add', t, m['r'], a, b, e[-1]] + if not drop_delete: dele.add(pi) + else: + assert e[2] == m['r'] + B[i] = ['add', t, m['h'], a, b, e[-1]] + g = list(m['preread']) + if wrong_sign: g[3] = -g[3] + ins[m['insert_preread_before']].append(g + [None]) + tag[i] = 1 + NB, nt = [], [] + for i, e in enumerate(B): + for g in ins.get(i, []): NB.append(g); nt.append(1) + if i in dele: continue + NB.append(e); nt.append(tag.get(i, 0)) + w2 = dict(w); w2['B'] = NB; w2['early_cleanup'] = [list(x) for x in w.get('early_cleanup', [])] + return w2, nt + + +def refit(w, nt): + n = 2 * V + w['report']['R'] + cur = [(p,) for p in w['ports']] + [()] * (n - V) + for q, U in w['start_extra'].items(): cur[int(q)] = basis(U) + for e in w['A']: + for q in registers(e): cur[q] = basis(e[-1]) + prob = [] + for i, e in enumerate(w['B']): + rs = registers(e) + base = [] if nt[i] or e[-1] is None else list(e[-1]) + F = basis(base + [x for q in rs for x in cur[q]]) + for q in rs: + if V <= q < 2 * V and not contained(F, hyper(w['ports'][q - V])): prob.append(('cap', i, q)) + e[-1] = list(F) + for q in rs: cur[q] = F + ne = [] + for i, U in w.get('early_cleanup', []): + rs = registers(w['cleanup'][i]); F = basis(list(U) + [x for q in rs for x in cur[q]]) + for q in rs: + fin = w['helper_final'].get(str(q)) + if fin is not None and not contained(F, basis(fin)): prob.append(('tail', i, q)) + ne.append([i, list(F)]) + for q in rs: cur[q] = F + w['early_cleanup'] = ne + for q in range(2 * V, n): + fin = w['helper_final'].get(str(q)) + if fin is not None and not contained(cur[q], basis(fin)): prob.append(('end', q)) + return prob + + +def profile(w): + n = 2 * V + w['report']['R'] + tail = [w['cleanup'][i][:-1] + [U] for i, U in w.get('early_cleanup', [])] + end = [FULL] * V + [hyper(p) for p in w['ports']] + [FULL] * (n - 2 * V) + for q, U in w['helper_final'].items(): end[int(q)] = basis(U) + start = [(p,) for p in w['ports']] + [()] * (n - V) + for q, U in w['start_extra'].items(): start[int(q)] = basis(U) + cur = list(start); paid = Counter() + def climb(q, U): + U = basis(U); assert contained(cur[q], U), ('monotone', q) + d = len(U) - len(cur[q]) + if d: paid[d] += 1 + cur[q] = U + for sec in ('A', 'B'): + if sec == 'B': + lev = {int(t): basis(U) for t, U in w.get('target_levels', {}).items()} + for q, U in zip(w['centers'], w['center_frames']): + U = basis(U); served = {lev.get(e[1] - V, ()) for e in w['cut'] if e[2] == q} + for T in sorted(served, key=lambda x: -len(x)): + if T != U: paid[len(U) - len(T)] += 1 + U = T + for e in w[sec]: + for q in registers(e): climb(q, e[-1]) + for e in tail: + for q in registers(e): climb(q, e[-1]) + for q, U in enumerate(end): climb(q, U) + widths = Counter(len(end[q]) - len(start[q]) for q in range(2 * V, n)) + return paid, widths + + +def enc(w): return json.dumps(w, sort_keys=True, separators=(',', ':')).encode() + + +def main(): + src, out = sys.argv[1], sys.argv[2] + rec = json.load(open(sys.argv[3] if len(sys.argv) > 3 else os.path.join(HERE, 'SW4-RECIPE.json'))) + raw = gzip.decompress(open(src, 'rb').read()) + assert hashlib.sha256(raw).hexdigest() == rec['input_sha256'], 'input sha mismatch' + w = json.loads(raw); S0 = bend_state(w); moves = rec['moves'] + h0 = moves[0]['h']; one = [m for m in moves if m['h'] == h0] + ctl = {}; why = {}; EXP = rec.get('rejection_expected', {}) + if os.environ.get('SW4_PIN') != '1' and set(EXP) != {'N1', 'N2', 'N3'}: raise SystemExit('recipe rejection_expected must pin exactly N1, N2, N3 (set SW4_PIN=1 to record)') + def diff(S): + d = [q for q in range(len(S0)) if S[q] != S0[q]] + return dict(changed_registers=d[:8], n=len(d)) + w0, nt0 = apply_recipe(w, []); p0 = refit(w0, nt0) + ctl['C0_identity'] = not p0 and w0['B'] == w['B'] and w0['early_cleanup'] == w['early_cleanup'] + m1 = [m for m in one if m['kind'] == 'h2r'][:1] + w1, nt1 = apply_recipe(w, m1, drop_delete=True); d1 = diff(bend_state(w1)) + ctl['N1_keep_preread_rejected'] = d1['n'] > 0 and d1 == EXP.get('N1', d1); why['N1'] = d1 + w2, nt2 = apply_recipe(w, m1); p2 = refit(w2, nt2) + why['N2'] = dict(first=list(p2[0]) if p2 else None, n=len(p2)); ctl['N2_partial_rejected'] = bool(p2) and p2[0][0] == 'cap' and why['N2'] == EXP.get('N2', why['N2']) + w3, nt3 = apply_recipe(w, one, wrong_sign=True); d3 = diff(bend_state(w3)) + ctl['N3_wrong_sign_rejected'] = d3['n'] > 0 and d3 == EXP.get('N3', d3); why['N3'] = d3 + assert len(ctl) == 4 + wn, nt = apply_recipe(w, moves); pr = refit(wn, nt) + assert not pr, ('illegal', pr[:5]) + assert bend_state(wn) == S0, 'B-end state changed' + paid, widths = profile(wn) + wn['report'] = dict(wn['report'], local_profile={str(k): v for k, v in sorted(paid.items())}, + local_rank_mass=sum(k * v for k, v in paid.items())) + data = enc(wn); sha = hashlib.sha256(data).hexdigest() + os.makedirs(out, exist_ok=True) + with open(os.path.join(out, 'FULL-WORD.json.gz'), 'wb') as f: f.write(gzip.compress(data, mtime=0)) + rep = dict(recipe=rec['name'], input_sha256=rec['input_sha256'], output_sha256=sha, expected_output_sha256=rec['output_sha256'], + moves=len(moves), controls=ctl, rejection=why, profile=wn['report']['local_profile'], + widths={str(k): v for k, v in sorted(widths.items()) if k}, W=sum(k * v for k, v in widths.items())) + with open(os.path.join(out, 'BUILD.json'), 'w', newline='\n') as f: f.write(json.dumps(rep, indent=1) + '\n') + print(json.dumps(rep, indent=1)) + ok = all(ctl.values()) and sha == rec['output_sha256'] and rep['profile'] == rec['profile_out'] and rep['W'] == rec['W'] + sys.exit(0 if ok else 1) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/reproduce_sw4.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/reproduce_sw4.py new file mode 100644 index 0000000000..cb038e064b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/construction/sw4/reproduce_sw4.py @@ -0,0 +1,87 @@ +#!/usr/bin/env python3 +"""Rebuild the SW4 word (BRoute read-set exchange on four entering-copy pairs) and its native locals. + +Input: a fresh `construction/promo/reproduce_promo.py --base p6n --k ` output directory; its promoted +word is pinned there and by SW4-RECIPE-.json (this package: --k p6n-k4, P6k4 0390ec65..., recipe P6k4). Steps, each checked exactly: + 1. sw4: BRoute's build_sw4.py (standard library only). It applies the 16 explicit moves of SW4-RECIPE-.json: + every listed read of h becomes a read of its face register r and vice versa, with the entrance pre-reads deleted + or inserted. It checks the B-end state of every register mod p, the frame caps, tails and ends, and the output sha + and profile. Its controls C0, N1, N2 and N3 run on every build and must all hold (count pinned to 4). + 2. layer-end-controls: ../layers_p6n/layer_end_controls.py (per-end variant, Q6Reviewer-signed) on the SW4 word; + the count is pinned in LOCAL-PINS-sw4-.json. + 3. native, ledgers, local-replay, wrappers, phases: PR635's native local programs. The canonical word, local + programs and Clifford recipes are pinned (LOCAL-PINS-sw4-.json). +Apache-2.0. Driver by ColdWitness around BRoute's constructor. +""" +import argparse, gzip, hashlib, json, os, subprocess, sys, time +from pathlib import Path + +HERE = Path(__file__).resolve().parent +P6 = HERE.parent / 'layers_p6n' + + +def read(p): + raw = Path(p).read_bytes() + return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--main', type=Path, required=True) + ap.add_argument('--pr635', type=Path, required=True) + ap.add_argument('--promo-dir', type=Path, required=True, help='construction/promo/reproduce_promo.py output') + ap.add_argument('--out', type=Path, required=True) + ap.add_argument('--recipe', default='P6k4', help='SW4-RECIPE-.json and LOCAL-PINS-sw4-.json') + ap.add_argument('--skip-phases', action='store_true') + a = ap.parse_args() + out = a.out.resolve(); assert not out.exists(); out.mkdir(parents=True) + up = a.pr635.resolve() / 'research/complex-571-cold14-st2' + src = a.main.resolve() / 'research/complex-k492-owner-repair/vendor/multicold' + base = src / 'vendor/pr558'; parent = base / 'vendor/pr552' + rfile = HERE / ('SW4-RECIPE-%s.json' % a.recipe); rec = read(rfile); pins = read(HERE / ('LOCAL-PINS-sw4-%s.json' % a.recipe)) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(src), GAIN_PR564_SOURCE=str(src)) + for k in ('PYTHONOPTIMIZE', 'XPARAM', 'EXTRAH', 'PAIRING_RANKS', 'DIAG', 'HYBBUDGET', 'PR635_CODE'): env.pop(k, None) + steps = [] + + def run(label, script, *args, portable=True): + t = time.monotonic() + cmd = [sys.executable, '-B'] + ([str(src / 'code/run_portable.py')] if portable else []) + [str(script), *map(str, args)] + with (out / (label + '.log')).open('w') as f: + rc = subprocess.call(cmd, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=label, exit_code=rc, seconds=round(time.monotonic() - t, 3))) + (out / 'STEPS.json').write_text(json.dumps(steps, indent=2) + '\n') + assert rc == 0, label + print('PASS', label, flush=True) + + inp = a.promo_dir.resolve() / 'promo/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(inp.read_bytes())).hexdigest() == rec['input_sha256'], 'input must be the pinned promoted word' + run('sw4', HERE / 'build_sw4.py', inp, out / 'sw4', rfile, portable=False) + b = read(out / 'sw4/BUILD.json') + assert len(b['controls']) == pins['sw4_controls'] and all(b['controls'].values()), b['controls'] + word = out / 'sw4/FULL-WORD.json.gz' + assert hashlib.sha256(gzip.decompress(word.read_bytes())).hexdigest() == rec['output_sha256'] + routing = parent / 'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz' + env['PR635_CODE'] = str(up / 'code') + run('layer-end-controls', P6 / 'layer_end_controls.py', word, routing, out / 'controls') + env.pop('PR635_CODE') + ctl = read(out / 'controls/COLD-END-CONTROLS.json') + assert ctl['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' and len(ctl['rejected']) == pins['layer_controls'], len(ctl['rejected']) + local = out / 'local' + run('native', up / 'code/hpe_audit_and_transport.py', '--raw', word, '--routing', routing, '--out', local) + assert hashlib.sha256(gzip.decompress((local / 'CANONICAL-WORD.json.gz').read_bytes())).hexdigest() == pins['canonical_sha256'], 'canonical word' + run('ledgers', up / 'code/hpe_emit_local.py', local) + run('local-replay', up / 'code/hpe_audit_local.py', local) + run('wrappers', up / 'code/hpe_adapters_local.py', local / 'CANONICAL-WORD.json.gz', + local / 'RESIDUAL-ADAPTERS.json', local / 'WRAPPER-CHECKS.json') + checks = read(local / 'LOCAL-CHECKS.json') + for o, s in pins['program_sha256'].items(): assert checks[o]['sha256'] == s, ('local program', o) + if not a.skip_phases: + run('phases', base / 'code/phases_full.py', local, parent / 'complex-global/vendor531/vendor/clifford') + assert hashlib.sha256((local / 'CLIFFORD-RECIPES.json').read_bytes()).hexdigest() == pins['clifford_recipes_sha256'], 'clifford recipes' + print('DONE', local, flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/FRONTIER.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/FRONTIER.json new file mode 100644 index 0000000000..70285d4d85 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/FRONTIER.json @@ -0,0 +1,36 @@ +{ + "checked_at_utc": "2026-10-13 00:54:29 UTC", + "construction_base": { + "pr": 635, + "commit": "a6895a69f8ad98ab45777b03e9e6f48888c39f6f", + "kappa": "0.001636241501576388" + }, + "latest_pr": 642, + "strongest_reported_pr": 641, + "comparisons": [ + { + "number": 641, + "url": "https://github.com/CrocSwap/integer-mult-bounds/pull/641", + "title": "Conditional κ = 0.001636523543003976: cost-neutral pivot swaps with four entering ends (s4) on PR635", + "head_sha": "ff580ea5407aa427d64233523e46ee0afe24a766", + "head_repo": "jeremykothe2/integer-mult-bounds", + "created_at": "2026-10-13T00:36:30Z", + "updated_at": "2026-10-13T00:36:30Z", + "reported_kappa": "0.001636523543003976" + }, + { + "number": 642, + "url": "https://github.com/CrocSwap/integer-mult-bounds/pull/642", + "title": "Conditional κ = 0.001636472098484378: selective helper-249 dispatch", + "head_sha": "d1154e23e13d85fdbf64d4b41fa20bb0f56a428f", + "head_repo": "vectorsss/integer-mult-bounds", + "created_at": "2026-10-13T00:40:40Z", + "updated_at": "2026-10-13T00:46:54Z", + "reported_kappa": "0.001636472098484378" + } + ], + "new_kappa": "0.001649483702558979", + "gain_over_641_percent": "0.791932362379189601995955118466917211009518325743405547289975", + "gain_over_642_percent": "0.795100881136422911010672021375626721886288268207407873093008", + "scope": "PR641/642 values are their public reported conditional witnesses, not independently replayed here. This delta retains the pinned PR635 construction ancestry and replaces its local supplier and whole-owner dispatch; it does not claim to compose the later pivot swaps or helper249 end." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/OWNERS.json.gz new file mode 100644 index 0000000000..d95e0ae383 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/PLAN.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/PLAN.json new file mode 100644 index 0000000000..532c26dcc8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/PLAN.json @@ -0,0 +1,85660 @@ +{ + "status": "FROZEN_EXPLICIT_T16_TWO_BANK_DIRECT_SUM_OWNER_NOMINATION", + "mode": "gauge44-all144-t16-idle-concentration", + "K": 4, + "T": 16, + "M": 73, + "L": 9, + "live": 14336, + "deficit": 5120, + "profile": { + "1": 348673, + "2": 62209, + "3": 61704, + "4": 19872, + "5": 12096, + "7": 3, + "8": 1152, + "48": 4875 + }, + "order": [ + [ + 0, + 0 + ], + [ + 0, + 8 + ], + [ + 0, + 1 + ], + [ + 0, + 9 + ], + [ + 1, + 0 + ], + [ + 1, + 8 + ], + [ + 0, + 2 + ], + [ + 0, + 10 + ], + [ + 1, + 1 + ], + [ + 1, + 9 + ], + [ + 2, + 0 + ], + [ + 2, + 8 + ], + [ + 0, + 3 + ], + [ + 0, + 11 + ], + [ + 1, + 2 + ], + [ + 1, + 10 + ], + [ + 2, + 1 + ], + [ + 2, + 9 + ], + [ + 3, + 0 + ], + [ + 3, + 8 + ], + [ + 0, + 4 + ], + [ + 0, + 12 + ], + [ + 1, + 3 + ], + [ + 1, + 11 + ], + [ + 2, + 2 + ], + [ + 2, + 10 + ], + [ + 3, + 1 + ], + [ + 3, + 9 + ], + [ + 4, + 0 + ], + [ + 4, + 8 + ], + [ + 0, + 5 + ], + [ + 0, + 13 + ], + [ + 1, + 4 + ], + [ + 1, + 12 + ], + [ + 2, + 3 + ], + [ + 2, + 11 + ], + [ + 3, + 2 + ], + [ + 3, + 10 + ], + [ + 4, + 1 + ], + [ + 4, + 9 + ], + [ + 5, + 0 + ], + [ + 5, + 8 + ], + [ + 0, + 6 + ], + [ + 0, + 14 + ], + [ + 1, + 5 + ], + [ + 1, + 13 + ], + [ + 2, + 4 + ], + [ + 2, + 12 + ], + [ + 3, + 3 + ], + [ + 3, + 11 + ], + [ + 4, + 2 + ], + [ + 4, + 10 + ], + [ + 5, + 1 + ], + [ + 5, + 9 + ], + [ + 0, + 7 + ], + [ + 0, + 15 + ], + [ + 6, + 0 + ], + [ + 6, + 8 + ], + [ + 1, + 6 + ], + [ + 1, + 14 + ], + [ + 2, + 5 + ], + [ + 2, + 13 + ], + [ + 3, + 4 + ], + [ + 3, + 12 + ], + [ + 4, + 3 + ], + [ + 4, + 11 + ], + [ + 5, + 2 + ], + [ + 5, + 10 + ], + [ + 6, + 1 + ], + [ + 6, + 9 + ], + [ + 1, + 7 + ], + [ + 1, + 15 + ], + [ + 7, + 0 + ], + [ + 7, + 8 + ], + [ + 2, + 6 + ], + [ + 2, + 14 + ], + [ + 3, + 5 + ], + [ + 3, + 13 + ], + [ + 4, + 4 + ], + [ + 4, + 12 + ], + [ + 5, + 3 + ], + [ + 5, + 11 + ], + [ + 6, + 2 + ], + [ + 6, + 10 + ], + [ + 7, + 1 + ], + [ + 7, + 9 + ], + [ + 2, + 7 + ], + [ + 2, + 15 + ], + [ + 8, + 0 + ], + [ + 8, + 8 + ], + [ + 3, + 6 + ], + [ + 3, + 14 + ], + [ + 4, + 5 + ], + [ + 4, + 13 + ], + [ + 5, + 4 + ], + [ + 5, + 12 + ], + [ + 6, + 3 + ], + [ + 6, + 11 + ], + [ + 7, + 2 + ], + [ + 7, + 10 + ], + [ + 8, + 1 + ], + [ + 8, + 9 + ], + [ + 3, + 7 + ], + [ + 3, + 15 + ], + [ + 4, + 6 + ], + [ + 4, + 14 + ], + [ + 5, + 5 + ], + [ + 5, + 13 + ], + [ + 6, + 4 + ], + [ + 6, + 12 + ], + [ + 7, + 3 + ], + [ + 7, + 11 + ], + [ + 8, + 2 + ], + [ + 8, + 10 + ], + [ + 4, + 7 + ], + [ + 4, + 15 + ], + [ + 5, + 6 + ], + [ + 5, + 14 + ], + [ + 6, + 5 + ], + [ + 6, + 13 + ], + [ + 7, + 4 + ], + [ + 7, + 12 + ], + [ + 8, + 3 + ], + [ + 8, + 11 + ], + [ + 5, + 7 + ], + [ + 5, + 15 + ], + [ + 6, + 6 + ], + [ + 6, + 14 + ], + [ + 7, + 5 + ], + [ + 7, + 13 + ], + [ + 8, + 4 + ], + [ + 8, + 12 + ], + [ + 6, + 7 + ], + [ + 6, + 15 + ], + [ + 7, + 6 + ], + [ + 7, + 14 + ], + [ + 8, + 5 + ], + [ + 8, + 13 + ], + [ + 7, + 7 + ], + [ + 7, + 15 + ], + [ + 8, + 6 + ], + [ + 8, + 14 + ], + [ + 8, + 7 + ], + [ + 8, + 15 + ] + ], + "windows": { + "0,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "0,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "8,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + ], + "8,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + ], + "1,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + ], + "1,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8 + ] + ], + "9,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "9,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,1": [ + 8, + [ + 5, + 6, + 7, + 8, + 9, + 10 + ] + ], + "0,3": [ + 8, + [ + 5, + 6, + 7, + 8, + 9, + 10 + ] + ], + "8,1": [ + 8, + [ + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "8,3": [ + 8, + [ + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "2,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14 + ] + ], + "2,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14 + ] + ], + "10,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ] + ], + "10,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ] + ], + "1,1": [ + 8, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "1,3": [ + 8, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "9,1": [ + 8, + [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "9,3": [ + 8, + [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "0,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "0,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "8,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "8,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "3,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "3,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "11,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "11,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "2,1": [ + 8, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "2,3": [ + 8, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "10,1": [ + 8, + [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "10,3": [ + 8, + [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "1,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "9,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27 + ] + ], + "9,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27 + ] + ], + "0,5": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,7": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "8,5": [ + 8, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "8,7": [ + 8, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "4,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "4,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "12,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "12,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "3,1": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "3,3": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "11,1": [ + 8, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "11,3": [ + 8, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "2,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ] + ], + "2,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ] + ], + "10,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "10,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "1,5": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "1,7": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "9,5": [ + 8, + [ + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "9,7": [ + 8, + [ + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "0,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "0,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "8,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "8,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "5,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "5,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "13,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "13,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "4,1": [ + 8, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "4,3": [ + 8, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "12,1": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "12,3": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "3,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "11,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ] + ], + "11,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ] + ], + "2,5": [ + 8, + [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "2,7": [ + 8, + [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "10,5": [ + 8, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "10,7": [ + 8, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "1,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "1,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "9,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "9,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "0,9": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "0,11": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "8,9": [ + 8, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "8,11": [ + 8, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "6,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "14,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "14,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,1": [ + 8, + [ + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60 + ] + ], + "5,3": [ + 8, + [ + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60 + ] + ], + "13,1": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "13,3": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "4,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "4,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "12,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63 + ] + ], + "12,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63 + ] + ], + "3,5": [ + 8, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64 + ] + ], + "3,7": [ + 8, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64 + ] + ], + "11,5": [ + 8, + [ + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "11,7": [ + 8, + [ + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "2,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66 + ] + ], + "2,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66 + ] + ], + "10,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + ], + "10,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + ], + "1,9": [ + 8, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "1,11": [ + 8, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "9,9": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69 + ] + ], + "9,11": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69 + ] + ], + "7,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "7,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "15,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "15,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "6,1": [ + 8, + [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74 + ] + ], + "6,3": [ + 8, + [ + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74 + ] + ], + "14,1": [ + 8, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ] + ], + "14,3": [ + 8, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ] + ], + "5,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76 + ] + ], + "5,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76 + ] + ], + "13,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77 + ] + ], + "13,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77 + ] + ], + "4,5": [ + 8, + [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78 + ] + ], + "4,7": [ + 8, + [ + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78 + ] + ], + "12,5": [ + 8, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79 + ] + ], + "12,7": [ + 8, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79 + ] + ], + "3,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "3,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "11,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "11,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "2,9": [ + 8, + [ + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82 + ] + ], + "2,11": [ + 8, + [ + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82 + ] + ], + "10,9": [ + 8, + [ + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83 + ] + ], + "10,11": [ + 8, + [ + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83 + ] + ], + "7,1": [ + 8, + [ + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86 + ] + ], + "7,3": [ + 8, + [ + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86 + ] + ], + "15,1": [ + 8, + [ + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87 + ] + ], + "15,3": [ + 8, + [ + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87 + ] + ], + "0,12": [ + 48, + [ + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "0,13": [ + 48, + [ + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "0,14": [ + 32, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "0,15": [ + 32, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "0,16": [ + 16, + [ + 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 + ] + ], + "0,17": [ + 16, + [ + 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 + ] + ], + "8,12": [ + 48, + [ + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "8,13": [ + 48, + [ + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "8,14": [ + 32, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "8,15": [ + 32, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "8,16": [ + 16, + [ + 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 + ] + ], + "8,17": [ + 16, + [ + 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 + ] + ], + "6,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "6,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "14,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "14,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "5,5": [ + 8, + [ + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92 + ] + ], + "5,7": [ + 8, + [ + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92 + ] + ], + "13,5": [ + 8, + [ + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93 + ] + ], + "13,7": [ + 8, + [ + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93 + ] + ], + "4,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "4,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "12,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "12,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "3,9": [ + 8, + [ + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96 + ] + ], + "3,11": [ + 8, + [ + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96 + ] + ], + "11,9": [ + 8, + [ + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97 + ] + ], + "11,11": [ + 8, + [ + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97 + ] + ], + "1,12": [ + 48, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "1,13": [ + 48, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "1,14": [ + 32, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "1,15": [ + 32, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "1,16": [ + 16, + [ + 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 + ] + ], + "1,17": [ + 16, + [ + 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 + ] + ], + "9,12": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "9,13": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "9,14": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "9,15": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "9,16": [ + 16, + [ + 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 + ] + ], + "9,17": [ + 16, + [ + 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 + ] + ], + "7,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "7,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "15,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "15,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "6,5": [ + 8, + [ + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104 + ] + ], + "6,7": [ + 8, + [ + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104 + ] + ], + "14,5": [ + 8, + [ + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105 + ] + ], + "14,7": [ + 8, + [ + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105 + ] + ], + "5,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106 + ] + ], + "5,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106 + ] + ], + "13,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107 + ] + ], + "13,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107 + ] + ], + "4,9": [ + 8, + [ + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108 + ] + ], + "4,11": [ + 8, + [ + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108 + ] + ], + "12,9": [ + 8, + [ + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109 + ] + ], + "12,11": [ + 8, + [ + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109 + ] + ], + "2,12": [ + 48, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + ], + "2,13": [ + 48, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + ], + "2,14": [ + 32, + [ + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + ], + "2,15": [ + 32, + [ + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + ], + "2,16": [ + 16, + [ + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + ], + "2,17": [ + 16, + [ + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + ], + "10,12": [ + 48, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + ], + "10,13": [ + 48, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + ], + "10,14": [ + 32, + [ + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + ], + "10,15": [ + 32, + [ + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + ], + "10,16": [ + 16, + [ + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + ], + "10,17": [ + 16, + [ + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + ], + "7,5": [ + 8, + [ + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114 + ] + ], + "7,7": [ + 8, + [ + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114 + ] + ], + "15,5": [ + 8, + [ + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115 + ] + ], + "15,7": [ + 8, + [ + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115 + ] + ], + "6,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116 + ] + ], + "6,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116 + ] + ], + "14,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117 + ] + ], + "14,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117 + ] + ], + "5,9": [ + 8, + [ + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118 + ] + ], + "5,11": [ + 8, + [ + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118 + ] + ], + "13,9": [ + 8, + [ + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119 + ] + ], + "13,11": [ + 8, + [ + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119 + ] + ], + "3,12": [ + 48, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + ], + "3,13": [ + 48, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + ], + "3,14": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + ], + "3,15": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + ], + "3,16": [ + 16, + [ + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + ], + "3,17": [ + 16, + [ + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + ], + "11,12": [ + 48, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123 + ] + ], + "11,13": [ + 48, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123 + ] + ], + "11,14": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123 + ] + ], + "11,15": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123 + ] + ], + "11,16": [ + 16, + [ + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123 + ] + ], + "11,17": [ + 16, + [ + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123 + ] + ], + "7,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124 + ] + ], + "7,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124 + ] + ], + "15,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125 + ] + ], + "15,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125 + ] + ], + "6,9": [ + 8, + [ + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126 + ] + ], + "6,11": [ + 8, + [ + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126 + ] + ], + "14,9": [ + 8, + [ + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127 + ] + ], + "14,11": [ + 8, + [ + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127 + ] + ], + "4,12": [ + 48, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130 + ] + ], + "4,13": [ + 48, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130 + ] + ], + "4,14": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130 + ] + ], + "4,15": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130 + ] + ], + "4,16": [ + 16, + [ + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130 + ] + ], + "4,17": [ + 16, + [ + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130 + ] + ], + "12,12": [ + 48, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + ], + "12,13": [ + 48, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + ], + "12,14": [ + 32, + [ + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + ], + "12,15": [ + 32, + [ + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + ], + "12,16": [ + 16, + [ + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + ], + "12,17": [ + 16, + [ + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + ], + "7,9": [ + 8, + [ + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132 + ] + ], + "7,11": [ + 8, + [ + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132 + ] + ], + "15,9": [ + 8, + [ + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133 + ] + ], + "15,11": [ + 8, + [ + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133 + ] + ], + "5,12": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + ], + "5,13": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + ], + "5,14": [ + 32, + [ + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + ], + "5,15": [ + 32, + [ + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + ], + "5,16": [ + 16, + [ + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + ], + "5,17": [ + 16, + [ + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + ], + "13,12": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137 + ] + ], + "13,13": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137 + ] + ], + "13,14": [ + 32, + [ + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137 + ] + ], + "13,15": [ + 32, + [ + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137 + ] + ], + "13,16": [ + 16, + [ + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137 + ] + ], + "13,17": [ + 16, + [ + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137 + ] + ], + "6,12": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140 + ] + ], + "6,13": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140 + ] + ], + "6,14": [ + 32, + [ + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140 + ] + ], + "6,15": [ + 32, + [ + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140 + ] + ], + "6,16": [ + 16, + [ + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140 + ] + ], + "6,17": [ + 16, + [ + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140 + ] + ], + "14,12": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141 + ] + ], + "14,13": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141 + ] + ], + "14,14": [ + 32, + [ + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141 + ] + ], + "14,15": [ + 32, + [ + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141 + ] + ], + "14,16": [ + 16, + [ + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141 + ] + ], + "14,17": [ + 16, + [ + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141 + ] + ], + "7,12": [ + 48, + [ + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + ], + "7,13": [ + 48, + [ + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + ], + "7,14": [ + 32, + [ + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + ], + "7,15": [ + 32, + [ + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + ], + "7,16": [ + 16, + [ + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + ], + "7,17": [ + 16, + [ + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + ], + "15,12": [ + 48, + [ + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + ], + "15,13": [ + 48, + [ + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + ], + "15,14": [ + 32, + [ + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + ], + "15,15": [ + 32, + [ + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + ], + "15,16": [ + 16, + [ + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + ], + "15,17": [ + 16, + [ + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + ] + }, + "sides": { + "0": 0, + "2": 1, + "1": 0, + "3": 1, + "4": 0, + "6": 1, + "5": 0, + "7": 1, + "8": 0, + "10": 1, + "9": 0, + "11": 1, + "12": 0, + "13": 1, + "14": 0, + "15": 1, + "16": 0, + "17": 1 + }, + "pairs": { + "0": 1, + "2": 1, + "1": 1, + "3": 1, + "4": 2, + "6": 2, + "5": 2, + "7": 2, + "8": 3, + "10": 3, + "9": 3, + "11": 3, + "12": 0, + "13": 0, + "14": 1, + "15": 1, + "16": 2, + "17": 2 + }, + "solver_status": "exact pattern-flow LNS on the T16 actual-window geometry", + "gap": null, + "provider_calls": [ + { + "time": 0, + "stage": 0, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 1, + "stage": 0, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 2, + "stage": 0, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 3, + "stage": 0, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 4, + "stage": 1, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 5, + "stage": 1, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 6, + "stage": 0, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 7, + "stage": 0, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 8, + "stage": 1, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 9, + "stage": 1, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 10, + "stage": 2, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 11, + "stage": 2, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 12, + "stage": 0, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 13, + "stage": 0, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 14, + "stage": 1, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 15, + "stage": 1, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 16, + "stage": 2, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 17, + "stage": 2, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 18, + "stage": 3, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 19, + "stage": 3, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 20, + "stage": 0, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 21, + "stage": 0, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 22, + "stage": 1, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 23, + "stage": 1, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 24, + "stage": 2, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 25, + "stage": 2, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 26, + "stage": 3, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 27, + "stage": 3, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 28, + "stage": 4, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 29, + "stage": 4, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 30, + "stage": 0, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 31, + "stage": 0, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 32, + "stage": 1, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 33, + "stage": 1, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 34, + "stage": 2, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 35, + "stage": 2, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 36, + "stage": 3, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 37, + "stage": 3, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 38, + "stage": 4, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 39, + "stage": 4, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 40, + "stage": 5, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 41, + "stage": 5, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 42, + "stage": 0, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 43, + "stage": 0, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 44, + "stage": 1, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 45, + "stage": 1, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 46, + "stage": 2, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 47, + "stage": 2, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 48, + "stage": 3, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 49, + "stage": 3, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 50, + "stage": 4, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 51, + "stage": 4, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 52, + "stage": 5, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 53, + "stage": 5, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 54, + "stage": 0, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 55, + "stage": 0, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 56, + "stage": 6, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 57, + "stage": 6, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 58, + "stage": 1, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 59, + "stage": 1, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 60, + "stage": 2, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 61, + "stage": 2, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 62, + "stage": 3, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 63, + "stage": 3, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 64, + "stage": 4, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 65, + "stage": 4, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 66, + "stage": 5, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 67, + "stage": 5, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 68, + "stage": 6, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 69, + "stage": 6, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 70, + "stage": 1, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 71, + "stage": 1, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 72, + "stage": 7, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 73, + "stage": 7, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 74, + "stage": 2, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 75, + "stage": 2, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 76, + "stage": 3, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 77, + "stage": 3, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 78, + "stage": 4, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 79, + "stage": 4, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 80, + "stage": 5, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 81, + "stage": 5, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 82, + "stage": 6, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 83, + "stage": 6, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 84, + "stage": 7, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 85, + "stage": 7, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 86, + "stage": 2, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 87, + "stage": 2, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 88, + "stage": 8, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 89, + "stage": 8, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 90, + "stage": 3, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 91, + "stage": 3, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 92, + "stage": 4, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 93, + "stage": 4, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 94, + "stage": 5, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 95, + "stage": 5, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 96, + "stage": 6, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 97, + "stage": 6, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 98, + "stage": 7, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 99, + "stage": 7, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 100, + "stage": 8, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 101, + "stage": 8, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 102, + "stage": 3, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 103, + "stage": 3, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 104, + "stage": 4, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 105, + "stage": 4, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 106, + "stage": 5, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 107, + "stage": 5, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 108, + "stage": 6, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 109, + "stage": 6, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 110, + "stage": 7, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 111, + "stage": 7, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 112, + "stage": 8, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 113, + "stage": 8, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 114, + "stage": 4, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 115, + "stage": 4, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 116, + "stage": 5, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 117, + "stage": 5, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 118, + "stage": 6, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 119, + "stage": 6, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 120, + "stage": 7, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 121, + "stage": 7, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 122, + "stage": 8, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 123, + "stage": 8, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 124, + "stage": 5, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 125, + "stage": 5, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 126, + "stage": 6, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 127, + "stage": 6, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 128, + "stage": 7, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 129, + "stage": 7, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 130, + "stage": 8, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 131, + "stage": 8, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 132, + "stage": 6, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 133, + "stage": 6, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 134, + "stage": 7, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 135, + "stage": 7, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 136, + "stage": 8, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 137, + "stage": 8, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 138, + "stage": 7, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 139, + "stage": 7, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 140, + "stage": 8, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 141, + "stage": 8, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 142, + "stage": 8, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 143, + "stage": 8, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + } + ], + "per_call_widths": [ + { + "stage": 0, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + } + ], + "provider_registry": { + "gauge44": { + "directory": "providers/gauge44", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "LOCAL-PROGRAMS.json.gz": "94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac", + "LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "INDEPENDENT-LOCAL-REPLAY.json": "0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "8002fe69a57ed36abd0a35e8a840d75760e81d82fc33526b0ca4bb0c80d93d3f", + "RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "backward": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "LOCAL-PROGRAMS.json.gz": "b816de3bb80954991de5af1d736061d6efd6e49008c345b2e47075df1fcf38af", + "LOCAL-CHECKS.json": "6311e6d36e83c34822173fa53aa3b89bba78f0104d487f9d1521bb32d9e0d359", + "INDEPENDENT-LOCAL-REPLAY.json": "b150e709dd3a77978ee32797af7cb5b69e59b8fc0514ac97b42f1e041d918870", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + } + }, + "source_plan_sha256": "0214279f43204f9334aef8c3f6f691e8b81a715628c45fc8341c21a19d26d4a5", + "assignment_sha256": "d275e6c0ef501fdc9cb6fba883d65666d10391ad35ed5e66b2f4d7689ec75d4b", + "source_owners_sha256": "93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045", + "assignment_content_sha256": "d190f4c26f533789479617de5e2f4004cfb9596beca297c80018e9190321f63b", + "replica_lift": { + "groups": 2, + "source_replicas": 8, + "replicas": 16, + "parent_template_content_sha256": "8904bbbf46dfbf1c6df0e43479a23913fc59a410e879188112e88f16c850ede8", + "owners_file_sha256": "d275e6c0ef501fdc9cb6fba883d65666d10391ad35ed5e66b2f4d7689ec75d4b", + "window_semantics": "strict physical source-event touch intervals, including bridges", + "schedule_content_sha256": "ef9b70f30251e90ca15f54e7802cedf9b2d23bdc150e8f2bc18c916d0f2f2312" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/PREPARATION.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/PREPARATION.json new file mode 100644 index 0000000000..8c7796820f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/PREPARATION.json @@ -0,0 +1,45 @@ +{ + "status": "PASS_EXPLICIT_MAP_AND_FRESH_PROVIDER_NOMINATION", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "source_owners_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "idle_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "roles": 35424, + "rank_mass": 520704, + "deficit": 2560, + "remaining": "Independent emitted-controller audit, fresh finite invoice, exact moments and outer assembly." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/SPEC-T8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/SPEC-T8.json new file mode 100644 index 0000000000..2888977d0c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/SPEC-T8.json @@ -0,0 +1,1327 @@ +{ + "schema": "witness-spec/1", + "name": "gauge44-all72", + "data": { + "plan_sha256": "0214279f43204f9334aef8c3f6f691e8b81a715628c45fc8341c21a19d26d4a5", + "owners_sha256": "93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045" + }, + "dispatch": [ + [ + 0, + 0, + "gauge44" + ], + [ + 0, + 1, + "gauge44" + ], + [ + 0, + 2, + "gauge44" + ], + [ + 0, + 3, + "gauge44" + ], + [ + 0, + 4, + "gauge44" + ], + [ + 0, + 5, + "gauge44" + ], + [ + 0, + 6, + "gauge44" + ], + [ + 0, + 7, + "gauge44" + ], + [ + 1, + 0, + "gauge44" + ], + [ + 1, + 1, + "gauge44" + ], + [ + 1, + 2, + "gauge44" + ], + [ + 1, + 3, + "gauge44" + ], + [ + 1, + 4, + "gauge44" + ], + [ + 1, + 5, + "gauge44" + ], + [ + 1, + 6, + "gauge44" + ], + [ + 1, + 7, + "gauge44" + ], + [ + 2, + 0, + "gauge44" + ], + [ + 2, + 1, + "gauge44" + ], + [ + 2, + 2, + "gauge44" + ], + [ + 2, + 3, + "gauge44" + ], + [ + 2, + 4, + "gauge44" + ], + [ + 2, + 5, + "gauge44" + ], + [ + 2, + 6, + "gauge44" + ], + [ + 2, + 7, + "gauge44" + ], + [ + 3, + 0, + "gauge44" + ], + [ + 3, + 1, + "gauge44" + ], + [ + 3, + 2, + "gauge44" + ], + [ + 3, + 3, + "gauge44" + ], + [ + 3, + 4, + "gauge44" + ], + [ + 3, + 5, + "gauge44" + ], + [ + 3, + 6, + "gauge44" + ], + [ + 3, + 7, + "gauge44" + ], + [ + 4, + 0, + "gauge44" + ], + [ + 4, + 1, + "gauge44" + ], + [ + 4, + 2, + "gauge44" + ], + [ + 4, + 3, + "gauge44" + ], + [ + 4, + 4, + "gauge44" + ], + [ + 4, + 5, + "gauge44" + ], + [ + 4, + 6, + "gauge44" + ], + [ + 4, + 7, + "gauge44" + ], + [ + 5, + 0, + "gauge44" + ], + [ + 5, + 1, + "gauge44" + ], + [ + 5, + 2, + "gauge44" + ], + [ + 5, + 3, + "gauge44" + ], + [ + 5, + 4, + "gauge44" + ], + [ + 5, + 5, + "gauge44" + ], + [ + 5, + 6, + "gauge44" + ], + [ + 5, + 7, + "gauge44" + ], + [ + 6, + 0, + "gauge44" + ], + [ + 6, + 1, + "gauge44" + ], + [ + 6, + 2, + "gauge44" + ], + [ + 6, + 3, + "gauge44" + ], + [ + 6, + 4, + "gauge44" + ], + [ + 6, + 5, + "gauge44" + ], + [ + 6, + 6, + "gauge44" + ], + [ + 6, + 7, + "gauge44" + ], + [ + 7, + 0, + "gauge44" + ], + [ + 7, + 1, + "gauge44" + ], + [ + 7, + 2, + "gauge44" + ], + [ + 7, + 3, + "gauge44" + ], + [ + 7, + 4, + "gauge44" + ], + [ + 7, + 5, + "gauge44" + ], + [ + 7, + 6, + "gauge44" + ], + [ + 7, + 7, + "gauge44" + ], + [ + 8, + 0, + "gauge44" + ], + [ + 8, + 1, + "gauge44" + ], + [ + 8, + 2, + "gauge44" + ], + [ + 8, + 3, + "gauge44" + ], + [ + 8, + 4, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 56, + "5": 32, + "7": 32, + "8": 120, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2897, + "expected_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "LOCAL-PROGRAMS.json.gz": "b816de3bb80954991de5af1d736061d6efd6e49008c345b2e47075df1fcf38af", + "LOCAL-CHECKS.json": "6311e6d36e83c34822173fa53aa3b89bba78f0104d487f9d1521bb32d9e0d359", + "INDEPENDENT-LOCAL-REPLAY.json": "b150e709dd3a77978ee32797af7cb5b69e59b8fc0514ac97b42f1e041d918870", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + }, + "entering": 192, + "entrance": 384, + "width_digest": "d63626638b95584b87db7e7481471b43683386e135f964a2b27be372cf6abf70", + "program_hashes": { + "backward": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "forward": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + "artifacts": { + "LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98373, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "prefix_l1": "2765345371136269591/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98341, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 208, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 32, + "8": 120, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387088, + "local_primitive_bound": 10038870452398, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "program_hashes": { + "backward": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "forward": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "LOCAL-PROGRAMS.json.gz": "b816de3bb80954991de5af1d736061d6efd6e49008c345b2e47075df1fcf38af", + "LOCAL-CHECKS.json": "6311e6d36e83c34822173fa53aa3b89bba78f0104d487f9d1521bb32d9e0d359", + "INDEPENDENT-LOCAL-REPLAY.json": "b150e709dd3a77978ee32797af7cb5b69e59b8fc0514ac97b42f1e041d918870", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + }, + "semantic_phase_sha256": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "expected_local": { + "forward": { + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "prefix_l1": "2765345371136269591/1024", + "coefficient_work_primitive_count": 98341 + }, + "backward": { + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98373 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "0.001636241501576388", + "hosted_residuals": 34560, + "rank_mass": 520704, + "actual_73column_sigmas": 9023, + "cross_replica_helper_roles": 27858, + "idle_remainders": 3925, + "idle_remainder_profile": { + "1": 1239, + "2": 11, + "3": 179, + "7": 54, + "16": 23, + "48": 2419 + }, + "global_profile": { + "1": 174471, + "2": 31115, + "3": 30851, + "4": 9936, + "5": 6048, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "live": 7168, + "physical": 7658, + "conservative_kappa_decimal": "0.00167116004883793", + "kappa_decimal": "0.001671160051689084", + "complex_lower": "66958300103825920799/40000000000000000000000", + "conservative_complex_lower": "1673957499734940125477/1000000000000000000000000", + "kappa": "417790012922271/250000000000000000", + "assembly_controls_rejected": 69, + "provider_counts": { + "gauge44": 72 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/layers_np/PIVOT-SWAP-K8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/SPEC.json new file mode 100644 index 0000000000..597f7d8a9d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/SPEC.json @@ -0,0 +1,1973 @@ +{ + "schema": "witness-spec/1", + "name": "gauge44-t16-two-bank", + "data": { + "plan_sha256": "e104d46a767dd0e223902d6f965aca2485d303499c019cc0d29e1b270da68e5f", + "owners_sha256": "d275e6c0ef501fdc9cb6fba883d65666d10391ad35ed5e66b2f4d7689ec75d4b" + }, + "dispatch": [ + [ + 0, + 0, + "gauge44" + ], + [ + 0, + 8, + "gauge44" + ], + [ + 0, + 1, + "gauge44" + ], + [ + 0, + 9, + "gauge44" + ], + [ + 1, + 0, + "gauge44" + ], + [ + 1, + 8, + "gauge44" + ], + [ + 0, + 2, + "gauge44" + ], + [ + 0, + 10, + "gauge44" + ], + [ + 1, + 1, + "gauge44" + ], + [ + 1, + 9, + "gauge44" + ], + [ + 2, + 0, + "gauge44" + ], + [ + 2, + 8, + "gauge44" + ], + [ + 0, + 3, + "gauge44" + ], + [ + 0, + 11, + "gauge44" + ], + [ + 1, + 2, + "gauge44" + ], + [ + 1, + 10, + "gauge44" + ], + [ + 2, + 1, + "gauge44" + ], + [ + 2, + 9, + "gauge44" + ], + [ + 3, + 0, + "gauge44" + ], + [ + 3, + 8, + "gauge44" + ], + [ + 0, + 4, + "gauge44" + ], + [ + 0, + 12, + "gauge44" + ], + [ + 1, + 3, + "gauge44" + ], + [ + 1, + 11, + "gauge44" + ], + [ + 2, + 2, + "gauge44" + ], + [ + 2, + 10, + "gauge44" + ], + [ + 3, + 1, + "gauge44" + ], + [ + 3, + 9, + "gauge44" + ], + [ + 4, + 0, + "gauge44" + ], + [ + 4, + 8, + "gauge44" + ], + [ + 0, + 5, + "gauge44" + ], + [ + 0, + 13, + "gauge44" + ], + [ + 1, + 4, + "gauge44" + ], + [ + 1, + 12, + "gauge44" + ], + [ + 2, + 3, + "gauge44" + ], + [ + 2, + 11, + "gauge44" + ], + [ + 3, + 2, + "gauge44" + ], + [ + 3, + 10, + "gauge44" + ], + [ + 4, + 1, + "gauge44" + ], + [ + 4, + 9, + "gauge44" + ], + [ + 5, + 0, + "gauge44" + ], + [ + 5, + 8, + "gauge44" + ], + [ + 0, + 6, + "gauge44" + ], + [ + 0, + 14, + "gauge44" + ], + [ + 1, + 5, + "gauge44" + ], + [ + 1, + 13, + "gauge44" + ], + [ + 2, + 4, + "gauge44" + ], + [ + 2, + 12, + "gauge44" + ], + [ + 3, + 3, + "gauge44" + ], + [ + 3, + 11, + "gauge44" + ], + [ + 4, + 2, + "gauge44" + ], + [ + 4, + 10, + "gauge44" + ], + [ + 5, + 1, + "gauge44" + ], + [ + 5, + 9, + "gauge44" + ], + [ + 0, + 7, + "gauge44" + ], + [ + 0, + 15, + "gauge44" + ], + [ + 6, + 0, + "gauge44" + ], + [ + 6, + 8, + "gauge44" + ], + [ + 1, + 6, + "gauge44" + ], + [ + 1, + 14, + "gauge44" + ], + [ + 2, + 5, + "gauge44" + ], + [ + 2, + 13, + "gauge44" + ], + [ + 3, + 4, + "gauge44" + ], + [ + 3, + 12, + "gauge44" + ], + [ + 4, + 3, + "gauge44" + ], + [ + 4, + 11, + "gauge44" + ], + [ + 5, + 2, + "gauge44" + ], + [ + 5, + 10, + "gauge44" + ], + [ + 6, + 1, + "gauge44" + ], + [ + 6, + 9, + "gauge44" + ], + [ + 1, + 7, + "gauge44" + ], + [ + 1, + 15, + "gauge44" + ], + [ + 7, + 0, + "gauge44" + ], + [ + 7, + 8, + "gauge44" + ], + [ + 2, + 6, + "gauge44" + ], + [ + 2, + 14, + "gauge44" + ], + [ + 3, + 5, + "gauge44" + ], + [ + 3, + 13, + "gauge44" + ], + [ + 4, + 4, + "gauge44" + ], + [ + 4, + 12, + "gauge44" + ], + [ + 5, + 3, + "gauge44" + ], + [ + 5, + 11, + "gauge44" + ], + [ + 6, + 2, + "gauge44" + ], + [ + 6, + 10, + "gauge44" + ], + [ + 7, + 1, + "gauge44" + ], + [ + 7, + 9, + "gauge44" + ], + [ + 2, + 7, + "gauge44" + ], + [ + 2, + 15, + "gauge44" + ], + [ + 8, + 0, + "gauge44" + ], + [ + 8, + 8, + "gauge44" + ], + [ + 3, + 6, + "gauge44" + ], + [ + 3, + 14, + "gauge44" + ], + [ + 4, + 5, + "gauge44" + ], + [ + 4, + 13, + "gauge44" + ], + [ + 5, + 4, + "gauge44" + ], + [ + 5, + 12, + "gauge44" + ], + [ + 6, + 3, + "gauge44" + ], + [ + 6, + 11, + "gauge44" + ], + [ + 7, + 2, + "gauge44" + ], + [ + 7, + 10, + "gauge44" + ], + [ + 8, + 1, + "gauge44" + ], + [ + 8, + 9, + "gauge44" + ], + [ + 3, + 7, + "gauge44" + ], + [ + 3, + 15, + "gauge44" + ], + [ + 4, + 6, + "gauge44" + ], + [ + 4, + 14, + "gauge44" + ], + [ + 5, + 5, + "gauge44" + ], + [ + 5, + 13, + "gauge44" + ], + [ + 6, + 4, + "gauge44" + ], + [ + 6, + 12, + "gauge44" + ], + [ + 7, + 3, + "gauge44" + ], + [ + 7, + 11, + "gauge44" + ], + [ + 8, + 2, + "gauge44" + ], + [ + 8, + 10, + "gauge44" + ], + [ + 4, + 7, + "gauge44" + ], + [ + 4, + 15, + "gauge44" + ], + [ + 5, + 6, + "gauge44" + ], + [ + 5, + 14, + "gauge44" + ], + [ + 6, + 5, + "gauge44" + ], + [ + 6, + 13, + "gauge44" + ], + [ + 7, + 4, + "gauge44" + ], + [ + 7, + 12, + "gauge44" + ], + [ + 8, + 3, + "gauge44" + ], + [ + 8, + 11, + "gauge44" + ], + [ + 5, + 7, + "gauge44" + ], + [ + 5, + 15, + "gauge44" + ], + [ + 6, + 6, + "gauge44" + ], + [ + 6, + 14, + "gauge44" + ], + [ + 7, + 5, + "gauge44" + ], + [ + 7, + 13, + "gauge44" + ], + [ + 8, + 4, + "gauge44" + ], + [ + 8, + 12, + "gauge44" + ], + [ + 6, + 7, + "gauge44" + ], + [ + 6, + 15, + "gauge44" + ], + [ + 7, + 6, + "gauge44" + ], + [ + 7, + 14, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 13, + "gauge44" + ], + [ + 7, + 7, + "gauge44" + ], + [ + 7, + 15, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 14, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ], + [ + 8, + 15, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 8 + ], + [ + 0, + 1 + ], + [ + 0, + 9 + ], + [ + 1, + 0 + ], + [ + 1, + 8 + ], + [ + 0, + 2 + ], + [ + 0, + 10 + ], + [ + 1, + 1 + ], + [ + 1, + 9 + ], + [ + 2, + 0 + ], + [ + 2, + 8 + ], + [ + 0, + 3 + ], + [ + 0, + 11 + ], + [ + 1, + 2 + ], + [ + 1, + 10 + ], + [ + 2, + 1 + ], + [ + 2, + 9 + ], + [ + 3, + 0 + ], + [ + 3, + 8 + ], + [ + 0, + 4 + ], + [ + 0, + 12 + ], + [ + 1, + 3 + ], + [ + 1, + 11 + ], + [ + 2, + 2 + ], + [ + 2, + 10 + ], + [ + 3, + 1 + ], + [ + 3, + 9 + ], + [ + 4, + 0 + ], + [ + 4, + 8 + ], + [ + 0, + 5 + ], + [ + 0, + 13 + ], + [ + 1, + 4 + ], + [ + 1, + 12 + ], + [ + 2, + 3 + ], + [ + 2, + 11 + ], + [ + 3, + 2 + ], + [ + 3, + 10 + ], + [ + 4, + 1 + ], + [ + 4, + 9 + ], + [ + 5, + 0 + ], + [ + 5, + 8 + ], + [ + 0, + 6 + ], + [ + 0, + 14 + ], + [ + 1, + 5 + ], + [ + 1, + 13 + ], + [ + 2, + 4 + ], + [ + 2, + 12 + ], + [ + 3, + 3 + ], + [ + 3, + 11 + ], + [ + 4, + 2 + ], + [ + 4, + 10 + ], + [ + 5, + 1 + ], + [ + 5, + 9 + ], + [ + 0, + 7 + ], + [ + 0, + 15 + ], + [ + 6, + 0 + ], + [ + 6, + 8 + ], + [ + 1, + 6 + ], + [ + 1, + 14 + ], + [ + 2, + 5 + ], + [ + 2, + 13 + ], + [ + 3, + 4 + ], + [ + 3, + 12 + ], + [ + 4, + 3 + ], + [ + 4, + 11 + ], + [ + 5, + 2 + ], + [ + 5, + 10 + ], + [ + 6, + 1 + ], + [ + 6, + 9 + ], + [ + 1, + 7 + ], + [ + 1, + 15 + ], + [ + 7, + 0 + ], + [ + 7, + 8 + ], + [ + 2, + 6 + ], + [ + 2, + 14 + ], + [ + 3, + 5 + ], + [ + 3, + 13 + ], + [ + 4, + 4 + ], + [ + 4, + 12 + ], + [ + 5, + 3 + ], + [ + 5, + 11 + ], + [ + 6, + 2 + ], + [ + 6, + 10 + ], + [ + 7, + 1 + ], + [ + 7, + 9 + ], + [ + 2, + 7 + ], + [ + 2, + 15 + ], + [ + 8, + 0 + ], + [ + 8, + 8 + ], + [ + 3, + 6 + ], + [ + 3, + 14 + ], + [ + 4, + 5 + ], + [ + 4, + 13 + ], + [ + 5, + 4 + ], + [ + 5, + 12 + ], + [ + 6, + 3 + ], + [ + 6, + 11 + ], + [ + 7, + 2 + ], + [ + 7, + 10 + ], + [ + 8, + 1 + ], + [ + 8, + 9 + ], + [ + 3, + 7 + ], + [ + 3, + 15 + ], + [ + 4, + 6 + ], + [ + 4, + 14 + ], + [ + 5, + 5 + ], + [ + 5, + 13 + ], + [ + 6, + 4 + ], + [ + 6, + 12 + ], + [ + 7, + 3 + ], + [ + 7, + 11 + ], + [ + 8, + 2 + ], + [ + 8, + 10 + ], + [ + 4, + 7 + ], + [ + 4, + 15 + ], + [ + 5, + 6 + ], + [ + 5, + 14 + ], + [ + 6, + 5 + ], + [ + 6, + 13 + ], + [ + 7, + 4 + ], + [ + 7, + 12 + ], + [ + 8, + 3 + ], + [ + 8, + 11 + ], + [ + 5, + 7 + ], + [ + 5, + 15 + ], + [ + 6, + 6 + ], + [ + 6, + 14 + ], + [ + 7, + 5 + ], + [ + 7, + 13 + ], + [ + 8, + 4 + ], + [ + 8, + 12 + ], + [ + 6, + 7 + ], + [ + 6, + 15 + ], + [ + 7, + 6 + ], + [ + 7, + 14 + ], + [ + 8, + 5 + ], + [ + 8, + 13 + ], + [ + 7, + 7 + ], + [ + 7, + 15 + ], + [ + 8, + 6 + ], + [ + 8, + 14 + ], + [ + 8, + 7 + ], + [ + 8, + 15 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 56, + "5": 32, + "7": 32, + "8": 120, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2897, + "expected_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "LOCAL-PROGRAMS.json.gz": "b816de3bb80954991de5af1d736061d6efd6e49008c345b2e47075df1fcf38af", + "LOCAL-CHECKS.json": "6311e6d36e83c34822173fa53aa3b89bba78f0104d487f9d1521bb32d9e0d359", + "INDEPENDENT-LOCAL-REPLAY.json": "b150e709dd3a77978ee32797af7cb5b69e59b8fc0514ac97b42f1e041d918870", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + }, + "entering": 192, + "entrance": 384, + "width_digest": "d63626638b95584b87db7e7481471b43683386e135f964a2b27be372cf6abf70", + "program_hashes": { + "backward": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "forward": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + "artifacts": { + "LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98373, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "prefix_l1": "2765345371136269591/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98341, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 208, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 32, + "8": 120, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387088, + "local_primitive_bound": 10038870452398, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "program_hashes": { + "backward": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "forward": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "LOCAL-PROGRAMS.json.gz": "b816de3bb80954991de5af1d736061d6efd6e49008c345b2e47075df1fcf38af", + "LOCAL-CHECKS.json": "6311e6d36e83c34822173fa53aa3b89bba78f0104d487f9d1521bb32d9e0d359", + "INDEPENDENT-LOCAL-REPLAY.json": "b150e709dd3a77978ee32797af7cb5b69e59b8fc0514ac97b42f1e041d918870", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + }, + "semantic_phase_sha256": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "expected_local": { + "forward": { + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "prefix_l1": "2765345371136269591/1024", + "coefficient_work_primitive_count": 98341 + }, + "backward": { + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98373 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "0.001636241501576388", + "hosted_residuals": 69120, + "rank_mass": 1041408, + "actual_73column_sigmas": 10239, + "cross_replica_helper_roles": 58781, + "idle_remainders": 7448, + "idle_remainder_profile": { + "1": 2209, + "2": 1, + "3": 360, + "7": 3, + "48": 4875 + }, + "global_profile": { + "1": 348673, + "2": 62209, + "3": 61704, + "4": 19872, + "5": 12096, + "7": 3, + "8": 1152, + "48": 4875 + }, + "live": 14336, + "physical": 14826, + "conservative_kappa_decimal": "0.001673006102290676", + "kappa_decimal": "0.001673006105142741", + "complex_lower": "837904872538656759753/500000000000000000000000", + "conservative_complex_lower": "837904871107840680153/500000000000000000000000", + "kappa": "1673006105142741/1000000000000000000", + "assembly_controls_rejected": 69, + "provider_counts": { + "gauge44": 144 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/layers_np/PIVOT-SWAP-K8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/T8/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/T8/OWNERS.json.gz new file mode 100644 index 0000000000..bd1cec69f0 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/T8/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/T8/PLAN.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/T8/PLAN.json new file mode 100644 index 0000000000..a773528fd4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/T8/PLAN.json @@ -0,0 +1,40249 @@ +{ + "status": "FROZEN_EXPLICIT_GAUGE44_WHOLE_OWNER_NOMINATION", + "mode": "gauge44-all72", + "K": 4, + "T": 8, + "M": 73, + "L": 9, + "live": 7168, + "deficit": 2560, + "profile": { + "1": 174471, + "2": 31115, + "3": 30851, + "4": 9936, + "5": 6048, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "windows": { + "0,0": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,2": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,1": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,3": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,5": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,7": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,9": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,11": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,12": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,13": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,14": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,15": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,16": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,17": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "1,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,1": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,3": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,5": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,7": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,9": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,11": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,12": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,13": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,14": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,15": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,16": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,17": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "2,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,1": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,3": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,5": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,7": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,9": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,11": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,12": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,13": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,14": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,15": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,16": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,17": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "3,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,1": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,3": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,5": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,7": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,9": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,11": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,12": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,13": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,14": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,15": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,16": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,17": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "4,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,1": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,3": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,5": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,7": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,9": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,11": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,12": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,13": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,14": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,15": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,16": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,17": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "5,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,1": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,3": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,5": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,7": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,9": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,11": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,12": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,13": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,14": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,15": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,16": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,17": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "6,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,1": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,3": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,5": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,7": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,9": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,11": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,12": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,13": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,14": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,15": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,16": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,17": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "7,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,1": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,3": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,5": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,7": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,9": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,11": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,12": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,13": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,14": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,15": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,16": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,17": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ] + }, + "sides": { + "0": 0, + "2": 1, + "1": 0, + "3": 1, + "4": 0, + "6": 1, + "5": 0, + "7": 1, + "8": 0, + "10": 1, + "9": 0, + "11": 1, + "12": 0, + "13": 1, + "14": 0, + "15": 1, + "16": 0, + "17": 1 + }, + "pairs": { + "0": 1, + "2": 1, + "1": 1, + "3": 1, + "4": 2, + "6": 2, + "5": 2, + "7": 2, + "8": 3, + "10": 3, + "9": 3, + "11": 3, + "12": 0, + "13": 0, + "14": 1, + "15": 1, + "16": 2, + "17": 2 + }, + "solver_status": "g44pack_early_lns_of_deterministic-capacity-matching", + "gap": null, + "provider_calls": [ + { + "time": 0, + "stage": 0, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 1, + "stage": 0, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 2, + "stage": 1, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 3, + "stage": 0, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 4, + "stage": 1, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 5, + "stage": 2, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 6, + "stage": 0, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 7, + "stage": 1, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 8, + "stage": 2, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 9, + "stage": 3, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 10, + "stage": 0, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 11, + "stage": 1, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 12, + "stage": 2, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 13, + "stage": 3, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 14, + "stage": 4, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 15, + "stage": 0, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 16, + "stage": 1, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 17, + "stage": 2, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 18, + "stage": 3, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 19, + "stage": 4, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 20, + "stage": 5, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 21, + "stage": 0, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 22, + "stage": 1, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 23, + "stage": 2, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 24, + "stage": 3, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 25, + "stage": 4, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 26, + "stage": 5, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 27, + "stage": 0, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 28, + "stage": 6, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 29, + "stage": 1, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 30, + "stage": 2, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 31, + "stage": 3, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 32, + "stage": 4, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 33, + "stage": 5, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 34, + "stage": 6, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 35, + "stage": 1, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 36, + "stage": 7, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 37, + "stage": 2, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 38, + "stage": 3, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 39, + "stage": 4, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 40, + "stage": 5, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 41, + "stage": 6, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 42, + "stage": 7, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 43, + "stage": 2, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 44, + "stage": 8, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 45, + "stage": 3, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 46, + "stage": 4, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 47, + "stage": 5, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 48, + "stage": 6, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 49, + "stage": 7, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 50, + "stage": 8, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 51, + "stage": 3, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 52, + "stage": 4, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 53, + "stage": 5, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 54, + "stage": 6, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 55, + "stage": 7, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 56, + "stage": 8, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 57, + "stage": 4, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 58, + "stage": 5, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 59, + "stage": 6, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 60, + "stage": 7, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 61, + "stage": 8, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 62, + "stage": 5, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 63, + "stage": 6, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 64, + "stage": 7, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 65, + "stage": 8, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 66, + "stage": 6, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 67, + "stage": 7, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 68, + "stage": 8, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 69, + "stage": 7, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + { + "time": 70, + "stage": 8, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + { + "time": 71, + "stage": 8, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + } + ], + "per_call_widths": [ + { + "stage": 0, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + } + ], + "provider_registry": { + "gauge44": { + "directory": "providers/gauge44", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "LOCAL-PROGRAMS.json.gz": "94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac", + "LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "INDEPENDENT-LOCAL-REPLAY.json": "0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "8002fe69a57ed36abd0a35e8a840d75760e81d82fc33526b0ca4bb0c80d93d3f", + "RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "backward": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "LOCAL-PROGRAMS.json.gz": "b816de3bb80954991de5af1d736061d6efd6e49008c345b2e47075df1fcf38af", + "LOCAL-CHECKS.json": "6311e6d36e83c34822173fa53aa3b89bba78f0104d487f9d1521bb32d9e0d359", + "INDEPENDENT-LOCAL-REPLAY.json": "b150e709dd3a77978ee32797af7cb5b69e59b8fc0514ac97b42f1e041d918870", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + } + }, + "source_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "assignment_sha256": "93fdab52291d9ea20d7caec2760cf4ad0cf0f491bad380db93d48b6cdef36045", + "source_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/UPSTREAM-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/UPSTREAM-PINS.json new file mode 100644 index 0000000000..68486b84e3 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/data/UPSTREAM-PINS.json @@ -0,0 +1,23 @@ +{ + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ADMISSION-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..583bf5dbf4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ADMISSION-CONTROLS.json @@ -0,0 +1,102 @@ +{ + "status": "PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS", + "valid_receipt_kappa": "66920213783953/40000000000000000", + "input_sha256": { + "owner_audit": "1fa9c9acbd54f9bec183a070f99eb9803395d35e847ab6e37d2489b2d41d2e40", + "fresh_invoice": "17749a944bbeb7980a56aeb8ad929d522480869f4c9760e6103a606a58b5b034", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "assembler_sha256": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a", + "rejected_controls": [ + "empty_certification_maps", + "failed_invoice_status", + "nonboolean_precision_check", + "wrong_owner_role_count", + "understated_physical_stock", + "changed_profile_same_rank_mass", + "insufficient_finite_C0", + "missing_finite_check", + "wrong_reflected_orientation_selfconsistent_totals", + "missing_selected_call", + "wrong_selected_primitive_sum", + "wrong_selected_coefficient_work_sum", + "unpaid_wrapper_factors", + "wrong_global_compiler", + "wrong_global_adapter_maximum", + "understated_exact_prefix_and_global_sum", + "wrong_global_prefix_sum", + "wrong_row_prefix_reserve", + "wrong_parent_geometry_charge", + "wrong_rebased_geometry_charge", + "wrong_complete_pervertex_envelope", + "wrong_prior_added_complete_invoice", + "wrong_finite_router_bits", + "wrong_finite_literal_bits", + "wrong_finite_physical_stock_bits", + "wrong_finite_row_coefficient", + "reordered_complete_calls", + "understated_explicit_idle_remainders", + "understated_actual_chart_types", + "wrong_cross_replica_role_count", + "old_no_cold_wrapper_counts_selfconsistent", + "gauge44:missing_provider", + "gauge44:missing_backward_orientation", + "gauge44:unpaid_scalar_primitive", + "gauge44:wrong_local_artifact_binding", + "gauge44:false_dirty_restoration", + "gauge44:wrong_declared_provider_count", + "gauge44:wrong_local_compiler", + "gauge44:wrong_local_adapter_charge", + "gauge44:wrong_local_primitive_bound", + "gauge44:forged_provider_and_call_program_hash", + "gauge44:provider_at_wrong_call", + "gauge44:synchronized_forged_source_recipe_hash", + "gauge44:synchronized_forged_phase_review_semantics", + "gauge44:width_order_swap_4_5", + "gauge44:width_inventory_shift_4_5", + "gauge44:width_order_swap_4_7", + "gauge44:width_inventory_shift_4_7", + "gauge44:width_order_swap_4_8", + "gauge44:width_inventory_shift_4_8", + "gauge44:width_order_swap_4_9", + "gauge44:width_inventory_shift_4_9", + "gauge44:width_order_swap_5_7", + "gauge44:width_inventory_shift_5_7", + "gauge44:width_order_swap_5_8", + "gauge44:width_inventory_shift_5_8", + "gauge44:width_order_swap_5_9", + "gauge44:width_inventory_shift_5_9", + "gauge44:width_order_swap_7_8", + "gauge44:width_inventory_shift_7_8", + "gauge44:width_order_swap_7_9", + "gauge44:width_inventory_shift_7_9", + "gauge44:width_order_swap_8_9", + "gauge44:width_inventory_shift_8_9", + "gauge44:cold_helper_width_swap_258", + "gauge44:cold_helper_width_swap_270", + "gauge44:cold_helper_width_swap_282", + "gauge44:cold_helper_width_swap_294", + "wrong_owner_receipt_hash" + ], + "discovery_accepted_controls": [], + "exact_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "conservative_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "recurrence_model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "scope": "Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ASSEMBLY.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..5b181fe3a2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ASSEMBLY.json @@ -0,0 +1,345 @@ +{ + "status": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY", + "kappa": "66920213783953/40000000000000000", + "kappa_decimal": "0.001673005344598825", + "complex_lower": "335161796396441728937/200000000000000000000000", + "complex_decimal": "0.001675808981982208644685", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "gain_over_pr635_percent": "2.246846995814369307930509032688659178353555960506804543539935516375894", + "complex_profile": { + "1": 348675, + "2": 62208, + "3": 61704, + "4": 19872, + "5": 12096, + "7": 3, + "8": 1152, + "48": 4875 + }, + "provider_counts": { + "gauge44": 144 + }, + "surcharge_model": { + "complex": false, + "bit": true + }, + "conservative_complex_lower": "1675808979120572193949/1000000000000000000000000", + "conservative_complex_decimal": "0.001675808979120572193949", + "conservative_kappa": "418251335436689/250000000000000000", + "conservative_kappa_decimal": "0.001673005341746756", + "conservative_moments": [ + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "1675808979120572193949/1000000000000000000000000", + "accept": true, + "mercator": [ + "-8476311058921377865217397123899852024816447/6739986666787659948666753771754907668409286105635143120275902562304", + "-16952622117842755730434794247799704049632893/13479973333575319897333507543509815336818572211270286240551805124608" + ], + "base_two": [ + "-6288081926223376390753/5000000000000000000000000000000000000000000000", + "-3144038463111688195341/2500000000000000000000000000000000000000000000" + ] + }, + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "33516179582411443879/20000000000000000000000", + "accept": false, + "mercator": [ + "2815159833224316781704787272050342890860941/1684996666696914987166688442938726917102321526408785780068975640576", + "22521278665794534253638298176402743126887529/13479973333575319897333507543509815336818572211270286240551805124608" + ], + "base_two": [ + "1670720614791278064357/1000000000000000000000000000000000000000000000", + "130525126155568598779/78125000000000000000000000000000000000000000" + ] + } + ], + "conservative_bootstrap": [ + { + "exponent": "1673065094831827138872029927211403285642925286354863675137657802150442612535009904324727785399/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "2743884288745055076967396979617593784880764645136324862342197849557387464990095675272214601/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4781574368917" + }, + { + "exponent": "1675804380894643447120908856515715734201535480256280691084451030754086943644229731069825066324526849070165067677547638361693689961242521649349/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4598225928746828088467675305145226270570743719308915548969245913056355770268930174933675473150929834932322452361638306310038757478350651/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1702636301697743023" + }, + { + "exponent": "1675808971414823894530030407265313344981813656476741634362661551081766211233402283297122383132686006112585112432374034382213703293221796498504277073391192047829643576933648681997861002410799/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "7705748299418966916925707534445992394523258365637338448918233788766597716702877616867313993887414887567625965617786296706778203501495722926608807952170356423066351318002138997589201/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "606279470356914078826642" + }, + { + "exponent": "1675808979107658831757987939970253131681647214603376078106745745651907048549822574464939240427529210702579401575795741491650687898728234742844356913705666279508347332438951180642532672323309371664393339022621934616169067649960586399944749/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "12913362191009384220767747746158836396623921893254254348092951450177425535060759572470789297420598424204258508349312101271765257155643086294333720491652667561048819357467327676690628335606660977378065383830932350039413600055251/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "215885680229971515275751888692" + }, + { + "exponent": "1675808979120550553620686994559459827885354776041430427637382640692358485866415220289183023780339208646100960543642952679475430496605700123113078742614360735572870599608690823025814757637076692075842736416889834622612194823781711575009782866588329382094012342658006056278819040687876199/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "21640328310329631561051542451274958569572362617359307641514133584779710816976219660791353899039456357047320524569503394299876886921257385639264427129400391309176974185242362923307924157263583110165377387805176218288424990217133411670617905987657341993943721180959312123801/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "76873173523293467367800236585827233" + }, + { + "exponent": "1675808979120572157683940830623503997502802638037740117585350325211682091659247203502971748674243413140441623769077145592312526779012857201034914447534849596778128819589158107180760560909119153755692631200475639438103670759257891881168726638655416535419925989243169432940610326648950884830467167994634459935799151680916447561271080149/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "36265056493567516881925003412962259882414649674788317908340752796497028251325756586859558376230922854407687473220987142798965085552465150403221871180410841892819239439090880846244307368799524360561896329240742108118831273361344583464580074010756830567059389673351049115169532832005365540064200848319083552438728919851/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "27373213458379121719956256690131559056578" + }, + { + "exponent": "1675808979120572193888224016890785621469228279997902200459712713837561919273721826106423329156503783111803544071606757039795832471918701974674649156007093031797815594621778806822223018563576565878178587824365388023011247972062347652012239064564065933823267463434814812778874244740697197871068913707136665721777577550913710563278180773291179419490471213805464806855477392310048181599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "60773307300235257958577771002097799540287286162438080726278173893576670843496216888196455928393242960204167528081298025325350843992906968202184405378221193177776981436423434121821412175634611976988752027937652347987760935435934066176732536565185187221125755259302802128931086292863334278222422449086289436721819226708820580509528786194535193144522607689951818401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9747129989513746599228814721045693687880454117" + } + ], + "conservative_outer": { + "bit_positive": "1675808979120572193888224016890785621469228279997902200459712713837561919273721826106423329156503783111803544071606757039795832471918701974674649156007093031797815594621778806822223018563576565878178587824365388023011247972062347652012239064564065933823267463434814812778874244740697197871068913707136665721777577550913710563278180773291179419490471213805464806855477392310048181599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "60775983109214378530771720002097799540287286162438080726278173893576670843496216888196455928393242960204167528081298025325350843992906968202184405378221193177776981436423434121821412175634611976988752027937652347987760935435934066176732536565185187221125755259302802128931086292863334278222422449086289436721819226708820580509528786194535193144522607689951818401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "29574191020879427806051/1000000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "60774307300235257958577771002097799540287286162438080726278173893576670843496216888196455928393242960204167528081298025325350843992906968202184405378221193177776981436423434121821412175634611976988752027937652347987760935435934066176732536565185187221125755259302802128931086292863334278222422449086289436721819226708820580509528786194535193144522607689951818401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "1675808979120572193888224016890785621469228279997902200459712713837561919273721826106423329156503783111803544071606757039795832471918701974674649156007093031797815594621778806822223018563576565878178587824365388023011247972062347652012239064564065933823267463434814812778874244740697197871068913707136665721777577550913710563278180773291179419490471213805464806855477392310048181599/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "30388829459096749551482773725065790555765112309499038265339546659502172983667382165924334387525777983885195567584720619419715217828925402803066877338266603681920288533806338839717528310835869565060254192556650539381903478965939095436018280521657157676496700897114835879278322020676407836309082293456851855026631390931961203965327671278040887751680794316189714665306855477392310048181599/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "837904489560286096944235332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "499162095510439713903055764667363586309837579748225065790555765112309499038265339546659502172983667382165924334387525777983885195567584720619419715217828925402803066877338266603681920288533806338839717528310835869565060254192556650539381903478965939095436018280521657157676496700897114835879278322020676407836309082293456851855026631390931961203965327671278040887751680794316189714665306855477392310048181599/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "1675808979120572193888224016890785621469228279997902200459712713837561919273721826106423329156503783111803544071606757039795832471918701974674649156007093031797815594621778806822223018563576565878178587824365388023011247972062347652012239064564065933823267463434814812778874244740697197871068913707136665721777577550913710563278180773291179419490471213805464806855477392310048181599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "60777658918193499102965608226114690325908755390718078628478633606290508405415490610022562351722399463987279331625369632082390639825378886904159080027377200270808779252018055900628234398653175553554630206525476713375783946683906128524384548804249751287059578526766236943743865167108074975420293517999996573387541004286371494220092064375308484323942098161165623865806855477392310048181599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "1675808979120572193888224016890785621469228279997902200459712713837561919273721826106423329156503783111803544071606757039795832471918701974674649156007093031797815594621778806822223018563576565878178587824365388023011247972062347652012239064564065933823267463434814812778874244740697197871068913707136665721777577550913710563278180773291179419490471213805464806855477392310048181599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "1675808979120572193888224016890785621469228279997902200459712713837561919273721826106423329156503783111803544071606757039795832471918701974674649156007093031797815594621778806822223018563576565878178587824365388023011247972062347652012239064564065933823267463434814812778874244740697197871068913707136665721777577550913710563278180773291179419490471213805464806855477392310048181599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "30388829459096749551482773725065790555765112309499038265339546659502172983667382165924334387525777983885195567584720619419715217828925402803066877338266603681920288533806338839717528310835869565060254192556650539381903478965939095436018280521657157676496700897114835879278322020676407836309082293456851855026631390931961203965327671278040887751680794316189714665306855477392310048181599/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "499999999999999999999999500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/500837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401", + "epsilon_below_one": "837904489560286096944610332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401/500837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401", + "guard_width": "837904489560286096944610332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401/500837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401", + "K_geometry": "375837904489560286096944235332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401/500837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401000000000000000000000000", + "K_dominates_log": "837904489560286096944234494731924129876323307539601573030544725270249186800451009105610136515370883173622325114647205683496970356749666906358268667366642181917552542376951225243482514533070999426886153609452664241278585524971660296487661581288253461214521101381821808262598735121165685777879354476024489278526796984865168821381204918150332252886527355353350044209523171011481563375580896203402006141533066306855477392310048181599/500837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401000000000000000000000000", + "record_suffix": "837904489560286096944610332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401/500837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401", + "phase_local": "6703235916482288775556381823186819961013265070089141039140188939103755918943074182489094925629699208012151984401966759796300601383656622570420262142564164362296084401009084999470040494796426627548863455433601577285856806177075106520814337228526679793162393137730221704527121828841361834622931100331289634424363220930667205836194785181626603825129233656407063829947757610798153560718432907861655835804261873306855477392310048181599/4006703235916482288775552882661091309521299362014199473675553879101524007693877283626723982616130660942672605324899793776128918435459322235044642278257368596777575464981293867170544637691729549289282259773513313043479517966459546795684944772168272487236511853755826742738588026392823081312965773423834588737309527341652345185159786948872544310368277378629775672897986553645470482282677545156180861519614547208000000000000000000000000", + "phase_boundary": "1340647183296457755110875694313772343973775458729562098697085657884549763841247281109908832725170453874067724482131738893165853016198834534706439536669286940235712415973991263034330341412787196123055636622951142502242433009437669972858519493908690003952910133068827513656700714582896784250312361263618644576741347608791057708365226083591155530507330752586525511558514694421767734576396782916966620112624106906855477392310048181599/801340647183296457755110576532218261904259872402839894735110775820304801538775456725344796523226132188534521064979958755225783687091864447008928455651473719355515092996258773434108927538345909857856451954702662608695903593291909359136988954433654497447302370751165348547717605278564616262593154684766917747461905468330469037031957389774508862073655475725955134579597310729094096456535509031236172303922909441600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "999999999999999999999998499162095510439713903055889667363586309837579748225065790555765112309499038265339546659502172983667382165924334387525777983885195567584720619419715217828925402803066877338266603681920288533806338839717528310835869565060254192556650539381903478965939095436018280521657157676496700897114835879278322020676407836309082293456851855026631390931961203965327671278040887751680794316189714665306855477392310048181599/2003351617958241144387776441330545654760649681007099736837776939550762003846938641813361991308065330471336302662449896888064459217729661117522321139128684298388787732490646933585272318845864774644641129886756656521739758983229773397842472386084136243618255926877913371369294013196411540656482886711917294368654763670826172592579893474436272155184138689314887836448993276822735241141338772578090430759807273604000000000000000000000000", + "prime_interval_packing": "837904489560286096944610332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401/500837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401", + "alpha_positive": "1675808979120572193888719827368337820038743559439535782474779612960750148535111462446107963531703501007697990727121427699611774789164946286938553449537716779114485665038684621561562225999264660587168625298616794676218331332415009757105758102322314365778502820860164650586102034224050849898601032455348081442217714691408316966354573527218371048921199684075309156457842376695291848710274040726009696093351467306855477392310048181599/1001675808979120572193888220665272827380324840503549868418888469775381001923469320906680995654032665235668151331224948444032229608864830558761160569564342149194393866245323466792636159422932387322320564943378328260869879491614886698921236193042068121809127963438956685684647006598205770328241443355958647184327381835413086296289946737218136077592069344657443918224496638411367620570669386289045215379903636802000000000000000000000000", + "alpha_below_one": "999999999999999999999999500837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401/1001675808979120572193888220665272827380324840503549868418888469775381001923469320906680995654032665235668151331224948444032229608864830558761160569564342149194393866245323466792636159422932387322320564943378328260869879491614886698921236193042068121809127963438956685684647006598205770328241443355958647184327381835413086296289946737218136077592069344657443918224496638411367620570669386289045215379903636802000000000000000000000000", + "alpha_below_one_fourth": "248743143265659570854583335338949869025042466566447931322247337830884500332332218764224140949976462807909339842079115683308445627427042693403351588941547820519483980896292182076597477629733832169992972610545965270541251541571306664973203290158194716086503488038879006770575649615327391732161759806534313714639627744161863257106132110777315648349096136480285670399666317226146613293957072531535294148882557733193144522607689951818401/1001675808979120572193888220665272827380324840503549868418888469775381001923469320906680995654032665235668151331224948444032229608864830558761160569564342149194393866245323466792636159422932387322320564943378328260869879491614886698921236193042068121809127963438956685684647006598205770328241443355958647184327381835413086296289946737218136077592069344657443918224496638411367620570669386289045215379903636802000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "499160691342572463335869745110806104387817211741347030588792291128825891854162677300461696813055465204120695024225130944175091333365013517235573329290226979433888555585693292233804002700885040093321320020732285167678590923249985379959561344373387746961615033699613962025197521391464822745499220546462815609873300990636164623914450234214658564930171828654263959633900090398470325897044769955234476654405696707517138799957990853356465564693738060328798020499904479107623670639649580990118051779624527607032398425732098856116399579226407849386675658149397136367711822748828858107428093215078204375469754077284161195763383658733660632344916431006885358914181010101793321558643838956796286340170687889987800348452132980132401093862721572142659075150879809949986465571084292761439694528846482196801/500837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "28053625887331858310204428563802443944851253186945926787313672103299452816875820897346496524000548172745362202620691831258029200985901574717779804274403362071466441861591205283877580893124635762299458267142345638746417127212523789432971949482165417320222143211900903505010886924834529808938754714361186607207131711095383795419249072082053107602575663463958311210388008817267780844427297697994404509208347233668079433567823069855455203/4006703235916482288775552882661091309521299362014199473675553879101524007693877283626723982616130660942672605324899793776128918435459322235044642278257368596777575464981293867170544637691729549289282259773513313043479517966459546795684944772168272487236511853755826742738588026392823081312965773423834588737309527341652345185159786948872544310368277378629775672897986553645470482282677545156180861519614547208000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "37339482177816702521848033691448654312871094156827807119850730130510264141189660165618723834172935779899676728944098703079436958522420519189169329571734199028804693777247486519072801331485831517413866939377576810128648842452630826018635516393900145157570389046961523196675753293732417892017268157321639280203134251646486539623311869474978912674795009263458900571828334462371447472069362553088586815039285711/125209476122390071524236027583159103422540605062943733552361058721922625240433665113335124456754083154458518916403118555504028701108103819845145071195542768649299233280665433349079519927866548415290070617922291032608734936451860837365154524130258515226140995429869585710580875824775721291030180419494830898040922729426635787036243342152267009699008668082180489778062079801420952571333673286130651922487954600250000000000000000", + "coordinate_movement_above_kappa": "2803637373816193888224016890785621469228279997902200459712713837561919273721826106423329156503783111803544071606757039795832471918701974674649156007093031797815594621778806822223018563576565878178587824365388023011247972062347652012239064564065933823267463434814812778874244740697197871068913707136665721777577550913710563278180773291179419490471213805464806855477392310048181599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "149357427873362320527106037821684284615070686464890976704468711077806168874257678927814441996193916103266089081700729199843525817974877644341397937706652013944144177912056823414557809007863614603461806597227835551350464934870777496631192604957504059596220651623864373308360170851426372465183908508564879141488944842895028451950099332926547041631141241019163273565354225601166584204467164877661202737549452892181599/500837904489560286096944110332636413690162420251774934209444234887690500961734660453340497827016332617834075665612474222016114804432415279380580284782171074597196933122661733396318079711466193661160282471689164130434939745807443349460618096521034060904563981719478342842323503299102885164120721677979323592163690917706543148144973368609068038796034672328721959112248319205683810285334693144522607689951818401000000000000000000000000", + "bulk_exposure_above_kappa": "2803637373816193888224016890785621469228279997902200459712713837561919273721826106423329156503783111803544071606757039795832471918701974674649156007093031797815594621778806822223018563576565878178587824365388023011247972062347652012239064564065933823267463434814812778874244740697197871068913707136665721777577550913710563278180773291179419490471213805464806855477392310048181599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "238972185100122406579541318681161054965961312441277713792110463391030802813112863325299379198208961975025313231166566087234174518428686890395404328678814091613275442977450791060332532203429610245255087251734019895659222156757091479075917844302864407974389585336572028980381978756384175406025352086136813413976467046846596147046047819666496432050649263251464634937742228310858058137433635005073811093643738598581599/801340647183296457755110576532218261904259872402839894735110775820304801538775456725344796523226132188534521064979958755225783687091864447008928455651473719355515092996258773434108927538345909857856451954702662608695903593291909359136988954433654497447302370751165348547717605278564616262593154684766917747461905468330469037031957389774508862073655475725955134579597310729094096456535509031236172303922909441600000000000000000000000", + "scalar_work_above_kappa": "1194862928852229991138850981182246605375461322856069576060289154732093564827568163565138709353036117940457037492135492886067760656602652181638139165715209586750675603674986445948596246289466897091050080899799986234952632523544440625152987063986708124008191544938787022815281263075934073441667416913570778987176703888996651561402831678225956596525401500396012489576547590547567113422409316364141633558649452800181599/4006703235916482288775552882661091309521299362014199473675553879101524007693877283626723982616130660942672605324899793776128918435459322235044642278257368596777575464981293867170544637691729549289282259773513313043479517966459546795684944772168272487236511853755826742738588026392823081312965773423834588737309527341652345185159786948872544310368277378629775672897986553645470482282677545156180861519614547208000000000000000000000000", + "dimension_above_kappa": "124790523877609928513103204594657599099307428628504920760510035434905181879417065017175139684435577011160204917769817224395648027835994883234291887326877750539870096291068765679725173849380938103782730713563540484805132002925715972763494318322372310792494520964030559446989513222185801905645572874237586993976345427895003493166890909494219529924303201392798422896732929462037948000494661176240795549581407952838586815039285711/125209476122390071524236027583159103422540605062943733552361058721922625240433665113335124456754083154458518916403118555504028701108103819845145071195542768649299233280665433349079519927866548415290070617922291032608734936451860837365154524130258515226140995429869585710580875824775721291030180419494830898040922729426635787036243342152267009699008668082180489778062079801420952571333673286130651922487954600250000000000000000" + }, + "conservative_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "native_correction_gain": "2.852069E-12", + "template_sha256": "0257cbd538460ab8318ea95c1f3c3ec3d4052d8ba682e2cabf99d6a968d0a6e9", + "input_sha256": { + "owner_audit": "1fa9c9acbd54f9bec183a070f99eb9803395d35e847ab6e37d2489b2d41d2e40", + "fresh_invoice": "17749a944bbeb7980a56aeb8ad929d522480869f4c9760e6103a606a58b5b034", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "moments": [ + { + "side": "bit", + "surcharge": true, + "endpoint": "1733427039589844234749/1000000000000000000000000", + "accept": true, + "mercator": [ + "-43100600330766044577088869872467188970742291/26959946667150639794667015087019630673637144422540572481103610249216", + "-43100600330766044577088869872467188970742289/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-799345163337715793503/500000000000000000000000000000000000000000000", + "-3197378653350863173989/2000000000000000000000000000000000000000000000" + ] + }, + { + "side": "bit", + "surcharge": true, + "endpoint": "6933708158359376939/4000000000000000000000", + "accept": false, + "mercator": [ + "22502934905675809315035333485365686073718547/13479973333575319897333507543509815336818572211270286240551805124608", + "5625733726418952328758833371341421518429637/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "8346798366759439729359/5000000000000000000000000000000000000000000000", + "16693606733518879458833/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "335161796396441728937/200000000000000000000000", + "accept": true, + "mercator": [ + "-55183369297944429397328424278435905704946351/26959946667150639794667015087019630673637144422540572481103610249216", + "-55183369297944429397328424278435905704946349/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-409373/200000000000000000000000000000", + "-127929/62500000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "837904490991104322343/500000000000000000000000", + "accept": false, + "mercator": [ + "5941108067296210387420380118567768983808535/6739986666787659948666753771754907668409286105635143120275902562304", + "11882216134592420774840760237135537967617071/13479973333575319897333507543509815336818572211270286240551805124608" + ], + "base_two": [ + "881471/1000000000000000000000000000000", + "13773/15625000000000000000000000000" + ] + } + ], + "bootstrap": [ + { + "exponent": "66922603907359301429333135921369287179815153158463340634967244033386508293773853442216850031/40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "109755371929044358066757046271433531839059441536659365032755966613491706226146557783149969/40000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4781574335873" + }, + { + "exponent": "13406435070050049259378957598385158885104235115870214674261570633682847940144136472898543570712380548905707956916298944830087471636317952953/8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "36785807619898101020995142985257226607404129785325738429366317152059855863527101456429287619451094292043083701055169912528363682047047/8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1702636284116473213" + }, + { + "exponent": "2681294358842336467717033670343210592083043249510795106886758718877226159029219629112999046113066660284357645756750369936379821542228149604806105005267353103121331518184178662660055299039/1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "12329197363778962048362418236383125254489204893113241281122773840970780370887000953886933339715642354243249630063620178457771850395193894994732646896878668481815821337339944700961/1600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "606279462025942883577399" + }, + { + "exponent": "536258874230174490362628713154678751081979685226629412611495906158259247056366548176891018205767200734605452000774427678640987997327900639832739710691440190088079746448498337674624809341765547814338619466071367882714879716950285408457/320000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4132275936570430586447014611254015573370587388504093841740752943633451823108981794232799265394547999225572321359012002672099360167260289308559809911920253551501662325375190658234452185661380533928632117285120283049714591543/320000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "215885676526156904537906689514" + }, + { + "exponent": "107251774846859968278813722014012567483734268634436609831160763105272269917680913518964340756230902805552386973368419820724925534403590235207572443139797755635797298441719760651363021623010354436735364239610083375908514545847460244011956725451507016618273874693793959023703678579791/64000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "1384981026106734212585654912471525563390168839236894727730082319086481035659243769097194447613026631580179275074465596409764792427556860202244364202701558280239348636978376989645563264635760389916624091485454152539755988043274548492983381726125306206040976296321420209/64000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "76873171941889304116645511869541900" + }, + { + "exponent": "21450354969372270187775237064724831708182139784568260876621601644667498526395725580359106367906448526368751509936310075967517493821033467579189834410226523641754478820189553056408755702178468000111002412208092082447826919844555613580673681912175509696390437072665086545813089241606245878420964279486676387029100234024723251887833/12800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "464192728684920198919547208247431739123378398355332501473604274419640893632093551473631248490063689924032482506178966532420810165589773476358245521179810446943591244297821531999888997587791907917552173080155444386419326318087824490303609562927334913454186910758393754121579035720513323612970899765975276748112167/12800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "27373212801782514042163512602317875140509" + }, + { + "exponent": "4290070993874454130238013481108802185639483635015680068513181296367323887649304710108605120999411390158548672373870120285669838523987893727620923882515907550966310442468044591696581467944289133437348759434840563521248701103318404979921898736741276901005855889439264409310758776470939629592153578629766606369259054307614256730140847279108570229394061929514301190574536285676479/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "155579668820203939906385971384319931486818703632676112350695289891394879000588609841451327626129879714330161476012106272379076117484092449033689557531955408303418532055710866562651240565159436478751298896681595020078101263258723098994144110560735590689241223529060370407846421370233393630740945692385743269859152720891429770605938070485698809425463714323521/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9747129722422311433027971703824118167969668694" + } + ], + "outer": { + "bit_positive": "4290070993874454130238013481108802185639483635015680068513181296367323887649304710108605120999411390158548672373870120285669838523987893727620923882515907550966310442468044591696581467944289133437348759434840563521248701103318404979921898736741276901005855889439264409310758776470939629592153578629766606369259054307614256730140847279108570229394061929514301190574536285676479/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "155586518891197814360516364984319931486818703632676112350695289891394879000588609841451327626129879714330161476012106272379076117484092449033689557531955408303418532055710866562651240565159436478751298896681595020078101263258723098994144110560735590689241223529060370407846421370233393630740945692385743269859152720891429770605938070485698809425463714323521/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "5914838203603558271063/200000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "155582228820203939906385971384319931486818703632676112350695289891394879000588609841451327626129879714330161476012106272379076117484092449033689557531955408303418532055710866562651240565159436478751298896681595020078101263258723098994144110560735590689241223529060370407846421370233393630740945692385743269859152720891429770605938070485698809425463714323521/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "2145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521/1280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "4290070993874454130238013481108802185639483635015680068513181296367323887649304710108605120999411390158548672373870120285669838523987893727620923882515907550966310442468044591696581467944289133437348759434840563521248701103318404979921898736741276901005855889439264409310758776470939629592153578629766606369259054307614256730140847279108570229394061929514301190574536285676479/1280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "77795404481095844407323223705641074545594991299973071855416158126993806824181954225435772418185939268555239286678427006309823728580570212410572399689860220059260232338297901325917316864047662528509086797100232350602571880330464867902051977179104536621521617620419624468332521443893167755000064999771501401535945619500022499559699176090128513282961251223690014301190574536285676479/1280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "2145035496937227065119322450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521/1280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "1277854964503062772934880677549516592781634388420505641074545594991299973071855416158126993806824181954225435772418185939268555239286678427006309823728580570212410572399689860220059260232338297901325917316864047662528509086797100232350602571880330464867902051977179104536621521617620419624468332521443893167755000064999771501401535945619500022499559699176090128513282961251223690014301190574536285676479/1280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "4290070993874454130238013481108802185639483635015680068513181296367323887649304710108605120999411390158548672373870120285669838523987893727620923882515907550966310442468044591696581467944289133437348759434840563521248701103318404979921898736741276901005855889439264409310758776470939629592153578629766606369259054307614256730140847279108570229394061929514301190574536285676479/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "155590808962191688814646602997801040289004343116311128030763803072691246324476259146161436231250879125720320024684480142499361787322616436927417178455837924210969498366153334607242937146627380767884736245441029860641622511959826417399124032459472331966142229384949809672255732129009864570370537845964373036465521979945737384862668211332977917995693108385450514301190574536285676479/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "4290070993874454130238013481108802185639483635015680068513181296367323887649304710108605120999411390158548672373870120285669838523987893727620923882515907550966310442468044591696581467944289133437348759434840563521248701103318404979921898736741276901005855889439264409310758776470939629592153578629766606369259054307614256730140847279108570229394061929514301190574536285676479/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "4290070993874454130238013481108802185639483635015680068513181296367323887649304710108605120999411390158548672373870120285669838523987893727620923882515907550966310442468044591696581467944289133437348759434840563521248701103318404979921898736741276901005855889439264409310758776470939629592153578629766606369259054307614256730140847279108570229394061929514301190574536285676479/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "77795404481095844407323223705641074545594991299973071855416158126993806824181954225435772418185939268555239286678427006309823728580570212410572399689860220059260232338297901325917316864047662528509086797100232350602571880330464867902051977179104536621521617620419624468332521443893167755000064999771501401535945619500022499559699176090128513282961251223690014301190574536285676479/1280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "2145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521/1280000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "1279999999999999999999998720000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/1282145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521", + "epsilon_below_one": "2145035496937227065120282450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521/1282145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521", + "guard_width": "2145035496937227065120282450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521/1282145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521", + "K_geometry": "962145035496937227065119322450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521/1282145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521000000000000000000000000", + "K_dominates_log": "2145035496937227065119320305447910281138546460171908442047186643088447433785658387467997493148889901190722354575620884913398986149093991179629444826658716466016433910133868360510952178234101788534302742396184675769392239120216631697059956628756332232330298625392775793843346284431557554636204100077724452664624403332749942491631809380564977271941702359855490986739538308475486075827322708424965547211014301190574536285676479/1282145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521000000000000000000000000", + "record_suffix": "2145035496937227065120282450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521/1282145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521", + "phase_local": "17160283975497816520960977458831760809697827516952420920228021703988635930797745280579040845379616221612671947648319310033512311142345002135460678726594724979142427112304846820096130551866016479252881524347851038069828631540515005242841953466443078157015934785139044037492694961088620183357876449970472278379623948334349432680880190044064819775023808127224591393758809549909655975718988686670965811858014301190574536285676479/10257160283975497816520952019603867257746924892635954871403635240069600215425156670734984049545406544366196513820654512485851558085706572583949521410171355438300715420802481118239525918141293616789392661465087618699771927305623198141195179424957356281056783584182567163707027827059036643004253339828448854657959999480001827988787712435043999820003522406591278971893736309990210479885590475403709714588168000000000000000000000000", + "phase_boundary": "3432056795099563304191169775737954612157913408188523797319829648308463590672408692591801209054380728655460891124709321352265842577086934975843550589510374338570090470319952228475396038831123047738752352277756078252286787041956492286698413500558053311589067439085313071870433313859305779955204587211388552011624364332887041650710242008864963772205882854201413878769761557741272067246608363703194141323614301190574536285676479/2051432056795099563304190403920773451549384978527190974280727048013920043085031334146996809909081308873239302764130902497170311617141314516789904282034271087660143084160496223647905183628258723357878532293017523739954385461124639628239035884991471256211356716836513432741405565411807328600850667965689770931591999896000365597757542487008799964000704481318255794378747261998042095977118095080741942917633600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "2559999999999999999999996157854964503062772934880997549516592781634388420505641074545594991299973071855416158126993806824181954225435772418185939268555239286678427006309823728580570212410572399689860220059260232338297901325917316864047662528509086797100232350602571880330464867902051977179104536621521617620419624468332521443893167755000064999771501401535945619500022499559699176090128513282961251223690014301190574536285676479/5128580141987748908260476009801933628873462446317977435701817620034800107712578335367492024772703272183098256910327256242925779042853286291974760705085677719150357710401240559119762959070646808394696330732543809349885963652811599070597589712478678140528391792091283581853513913529518321502126669914224427328979999740000913994393856217521999910001761203295639485946868154995105239942795237701854857294084000000000000000000000000", + "prime_interval_packing": "2145035496937227065120282450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521/1282145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521", + "alpha_positive": "4290070993874454130239282755931317499504158039986267367501591651788474361930242229341003686324707946965286582157434945644843746862415564173319621098078146253605861510444008140451691945895803887208385425532137013240883152323116399346457384748425867364428246648213671257221824666811137930167871578633831284909624338332978441090095863761064954772382003183765362473456577057251796061526132133888679870732014301190574536285676479/2564290070993874454130238004900966814436731223158988717850908810017400053856289167683746012386351636091549128455163628121462889521426643145987380352542838859575178855200620279559881479535323404197348165366271904674942981826405799535298794856239339070264195896045641790926756956764759160751063334957112213664489999870000456997196928108760999955000880601647819742973434077497552619971397618850927428647042000000000000000000000000", + "alpha_below_one": "2559999999999999999999998722145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521/2564290070993874454130238004900966814436731223158988717850908810017400053856289167683746012386351636091549128455163628121462889521426643145987380352542838859575178855200620279559881479535323404197348165366271904674942981826405799535298794856239339070264195896045641790926756956764759160751063334957112213664489999870000456997196928108760999955000880601647819742973434077497552619971397618850927428647042000000000000000000000000", + "alpha_below_one_fourth": "636782446754594159402320218469310386109678647749760912095225610852561539102142049691595499410263201075921995531633472084720878633494245222323525467037631568640188852289711061749518677937935047162128655916035839155494862304278333484478241329311408900201620727363196776474467414524378652257597962160644222131212875629167135808209136163429185033977838147228189573269901942317136358931323272578843177291028485698809425463714323521/2564290070993874454130238004900966814436731223158988717850908810017400053856289167683746012386351636091549128455163628121462889521426643145987380352542838859575178855200620279559881479535323404197348165366271904674942981826405799535298794856239339070264195896045641790926756956764759160751063334957112213664489999870000456997196928108760999955000880601647819742973434077497552619971397618850927428647042000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "3271299506773274457239968340481751249348809241050473631974303846144545735531667660249169566431273283244934501556013454210683142709375855559796926730403785230173446487727724403590411515160992312243383083897270219295999549218693874158685345844060433782323165321284365536494432458413990773287291319671722468681252792590270269197229215193483455024240121420048644526570877303245250656627431196175619122600855198945670360698883365202315953808128635802272093838493814156913778323792324549367195057776913877620817290573708606672791422285859202198566721736887722794974353550148773639489259148611242801621643879857754121587333872625447277509729176473817886297972972371640955817619433790656323668967047037919026726175511298607880946252189517024788304506197834933590539652978944688538653837441/3282291290872159301286704646273237522479015965643505558849163276822272068936050134635194895854530094197182884422609443995472498587426103226863846851254833740256228934656793957836648293805213957372605651668828037983927016737799423405182457415986354009938170746938421492386248904658891725761361068745103633490547199833600584956412067979214079942401127170109209271005995619196867353563388952129187108668213760000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "71817282271803982532167630243266044552787080336444646322679303575653636461884330142243087422463333139363323636184254679414266602009345263417038353475705125646370442347490377760174496707898631735245560631542920252583281714467233634537418447814131589857153571621652821668664828012766137212496713108763025984402421122435017059578622196215351803560713675048122394916649822981242586310814338263380793963034273957096428276391142970563/10257160283975497816520952019603867257746924892635954871403635240069600215425156670734984049545406544366196513820654512485851558085706572583949521410171355438300715420802481118239525918141293616789392661465087618699771927305623198141195179424957356281056783584182567163707027827059036643004253339828448854657959999480001827988787712435043999820003522406591278971893736309990210479885590475403709714588168000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "35509053739535621179842541880401939951792006999280343847300860770219026016897047208116751329430741500007481801330995595093649883669491563862691344998520574663241950248262934709567499796349341180918785717231959100425428996058027312868536567652018872132703544604361016529792383880792194948373318911116714974063720448627066250767653031261570072060224181203565628752596135951195731594809018268534959741487/51285801419877489082604760098019336288734624463179774357018176200348001077125783353674920247727032721830982569103272562429257790428532862919747607050856777191503577104012405591197629590706468083946963307325438093498859636528115990705975897124786781405283917920912835818535139135295183215021266699142244273289799997400009139943938562175219999100017612032956394859468681549951052399427952377018548572940840000000000000000", + "coordinate_movement_above_kappa": "7177311701462130238013481108802185639483635015680068513181296367323887649304710108605120999411390158548672373870120285669838523987893727620923882515907550966310442468044591696581467944289133437348759434840563521248701103318404979921898736741276901005855889439264409310758776470939629592153578629766606369259054307614256730140847279108570229394061929514301190574536285676479/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "887725061343355032558836481891046048311392956616397016688162593801070641722399252058334941362762344324368999258710662295527186360292528383245710631272838095161618968617145767429047714967993761861267544256716294374683387429959769618813646541903043683648053483011077390423914133641326491329752597246250395795486178970676721268962827183075197421005627029648839894905031912062854541093915471014564568073460676479/1282145035496937227065119002450483407218365611579494358925454405008700026928144583841873006193175818045774564227581814060731444760713321572993690176271419429787589427600310139779940739767661702098674082683135952337471490913202899767649397428119669535132097948022820895463378478382379580375531667478556106832244999935000228498598464054380499977500440300823909871486717038748776309985698809425463714323521000000000000000000000000", + "bulk_exposure_above_kappa": "7177311701462130238013481108802185639483635015680068513181296367323887649304710108605120999411390158548672373870120285669838523987893727620923882515907550966310442468044591696581467944289133437348759434840563521248701103318404979921898736741276901005855889439264409310758776470939629592153578629766606369259054307614256730140847279108570229394061929514301190574536285676479/2560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "1420360867436389350256474610097075147588273061605602174397675505354356031975854960180086211304223466824481226278675596221931934615334901841186080806250646715110248222341089788072560211913233879575049330015195680881064822370830179311841695056683326765638606652076492638370799891853209415555352380913001120406441985700082715030477622651998748501908989747702324326193973951330790515016050745042588964195765676479/2051432056795099563304190403920773451549384978527190974280727048013920043085031334146996809909081308873239302764130902497170311617141314516789904282034271087660143084160496223647905183628258723357878532293017523739954385461124639628239035884991471256211356716836513432741405565411807328600850667965689770931591999896000365597757542487008799964000704481318255794378747261998042095977118095080741942917633600000000000000000000000", + "scalar_work_above_kappa": "7101809465762088739031281310961385539874994181490457189965813228589400194679382513478766424013142106825678314491634891436915916002453552059216696006013938661228960262063159341603360179329128468522055044772309136949133461740114549370807545881006346306871173788774255283137581312779960607295083406691675516256637257480413315153302107653849960031544858740272824926609355703522107570185493668008182522833685676479/10257160283975497816520952019603867257746924892635954871403635240069600215425156670734984049545406544366196513820654512485851558085706572583949521410171355438300715420802481118239525918141293616789392661465087618699771927305623198141195179424957356281056783584182567163707027827059036643004253339828448854657959999480001827988787712435043999820003522406591278971893736309990210479885590475403709714588168000000000000000000000000", + "dimension_above_kappa": "51114198580122510952904191241516284891107917417222165594773830798932342770175077416544105769170014486285768760327468937578224010902462732173902276618634786671187767894508169072044320657556466625620536489023903087419926080703843109719453098933240531463252649731106036314168405469065833314771117181649950675083518913716705834119781886451846251667635419228613677200755499653614576353168183574177183021868178268534959741487/51285801419877489082604760098019336288734624463179774357018176200348001077125783353674920247727032721830982569103272562429257790428532862919747607050856777191503577104012405591197629590706468083946963307325438093498859636528115990705975897124786781405283917920912835818535139135295183215021266699142244273289799997400009139943938562175219999100017612032956394859468681549951052399427952377018548572940840000000000000000" + }, + "controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, the gauge44-barch U8 local word and all 72 cold helper ends, and explicit all144 whole-owner dispatch with a two-copy remainder trade are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; This is a new T16 composition of the accepted PR799 and PR589 suppliers. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/AUDIT-LOCAL-COMPOSITE.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/AUDIT-LOCAL-COMPOSITE.json new file mode 100644 index 0000000000..7d35b90b6b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/AUDIT-LOCAL-COMPOSITE.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "9fca1fc6f1fa0a9469fc10e3b90dc2c9802bf391b45f84d52ce5e7f6706c9674", + "compressed_sha256": "c371cf9b5914706538b11166dd86cd82bd942dbe1085b6926bd7e2ca5e92cbbe", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 480, + "entering": 192, + "lowends": 78, + "coldends": 48, + "compensation_gates": 7208, + "local_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 32, + "8": 120, + "9": 240 + }, + "checked_columns": 704, + "elapsed_seconds": 0.8899999999994179, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/BINDING.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/BINDING.json new file mode 100644 index 0000000000..b7f661cb68 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/BINDING.json @@ -0,0 +1,25 @@ +{ + "status": "PASS_FROZEN_048_ALLCOLD_DISPATCH_FRESH_PROVIDER_BINDING", + "source_plan_sha256": "d64d0314634805d9a919a0251935a91f84146281cbc9a97d8de6a2b62d3cabe7", + "runtime_plan_sha256": "2f67af26df70000402cfe0de8652a2f167791b06f61b11a95510c18870330cc8", + "providers": { + "gauge44": { + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "LOCAL-PROGRAMS.json.gz": "94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac", + "LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "INDEPENDENT-LOCAL-REPLAY.json": "0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "1f71895a8511e536684feac71ab250941634cdfb59141ac0b831c358c021ef7f", + "RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108" + }, + "canonical_content_sha256": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "all_phase_edges": 2897 + } + }, + "only_rebound_fields": [ + "provider_registry.directory", + "provider_registry.artifact_sha256", + "runtime_source_plan_sha256" + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/BIT-SUPPLIER-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/BIT-SUPPLIER-CONTROLS.json new file mode 100644 index 0000000000..8bc71c7cda --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/BIT-SUPPLIER-CONTROLS.json @@ -0,0 +1,49 @@ +{ + "status": "PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS", + "kappa": "0.001673005344598825", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "derived_deficit": 10272, + "rejected_controls": [ + "revert_hardcoded_9984", + "ports_112", + "decoder_constant_64_copy_ranks_unchanged", + "decoder_constant_64_with_one_copy_rank_8", + "eight_retained_totals", + "live_minus_one", + "profile_rank_mass_plus_one", + "profile_rank_mass_receipt_mismatch", + "bit_lower_next_grid", + "not_nine_stage_record", + "tampered_bytes_next_grid", + "pr543_file_under_pr589_pin" + ], + "assembler_sha256": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/CENTER-COMPATIBILITY.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/CENTER-COMPATIBILITY.json new file mode 100644 index 0000000000..5a3ae37422 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/CENTER-COMPATIBILITY.json @@ -0,0 +1,112 @@ +{ + "status": "PASS_IDENTICAL_PORT_ORDER_AND_ORDERED_CENTER_FRAMES", + "new_canonical_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "comparison_canonical": "pr635/research/community-k492-audit/pr626/replay/mixed-global/base/split-centres/CANONICAL-WORD.json.gz", + "comparison_canonical_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "new_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "old_centers": [ + 229, + 224, + 227, + 225, + 243, + 241, + 259, + 257 + ], + "ordered_center_frames": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ], + "v": 112, + "h": 9, + "center_count": 8, + "scope": "Carrier register identity changes; native cut center channels retain exact ordered frames and ports. Full endpoint and exact center clearing are independently checked by local ledger replay." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ENDS7-X54-T16-STANDALONE.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ENDS7-X54-T16-STANDALONE.json new file mode 100644 index 0000000000..9664226062 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/ENDS7-X54-T16-STANDALONE.json @@ -0,0 +1,517 @@ +{ + "status": "PASS_COMPOSITE_CONSTRUCTION_REUSE_AND_FRESH_T16", + "construction_reuse": { + "base_manifest_sha256": "59e0c0791661501f5e8d67d71a3344109b075852a9793fb87ed16527f3c61f42", + "base_construction_result": { + "status": "PASS_RANK7_ENDS_AND_X54_ON_CHECKED_SLOT_BASELINE", + "kappa_decimal": "0.001672805757008947", + "kappa_t8_decimal": "0.001671160051689084", + "strict": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY 0.001671160051689084 2.134070678384258430948729524678107823357204278557647793270777394694772", + "word_sha256": "9fca1fc6f1fa0a9469fc10e3b90dc2c9802bf391b45f84d52ce5e7f6706c9674", + "baseline": "C:\\src\\mult\\scratch\\FastPhases\\vs-sparse-j4", + "steps": [ + { + "step": "ends7", + "exit_code": 0, + "seconds": 0.125 + }, + { + "step": "ends7-controls", + "exit_code": 0, + "seconds": 8.25 + }, + { + "step": "x54", + "exit_code": 0, + "seconds": 0.265 + }, + { + "step": "x54-controls", + "exit_code": 0, + "seconds": 5.609 + }, + { + "step": "native", + "exit_code": 0, + "seconds": 1.532 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 1.063 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 7.406 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.641 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 4.203 + }, + { + "step": "audit-local", + "exit_code": 0, + "seconds": 0.953 + }, + { + "step": "leaver-premise", + "exit_code": 0, + "seconds": 0.781 + }, + { + "step": "strict", + "exit_code": 0, + "seconds": 18.828 + }, + { + "step": "strict-t16", + "exit_code": 0, + "seconds": 34.391 + } + ] + }, + "construction_files_sha256": { + "build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "INPUTS.json": "edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99", + "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "NOTICE.md": "defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816", + "REBUILD-CHECKS.json": "1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91", + "reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92", + "UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "barch/build_tri.py": "0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e", + "barch/LOCAL-PINS-barch-U8.json": "2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5", + "barch/RECIPE-U8.json": "292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652", + "barch/reproduce_barch.py": "19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1", + "barch/run_controls.py": "42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476", + "ends7/build_ends7.py": "4f575f1e73b2ea5f051b3defdf2013310fa462cc120e44d26a3b1ab6a3ef2148", + "ends7/end7_controls.py": "c7edf1d6ee059d6c9e73921179154f1c8556b2a6b738246c4ea9021ccc0fe067", + "ends7/ENDS7-PINS-k8.json": "88b276bb95c5cc8b93fd7aaa935ee6ae3544cf704952ba797d929ee8a18d6044", + "ends7/README.md": "3190ed220438c4c611ab2dd4f695991c3ed2ed90cc9e9dfaed9b8cee5da28cfd", + "ends7/RECIPE-ENDS7-k8.json": "18b8563294b9052a33dd7eafc4ca35f4feec3871bfdec4b00153966fa87e24b3", + "ends7/verify_ends7.py": "23e1408149ee4a23de1e77d989fc4fba43bd3978663c846c9147334db5368764", + "ends7/fastpath/lowering.py": "ba42903b841722b872f98f3afa77d47976ca66a0cb4c0dd6b8de04462d4baa2b", + "ends7/fastpath/NOTICE.md": "3da80a5155c625bff907a42a82c65bfcf92854d2c960bcea4537c19c99efd4f2", + "ends7/fastpath/phases_fast.py": "122c671f5bf49a1696b5edc91d76d7c16b1837513dd6c54ace4add747cd3c657", + "ends7/fastpath/PROOF.md": "d73e4522602404caba8e7f247005a45c8a8cd26ffd2a70d65f4f9556a391d053", + "ends7/fastpath/sparse_state.py": "e91210ecd5085cf9add872f40bb434806838da488e12152c63c86e51fb5a7a37", + "ends7/premise/premise_check.py": "28a7f881a988b29b8ed3c927dd142ac3d4ee273dedab3a65bb02c01a64eb2639", + "ends7/premise/verify_1049.py": "a1736324c6db161733d8e11f608defd87b7f97cacd611203d22499e4c7de5545", + "ends7/premise/inputs/CODED-CELLS-k8.json": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "ends7/premise/inputs/TRI-LEAVER-k8.json": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "ends7/x54/build_tri.py": "2432372f148a4d34d2909ff8a7e2a239d6ee51837892380963de6efd45c8f2d6", + "ends7/x54/RECIPE-X54-ends7.json": "5704c7d1ad8be05f51b7c8ff39c6f2430bf787bc1ac5919e6f1ae293df369748", + "ends7/x54/run_controls.py": "51454916979eabf8f69a130a558216cb02df18626b8dd4cddd77a2fb745f2a86", + "ends7/x54/X54-PINS.json": "2738dc992396b3f6b04966bd020ea09a5d1a20858170de90c37caa23b4ecd5ec", + "frames/build_frames.py": "200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb", + "frames/FRAME-RECIPE-sw4.json": "a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473", + "frames/frame_controls.py": "477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77", + "frames/LOCAL-PINS-frames-sw4.json": "bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f", + "frames/reproduce_frames.py": "dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832", + "jx/build_jx.py": "3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916", + "jx/LOCAL-PINS-jx-X4.json": "95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974", + "jx/RECIPE-X4.json": "9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd", + "jx/reproduce_jx.py": "5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c", + "layers/build_pivot_swap.py": "8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8", + "layers/layer_end_controls.py": "7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef", + "layers/reproduce_layers.py": "435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e", + "layers_np/COLD-LAYERS-RECIPE-NP.json.gz": "3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0", + "layers_np/HPE-RECIPE-NP.json": "43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1", + "layers_np/PIVOT-SWAP-K8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "layers_np/reproduce_np.py": "1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c", + "layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz": "17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4", + "layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "layers_p6n/P6N-SPEC.json": "132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1", + "layers_p6n/reproduce_p6n.py": "aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca", + "leaver/build_frames_lv.py": "2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b", + "leaver/cgx_leaver.py": "3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c", + "leaver/CHAIN-PINS-k8.json": "9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9", + "leaver/CODED-CELLS-k8.json": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz": "6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33", + "leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz": "24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb", + "leaver/FRAME-RECIPE-LV-k8.json": "b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065", + "leaver/HPE-RECIPE-k8.json": "907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9", + "leaver/layer_end_controls_leaver.py": "4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206", + "leaver/LEAVER-PINS-k8.json": "ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6", + "leaver/LEC-REASON-PINS-k8.json": "b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914", + "leaver/LEC-REASON-PINS-STACK-k8.json": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "leaver/PROMO-RECIPE-k8.json": "bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83", + "leaver/RECIPE-U8-k8.json": "51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e", + "leaver/RECIPE-X4-k8.json": "4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1", + "leaver/REGROUP-LEAVER-k8.json": "b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e", + "leaver/reproduce_leaver.py": "831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30", + "leaver/reproduce_leaver_chain.py": "2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5", + "leaver/TRI-LEAVER-k8.json": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "leaver/cells-k8/CORE-01+.json": "3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c", + "leaver/cells-k8/CORE-01-.json": "8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927", + "leaver/cells-k8/CORE-23+.json": "53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d", + "leaver/cells-k8/CORE-23-.json": "e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d", + "leaver/cells-k8/CORE-45+.json": "ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9", + "leaver/cells-k8/CORE-45-.json": "302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7", + "leaver/cells-k8/CORE-67+.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "leaver/cells-k8/CORE-67-.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "notri/cgx.py": "3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418", + "notri/cold44x.py": "f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296", + "notri/port_stage_x.py": "38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7", + "notri/PRIO6.json": "de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15", + "notri/reproduce_notri.py": "90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8", + "promo/build_promotion.py": "9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf", + "promo/LOCAL-PINS-p6n-k4.json": "a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f", + "promo/make_recipe.py": "ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122", + "promo/PROMO-RECIPE-p6n-k4.json": "fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90", + "promo/promo_controls.py": "786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372", + "promo/reproduce_promo.py": "f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026", + "slots/RECIPE-SLOTS-k8.json": "0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b", + "slots/SLOT-PINS-k8.json": "55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2", + "slots/verify_slots.py": "bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be", + "sw4/build_sw4.py": "9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66", + "sw4/LOCAL-PINS-sw4-P6k4.json": "3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327", + "sw4/NOTES.md": "3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446", + "sw4/reproduce_sw4.py": "3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac", + "sw4/SW4-RECIPE-P6k4.json": "fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa" + }, + "construction_difference_only": "ends7/x54/X54-PINS.json:kappa_t16_decimal", + "local_sha256": { + "CANONICAL-WORD.json.gz": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "1f71895a8511e536684feac71ab250941634cdfb59141ac0b831c358c021ef7f", + "FULL-WORD.json.gz": "34d708aa590b16b54094fbaaa804fe2ea00690e0d863525c85db7b0213861c4b", + "INDEPENDENT-LOCAL-REPLAY.json": "0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2", + "LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "LOCAL-PROGRAMS.json.gz": "94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac", + "RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108", + "SCALAR-FRAME-AUDIT.json": "512a8d52cf28fd249eceb4557428327430e81b2b236ca2b60812b5ba5a544513", + "WRAPPER-CHECKS.json": "4b5ebb62b23dae93fc1fe9174c8145654a8452f4b07645c285aa41c961adb1a3" + }, + "pr635_source_compatibility": { + "scripts": { + "code/hpe_audit_and_transport.py": { + "stack": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "publisher": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3" + }, + "code/hpe_emit_local.py": { + "stack": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "publisher": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805" + }, + "code/hpe_audit_local.py": { + "stack": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "publisher": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810" + }, + "code/hpe_adapters_local.py": { + "stack": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "publisher": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf" + } + }, + "entire_python_code_equal": true, + "stack_files": 22, + "publisher_files": 22, + "cli": "--pr635 checkout root; verifier appends research/complex-571-cold14-st2" + } + }, + "immediate_template_manifest_sha256": "273b56fe931ea9b7f05868658778928cff1b47e40a3401a22ca8bb97b324a0ca", + "construction_difference_only": "ends7/x54/X54-PINS.json:kappa_t16_decimal", + "construction_files_sha256": { + "barch/build_tri.py": "0fba65b31c2fd71864c291358bb0ad8d5f7e1be07e21df23f0ae73d7b966002e", + "barch/LOCAL-PINS-barch-U8.json": "2d16f99e1f71fd66378f5f767cf4cfa2a58264919a95074c7b31029f39a3c9f5", + "barch/RECIPE-U8.json": "292f0e9f82824c4111728cf4de929bf6e43320fbbdc77658aae9681906b0d652", + "barch/reproduce_barch.py": "19bc970aa6af25ab0e7fa96fb65c64dd0c5243976d8f2cb733cba839155482c1", + "barch/run_controls.py": "42639bf62bf57795e3ea615c1944c67efed00f28591333daeb3139bf63d04476", + "build_gauge_cold44.py": "ec730a4d3ff12fb058780718b1d5a7afe61243c532679ef347a5a48e2af0a3bb", + "COLD44-RECIPE.json.gz": "22d0e01e990c0f1c588607a095271f7844851a437ba07174505e98e9528aed4c", + "COMPLETION-PRIORITY.json": "0274ffca1725e7460aaf7b672bc1248aa6dfdec11e5f0fec91af18b829f8ba47", + "construct_gauge_xcentre.py": "d8d295566ef2399af2da0707a4adc83e07aa26d2344c01a66bd0ca7684cf9217", + "ends7/build_ends7.py": "4f575f1e73b2ea5f051b3defdf2013310fa462cc120e44d26a3b1ab6a3ef2148", + "ends7/end7_controls.py": "c7edf1d6ee059d6c9e73921179154f1c8556b2a6b738246c4ea9021ccc0fe067", + "ends7/ENDS7-PINS-k8.json": "88b276bb95c5cc8b93fd7aaa935ee6ae3544cf704952ba797d929ee8a18d6044", + "ends7/fastpath/lowering.py": "ba42903b841722b872f98f3afa77d47976ca66a0cb4c0dd6b8de04462d4baa2b", + "ends7/fastpath/NOTICE.md": "3da80a5155c625bff907a42a82c65bfcf92854d2c960bcea4537c19c99efd4f2", + "ends7/fastpath/phases_fast.py": "122c671f5bf49a1696b5edc91d76d7c16b1837513dd6c54ace4add747cd3c657", + "ends7/fastpath/PROOF.md": "d73e4522602404caba8e7f247005a45c8a8cd26ffd2a70d65f4f9556a391d053", + "ends7/fastpath/sparse_state.py": "e91210ecd5085cf9add872f40bb434806838da488e12152c63c86e51fb5a7a37", + "ends7/premise/inputs/CODED-CELLS-k8.json": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "ends7/premise/inputs/TRI-LEAVER-k8.json": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "ends7/premise/premise_check.py": "28a7f881a988b29b8ed3c927dd142ac3d4ee273dedab3a65bb02c01a64eb2639", + "ends7/premise/verify_1049.py": "a1736324c6db161733d8e11f608defd87b7f97cacd611203d22499e4c7de5545", + "ends7/README.md": "3190ed220438c4c611ab2dd4f695991c3ed2ed90cc9e9dfaed9b8cee5da28cfd", + "ends7/RECIPE-ENDS7-k8.json": "18b8563294b9052a33dd7eafc4ca35f4feec3871bfdec4b00153966fa87e24b3", + "ends7/verify_ends7.py": "23e1408149ee4a23de1e77d989fc4fba43bd3978663c846c9147334db5368764", + "ends7/x54/build_tri.py": "2432372f148a4d34d2909ff8a7e2a239d6ee51837892380963de6efd45c8f2d6", + "ends7/x54/RECIPE-X54-ends7.json": "5704c7d1ad8be05f51b7c8ff39c6f2430bf787bc1ac5919e6f1ae293df369748", + "ends7/x54/run_controls.py": "51454916979eabf8f69a130a558216cb02df18626b8dd4cddd77a2fb745f2a86", + "ends7/x54/X54-PINS.json": "337648418070881cd80ac9eb098c5c71ba14a0a763273b50c02559b8e384e1ee", + "frames/build_frames.py": "200847a7e8b3125cbeea0765dad67650e0bf83d32b66d72ba4977e99b8ee8eeb", + "frames/FRAME-RECIPE-sw4.json": "a2c7ca4d44671386d05974e2627645b42bbb7da7a35cefff6e9fa158b6ac8473", + "frames/frame_controls.py": "477de854ec9184a2c73d6ac3857a9d0cbd6bc04b71d10a105e7344434b492a77", + "frames/LOCAL-PINS-frames-sw4.json": "bc416b8f6443d59c715fb358c4d70fa27eae2d306388ffe0e2a303f60d929f7f", + "frames/reproduce_frames.py": "dc39ada9a2eb387310be181f3cea5dbd4b538632a888cd7372ece5e38a771832", + "INPUTS.json": "edd32ad9a55d3c508ca2ad90c74b5c87c7f7ca509d96b856a2176fa452780f99", + "jx/build_jx.py": "3cc7550b0c24bb54e245c6f7f16de489fd7844721fbb64aac628f38f43887916", + "jx/LOCAL-PINS-jx-X4.json": "95c5114c8e937c2737a1b9f9da97303f2e5e129d39e6dfcc4010e99bfdb9c974", + "jx/RECIPE-X4.json": "9d42c6b38e8124f5ffe15da56c260a7fba7260626bf3c5f8cbd93aa4a71ceadd", + "jx/reproduce_jx.py": "5c7afebb4eb7fcdeb7e971cfbc457cf071850e2da21c3c71295efdd453c2399c", + "layers/build_pivot_swap.py": "8e8bced88be2e592ded40929499bac385ca92fcc1fa59183c22229dbf34093b8", + "layers/layer_end_controls.py": "7829187bfc8f909948d5250e0ec00f02c89f5fe98306a3ed88daee36cb3c92ef", + "layers/reproduce_layers.py": "435699f6f79c6c7fb8d6cc5a8382576d6ac88747583a975ff671e45440b93c4e", + "layers_np/COLD-LAYERS-RECIPE-NP.json.gz": "3164cfb71baaeba4ac43427bc14075a225fc3a32ecd9341e58aa52c03a4ee2c0", + "layers_np/HPE-RECIPE-NP.json": "43900139f618bdc06b8319098fb8dccaf4fc315b43ef7c067ca2cd778cdba2c1", + "layers_np/PIVOT-SWAP-K8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "layers_np/PIVOT-SWAP-NP.json": "d49b8d316da1cbdaf995dd0e8314d3c67cc9cd4d5902e9d85ccb907be645bef5", + "layers_np/reproduce_np.py": "1a304144a250d00d14154692ba522365b036777cf2b6fac466095e8ba733c16c", + "layers_p6n/COLD-LAYERS-RECIPE-P6N.json.gz": "17e218a17e47c58fe2cde775ab2314d3d84030a61327b7f13da61cae3b374ad4", + "layers_p6n/layer_end_controls.py": "fc58c5699ba6191c1163a3041241f6f0b619626c4462cd99bcf88210bac9e81e", + "layers_p6n/P6N-SPEC.json": "132a59635077d6afe80f99964a6935fce1dc2ece6587d74209c6f9c60025c8f1", + "layers_p6n/reproduce_p6n.py": "aa7d6bcbed05aa1c689437c07a26e5c95be3c700c0c1fb7bcf91c432a88436ca", + "leaver/build_frames_lv.py": "2eb80d612aa59a7bd8b04a122045e3bd2b83a21954e3164943cd20cf6050a21b", + "leaver/cells-k8/CORE-01+.json": "3d2afc4986f1f3aceacd1e0572daebfb79134ba6af7677150083d0912676427c", + "leaver/cells-k8/CORE-01-.json": "8f8620f47ce5ba5abf6179d1a5a986c25903ba71b6711a7035815968b5888927", + "leaver/cells-k8/CORE-23+.json": "53b65cbaeb24bb2a4625f107a39c0ba3797f37aa4980096f22dff7cdbd76440d", + "leaver/cells-k8/CORE-23-.json": "e34431338f5527838c6e0d0caff885bde82624b0791f2a072c5b4e49faa6b98d", + "leaver/cells-k8/CORE-45+.json": "ba8f3aa26032dc36e2db4073e2cac9fc61d7a475d534a749bdfcbecf3aa103a9", + "leaver/cells-k8/CORE-45-.json": "302024488efff30c820b5bbf6b422c6106bb5a9ee851bef8fccc16512ca789e7", + "leaver/cells-k8/CORE-67+.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "leaver/cells-k8/CORE-67-.json": "0a7aa4ee46e7f05c9cf0c1a36791d49e439c0c9c473e76cf954b0655463dae05", + "leaver/cgx_leaver.py": "3af491c63dd96204a7c36006c7e419c2e5ce77e5bc453ccd2495c1e41f83f87c", + "leaver/CHAIN-PINS-k8.json": "9dfcecf963d8fa6d1cf5ba212336437a51f03c1444a1c6d33e54d2bf762970a9", + "leaver/CODED-CELLS-k8.json": "7347f814850a838bd617bc7a55c307cec2b72becde2f12ea3e2e1af344b43563", + "leaver/COLD-LAYERS-RECIPE-NP-k8.json.gz": "6416043008fca68463c0026fb7be500bafbf6b592b1caf42701101531814df33", + "leaver/COLD-LAYERS-RECIPE-P6N-k8.json.gz": "24a304493f28d7b419d3023598ff728deb63e1582cd65011e438951ae22c0beb", + "leaver/FRAME-RECIPE-LV-k8.json": "b53b97ecbefb60cddceec08172438f1902178d9438bcd98ecc736c43773c3065", + "leaver/HPE-RECIPE-k8.json": "907db3b20e2e54e230567259575ac89e7eac2b60ce0daac11b6b98849ce45ee9", + "leaver/layer_end_controls_leaver.py": "4ba676f1ea326b739a64c3477f64eeb295f8151514f78fa7e62b71e4373a6206", + "leaver/LEAVER-PINS-k8.json": "ab6ce39246d102f55d63c819c4cded2450c515b0e99afe5023f726054afc73f6", + "leaver/LEC-REASON-PINS-k8.json": "b07279e41ec9d8f89e8509081e1e7f2c8e8b062fd951b22608a03ac461982914", + "leaver/LEC-REASON-PINS-STACK-k8.json": "d87ed7b5869bed4a3d266f0ce5fc784cbe88340a625d22ab9f580fa00872df19", + "leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "leaver/PROMO-RECIPE-k8.json": "bc017d6d5126f5f975e7fdae84642963c86ff74f7056ec4764192b5f4497dc83", + "leaver/RECIPE-U8-k8.json": "51e5e37bfcd1dd1f4e2ce1bb60d23f645e5881e36f3aa556f1533543a40e548e", + "leaver/RECIPE-X4-k8.json": "4199b9b6bb28f3f79fa01744a0520a60fdf783eddca459f86830535f759b67c1", + "leaver/REGROUP-LEAVER-k8.json": "b846ea56bc8c58d2513b257f9bea7de5136484b7d66c5bf3d8e3211fc48e4b8e", + "leaver/reproduce_leaver.py": "831bfdf2247b5d864b74c3b2b6a475718053d48570851d48bd1c5471d410ee30", + "leaver/reproduce_leaver_chain.py": "2bc3fc3f32e0f957a0731b79254c553ca48fc6d4d47c4f99d6cd31e1901d85b5", + "leaver/TRI-LEAVER-k8.json": "b22e6ecf76104de66844bd617c4ca80f5546ba0966a50e5e9aa0ffea4976cb30", + "LICENSE": "c71d239df91726fc519c6eb72d318ec65820627232b2f796219e87dcf35d0ab4", + "NOTICE.md": "defe7e44af610e25a6c50c1c3b2efd0972d0690574995c0c872fc50eebf4c816", + "notri/cgx.py": "3da039d4184097c14802f9dbf972520d5b807671196f5e47a2247bc9f29bb418", + "notri/cold44x.py": "f0bc3500efb2c839a0f8cb03dbb9ea0a54f1dfc71ef81e5373b3d638ac5b8296", + "notri/port_stage_x.py": "38310744d054e393ea35e996047cddeb2d212141aaaaa4b07f7a4663b11db8e7", + "notri/PRIO6.json": "de0412511b0dd1af13e9717bc791126ac0e91c569b5391fd6c70268083045d15", + "notri/reproduce_notri.py": "90148c2a0422b4f92164298a283de73d413ab3d4cb7151a0e6b643a37ea025a8", + "promo/build_promotion.py": "9c9e2001b8d68bbe934d136026276fe97bd9bf6f94d4d78441fc28e14aca4daf", + "promo/LOCAL-PINS-p6n-k4.json": "a92bb02266596956bd53e9c86e8bbcc6639c92b4a4a248a1521f8eb79228271f", + "promo/make_recipe.py": "ba9e4fdc0c1be7f6a150a5a50909911257a1a8c7cc5d03d61f541178fc07c122", + "promo/PROMO-RECIPE-p6n-k4.json": "fa6065d142646f7ab1f268912ce0cf5a1a6cd33c3994ff96bd6e204cf16b3e90", + "promo/promo_controls.py": "786c51f84b53698c2c833083506c4432c30eb0ed3b71e7dbe458a70c7413c372", + "promo/reproduce_promo.py": "f979be666c3f5cf57e342a8427863c0b35b67ca4d3be495ac386f6870deb2026", + "REBUILD-CHECKS.json": "1f9d754c89cfed632a6eee919a42d00c6677a8fb4fe1d40615c903242addbc91", + "reproduce.py": "047bb9b3536b0b16bb08a21cd9fd80404ca9d022345f1aeab34b21dffc281c92", + "slots/RECIPE-SLOTS-k8.json": "0bfffa6a90a3a9635d168f7f55e2003c773c422ded75822b6947cf499f59a55b", + "slots/SLOT-PINS-k8.json": "55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2", + "slots/verify_slots.py": "bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be", + "sw4/build_sw4.py": "9a295f3d534594a6b1326d8a6647e947670d1c6fbc92f37f5169661fde4c8f66", + "sw4/LOCAL-PINS-sw4-P6k4.json": "3c06bf68b28ff125a6a2372bb70cefd76fb9fe1333438cd34dfb5b617cd70327", + "sw4/NOTES.md": "3a3ddb0c77b188e67fc453ccb3efe9323f87028092a6ce4d259b7dc99d702446", + "sw4/reproduce_sw4.py": "3d082e0cc576fb1b4fb9e5dd11d63bab697c8a8626e2837813cd00d100b1aeac", + "sw4/SW4-RECIPE-P6k4.json": "fa58d0ffc95d10b7453daefe4b34404a52895f94126ef973e92e92106cd615fa", + "UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610" + }, + "local_sha256": { + "CANONICAL-WORD.json.gz": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "1f71895a8511e536684feac71ab250941634cdfb59141ac0b831c358c021ef7f", + "FULL-WORD.json.gz": "34d708aa590b16b54094fbaaa804fe2ea00690e0d863525c85db7b0213861c4b", + "INDEPENDENT-LOCAL-REPLAY.json": "0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2", + "LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "LOCAL-PROGRAMS.json.gz": "94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac", + "RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108", + "SCALAR-FRAME-AUDIT.json": "512a8d52cf28fd249eceb4557428327430e81b2b236ca2b60812b5ba5a544513", + "WRAPPER-CHECKS.json": "4b5ebb62b23dae93fc1fe9174c8145654a8452f4b07645c285aa41c961adb1a3" + }, + "t16": { + "status": "PASS_GAUGE44_T16_STRICT_GLOBAL_REPLAY", + "kappa": "66920213783953/40000000000000000", + "kappa_decimal": "0.001673005344598825", + "conservative_kappa_decimal": "0.001673005341746756", + "complex_lower": "335161796396441728937/200000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "complex_profile": { + "1": 348675, + "2": 62208, + "3": 61704, + "4": 19872, + "5": 12096, + "7": 3, + "8": 1152, + "48": 4875 + }, + "idle_remainder_profile": { + "1": 2211, + "3": 360, + "7": 3, + "48": 4875 + }, + "complete_invocations": 144, + "roles": 69120, + "prefix_bits": 397, + "charged_prefix_bits": 512, + "physical_row_coefficient": 16469, + "retained_row_coefficient": 20161, + "actual_73_axis_charts": 10174, + "controls": { + "admission": 69, + "bit_supplier": 12, + "independent_t16": 6, + "controller_mutations": 15 + }, + "t8_kappa": "417790012922271/250000000000000000", + "spec_sha256": "c646151781c761401e498343675139a4a5483a81256772f702d0ea67923dbd35", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.157, + "exit_code": 0, + "log_sha256": "3aea2a4b68e7aaeadd9ffef649be0d25e2dff1535d9a61bffeaf6d92e55ba6a8" + }, + { + "name": "bind8", + "seconds": 0.343, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "lift16", + "seconds": 2.375, + "exit_code": 0, + "log_sha256": "4556b16c91d743f0df482632d89d7f1733f5201bab8baee627f4ddd0df81c748" + }, + { + "name": "bind", + "seconds": 0.39, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "emit", + "seconds": 4.86, + "exit_code": 0, + "log_sha256": "81d823fc5d2e210e3820ea9e3cce43ffcf3bc431184af5d58bd843c0b73accd1" + }, + { + "name": "audit", + "seconds": 21.484, + "exit_code": 0, + "log_sha256": "691d1f1c8f401407ac2c0ffdb4850f20005563dfaf172cd655b1d2005453a523" + }, + { + "name": "invoice", + "seconds": 1.0, + "exit_code": 0, + "log_sha256": "1dc7b287373e03726149adfe00de84fb53bf9c93a4bd4c979e7b9fc3b8dad543" + }, + { + "name": "assembly", + "seconds": 0.297, + "exit_code": 0, + "log_sha256": "a79a81105248c88c93972b1ae046b45308411ee166667a2251f663acf73315a3" + }, + { + "name": "admission-controls", + "seconds": 0.375, + "exit_code": 0, + "log_sha256": "34527ddfe1e53bec71dc5759eb9a26417be6d4e93e76cbf80575d9bafebd876b" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.516, + "exit_code": 0, + "log_sha256": "c648542cd6dddbb154af7d02a41aaed1025603d9a4ab54f7c249d2b683e22249" + }, + { + "name": "independent-t16", + "seconds": 0.765, + "exit_code": 0, + "log_sha256": "d2c13b333d463a5c2de42078e9c47a89209075e1d1beac24cf3fc1f573f18c05" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, the gauge44-barch U8 local word and all 72 cold helper ends, and explicit all144 whole-owner dispatch with a two-copy remainder trade are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; This is a new T16 composition of the accepted PR799 and PR589 suppliers. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." + }, + "fresh_strict_steps": [ + { + "name": "restore-parent", + "seconds": 1.157, + "exit_code": 0, + "log_sha256": "3aea2a4b68e7aaeadd9ffef649be0d25e2dff1535d9a61bffeaf6d92e55ba6a8" + }, + { + "name": "bind8", + "seconds": 0.343, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "lift16", + "seconds": 2.375, + "exit_code": 0, + "log_sha256": "4556b16c91d743f0df482632d89d7f1733f5201bab8baee627f4ddd0df81c748" + }, + { + "name": "bind", + "seconds": 0.39, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "emit", + "seconds": 4.86, + "exit_code": 0, + "log_sha256": "81d823fc5d2e210e3820ea9e3cce43ffcf3bc431184af5d58bd843c0b73accd1" + }, + { + "name": "audit", + "seconds": 21.484, + "exit_code": 0, + "log_sha256": "691d1f1c8f401407ac2c0ffdb4850f20005563dfaf172cd655b1d2005453a523" + }, + { + "name": "invoice", + "seconds": 1.0, + "exit_code": 0, + "log_sha256": "1dc7b287373e03726149adfe00de84fb53bf9c93a4bd4c979e7b9fc3b8dad543" + }, + { + "name": "assembly", + "seconds": 0.297, + "exit_code": 0, + "log_sha256": "a79a81105248c88c93972b1ae046b45308411ee166667a2251f663acf73315a3" + }, + { + "name": "admission-controls", + "seconds": 0.375, + "exit_code": 0, + "log_sha256": "34527ddfe1e53bec71dc5759eb9a26417be6d4e93e76cbf80575d9bafebd876b" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.516, + "exit_code": 0, + "log_sha256": "c648542cd6dddbb154af7d02a41aaed1025603d9a4ab54f7c249d2b683e22249" + }, + { + "name": "independent-t16", + "seconds": 0.765, + "exit_code": 0, + "log_sha256": "d2c13b333d463a5c2de42078e9c47a89209075e1d1beac24cf3fc1f573f18c05" + } + ], + "note": "Exact source/native/control/premise/T8 proof reused; frozen T16 map and expected T16 kappa rebound. Publication still executes the complete composite verifier." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/INDEPENDENT-T16.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/INDEPENDENT-T16.json new file mode 100644 index 0000000000..ce9d1e1de7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/INDEPENDENT-T16.json @@ -0,0 +1,117 @@ +{ + "status": "PASS_INDEPENDENT_T16_LITERAL_WINDOWS_CHARTS_PREFIX_ROW", + "roles": 69120, + "calls": 144, + "source_events_per_replica": 30, + "expanded_replica_events": 480, + "bridge_events": 144, + "literal_windows": 288, + "checked_whole_helper_widths": 69120, + "checked_busy_family_windows": 69120, + "orthogonal_port_bases": 112, + "actual_73_axis_charts": 10174, + "checked_slice_prefixes": 32256, + "local_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 32, + "8": 120, + "9": 240 + }, + "idle": { + "1": 2211, + "3": 360, + "7": 3, + "48": 4875 + }, + "profile": { + "1": 348675, + "2": 62208, + "3": 61704, + "4": 19872, + "5": 12096, + "7": 3, + "8": 1152, + "48": 4875 + }, + "live": 14336, + "physical": 14850, + "rank_mass": 1041408, + "deficit": 5120, + "namespace": { + "data": [ + 0, + 14336 + ], + "centres": [ + 14336, + 14344 + ], + "tableau": [ + 14344, + 14848 + ], + "coefficient": [ + 14848, + 14850 + ] + }, + "local_prefix_bits": 68, + "local_prefix_from_native_receipt": true, + "local_profile_recounted": true, + "prefix_formula": { + "local_scalar": 68, + "input_l2": 37, + "invocations": 144, + "bridges": 144, + "margin": 4 + }, + "prefix_bits": 397, + "charged_prefix_bits": 512, + "physical_stock_bits": 2642, + "physical_row_coefficient": 16469, + "row_limit": 20161, + "scope": "Finite role/window/chart and inherited prefix/row obligations. Requires separately admitted local supplier and emitted controller, complete finite invoice, exact moments and outer assembly; no all-size theorem is asserted.", + "controls_rejected": [ + { + "name": "private_namespace_collision", + "reason": "private-namespace collision" + }, + { + "name": "copy_replica_alias", + "reason": "role invocation time" + }, + { + "name": "missing_whole_helper", + "reason": "complete helper role count" + }, + { + "name": "split_whole_helper", + "reason": "complete helper role count" + }, + { + "name": "truncated_helper_width", + "reason": "whole-helper residual width" + }, + { + "name": "cross_idle_boundary", + "reason": "strict bridge-aware idle window" + } + ], + "input_sha256": { + "C:\\src\\mult\\scratch\\Pattern-Pat-Blocks\\d4-fresh-t16\\global8\\base\\split-centres\\GLOBAL-TEMPLATE.json.gz": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "C:\\src\\mult\\scratch\\Pattern-Pat-Blocks\\d4-fresh-t16\\global8\\base\\work\\complex-nine-native\\DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "C:\\src\\mult\\scratch\\Pattern-Pat-Blocks\\d4-fresh-t16\\global8\\base\\split-centres\\CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "C:\\src\\mult\\scratch\\Pattern-Pat-Blocks\\fullproof-E7G4b1-complete\\local\\CANONICAL-WORD.json.gz": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "C:\\src\\mult\\scratch\\Pattern-Pat-Blocks\\fullproof-E7G4b1-complete\\local\\INDEPENDENT-LOCAL-REPLAY.json": "0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2", + "C:\\src\\mult\\scratch\\Pattern-Pat-Blocks\\gauge44-ends7-x54-t16-E7G4d4\\data\\OWNERS.json.gz": "df373980c60cee79cd8267048b427bca72716930e33177b22c83d5f06a9062a3" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/INTERMEDIATE-ENDS7-T16-PROVENANCE.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/INTERMEDIATE-ENDS7-T16-PROVENANCE.json new file mode 100644 index 0000000000..ef2a1dc710 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/INTERMEDIATE-ENDS7-T16-PROVENANCE.json @@ -0,0 +1,209 @@ +{ + "status": "PASS_STANDALONE_ENDS7_AND_T16", + "ends7": { + "status": "PASS_RANK7_ENDS_ON_CHECKED_SLOT_BASELINE", + "kappa_decimal": "0.00167112035308811", + "strict": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY 0.00167112035308811 2.131644471682145474597683813538469968243513200038346853821975839017213", + "baseline": "C:\\src\\mult\\scratch\\FastPhases\\vs-sparse-j4", + "steps": [ + { + "step": "ends7", + "exit_code": 0, + "seconds": 0.109 + }, + { + "step": "ends7-controls", + "exit_code": 0, + "seconds": 7.766 + }, + { + "step": "native", + "exit_code": 0, + "seconds": 1.219 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.843 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 6.594 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.515 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 3.875 + }, + { + "step": "audit-local", + "exit_code": 0, + "seconds": 0.906 + }, + { + "step": "leaver-premise", + "exit_code": 0, + "seconds": 0.75 + }, + { + "step": "strict", + "exit_code": 0, + "seconds": 17.141 + } + ] + }, + "t16": { + "status": "PASS_GAUGE44_T16_STRICT_GLOBAL_REPLAY", + "kappa": "1672691689152441/1000000000000000000", + "kappa_decimal": "0.001672691689152441", + "conservative_kappa_decimal": "0.001672691686300935", + "complex_lower": "335098854900124282333/200000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "complex_profile": { + "1": 348654, + "2": 62211, + "3": 61371, + "4": 20448, + "5": 11808, + "6": 1, + "7": 49, + "8": 1153, + "11": 18, + "48": 4867 + }, + "idle_remainder_profile": { + "1": 2190, + "2": 3, + "3": 315, + "6": 1, + "7": 49, + "8": 1, + "11": 18, + "48": 4867 + }, + "complete_invocations": 144, + "roles": 69120, + "prefix_bits": 397, + "charged_prefix_bits": 512, + "physical_row_coefficient": 16469, + "retained_row_coefficient": 20161, + "actual_73_axis_charts": 9857, + "controls": { + "admission": 69, + "bit_supplier": 12, + "independent_t16": 6, + "controller_mutations": 15 + }, + "t8_kappa": "167112035308811/100000000000000000", + "spec_sha256": "8f6658e867d073c608d32cc212d342d086b95dbb81bcd34f3ee3187cb1955fb8", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.078, + "exit_code": 0, + "log_sha256": "3aea2a4b68e7aaeadd9ffef649be0d25e2dff1535d9a61bffeaf6d92e55ba6a8" + }, + { + "name": "bind8", + "seconds": 0.297, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "lift16", + "seconds": 2.281, + "exit_code": 0, + "log_sha256": "a57bc25d53d5b618efda030a1e55870a6938238b320aa135f5c0586e9f25a8f8" + }, + { + "name": "bind", + "seconds": 0.344, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "emit", + "seconds": 4.438, + "exit_code": 0, + "log_sha256": "c9776925c076634e57210df15dd23a2ea26d256c228640d08379704844c460f3" + }, + { + "name": "audit", + "seconds": 16.86, + "exit_code": 0, + "log_sha256": "4a20c7816e11e0b586441053c1c45fa90874b676defc2d2554d844ad591d09ef" + }, + { + "name": "invoice", + "seconds": 0.907, + "exit_code": 0, + "log_sha256": "caa1229b78eca961462d35e8ee458be536111111a985294a153e4dd74b9171a8" + }, + { + "name": "assembly", + "seconds": 0.312, + "exit_code": 0, + "log_sha256": "c1349bc0a0e9286889af0e8425d599704b75ca506efd513357bb8fe2f662e916" + }, + { + "name": "admission-controls", + "seconds": 0.391, + "exit_code": 0, + "log_sha256": "34527ddfe1e53bec71dc5759eb9a26417be6d4e93e76cbf80575d9bafebd876b" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.562, + "exit_code": 0, + "log_sha256": "c648542cd6dddbb154af7d02a41aaed1025603d9a4ab54f7c249d2b683e22249" + }, + { + "name": "independent-t16", + "seconds": 0.688, + "exit_code": 0, + "log_sha256": "d2c13b333d463a5c2de42078e9c47a89209075e1d1beac24cf3fc1f573f18c05" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, the gauge44-barch U8 local word and all 72 cold helper ends, and explicit all144 whole-owner dispatch with a two-copy remainder trade are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; This is a new T16 composition of the accepted PR799 and PR589 suppliers. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." + }, + "commands": [ + [ + "C:\\src\\mult\\scratch\\venv\\Scripts\\python.exe", + "-B", + "construction/ends7/verify_ends7.py", + "--main", + "C:/src/mult/repo", + "--pr635", + "C:\\src\\mult\\scratch\\g44r-pr635", + "--baseline", + "C:\\src\\mult\\scratch\\FastPhases\\vs-sparse-j4", + "--work", + "C:\\src\\mult\\scratch\\RankSevenEnds\\G4-standalone-ends7", + "--phase-jobs", + "2" + ], + [ + "C:\\src\\mult\\scratch\\venv\\Scripts\\python.exe", + "-B", + "C:\\src\\mult\\scratch\\RankSevenEnds\\gauge44-ends7-t16-G4\\verify_t16.py", + "--main", + "C:/src/mult/repo", + "--local", + "C:\\src\\mult\\scratch\\RankSevenEnds\\G4-standalone-ends7\\local", + "--work", + "C:\\src\\mult\\scratch\\RankSevenEnds\\G4-standalone-t16" + ] + ], + "live_competitor": { + "pr": 1094, + "head": "0fc329d0", + "kappa": "0.001672660197076918", + "requires_fresh_publication_check": true + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/LOCAL-STAGES.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/LOCAL-STAGES.json new file mode 100644 index 0000000000..23e6036057 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/LOCAL-STAGES.json @@ -0,0 +1,67 @@ +[ + { + "step": "ends7", + "exit_code": 0, + "seconds": 0.125 + }, + { + "step": "ends7-controls", + "exit_code": 0, + "seconds": 8.25 + }, + { + "step": "x54", + "exit_code": 0, + "seconds": 0.265 + }, + { + "step": "x54-controls", + "exit_code": 0, + "seconds": 5.609 + }, + { + "step": "native", + "exit_code": 0, + "seconds": 1.532 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 1.063 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 7.406 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.641 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 4.203 + }, + { + "step": "audit-local", + "exit_code": 0, + "seconds": 0.953 + }, + { + "step": "leaver-premise", + "exit_code": 0, + "seconds": 0.781 + }, + { + "step": "strict", + "exit_code": 0, + "seconds": 18.828 + }, + { + "step": "strict-t16", + "exit_code": 0, + "seconds": 34.391 + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/REPLAY.json new file mode 100644 index 0000000000..087f35df23 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/REPLAY.json @@ -0,0 +1,108 @@ +{ + "status": "PASS_GAUGE44_T16_STRICT_GLOBAL_REPLAY", + "kappa": "66920213783953/40000000000000000", + "kappa_decimal": "0.001673005344598825", + "conservative_kappa_decimal": "0.001673005341746756", + "complex_lower": "335161796396441728937/200000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "complex_profile": { + "1": 348675, + "2": 62208, + "3": 61704, + "4": 19872, + "5": 12096, + "7": 3, + "8": 1152, + "48": 4875 + }, + "idle_remainder_profile": { + "1": 2211, + "3": 360, + "7": 3, + "48": 4875 + }, + "complete_invocations": 144, + "roles": 69120, + "prefix_bits": 397, + "charged_prefix_bits": 512, + "physical_row_coefficient": 16469, + "retained_row_coefficient": 20161, + "actual_73_axis_charts": 10174, + "controls": { + "admission": 69, + "bit_supplier": 12, + "independent_t16": 6, + "controller_mutations": 15 + }, + "t8_kappa": "417790012922271/250000000000000000", + "spec_sha256": "c646151781c761401e498343675139a4a5483a81256772f702d0ea67923dbd35", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.157, + "exit_code": 0, + "log_sha256": "3aea2a4b68e7aaeadd9ffef649be0d25e2dff1535d9a61bffeaf6d92e55ba6a8" + }, + { + "name": "bind8", + "seconds": 0.343, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "lift16", + "seconds": 2.375, + "exit_code": 0, + "log_sha256": "4556b16c91d743f0df482632d89d7f1733f5201bab8baee627f4ddd0df81c748" + }, + { + "name": "bind", + "seconds": 0.39, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "emit", + "seconds": 4.86, + "exit_code": 0, + "log_sha256": "81d823fc5d2e210e3820ea9e3cce43ffcf3bc431184af5d58bd843c0b73accd1" + }, + { + "name": "audit", + "seconds": 21.484, + "exit_code": 0, + "log_sha256": "691d1f1c8f401407ac2c0ffdb4850f20005563dfaf172cd655b1d2005453a523" + }, + { + "name": "invoice", + "seconds": 1.0, + "exit_code": 0, + "log_sha256": "1dc7b287373e03726149adfe00de84fb53bf9c93a4bd4c979e7b9fc3b8dad543" + }, + { + "name": "assembly", + "seconds": 0.297, + "exit_code": 0, + "log_sha256": "a79a81105248c88c93972b1ae046b45308411ee166667a2251f663acf73315a3" + }, + { + "name": "admission-controls", + "seconds": 0.375, + "exit_code": 0, + "log_sha256": "34527ddfe1e53bec71dc5759eb9a26417be6d4e93e76cbf80575d9bafebd876b" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.516, + "exit_code": 0, + "log_sha256": "c648542cd6dddbb154af7d02a41aaed1025603d9a4ab54f7c249d2b683e22249" + }, + { + "name": "independent-t16", + "seconds": 0.765, + "exit_code": 0, + "log_sha256": "d2c13b333d463a5c2de42078e9c47a89209075e1d1beac24cf3fc1f573f18c05" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, the gauge44-barch U8 local word and all 72 cold helper ends, and explicit all144 whole-owner dispatch with a two-copy remainder trade are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; This is a new T16 composition of the accepted PR799 and PR589 suppliers. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/STAGES.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/STAGES.json new file mode 100644 index 0000000000..ad091c857d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/STAGES.json @@ -0,0 +1,68 @@ +[ + { + "name": "restore-parent", + "seconds": 1.157, + "exit_code": 0, + "log_sha256": "3aea2a4b68e7aaeadd9ffef649be0d25e2dff1535d9a61bffeaf6d92e55ba6a8" + }, + { + "name": "bind8", + "seconds": 0.343, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "lift16", + "seconds": 2.375, + "exit_code": 0, + "log_sha256": "4556b16c91d743f0df482632d89d7f1733f5201bab8baee627f4ddd0df81c748" + }, + { + "name": "bind", + "seconds": 0.39, + "exit_code": 0, + "log_sha256": "78a081673d6b4fde10a86e6f767d53648b868d1f0cac2441d12951434ad7341b" + }, + { + "name": "emit", + "seconds": 4.86, + "exit_code": 0, + "log_sha256": "81d823fc5d2e210e3820ea9e3cce43ffcf3bc431184af5d58bd843c0b73accd1" + }, + { + "name": "audit", + "seconds": 21.484, + "exit_code": 0, + "log_sha256": "691d1f1c8f401407ac2c0ffdb4850f20005563dfaf172cd655b1d2005453a523" + }, + { + "name": "invoice", + "seconds": 1.0, + "exit_code": 0, + "log_sha256": "1dc7b287373e03726149adfe00de84fb53bf9c93a4bd4c979e7b9fc3b8dad543" + }, + { + "name": "assembly", + "seconds": 0.297, + "exit_code": 0, + "log_sha256": "a79a81105248c88c93972b1ae046b45308411ee166667a2251f663acf73315a3" + }, + { + "name": "admission-controls", + "seconds": 0.375, + "exit_code": 0, + "log_sha256": "34527ddfe1e53bec71dc5759eb9a26417be6d4e93e76cbf80575d9bafebd876b" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.516, + "exit_code": 0, + "log_sha256": "c648542cd6dddbb154af7d02a41aaed1025603d9a4ab54f7c249d2b683e22249" + }, + { + "name": "independent-t16", + "seconds": 0.765, + "exit_code": 0, + "log_sha256": "d2c13b333d463a5c2de42078e9c47a89209075e1d1beac24cf3fc1f573f18c05" + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/ASYNC-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/ASYNC-AUDIT.json new file mode 100644 index 0000000000..0617aaca01 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/ASYNC-AUDIT.json @@ -0,0 +1,75 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS", + "template_sha256": "0257cbd538460ab8318ea95c1f3c3ec3d4052d8ba682e2cabf99d6a968d0a6e9", + "complex_template_sha256": "0257cbd538460ab8318ea95c1f3c3ec3d4052d8ba682e2cabf99d6a968d0a6e9", + "complex_live": 14336, + "complex_profile": { + "1": 348675, + "2": 62208, + "3": 61704, + "4": 19872, + "5": 12096, + "7": 3, + "8": 1152, + "48": 4875 + }, + "complex_hosted_residuals": 69120, + "physical": 14826, + "rank_mass": 1041408, + "deficit": 5120, + "entering_helper_roles": 34560, + "cross_replica_helper_roles": 58595, + "one_owner_per_complete_invocation": true, + "helper_busy_family_window_checks": 69120, + "complete_invocations": 144, + "actual_orthogonal_73column_maps": 10174, + "actual_sigma_stream_sha256": "b5865f95e3f6714ff8cefea2a38101864cc7d513b6b29348f8577651e7815e79", + "all_actual_residual_and_spectator_charts": true, + "idle_remainders": 7449, + "mutations_rejected": [ + "alias two whole owners", + "helper on active data family", + "owner in private namespace", + "wrong residual width", + "wrong spectator coordinate", + "omit idle remainder", + "understate physical reserve", + "gauge44: wrong provider at its invocation", + "gauge44: stale per-call local program hash", + "gauge44: stale serialized provider program", + "gauge44: unbound residual adapter hash", + "gauge44: wrong provider width registry", + "gauge44: wrong per-call residual width", + "gauge44: wrong sweep provider", + "gauge44: entering helper width silently restored to nine" + ], + "mutation_controls_run": true, + "provider_phase_semantic_sha256": { + "gauge44": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "LOCAL-PROGRAMS.json.gz": "b816de3bb80954991de5af1d736061d6efd6e49008c345b2e47075df1fcf38af", + "LOCAL-CHECKS.json": "6311e6d36e83c34822173fa53aa3b89bba78f0104d487f9d1521bb32d9e0d359", + "INDEPENDENT-LOCAL-REPLAY.json": "b150e709dd3a77978ee32797af7cb5b69e59b8fc0514ac97b42f1e041d918870", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + }, + "widths_by_provider": { + "gauge44": { + "4": 56, + "5": 32, + "7": 32, + "8": 120, + "9": 240 + } + }, + "provider_counts": { + "gauge44": 144 + }, + "all_provider_program_phase_and_wrapper_bindings": true, + "scope": "Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/GLOBAL-PREFIX.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/GLOBAL-PREFIX.json new file mode 100644 index 0000000000..98b45c375e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/GLOBAL-PREFIX.json @@ -0,0 +1,13 @@ +{ + "status": "PASS_MIXED_ASYNC_GLOBAL_PREFIX", + "template_sha256": "0257cbd538460ab8318ea95c1f3c3ec3d4052d8ba682e2cabf99d6a968d0a6e9", + "global_prefix_bits": 397, + "retained_payload_bits": 512, + "complete_invocation_cover_sweeps": 144, + "bridge_factor_two_sweeps": 144, + "local_scalar_coefficient_work_prefix_bits": 68, + "stream_input_sup_to_l2_bits": 37, + "primitive_arithmetic_margin_bits": 4, + "controller_audit_sha256": "a63a9378f1d3c901317334822ac8e286ef29ebcf50337cf6386214b9b5e651b8", + "proof": "Each selected normalized provider restores all arbitrary dirty helper columns and gives the same data shear endpoints. Actual whole-owner charts are right-translation bijections. Sum all 144 invocation and 144 bridge sweeps and take maximum local scalar/Horner prefix over all three providers and orientations. Idle children, phases, spectator endpoints and terminal translations are unitary. Retained all-size interfaces are conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/IDLE-REMAINDER-FRAMES.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/IDLE-REMAINDER-FRAMES.json new file mode 100644 index 0000000000..26b9293109 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/IDLE-REMAINDER-FRAMES.json @@ -0,0 +1,14 @@ +{ + "status": "PASS_LITERAL_IDLE_REMAINDER_FRAMES", + "template_sha256": "0257cbd538460ab8318ea95c1f3c3ec3d4052d8ba682e2cabf99d6a968d0a6e9", + "uncompressed_frames_sha256": "7deb9de1d6cb68d7d570d7b5e738f2289444385204f1c1bbbf48d8d400f52043", + "children": 7449, + "rank_profile": { + "1": 2211, + "3": 360, + "7": 3, + "48": 4875 + }, + "source_data_phase_sha256": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "scope": "Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/OWNERS-AND-PROFILE.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/OWNERS-AND-PROFILE.json new file mode 100644 index 0000000000..4957e22db7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/OWNERS-AND-PROFILE.json @@ -0,0 +1,52 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE", + "template_sha256": "0257cbd538460ab8318ea95c1f3c3ec3d4052d8ba682e2cabf99d6a968d0a6e9", + "paid_profile": { + "1": 348675, + "2": 62208, + "3": 61704, + "4": 19872, + "5": 12096, + "7": 3, + "8": 1152, + "48": 4875 + }, + "live": 14336, + "physical": 14826, + "rank_mass": 1041408, + "deficit": 5120, + "hosted_residuals": 69120, + "banked_residuals": 0, + "all_live_owners_per_call_distinct": true, + "owners_per_call": 704, + "actual_helper_owner_charts": 69120, + "actual_73column_sigmas": 10174, + "cross_replica_helper_roles": 58595, + "explicit_idle_remainder_children": 7449, + "source_idle_children_charged": 32256, + "source_artifacts": { + "work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "providers/gauge44/CANONICAL-WORD.json.gz": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "providers/gauge44/LOCAL-PROGRAMS.json.gz": "94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac", + "providers/gauge44/LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2", + "providers/gauge44/RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108", + "providers/gauge44/CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "providers/gauge44/CLIFFORD-REVIEW.json": "1f71895a8511e536684feac71ab250941634cdfb59141ac0b831c358c021ef7f" + }, + "provider_phase_semantic_sha256": { + "gauge44": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "LOCAL-PROGRAMS.json.gz": "b816de3bb80954991de5af1d736061d6efd6e49008c345b2e47075df1fcf38af", + "LOCAL-CHECKS.json": "6311e6d36e83c34822173fa53aa3b89bba78f0104d487f9d1521bb32d9e0d359", + "INDEPENDENT-LOCAL-REPLAY.json": "b150e709dd3a77978ee32797af7cb5b69e59b8fc0514ac97b42f1e041d918870", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + }, + "controller_audit_sha256": "a63a9378f1d3c901317334822ac8e286ef29ebcf50337cf6386214b9b5e651b8" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/PREFIX-AND-INVOICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/PREFIX-AND-INVOICE.json new file mode 100644 index 0000000000..be9658be1d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/audit/PREFIX-AND-INVOICE.json @@ -0,0 +1,2814 @@ +{ + "status": "PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE", + "template_sha256": "0257cbd538460ab8318ea95c1f3c3ec3d4052d8ba682e2cabf99d6a968d0a6e9", + "parent_template_sha256": "8904bbbf46dfbf1c6df0e43479a23913fc59a410e879188112e88f16c850ede8", + "owner_audit_sha256": "1fa9c9acbd54f9bec183a070f99eb9803395d35e847ab6e37d2489b2d41d2e40", + "controller_audit_sha256": "a63a9378f1d3c901317334822ac8e286ef29ebcf50337cf6386214b9b5e651b8", + "providers": { + "gauge44": { + "local": { + "backward": { + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98373, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "prefix_l1": "2765345371136269591/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98341, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 208, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 32, + "8": 120, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387088, + "local_primitive_bound": 10038870452398, + "compiler": 25934336, + "children": 3494, + "artifacts": { + "CANONICAL-WORD.json.gz": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "1f71895a8511e536684feac71ab250941634cdfb59141ac0b831c358c021ef7f", + "FULL-WORD.json.gz": "34d708aa590b16b54094fbaaa804fe2ea00690e0d863525c85db7b0213861c4b", + "INDEPENDENT-LOCAL-REPLAY.json": "0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2", + "LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "LOCAL-PROGRAMS.json.gz": "94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac", + "RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108", + "SCALAR-FRAME-AUDIT.json": "512a8d52cf28fd249eceb4557428327430e81b2b236ca2b60812b5ba5a544513", + "WRAPPER-CHECKS.json": "4b5ebb62b23dae93fc1fe9174c8145654a8452f4b07645c285aa41c961adb1a3" + }, + "paid_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "program_hashes": { + "backward": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "forward": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "LOCAL-PROGRAMS.json.gz": "b816de3bb80954991de5af1d736061d6efd6e49008c345b2e47075df1fcf38af", + "LOCAL-CHECKS.json": "6311e6d36e83c34822173fa53aa3b89bba78f0104d487f9d1521bb32d9e0d359", + "INDEPENDENT-LOCAL-REPLAY.json": "b150e709dd3a77978ee32797af7cb5b69e59b8fc0514ac97b42f1e041d918870", + "CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "CLIFFORD-REVIEW.json": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639", + "RESIDUAL-ADAPTERS.json": "4f75b7c44ced1de95b396af9e6beaa9e695e8abe6263c88386a19684fd2a9568" + } + } + }, + "provider_phase_semantic_sha256": { + "gauge44": "f732ced03ca2b617eac857a23824b537071517ddb26bba2e21f4aef283fc8639" + }, + "provider_counts": { + "gauge44": 144 + }, + "selected_calls": [ + { + "stage": 0, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198830, + "coefficient_work_primitive_count": 98373, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "macros": 19695, + "real_component_primitives": 198782, + "coefficient_work_primitive_count": 98341, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + } + ], + "selected_local_paid_profile": { + "1": 346464, + "2": 62208, + "3": 61344, + "4": 19872, + "5": 12096, + "8": 1152 + }, + "selected_real_component_primitives": 28627680, + "selected_coefficient_work_primitive_count": 14163152, + "selected_scalar_macros": 2836080, + "global_prefix_bits": 397, + "charged_prefix_bits": 512, + "complete_invocation_sweeps": 144, + "bridge_sweeps": 144, + "row_prefix_extra": 1024, + "helpers": 480, + "centres": 8, + "live": 14336, + "physical": 14826, + "physical_stock_identity": { + "data_and_owner_families": 14336, + "local_helpers": 480, + "private_centres": 8, + "coefficient_work": 2 + }, + "local_adapters": 387088, + "local_primitive_bound": 10038870452398, + "wrapper_elementary_factors_charged": 9953280, + "factors_per_wrapper": 144, + "compiler": 25934336, + "unhosted_pervertex": 3589078516137168, + "hosted_rebased_pervertex": 3589078515536856, + "conservative_pervertex_used": 6467025505861736, + "retained_prior_overcharge": { + "sha256": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "previous_pervertex_allowance": 2877946989724568, + "added_complete_new_pervertex": 3589078516137168, + "policy": "Retain old allowance and add entire fresh mixed recount." + }, + "finite": { + "physical_stock_bits": 2642, + "router_bits": 7988, + "literal_bits": 35284, + "physical_row_coefficient": 16469, + "retained_row_coefficient": 20161, + "required_C0_bits": 200012, + "halving_integer_inequality": [ + 5329, + 4608 + ], + "G_exponent": 30000, + "E_exponent": 100000, + "C0_exponent": 210000 + }, + "strict_checks": { + "local_primitive_bound": true, + "logical": true, + "router": true, + "literal": true, + "mass": true, + "precision": true, + "tape": true, + "row": true, + "halving": true + }, + "scope": "Actual call-specific mixed scalar, Horner, wrappers and paid children recounted. All three providers use fresh hash-bound independent all-column/frame/phase/normalization admission. Shared compiler uses conservative maxima; parent is geometry/overcharge only. All-size compiler, hosting, precision/tape and analytic transfer remain conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/ACTUAL-SIGMAS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/ACTUAL-SIGMAS.json.gz new file mode 100644 index 0000000000..b744408ed9 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/ACTUAL-SIGMAS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/GLOBAL-TEMPLATE.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/GLOBAL-TEMPLATE.json.gz new file mode 100644 index 0000000000..03ebd051b7 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/GLOBAL-TEMPLATE.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/HOSTED.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/HOSTED.json new file mode 100644 index 0000000000..2641e7f26b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/HOSTED.json @@ -0,0 +1,51 @@ +{ + "status": "EMITTED_MIXED_PROVIDER_ASYNCHRONOUS_WHOLE_OWNER_COMPLEX_TEMPLATE", + "template_sha256": "0257cbd538460ab8318ea95c1f3c3ec3d4052d8ba682e2cabf99d6a968d0a6e9", + "parent_template_sha256": "8904bbbf46dfbf1c6df0e43479a23913fc59a410e879188112e88f16c850ede8", + "live": 14336, + "physical": 14826, + "global_profile": { + "1": 348675, + "2": 62208, + "3": 61704, + "4": 19872, + "5": 12096, + "7": 3, + "8": 1152, + "48": 4875 + }, + "rank_mass": 1041408, + "deficit": 5120, + "maxchild": 48, + "hosted_residuals": 69120, + "banks_per_stage": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "entering_helper_roles": 34560, + "unique_actual_73column_sigmas": 10174, + "sigma_stream_sha256": "b5865f95e3f6714ff8cefea2a38101864cc7d513b6b29348f8577651e7815e79", + "cross_replica_helper_roles": 58595, + "asynchronous_order_sha256": "9b2106c84aed23a7c3c8b99e21d3e96c66b12f92980a42ab2f6dbbe7831ef7c4", + "source_artifacts": { + "work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "providers/gauge44/CANONICAL-WORD.json.gz": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "providers/gauge44/LOCAL-PROGRAMS.json.gz": "94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac", + "providers/gauge44/LOCAL-CHECKS.json": "b6323c10323a6824023e8aece48b07ab288fa5223c4ff02ea0ba961d318d678b", + "providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "0c92ab35f543e8f92bbe90904b5c4154250e473b5c09eec3219a340e2b031bf2", + "providers/gauge44/RESIDUAL-ADAPTERS.json": "05e0f111f7dfe3002bf9e5b94c5ed56f59c29c3bfbdf6054712224550dc5f108", + "providers/gauge44/CLIFFORD-RECIPES.json": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "providers/gauge44/CLIFFORD-REVIEW.json": "1f71895a8511e536684feac71ab250941634cdfb59141ac0b831c358c021ef7f" + }, + "provider_counts": { + "gauge44": 144 + }, + "scope": "Two actual verified plain/width-seven providers dispatched per complete invocation; independent controller/spectator/normalization and complete finite invoice admission required." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/IDLE-REMAINDER-FRAMES.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/IDLE-REMAINDER-FRAMES.json.gz new file mode 100644 index 0000000000..9762119a03 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/global/IDLE-REMAINDER-FRAMES.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/layers/LOCAL-AUDIT-LAYERED.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/layers/LOCAL-AUDIT-LAYERED.json new file mode 100644 index 0000000000..0780787674 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/layers/LOCAL-AUDIT-LAYERED.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "db2c7cfb3f8eee2b76c2e0154fc530520fb4d90cd9511a002cab527b16033b83", + "compressed_sha256": "3b268a3adb543e930454e9d9405e5f7a664c75c487f6c5cbe29c199f24a89789", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 480, + "entering": 192, + "lowends": 78, + "coldends": 48, + "compensation_gates": 7208, + "local_profile": { + "1": 2412, + "2": 418, + "3": 418, + "4": 170, + "5": 68, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + }, + "checked_columns": 704, + "elapsed_seconds": 0.8600000000005821, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/leaver/CELL-MUTANTS-LV.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/leaver/CELL-MUTANTS-LV.json new file mode 100644 index 0000000000..4d4ef7403c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/leaver/CELL-MUTANTS-LV.json @@ -0,0 +1,261 @@ +{ + "c01m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_233": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [233])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [172, 175])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [132, 135, 173, 174])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_233": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [233])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c01p": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_57": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [57, 58, 224, 225, 226])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [169, 170])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [129, 130, 168, 171])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_57": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [57, 58, 224, 225, 226])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c23m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_58": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [58])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [169, 170])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [173, 174, 196, 199])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_58": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [58])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c23p": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_239": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [60, 63, 231, 232, 238, 239])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [172, 175])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [168, 171, 193, 194])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_239": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [60, 63, 231, 232, 238, 239])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c45m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_441": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [52, 55, 439, 440, 446, 447])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [137, 138])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [141, 142, 164, 167])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_441": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [52, 55, 439, 440, 446, 447])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c45p": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_255": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [28, 31, 247, 248, 254, 255])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [140, 143])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [136, 139, 161, 162])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_255": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [28, 31, 247, 248, 254, 255])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + }, + "c67m": { + "base": { + "audit_local": "PASS", + "native": "PASS" + }, + "window": [ + 611, + 631 + ], + "mutants": { + "M1_drop_leaver_restore_18": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [18])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M2_flip_yy_B623": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [129, 130])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M3_delete_xy_B611": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [133, 134, 161, 162])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M4_target_reads_entering_h448": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + }, + "M5_wrong_leaver_restore_18": { + "audit_local": "RuntimeError: all-column endpoint failure (False, [18])", + "native": "AssertionError: ('arbitrary-dirt endpoint', False)" + }, + "M6_unrelabelled_dirty_yy_source": { + "audit_local": "RuntimeError: nonzero entrance response", + "native": "AssertionError: zero-frame compensation reads an entering helper" + } + }, + "all_rejected_both": true + } +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/leaver/FRAME-CONTROLS-LV-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/leaver/FRAME-CONTROLS-LV-k8.json new file mode 100644 index 0000000000..9f56e21000 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/leaver/FRAME-CONTROLS-LV-k8.json @@ -0,0 +1,54 @@ +{ + "base": "c836d892", + "recipe": "FRAME-RECIPE-LV-k8.json", + "controls": { + "shrink_raised_B": { + "builder": "profile and width pins", + "stage": "native_atc", + "native": "PASS", + "rc": 0, + "reason": "}", + "frame": [ + "B", + 539 + ] + }, + "shrink_lowered_B": { + "builder": "('nonmonotone', 174)", + "stage": "apply", + "reason": "('nonmonotone', 174)" + }, + "shrink_T": { + "builder": "('nonmonotone', 554)", + "stage": "apply", + "reason": "('nonmonotone', 554)" + }, + "empty_B": { + "builder": "('nonmonotone', 169)", + "stage": "apply", + "reason": "('nonmonotone', 169)" + }, + "drop_one_lowering": { + "builder": "output word pin", + "stage": "native_atc", + "native": "PASS", + "rc": 0, + "reason": "}", + "frame": [ + "B", + 1232 + ] + }, + "drop_one_raise": { + "builder": "profile and width pins", + "stage": "native_atc", + "native": "PASS", + "rc": 0, + "reason": "}", + "frame": [ + "B", + 539 + ] + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CANONICAL-WORD.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CANONICAL-WORD.json.gz new file mode 100644 index 0000000000..3de220fb82 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CANONICAL-WORD.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CLIFFORD-RECIPES.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CLIFFORD-RECIPES.json new file mode 100644 index 0000000000..34cd616fb6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CLIFFORD-RECIPES.json @@ -0,0 +1 @@ +{"children":[{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":2,"old":0,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":3,"old":0,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":4,"old":0,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":5,"old":0,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":6,"old":0,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":7,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":8,"old":0,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":9,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":10,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":11,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,3,3,3,2],"matrix_rows":[493,257,2,260,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[237,0,237,237,0,237,237,237,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":12,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":13,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,3,3,3,2],"matrix_rows":[499,257,258,4,8,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[243,243,0,0,243,243,243,243,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":14,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,2,0,0,0],"matrix_rows":[56,1,2,4,40,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":15,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":16,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,3,3,2],"matrix_rows":[478,1,258,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,222,222,222,222,0,222,222,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":20,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,1,0,2,3,3,2],"matrix_rows":[13,448,33,2,36,40,16,320,384],"offset":2,"phase":1,"quadratic_rows":[45,0,45,45,0,13,192,192,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,35,66,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":27,"old":0,"rank":2,"right":{"linear_Z4":[1,3,0,0,3,2,3,3,2],"matrix_rows":[13,478,33,258,292,296,272,320,384],"offset":2,"phase":1,"quadratic_rows":[45,222,243,243,222,13,222,222,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":38,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":39,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":40,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,3,3,0,2],"matrix_rows":[381,257,2,260,264,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[125,0,125,125,125,125,125,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":41,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,3,3,2,0],"matrix_rows":[253,129,2,132,136,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[125,0,125,125,125,125,125,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":42,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":43,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":44,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":45,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":49,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,1,3,2,3,0,2],"matrix_rows":[13,336,33,2,36,40,272,320,128],"offset":2,"phase":1,"quadratic_rows":[45,0,45,45,80,13,80,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,64,3,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":56,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,2,0,2,0,0,0],"matrix_rows":[264,13,289,2,292,40,16,64,128],"offset":0,"phase":0,"quadratic_rows":[301,0,301,293,0,13,0,0,13]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":67,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":68,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":69,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":70,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,3,0,3,2],"matrix_rows":[445,257,2,260,264,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[189,0,189,189,189,189,0,189,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":71,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,2,0,0],"matrix_rows":[104,1,2,4,72,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":72,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,0,3,3,2],"matrix_rows":[475,257,258,4,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[219,219,0,219,219,0,219,219,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":73,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,3,3,3,3,2],"matrix_rows":[502,1,258,260,8,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,246,246,0,246,246,246,246,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":74,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,2,32,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":78,"old":0,"rank":2,"right":{"linear_Z4":[2,3,3,2,0,2,0,0,0],"matrix_rows":[43,5,33,42,12,16,64,128,256],"offset":3,"phase":2,"quadratic_rows":[14,3,13,5,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,35,64,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":85,"old":0,"rank":2,"right":{"linear_Z4":[1,0,1,2,0,2,0,0,0],"matrix_rows":[72,13,97,2,100,40,16,128,256],"offset":0,"phase":0,"quadratic_rows":[109,0,109,101,0,13,13,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":96,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":97,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,3,0,3,2],"matrix_rows":[439,257,258,260,8,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[183,183,183,0,183,183,0,183,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":98,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":99,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":100,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,3,3,2],"matrix_rows":[463,257,258,260,264,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[207,207,207,207,0,0,207,207,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":101,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":102,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,2,0,0],"matrix_rows":[98,1,66,4,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":103,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,3,3,3,3,2],"matrix_rows":[508,1,2,260,264,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,252,252,252,252,252,252,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":125,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,3,3,0,2],"matrix_rows":[375,257,258,260,8,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[119,119,119,0,119,119,119,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":126,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":127,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,3,3,2,0],"matrix_rows":[247,129,130,132,8,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[119,119,119,0,119,119,119,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":128,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":129,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":130,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":131,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":132,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,16,32,66,3,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":143,"old":0,"rank":2,"right":{"linear_Z4":[1,2,0,0,1,2,0,0,0],"matrix_rows":[130,19,161,34,4,8,176,64,256],"offset":0,"phase":0,"quadratic_rows":[179,177,0,0,179,19,0,19,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":154,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,3,3,3,2],"matrix_rows":[487,257,258,260,8,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[231,231,231,0,0,231,231,231,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":155,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,2,0,0],"matrix_rows":[84,1,2,68,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":156,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":157,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,3,3,3,3,2],"matrix_rows":[505,257,2,4,264,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[249,0,0,249,249,249,249,249,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":158,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":159,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":160,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":161,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,2,0,0,0],"matrix_rows":[50,1,34,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,32,70,130,2,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":174,"old":0,"rank":3,"right":{"linear_Z4":[3,3,0,2,3,2,2,3,2],"matrix_rows":[385,24,106,257,98,4,72,48,384],"offset":7,"phase":3,"quadratic_rows":[129,10,0,50,56,24,0,129,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[15,23,35,65,133,6,2,263,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":175,"old":0,"rank":3,"right":{"linear_Z4":[3,3,2,3,0,0,0,3,2],"matrix_rows":[415,391,499,257,258,356,296,336,384],"offset":3,"phase":2,"quadratic_rows":[235,235,376,191,300,415,391,235,116]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[15,21,35,71,129,2,4,263,7],"offset":0,"phase":0,"quadratic_rows":[6,3,5,0,0,0,0,0,0]},"new":176,"old":0,"rank":3,"right":{"linear_Z4":[1,0,0,1,3,1,1,1,0],"matrix_rows":[415,493,491,257,290,324,264,368,384],"offset":1,"phase":1,"quadratic_rows":[153,340,306,153,255,116,114,153,6]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,70,128,4,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":177,"old":0,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,1,1,3,2],"matrix_rows":[385,106,108,257,66,36,104,16,384],"offset":7,"phase":3,"quadratic_rows":[129,42,76,102,0,106,108,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":183,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":184,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":185,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":186,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":187,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,3,0,2],"matrix_rows":[351,257,258,260,264,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[95,95,95,95,95,0,95,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":188,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":189,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,3,2,0],"matrix_rows":[223,129,130,132,136,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[95,95,95,95,95,0,95,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":190,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":201,"old":0,"rank":2,"right":{"linear_Z4":[3,1,1,1,2,0,3,0,2],"matrix_rows":[321,14,257,18,20,24,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,30,30,30,14,0,65,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,18,33,66,129,256,5,2,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":203,"old":0,"rank":3,"right":{"linear_Z4":[2,3,1,3,1,0,2,2,0],"matrix_rows":[21,138,257,65,130,324,136,336,32],"offset":2,"phase":1,"quadratic_rows":[340,10,341,10,341,0,21,0,21]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,18,33,66,129,256,5,4,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":204,"old":0,"rank":3,"right":{"linear_Z4":[2,3,1,3,1,0,2,0,2],"matrix_rows":[21,266,129,65,258,196,264,208,32],"offset":2,"phase":1,"quadratic_rows":[212,10,213,10,213,0,21,21,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[11,23,32,71,128,256,3,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":205,"old":0,"rank":3,"right":{"linear_Z4":[0,3,0,3,0,0,2,1,2],"matrix_rows":[11,395,138,65,450,4,456,16,32],"offset":6,"phase":2,"quadratic_rows":[448,202,0,202,0,0,11,395,129]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":206,"old":0,"rank":3,"right":{"linear_Z4":[1,1,3,1,3,0,2,3,0],"matrix_rows":[11,384,148,65,66,388,72,400,32],"offset":4,"phase":1,"quadratic_rows":[75,75,276,75,276,0,11,384,148]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":212,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":213,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,3,0,3,2],"matrix_rows":[446,1,258,260,264,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,190,190,190,190,190,0,190,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":214,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":215,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":216,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,3,3,3,2],"matrix_rows":[491,257,258,4,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[235,235,0,235,0,235,235,235,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":217,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,2,0,0],"matrix_rows":[88,1,2,4,72,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":218,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":219,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,3,3,3,2],"matrix_rows":[501,257,2,260,8,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[245,0,245,0,245,245,245,245,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":223,"old":0,"rank":2,"right":{"linear_Z4":[0,1,1,1,2,3,0,3,2],"matrix_rows":[14,416,1,18,20,24,288,64,384],"offset":2,"phase":1,"quadratic_rows":[0,30,30,30,14,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":241,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,3,3,0,2],"matrix_rows":[382,1,258,260,264,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,126,126,126,126,126,126,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":242,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":243,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,3,3,2,0],"matrix_rows":[254,1,130,132,136,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,126,126,126,126,126,126,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":244,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":245,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":246,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":247,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":248,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":252,"old":0,"rank":2,"right":{"linear_Z4":[0,1,1,1,2,3,3,2,0],"matrix_rows":[14,224,1,18,20,24,160,192,256],"offset":2,"phase":1,"quadratic_rows":[0,30,30,30,14,96,96,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,35,3,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":259,"old":0,"rank":2,"right":{"linear_Z4":[0,1,1,2,2,0,0,0,0],"matrix_rows":[136,14,1,146,148,24,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,158,158,150,14,0,0,14,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":270,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,3,3,3,2],"matrix_rows":[494,1,258,260,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,238,238,238,0,238,238,238,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":271,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,2,0,0],"matrix_rows":[112,1,2,4,8,80,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":272,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":273,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,0,3,3,2],"matrix_rows":[477,257,2,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[221,0,221,221,221,0,221,221,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":274,"old":0,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":275,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,3,0,3,2],"matrix_rows":[443,257,258,4,264,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[187,187,0,187,187,187,0,187,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":276,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":277,"old":0,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,67,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":281,"old":0,"rank":2,"right":{"linear_Z4":[1,1,0,0,2,2,0,0,0],"matrix_rows":[80,19,97,98,4,8,48,128,256],"offset":0,"phase":0,"quadratic_rows":[115,115,0,0,99,19,19,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":299,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":300,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":301,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":302,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":303,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,3,3,0,2],"matrix_rows":[379,257,258,4,264,272,288,320,128],"offset":1,"phase":1,"quadratic_rows":[123,123,0,123,123,123,123,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":304,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":305,"old":0,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,3,3,2,0],"matrix_rows":[251,129,130,4,136,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[123,123,0,123,123,123,123,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":306,"old":0,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,67,3,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":310,"old":0,"rank":2,"right":{"linear_Z4":[1,1,0,0,2,2,0,0,0],"matrix_rows":[272,19,289,290,4,8,48,64,128],"offset":0,"phase":0,"quadratic_rows":[307,307,0,0,291,19,0,0,19]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":317,"old":0,"rank":2,"right":{"linear_Z4":[1,1,0,3,1,2,3,0,2],"matrix_rows":[19,328,33,34,4,264,48,320,128],"offset":2,"phase":1,"quadratic_rows":[51,51,0,72,51,19,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":328,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":329,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":330,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":331,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":332,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":333,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":334,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,3,0,2],"matrix_rows":[367,257,258,260,264,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[111,111,111,111,0,111,111,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":335,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,3,2,0],"matrix_rows":[239,129,130,132,136,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[111,111,111,111,0,111,111,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,34,64,3,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":339,"old":0,"rank":2,"right":{"linear_Z4":[1,0,2,1,0,2,0,0,0],"matrix_rows":[132,13,161,2,36,168,16,64,256],"offset":0,"phase":0,"quadratic_rows":[173,0,169,173,0,13,0,13,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":346,"old":0,"rank":2,"right":{"linear_Z4":[1,3,1,1,0,2,3,2,0],"matrix_rows":[13,194,33,130,36,40,16,192,256],"offset":2,"phase":1,"quadratic_rows":[45,66,45,45,0,13,66,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,39,64,128,263,3,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":352,"old":0,"rank":3,"right":{"linear_Z4":[0,0,3,0,0,3,2,1,2],"matrix_rows":[38,422,164,1,66,452,8,16,480],"offset":6,"phase":2,"quadratic_rows":[0,448,228,0,0,228,38,422,130]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,128,258,2,5,1],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":353,"old":0,"rank":3,"right":{"linear_Z4":[3,1,1,3,0,1,2,3,0],"matrix_rows":[384,38,137,385,66,68,392,16,96],"offset":4,"phase":1,"quadratic_rows":[265,102,102,265,0,102,38,384,137]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,128,260,3,1,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":354,"old":0,"rank":3,"right":{"linear_Z4":[1,2,3,1,0,3,2,0,2],"matrix_rows":[130,11,292,193,66,260,200,16,288],"offset":4,"phase":1,"quadratic_rows":[203,201,36,203,0,36,11,11,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,128,260,3,4,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":355,"old":0,"rank":3,"right":{"linear_Z4":[1,2,3,1,0,3,2,2,0],"matrix_rows":[258,11,164,321,66,132,328,16,160],"offset":4,"phase":1,"quadratic_rows":[331,329,36,331,0,36,11,0,11]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":357,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":358,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,3,3,3,3,3,2],"matrix_rows":[506,1,258,4,264,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,250,0,250,250,250,250,250,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":359,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,0,3,3,2],"matrix_rows":[471,257,258,260,8,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[215,215,215,0,215,0,215,215,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":360,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,2,0,0],"matrix_rows":[100,1,2,68,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":361,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":362,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,2,0,0,0],"matrix_rows":[49,33,2,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":363,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":364,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,0,3,2],"matrix_rows":[431,257,258,260,264,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[175,175,175,175,0,175,0,175,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,18,33,67,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":368,"old":0,"rank":2,"right":{"linear_Z4":[3,0,3,1,0,2,0,0,3],"matrix_rows":[474,471,289,258,292,40,272,320,384],"offset":2,"phase":1,"quadratic_rows":[247,269,247,506,269,13,269,269,474]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":375,"old":0,"rank":2,"right":{"linear_Z4":[1,3,1,1,0,2,0,3,2],"matrix_rows":[13,386,33,258,36,40,16,64,384],"offset":2,"phase":1,"quadratic_rows":[45,130,45,45,0,13,0,130,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[12,18,37,64,132,1,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":381,"old":0,"rank":3,"right":{"linear_Z4":[1,3,2,0,1,0,2,3,2],"matrix_rows":[36,386,21,97,258,68,8,112,384],"offset":2,"phase":1,"quadratic_rows":[117,130,113,0,117,21,21,130,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[14,23,35,66,4,135,1,263,7],"offset":0,"phase":0,"quadratic_rows":[3,5,6,0,0,0,0,0,0]},"new":382,"old":0,"rank":3,"right":{"linear_Z4":[0,1,0,3,1,1,1,1,0],"matrix_rows":[502,431,499,321,258,276,344,288,384],"offset":2,"phase":1,"quadratic_rows":[284,170,329,255,89,170,92,170,5]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,70,6,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":383,"old":0,"rank":3,"right":{"linear_Z4":[0,3,3,2,2,3,2,3,2],"matrix_rows":[386,40,92,1,258,84,24,96,384],"offset":7,"phase":3,"quadratic_rows":[0,130,12,100,0,104,40,130,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,22,38,67,135,1,5,262,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":384,"old":0,"rank":3,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,1],"matrix_rows":[24,254,407,97,258,260,328,304,384],"offset":5,"phase":2,"quadratic_rows":[503,105,105,422,81,399,407,105,361]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":386,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":387,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,0,2],"matrix_rows":[289,257,2,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":388,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":389,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,3,0,2,0],"matrix_rows":[191,129,130,132,136,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":390,"old":0,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":391,"old":0,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,2,0],"matrix_rows":[161,129,2,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":392,"old":0,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":393,"old":0,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,3,0,0,2],"matrix_rows":[319,257,258,260,264,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,33,64,3,128,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":397,"old":0,"rank":2,"right":{"linear_Z4":[2,0,1,1,0,2,0,0,0],"matrix_rows":[13,257,33,2,292,296,16,64,128],"offset":0,"phase":0,"quadratic_rows":[300,0,301,301,0,13,0,0,13]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,66,1,128,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":404,"old":0,"rank":2,"right":{"linear_Z4":[1,3,1,1,3,2,0,0,2],"matrix_rows":[13,274,33,258,36,40,272,64,128],"offset":2,"phase":1,"quadratic_rows":[45,18,45,45,18,13,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,2,2,2,2,0],"matrix_rows":[1,264,4,10,16,2,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":415,"old":0,"rank":8,"right":{"linear_Z4":[2,1,2,3,2,0,2,2,2],"matrix_rows":[1,40,4,34,16,64,128,256,42],"offset":245,"phase":2,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,2,2,2,2,2,0],"matrix_rows":[258,3,1,4,8,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":416,"old":0,"rank":8,"right":{"linear_Z4":[1,3,0,2,2,2,2,2,2],"matrix_rows":[6,5,8,16,32,64,128,256,7],"offset":252,"phase":2,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,2,2,2,2,0],"matrix_rows":[264,2,4,9,1,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"new":417,"old":0,"rank":8,"right":{"linear_Z4":[1,2,2,3,0,2,2,2,2],"matrix_rows":[24,2,4,17,32,64,128,256,25],"offset":246,"phase":2,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,2,3,2,2,2,0],"matrix_rows":[1,2,272,8,20,4,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"new":418,"old":0,"rank":8,"right":{"linear_Z4":[2,2,1,2,3,0,2,2,2],"matrix_rows":[1,2,48,8,36,64,128,256,52],"offset":235,"phase":2,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,3,2,2,2,0],"matrix_rows":[1,272,4,8,18,32,2,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"new":419,"old":0,"rank":8,"right":{"linear_Z4":[2,1,2,2,3,2,0,2,2],"matrix_rows":[1,80,4,8,66,32,128,256,82],"offset":237,"phase":2,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,3,3,2,2,0],"matrix_rows":[318,3,5,9,17,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"new":420,"old":0,"rank":8,"right":{"linear_Z4":[1,3,3,3,3,3,0,2,2],"matrix_rows":[126,125,123,119,111,95,128,256,127],"offset":192,"phase":2,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,2,3,2,2,0],"matrix_rows":[288,2,4,8,16,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"new":421,"old":0,"rank":8,"right":{"linear_Z4":[1,2,2,2,2,3,0,2,2],"matrix_rows":[96,2,4,8,16,65,128,256,97],"offset":222,"phase":2,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,2,2,2,2,0],"matrix_rows":[1,2,264,12,16,32,4,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":422,"old":0,"rank":8,"right":{"linear_Z4":[2,2,1,3,2,2,0,2,2],"matrix_rows":[1,2,72,68,16,32,128,256,76],"offset":243,"phase":2,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":423,"old":0,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":31,"old":2,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,2,3,3,2],"matrix_rows":[38,448,1,34,36,8,16,320,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,35,3,66,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":32,"old":2,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,1,1,1,2],"matrix_rows":[6,232,9,282,276,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[8,286,278,483,6,488,488,488,238]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,64,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":33,"old":2,"rank":2,"right":{"linear_Z4":[0,1,3,0,0,0,0,0,1],"matrix_rows":[235,461,257,290,36,264,16,320,384],"offset":2,"phase":1,"quadratic_rows":[38,459,493,38,0,461,38,38,294]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":34,"old":2,"rank":2,"right":{"linear_Z4":[0,3,3,3,0,0,3,3,2],"matrix_rows":[6,448,9,26,20,16,32,320,384],"offset":3,"phase":2,"quadratic_rows":[8,30,22,11,6,0,192,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":162,"old":2,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,3,3,3,2],"matrix_rows":[487,257,258,260,8,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[231,231,231,0,0,231,231,231,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":165,"old":2,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":172,"old":2,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":173,"old":2,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":191,"old":2,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":194,"old":2,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":201,"old":2,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":202,"old":2,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":220,"old":2,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":223,"old":2,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":230,"old":2,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,3,3,3,2],"matrix_rows":[491,257,258,4,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[235,235,0,235,0,235,235,235,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":231,"old":2,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":249,"old":2,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":252,"old":2,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":259,"old":2,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":260,"old":2,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":408,"old":2,"rank":2,"right":{"linear_Z4":[3,0,0,0,0,3,0,3,0],"matrix_rows":[384,161,385,2,4,8,16,416,64],"offset":2,"phase":1,"quadratic_rows":[289,0,0,0,0,289,0,384,161]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":409,"old":2,"rank":2,"right":{"linear_Z4":[0,0,3,3,0,0,0,3,0],"matrix_rows":[384,140,1,2,388,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,268,268,0,0,0,384,140]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,129,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":410,"old":2,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[161,268,129,2,260,264,16,160,64],"offset":3,"phase":2,"quadratic_rows":[33,0,12,12,0,33,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,129,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":411,"old":2,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[289,140,257,2,132,136,16,288,64],"offset":3,"phase":2,"quadratic_rows":[33,0,12,12,0,33,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,21,34,69,2,131,4,263,7],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":429,"old":2,"rank":3,"right":{"linear_Z4":[3,2,1,2,0,2,1,3,3],"matrix_rows":[239,229,463,257,278,16,280,352,384],"offset":0,"phase":0,"quadratic_rows":[197,52,199,48,10,330,229,197,288]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,21,37,66,2,135,1,263,7],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":430,"old":2,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,3,1,3,3],"matrix_rows":[494,233,239,321,282,276,16,288,384],"offset":0,"phase":0,"quadratic_rows":[326,25,17,234,6,232,233,232,257]}},{"left":{"linear_Z4":[3,2,2,3,0,0,0,0,0],"matrix_rows":[24,34,68,134,256,2,4,9,1],"offset":0,"phase":0,"quadratic_rows":[9,4,2,9,0,0,0,0,0]},"new":431,"old":2,"rank":4,"right":{"linear_Z4":[1,3,3,2,0,1,1,3,0],"matrix_rows":[384,106,108,257,385,34,68,104,16],"offset":6,"phase":2,"quadratic_rows":[129,74,44,102,0,108,106,129,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,130,3,264,1,12,4],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":436,"old":2,"rank":4,"right":{"linear_Z4":[1,3,3,3,0,1,2,3,0],"matrix_rows":[1,10,384,288,69,86,16,88,416],"offset":2,"phase":1,"quadratic_rows":[69,94,7,90,10,160,11,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,2,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":546,"old":2,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,2,0,3,2],"matrix_rows":[385,44,257,2,36,40,16,64,384],"offset":3,"phase":2,"quadratic_rows":[129,0,12,12,0,0,0,129,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,35,64,129,2,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":547,"old":2,"rank":2,"right":{"linear_Z4":[1,3,1,0,0,1,3,1,1],"matrix_rows":[237,330,257,66,260,328,16,288,384],"offset":2,"phase":1,"quadratic_rows":[493,266,493,231,0,493,237,493,423]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,34,64,128,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":548,"old":2,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,2,3,2],"matrix_rows":[385,74,257,66,4,72,16,32,384],"offset":3,"phase":2,"quadratic_rows":[129,10,0,10,0,0,0,129,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,35,64,2,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":549,"old":2,"rank":2,"right":{"linear_Z4":[1,1,3,0,0,3,1,1,1],"matrix_rows":[235,300,257,258,36,296,16,320,384],"offset":2,"phase":1,"quadratic_rows":[491,491,268,231,0,235,491,491,455]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":552,"old":2,"rank":2,"right":{"linear_Z4":[3,0,0,0,0,0,3,3,0],"matrix_rows":[384,193,385,2,4,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[321,0,0,0,0,0,321,384,193]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":553,"old":2,"rank":2,"right":{"linear_Z4":[0,3,0,3,0,0,0,3,0],"matrix_rows":[384,138,1,386,4,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,266,0,266,0,0,0,384,138]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,34,64,128,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":554,"old":2,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[193,266,129,258,4,264,16,32,192],"offset":3,"phase":2,"quadratic_rows":[65,10,0,10,0,0,65,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,34,64,128,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":555,"old":2,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[321,138,257,130,4,136,16,32,320],"offset":3,"phase":2,"quadratic_rows":[65,10,0,10,0,0,65,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,33,64,129,2,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":558,"old":2,"rank":2,"right":{"linear_Z4":[1,3,0,1,0,1,3,1,1],"matrix_rows":[237,326,257,66,324,264,16,288,384],"offset":2,"phase":1,"quadratic_rows":[493,262,235,493,0,493,237,493,427]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":559,"old":2,"rank":2,"right":{"linear_Z4":[0,3,3,3,0,3,0,3,2],"matrix_rows":[6,416,9,18,28,16,288,64,384],"offset":3,"phase":2,"quadratic_rows":[8,22,30,13,6,160,0,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":560,"old":2,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,3,2,3,2],"matrix_rows":[70,416,1,66,68,8,16,288,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,33,1,66,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":561,"old":2,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,1,1,1,2],"matrix_rows":[6,238,9,274,284,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[8,504,496,483,6,494,494,494,238]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":564,"old":2,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,0,0,3,0],"matrix_rows":[384,134,1,386,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,262,262,0,0,0,0,384,134]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,64,130,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":565,"old":2,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,3,3,3,0],"matrix_rows":[384,224,1,2,4,8,16,416,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,0,352,352,384,224]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,130,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":566,"old":2,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,3,3,2,2],"matrix_rows":[262,224,1,258,260,8,16,160,192],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,64,130,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":567,"old":2,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,3,3,2,2],"matrix_rows":[134,352,1,130,132,8,16,288,320],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,0,96,96,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":29,"old":3,"rank":2,"right":{"linear_Z4":[1,1,0,2,1,0,2,2,2],"matrix_rows":[216,219,305,290,20,264,32,320,384],"offset":0,"phase":0,"quadratic_rows":[491,507,16,259,278,3,259,259,219]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,1,32,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":30,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,2,0,0,3,3,2],"matrix_rows":[11,448,9,10,4,16,32,320,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,0,3,3,2],"matrix_rows":[3,448,49,34,20,8,32,320,384],"offset":3,"phase":2,"quadratic_rows":[51,35,16,0,21,3,192,192,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,3,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":36,"old":3,"rank":2,"right":{"linear_Z4":[3,2,3,2,3,0,3,3,0],"matrix_rows":[470,267,265,10,260,272,32,320,384],"offset":3,"phase":2,"quadratic_rows":[3,213,214,0,214,0,214,214,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":104,"old":3,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":107,"old":3,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":114,"old":3,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,3,3,2],"matrix_rows":[463,257,258,260,264,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[207,207,207,207,0,0,207,207,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":115,"old":3,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":133,"old":3,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":136,"old":3,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":143,"old":3,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":144,"old":3,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":278,"old":3,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,0,3,3,2],"matrix_rows":[477,257,2,260,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[221,0,221,221,221,0,221,221,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":281,"old":3,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":288,"old":3,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":289,"old":3,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":307,"old":3,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":310,"old":3,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":317,"old":3,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":318,"old":3,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":406,"old":3,"rank":2,"right":{"linear_Z4":[0,0,3,3,0,0,0,3,0],"matrix_rows":[384,140,1,2,388,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,268,268,0,0,0,384,140]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":407,"old":3,"rank":2,"right":{"linear_Z4":[0,3,0,0,3,0,0,3,0],"matrix_rows":[384,146,1,386,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,274,0,0,274,0,0,384,146]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,34,65,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":3,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[274,140,1,258,132,136,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,18,12,12,18,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,34,65,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":413,"old":3,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[146,268,1,130,260,264,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,18,12,12,18,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,19,37,65,134,3,4,261,5],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":424,"old":3,"rank":3,"right":{"linear_Z4":[0,0,2,1,0,0,0,2,3],"matrix_rows":[206,17,471,291,32,260,328,304,384],"offset":2,"phase":1,"quadratic_rows":[228,24,25,398,230,17,17,25,264]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,68,129,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":428,"old":3,"rank":3,"right":{"linear_Z4":[1,0,1,1,1,0,2,3,0],"matrix_rows":[21,384,264,65,2,68,392,80,32],"offset":0,"phase":0,"quadratic_rows":[85,0,85,136,85,0,21,136,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[22,38,67,8,129,1,4,263,7],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":432,"old":3,"rank":4,"right":{"linear_Z4":[2,2,2,2,3,0,3,1,1],"matrix_rows":[468,471,211,8,305,290,324,32,384],"offset":15,"phase":0,"quadratic_rows":[52,36,323,0,465,3,468,464,468]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,34,72,131,257,1,3,12,4],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":437,"old":3,"rank":4,"right":{"linear_Z4":[1,1,1,2,3,0,2,3,0],"matrix_rows":[8,11,384,260,113,98,388,88,32],"offset":0,"phase":0,"quadratic_rows":[123,107,132,83,25,3,11,132,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,67,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":534,"old":3,"rank":2,"right":{"linear_Z4":[3,1,1,1,0,0,3,1,1],"matrix_rows":[337,222,65,258,260,264,336,32,384],"offset":1,"phase":1,"quadratic_rows":[273,478,478,478,207,0,222,478,399]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,32,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":535,"old":3,"rank":2,"right":{"linear_Z4":[3,3,3,0,3,0,0,3,2],"matrix_rows":[3,388,33,50,260,24,32,64,384],"offset":3,"phase":2,"quadratic_rows":[35,51,132,16,26,3,0,132,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,65,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":536,"old":3,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,2,3,2],"matrix_rows":[81,388,65,2,260,8,80,32,384],"offset":3,"phase":2,"quadratic_rows":[17,0,132,0,17,0,0,132,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,35,66,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":537,"old":3,"rank":2,"right":{"linear_Z4":[3,3,2,2,3,0,2,2,1],"matrix_rows":[463,460,289,306,260,280,32,320,384],"offset":3,"phase":2,"quadratic_rows":[239,255,259,275,26,3,259,259,460]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":540,"old":3,"rank":2,"right":{"linear_Z4":[3,0,0,0,3,0,0,3,0],"matrix_rows":[384,145,385,2,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[273,0,0,0,273,0,0,384,145]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":541,"old":3,"rank":2,"right":{"linear_Z4":[0,0,3,0,0,0,3,3,0],"matrix_rows":[384,196,1,2,388,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,324,0,0,0,324,384,196]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":542,"old":3,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,3,2,2],"matrix_rows":[273,196,257,2,132,8,272,32,192],"offset":3,"phase":2,"quadratic_rows":[17,0,68,0,17,0,68,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,65,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":543,"old":3,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,0,3,2,2],"matrix_rows":[145,324,129,2,260,8,144,32,320],"offset":3,"phase":2,"quadratic_rows":[17,0,68,0,17,0,68,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":570,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,3,3,0,0,3,2],"matrix_rows":[3,392,33,50,20,264,32,64,384],"offset":3,"phase":2,"quadratic_rows":[35,51,16,136,22,3,0,136,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,66,128,3,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":571,"old":3,"rank":2,"right":{"linear_Z4":[2,3,3,3,3,0,2,3,0],"matrix_rows":[323,413,65,322,260,264,272,32,384],"offset":3,"phase":2,"quadratic_rows":[158,3,157,157,157,0,0,157,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,64,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":572,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,2,3,2],"matrix_rows":[67,392,65,66,4,264,16,32,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,35,66,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":573,"old":3,"rank":2,"right":{"linear_Z4":[1,1,0,2,1,0,2,2,2],"matrix_rows":[219,216,289,306,20,264,32,320,384],"offset":0,"phase":0,"quadratic_rows":[507,491,16,259,277,3,259,259,219]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":576,"old":3,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,0,3,3,0],"matrix_rows":[384,200,1,2,4,392,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,328,0,0,328,384,200]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":577,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,3,0],"matrix_rows":[384,131,385,386,4,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[259,259,0,0,0,0,0,384,131]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,64,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":578,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[259,200,257,258,4,136,16,32,192],"offset":3,"phase":2,"quadratic_rows":[3,3,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,64,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":579,"old":3,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,0,3,2,2],"matrix_rows":[131,328,129,130,4,264,16,32,320],"offset":3,"phase":2,"quadratic_rows":[3,3,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,2,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":290,"old":4,"rank":2,"right":{"linear_Z4":[0,1,3,2,0,0,0,2,3],"matrix_rows":[219,397,321,338,20,264,32,256,384],"offset":143,"phase":1,"quadratic_rows":[22,395,413,86,397,0,392,86,342]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,35,64,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":291,"old":4,"rank":2,"right":{"linear_Z4":[3,0,1,0,0,2,2,0,1],"matrix_rows":[398,171,353,258,100,264,80,256,384],"offset":2,"phase":1,"quadratic_rows":[459,37,494,37,64,398,21,37,293]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,33,3,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":292,"old":4,"rank":2,"right":{"linear_Z4":[1,3,0,1,2,0,2,1,0],"matrix_rows":[397,278,257,338,84,264,96,256,384],"offset":2,"phase":1,"quadratic_rows":[141,70,203,141,0,64,38,141,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,35,64,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":293,"old":4,"rank":2,"right":{"linear_Z4":[1,0,3,2,0,0,0,2,3],"matrix_rows":[398,235,353,322,36,264,16,256,384],"offset":143,"phase":1,"quadratic_rows":[395,37,430,101,0,398,392,101,357]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,129,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":319,"old":4,"rank":2,"right":{"linear_Z4":[1,1,0,3,3,3,2,0,3],"matrix_rows":[435,264,129,130,4,328,80,96,256],"offset":480,"phase":2,"quadratic_rows":[307,307,0,72,499,499,56,304,435]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,35,65,129,259,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":320,"old":4,"rank":2,"right":{"linear_Z4":[1,1,0,0,3,3,2,0,2],"matrix_rows":[315,136,257,258,4,328,464,480,256],"offset":480,"phase":2,"quadratic_rows":[59,59,0,243,251,251,56,56,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,35,64,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":321,"old":4,"rank":2,"right":{"linear_Z4":[2,2,0,0,0,0,2,0,2],"matrix_rows":[136,264,193,194,4,328,16,32,256],"offset":300,"phase":2,"quadratic_rows":[192,192,0,192,0,0,11,11,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,65,129,257,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":322,"old":4,"rank":2,"right":{"linear_Z4":[3,3,0,3,1,1,2,0,3],"matrix_rows":[315,384,321,322,4,328,400,416,256],"offset":300,"phase":2,"quadratic_rows":[123,123,0,123,187,187,11,304,384]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,17,33,64,129,257,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":348,"old":4,"rank":2,"right":{"linear_Z4":[3,3,1,3,0,1,2,0,3],"matrix_rows":[303,384,321,322,388,328,16,416,256],"offset":300,"phase":2,"quadratic_rows":[111,111,175,111,0,175,11,292,384]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,16,32,64,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":349,"old":4,"rank":2,"right":{"linear_Z4":[2,0,0,2,0,0,2,0,2],"matrix_rows":[130,258,193,322,4,200,16,32,256],"offset":300,"phase":2,"quadratic_rows":[192,192,0,192,0,0,11,11,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,129,258,1,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":350,"old":4,"rank":2,"right":{"linear_Z4":[1,3,3,1,0,3,2,0,3],"matrix_rows":[429,258,129,322,68,136,16,96,256],"offset":408,"phase":2,"quadratic_rows":[301,66,493,301,0,493,38,292,429]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,17,33,64,129,259,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":351,"old":4,"rank":2,"right":{"linear_Z4":[1,0,3,1,0,3,2,0,2],"matrix_rows":[303,130,257,322,452,264,16,480,256],"offset":408,"phase":2,"quadratic_rows":[47,237,239,47,0,239,38,38,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,34,3,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":377,"old":4,"rank":2,"right":{"linear_Z4":[3,3,2,1,2,2,2,3,0],"matrix_rows":[391,348,257,258,84,280,96,256,384],"offset":209,"phase":0,"quadratic_rows":[135,135,139,76,0,64,40,135,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,16,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":378,"old":4,"rank":2,"right":{"linear_Z4":[1,2,0,0,3,0,0,2,3],"matrix_rows":[410,235,353,258,4,328,48,256,384],"offset":167,"phase":1,"quadratic_rows":[395,113,0,49,442,410,386,113,369]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,16,35,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":379,"old":4,"rank":2,"right":{"linear_Z4":[3,0,0,0,1,2,2,0,1],"matrix_rows":[410,171,353,258,68,264,112,256,384],"offset":2,"phase":1,"quadratic_rows":[459,49,64,49,506,410,21,49,305]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,35,2,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":380,"old":4,"rank":2,"right":{"linear_Z4":[1,3,1,2,1,0,1,3,1],"matrix_rows":[219,348,321,258,20,344,32,256,384],"offset":165,"phase":0,"quadratic_rows":[411,475,332,215,219,0,222,475,391]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,67,131,2,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":87,"old":5,"rank":2,"right":{"linear_Z4":[1,1,0,1,2,2,0,2,2],"matrix_rows":[187,184,321,330,12,64,272,288,384],"offset":0,"phase":0,"quadratic_rows":[507,499,8,269,259,259,3,259,187]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":88,"old":5,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,2,0,3,2],"matrix_rows":[35,400,33,34,4,8,272,64,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,66,3,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":5,"rank":2,"right":{"linear_Z4":[2,3,3,3,3,2,0,3,0],"matrix_rows":[291,413,33,290,260,264,272,64,384],"offset":3,"phase":2,"quadratic_rows":[158,3,157,157,157,0,0,157,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,66,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":94,"old":5,"rank":2,"right":{"linear_Z4":[3,3,0,3,3,0,0,3,2],"matrix_rows":[3,400,65,74,12,64,272,32,384],"offset":3,"phase":2,"quadratic_rows":[67,75,8,14,144,0,3,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,35,2,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":118,"old":5,"rank":2,"right":{"linear_Z4":[1,3,1,0,3,1,0,1,1],"matrix_rows":[189,282,257,18,260,280,288,64,384],"offset":2,"phase":1,"quadratic_rows":[445,266,445,183,189,445,0,445,423]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,33,64,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":119,"old":5,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,2,0,3,2],"matrix_rows":[41,388,33,2,260,40,16,64,384],"offset":3,"phase":2,"quadratic_rows":[9,0,132,9,0,0,0,132,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,1,64,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":120,"old":5,"rank":2,"right":{"linear_Z4":[0,3,3,3,2,0,0,3,2],"matrix_rows":[26,388,1,18,260,24,32,64,384],"offset":3,"phase":2,"quadratic_rows":[0,10,132,10,0,0,0,132,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,35,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":121,"old":5,"rank":2,"right":{"linear_Z4":[3,1,1,0,1,3,0,1,1],"matrix_rows":[297,190,33,258,260,296,272,64,384],"offset":1,"phase":1,"quadratic_rows":[265,446,446,183,446,190,0,446,407]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":207,"old":5,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[138,276,1,130,260,136,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,10,20,10,20,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,66,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":208,"old":5,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[266,148,1,258,132,264,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,10,20,10,20,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,3,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":234,"old":5,"rank":2,"right":{"linear_Z4":[3,2,3,3,2,3,0,3,0],"matrix_rows":[430,275,273,18,260,264,288,64,384],"offset":3,"phase":2,"quadratic_rows":[3,173,174,174,0,174,0,174,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,64,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":235,"old":5,"rank":2,"right":{"linear_Z4":[3,3,0,3,0,3,0,3,2],"matrix_rows":[3,416,73,66,12,64,16,288,384],"offset":3,"phase":2,"quadratic_rows":[75,67,8,13,0,160,3,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,1,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":236,"old":5,"rank":2,"right":{"linear_Z4":[3,3,0,0,2,3,0,3,2],"matrix_rows":[19,416,17,18,4,8,288,64,384],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,33,67,131,1,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":237,"old":5,"rank":2,"right":{"linear_Z4":[1,1,0,1,2,2,0,2,2],"matrix_rows":[184,187,329,322,12,64,272,288,384],"offset":0,"phase":0,"quadratic_rows":[499,507,8,270,259,259,3,259,187]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":323,"old":5,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[131,304,129,130,4,8,272,288,64],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":324,"old":5,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[259,176,257,258,4,8,144,160,64],"offset":3,"phase":2,"quadratic_rows":[3,3,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,131,3,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":89,"old":6,"rank":2,"right":{"linear_Z4":[0,3,3,1,1,0,0,1,2],"matrix_rows":[6,184,33,354,324,264,272,64,384],"offset":1,"phase":1,"quadratic_rows":[32,358,326,440,440,411,6,440,190]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,1,34,64,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":90,"old":6,"rank":2,"right":{"linear_Z4":[0,3,3,2,3,0,0,3,2],"matrix_rows":[14,400,1,10,12,272,32,64,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,2,35,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":91,"old":6,"rank":2,"right":{"linear_Z4":[0,1,3,0,0,0,0,0,1],"matrix_rows":[187,437,257,266,12,272,288,64,384],"offset":2,"phase":1,"quadratic_rows":[14,435,445,437,14,14,0,14,270]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,66,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":92,"old":6,"rank":2,"right":{"linear_Z4":[0,3,3,0,3,3,0,3,2],"matrix_rows":[6,400,33,98,68,8,272,64,384],"offset":3,"phase":2,"quadratic_rows":[32,102,70,0,144,35,6,144,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":147,"old":6,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,3,0,3,0],"matrix_rows":[384,162,1,386,4,8,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,290,0,0,0,290,0,384,162]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":148,"old":6,"rank":2,"right":{"linear_Z4":[3,0,0,0,3,0,0,3,0],"matrix_rows":[384,145,385,2,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[273,0,0,0,273,0,0,384,145]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":149,"old":6,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[145,290,129,258,4,8,144,288,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":150,"old":6,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[273,162,257,130,4,8,272,160,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,17,35,67,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":178,"old":6,"rank":2,"right":{"linear_Z4":[2,3,3,2,2,3,0,2,1],"matrix_rows":[415,409,257,322,356,296,272,64,384],"offset":3,"phase":2,"quadratic_rows":[262,223,255,294,262,44,6,262,409]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":179,"old":6,"rank":2,"right":{"linear_Z4":[3,3,3,0,0,3,0,3,2],"matrix_rows":[385,6,257,98,68,8,48,64,384],"offset":3,"phase":2,"quadratic_rows":[129,102,70,0,32,50,6,129,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":263,"old":6,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,0,0,3,0],"matrix_rows":[384,134,1,386,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,262,262,0,0,0,0,384,134]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":264,"old":6,"rank":2,"right":{"linear_Z4":[0,0,0,3,3,0,0,3,0],"matrix_rows":[384,152,1,2,4,392,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,280,280,0,0,384,152]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":265,"old":6,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[262,152,1,258,260,136,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":266,"old":6,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[134,280,1,130,132,264,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,34,66,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":294,"old":6,"rank":2,"right":{"linear_Z4":[0,0,0,1,1,0,0,1,2],"matrix_rows":[6,190,33,322,356,264,272,64,384],"offset":1,"phase":1,"quadratic_rows":[32,504,472,446,446,411,6,446,190]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,1,64,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":295,"old":6,"rank":2,"right":{"linear_Z4":[0,3,3,3,2,0,0,3,2],"matrix_rows":[22,392,1,18,20,264,32,64,384],"offset":3,"phase":2,"quadratic_rows":[0,6,6,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":58,"old":7,"rank":2,"right":{"linear_Z4":[3,0,3,0,0,0,0,3,0],"matrix_rows":[384,133,385,2,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[261,0,261,0,0,0,0,384,133]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":59,"old":7,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,3,0,3,0],"matrix_rows":[384,168,1,2,4,392,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,296,0,296,0,384,168]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":7,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[133,296,129,2,132,264,16,288,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":65,"old":7,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[261,168,257,2,260,136,16,160,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,65,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":116,"old":7,"rank":2,"right":{"linear_Z4":[0,0,3,3,3,3,0,3,2],"matrix_rows":[40,388,1,18,260,88,64,96,384],"offset":3,"phase":2,"quadratic_rows":[0,16,132,120,26,104,40,132,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,35,67,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":117,"old":7,"rank":2,"right":{"linear_Z4":[0,1,1,0,0,0,0,1,2],"matrix_rows":[24,190,33,258,260,360,336,64,384],"offset":1,"phase":1,"quadratic_rows":[32,446,446,454,486,407,24,446,190]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,131,2,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":122,"old":7,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,1,2],"matrix_rows":[189,40,257,18,260,344,64,352,384],"offset":2,"phase":1,"quadratic_rows":[445,16,445,453,423,469,40,445,189]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,65,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":123,"old":7,"rank":2,"right":{"linear_Z4":[0,0,3,3,3,3,0,3,2],"matrix_rows":[24,388,33,2,260,104,80,64,384],"offset":3,"phase":2,"quadratic_rows":[32,0,132,120,88,41,24,132,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,66,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":180,"old":7,"rank":2,"right":{"linear_Z4":[3,0,0,3,3,3,0,3,2],"matrix_rows":[385,24,257,2,36,104,80,64,384],"offset":3,"phase":2,"quadratic_rows":[129,0,32,120,88,44,24,129,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,19,33,65,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":181,"old":7,"rank":2,"right":{"linear_Z4":[2,2,2,3,3,3,0,2,1],"matrix_rows":[415,391,257,290,260,328,368,64,384],"offset":3,"phase":2,"quadratic_rows":[280,312,280,223,255,50,24,280,391]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":261,"old":7,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[134,280,1,130,132,264,272,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,66,128,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":262,"old":7,"rank":2,"right":{"linear_Z4":[0,3,3,3,3,0,0,2,2],"matrix_rows":[262,152,1,258,260,136,144,32,64],"offset":3,"phase":2,"quadratic_rows":[0,6,6,24,24,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":267,"old":7,"rank":2,"right":{"linear_Z4":[0,0,0,3,3,0,0,3,0],"matrix_rows":[384,152,1,2,4,392,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,280,280,0,0,384,152]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":268,"old":7,"rank":2,"right":{"linear_Z4":[0,3,3,0,0,0,0,3,0],"matrix_rows":[384,134,1,386,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,262,262,0,0,0,0,384,134]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,10,16,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":325,"old":7,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,3,0],"matrix_rows":[384,131,385,386,4,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[259,259,0,0,0,0,0,384,131]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,66,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":326,"old":7,"rank":2,"right":{"linear_Z4":[0,0,0,0,3,3,0,3,0],"matrix_rows":[384,176,1,2,4,8,400,416,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,304,304,0,384,176]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":60,"old":8,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[261,168,257,2,260,136,16,160,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":61,"old":8,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,3,0,2,2],"matrix_rows":[133,296,129,2,132,264,16,288,64],"offset":3,"phase":2,"quadratic_rows":[5,0,5,40,0,40,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":62,"old":8,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,3,0,3,0],"matrix_rows":[384,168,1,2,4,392,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,0,0,296,0,296,0,384,168]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,32,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":63,"old":8,"rank":2,"right":{"linear_Z4":[3,0,3,0,0,0,0,3,0],"matrix_rows":[384,133,385,2,388,8,16,32,64],"offset":2,"phase":1,"quadratic_rows":[261,0,261,0,0,0,0,384,133]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":145,"old":8,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[273,162,257,130,4,8,272,160,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":146,"old":8,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,3,0,2,2],"matrix_rows":[145,290,129,258,4,8,144,288,64],"offset":3,"phase":2,"quadratic_rows":[17,34,0,0,17,34,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":151,"old":8,"rank":2,"right":{"linear_Z4":[3,0,0,0,3,0,0,3,0],"matrix_rows":[384,145,385,2,4,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[273,0,0,0,273,0,0,384,145]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,64,130,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":152,"old":8,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,3,0,3,0],"matrix_rows":[384,162,1,386,4,8,16,416,64],"offset":2,"phase":1,"quadratic_rows":[0,290,0,0,0,290,0,384,162]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,34,64,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":209,"old":8,"rank":2,"right":{"linear_Z4":[0,3,0,3,0,0,0,3,0],"matrix_rows":[384,138,1,386,4,392,16,32,64],"offset":2,"phase":1,"quadratic_rows":[0,266,0,266,0,0,0,384,138]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,32,66,128,256,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":210,"old":8,"rank":2,"right":{"linear_Z4":[0,0,3,0,3,0,0,3,0],"matrix_rows":[384,148,1,2,388,8,400,32,64],"offset":2,"phase":1,"quadratic_rows":[0,0,276,0,276,0,0,384,148]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,65,130,1,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":232,"old":8,"rank":2,"right":{"linear_Z4":[3,0,3,0,3,3,0,3,2],"matrix_rows":[5,416,81,18,68,8,64,288,384],"offset":3,"phase":2,"quadratic_rows":[85,16,69,0,19,160,5,160,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,1,35,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":233,"old":8,"rank":2,"right":{"linear_Z4":[1,0,3,0,0,0,0,0,1],"matrix_rows":[438,187,265,258,12,272,288,64,384],"offset":1,"phase":1,"quadratic_rows":[435,13,446,438,13,13,0,13,269]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,33,67,129,3,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":238,"old":8,"rank":2,"right":{"linear_Z4":[3,0,3,1,0,1,0,1,2],"matrix_rows":[184,5,337,18,324,264,64,288,384],"offset":2,"phase":1,"quadratic_rows":[341,16,325,440,427,440,5,440,189]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,1,32,66,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":239,"old":8,"rank":2,"right":{"linear_Z4":[3,0,3,2,0,3,0,3,2],"matrix_rows":[13,416,9,2,12,16,288,64,384],"offset":3,"phase":2,"quadratic_rows":[5,0,5,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":8,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,2,0,3,2],"matrix_rows":[37,392,33,2,36,264,16,64,384],"offset":3,"phase":2,"quadratic_rows":[5,0,5,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,33,66,129,2,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":297,"old":8,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,1,0,1,2],"matrix_rows":[189,5,321,18,340,264,64,288,384],"offset":2,"phase":1,"quadratic_rows":[504,16,488,445,427,445,5,445,189]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":17,"old":9,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":18,"old":9,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":19,"old":9,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":20,"old":10,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":21,"old":10,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":22,"old":10,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":20,"old":11,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,1,1,2],"matrix_rows":[461,289,2,292,296,16,256,320,384],"offset":0,"phase":0,"quadratic_rows":[237,0,237,237,0,13,205,205,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":23,"old":11,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":24,"old":11,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,1,1,2],"matrix_rows":[461,289,34,260,264,48,256,320,384],"offset":0,"phase":0,"quadratic_rows":[237,32,205,205,32,19,205,205,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":17,"old":12,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":25,"old":12,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":26,"old":12,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":21,"old":13,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,1,1,2],"matrix_rows":[467,289,290,4,8,304,256,320,384],"offset":0,"phase":0,"quadratic_rows":[243,243,0,0,243,19,211,211,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":23,"old":13,"rank":1,"right":{"linear_Z4":[1,1,0,0,2,1,1,1,2],"matrix_rows":[483,257,274,20,24,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[227,243,16,16,14,227,227,227,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":27,"old":13,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,1,1,2],"matrix_rows":[467,289,258,36,40,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[243,211,32,32,211,13,211,211,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":18,"old":14,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,0],"matrix_rows":[56,9,10,4,32,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[8,8,0,19,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":25,"old":14,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,2,0,0,0],"matrix_rows":[40,1,18,20,56,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":28,"old":14,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[56,17,2,20,40,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[16,0,16,24,13,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":19,"old":15,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":26,"old":15,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":28,"old":15,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":22,"old":16,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,1,1,2],"matrix_rows":[462,1,274,276,280,256,32,320,384],"offset":0,"phase":0,"quadratic_rows":[0,222,222,222,14,0,206,206,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":24,"old":16,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":27,"old":16,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":438,"old":17,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[16,34,65,2,136,3,264,12,4],"offset":0,"phase":0,"quadratic_rows":[3,1,12,4,0,0,0,0,0]},"new":444,"old":17,"rank":4,"right":{"linear_Z4":[2,0,1,2,3,1,3,3,0],"matrix_rows":[12,34,384,208,5,8,40,400,448],"offset":89,"phase":0,"quadratic_rows":[4,40,37,34,336,46,336,384,208]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":453,"old":17,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[213,257,2,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[469,0,469,0,469,0,469,469,213]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[17,46,65,128,6,256,1,10,2],"offset":0,"phase":0,"quadratic_rows":[0,2,12,12,0,0,0,0,0]},"new":459,"old":17,"rank":4,"right":{"linear_Z4":[3,1,3,0,3,0,2,3,0],"matrix_rows":[69,2,386,274,65,402,68,8,32],"offset":3,"phase":2,"quadratic_rows":[5,258,5,0,144,0,0,144,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":30,"old":18,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":36,"old":18,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[213,257,2,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[469,0,469,0,469,0,469,469,213]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":32,"old":19,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,1,1,2],"matrix_rows":[230,1,258,260,8,16,288,320,384],"offset":0,"phase":0,"quadratic_rows":[0,486,486,0,0,486,486,486,230]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":34,"old":19,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":438,"old":20,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,41,10,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,8,37,11,0,5,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,66,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":441,"old":20,"rank":2,"right":{"linear_Z4":[0,0,0,0,3,0,1,0,1],"matrix_rows":[448,400,1,2,4,8,464,32,256],"offset":321,"phase":3,"quadratic_rows":[0,0,0,0,80,0,336,256,448]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":515,"old":20,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,34,2,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":518,"old":20,"rank":2,"right":{"linear_Z4":[0,2,3,3,2,0,1,1,2],"matrix_rows":[320,28,1,130,20,24,32,448,256],"offset":395,"phase":1,"quadratic_rows":[0,128,12,12,0,0,192,194,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":30,"old":21,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":35,"old":21,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,49,34,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[51,35,16,0,21,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":31,"old":22,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":34,"old":22,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,26,20,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,30,22,11,6,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":32,"old":23,"rank":1,"right":{"linear_Z4":[0,2,2,0,0,1,1,1,2],"matrix_rows":[232,9,10,4,256,272,288,320,384],"offset":60,"phase":0,"quadratic_rows":[8,8,0,483,0,488,488,488,232]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":33,"old":23,"rank":1,"right":{"linear_Z4":[3,2,1,3,0,1,3,3,2],"matrix_rows":[461,257,34,292,264,16,256,320,384],"offset":77,"phase":0,"quadratic_rows":[205,32,237,205,0,38,205,205,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":29,"old":24,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,1,1,2],"matrix_rows":[216,17,2,20,264,256,288,320,384],"offset":102,"phase":0,"quadratic_rows":[16,0,16,472,461,0,472,472,216]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":36,"old":24,"rank":1,"right":{"linear_Z4":[2,1,3,1,3,0,3,3,2],"matrix_rows":[470,9,266,260,256,272,32,320,384],"offset":23,"phase":0,"quadratic_rows":[8,222,214,11,214,0,214,214,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":31,"old":25,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":33,"old":25,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":29,"old":26,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":35,"old":26,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":453,"old":27,"rank":1,"right":{"linear_Z4":[2,0,2,0,1,0,1,1,2],"matrix_rows":[216,9,10,4,256,272,288,320,384],"offset":90,"phase":0,"quadratic_rows":[8,8,0,467,472,0,472,472,216]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,23,39,71,131,256,5,1,7],"offset":0,"phase":0,"quadratic_rows":[6,1,1,0,0,0,0,0,0]},"new":456,"old":27,"rank":3,"right":{"linear_Z4":[0,3,3,3,2,0,2,1,3],"matrix_rows":[270,462,158,209,258,260,472,256,32],"offset":6,"phase":2,"quadratic_rows":[208,350,350,398,135,0,135,217,270]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":504,"old":27,"rank":1,"right":{"linear_Z4":[2,3,1,3,1,0,3,3,2],"matrix_rows":[462,17,258,276,264,256,32,320,384],"offset":43,"phase":0,"quadratic_rows":[16,206,222,206,21,0,206,206,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,37,68,129,5,257,1,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":507,"old":27,"rank":3,"right":{"linear_Z4":[3,0,1,3,3,0,3,2,1],"matrix_rows":[212,34,265,165,288,32,168,144,192],"offset":5,"phase":2,"quadratic_rows":[429,256,85,425,84,265,84,9,299]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":504,"old":28,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,45,67,131,259,3,6,10,2],"offset":0,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]},"new":510,"old":28,"rank":4,"right":{"linear_Z4":[2,1,0,2,0,1,1,1,0],"matrix_rows":[463,489,422,358,37,486,32,40,48],"offset":300,"phase":0,"quadratic_rows":[2,235,232,6,0,230,230,230,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":515,"old":28,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,3,3,2],"matrix_rows":[448,1,2,4,8,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,0,192,192,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[18,1,34,66,128,2,264,12,4],"offset":0,"phase":0,"quadratic_rows":[0,2,12,12,0,0,0,0,0]},"new":521,"old":28,"rank":4,"right":{"linear_Z4":[3,2,3,2,0,0,1,3,0],"matrix_rows":[2,5,384,320,33,44,32,16,448],"offset":3,"phase":2,"quadratic_rows":[37,0,45,4,0,5,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":37,"old":29,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,3,3,0],"matrix_rows":[203,265,266,4,256,16,32,320,384],"offset":23,"phase":0,"quadratic_rows":[451,451,0,448,0,0,459,459,203]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,23,33,66,129,1,4,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":538,"old":29,"rank":3,"right":{"linear_Z4":[3,3,2,0,0,2,0,0,2],"matrix_rows":[39,395,195,289,290,32,256,48,384],"offset":67,"phase":1,"quadratic_rows":[79,79,3,131,0,0,131,72,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,32,70,128,256,3,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":544,"old":29,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,1,3],"matrix_rows":[323,203,8,65,66,204,256,16,32],"offset":2,"phase":1,"quadratic_rows":[456,456,200,263,0,0,263,135,331]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":37,"old":30,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,49,34,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[51,35,16,0,21,3,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,67,1,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":539,"old":30,"rank":3,"right":{"linear_Z4":[2,0,2,0,1,2,3,1,2],"matrix_rows":[18,34,448,19,32,68,40,256,384],"offset":248,"phase":3,"quadratic_rows":[18,1,64,0,17,0,196,192,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,64,129,1,260,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":545,"old":30,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,0,2,3],"matrix_rows":[3,384,452,33,50,388,8,32,256],"offset":261,"phase":1,"quadratic_rows":[35,51,68,0,2,3,132,320,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":37,"old":31,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,26,20,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,30,22,11,6,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,66,4,6,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":550,"old":31,"rank":3,"right":{"linear_Z4":[2,2,0,1,0,2,3,1,2],"matrix_rows":[448,60,20,65,14,32,48,256,384],"offset":218,"phase":1,"quadratic_rows":[64,12,2,10,0,0,193,192,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,66,2,128,260,1,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":556,"old":31,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,0,0,2,3],"matrix_rows":[384,6,449,385,18,28,16,32,256],"offset":262,"phase":1,"quadratic_rows":[65,22,30,4,6,0,129,320,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":37,"old":32,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,3,3,0],"matrix_rows":[230,1,290,292,8,16,256,320,384],"offset":77,"phase":0,"quadratic_rows":[0,454,454,0,0,448,486,486,230]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,39,65,1,130,4,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":551,"old":32,"rank":3,"right":{"linear_Z4":[2,3,3,0,2,0,0,0,2],"matrix_rows":[23,422,198,16,274,276,24,256,384],"offset":131,"phase":1,"quadratic_rows":[6,103,103,0,0,134,134,96,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,64,128,261,3,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":557,"old":32,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,2,2,1,3],"matrix_rows":[230,326,32,225,66,68,8,16,256],"offset":1,"phase":1,"quadratic_rows":[224,480,480,0,0,263,263,135,358]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":37,"old":33,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,0,3,3,2],"matrix_rows":[454,9,266,260,256,272,32,320,384],"offset":61,"phase":1,"quadratic_rows":[8,206,198,11,0,0,198,198,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,34,71,130,2,4,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":562,"old":33,"rank":3,"right":{"linear_Z4":[0,3,2,3,0,2,0,0,2],"matrix_rows":[399,42,206,256,294,32,296,48,384],"offset":11,"phase":1,"quadratic_rows":[142,79,67,75,0,0,142,65,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,20,39,68,135,7,259,1,2],"offset":0,"phase":0,"quadratic_rows":[3,3,4,0,0,0,0,0,0]},"new":568,"old":33,"rank":3,"right":{"linear_Z4":[3,3,2,3,0,0,1,2,3],"matrix_rows":[257,129,207,229,358,32,360,48,256],"offset":431,"phase":1,"quadratic_rows":[427,427,360,431,0,207,356,43,335]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":37,"old":34,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[38,1,34,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,1,3,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":563,"old":34,"rank":3,"right":{"linear_Z4":[0,2,1,2,1,2,3,1,2],"matrix_rows":[17,12,448,8,6,24,96,256,384],"offset":242,"phase":1,"quadratic_rows":[24,4,22,17,29,64,224,192,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,64,1,132,260,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":569,"old":34,"rank":3,"right":{"linear_Z4":[1,2,1,0,2,3,0,2,3],"matrix_rows":[17,384,480,21,6,16,8,416,256],"offset":317,"phase":0,"quadratic_rows":[5,4,7,0,0,96,160,320,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":37,"old":35,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[11,9,10,4,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,2,3,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":574,"old":35,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,1,3,1,2],"matrix_rows":[18,36,448,3,48,16,72,256,384],"offset":217,"phase":1,"quadratic_rows":[2,35,48,64,36,54,200,192,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,33,68,129,1,260,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":580,"old":35,"rank":3,"right":{"linear_Z4":[2,2,2,3,0,2,0,2,3],"matrix_rows":[36,384,456,5,6,32,392,48,256],"offset":316,"phase":3,"quadratic_rows":[4,4,3,72,0,0,136,320,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":37,"old":36,"rank":1,"right":{"linear_Z4":[1,1,0,0,3,0,3,3,2],"matrix_rows":[451,273,258,20,8,256,288,320,384],"offset":103,"phase":1,"quadratic_rows":[211,195,16,0,21,0,195,195,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,17,34,65,135,1,4,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":575,"old":36,"rank":3,"right":{"linear_Z4":[3,2,0,0,3,2,0,0,2],"matrix_rows":[49,407,211,291,32,256,40,304,384],"offset":35,"phase":1,"quadratic_rows":[87,69,147,0,85,0,147,68,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[10,16,39,64,130,256,2,3,6],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":581,"old":36,"rank":3,"right":{"linear_Z4":[3,2,3,0,1,0,1,2,3],"matrix_rows":[388,17,4,133,198,256,8,80,32],"offset":61,"phase":1,"quadratic_rows":[149,196,199,0,81,0,214,327,384]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,131,5,6,264,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":37,"rank":5,"right":{"linear_Z4":[2,2,0,0,0,0,0,0,1],"matrix_rows":[49,50,52,64,384,16,32,56,256],"offset":488,"phase":1,"quadratic_rows":[32,16,48,0,6,5,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,129,3,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":415,"old":37,"rank":4,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,1],"matrix_rows":[3,6,64,384,48,18,32,56,256],"offset":436,"phase":1,"quadratic_rows":[50,21,34,0,3,5,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,131,1,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":416,"old":37,"rank":4,"right":{"linear_Z4":[3,1,0,0,0,2,0,0,1],"matrix_rows":[6,5,64,384,39,48,16,56,256],"offset":437,"phase":2,"quadratic_rows":[35,19,48,0,6,5,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,129,2,3,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":417,"old":37,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,2,0,0,1],"matrix_rows":[3,5,64,384,33,48,16,56,256],"offset":436,"phase":1,"quadratic_rows":[38,49,17,0,6,3,256,256,448]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,131,1,2,260,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":418,"old":37,"rank":4,"right":{"linear_Z4":[0,0,2,0,2,2,0,0,1],"matrix_rows":[5,6,64,384,16,32,52,56,256],"offset":388,"phase":3,"quadratic_rows":[20,36,51,0,5,6,256,256,448]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":46,"old":38,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":47,"old":38,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,2,0],"matrix_rows":[144,1,2,4,72,208,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,80,64,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":48,"old":38,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,2,0],"matrix_rows":[144,65,2,68,8,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,64,0,80,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":49,"old":39,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":50,"old":39,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,2],"matrix_rows":[272,1,2,4,72,336,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,80,64,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":51,"old":39,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,2],"matrix_rows":[272,65,2,68,8,336,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,0,64,0,80,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":49,"old":40,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,2,1,0,2],"matrix_rows":[349,289,2,292,296,272,256,320,128],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,93,13,93,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":52,"old":40,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,0,2],"matrix_rows":[317,321,2,324,264,336,288,256,128],"offset":0,"phase":0,"quadratic_rows":[125,0,125,61,125,61,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":53,"old":40,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,0,2],"matrix_rows":[317,257,2,260,328,336,352,256,128],"offset":0,"phase":0,"quadratic_rows":[61,0,61,125,125,125,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":46,"old":41,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,2,1,2,0],"matrix_rows":[221,161,2,164,168,144,128,192,256],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,93,13,93,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":54,"old":41,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,2,0],"matrix_rows":[189,193,2,196,136,208,160,128,256],"offset":0,"phase":0,"quadratic_rows":[125,0,125,61,125,61,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":55,"old":41,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,1,2,2,0],"matrix_rows":[189,129,2,132,200,208,224,128,256],"offset":0,"phase":0,"quadratic_rows":[61,0,61,125,125,125,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":50,"old":42,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":52,"old":42,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":56,"old":42,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,2],"matrix_rows":[264,33,2,36,296,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":47,"old":43,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":54,"old":43,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":57,"old":43,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,2,0],"matrix_rows":[136,33,2,36,168,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":48,"old":44,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":55,"old":44,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":57,"old":44,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":51,"old":45,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":53,"old":45,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":56,"old":45,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":440,"old":46,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,33,10,44,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[37,8,45,14,0,5,0,0,0]}},{"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[17,32,65,129,258,1,4,6,8],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":446,"old":46,"rank":4,"right":{"linear_Z4":[3,0,3,3,0,0,0,1,2],"matrix_rows":[9,16,192,256,37,6,32,40,128],"offset":267,"phase":2,"quadratic_rows":[45,4,7,41,128,9,128,208,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":467,"old":46,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[20,40,69,132,258,5,8,10,1],"offset":0,"phase":0,"quadratic_rows":[0,10,4,2,0,0,0,0,0]},"new":473,"old":46,"rank":4,"right":{"linear_Z4":[3,1,1,3,0,0,2,3,2],"matrix_rows":[260,16,9,210,293,18,32,296,128],"offset":303,"phase":2,"quadratic_rows":[301,194,5,297,64,9,146,194,9]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":59,"old":47,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":65,"old":47,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":61,"old":48,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":63,"old":48,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":439,"old":49,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,2,0],"matrix_rows":[64,1,2,4,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,192,64,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":443,"old":49,"rank":2,"right":{"linear_Z4":[3,0,3,3,3,0,3,2,0],"matrix_rows":[5,208,33,10,44,32,144,192,256],"offset":3,"phase":2,"quadratic_rows":[37,8,45,14,80,5,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":525,"old":49,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,34,64,3,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":528,"old":49,"rank":2,"right":{"linear_Z4":[3,0,1,3,0,0,0,2,0],"matrix_rows":[132,9,165,2,32,168,16,64,256],"offset":3,"phase":2,"quadratic_rows":[173,0,5,169,0,9,0,9,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":59,"old":50,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":50,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":60,"old":51,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":63,"old":51,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":61,"old":52,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":62,"old":52,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":58,"old":53,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":65,"old":53,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,2,0],"matrix_rows":[168,1,2,4,136,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":60,"old":54,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":62,"old":54,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":58,"old":55,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":64,"old":55,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,2],"matrix_rows":[296,1,2,4,264,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,40,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":467,"old":56,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,16,32,65,128,2,3,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":470,"old":56,"rank":2,"right":{"linear_Z4":[0,2,0,0,3,0,0,2,0],"matrix_rows":[210,66,1,130,4,8,208,32,256],"offset":3,"phase":2,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":505,"old":56,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,1,2,0],"matrix_rows":[94,1,130,132,136,144,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,222,222,222,222,0,222,94,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,18,32,64,128,3,1,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":509,"old":56,"rank":2,"right":{"linear_Z4":[3,0,3,0,0,0,3,0,0],"matrix_rows":[192,69,193,2,196,8,16,32,256],"offset":2,"phase":1,"quadratic_rows":[133,0,133,0,0,0,192,69,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":506,"old":57,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,2,0,0,0,0,0],"matrix_rows":[20,2,37,68,129,261,1,5,8],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":512,"old":57,"rank":4,"right":{"linear_Z4":[3,2,3,3,1,0,2,3,2],"matrix_rows":[148,2,137,256,197,128,200,80,160],"offset":14,"phase":3,"quadratic_rows":[77,0,213,73,212,0,29,148,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":525,"old":57,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[18,1,34,66,136,2,12,256,4],"offset":0,"phase":0,"quadratic_rows":[0,2,12,12,0,0,0,0,0]},"new":531,"old":57,"rank":4,"right":{"linear_Z4":[3,2,3,2,1,0,3,0,0],"matrix_rows":[2,5,320,272,33,44,32,336,128],"offset":3,"phase":2,"quadratic_rows":[37,0,45,4,80,5,80,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":66,"old":58,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,2,0,0,0],"matrix_rows":[24,33,2,36,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,0,32,120,88,13,24,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,32,64,132,6,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":654,"old":58,"rank":3,"right":{"linear_Z4":[0,1,0,2,3,2,2,0,2],"matrix_rows":[257,96,18,256,98,4,56,64,384],"offset":192,"phase":2,"quadratic_rows":[0,114,0,48,122,26,18,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,20,34,64,133,1,4,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":670,"old":58,"rank":3,"right":{"linear_Z4":[0,1,0,2,0,1,1,0,2],"matrix_rows":[112,260,98,1,114,256,56,64,384],"offset":213,"phase":1,"quadratic_rows":[0,18,0,48,106,120,112,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":66,"old":59,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,2,0,0,2],"matrix_rows":[24,33,2,36,296,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,0,32,312,280,13,0,0,24]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[10,23,6,32,65,130,3,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":655,"old":59,"rank":3,"right":{"linear_Z4":[1,1,1,0,3,3,1,0,0],"matrix_rows":[118,275,354,273,358,56,320,256,384],"offset":222,"phase":2,"quadratic_rows":[3,355,276,48,284,362,354,0,118]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[15,3,17,32,69,129,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":671,"old":59,"rank":3,"right":{"linear_Z4":[3,1,1,0,2,1,3,0,3],"matrix_rows":[277,113,355,115,276,56,320,256,384],"offset":213,"phase":3,"quadratic_rows":[117,274,5,48,363,121,113,0,274]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":66,"old":60,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,2,0],"matrix_rows":[136,33,2,36,168,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,68,129,2,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":662,"old":60,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,3,0],"matrix_rows":[5,160,170,81,162,68,128,64,256],"offset":69,"phase":1,"quadratic_rows":[85,10,69,34,1,136,5,160,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,20,34,65,130,4,2,5,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":678,"old":60,"rank":3,"right":{"linear_Z4":[3,1,3,0,2,2,0,3,0],"matrix_rows":[8,5,170,65,10,84,128,64,256],"offset":87,"phase":1,"quadratic_rows":[69,162,85,32,4,138,5,162,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":66,"old":61,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,2],"matrix_rows":[264,33,2,36,296,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,68,129,2,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":663,"old":61,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,0,3],"matrix_rows":[5,288,298,81,290,68,256,64,128],"offset":69,"phase":1,"quadratic_rows":[85,10,69,34,1,264,5,0,288]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,20,34,65,130,4,2,256,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":679,"old":61,"rank":3,"right":{"linear_Z4":[3,1,3,0,2,2,0,0,3],"matrix_rows":[8,5,298,65,10,84,256,64,128],"offset":87,"phase":1,"quadratic_rows":[69,290,85,32,4,266,5,0,290]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":66,"old":62,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,2,0,0,0],"matrix_rows":[13,289,2,292,296,16,256,64,384],"offset":1,"phase":1,"quadratic_rows":[301,0,301,301,0,13,0,0,13]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,35,68,1,128,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":686,"old":62,"rank":3,"right":{"linear_Z4":[2,1,0,0,3,0,3,0,2],"matrix_rows":[82,4,264,21,6,64,256,32,384],"offset":59,"phase":1,"quadratic_rows":[20,86,83,0,87,0,86,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,35,64,1,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":702,"old":62,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,0,1,0,2],"matrix_rows":[84,82,288,21,86,64,8,256,384],"offset":59,"phase":1,"quadratic_rows":[20,6,83,0,85,0,84,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":66,"old":63,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,39,71,129,2,6,263,7],"offset":0,"phase":0,"quadratic_rows":[3,5,2,0,0,0,0,0,0]},"new":687,"old":63,"rank":3,"right":{"linear_Z4":[0,2,2,1,1,1,0,0,1],"matrix_rows":[42,282,92,21,358,256,280,320,384],"offset":246,"phase":2,"quadratic_rows":[20,84,43,124,283,364,42,0,304]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,17,39,2,68,3,135,263,7],"offset":0,"phase":0,"quadratic_rows":[3,3,4,0,0,0,0,0,0]},"new":703,"old":63,"rank":3,"right":{"linear_Z4":[3,3,2,0,3,1,0,0,2],"matrix_rows":[10,44,17,293,46,256,304,320,384],"offset":235,"phase":2,"quadratic_rows":[309,38,35,0,305,55,0,0,17]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":66,"old":64,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,2,0,0,2],"matrix_rows":[285,289,2,292,296,272,256,320,128],"offset":1,"phase":1,"quadratic_rows":[61,0,61,61,29,13,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,2,36,68,132,4,3,256],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":694,"old":64,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,3,0],"matrix_rows":[135,132,40,128,134,88,64,96,256],"offset":13,"phase":1,"quadratic_rows":[6,3,129,120,8,104,40,132,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,1,18,32,64,132,260,2,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":710,"old":64,"rank":3,"right":{"linear_Z4":[2,3,0,2,2,1,0,3,2],"matrix_rows":[129,135,288,131,128,8,48,256,320],"offset":484,"phase":1,"quadratic_rows":[132,6,3,0,32,48,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":66,"old":65,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,2,0,2,0],"matrix_rows":[157,161,2,164,168,144,128,192,256],"offset":1,"phase":1,"quadratic_rows":[61,0,61,61,29,13,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,2,36,68,132,4,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":695,"old":65,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,0,3],"matrix_rows":[263,260,40,256,262,88,64,96,128],"offset":13,"phase":1,"quadratic_rows":[6,3,257,120,8,104,40,0,260]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,1,18,32,64,132,260,4,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":711,"old":65,"rank":3,"right":{"linear_Z4":[2,3,0,2,2,1,0,2,3],"matrix_rows":[257,263,160,259,256,8,48,128,192],"offset":484,"phase":1,"quadratic_rows":[260,6,3,0,32,48,0,0,257]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,2,4,72,144,13,21,261,5],"offset":0,"phase":0,"quadratic_rows":[24,0,24,13,21,0,0,0,0]},"new":1,"old":66,"rank":5,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[353,2,100,264,272,256,288,320,384],"offset":254,"phase":1,"quadratic_rows":[96,0,96,32,64,13,21,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,37,4,66,136,7,13,261,5],"offset":0,"phase":0,"quadratic_rows":[15,7,15,13,0,0,0,0,0]},"new":415,"old":66,"rank":4,"right":{"linear_Z4":[2,2,2,1,0,0,0,0,3],"matrix_rows":[107,264,366,272,256,266,288,320,384],"offset":254,"phase":3,"quadratic_rows":[362,13,362,47,64,13,21,0,261]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,3,33,68,136,5,9,257,1],"offset":0,"phase":0,"quadratic_rows":[15,3,5,9,0,0,0,0,0]},"new":416,"old":66,"rank":4,"right":{"linear_Z4":[1,3,0,0,0,1,1,0,2],"matrix_rows":[358,261,264,272,263,256,288,320,384],"offset":204,"phase":0,"quadratic_rows":[3,99,96,32,64,110,118,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,37,4,72,130,13,7,261,5],"offset":0,"phase":0,"quadratic_rows":[15,7,15,13,0,0,0,0,0]},"new":419,"old":66,"rank":4,"right":{"linear_Z4":[2,2,2,0,1,0,0,0,3],"matrix_rows":[115,272,374,264,256,274,288,320,384],"offset":254,"phase":3,"quadratic_rows":[370,21,370,32,87,13,21,0,261]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,3,37,73,129,12,4,261,5],"offset":0,"phase":0,"quadratic_rows":[15,7,15,13,0,0,0,0,0]},"new":420,"old":66,"rank":4,"right":{"linear_Z4":[2,0,0,2,3,2,2,0,3],"matrix_rows":[382,285,123,264,287,256,288,320,384],"offset":200,"phase":3,"quadratic_rows":[120,24,120,295,87,13,21,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":75,"old":67,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":76,"old":67,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":77,"old":67,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":78,"old":68,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":79,"old":68,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":80,"old":68,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":78,"old":69,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":81,"old":69,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":82,"old":69,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":75,"old":70,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,2,0,1,2],"matrix_rows":[413,289,2,292,296,272,256,64,384],"offset":0,"phase":0,"quadratic_rows":[189,0,189,189,157,13,0,157,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":83,"old":70,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":84,"old":70,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":79,"old":71,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[104,33,34,4,72,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,40,0,11,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":81,"old":71,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,0],"matrix_rows":[104,1,10,12,64,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,8,8,38,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":85,"old":71,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,2,0,0],"matrix_rows":[72,33,2,36,104,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,40,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":76,"old":72,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,2,1,2],"matrix_rows":[411,321,322,4,328,272,32,256,384],"offset":0,"phase":0,"quadratic_rows":[219,219,0,219,155,0,11,155,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":83,"old":72,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,2,1,2],"matrix_rows":[411,257,322,68,264,272,96,256,384],"offset":0,"phase":0,"quadratic_rows":[155,219,64,155,155,64,38,155,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":86,"old":72,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":77,"old":73,"rank":1,"right":{"linear_Z4":[0,1,1,0,1,1,2,1,2],"matrix_rows":[438,1,322,324,8,272,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,246,246,0,182,246,38,182,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":84,"old":73,"rank":1,"right":{"linear_Z4":[0,1,1,0,1,1,2,1,2],"matrix_rows":[438,65,322,260,72,272,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,246,182,64,182,182,11,182,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":86,"old":73,"rank":1,"right":{"linear_Z4":[0,1,1,0,1,2,1,1,2],"matrix_rows":[470,33,258,292,40,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,214,246,32,214,13,214,214,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":80,"old":74,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":82,"old":74,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":85,"old":74,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":439,"old":75,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,3,2],"matrix_rows":[400,1,2,4,8,272,32,192,256],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,144,0,128,208,0]}},{"left":{"linear_Z4":[3,2,3,3,0,0,0,0,0],"matrix_rows":[16,2,37,1,72,4,8,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,8,0,0,0,0,0]},"new":445,"old":75,"rank":4,"right":{"linear_Z4":[2,2,0,3,1,3,2,0,0],"matrix_rows":[44,2,4,16,13,32,80,128,256],"offset":55,"phase":1,"quadratic_rows":[12,0,1,41,80,40,16,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":480,"old":75,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[20,40,69,132,266,5,1,2,8],"offset":0,"phase":0,"quadratic_rows":[0,10,4,2,0,0,0,0,0]},"new":486,"old":75,"rank":4,"right":{"linear_Z4":[3,3,1,3,1,0,2,0,1],"matrix_rows":[68,400,9,386,101,402,32,104,256],"offset":295,"phase":1,"quadratic_rows":[109,18,5,105,274,9,9,256,400]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":88,"old":76,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":94,"old":76,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,65,74,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[67,75,8,14,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":90,"old":77,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":92,"old":77,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,98,68,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,102,70,0,0,35,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":440,"old":78,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,1,32,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":442,"old":78,"rank":2,"right":{"linear_Z4":[2,1,3,2,0,0,3,3,2],"matrix_rows":[14,448,5,10,8,16,32,320,384],"offset":22,"phase":3,"quadratic_rows":[4,6,7,0,0,0,192,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":492,"old":78,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,1,1,2],"matrix_rows":[213,257,2,260,8,272,32,320,384],"offset":0,"phase":0,"quadratic_rows":[469,0,469,0,469,0,469,469,213]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[11,23,35,64,131,256,6,2,3],"offset":0,"phase":0,"quadratic_rows":[6,1,5,0,0,0,0,0,0]},"new":495,"old":78,"rank":3,"right":{"linear_Z4":[0,1,0,0,0,0,1,2,0],"matrix_rows":[471,279,386,257,450,260,8,272,32],"offset":1,"phase":1,"quadratic_rows":[448,130,448,0,448,0,85,279,149]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":88,"old":79,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":93,"old":79,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":89,"old":80,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":92,"old":80,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":90,"old":81,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":91,"old":81,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":87,"old":82,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":94,"old":82,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":89,"old":83,"rank":1,"right":{"linear_Z4":[0,2,2,1,1,0,0,1,2],"matrix_rows":[184,33,34,4,264,272,256,320,384],"offset":204,"phase":0,"quadratic_rows":[32,32,0,440,440,411,0,440,184]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":91,"old":83,"rank":1,"right":{"linear_Z4":[3,2,1,1,3,3,0,3,2],"matrix_rows":[437,257,10,268,256,272,288,64,384],"offset":29,"phase":0,"quadratic_rows":[181,8,189,14,181,181,0,181,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":87,"old":84,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,1,0,1,2],"matrix_rows":[184,1,10,12,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[0,8,8,438,440,440,0,440,184]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":93,"old":84,"rank":1,"right":{"linear_Z4":[1,2,3,3,3,1,0,3,2],"matrix_rows":[413,289,34,260,264,272,256,64,384],"offset":71,"phase":0,"quadratic_rows":[189,32,157,157,157,35,0,157,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":480,"old":85,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,16,32,65,128,256,3,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":483,"old":85,"rank":2,"right":{"linear_Z4":[0,2,0,0,3,0,0,2,0],"matrix_rows":[402,258,1,130,4,8,400,32,64],"offset":3,"phase":2,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":506,"old":85,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,34,1,64,128,258,2],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":508,"old":85,"rank":2,"right":{"linear_Z4":[3,3,2,3,1,0,0,3,1],"matrix_rows":[277,414,17,258,276,264,32,64,384],"offset":3,"phase":2,"quadratic_rows":[261,158,411,158,414,0,0,158,277]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":492,"old":86,"rank":1,"right":{"linear_Z4":[2,0,2,0,1,0,1,1,2],"matrix_rows":[216,1,10,12,256,272,288,320,384],"offset":90,"phase":0,"quadratic_rows":[0,8,8,470,472,0,472,472,216]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,65,130,260,2,8,3,13],"offset":0,"phase":0,"quadratic_rows":[12,2,13,13,0,0,0,0,0]},"new":498,"old":86,"rank":4,"right":{"linear_Z4":[1,2,1,0,0,0,0,2,0],"matrix_rows":[271,10,48,320,161,130,172,32,288],"offset":0,"phase":0,"quadratic_rows":[431,389,423,385,256,261,256,15,127]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":505,"old":86,"rank":1,"right":{"linear_Z4":[1,3,2,3,3,0,3,3,2],"matrix_rows":[475,257,386,132,392,400,32,448,256],"offset":444,"phase":2,"quadratic_rows":[219,91,128,91,91,0,91,133,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[31,34,65,143,4,1,8,270,14],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":511,"old":86,"rank":4,"right":{"linear_Z4":[0,0,3,0,0,0,0,1,2],"matrix_rows":[9,399,157,205,293,256,32,296,384],"offset":35,"phase":1,"quadratic_rows":[242,141,222,246,141,9,141,223,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":95,"old":87,"rank":1,"right":{"linear_Z4":[1,1,0,0,3,0,0,3,0],"matrix_rows":[179,289,290,4,8,272,256,64,384],"offset":71,"phase":0,"quadratic_rows":[403,403,0,0,435,400,0,435,179]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,32,64,131,6,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":656,"old":87,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,2,0,1,3],"matrix_rows":[19,179,288,273,274,180,8,256,64],"offset":2,"phase":1,"quadratic_rows":[432,432,176,0,263,263,0,135,307]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,23,33,65,130,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":680,"old":87,"rank":3,"right":{"linear_Z4":[3,3,2,0,0,0,2,0,2],"matrix_rows":[71,403,163,321,322,64,72,256,384],"offset":131,"phase":1,"quadratic_rows":[55,55,3,0,131,131,0,48,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":95,"old":88,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,65,74,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[67,75,8,14,0,0,3,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":657,"old":88,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,0,0,2,3],"matrix_rows":[3,384,404,73,66,388,64,256,32],"offset":133,"phase":1,"quadratic_rows":[75,67,20,1,132,0,3,272,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,65,132,3,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":681,"old":88,"rank":3,"right":{"linear_Z4":[2,0,2,1,3,2,0,1,2],"matrix_rows":[106,66,400,11,32,20,96,256,384],"offset":233,"phase":1,"quadratic_rows":[10,1,16,9,148,0,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":95,"old":89,"rank":1,"right":{"linear_Z4":[0,1,1,0,3,0,0,3,0],"matrix_rows":[158,1,266,268,256,272,32,64,384],"offset":29,"phase":0,"quadratic_rows":[0,406,406,400,414,0,0,414,158]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,4,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":664,"old":89,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,0,2],"matrix_rows":[71,398,150,64,322,324,256,96,384],"offset":67,"phase":1,"quadratic_rows":[6,31,31,134,134,0,0,24,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,69,3,128,256,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":672,"old":89,"rank":3,"right":{"linear_Z4":[0,0,0,2,2,0,0,1,3],"matrix_rows":[158,278,8,153,18,20,256,32,64],"offset":1,"phase":1,"quadratic_rows":[152,408,408,263,263,0,0,135,286]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":95,"old":90,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,98,68,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,102,70,0,0,35,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,70,129,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":665,"old":90,"rank":3,"right":{"linear_Z4":[2,2,0,0,3,1,2,1,2],"matrix_rows":[400,36,68,17,38,64,72,256,384],"offset":248,"phase":3,"quadratic_rows":[16,36,2,0,145,34,0,144,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,64,132,258,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":673,"old":90,"rank":3,"right":{"linear_Z4":[3,3,3,0,0,2,0,2,3],"matrix_rows":[384,6,401,385,66,100,8,256,64],"offset":134,"phase":1,"quadratic_rows":[17,70,102,0,129,4,6,272,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":95,"old":91,"rank":1,"right":{"linear_Z4":[0,1,1,0,3,3,0,3,2],"matrix_rows":[406,33,290,260,8,272,256,320,384],"offset":205,"phase":1,"quadratic_rows":[32,182,150,0,150,35,0,150,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,34,66,4,135,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":696,"old":91,"rank":3,"right":{"linear_Z4":[0,3,2,0,0,3,2,0,2],"matrix_rows":[423,98,182,256,326,64,72,352,384],"offset":11,"phase":1,"quadratic_rows":[166,55,19,0,166,51,0,17,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,39,71,135,259,4,1,2],"offset":0,"phase":0,"quadratic_rows":[4,4,7,0,0,0,0,0,0]},"new":704,"old":91,"rank":3,"right":{"linear_Z4":[0,0,2,0,3,1,2,3,1],"matrix_rows":[212,340,308,165,38,320,328,368,256],"offset":420,"phase":2,"quadratic_rows":[164,36,371,0,468,487,180,241,308]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":95,"old":92,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[14,1,10,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,132,1,3,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":697,"old":92,"rank":3,"right":{"linear_Z4":[0,2,1,2,3,2,1,1,2],"matrix_rows":[65,36,400,32,6,96,24,256,384],"offset":242,"phase":1,"quadratic_rows":[96,4,70,16,152,65,101,144,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,68,132,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":705,"old":92,"rank":3,"right":{"linear_Z4":[1,2,1,3,0,0,2,2,3],"matrix_rows":[65,384,408,69,6,64,392,256,32],"offset":189,"phase":0,"quadratic_rows":[5,4,7,24,136,0,0,272,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":95,"old":93,"rank":1,"right":{"linear_Z4":[1,1,0,3,3,0,0,3,2],"matrix_rows":[403,257,266,12,256,272,32,320,384],"offset":151,"phase":1,"quadratic_rows":[147,155,8,14,147,0,0,147,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,39,65,1,128,256,3,5],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":688,"old":93,"rank":3,"right":{"linear_Z4":[2,3,3,1,1,0,0,2,3],"matrix_rows":[10,388,4,149,134,256,24,32,64],"offset":62,"phase":1,"quadratic_rows":[148,142,151,26,157,0,0,279,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,17,34,70,4,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":712,"old":93,"rank":3,"right":{"linear_Z4":[2,1,0,2,0,0,0,3,2],"matrix_rows":[194,463,155,323,64,320,328,96,384],"offset":0,"phase":0,"quadratic_rows":[22,151,139,20,139,0,0,150,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":95,"old":94,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,2,0,0,0],"matrix_rows":[35,33,34,4,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,65,130,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":689,"old":94,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,3,2,2,3],"matrix_rows":[68,432,384,5,6,64,72,256,416],"offset":186,"phase":3,"quadratic_rows":[4,4,3,0,160,48,0,272,384]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,3,68,4,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":713,"old":94,"rank":3,"right":{"linear_Z4":[2,1,0,1,1,2,2,0,0],"matrix_rows":[66,12,16,3,72,64,48,128,256],"offset":25,"phase":3,"quadratic_rows":[2,11,72,78,48,16,12,0,0]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,134,264,3,5,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":95,"rank":5,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,1],"matrix_rows":[33,34,36,16,384,64,96,104,256],"offset":431,"phase":1,"quadratic_rows":[96,64,32,0,256,5,3,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,130,260,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":415,"old":95,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,2,0,1],"matrix_rows":[3,6,16,384,32,66,96,104,256],"offset":484,"phase":1,"quadratic_rows":[34,69,98,0,256,5,6,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,130,260,3,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":416,"old":95,"rank":4,"right":{"linear_Z4":[1,1,2,0,0,2,2,0,1],"matrix_rows":[6,5,16,384,103,32,64,104,256],"offset":389,"phase":0,"quadratic_rows":[99,67,32,0,256,5,3,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,131,260,1,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":421,"old":95,"rank":4,"right":{"linear_Z4":[2,0,0,0,0,2,2,0,1],"matrix_rows":[3,5,16,384,97,32,64,104,256],"offset":388,"phase":3,"quadratic_rows":[102,33,65,0,256,3,5,256,400]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,130,260,3,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":422,"old":95,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,2,0,0,1],"matrix_rows":[5,6,16,384,64,96,36,104,256],"offset":484,"phase":1,"quadratic_rows":[68,100,35,0,256,6,3,256,400]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":104,"old":96,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":105,"old":96,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":106,"old":96,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":107,"old":97,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,2,0,1,2],"matrix_rows":[407,289,290,260,8,304,256,64,384],"offset":0,"phase":0,"quadratic_rows":[183,183,151,0,183,19,0,151,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":108,"old":97,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":109,"old":97,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":107,"old":98,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":110,"old":98,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":111,"old":98,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":104,"old":99,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":112,"old":99,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":113,"old":99,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,2,0,0],"matrix_rows":[98,1,66,4,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":108,"old":100,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,2,1,2],"matrix_rows":[399,257,258,260,328,80,96,256,384],"offset":0,"phase":0,"quadratic_rows":[143,143,143,207,64,64,56,143,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":110,"old":100,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,2,1,2],"matrix_rows":[399,321,322,260,328,16,32,256,384],"offset":0,"phase":0,"quadratic_rows":[207,207,143,207,0,0,11,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":114,"old":100,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":105,"old":101,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":112,"old":101,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[81,65,18,4,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[17,16,0,16,11,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":115,"old":101,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":106,"old":102,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[98,33,66,4,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,32,0,11,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":113,"old":102,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":115,"old":102,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,2,0,0],"matrix_rows":[66,33,98,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":109,"old":103,"rank":1,"right":{"linear_Z4":[0,0,1,1,1,1,2,1,2],"matrix_rows":[444,65,66,260,328,272,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,64,188,252,188,188,11,188,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":111,"old":103,"rank":1,"right":{"linear_Z4":[0,0,1,1,1,1,2,1,2],"matrix_rows":[444,1,2,260,328,336,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,0,188,252,252,252,56,188,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":114,"old":103,"rank":1,"right":{"linear_Z4":[0,0,1,1,1,2,1,1,2],"matrix_rows":[476,33,34,260,264,304,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,32,220,220,252,19,220,220,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":535,"old":104,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":537,"old":104,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,3,3,2],"matrix_rows":[463,257,258,260,264,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[207,207,207,207,0,0,207,207,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":595,"old":104,"rank":2,"right":{"linear_Z4":[0,0,3,0,0,0,3,3,0],"matrix_rows":[384,196,1,2,388,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,324,0,0,0,324,384,196]}},{"left":{"linear_Z4":[2,3,3,3,3,0,0,0,0],"matrix_rows":[32,65,157,262,7,6,10,18,2],"offset":0,"phase":0,"quadratic_rows":[26,31,30,31,31,0,0,0,0]},"new":742,"old":104,"rank":5,"right":{"linear_Z4":[2,1,2,2,3,2,0,0,3],"matrix_rows":[510,472,452,412,348,3,48,476,32],"offset":511,"phase":1,"quadratic_rows":[2,463,290,274,280,452,290,290,510]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":117,"old":105,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":123,"old":105,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":119,"old":106,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":121,"old":106,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":535,"old":107,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":536,"old":107,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,2,0,0],"matrix_rows":[81,65,2,4,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,2,3,0,0,0,0],"matrix_rows":[34,66,132,8,257,1,3,16,20],"offset":0,"phase":0,"quadratic_rows":[2,1,20,0,20,0,0,0,0]},"new":743,"old":107,"rank":5,"right":{"linear_Z4":[3,3,0,2,0,0,1,0,1],"matrix_rows":[80,83,4,8,384,113,98,256,32],"offset":143,"phase":3,"quadratic_rows":[35,51,256,0,66,3,80,256,388]}},{"left":{"linear_Z4":[2,2,3,2,3,0,0,0,0],"matrix_rows":[33,65,132,3,258,2,8,16,20],"offset":0,"phase":0,"quadratic_rows":[2,1,20,0,20,0,0,0,0]},"new":744,"old":107,"rank":5,"right":{"linear_Z4":[3,3,0,1,0,0,2,0,1],"matrix_rows":[27,24,4,64,384,41,58,256,32],"offset":143,"phase":3,"quadratic_rows":[51,35,256,24,9,3,0,256,388]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":117,"old":108,"rank":1,"right":{"linear_Z4":[0,1,1,2,2,0,0,1,2],"matrix_rows":[166,33,258,260,40,16,256,320,384],"offset":240,"phase":0,"quadratic_rows":[32,422,422,32,0,399,0,422,166]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":108,"rank":1,"right":{"linear_Z4":[1,0,1,2,0,2,0,1,2],"matrix_rows":[149,257,18,260,24,256,32,320,384],"offset":240,"phase":0,"quadratic_rows":[405,16,405,16,399,0,0,405,149]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":118,"old":109,"rank":1,"right":{"linear_Z4":[3,1,3,2,1,3,0,3,2],"matrix_rows":[423,257,274,260,24,256,288,64,384],"offset":53,"phase":0,"quadratic_rows":[167,183,167,16,26,167,0,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":121,"old":109,"rank":1,"right":{"linear_Z4":[1,3,3,2,3,1,0,3,2],"matrix_rows":[407,289,258,260,40,272,256,64,384],"offset":83,"phase":0,"quadratic_rows":[183,151,151,32,151,41,0,151,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":119,"old":110,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":120,"old":110,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":116,"old":111,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[40,1,18,4,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,16,0,120,26,104,40,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":123,"old":111,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,33,2,4,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,0,0,120,88,41,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":118,"old":112,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":120,"old":112,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":116,"old":113,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":122,"old":113,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":534,"old":114,"rank":1,"right":{"linear_Z4":[1,3,3,3,2,0,1,3,2],"matrix_rows":[399,321,258,260,264,80,32,256,384],"offset":163,"phase":0,"quadratic_rows":[207,143,143,143,64,0,81,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":537,"old":114,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,35,67,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":594,"old":114,"rank":2,"right":{"linear_Z4":[2,0,0,0,2,0,1,0,3],"matrix_rows":[286,158,193,322,324,328,400,32,256],"offset":319,"phase":1,"quadratic_rows":[192,192,192,192,0,0,207,335,384]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,18,34,65,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":597,"old":114,"rank":2,"right":{"linear_Z4":[0,0,0,1,3,0,1,1,2],"matrix_rows":[3,479,289,306,256,264,32,320,384],"offset":1,"phase":1,"quadratic_rows":[252,236,219,223,221,3,223,223,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":534,"old":115,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":536,"old":115,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,0,3,2],"matrix_rows":[388,1,2,260,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,132,0,0,0,0,132,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":596,"old":115,"rank":2,"right":{"linear_Z4":[2,2,0,3,1,0,2,3,2],"matrix_rows":[80,392,1,18,4,264,64,96,384],"offset":207,"phase":2,"quadratic_rows":[0,16,0,136,18,0,0,136,0]}},{"left":{"linear_Z4":[2,2,3,3,3,0,0,0,0],"matrix_rows":[32,67,154,12,261,6,5,20,4],"offset":0,"phase":0,"quadratic_rows":[2,29,30,30,30,0,0,0,0]},"new":742,"old":115,"rank":5,"right":{"linear_Z4":[2,2,1,3,0,0,3,3,2],"matrix_rows":[114,510,440,436,316,19,96,444,64],"offset":444,"phase":2,"quadratic_rows":[18,509,206,206,323,322,510,206,114]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":124,"old":116,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[98,33,66,4,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,32,0,11,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,64,130,4,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":638,"old":116,"rank":3,"right":{"linear_Z4":[2,2,3,2,0,1,3,1,2],"matrix_rows":[388,66,96,5,64,256,40,80,384],"offset":248,"phase":3,"quadratic_rows":[4,0,133,32,0,104,96,132,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,18,36,64,128,258,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":670,"old":116,"rank":3,"right":{"linear_Z4":[3,1,0,2,0,1,2,2,3],"matrix_rows":[384,66,389,385,98,256,40,16,64],"offset":374,"phase":0,"quadratic_rows":[5,34,129,32,0,42,0,260,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":124,"old":117,"rank":1,"right":{"linear_Z4":[3,0,1,0,2,0,0,1,2],"matrix_rows":[149,257,18,260,24,256,32,320,384],"offset":162,"phase":1,"quadratic_rows":[405,16,405,16,399,0,0,405,149]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,39,71,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":639,"old":117,"rank":3,"right":{"linear_Z4":[2,0,0,3,3,0,2,0,2],"matrix_rows":[89,410,156,64,256,328,336,96,384],"offset":19,"phase":1,"quadratic_rows":[24,152,152,31,31,0,0,6,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,64,133,256,5,1,7],"offset":0,"phase":0,"quadratic_rows":[4,6,3,0,0,0,0,0,0]},"new":671,"old":117,"rank":3,"right":{"linear_Z4":[0,2,0,0,2,0,1,1,3],"matrix_rows":[210,66,272,147,320,20,24,64,32],"offset":1,"phase":1,"quadratic_rows":[146,321,16,16,269,0,450,193,338]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":124,"old":118,"rank":1,"right":{"linear_Z4":[1,0,3,1,0,0,0,3,0],"matrix_rows":[173,289,2,260,296,16,256,64,384],"offset":83,"phase":0,"quadratic_rows":[397,0,429,397,0,388,0,429,173]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,16,35,67,128,6,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":646,"old":118,"rank":3,"right":{"linear_Z4":[2,2,1,0,0,1,0,0,1],"matrix_rows":[169,9,288,261,166,256,424,16,64],"offset":57,"phase":0,"quadratic_rows":[420,164,167,256,0,167,0,295,393]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,22,34,65,129,4,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":680,"old":118,"rank":3,"right":{"linear_Z4":[2,2,0,1,0,0,0,3,2],"matrix_rows":[200,463,171,321,330,320,64,80,384],"offset":0,"phase":0,"quadratic_rows":[36,44,139,174,0,139,0,172,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":124,"old":119,"rank":1,"right":{"linear_Z4":[0,3,0,3,2,0,0,0,0],"matrix_rows":[26,1,18,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,130,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":647,"old":119,"rank":3,"right":{"linear_Z4":[3,2,0,3,3,0,0,2,3],"matrix_rows":[9,404,384,67,64,256,72,400,32],"offset":35,"phase":1,"quadratic_rows":[75,1,144,73,20,0,9,260,384]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,36,65,4,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":681,"old":119,"rank":3,"right":{"linear_Z4":[2,0,1,3,2,1,3,0,0],"matrix_rows":[106,34,4,11,96,20,32,128,256],"offset":27,"phase":0,"quadratic_rows":[10,33,20,73,4,34,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":124,"old":120,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,2,0,0,0],"matrix_rows":[41,33,2,4,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,129,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":690,"old":120,"rank":3,"right":{"linear_Z4":[2,1,0,2,0,3,2,2,3],"matrix_rows":[66,420,384,3,64,256,8,80,416],"offset":234,"phase":3,"quadratic_rows":[2,3,160,0,0,36,0,260,384]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,19,36,1,66,4,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":718,"old":120,"rank":3,"right":{"linear_Z4":[2,0,1,3,0,2,1,0,0],"matrix_rows":[74,66,4,11,64,36,80,128,256],"offset":27,"phase":0,"quadratic_rows":[10,65,36,73,0,4,74,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":124,"old":121,"rank":1,"right":{"linear_Z4":[0,1,3,1,0,0,0,3,0],"matrix_rows":[158,1,274,260,280,256,32,64,384],"offset":53,"phase":0,"quadratic_rows":[0,398,414,398,388,0,0,414,158]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,67,5,128,256,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":691,"old":121,"rank":3,"right":{"linear_Z4":[2,2,1,0,1,0,0,0,1],"matrix_rows":[10,154,272,149,262,256,408,32,64],"offset":58,"phase":0,"quadratic_rows":[148,404,151,256,151,0,0,279,394]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,22,34,65,4,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":719,"old":121,"rank":3,"right":{"linear_Z4":[2,2,0,1,0,0,0,3,2],"matrix_rows":[200,463,155,329,322,320,64,96,384],"offset":0,"phase":0,"quadratic_rows":[28,20,139,157,139,0,0,156,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":124,"old":122,"rank":1,"right":{"linear_Z4":[0,3,1,0,0,2,0,1,2],"matrix_rows":[166,33,258,260,40,16,256,320,384],"offset":196,"phase":1,"quadratic_rows":[32,422,422,32,0,399,0,422,166]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,39,66,135,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":700,"old":122,"rank":3,"right":{"linear_Z4":[0,2,0,3,0,3,2,0,2],"matrix_rows":[425,106,172,256,64,328,80,352,384],"offset":11,"phase":1,"quadratic_rows":[168,40,168,47,0,47,0,5,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,19,35,64,131,261,6,1,4],"offset":0,"phase":0,"quadratic_rows":[6,7,3,0,0,0,0,0,0]},"new":726,"old":122,"rank":3,"right":{"linear_Z4":[0,2,2,0,0,0,0,3,0],"matrix_rows":[198,294,96,163,320,356,40,336,256],"offset":422,"phase":3,"quadratic_rows":[162,1,128,32,0,393,384,229,96]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":124,"old":123,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[81,65,18,4,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[17,16,0,16,11,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,132,1,5,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":701,"old":123,"rank":3,"right":{"linear_Z4":[0,2,3,2,1,2,1,1,2],"matrix_rows":[65,388,48,32,6,256,24,96,384],"offset":244,"phase":1,"quadratic_rows":[96,4,134,16,88,65,113,132,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,36,64,129,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":727,"old":123,"rank":3,"right":{"linear_Z4":[1,3,0,2,1,0,2,2,3],"matrix_rows":[65,384,390,81,386,256,24,64,32],"offset":237,"phase":0,"quadratic_rows":[17,6,130,16,25,0,0,260,384]}},{"left":{"linear_Z4":[2,2,3,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,10,9,11,16,20],"offset":0,"phase":0,"quadratic_rows":[2,1,20,8,20,0,0,0,0]},"new":1,"old":124,"rank":5,"right":{"linear_Z4":[0,0,0,2,1,1,0,0,1],"matrix_rows":[49,50,4,8,384,80,96,256,112],"offset":239,"phase":1,"quadratic_rows":[96,80,256,112,58,57,11,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,68,130,2,259,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":415,"old":124,"rank":4,"right":{"linear_Z4":[2,1,0,2,2,0,2,0,1],"matrix_rows":[11,8,4,384,80,90,256,16,96],"offset":86,"phase":0,"quadratic_rows":[90,83,256,65,3,0,11,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,34,68,129,259,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":417,"old":124,"rank":4,"right":{"linear_Z4":[1,2,0,2,0,2,2,0,1],"matrix_rows":[8,11,4,384,105,96,256,32,80],"offset":101,"phase":0,"quadratic_rows":[99,105,256,66,0,3,11,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,66,132,4,261,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":419,"old":124,"rank":4,"right":{"linear_Z4":[2,1,0,2,2,0,2,0,1],"matrix_rows":[3,4,8,384,80,82,256,16,96],"offset":86,"phase":0,"quadratic_rows":[82,83,256,16,11,0,3,256,388]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,33,66,132,261,4,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":421,"old":124,"rank":4,"right":{"linear_Z4":[1,2,0,2,0,2,2,0,1],"matrix_rows":[3,4,8,384,97,96,256,32,80],"offset":102,"phase":0,"quadratic_rows":[99,97,256,32,0,11,3,256,388]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":133,"old":125,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,2,1,0,2],"matrix_rows":[343,289,290,260,8,304,256,320,128],"offset":0,"phase":0,"quadratic_rows":[119,119,87,0,119,19,87,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":134,"old":125,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,0,2],"matrix_rows":[311,321,258,324,8,336,288,256,128],"offset":0,"phase":0,"quadratic_rows":[119,55,119,0,119,55,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":135,"old":125,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,0,2],"matrix_rows":[311,257,322,324,8,272,352,256,128],"offset":0,"phase":0,"quadratic_rows":[55,119,119,0,55,119,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":136,"old":126,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":137,"old":126,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,65,2,196,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":138,"old":126,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,1,66,196,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,64,68,0,0,64,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":136,"old":127,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,2,1,2,0],"matrix_rows":[215,161,162,132,8,176,128,192,256],"offset":0,"phase":0,"quadratic_rows":[119,119,87,0,119,19,87,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":139,"old":127,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,2,0],"matrix_rows":[183,129,194,196,8,144,224,128,256],"offset":0,"phase":0,"quadratic_rows":[55,119,119,0,55,119,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":140,"old":127,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,1,2,2,0],"matrix_rows":[183,193,130,196,8,208,160,128,256],"offset":0,"phase":0,"quadratic_rows":[119,55,119,0,119,55,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":133,"old":128,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":141,"old":128,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,2],"matrix_rows":[260,1,66,324,8,16,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,64,68,0,0,64,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":142,"old":128,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,2],"matrix_rows":[260,65,2,324,8,80,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":137,"old":129,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":139,"old":129,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":143,"old":129,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":134,"old":130,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":141,"old":130,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":144,"old":130,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,2],"matrix_rows":[258,33,290,4,8,48,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":135,"old":131,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":142,"old":131,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":144,"old":131,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":138,"old":132,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":140,"old":132,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":143,"old":132,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,2,0],"matrix_rows":[130,33,162,4,8,48,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":541,"old":133,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":543,"old":133,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":599,"old":133,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,0,1,2,0],"matrix_rows":[3,64,33,50,4,24,32,192,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,192,64,0]}},{"left":{"linear_Z4":[2,2,3,2,3,0,0,0,0],"matrix_rows":[34,66,132,8,257,1,16,3,20],"offset":0,"phase":0,"quadratic_rows":[2,1,20,0,20,0,0,0,0]},"new":746,"old":133,"rank":5,"right":{"linear_Z4":[3,3,0,2,0,0,0,1,1],"matrix_rows":[144,147,4,8,320,177,162,256,32],"offset":143,"phase":3,"quadratic_rows":[35,51,256,0,130,3,256,144,324]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":146,"old":134,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":152,"old":134,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":148,"old":135,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":150,"old":135,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":541,"old":136,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":542,"old":136,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,2,3,0,0,0,0],"matrix_rows":[34,66,132,8,257,1,16,20,3],"offset":0,"phase":0,"quadratic_rows":[2,1,20,0,20,0,0,0,0]},"new":747,"old":136,"rank":5,"right":{"linear_Z4":[3,3,0,2,0,0,0,1,1],"matrix_rows":[272,275,4,8,192,305,290,128,32],"offset":143,"phase":3,"quadratic_rows":[35,51,128,0,258,3,128,196,272]}},{"left":{"linear_Z4":[3,3,2,2,2,0,0,0,0],"matrix_rows":[32,67,144,8,1,2,276,20,4],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":748,"old":136,"rank":5,"right":{"linear_Z4":[2,0,1,2,3,3,3,2,0],"matrix_rows":[50,2,320,8,388,19,32,452,128],"offset":107,"phase":1,"quadratic_rows":[18,1,68,0,49,48,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":146,"old":137,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":137,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":147,"old":138,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":150,"old":138,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":148,"old":139,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":149,"old":139,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":145,"old":140,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":152,"old":140,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,2],"matrix_rows":[290,1,258,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":147,"old":141,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":149,"old":141,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":145,"old":142,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,2,0],"matrix_rows":[162,1,130,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,34,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":151,"old":142,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":540,"old":143,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,2],"matrix_rows":[273,257,2,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":543,"old":143,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,0,2],"matrix_rows":[324,1,2,260,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,19,35,65,128,1,256,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":598,"old":143,"rank":2,"right":{"linear_Z4":[3,2,2,2,3,0,2,0,2],"matrix_rows":[30,335,321,258,260,264,80,32,128],"offset":3,"phase":2,"quadratic_rows":[15,81,81,81,94,0,30,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,129,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":601,"old":143,"rank":2,"right":{"linear_Z4":[2,2,0,3,1,0,3,2,2],"matrix_rows":[144,328,1,18,4,264,128,160,320],"offset":207,"phase":2,"quadratic_rows":[0,16,0,72,18,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":540,"old":144,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,2,0],"matrix_rows":[145,129,2,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":542,"old":144,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,0,3,2,0],"matrix_rows":[196,1,2,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,68,0,0,0,68,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,129,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":600,"old":144,"rank":2,"right":{"linear_Z4":[2,2,0,3,1,0,3,2,2],"matrix_rows":[272,200,1,18,4,136,256,288,192],"offset":207,"phase":2,"quadratic_rows":[0,16,0,72,18,0,72,0,0]}},{"left":{"linear_Z4":[3,2,2,2,2,0,0,0,0],"matrix_rows":[34,66,4,8,129,257,16,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":746,"old":144,"rank":5,"right":{"linear_Z4":[3,3,2,2,2,0,2,3,0],"matrix_rows":[400,147,4,8,64,401,386,256,288],"offset":30,"phase":0,"quadratic_rows":[259,275,0,0,386,0,0,400,147]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":153,"old":145,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,2,0],"matrix_rows":[130,33,162,4,8,48,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,4,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":640,"old":145,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,3,0],"matrix_rows":[17,170,160,69,128,64,168,80,256],"offset":19,"phase":1,"quadratic_rows":[85,40,1,10,81,130,17,160,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,32,1,66,132,258,4,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":678,"old":145,"rank":3,"right":{"linear_Z4":[2,2,2,3,1,0,0,3,2],"matrix_rows":[130,272,170,1,138,20,256,128,320],"offset":362,"phase":1,"quadratic_rows":[0,160,16,40,20,10,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":153,"old":146,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,2],"matrix_rows":[258,33,290,4,8,48,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,34,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,4,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":641,"old":146,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,0,3],"matrix_rows":[17,298,288,69,256,64,296,80,128],"offset":19,"phase":1,"quadratic_rows":[85,40,1,10,81,258,17,0,288]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,32,1,66,132,258,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":679,"old":146,"rank":3,"right":{"linear_Z4":[2,2,2,3,1,0,0,2,3],"matrix_rows":[258,144,298,1,266,20,128,256,192],"offset":362,"phase":1,"quadratic_rows":[0,288,16,40,20,10,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":153,"old":147,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,2,0,0,2],"matrix_rows":[6,33,290,260,8,48,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,294,262,0,32,19,0,0,6]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[14,16,35,71,4,134,5,262,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":648,"old":147,"rank":3,"right":{"linear_Z4":[2,0,3,3,2,0,2,0,1],"matrix_rows":[124,25,269,261,38,320,376,256,384],"offset":236,"phase":1,"quadratic_rows":[16,36,278,24,269,2,0,0,276]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,20,36,1,7,67,131,259,3],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":672,"old":147,"rank":3,"right":{"linear_Z4":[0,3,3,1,1,2,0,0,2],"matrix_rows":[56,9,15,57,306,276,256,320,384],"offset":243,"phase":2,"quadratic_rows":[62,319,287,15,55,19,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":153,"old":148,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[6,33,98,68,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,102,70,0,32,19,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,70,128,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":649,"old":148,"rank":3,"right":{"linear_Z4":[0,2,0,2,0,2,2,0,2],"matrix_rows":[257,12,108,256,38,64,104,16,384],"offset":48,"phase":2,"quadratic_rows":[0,36,2,0,0,2,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,3,68,130,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":673,"old":148,"rank":3,"right":{"linear_Z4":[0,3,3,1,0,0,0,0,2],"matrix_rows":[46,40,272,1,74,108,256,64,384],"offset":3,"phase":2,"quadratic_rows":[0,102,70,40,0,10,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":153,"old":149,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,2,0,0,2],"matrix_rows":[279,289,290,260,8,304,256,320,128],"offset":1,"phase":1,"quadratic_rows":[55,55,23,0,55,19,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,65,4,130,2,5,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":698,"old":149,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,3,0],"matrix_rows":[153,34,144,128,70,64,152,96,256],"offset":11,"phase":1,"quadratic_rows":[24,102,2,9,129,98,34,144,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,1,68,130,258,4,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":720,"old":149,"rank":3,"right":{"linear_Z4":[2,2,2,3,0,1,0,3,2],"matrix_rows":[129,288,153,137,2,36,128,256,320],"offset":434,"phase":1,"quadratic_rows":[144,0,32,24,9,36,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":153,"old":150,"rank":1,"right":{"linear_Z4":[3,3,3,0,3,2,0,2,0],"matrix_rows":[151,161,162,132,8,176,128,192,256],"offset":1,"phase":1,"quadratic_rows":[55,55,23,0,55,19,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,65,4,130,2,256,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":699,"old":150,"rank":3,"right":{"linear_Z4":[0,3,2,3,2,3,0,0,3],"matrix_rows":[281,34,272,256,70,64,280,96,128],"offset":11,"phase":1,"quadratic_rows":[24,102,2,9,257,98,34,0,272]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,1,68,130,258,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":721,"old":150,"rank":3,"right":{"linear_Z4":[2,2,2,3,0,1,0,2,3],"matrix_rows":[257,160,281,265,2,36,256,128,192],"offset":434,"phase":1,"quadratic_rows":[272,0,32,24,9,36,0,0,257]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":153,"old":151,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,35,71,133,4,6,261,5],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":692,"old":151,"rank":3,"right":{"linear_Z4":[0,2,3,3,0,2,2,0,1],"matrix_rows":[42,124,270,21,262,320,376,256,384],"offset":244,"phase":1,"quadratic_rows":[20,32,293,40,1,270,0,0,292]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,21,36,2,67,7,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":728,"old":151,"rank":3,"right":{"linear_Z4":[3,0,3,1,2,1,0,0,2],"matrix_rows":[10,56,15,305,58,292,256,320,384],"offset":235,"phase":2,"quadratic_rows":[319,61,303,15,35,55,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":153,"old":152,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,2,0,0,0],"matrix_rows":[19,289,290,4,8,304,256,64,384],"offset":1,"phase":1,"quadratic_rows":[307,307,0,0,307,19,0,0,19]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,37,69,1,128,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":693,"old":152,"rank":3,"right":{"linear_Z4":[2,0,0,2,2,0,2,0,2],"matrix_rows":[12,258,92,21,256,64,88,32,384],"offset":40,"phase":2,"quadratic_rows":[20,0,1,0,1,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,3,66,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":729,"old":152,"rank":3,"right":{"linear_Z4":[3,0,3,1,0,0,0,0,2],"matrix_rows":[29,24,288,73,2,92,64,256,384],"offset":3,"phase":2,"quadratic_rows":[85,0,69,24,9,0,5,0,0]}},{"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,16,19,21,273,17],"offset":0,"phase":0,"quadratic_rows":[6,19,21,0,6,0,0,0,0]},"new":1,"old":153,"rank":5,"right":{"linear_Z4":[2,0,0,2,2,0,0,0,0],"matrix_rows":[353,258,260,8,112,256,288,320,384],"offset":254,"phase":1,"quadratic_rows":[96,32,64,0,96,19,21,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,43,68,2,8,137,13,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":415,"old":153,"rank":4,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,1],"matrix_rows":[331,258,260,90,256,266,320,288,384],"offset":85,"phase":0,"quadratic_rows":[74,283,64,19,74,0,21,0,258]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,34,68,9,129,3,5,257,1],"offset":0,"phase":0,"quadratic_rows":[15,3,5,9,0,0,0,0,0]},"new":417,"old":153,"rank":4,"right":{"linear_Z4":[1,0,0,3,0,1,1,0,2],"matrix_rows":[376,258,260,273,281,288,320,256,384],"offset":102,"phase":0,"quadratic_rows":[9,32,64,105,96,122,124,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,35,69,9,129,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[15,3,5,9,0,0,0,0,0]},"new":420,"old":153,"rank":4,"right":{"linear_Z4":[1,1,1,3,0,1,1,0,2],"matrix_rows":[382,258,260,279,287,288,320,256,384],"offset":102,"phase":0,"quadratic_rows":[9,342,310,105,102,124,122,0,6]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,77,4,8,11,137,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":422,"old":153,"rank":4,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,1],"matrix_rows":[301,258,260,60,256,288,268,320,384],"offset":51,"phase":0,"quadratic_rows":[44,32,285,21,44,19,0,0,260]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":162,"old":154,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":163,"old":154,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,1,2,1,2],"matrix_rows":[423,257,258,260,72,80,352,256,384],"offset":0,"phase":0,"quadratic_rows":[167,167,167,64,64,231,56,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":164,"old":154,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,1,2,1,2],"matrix_rows":[423,257,322,324,8,16,352,256,384],"offset":0,"phase":0,"quadratic_rows":[167,231,231,0,0,231,38,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":165,"old":155,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,2,0,0],"matrix_rows":[68,1,18,84,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":166,"old":155,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":167,"old":155,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,2,0,0,0],"matrix_rows":[50,1,34,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":165,"old":156,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":168,"old":156,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":169,"old":156,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,2,0,0,0],"matrix_rows":[50,1,34,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":162,"old":157,"rank":1,"right":{"linear_Z4":[1,0,0,1,2,1,1,1,2],"matrix_rows":[489,257,18,20,280,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[233,16,16,249,14,233,233,233,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":170,"old":157,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,1,2,1,2],"matrix_rows":[441,257,66,68,264,272,352,256,384],"offset":0,"phase":0,"quadratic_rows":[185,64,64,185,185,249,38,185,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":171,"old":157,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,1,2,1,2],"matrix_rows":[441,257,2,4,328,336,352,256,384],"offset":0,"phase":0,"quadratic_rows":[185,0,0,249,249,249,56,185,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":166,"old":158,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,2,0,0],"matrix_rows":[84,1,2,68,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":168,"old":158,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":172,"old":158,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":163,"old":159,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":170,"old":159,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":173,"old":159,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,0,1,2],"matrix_rows":[399,257,274,276,280,256,32,64,384],"offset":0,"phase":0,"quadratic_rows":[143,159,159,159,14,0,0,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":164,"old":160,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":171,"old":160,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":173,"old":160,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":167,"old":161,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,2,0,0],"matrix_rows":[84,1,2,68,8,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":169,"old":161,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":172,"old":161,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,2,0,0,0],"matrix_rows":[34,1,50,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":547,"old":162,"rank":1,"right":{"linear_Z4":[3,1,3,2,0,3,1,3,2],"matrix_rows":[423,257,322,260,72,16,288,256,384],"offset":149,"phase":0,"quadratic_rows":[167,231,167,64,0,167,74,167,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":549,"old":162,"rank":1,"right":{"linear_Z4":[3,3,1,2,0,1,3,3,2],"matrix_rows":[455,257,258,292,40,16,256,320,384],"offset":89,"phase":0,"quadratic_rows":[199,199,231,32,0,44,199,199,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,35,64,131,259,2,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":603,"old":162,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,0,1,0,3],"matrix_rows":[173,301,321,194,324,392,16,352,256],"offset":415,"phase":1,"quadratic_rows":[192,192,192,0,0,192,231,359,384]}},{"left":{"linear_Z4":[3,3,3,3,3,0,0,0,0],"matrix_rows":[33,66,130,260,4,6,8,16,31],"offset":0,"phase":0,"quadratic_rows":[31,27,29,31,31,0,0,0,0]},"new":750,"old":162,"rank":5,"right":{"linear_Z4":[0,1,1,0,0,1,0,0,2],"matrix_rows":[1,302,296,320,384,256,50,60,16],"offset":0,"phase":0,"quadratic_rows":[256,286,278,34,6,40,256,256,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":175,"old":163,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,2,36,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,32,120,88,44,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":181,"old":163,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,34,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,32,0,88,120,50,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":177,"old":164,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,66,100,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,70,102,32,0,44,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":179,"old":164,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,98,68,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,102,70,0,32,50,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":547,"old":165,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":548,"old":165,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,2,9,1],"offset":0,"phase":0,"quadratic_rows":[9,4,6,1,0,0,0,0,0]},"new":605,"old":165,"rank":4,"right":{"linear_Z4":[3,2,0,3,3,3,1,3,0],"matrix_rows":[384,92,68,161,385,14,80,64,416],"offset":110,"phase":1,"quadratic_rows":[289,12,66,26,24,289,68,384,161]}},{"left":{"linear_Z4":[3,2,2,3,3,0,0,0,0],"matrix_rows":[60,64,134,259,5,9,3,17,1],"offset":0,"phase":0,"quadratic_rows":[29,4,27,29,29,0,0,0,0]},"new":752,"old":165,"rank":5,"right":{"linear_Z4":[1,2,2,0,0,3,3,3,2],"matrix_rows":[440,92,509,409,313,441,14,80,64],"offset":377,"phase":2,"quadratic_rows":[229,12,507,326,324,229,509,229,92]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":175,"old":166,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":180,"old":166,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":176,"old":167,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":179,"old":167,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":177,"old":168,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":178,"old":168,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":174,"old":169,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":181,"old":169,"rank":1,"right":{"linear_Z4":[3,3,3,3,3,0,0,3,2],"matrix_rows":[415,257,258,260,264,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[159,159,159,159,159,0,0,159,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":176,"old":170,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,98,68,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,102,70,0,32,50,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":178,"old":170,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,1,66,100,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,70,102,32,0,44,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":174,"old":171,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,34,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,32,0,88,120,50,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":180,"old":171,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,1,2,36,104,80,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,32,120,88,44,24,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":546,"old":172,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,0,3,2],"matrix_rows":[385,257,2,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[129,0,0,0,0,0,0,129,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":549,"old":172,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,8,16,32,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":602,"old":172,"rank":2,"right":{"linear_Z4":[3,0,0,0,0,0,3,3,0],"matrix_rows":[384,193,385,2,4,8,16,32,448],"offset":2,"phase":1,"quadratic_rows":[321,0,0,0,0,0,321,384,193]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,18,33,65,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":606,"old":172,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,0,2,2,3],"matrix_rows":[488,231,297,290,300,32,48,320,384],"offset":120,"phase":0,"quadratic_rows":[463,455,463,453,0,0,15,15,271]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":546,"old":173,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":548,"old":173,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":604,"old":173,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,2,2,0,0],"matrix_rows":[1,70,33,66,68,8,16,128,256],"offset":2,"phase":1,"quadratic_rows":[33,6,6,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,3,0,0,0,0],"matrix_rows":[33,66,130,260,4,6,8,16,17],"offset":0,"phase":0,"quadratic_rows":[17,4,2,0,17,0,0,0,0]},"new":750,"old":173,"rank":5,"right":{"linear_Z4":[0,3,3,0,0,1,2,0,1],"matrix_rows":[1,46,40,64,384,256,50,60,16],"offset":47,"phase":3,"quadratic_rows":[256,30,22,34,6,40,0,256,385]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":182,"old":174,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,2,0,0,0],"matrix_rows":[34,1,50,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,1,32,68,6,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":638,"old":174,"rank":3,"right":{"linear_Z4":[1,0,2,2,1,1,2,0,0],"matrix_rows":[1,34,80,5,64,24,96,128,256],"offset":100,"phase":3,"quadratic_rows":[5,96,1,16,56,114,34,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,64,132,4,256,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":654,"old":174,"rank":3,"right":{"linear_Z4":[0,1,3,2,3,2,0,2,3],"matrix_rows":[389,384,50,256,34,388,24,32,64],"offset":201,"phase":2,"quadratic_rows":[132,18,5,16,26,0,0,257,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":182,"old":175,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,3,0],"matrix_rows":[133,257,18,276,24,256,32,320,384],"offset":1,"phase":1,"quadratic_rows":[389,16,405,16,14,0,0,389,133]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,2,20,35,67,132,4,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":639,"old":175,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[473,154,196,320,64,328,336,96,384],"offset":9,"phase":0,"quadratic_rows":[152,152,128,3,3,0,0,135,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,16,38,64,129,6,263,2,5],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":655,"old":175,"rank":3,"right":{"linear_Z4":[2,2,0,0,2,1,0,1,3],"matrix_rows":[304,437,53,49,134,32,24,288,320],"offset":48,"phase":2,"quadratic_rows":[432,132,290,16,425,437,0,435,437]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":182,"old":176,"rank":1,"right":{"linear_Z4":[1,0,0,1,2,0,0,1,2],"matrix_rows":[393,257,18,20,280,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[137,16,16,153,14,0,0,137,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,16,33,64,134,6,263,2,5],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":648,"old":176,"rank":3,"right":{"linear_Z4":[2,0,2,2,0,1,0,1,3],"matrix_rows":[292,437,53,37,6,288,152,32,320],"offset":192,"phase":2,"quadratic_rows":[420,4,419,144,296,437,0,429,437]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,19,35,2,68,132,4,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":664,"old":176,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[455,142,208,320,322,324,64,96,384],"offset":9,"phase":0,"quadratic_rows":[134,9,9,134,128,0,0,153,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":182,"old":177,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,129,2,256,4,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":649,"old":177,"rank":3,"right":{"linear_Z4":[0,2,3,1,3,2,0,2,3],"matrix_rows":[401,44,384,256,6,32,40,400,64],"offset":57,"phase":2,"quadratic_rows":[144,4,14,12,17,0,0,257,384]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,1,6,4,128,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":665,"old":177,"rank":3,"right":{"linear_Z4":[1,2,1,0,2,1,2,0,0],"matrix_rows":[1,68,40,17,6,96,64,128,256],"offset":50,"phase":3,"quadratic_rows":[17,4,38,96,1,108,40,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":182,"old":178,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,0,1,2],"matrix_rows":[399,257,274,276,280,256,32,64,384],"offset":0,"phase":0,"quadratic_rows":[143,159,159,159,14,0,0,143,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,64,134,1,256,2,5],"offset":0,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]},"new":706,"old":178,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,0,3,0],"matrix_rows":[260,432,48,5,6,32,152,288,64],"offset":198,"phase":0,"quadratic_rows":[4,4,291,144,40,180,0,424,132]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,21,37,66,4,130,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":722,"old":178,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[455,200,150,320,322,324,64,96,384],"offset":9,"phase":0,"quadratic_rows":[134,17,17,128,134,0,0,153,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":182,"old":179,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,2,0,0],"matrix_rows":[8,1,18,20,88,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,88,14,0,8,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,65,130,256,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":707,"old":179,"rank":3,"right":{"linear_Z4":[0,2,3,3,1,0,2,2,3],"matrix_rows":[393,84,384,256,6,64,392,80,32],"offset":57,"phase":2,"quadratic_rows":[136,4,22,9,20,0,0,257,384]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,1,68,4,6,128,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":723,"old":179,"rank":3,"right":{"linear_Z4":[1,2,1,2,0,2,1,0,0],"matrix_rows":[1,36,80,9,6,96,32,128,256],"offset":50,"phase":3,"quadratic_rows":[9,4,70,1,96,80,116,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":182,"old":180,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,2,0,0],"matrix_rows":[68,1,18,84,24,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,1,18,32,68,2,6,128,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":716,"old":180,"rank":3,"right":{"linear_Z4":[1,2,0,2,1,2,1,0,0],"matrix_rows":[1,68,48,3,32,24,96,128,256],"offset":100,"phase":3,"quadratic_rows":[3,1,96,16,88,68,116,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,64,132,256,4,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":732,"old":180,"rank":3,"right":{"linear_Z4":[0,3,1,2,3,0,2,2,3],"matrix_rows":[387,384,84,256,386,68,24,64,32],"offset":201,"phase":2,"quadratic_rows":[130,3,20,16,28,0,0,257,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":182,"old":181,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,3,0],"matrix_rows":[131,257,274,20,24,256,288,64,384],"offset":1,"phase":1,"quadratic_rows":[387,403,16,16,14,0,0,387,131]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,37,69,130,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":717,"old":181,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[473,194,156,320,64,328,336,96,384],"offset":9,"phase":0,"quadratic_rows":[152,128,152,5,5,0,0,135,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,38,64,129,1,256,2,5],"offset":0,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]},"new":733,"old":181,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,1,0,3,0],"matrix_rows":[272,420,36,17,134,288,24,32,64],"offset":54,"phase":0,"quadratic_rows":[16,132,34,16,297,180,0,418,144]}},{"left":{"linear_Z4":[3,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,14,12,10,16,17],"offset":0,"phase":0,"quadratic_rows":[17,4,2,8,17,0,0,0,0]},"new":1,"old":182,"rank":5,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,1],"matrix_rows":[1,98,100,8,384,256,48,80,112],"offset":239,"phase":1,"quadratic_rows":[256,80,48,112,14,108,106,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,36,68,130,262,6,2,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":415,"old":182,"rank":4,"right":{"linear_Z4":[0,1,2,2,0,2,2,0,1],"matrix_rows":[1,8,14,384,256,106,96,64,48],"offset":83,"phase":0,"quadratic_rows":[256,102,106,36,0,14,6,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,66,132,262,4,6,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":418,"old":182,"rank":4,"right":{"linear_Z4":[0,2,1,2,0,2,2,0,1],"matrix_rows":[1,6,8,384,256,96,100,32,80],"offset":53,"phase":0,"quadratic_rows":[256,100,102,32,0,14,6,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,66,132,262,6,4,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":419,"old":182,"rank":4,"right":{"linear_Z4":[0,1,2,2,0,2,2,0,1],"matrix_rows":[1,6,8,384,256,98,96,64,48],"offset":85,"phase":0,"quadratic_rows":[256,102,98,64,0,6,14,256,385]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,66,132,262,4,6,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":422,"old":182,"rank":4,"right":{"linear_Z4":[0,2,1,2,0,2,2,0,1],"matrix_rows":[1,14,8,384,256,96,108,32,80],"offset":53,"phase":0,"quadratic_rows":[256,108,102,66,0,6,14,256,385]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":191,"old":183,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,2,0],"matrix_rows":[132,1,18,148,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":192,"old":183,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":193,"old":183,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":194,"old":184,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":195,"old":184,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":196,"old":184,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":194,"old":185,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,0,2],"matrix_rows":[260,1,18,276,24,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":197,"old":185,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":198,"old":185,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":191,"old":186,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":199,"old":186,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":200,"old":186,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":195,"old":187,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,0,2],"matrix_rows":[287,321,258,324,264,336,32,256,128],"offset":0,"phase":0,"quadratic_rows":[95,31,95,31,95,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":197,"old":187,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,0,2],"matrix_rows":[287,321,322,260,328,272,32,256,128],"offset":0,"phase":0,"quadratic_rows":[95,95,31,95,31,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":201,"old":187,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,1,0,2],"matrix_rows":[335,257,274,276,280,256,32,320,128],"offset":0,"phase":0,"quadratic_rows":[79,95,95,95,14,0,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":192,"old":188,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,0,64,0,64,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":199,"old":188,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":202,"old":188,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":193,"old":189,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,2,0],"matrix_rows":[159,193,194,132,200,144,32,128,256],"offset":0,"phase":0,"quadratic_rows":[95,95,31,95,31,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":200,"old":189,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,0,2,2,0],"matrix_rows":[159,193,130,196,136,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[95,31,95,31,95,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":202,"old":189,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,0,1,2,0],"matrix_rows":[207,129,146,148,152,128,32,192,256],"offset":0,"phase":0,"quadratic_rows":[79,95,95,95,14,0,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":196,"old":190,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,2],"matrix_rows":[257,321,66,4,72,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":198,"old":190,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,2],"matrix_rows":[257,321,2,68,8,80,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,0,64,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":201,"old":190,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":553,"old":191,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":555,"old":191,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,34,64,131,2,256,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":608,"old":191,"rank":2,"right":{"linear_Z4":[2,3,2,3,0,2,2,0,2],"matrix_rows":[359,45,257,322,260,72,16,288,128],"offset":3,"phase":2,"quadratic_rows":[74,39,74,109,0,74,45,0,0]}},{"left":{"linear_Z4":[3,2,3,2,3,0,0,0,0],"matrix_rows":[48,64,134,258,4,8,17,2,1],"offset":0,"phase":0,"quadratic_rows":[17,4,6,0,17,0,0,0,0]},"new":754,"old":191,"rank":5,"right":{"linear_Z4":[1,2,0,3,3,2,3,1,0],"matrix_rows":[320,156,132,32,257,321,14,144,128],"offset":206,"phase":1,"quadratic_rows":[65,12,130,26,24,0,65,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":204,"old":192,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":210,"old":192,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":206,"old":193,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":208,"old":193,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":553,"old":194,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":554,"old":194,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,9,1,2],"offset":0,"phase":0,"quadratic_rows":[9,4,6,1,0,0,0,0,0]},"new":610,"old":194,"rank":4,"right":{"linear_Z4":[3,2,0,3,3,3,3,0,1],"matrix_rows":[192,284,260,97,193,14,272,256,224],"offset":110,"phase":1,"quadratic_rows":[161,12,258,26,24,161,192,97,260]}},{"left":{"linear_Z4":[2,3,2,2,2,0,0,0,0],"matrix_rows":[1,36,68,130,258,8,16,6,2],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":756,"old":194,"rank":5,"right":{"linear_Z4":[2,3,3,2,0,2,2,3,0],"matrix_rows":[1,392,142,32,64,394,388,256,272],"offset":29,"phase":0,"quadratic_rows":[0,262,270,388,0,0,0,392,142]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":204,"old":195,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":195,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":205,"old":196,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":208,"old":196,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":206,"old":197,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":207,"old":197,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":203,"old":198,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":210,"old":198,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,2,0],"matrix_rows":[148,1,2,132,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":205,"old":199,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":207,"old":199,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":203,"old":200,"rank":1,"right":{"linear_Z4":[0,0,3,0,3,0,0,0,2],"matrix_rows":[276,1,2,260,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":209,"old":200,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":552,"old":201,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,2,0],"matrix_rows":[193,129,2,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":555,"old":201,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,2,0],"matrix_rows":[138,1,130,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,33,64,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":607,"old":201,"rank":2,"right":{"linear_Z4":[0,0,3,3,0,2,1,2,0],"matrix_rows":[44,64,1,2,36,40,16,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,192,64,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,1,128,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":611,"old":201,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,2,0,2,0],"matrix_rows":[1,134,33,130,132,8,16,64,256],"offset":2,"phase":1,"quadratic_rows":[33,6,6,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":552,"old":202,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,0,3,0,2],"matrix_rows":[321,257,2,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[65,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":554,"old":202,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,2],"matrix_rows":[266,1,258,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,64,1,128,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":609,"old":202,"rank":2,"right":{"linear_Z4":[1,3,3,0,0,2,0,0,2],"matrix_rows":[1,262,33,258,260,8,16,64,128],"offset":2,"phase":1,"quadratic_rows":[33,6,6,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[48,64,134,2,4,8,273,17,1],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"new":754,"old":202,"rank":5,"right":{"linear_Z4":[1,2,0,3,3,2,3,2,0],"matrix_rows":[320,28,4,32,385,449,14,16,128],"offset":206,"phase":1,"quadratic_rows":[65,12,2,26,24,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":211,"old":203,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,0,2],"matrix_rows":[271,257,274,276,280,256,32,320,128],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,70,128,4,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":640,"old":203,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,3,0,3,2],"matrix_rows":[260,170,136,5,128,256,168,16,320],"offset":425,"phase":1,"quadratic_rows":[4,40,5,130,0,34,0,136,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,22,32,68,129,2,257,4,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":662,"old":203,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,3,0,3,2],"matrix_rows":[272,130,170,17,162,4,128,256,320],"offset":425,"phase":1,"quadratic_rows":[16,136,0,34,17,40,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":211,"old":204,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,2,0],"matrix_rows":[143,129,146,148,152,128,32,192,256],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,70,128,4,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":641,"old":204,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,3,0,2,3],"matrix_rows":[132,298,264,5,256,128,296,16,192],"offset":425,"phase":1,"quadratic_rows":[4,40,5,258,0,34,0,0,264]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,22,32,68,129,2,257,1,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":663,"old":204,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,3,0,2,3],"matrix_rows":[144,258,298,17,290,4,256,128,192],"offset":425,"phase":1,"quadratic_rows":[16,264,0,34,17,40,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":211,"old":205,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[11,23,3,36,6,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[6,1,1,0,0,0,0,0,0]},"new":646,"old":205,"rank":3,"right":{"linear_Z4":[0,3,2,3,1,2,0,0,0],"matrix_rows":[55,7,30,5,54,56,64,128,256],"offset":5,"phase":2,"quadratic_rows":[52,26,25,46,55,25,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,35,70,7,4,134,262,6],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":656,"old":205,"rank":3,"right":{"linear_Z4":[3,3,0,2,1,1,0,0,2],"matrix_rows":[39,36,56,273,282,60,256,320,384],"offset":222,"phase":2,"quadratic_rows":[311,319,59,22,31,39,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":211,"old":206,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,0,0,0,0],"matrix_rows":[14,1,274,276,280,256,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,286,286,286,14,0,0,0,14]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,128,1,3,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":647,"old":206,"rank":3,"right":{"linear_Z4":[3,1,0,3,0,2,0,0,2],"matrix_rows":[34,9,260,99,64,256,104,16,384],"offset":3,"phase":2,"quadratic_rows":[107,3,0,105,0,9,9,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[10,18,32,65,132,3,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":657,"old":206,"rank":3,"right":{"linear_Z4":[3,3,0,0,0,1,0,0,2],"matrix_rows":[40,43,272,105,98,4,64,256,384],"offset":3,"phase":2,"quadratic_rows":[67,75,0,34,0,40,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":211,"old":207,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,0,2],"matrix_rows":[260,1,18,276,24,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,66,2,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":714,"old":207,"rank":2,"right":{"linear_Z4":[2,1,0,2,1,2,0,2,0],"matrix_rows":[130,16,3,128,4,8,48,192,256],"offset":173,"phase":1,"quadratic_rows":[2,3,0,0,48,16,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,132,2,257,1,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":724,"old":207,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,3,0,2,3],"matrix_rows":[136,260,308,9,2,292,128,256,192],"offset":345,"phase":1,"quadratic_rows":[8,0,272,9,36,48,0,0,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":211,"old":208,"rank":1,"right":{"linear_Z4":[0,0,1,0,2,0,0,2,0],"matrix_rows":[132,1,18,148,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,20,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,66,2,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":715,"old":208,"rank":2,"right":{"linear_Z4":[2,1,0,2,1,2,0,0,2],"matrix_rows":[258,16,3,256,4,8,48,320,128],"offset":173,"phase":1,"quadratic_rows":[2,3,0,0,48,16,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,132,2,257,4,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":725,"old":208,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,3,0,3,2],"matrix_rows":[264,132,180,9,2,164,256,128,320],"offset":345,"phase":1,"quadratic_rows":[8,0,144,9,36,48,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":211,"old":209,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[5,65,18,84,24,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,16,85,16,14,0,5,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[12,18,37,64,132,1,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":708,"old":209,"rank":3,"right":{"linear_Z4":[3,0,1,0,3,2,0,0,2],"matrix_rows":[36,258,17,101,256,64,8,112,384],"offset":5,"phase":2,"quadratic_rows":[117,0,5,0,113,17,17,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[10,16,34,68,129,3,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":730,"old":209,"rank":3,"right":{"linear_Z4":[3,0,3,0,0,1,0,0,2],"matrix_rows":[48,53,264,113,2,100,256,64,384],"offset":3,"phase":2,"quadratic_rows":[69,0,85,0,36,48,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":211,"old":210,"rank":1,"right":{"linear_Z4":[1,0,1,0,2,0,0,0,2],"matrix_rows":[5,257,18,276,24,256,32,320,384],"offset":0,"phase":0,"quadratic_rows":[261,16,277,16,14,0,0,0,5]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,22,35,71,5,4,134,262,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":709,"old":210,"rank":3,"right":{"linear_Z4":[0,2,3,3,1,2,0,0,1],"matrix_rows":[44,42,286,21,278,256,312,320,384],"offset":244,"phase":1,"quadratic_rows":[20,32,309,40,309,286,0,0,308]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,21,33,7,70,2,134,262,6],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":731,"old":210,"rank":3,"right":{"linear_Z4":[3,0,3,1,2,1,0,0,2],"matrix_rows":[39,56,34,265,58,284,256,320,384],"offset":238,"phase":2,"quadratic_rows":[303,61,319,31,14,39,0,0,5]}},{"left":{"linear_Z4":[3,2,3,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,14,16,11,266,10],"offset":0,"phase":0,"quadratic_rows":[11,5,14,5,0,0,0,0,0]},"new":1,"old":211,"rank":5,"right":{"linear_Z4":[0,2,0,2,0,2,0,0,0],"matrix_rows":[257,338,260,88,32,320,256,272,384],"offset":253,"phase":1,"quadratic_rows":[64,80,16,80,14,0,11,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,40,68,138,14,2,11,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":415,"old":211,"rank":4,"right":{"linear_Z4":[0,1,0,3,2,0,2,0,1],"matrix_rows":[257,376,260,114,320,298,272,256,384],"offset":85,"phase":0,"quadratic_rows":[64,346,16,346,14,0,11,0,266]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,78,8,138,4,11,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":418,"old":211,"rank":4,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,1],"matrix_rows":[257,358,260,108,320,256,292,272,384],"offset":51,"phase":0,"quadratic_rows":[64,100,302,100,0,14,11,0,260]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[27,35,69,9,15,1,138,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":420,"old":211,"rank":4,"right":{"linear_Z4":[1,1,3,1,0,2,0,0,1],"matrix_rows":[257,317,260,55,303,256,272,320,384],"offset":102,"phase":0,"quadratic_rows":[293,26,53,26,14,5,0,0,257]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[27,34,68,8,14,1,138,266,10],"offset":0,"phase":0,"quadratic_rows":[11,15,14,15,0,0,0,0,0]},"new":421,"old":211,"rank":4,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,1],"matrix_rows":[257,307,260,57,289,256,272,320,384],"offset":102,"phase":0,"quadratic_rows":[299,49,16,49,14,11,0,0,257]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":220,"old":212,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":221,"old":212,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":222,"old":212,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":223,"old":213,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,1,0,1,2],"matrix_rows":[430,1,274,276,280,256,288,64,384],"offset":0,"phase":0,"quadratic_rows":[0,190,190,190,14,174,0,174,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":224,"old":213,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":225,"old":213,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":223,"old":214,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":226,"old":214,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":227,"old":214,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":220,"old":215,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":228,"old":215,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":229,"old":215,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":224,"old":216,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,1,2,1,2],"matrix_rows":[427,321,258,68,264,80,288,256,384],"offset":0,"phase":0,"quadratic_rows":[235,171,64,171,64,171,21,171,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":226,"old":216,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,1,2,1,2],"matrix_rows":[427,321,322,4,328,16,288,256,384],"offset":0,"phase":0,"quadratic_rows":[235,235,0,235,0,171,11,171,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":230,"old":216,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":221,"old":217,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[88,9,2,12,64,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[8,0,8,21,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":228,"old":217,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[88,17,18,4,72,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[16,16,0,24,11,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":231,"old":217,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,2,0,0],"matrix_rows":[72,1,18,20,88,64,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":222,"old":218,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":229,"old":218,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":231,"old":218,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":225,"old":219,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,1,2,1,2],"matrix_rows":[437,321,66,260,72,272,288,256,384],"offset":0,"phase":0,"quadratic_rows":[245,64,181,64,181,181,11,181,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":227,"old":219,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,1,2,1,2],"matrix_rows":[437,321,2,324,8,336,288,256,384],"offset":0,"phase":0,"quadratic_rows":[245,0,245,0,245,181,21,181,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":230,"old":219,"rank":1,"right":{"linear_Z4":[1,0,1,0,2,1,1,1,2],"matrix_rows":[485,257,18,276,24,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[229,16,245,16,14,229,229,229,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":559,"old":220,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":561,"old":220,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,1,1,2],"matrix_rows":[230,1,258,260,8,16,288,320,384],"offset":0,"phase":0,"quadratic_rows":[0,486,486,0,0,486,486,486,230]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,64,130,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":613,"old":220,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,3,3,3,0],"matrix_rows":[384,224,1,2,4,8,16,416,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,0,0,352,352,384,224]}},{"left":{"linear_Z4":[2,2,3,3,3,0,0,0,0],"matrix_rows":[63,64,131,3,256,5,9,17,1],"offset":0,"phase":0,"quadratic_rows":[2,29,30,30,30,0,0,0,0]},"new":758,"old":220,"rank":5,"right":{"linear_Z4":[1,2,2,2,0,1,1,1,0],"matrix_rows":[9,489,461,429,365,493,6,8,16],"offset":255,"phase":0,"quadratic_rows":[257,4,234,260,0,228,228,228,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":233,"old":221,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":239,"old":221,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":235,"old":222,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":237,"old":222,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,1,0,1,2],"matrix_rows":[179,257,258,4,8,272,288,64,384],"offset":0,"phase":0,"quadratic_rows":[435,435,0,0,435,435,0,435,179]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":559,"old":223,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":560,"old":223,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[1,16,34,66,128,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":615,"old":223,"rank":4,"right":{"linear_Z4":[2,0,3,3,0,0,2,0,1],"matrix_rows":[1,76,32,384,2,68,72,16,256],"offset":263,"phase":2,"quadratic_rows":[0,0,12,12,0,256,0,256,416]}},{"left":{"linear_Z4":[3,2,3,2,3,0,0,0,0],"matrix_rows":[34,64,131,1,2,260,8,16,20],"offset":0,"phase":0,"quadratic_rows":[3,1,20,0,20,0,0,0,0]},"new":760,"old":223,"rank":5,"right":{"linear_Z4":[1,2,0,1,1,0,2,0,1],"matrix_rows":[28,25,32,64,384,29,14,16,256],"offset":495,"phase":2,"quadratic_rows":[5,12,27,30,28,256,0,256,416]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":233,"old":224,"rank":1,"right":{"linear_Z4":[2,3,1,1,3,3,0,3,2],"matrix_rows":[438,9,258,268,256,272,288,64,384],"offset":27,"phase":0,"quadratic_rows":[8,182,190,13,182,182,0,182,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":224,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,1,0,1,2],"matrix_rows":[184,17,18,4,264,256,288,320,384],"offset":170,"phase":0,"quadratic_rows":[16,16,0,440,427,440,0,440,184]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":234,"old":225,"rank":1,"right":{"linear_Z4":[2,1,3,3,1,3,0,3,2],"matrix_rows":[430,17,274,260,264,256,288,64,384],"offset":39,"phase":0,"quadratic_rows":[16,190,174,174,19,174,0,174,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":237,"old":225,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,1,0,1,2],"matrix_rows":[184,9,2,12,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[8,0,8,437,440,440,0,440,184]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":235,"old":226,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,73,66,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[75,67,8,13,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":236,"old":226,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":232,"old":227,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,81,18,68,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[85,16,69,0,19,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":239,"old":227,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":234,"old":228,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":236,"old":228,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":232,"old":229,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":238,"old":229,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":558,"old":230,"rank":1,"right":{"linear_Z4":[3,1,2,3,0,3,1,3,2],"matrix_rows":[427,257,322,68,264,16,288,256,384],"offset":141,"phase":0,"quadratic_rows":[171,235,64,171,0,171,70,171,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":561,"old":230,"rank":1,"right":{"linear_Z4":[0,2,2,0,0,1,1,1,2],"matrix_rows":[232,9,2,12,256,272,288,320,384],"offset":60,"phase":0,"quadratic_rows":[8,0,8,485,0,488,488,488,232]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,35,64,131,259,2,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":612,"old":230,"rank":2,"right":{"linear_Z4":[0,2,2,0,0,0,1,0,3],"matrix_rows":[173,301,321,194,388,328,16,352,256],"offset":431,"phase":1,"quadratic_rows":[192,192,0,192,0,192,235,363,384]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,10,18,33,65,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":616,"old":230,"rank":2,"right":{"linear_Z4":[2,3,3,0,0,0,2,2,2],"matrix_rows":[201,239,257,2,12,256,272,320,384],"offset":120,"phase":0,"quadratic_rows":[294,239,231,290,0,207,294,294,201]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":558,"old":231,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":560,"old":231,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,0,3,2],"matrix_rows":[416,1,2,4,8,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,160,0,160,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":614,"old":231,"rank":2,"right":{"linear_Z4":[3,3,3,2,0,0,0,3,2],"matrix_rows":[385,6,257,18,28,16,32,64,384],"offset":3,"phase":2,"quadratic_rows":[129,22,30,4,6,0,0,129,0]}},{"left":{"linear_Z4":[3,2,3,3,3,0,0,0,0],"matrix_rows":[60,64,135,258,5,9,7,17,1],"offset":0,"phase":0,"quadratic_rows":[29,0,29,29,29,0,0,0,0]},"new":758,"old":231,"rank":5,"right":{"linear_Z4":[3,2,3,1,3,1,2,1,0],"matrix_rows":[436,92,417,405,309,437,14,64,80],"offset":253,"phase":3,"quadratic_rows":[181,12,183,10,181,181,0,181,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":240,"old":232,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[13,9,2,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,33,64,2,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":642,"old":232,"rank":3,"right":{"linear_Z4":[2,0,1,2,2,3,1,1,2],"matrix_rows":[20,66,416,5,16,80,40,256,384],"offset":233,"phase":1,"quadratic_rows":[4,80,69,32,66,168,86,160,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,68,128,260,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":702,"old":232,"rank":3,"right":{"linear_Z4":[2,1,1,3,0,0,2,2,3],"matrix_rows":[66,384,424,5,70,64,392,16,256],"offset":317,"phase":0,"quadratic_rows":[4,6,7,40,0,136,0,288,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":240,"old":233,"rank":1,"right":{"linear_Z4":[1,0,1,0,3,3,0,3,2],"matrix_rows":[421,273,18,260,8,256,288,320,384],"offset":171,"phase":1,"quadratic_rows":[181,16,165,0,19,165,0,165,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,18,33,65,135,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":643,"old":233,"rank":3,"right":{"linear_Z4":[3,0,2,0,3,0,2,0,2],"matrix_rows":[81,407,181,325,256,64,72,336,384],"offset":19,"phase":1,"quadratic_rows":[55,149,35,0,51,149,0,34,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,23,39,71,132,259,7,2,1],"offset":0,"phase":0,"quadratic_rows":[3,3,4,0,0,0,0,0,0]},"new":703,"old":233,"rank":3,"right":{"linear_Z4":[1,1,0,0,1,3,0,0,3],"matrix_rows":[130,258,183,357,230,64,72,368,256],"offset":463,"phase":1,"quadratic_rows":[467,467,368,0,471,356,183,83,311]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":240,"old":234,"rank":1,"right":{"linear_Z4":[1,1,0,3,0,3,0,3,2],"matrix_rows":[419,265,258,12,256,16,288,320,384],"offset":151,"phase":1,"quadratic_rows":[171,163,8,13,0,163,0,163,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[10,16,39,66,128,2,256,3,6],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":652,"old":234,"rank":3,"right":{"linear_Z4":[3,2,3,1,0,1,0,2,3],"matrix_rows":[388,9,4,133,166,256,40,16,64],"offset":61,"phase":1,"quadratic_rows":[141,164,167,41,0,174,0,295,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,17,34,71,129,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":712,"old":234,"rank":3,"right":{"linear_Z4":[3,2,0,3,0,0,2,0,2],"matrix_rows":[73,399,171,323,64,256,328,80,384],"offset":35,"phase":1,"quadratic_rows":[47,37,139,45,0,139,0,36,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":240,"old":235,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[19,17,18,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,33,65,132,260,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":653,"old":235,"rank":3,"right":{"linear_Z4":[2,2,2,0,3,0,2,2,3],"matrix_rows":[68,384,432,5,6,64,72,400,256],"offset":316,"phase":3,"quadratic_rows":[4,4,3,0,48,144,0,288,384]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,2,64,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":713,"old":235,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,3,1,1,2],"matrix_rows":[10,68,416,3,72,8,48,256,384],"offset":217,"phase":1,"quadratic_rows":[2,67,72,68,32,176,78,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":240,"old":236,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,0,0,0],"matrix_rows":[3,73,66,12,64,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[75,67,8,13,0,0,3,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,128,260,1,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":658,"old":236,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,0,0,2,3],"matrix_rows":[3,384,420,65,74,388,64,16,256],"offset":261,"phase":1,"quadratic_rows":[67,75,36,2,0,132,3,288,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,19,32,65,3,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":718,"old":236,"rank":3,"right":{"linear_Z4":[2,0,2,1,2,3,0,1,2],"matrix_rows":[90,66,416,11,16,36,80,256,384],"offset":233,"phase":1,"quadratic_rows":[10,1,32,9,0,164,0,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":240,"old":237,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,3,0,3,0],"matrix_rows":[179,273,274,4,8,256,288,64,384],"offset":39,"phase":0,"quadratic_rows":[419,419,0,0,416,435,0,435,179]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,32,64,134,3,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":659,"old":237,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,2,0,1,3],"matrix_rows":[291,179,16,33,34,180,8,256,64],"offset":2,"phase":1,"quadratic_rows":[432,432,176,0,263,263,0,135,307]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,23,33,65,130,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":719,"old":237,"rank":3,"right":{"linear_Z4":[3,3,2,0,0,0,2,0,2],"matrix_rows":[71,403,163,321,322,64,72,256,384],"offset":131,"phase":1,"quadratic_rows":[55,55,3,0,131,131,0,48,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":240,"old":238,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,3,0,3,0],"matrix_rows":[173,265,2,268,256,16,288,64,384],"offset":27,"phase":0,"quadratic_rows":[421,0,421,416,0,429,0,429,173]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,17,39,66,129,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":668,"old":238,"rank":3,"right":{"linear_Z4":[3,2,3,0,0,0,2,0,2],"matrix_rows":[71,397,165,321,64,324,256,80,384],"offset":67,"phase":1,"quadratic_rows":[47,5,47,133,0,133,0,40,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,16,35,70,128,3,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":728,"old":238,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,1,3],"matrix_rows":[293,173,8,33,170,36,256,16,64],"offset":2,"phase":1,"quadratic_rows":[424,168,424,263,0,263,0,135,301]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":240,"old":239,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,81,18,68,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[85,16,69,0,19,0,5,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,37,69,1,130,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":669,"old":239,"rank":3,"right":{"linear_Z4":[2,2,0,0,1,3,2,1,2],"matrix_rows":[20,416,68,21,34,64,72,256,384],"offset":248,"phase":3,"quadratic_rows":[20,32,1,0,17,162,0,160,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[10,20,34,64,130,260,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":729,"old":239,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,0,2,3],"matrix_rows":[384,5,418,65,386,84,8,64,256],"offset":262,"phase":1,"quadratic_rows":[69,34,85,0,4,130,5,288,384]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,133,3,264,6,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":240,"rank":5,"right":{"linear_Z4":[2,0,2,0,0,0,0,0,1],"matrix_rows":[17,18,20,32,384,80,64,88,256],"offset":463,"phase":1,"quadratic_rows":[64,80,16,0,6,256,3,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,129,3,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":416,"old":240,"rank":4,"right":{"linear_Z4":[3,3,2,0,0,0,2,0,1],"matrix_rows":[6,5,32,384,71,16,80,88,256],"offset":469,"phase":2,"quadratic_rows":[67,83,16,0,6,256,3,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,130,1,260,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":417,"old":240,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,2,0,1],"matrix_rows":[3,5,32,384,65,16,80,88,256],"offset":468,"phase":1,"quadratic_rows":[70,17,81,0,6,256,5,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,131,1,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":419,"old":240,"rank":4,"right":{"linear_Z4":[0,2,0,0,2,0,2,0,1],"matrix_rows":[3,6,32,384,16,82,64,88,256],"offset":388,"phase":3,"quadratic_rows":[18,85,66,0,3,256,6,256,416]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,129,3,260,2,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":422,"old":240,"rank":4,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,1],"matrix_rows":[5,6,32,384,80,64,20,88,256],"offset":468,"phase":1,"quadratic_rows":[84,68,19,0,5,256,3,256,416]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":249,"old":241,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,1,1,0,2],"matrix_rows":[366,1,274,276,280,256,288,320,128],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,14,110,110,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":250,"old":241,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,0,2],"matrix_rows":[318,1,258,260,328,336,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,62,62,126,126,126,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":251,"old":241,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,0,2],"matrix_rows":[318,1,322,324,264,272,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,126,126,62,62,126,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":252,"old":242,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":253,"old":242,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,2,4,72,80,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,64,96,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":254,"old":242,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,66,68,8,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":252,"old":243,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,1,1,2,0],"matrix_rows":[238,1,146,148,152,128,160,192,256],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,14,110,110,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":255,"old":243,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,2,0],"matrix_rows":[190,1,194,196,136,144,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,126,126,62,62,126,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":256,"old":243,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,1,2,2,0],"matrix_rows":[190,1,130,132,200,208,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,62,62,126,126,126,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":249,"old":244,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":257,"old":244,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,2],"matrix_rows":[288,1,66,68,8,16,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":258,"old":244,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,2],"matrix_rows":[288,1,2,4,72,80,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,64,96,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":253,"old":245,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":255,"old":245,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":259,"old":245,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,2,0],"matrix_rows":[136,1,18,20,152,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":250,"old":246,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":257,"old":246,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":260,"old":246,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":251,"old":247,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":258,"old":247,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":260,"old":247,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,2],"matrix_rows":[264,1,18,20,280,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":254,"old":248,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":256,"old":248,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":259,"old":248,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":565,"old":249,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":567,"old":249,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,64,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":618,"old":249,"rank":2,"right":{"linear_Z4":[0,3,3,3,0,0,1,2,0],"matrix_rows":[6,64,9,18,28,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,192,64,0]}},{"left":{"linear_Z4":[2,2,3,3,3,0,0,0,0],"matrix_rows":[1,36,70,132,6,264,16,2,24],"offset":0,"phase":0,"quadratic_rows":[0,0,4,24,24,0,0,0,0]},"new":762,"old":249,"rank":5,"right":{"linear_Z4":[2,3,1,3,0,0,0,2,1],"matrix_rows":[1,132,10,32,320,150,16,152,256],"offset":271,"phase":3,"quadratic_rows":[0,158,6,154,10,256,256,10,352]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":262,"old":250,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":268,"old":250,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":264,"old":251,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":266,"old":251,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":565,"old":252,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":566,"old":252,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[1,16,34,66,128,260,8,12,2],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":620,"old":252,"rank":4,"right":{"linear_Z4":[2,0,3,3,0,0,0,1,2],"matrix_rows":[1,268,32,192,2,260,264,16,128],"offset":263,"phase":2,"quadratic_rows":[0,0,12,12,0,128,128,224,0]}},{"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[1,32,70,2,4,144,280,24,8],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"new":764,"old":252,"rank":5,"right":{"linear_Z4":[2,2,0,3,3,1,3,2,0],"matrix_rows":[1,28,4,320,416,14,16,480,128],"offset":103,"phase":1,"quadratic_rows":[0,12,2,26,24,96,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":262,"old":253,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":253,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":263,"old":254,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":266,"old":254,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":264,"old":255,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":265,"old":255,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":261,"old":256,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,2],"matrix_rows":[280,1,2,4,264,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":268,"old":256,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":263,"old":257,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":265,"old":257,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":261,"old":258,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":267,"old":258,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,2,0],"matrix_rows":[152,1,2,4,136,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,24,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":564,"old":259,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,2],"matrix_rows":[262,1,258,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":567,"old":259,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,0,2],"matrix_rows":[352,1,2,4,8,16,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,35,64,131,2,256,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":617,"old":259,"rank":2,"right":{"linear_Z4":[2,3,3,2,0,2,2,0,2],"matrix_rows":[363,45,257,322,68,264,16,288,128],"offset":3,"phase":2,"quadratic_rows":[70,43,109,70,0,70,45,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":621,"old":259,"rank":2,"right":{"linear_Z4":[3,3,3,2,0,0,3,0,2],"matrix_rows":[321,6,257,18,28,16,32,320,128],"offset":3,"phase":2,"quadratic_rows":[65,22,30,4,6,0,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":564,"old":260,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,2,0],"matrix_rows":[134,1,130,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":566,"old":260,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,3,3,2,0],"matrix_rows":[224,1,2,4,8,16,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,0,96,96,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":619,"old":260,"rank":2,"right":{"linear_Z4":[3,3,3,2,0,0,3,2,0],"matrix_rows":[193,6,129,18,28,16,32,192,256],"offset":3,"phase":2,"quadratic_rows":[65,22,30,4,6,0,65,0,0]}},{"left":{"linear_Z4":[2,3,2,2,2,0,0,0,0],"matrix_rows":[1,36,70,132,262,8,16,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":762,"old":260,"rank":5,"right":{"linear_Z4":[2,3,3,3,0,2,2,0,3],"matrix_rows":[1,388,266,32,64,390,256,392,272],"offset":29,"phase":0,"quadratic_rows":[0,142,262,138,0,0,0,266,388]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":269,"old":261,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,3,0,0,2],"matrix_rows":[302,1,274,276,280,256,288,320,128],"offset":1,"phase":1,"quadratic_rows":[0,62,62,62,14,46,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,18,1,36,68,132,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":644,"old":261,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,3,0],"matrix_rows":[132,135,24,133,128,104,80,64,256],"offset":22,"phase":1,"quadratic_rows":[3,5,130,120,88,8,24,132,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,17,2,36,68,132,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":710,"old":261,"rank":3,"right":{"linear_Z4":[1,0,2,3,3,2,0,3,0],"matrix_rows":[2,135,24,3,128,72,112,64,256],"offset":31,"phase":1,"quadratic_rows":[133,4,131,88,120,16,24,133,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":269,"old":262,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,3,0,2,0],"matrix_rows":[174,1,146,148,152,128,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,62,62,62,14,46,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,18,1,36,68,132,4,256,3],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":645,"old":262,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,2,0,0,3],"matrix_rows":[260,263,24,261,256,104,80,64,128],"offset":22,"phase":1,"quadratic_rows":[3,5,258,120,88,8,24,0,260]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[10,17,2,36,68,132,4,256,3],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":711,"old":262,"rank":3,"right":{"linear_Z4":[1,0,2,3,3,2,0,0,3],"matrix_rows":[2,263,24,3,256,72,112,64,128],"offset":31,"phase":1,"quadratic_rows":[261,4,259,88,120,16,24,0,261]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":269,"old":263,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[11,16,39,71,1,130,5,263,7],"offset":0,"phase":0,"quadratic_rows":[6,3,1,0,0,0,0,0,0]},"new":650,"old":263,"rank":3,"right":{"linear_Z4":[2,0,2,1,1,1,0,0,1],"matrix_rows":[297,25,108,341,38,256,296,320,384],"offset":237,"phase":2,"quadratic_rows":[100,36,27,124,348,299,25,0,304]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[13,16,39,1,71,131,4,263,7],"offset":0,"phase":0,"quadratic_rows":[6,1,5,0,0,0,0,0,0]},"new":704,"old":263,"rank":3,"right":{"linear_Z4":[0,0,2,3,3,1,0,0,1],"matrix_rows":[305,340,25,109,38,256,304,320,384],"offset":225,"phase":2,"quadratic_rows":[324,36,27,124,348,298,25,0,305]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":269,"old":264,"rank":1,"right":{"linear_Z4":[0,3,3,3,2,0,0,0,0],"matrix_rows":[14,1,274,276,280,256,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,286,286,286,14,0,0,0,14]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[10,16,35,68,128,2,1,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":651,"old":264,"rank":3,"right":{"linear_Z4":[1,2,0,0,0,3,3,0,2],"matrix_rows":[4,97,264,5,38,64,256,16,384],"offset":59,"phase":1,"quadratic_rows":[101,36,99,0,0,103,101,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[10,16,35,64,132,1,2,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":705,"old":264,"rank":3,"right":{"linear_Z4":[1,2,0,0,0,1,1,0,2],"matrix_rows":[100,97,272,101,38,64,8,256,384],"offset":59,"phase":1,"quadratic_rows":[5,36,99,0,0,102,100,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":269,"old":265,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,2,0],"matrix_rows":[136,1,18,20,152,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,1,130,2,5,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":666,"old":265,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,3,0],"matrix_rows":[144,6,153,145,98,68,128,64,256],"offset":70,"phase":1,"quadratic_rows":[9,102,70,17,136,2,6,144,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,65,4,130,2,5,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":720,"old":265,"rank":3,"right":{"linear_Z4":[1,3,3,0,2,2,0,3,0],"matrix_rows":[8,6,153,9,66,100,128,64,256],"offset":79,"phase":1,"quadratic_rows":[145,70,102,16,137,4,6,145,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":269,"old":266,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,2],"matrix_rows":[264,1,18,20,280,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,16,16,24,14,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,1,130,2,256,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":667,"old":266,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,2,0,0,3],"matrix_rows":[272,6,281,273,98,68,256,64,128],"offset":70,"phase":1,"quadratic_rows":[9,102,70,17,264,2,6,0,272]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,65,4,130,2,256,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":721,"old":266,"rank":3,"right":{"linear_Z4":[1,3,3,0,2,2,0,0,3],"matrix_rows":[8,6,281,9,66,100,256,64,128],"offset":79,"phase":1,"quadratic_rows":[273,70,102,16,265,4,6,0,273]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":269,"old":267,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,1,0,0,2],"matrix_rows":[40,1,18,20,280,256,288,320,384],"offset":0,"phase":0,"quadratic_rows":[0,16,16,312,14,296,0,0,40]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[15,17,5,32,65,130,3,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":660,"old":267,"rank":3,"right":{"linear_Z4":[1,1,1,0,3,3,1,0,0],"matrix_rows":[291,117,337,341,290,56,256,320,384],"offset":221,"phase":2,"quadratic_rows":[339,3,292,48,345,300,337,0,117]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[15,3,17,32,65,133,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":726,"old":267,"rank":3,"right":{"linear_Z4":[3,1,1,0,1,2,3,0,3],"matrix_rows":[293,113,339,115,292,56,256,320,384],"offset":213,"phase":3,"quadratic_rows":[117,290,5,48,121,347,113,0,290]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":269,"old":268,"rank":1,"right":{"linear_Z4":[0,0,0,3,2,3,0,0,0],"matrix_rows":[40,1,18,20,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,16,16,120,14,104,40,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,18,32,64,133,4,1,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":661,"old":268,"rank":3,"right":{"linear_Z4":[1,0,0,2,0,3,3,0,2],"matrix_rows":[16,258,97,17,256,4,56,64,384],"offset":205,"phase":1,"quadratic_rows":[113,0,0,48,105,121,113,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,16,34,64,133,1,4,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":727,"old":268,"rank":3,"right":{"linear_Z4":[1,0,0,2,0,1,1,0,2],"matrix_rows":[112,260,97,113,2,256,56,64,384],"offset":205,"phase":1,"quadratic_rows":[17,0,0,48,105,120,112,0,0]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[1,34,4,72,14,144,22,262,6],"offset":0,"phase":0,"quadratic_rows":[0,24,24,14,22,0,0,0,0]},"new":1,"old":269,"rank":5,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[1,338,84,264,288,256,272,320,384],"offset":253,"phase":1,"quadratic_rows":[0,80,80,16,14,64,38,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,1,68,6,136,10,258,2],"offset":0,"phase":0,"quadratic_rows":[3,15,6,10,0,0,0,0,0]},"new":416,"old":269,"rank":4,"right":{"linear_Z4":[3,1,0,0,1,0,1,0,3],"matrix_rows":[262,85,264,288,263,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[339,259,80,16,349,64,373,0,339]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,34,4,65,7,136,14,262,6],"offset":0,"phase":0,"quadratic_rows":[7,15,15,14,0,0,0,0,0]},"new":417,"old":269,"rank":4,"right":{"linear_Z4":[2,2,2,1,0,0,0,0,3],"matrix_rows":[264,91,349,288,265,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[14,345,345,31,14,64,38,0,262]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,35,5,73,15,129,7,262,6],"offset":0,"phase":0,"quadratic_rows":[7,15,15,14,0,0,0,0,0]},"new":420,"old":269,"rank":4,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,3],"matrix_rows":[302,125,379,264,303,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[40,120,120,279,14,103,38,0,264]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,34,4,72,14,129,7,262,6],"offset":0,"phase":0,"quadratic_rows":[7,15,15,14,0,0,0,0,0]},"new":421,"old":269,"rank":4,"right":{"linear_Z4":[2,2,2,0,0,1,0,0,3],"matrix_rows":[288,115,373,264,289,256,272,320,384],"offset":253,"phase":3,"quadratic_rows":[38,369,369,16,14,103,38,0,262]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":278,"old":270,"rank":1,"right":{"linear_Z4":[0,1,1,1,0,2,1,1,2],"matrix_rows":[462,33,290,260,264,48,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,238,206,206,32,19,206,206,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":279,"old":270,"rank":1,"right":{"linear_Z4":[0,1,1,1,0,1,2,1,2],"matrix_rows":[430,65,258,324,264,80,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,174,238,174,64,174,21,174,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":280,"old":270,"rank":1,"right":{"linear_Z4":[0,1,1,1,0,1,2,1,2],"matrix_rows":[430,1,322,324,264,16,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,238,238,174,0,238,38,174,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":281,"old":271,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,2,0,0],"matrix_rows":[80,33,34,4,8,112,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":282,"old":271,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[112,33,2,36,8,80,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,32,0,48,21,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":283,"old":271,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,0],"matrix_rows":[112,1,18,20,8,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,16,0,38,48,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":281,"old":272,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":284,"old":272,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":285,"old":272,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":278,"old":273,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":286,"old":273,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,0,2,1,2],"matrix_rows":[413,257,66,324,264,272,96,256,384],"offset":0,"phase":0,"quadratic_rows":[157,64,221,157,157,64,38,157,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":287,"old":273,"rank":1,"right":{"linear_Z4":[1,0,1,1,1,0,2,1,2],"matrix_rows":[413,321,2,324,264,336,32,256,384],"offset":0,"phase":0,"quadratic_rows":[221,0,221,157,221,0,21,157,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":282,"old":274,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":284,"old":274,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":288,"old":274,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":279,"old":275,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":286,"old":275,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":289,"old":275,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,2,0,1,2],"matrix_rows":[411,289,290,4,264,304,256,64,384],"offset":0,"phase":0,"quadratic_rows":[187,187,0,155,187,19,0,155,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":280,"old":276,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":287,"old":276,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":289,"old":276,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":283,"old":277,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":285,"old":277,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":288,"old":277,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":571,"old":278,"rank":1,"right":{"linear_Z4":[1,2,3,3,3,0,1,3,2],"matrix_rows":[413,321,66,260,264,272,32,256,384],"offset":135,"phase":0,"quadratic_rows":[221,64,157,157,157,0,67,157,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":573,"old":278,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,1,1,2],"matrix_rows":[216,1,18,20,264,256,288,320,384],"offset":102,"phase":0,"quadratic_rows":[0,16,16,472,462,0,472,472,216]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,65,128,257,3,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":623,"old":278,"rank":2,"right":{"linear_Z4":[2,3,1,1,1,0,1,2,0],"matrix_rows":[286,384,193,386,324,328,336,32,256],"offset":373,"phase":0,"quadratic_rows":[192,158,94,94,94,0,221,67,0]}},{"left":{"linear_Z4":[3,2,3,3,3,0,0,0,0],"matrix_rows":[33,65,131,4,258,2,8,16,29],"offset":0,"phase":0,"quadratic_rows":[31,1,29,29,29,0,0,0,0]},"new":766,"old":278,"rank":5,"right":{"linear_Z4":[1,1,1,0,0,1,0,0,0],"matrix_rows":[55,308,264,320,384,261,278,288,32],"offset":225,"phase":0,"quadratic_rows":[307,291,52,256,37,55,256,256,203]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":291,"old":279,"rank":1,"right":{"linear_Z4":[1,3,2,3,3,1,0,3,2],"matrix_rows":[411,289,258,36,264,272,256,64,384],"offset":75,"phase":0,"quadratic_rows":[187,155,32,155,155,37,0,155,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":297,"old":279,"rank":1,"right":{"linear_Z4":[2,0,2,1,0,1,0,1,2],"matrix_rows":[184,1,18,20,264,256,288,320,384],"offset":170,"phase":0,"quadratic_rows":[0,16,16,440,430,440,0,440,184]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":293,"old":280,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,66,100,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,70,102,0,0,37,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":295,"old":280,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":571,"old":281,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":572,"old":281,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[32,67,4,144,257,2,3,24,8],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"new":767,"old":281,"rank":5,"right":{"linear_Z4":[2,0,2,1,1,0,2,3,0],"matrix_rows":[114,34,4,384,264,19,64,392,96],"offset":293,"phase":0,"quadratic_rows":[18,1,0,136,17,0,0,136,0]}},{"left":{"linear_Z4":[3,3,2,2,2,0,0,0,0],"matrix_rows":[61,93,7,11,129,1,256,19,3],"offset":0,"phase":0,"quadratic_rows":[29,30,3,3,3,0,0,0,0]},"new":768,"old":281,"rank":5,"right":{"linear_Z4":[0,0,0,0,3,0,0,0,1],"matrix_rows":[399,396,23,27,147,445,430,32,64],"offset":31,"phase":1,"quadratic_rows":[172,188,3,3,274,3,0,3,272]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":291,"old":282,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":282,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":292,"old":283,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":295,"old":283,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":293,"old":284,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":294,"old":284,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":290,"old":285,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":297,"old":285,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,1,0,1,2],"matrix_rows":[173,257,2,260,264,16,288,64,384],"offset":0,"phase":0,"quadratic_rows":[429,0,429,429,0,429,0,429,173]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":292,"old":286,"rank":1,"right":{"linear_Z4":[3,1,2,3,1,3,0,3,2],"matrix_rows":[427,257,274,20,264,256,288,64,384],"offset":45,"phase":0,"quadratic_rows":[171,187,16,171,22,171,0,171,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":294,"old":286,"rank":1,"right":{"linear_Z4":[0,2,2,1,1,0,0,1,2],"matrix_rows":[184,33,2,36,264,272,256,320,384],"offset":204,"phase":0,"quadratic_rows":[32,0,32,440,440,413,0,440,184]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":290,"old":287,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,18,84,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,16,85,0,22,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":296,"old":287,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":570,"old":288,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,0,3,2],"matrix_rows":[392,1,2,4,264,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,136,0,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":573,"old":288,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,1,1,2],"matrix_rows":[203,257,258,4,264,16,32,320,384],"offset":0,"phase":0,"quadratic_rows":[459,459,0,459,0,0,459,459,203]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,64,128,258,3,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":622,"old":288,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,0,3,3,0],"matrix_rows":[384,200,1,2,4,392,16,32,448],"offset":2,"phase":1,"quadratic_rows":[0,0,0,328,0,0,328,384,200]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,2,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":625,"old":288,"rank":2,"right":{"linear_Z4":[3,3,1,2,0,0,3,3,2],"matrix_rows":[451,4,257,258,12,16,32,320,384],"offset":1,"phase":1,"quadratic_rows":[195,195,12,4,0,0,195,195,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":570,"old":289,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":572,"old":289,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,65,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":624,"old":289,"rank":2,"right":{"linear_Z4":[3,0,2,3,3,0,2,1,2],"matrix_rows":[81,392,65,2,12,256,80,32,384],"offset":49,"phase":3,"quadratic_rows":[17,0,8,140,17,0,0,136,0]}},{"left":{"linear_Z4":[2,2,3,2,3,0,0,0,0],"matrix_rows":[33,65,3,132,258,2,8,16,20],"offset":0,"phase":0,"quadratic_rows":[2,1,20,0,20,0,0,0,0]},"new":766,"old":289,"rank":5,"right":{"linear_Z4":[3,3,1,0,0,0,2,0,1],"matrix_rows":[23,20,8,64,384,37,54,256,32],"offset":143,"phase":3,"quadratic_rows":[51,35,20,256,5,3,0,256,392]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":298,"old":290,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,2,0,0,0],"matrix_rows":[37,33,2,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,68,3,4,2,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":642,"old":290,"rank":3,"right":{"linear_Z4":[2,0,1,1,1,2,2,0,0],"matrix_rows":[68,18,8,5,64,80,40,128,256],"offset":41,"phase":3,"quadratic_rows":[4,80,21,40,86,8,18,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,1,130,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":686,"old":290,"rank":3,"right":{"linear_Z4":[2,1,1,0,2,3,0,2,3],"matrix_rows":[18,424,384,5,22,16,256,416,64],"offset":123,"phase":0,"quadratic_rows":[4,6,7,160,0,40,0,264,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":298,"old":291,"rank":1,"right":{"linear_Z4":[1,0,1,3,3,0,0,3,2],"matrix_rows":[397,257,18,276,264,256,32,320,384],"offset":171,"phase":1,"quadratic_rows":[141,16,157,141,22,0,0,141,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,18,33,4,70,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":643,"old":291,"rank":3,"right":{"linear_Z4":[2,0,1,0,2,0,0,3,2],"matrix_rows":[196,471,157,325,320,64,336,96,384],"offset":0,"phase":0,"quadratic_rows":[14,149,143,149,10,0,0,142,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,39,71,129,7,262,2,4],"offset":0,"phase":0,"quadratic_rows":[7,1,1,0,0,0,0,0,0]},"new":687,"old":291,"rank":3,"right":{"linear_Z4":[0,0,2,3,3,2,0,3,3],"matrix_rows":[268,444,60,21,134,32,56,288,320],"offset":353,"phase":2,"quadratic_rows":[20,132,59,188,157,140,0,442,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":298,"old":292,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,3,0,3,2],"matrix_rows":[398,33,258,292,264,16,256,320,384],"offset":205,"phase":1,"quadratic_rows":[32,142,174,142,0,37,0,142,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,39,71,135,2,261,1,4],"offset":0,"phase":0,"quadratic_rows":[2,7,2,0,0,0,0,0,0]},"new":650,"old":292,"rank":3,"right":{"linear_Z4":[0,0,2,3,0,3,0,3,1],"matrix_rows":[172,268,300,133,38,256,296,272,320],"offset":354,"phase":2,"quadratic_rows":[132,36,299,428,0,174,0,169,268]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,21,34,4,66,133,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":696,"old":292,"rank":3,"right":{"linear_Z4":[0,2,1,0,0,2,0,3,2],"matrix_rows":[487,196,174,320,326,64,80,352,384],"offset":0,"phase":0,"quadratic_rows":[166,13,143,166,0,9,0,141,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":298,"old":293,"rank":1,"right":{"linear_Z4":[0,3,3,0,2,0,0,0,0],"matrix_rows":[22,1,18,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,130,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":651,"old":293,"rank":3,"right":{"linear_Z4":[1,2,1,0,3,2,0,2,3],"matrix_rows":[33,408,384,37,6,32,256,400,64],"offset":123,"phase":0,"quadratic_rows":[5,4,7,144,24,0,0,264,384]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,4,3,1,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":697,"old":293,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,1,2,0,0],"matrix_rows":[33,68,8,64,6,96,24,128,256],"offset":50,"phase":3,"quadratic_rows":[96,4,38,24,8,101,33,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":298,"old":294,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,0,0,3,0],"matrix_rows":[158,1,274,276,264,256,32,64,384],"offset":45,"phase":0,"quadratic_rows":[0,398,398,414,392,0,0,414,158]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,67,5,128,256,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":674,"old":294,"rank":3,"right":{"linear_Z4":[0,0,0,2,2,0,0,1,3],"matrix_rows":[158,14,272,153,266,268,256,32,64],"offset":1,"phase":1,"quadratic_rows":[152,408,408,263,263,0,0,135,286]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,4,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":722,"old":294,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,0,2],"matrix_rows":[71,398,150,64,322,324,256,96,384],"offset":67,"phase":1,"quadratic_rows":[6,31,31,134,134,0,0,24,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":298,"old":295,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,0,0,0],"matrix_rows":[6,33,66,100,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,70,102,0,0,37,6,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,68,128,258,2,1,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":675,"old":295,"rank":3,"right":{"linear_Z4":[3,3,3,0,0,2,0,2,3],"matrix_rows":[384,6,393,385,98,68,256,16,64],"offset":70,"phase":1,"quadratic_rows":[9,102,70,129,0,2,6,264,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,65,134,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":723,"old":295,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,1,2,1,2],"matrix_rows":[392,36,68,9,38,64,256,80,384],"offset":248,"phase":3,"quadratic_rows":[8,36,2,137,0,34,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":298,"old":296,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,18,84,8,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,16,85,0,22,0,5,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,37,66,129,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":684,"old":296,"rank":3,"right":{"linear_Z4":[2,2,0,3,1,2,0,1,2],"matrix_rows":[116,392,68,21,10,32,256,96,384],"offset":217,"phase":1,"quadratic_rows":[20,8,1,138,17,0,0,136,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,20,33,68,129,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":730,"old":296,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,0,2,3],"matrix_rows":[5,384,394,81,386,68,256,64,32],"offset":69,"phase":1,"quadratic_rows":[85,10,69,130,1,0,5,264,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":298,"old":297,"rank":1,"right":{"linear_Z4":[1,0,1,3,0,0,0,3,0],"matrix_rows":[173,289,2,292,264,16,256,64,384],"offset":75,"phase":0,"quadratic_rows":[397,0,397,429,0,392,0,429,173]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,17,39,66,129,4,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":685,"old":297,"rank":3,"right":{"linear_Z4":[3,2,3,0,0,0,2,0,2],"matrix_rows":[71,397,165,321,64,324,256,80,384],"offset":67,"phase":1,"quadratic_rows":[47,5,47,133,0,133,0,40,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,16,35,67,128,6,256,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":731,"old":297,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,1,3],"matrix_rows":[13,173,288,265,170,268,256,16,64],"offset":2,"phase":1,"quadratic_rows":[424,168,424,263,0,263,0,135,301]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,136,262,5,3,16,24],"offset":0,"phase":0,"quadratic_rows":[6,5,3,24,24,0,0,0,0]},"new":1,"old":298,"rank":5,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,1],"matrix_rows":[65,66,68,8,384,32,96,256,112],"offset":431,"phase":1,"quadratic_rows":[96,32,64,256,0,3,5,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,65,132,258,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":416,"old":298,"rank":4,"right":{"linear_Z4":[1,1,2,0,0,2,2,0,1],"matrix_rows":[6,5,8,384,103,64,32,256,112],"offset":389,"phase":0,"quadratic_rows":[99,35,64,256,0,3,5,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,67,132,258,1,3,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":418,"old":298,"rank":4,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,1],"matrix_rows":[5,6,8,384,32,96,68,256,112],"offset":484,"phase":1,"quadratic_rows":[36,100,67,256,0,3,6,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,35,66,132,258,3,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":419,"old":298,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,2,0,0,1],"matrix_rows":[3,6,8,384,64,34,96,256,112],"offset":484,"phase":1,"quadratic_rows":[66,37,98,256,0,6,5,256,392]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[19,33,66,132,259,2,1,8,12],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":421,"old":298,"rank":4,"right":{"linear_Z4":[2,0,0,0,0,2,2,0,1],"matrix_rows":[3,5,8,384,97,64,32,256,112],"offset":388,"phase":3,"quadratic_rows":[102,65,33,256,0,5,3,256,392]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":307,"old":299,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,2,0],"matrix_rows":[144,33,34,4,8,176,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":308,"old":299,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":309,"old":299,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":310,"old":300,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":311,"old":300,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":312,"old":300,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":310,"old":301,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,2],"matrix_rows":[272,33,34,4,8,304,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":313,"old":301,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":314,"old":301,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":307,"old":302,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":315,"old":302,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":316,"old":302,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":311,"old":303,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,0,2],"matrix_rows":[315,257,258,4,328,336,352,256,128],"offset":0,"phase":0,"quadratic_rows":[59,59,0,123,123,123,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":313,"old":303,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,0,2],"matrix_rows":[315,321,322,4,328,272,288,256,128],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,59,59,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":317,"old":303,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,2,1,0,2],"matrix_rows":[347,289,290,4,264,304,256,320,128],"offset":0,"phase":0,"quadratic_rows":[123,123,0,91,123,19,91,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":308,"old":304,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,1,2,4,200,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,64,64,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":315,"old":304,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,65,66,4,200,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":318,"old":304,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":309,"old":305,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,2,0],"matrix_rows":[187,193,194,4,200,144,160,128,256],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,59,59,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":316,"old":305,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,1,2,2,0],"matrix_rows":[187,129,130,4,200,208,224,128,256],"offset":0,"phase":0,"quadratic_rows":[59,59,0,123,123,123,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":318,"old":305,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,2,1,2,0],"matrix_rows":[219,161,162,4,136,176,128,192,256],"offset":0,"phase":0,"quadratic_rows":[123,123,0,91,123,19,91,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":312,"old":306,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,2],"matrix_rows":[264,65,66,4,328,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":314,"old":306,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,2],"matrix_rows":[264,1,2,4,328,80,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,64,64,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":317,"old":306,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":577,"old":307,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":579,"old":307,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,65,128,3,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":627,"old":307,"rank":2,"right":{"linear_Z4":[3,2,3,3,3,0,2,0,2],"matrix_rows":[30,323,321,66,260,264,272,32,128],"offset":3,"phase":2,"quadratic_rows":[3,285,286,286,286,0,0,0,30]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[32,67,4,144,257,2,24,3,8],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"new":770,"old":307,"rank":5,"right":{"linear_Z4":[2,0,2,1,1,0,3,2,0],"matrix_rows":[178,34,4,320,264,19,128,328,160],"offset":293,"phase":0,"quadratic_rows":[18,1,0,72,17,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":320,"old":308,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":326,"old":308,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":322,"old":309,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":324,"old":309,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":577,"old":310,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":578,"old":310,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[32,67,4,144,257,2,24,8,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"new":771,"old":310,"rank":5,"right":{"linear_Z4":[2,0,2,1,1,0,3,0,2],"matrix_rows":[306,34,4,192,136,19,256,200,288],"offset":293,"phase":0,"quadratic_rows":[18,1,0,72,17,0,72,0,0]}},{"left":{"linear_Z4":[3,2,2,2,2,0,0,0,0],"matrix_rows":[34,67,4,8,130,259,16,1,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":772,"old":310,"rank":5,"right":{"linear_Z4":[3,3,2,2,3,0,2,0,3],"matrix_rows":[386,273,4,8,64,387,256,400,288],"offset":30,"phase":0,"quadratic_rows":[147,259,0,0,145,0,0,273,386]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":320,"old":311,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":311,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":321,"old":312,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":324,"old":312,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":322,"old":313,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":323,"old":313,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":319,"old":314,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":326,"old":314,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,2,0],"matrix_rows":[176,1,2,4,8,144,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":321,"old":315,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":323,"old":315,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":319,"old":316,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,3,0,0,2],"matrix_rows":[304,1,2,4,8,272,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,48,48,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":325,"old":316,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":576,"old":317,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,2,0],"matrix_rows":[200,1,2,4,136,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":579,"old":317,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,0],"matrix_rows":[131,129,130,4,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":626,"old":317,"rank":2,"right":{"linear_Z4":[3,3,0,0,3,0,1,2,0],"matrix_rows":[3,64,33,50,20,8,32,192,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,192,64,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,65,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":629,"old":317,"rank":2,"right":{"linear_Z4":[3,0,2,3,3,0,1,2,2],"matrix_rows":[145,328,129,2,12,256,144,32,320],"offset":49,"phase":3,"quadratic_rows":[17,0,8,76,17,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":576,"old":318,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,0,3,0,2],"matrix_rows":[328,1,2,4,264,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,72,0,0,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":578,"old":318,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,2],"matrix_rows":[259,257,258,4,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,34,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":628,"old":318,"rank":2,"right":{"linear_Z4":[3,0,2,3,3,0,1,2,2],"matrix_rows":[273,200,257,2,12,128,272,32,192],"offset":49,"phase":3,"quadratic_rows":[17,0,8,76,17,0,72,0,0]}},{"left":{"linear_Z4":[3,3,2,2,2,0,0,0,0],"matrix_rows":[32,67,4,144,1,2,280,24,8],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":770,"old":318,"rank":5,"right":{"linear_Z4":[2,0,2,1,3,3,3,2,0],"matrix_rows":[50,2,4,320,392,19,32,456,128],"offset":103,"phase":1,"quadratic_rows":[18,1,0,72,49,48,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":327,"old":319,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,2,0,0,2],"matrix_rows":[283,289,290,4,264,304,256,320,128],"offset":1,"phase":1,"quadratic_rows":[59,59,0,27,59,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,18,1,32,64,132,260,2,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":644,"old":319,"rank":3,"right":{"linear_Z4":[2,0,3,2,2,1,0,3,2],"matrix_rows":[129,135,288,133,128,40,16,256,320],"offset":484,"phase":1,"quadratic_rows":[130,5,6,32,0,40,0,129,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,19,2,32,68,128,260,1,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":694,"old":319,"rank":3,"right":{"linear_Z4":[0,2,3,2,1,2,0,3,2],"matrix_rows":[135,130,272,128,134,24,256,32,320],"offset":484,"phase":1,"quadratic_rows":[6,129,5,16,24,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":327,"old":320,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,2,0,2,0],"matrix_rows":[155,161,162,4,136,176,128,192,256],"offset":1,"phase":1,"quadratic_rows":[59,59,0,27,59,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[11,18,1,32,64,132,260,4,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":645,"old":320,"rank":3,"right":{"linear_Z4":[2,0,3,2,2,1,0,2,3],"matrix_rows":[257,263,160,261,256,40,16,128,192],"offset":484,"phase":1,"quadratic_rows":[258,5,6,32,0,40,0,0,257]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,19,2,32,68,128,260,4,1],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":695,"old":320,"rank":3,"right":{"linear_Z4":[0,2,3,2,1,2,0,2,3],"matrix_rows":[263,258,144,256,262,24,128,32,192],"offset":484,"phase":1,"quadratic_rows":[6,257,5,16,24,0,0,0,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":327,"old":321,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,22,7,34,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":652,"old":321,"rank":3,"right":{"linear_Z4":[3,0,3,1,0,3,0,0,0],"matrix_rows":[20,42,39,21,54,40,64,128,256],"offset":4,"phase":1,"quadratic_rows":[51,57,20,10,39,51,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[13,20,7,33,1,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":688,"old":321,"rank":3,"right":{"linear_Z4":[0,3,3,1,3,0,0,0,0],"matrix_rows":[25,36,23,53,38,24,64,128,256],"offset":4,"phase":1,"quadratic_rows":[58,51,36,9,51,23,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":327,"old":322,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,2,0,0,0],"matrix_rows":[19,289,290,4,8,304,256,64,384],"offset":1,"phase":1,"quadratic_rows":[307,307,0,0,307,19,0,0,19]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,3,34,64,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":653,"old":322,"rank":3,"right":{"linear_Z4":[3,3,1,0,0,0,0,0,2],"matrix_rows":[15,12,288,69,78,64,16,256,384],"offset":3,"phase":2,"quadratic_rows":[75,67,12,5,0,0,3,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[10,18,3,33,68,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":689,"old":322,"rank":3,"right":{"linear_Z4":[3,3,1,0,0,0,0,0,2],"matrix_rows":[12,15,272,77,70,64,256,32,384],"offset":3,"phase":2,"quadratic_rows":[67,75,12,6,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":327,"old":323,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,2],"matrix_rows":[272,33,34,4,8,304,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,66,130,1,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":682,"old":323,"rank":2,"right":{"linear_Z4":[3,3,2,2,3,1,0,0,2],"matrix_rows":[3,304,65,74,20,64,256,288,128],"offset":81,"phase":3,"quadratic_rows":[67,75,16,2,52,48,3,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,2,1,256,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":724,"old":323,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,2,0,0,3],"matrix_rows":[3,288,308,73,66,292,64,256,128],"offset":133,"phase":1,"quadratic_rows":[75,67,20,1,36,272,3,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":327,"old":324,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,2,0],"matrix_rows":[144,33,34,4,8,176,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,32,0,0,48,19,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,33,66,130,1,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":683,"old":324,"rank":2,"right":{"linear_Z4":[3,3,2,2,3,1,0,2,0],"matrix_rows":[3,176,65,74,20,64,128,160,256],"offset":81,"phase":3,"quadratic_rows":[67,75,16,2,52,48,3,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,65,132,2,1,6,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":725,"old":324,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,2,0,3,0],"matrix_rows":[3,160,180,73,66,164,64,128,256],"offset":133,"phase":1,"quadratic_rows":[75,67,20,1,36,144,3,160,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":327,"old":325,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,2,0,0,0],"matrix_rows":[24,33,34,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,32,0,88,120,19,24,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,64,134,4,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":676,"old":325,"rank":3,"right":{"linear_Z4":[0,0,1,2,0,3,3,0,2],"matrix_rows":[258,16,100,1,256,20,56,64,384],"offset":230,"phase":1,"quadratic_rows":[0,0,116,48,108,124,116,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,36,64,132,6,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":732,"old":325,"rank":3,"right":{"linear_Z4":[0,0,1,2,3,2,2,0,2],"matrix_rows":[257,96,20,256,2,100,56,64,384],"offset":192,"phase":2,"quadratic_rows":[0,0,116,48,124,28,20,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":327,"old":326,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,2,0,0,2],"matrix_rows":[24,33,34,4,264,304,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,32,0,280,312,19,0,0,24]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[15,17,5,32,67,2,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":677,"old":326,"rank":3,"right":{"linear_Z4":[3,1,1,0,2,3,0,0,3],"matrix_rows":[307,293,17,21,306,56,256,320,384],"offset":211,"phase":3,"quadratic_rows":[19,3,308,48,301,316,0,0,308]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[10,23,6,32,65,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":733,"old":326,"rank":3,"right":{"linear_Z4":[1,1,1,0,3,0,0,0,0],"matrix_rows":[22,307,290,305,294,56,256,320,384],"offset":222,"phase":2,"quadratic_rows":[3,291,308,48,316,30,0,0,22]}},{"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,2,4,72,144,19,11,259,3],"offset":0,"phase":0,"quadratic_rows":[24,24,0,11,19,0,0,0,0]},"new":1,"old":327,"rank":5,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[353,98,4,264,272,256,320,288,384],"offset":254,"phase":1,"quadratic_rows":[96,96,0,64,32,19,11,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,35,1,68,136,11,7,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":416,"old":327,"rank":4,"right":{"linear_Z4":[1,3,0,0,0,2,2,0,1],"matrix_rows":[358,101,264,272,263,256,320,288,384],"offset":204,"phase":0,"quadratic_rows":[355,355,0,64,32,19,11,0,259]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,2,35,72,132,7,11,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":418,"old":327,"rank":4,"right":{"linear_Z4":[2,2,2,0,1,0,0,0,3],"matrix_rows":[117,374,272,264,256,276,320,288,384],"offset":254,"phase":3,"quadratic_rows":[372,372,19,64,55,19,11,0,259]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[22,35,5,73,129,2,10,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":420,"old":327,"rank":4,"right":{"linear_Z4":[2,0,0,2,3,2,2,0,3],"matrix_rows":[382,125,283,264,287,256,320,288,384],"offset":200,"phase":3,"quadratic_rows":[120,120,24,327,55,19,11,0,264]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,2,35,68,136,11,7,259,3],"offset":0,"phase":0,"quadratic_rows":[15,15,7,11,0,0,0,0,0]},"new":422,"old":327,"rank":4,"right":{"linear_Z4":[2,2,2,1,0,0,0,0,3],"matrix_rows":[109,366,264,272,256,268,320,288,384],"offset":254,"phase":3,"quadratic_rows":[364,364,11,79,32,19,11,0,259]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":336,"old":328,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":337,"old":328,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":338,"old":328,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":339,"old":329,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":340,"old":329,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":341,"old":329,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":339,"old":330,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,2,0],"matrix_rows":[132,33,2,164,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":342,"old":330,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":343,"old":330,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":336,"old":331,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,2],"matrix_rows":[260,33,2,292,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":344,"old":331,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":345,"old":331,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":340,"old":332,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,2,0],"matrix_rows":[130,65,194,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,66,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":342,"old":332,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,2,0],"matrix_rows":[130,1,194,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,66,64,0,0,64,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":346,"old":332,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":337,"old":333,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,2],"matrix_rows":[258,65,322,4,72,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,66,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":344,"old":333,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,2],"matrix_rows":[258,1,322,68,8,16,96,256,128],"offset":0,"phase":0,"quadratic_rows":[0,66,64,0,0,64,38,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":347,"old":333,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":338,"old":334,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,0,2],"matrix_rows":[303,257,322,324,264,16,352,256,128],"offset":0,"phase":0,"quadratic_rows":[47,111,111,47,0,111,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":345,"old":334,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,0,2],"matrix_rows":[303,321,322,260,328,16,288,256,128],"offset":0,"phase":0,"quadratic_rows":[111,111,47,111,0,47,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":347,"old":334,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,1,0,2],"matrix_rows":[335,289,258,292,296,16,256,320,128],"offset":0,"phase":0,"quadratic_rows":[111,79,111,111,0,13,79,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":341,"old":335,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,2,0],"matrix_rows":[175,129,194,196,136,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[47,111,111,47,0,111,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":343,"old":335,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,1,2,2,0],"matrix_rows":[175,193,194,132,200,16,160,128,256],"offset":0,"phase":0,"quadratic_rows":[111,111,47,111,0,47,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":346,"old":335,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,1,2,0],"matrix_rows":[207,161,130,164,168,16,128,192,256],"offset":0,"phase":0,"quadratic_rows":[111,79,111,111,0,13,79,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":455,"old":336,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,1,2,0],"matrix_rows":[94,1,130,132,136,144,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,222,222,222,222,0,222,94,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[31,45,79,130,7,258,11,3,2],"offset":0,"phase":0,"quadratic_rows":[3,15,14,14,0,0,0,0,0]},"new":461,"old":336,"rank":4,"right":{"linear_Z4":[0,1,0,3,2,0,2,3,2],"matrix_rows":[263,469,455,407,209,474,220,256,288],"offset":3,"phase":2,"quadratic_rows":[82,143,90,14,389,0,389,210,80]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":469,"old":336,"rank":1,"right":{"linear_Z4":[3,0,2,3,0,0,0,0,0],"matrix_rows":[9,37,2,32,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,1,41,0,9,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,1,32,66,136,258,12,4,2],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":475,"old":336,"rank":4,"right":{"linear_Z4":[2,2,2,1,1,0,3,0,2],"matrix_rows":[2,264,192,144,1,12,256,208,288],"offset":371,"phase":2,"quadratic_rows":[0,0,8,12,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":349,"old":337,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":355,"old":337,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":351,"old":338,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":353,"old":338,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":454,"old":339,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,70,5,128,2,256,1],"offset":0,"phase":0,"quadratic_rows":[5,6,3,0,0,0,0,0,0]},"new":458,"old":339,"rank":3,"right":{"linear_Z4":[3,1,1,0,0,0,1,0,1],"matrix_rows":[272,286,89,273,66,68,344,32,128],"offset":4,"phase":1,"quadratic_rows":[329,350,350,23,14,0,327,0,327]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":526,"old":339,"rank":1,"right":{"linear_Z4":[3,0,2,3,0,0,0,0,0],"matrix_rows":[9,37,2,32,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,1,41,0,9,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,16,32,65,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":530,"old":339,"rank":2,"right":{"linear_Z4":[0,2,0,0,3,0,0,0,2],"matrix_rows":[338,66,1,258,4,8,336,32,128],"offset":3,"phase":2,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":349,"old":340,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":340,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":350,"old":341,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":353,"old":341,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":351,"old":342,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":352,"old":342,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":348,"old":343,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,0,2],"matrix_rows":[292,1,2,260,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":355,"old":343,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":350,"old":344,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":352,"old":344,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":348,"old":345,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,0,2,0],"matrix_rows":[164,1,2,132,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":354,"old":345,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":468,"old":346,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,3,2,0],"matrix_rows":[194,1,130,4,8,80,32,128,256],"offset":160,"phase":2,"quadratic_rows":[0,66,0,0,64,0,82,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[12,18,37,68,128,5,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":472,"old":346,"rank":3,"right":{"linear_Z4":[3,1,1,3,2,0,1,2,2],"matrix_rows":[260,130,9,293,194,32,296,80,128],"offset":407,"phase":2,"quadratic_rows":[301,66,5,297,64,9,82,0,9]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":516,"old":346,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,32,64,128,259,1,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":520,"old":346,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,2,3,3],"matrix_rows":[450,192,1,128,4,8,16,32,448],"offset":0,"phase":0,"quadratic_rows":[0,320,0,0,0,0,130,192,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":517,"old":347,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,2,0],"matrix_rows":[64,1,2,4,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,192,64,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[20,42,69,132,1,5,264,2,8],"offset":0,"phase":0,"quadratic_rows":[0,10,4,2,0,0,0,0,0]},"new":523,"old":347,"rank":4,"right":{"linear_Z4":[3,2,1,3,2,0,0,3,3],"matrix_rows":[20,258,9,450,53,386,32,56,256],"offset":5,"phase":2,"quadratic_rows":[61,320,5,57,9,9,130,192,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":527,"old":347,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,3,0,2],"matrix_rows":[322,1,258,4,8,80,32,256,128],"offset":160,"phase":2,"quadratic_rows":[0,66,0,0,64,0,82,0,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[20,42,69,132,2,5,264,1,8],"offset":0,"phase":0,"quadratic_rows":[0,10,4,2,0,0,0,0,0]},"new":533,"old":347,"rank":4,"right":{"linear_Z4":[3,2,1,3,3,0,0,2,3],"matrix_rows":[132,258,9,338,165,274,32,168,256],"offset":5,"phase":2,"quadratic_rows":[173,320,5,169,80,9,18,9,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":356,"old":348,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,2,0,0,0],"matrix_rows":[13,289,2,292,296,16,256,64,384],"offset":1,"phase":1,"quadratic_rows":[301,0,301,301,0,13,0,0,13]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,3,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":658,"old":348,"rank":3,"right":{"linear_Z4":[3,3,0,0,1,0,0,0,2],"matrix_rows":[27,24,288,81,90,4,64,256,384],"offset":3,"phase":2,"quadratic_rows":[75,67,0,17,24,0,3,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,66,1,128,3,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":690,"old":348,"rank":3,"right":{"linear_Z4":[3,1,0,3,2,0,0,0,2],"matrix_rows":[18,9,260,83,64,256,88,32,384],"offset":3,"phase":2,"quadratic_rows":[91,3,0,89,9,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":356,"old":349,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[10,18,35,69,4,7,133,261,5],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":659,"old":349,"rank":3,"right":{"linear_Z4":[3,3,0,2,1,1,0,0,2],"matrix_rows":[20,23,56,297,290,60,256,320,384],"offset":221,"phase":2,"quadratic_rows":[319,311,59,37,23,47,0,0,3]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[15,19,3,36,5,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,5,2,0,0,0,0,0,0]},"new":691,"old":349,"rank":3,"right":{"linear_Z4":[3,0,2,3,1,2,0,0,0],"matrix_rows":[7,55,29,53,6,56,64,128,256],"offset":6,"phase":2,"quadratic_rows":[25,52,26,45,55,26,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":356,"old":350,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,2,0,0,2],"matrix_rows":[271,289,258,292,296,16,256,320,128],"offset":1,"phase":1,"quadratic_rows":[47,15,47,47,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,68,1,130,258,4,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":666,"old":350,"rank":3,"right":{"linear_Z4":[2,2,2,0,3,1,0,3,2],"matrix_rows":[129,288,153,145,34,4,128,256,320],"offset":434,"phase":1,"quadratic_rows":[136,32,0,17,24,34,0,129,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,69,4,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":698,"old":350,"rank":3,"right":{"linear_Z4":[0,2,1,2,3,2,0,3,2],"matrix_rows":[153,260,136,128,6,256,152,32,320],"offset":434,"phase":1,"quadratic_rows":[24,4,6,129,17,0,0,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":356,"old":351,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,2,0,2,0],"matrix_rows":[143,161,130,164,168,16,128,192,256],"offset":1,"phase":1,"quadratic_rows":[47,15,47,47,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,68,1,130,258,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":667,"old":351,"rank":3,"right":{"linear_Z4":[2,2,2,0,3,1,0,2,3],"matrix_rows":[257,160,281,273,34,4,256,128,192],"offset":434,"phase":1,"quadratic_rows":[264,32,0,17,24,34,0,0,257]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,69,4,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":699,"old":351,"rank":3,"right":{"linear_Z4":[0,2,1,2,3,2,0,2,3],"matrix_rows":[281,132,264,256,6,128,280,32,192],"offset":434,"phase":1,"quadratic_rows":[24,4,6,257,17,0,0,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":356,"old":352,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,2,0,0,2],"matrix_rows":[6,33,258,292,40,16,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,262,294,32,0,13,0,0,6]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,18,34,7,1,69,133,261,5],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":674,"old":352,"rank":3,"right":{"linear_Z4":[0,3,3,1,1,2,0,0,2],"matrix_rows":[56,23,17,57,266,300,256,320,384],"offset":245,"phase":2,"quadratic_rows":[62,287,319,47,23,13,0,0,6]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[14,16,35,71,4,5,134,262,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":706,"old":352,"rank":3,"right":{"linear_Z4":[2,0,3,3,2,1,0,0,1],"matrix_rows":[28,25,301,293,38,256,312,320,384],"offset":236,"phase":1,"quadratic_rows":[16,36,310,24,301,310,0,0,308]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":356,"old":353,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,0,0],"matrix_rows":[6,33,66,100,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,70,102,32,0,13,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,34,68,3,129,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":675,"old":353,"rank":3,"right":{"linear_Z4":[0,3,3,0,1,0,0,0,2],"matrix_rows":[48,54,264,1,114,84,256,64,384],"offset":3,"phase":2,"quadratic_rows":[0,70,102,0,48,20,6,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,64,134,2,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":707,"old":353,"rank":3,"right":{"linear_Z4":[0,2,0,0,2,2,2,0,2],"matrix_rows":[257,20,116,256,38,64,8,112,384],"offset":48,"phase":2,"quadratic_rows":[0,36,2,0,0,2,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":356,"old":354,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,2],"matrix_rows":[260,33,2,292,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,2,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":682,"old":354,"rank":2,"right":{"linear_Z4":[2,2,1,1,2,0,0,2,0],"matrix_rows":[136,4,1,10,20,128,32,192,256],"offset":173,"phase":1,"quadratic_rows":[0,8,20,10,4,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,33,64,130,1,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":714,"old":354,"rank":2,"right":{"linear_Z4":[3,2,1,3,2,3,0,0,2],"matrix_rows":[9,292,67,64,260,72,48,256,128],"offset":193,"phase":3,"quadratic_rows":[75,1,36,73,32,52,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":356,"old":355,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,2,0],"matrix_rows":[132,33,2,164,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,2,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":683,"old":355,"rank":2,"right":{"linear_Z4":[2,2,1,1,2,0,0,0,2],"matrix_rows":[264,4,1,10,20,256,32,320,128],"offset":173,"phase":1,"quadratic_rows":[0,8,20,10,4,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,33,64,130,1,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":715,"old":355,"rank":2,"right":{"linear_Z4":[3,2,1,3,2,3,0,2,0],"matrix_rows":[9,164,67,64,132,72,48,128,256],"offset":193,"phase":3,"quadratic_rows":[75,1,36,73,32,52,9,0,0]}},{"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,16,13,11,265,9],"offset":0,"phase":0,"quadratic_rows":[6,11,13,6,0,0,0,0,0]},"new":1,"old":356,"rank":5,"right":{"linear_Z4":[2,0,0,2,2,0,0,0,0],"matrix_rows":[353,258,260,104,16,256,320,288,384],"offset":254,"phase":1,"quadratic_rows":[96,64,32,96,0,13,11,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,34,68,137,1,13,11,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":417,"old":356,"rank":4,"right":{"linear_Z4":[1,0,0,3,0,2,2,0,1],"matrix_rows":[376,258,260,113,281,320,288,256,384],"offset":102,"phase":0,"quadratic_rows":[361,64,32,361,0,13,11,0,265]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,77,8,4,137,11,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":418,"old":356,"rank":4,"right":{"linear_Z4":[0,0,1,0,2,0,0,0,1],"matrix_rows":[341,258,260,92,256,320,276,288,384],"offset":51,"phase":0,"quadratic_rows":[84,64,285,84,13,0,11,0,260]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,43,68,8,2,13,137,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":419,"old":356,"rank":4,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,1],"matrix_rows":[307,258,260,58,256,274,288,320,384],"offset":85,"phase":0,"quadratic_rows":[50,283,32,50,11,13,0,0,258]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[24,35,69,137,1,12,10,265,9],"offset":0,"phase":0,"quadratic_rows":[15,11,13,15,0,0,0,0,0]},"new":420,"old":356,"rank":4,"right":{"linear_Z4":[1,1,1,3,0,2,2,0,1],"matrix_rows":[382,258,260,119,287,320,288,256,384],"offset":102,"phase":0,"quadratic_rows":[361,86,54,361,6,13,11,0,265]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":365,"old":357,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":366,"old":357,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,2,0,0,0],"matrix_rows":[49,33,2,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":367,"old":357,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":368,"old":358,"rank":1,"right":{"linear_Z4":[0,1,0,1,1,2,1,1,2],"matrix_rows":[474,33,258,36,296,272,256,320,384],"offset":0,"phase":0,"quadratic_rows":[32,218,32,250,218,13,218,218,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":369,"old":358,"rank":1,"right":{"linear_Z4":[0,1,0,1,1,1,2,1,2],"matrix_rows":[442,1,258,4,328,336,352,256,384],"offset":0,"phase":0,"quadratic_rows":[0,186,0,250,250,250,56,186,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":370,"old":358,"rank":1,"right":{"linear_Z4":[0,1,0,1,1,1,2,1,2],"matrix_rows":[442,65,258,68,264,336,288,256,384],"offset":0,"phase":0,"quadratic_rows":[64,186,64,186,250,186,21,186,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":368,"old":359,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":371,"old":359,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,0,2,1,2],"matrix_rows":[407,321,258,324,8,336,32,256,384],"offset":0,"phase":0,"quadratic_rows":[215,151,215,0,215,0,21,151,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":372,"old":359,"rank":1,"right":{"linear_Z4":[1,1,1,0,1,0,2,1,2],"matrix_rows":[407,257,258,260,72,336,96,256,384],"offset":0,"phase":0,"quadratic_rows":[151,151,151,64,215,64,56,151,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":365,"old":360,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,2,0,0],"matrix_rows":[68,33,2,100,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":373,"old":360,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,0],"matrix_rows":[100,33,2,68,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,0,32,21,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":374,"old":360,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":369,"old":361,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":371,"old":361,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":375,"old":361,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":366,"old":362,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":373,"old":362,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":376,"old":362,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[49,33,2,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,16,16,13,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":367,"old":363,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":374,"old":363,"rank":1,"right":{"linear_Z4":[0,0,3,0,0,3,2,0,0],"matrix_rows":[100,1,2,68,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,36,0,0,36,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":376,"old":363,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":370,"old":364,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":372,"old":364,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,1,2,0,0],"matrix_rows":[56,1,2,4,72,80,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,120,120,120,56,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":375,"old":364,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,0,1,2],"matrix_rows":[399,289,258,292,296,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[175,143,175,175,0,13,0,143,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":454,"old":365,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[20,2,36,65,8,129,1,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":460,"old":365,"rank":4,"right":{"linear_Z4":[1,2,1,0,2,0,0,2,2],"matrix_rows":[200,2,141,16,329,324,64,96,384],"offset":10,"phase":2,"quadratic_rows":[453,0,461,324,0,0,141,325,141]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":482,"old":365,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[16,42,69,129,258,4,1,10,8],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":488,"old":365,"rank":4,"right":{"linear_Z4":[2,2,0,3,3,3,1,2,0],"matrix_rows":[108,402,68,258,13,130,96,64,400],"offset":95,"phase":2,"quadratic_rows":[12,16,65,41,18,40,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":378,"old":366,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":384,"old":366,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":380,"old":367,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":382,"old":367,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,0,3,2],"matrix_rows":[431,257,258,260,264,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[175,175,175,175,0,175,0,175,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":455,"old":368,"rank":1,"right":{"linear_Z4":[1,3,3,2,3,0,3,3,2],"matrix_rows":[471,257,386,388,136,400,32,448,256],"offset":444,"phase":2,"quadratic_rows":[215,87,87,128,87,0,87,137,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,33,66,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":457,"old":368,"rank":2,"right":{"linear_Z4":[0,0,0,3,1,0,1,1,2],"matrix_rows":[5,479,297,256,292,32,272,320,384],"offset":1,"phase":1,"quadratic_rows":[242,221,250,222,223,5,223,223,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":493,"old":368,"rank":1,"right":{"linear_Z4":[3,3,1,2,3,0,3,1,2],"matrix_rows":[343,257,258,388,136,272,32,320,256],"offset":281,"phase":0,"quadratic_rows":[87,87,215,128,87,0,87,140,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,11,16,35,66,128,259,3,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":497,"old":368,"rank":2,"right":{"linear_Z4":[0,0,2,2,2,0,0,1,0],"matrix_rows":[347,331,129,130,148,24,256,32,192],"offset":114,"phase":0,"quadratic_rows":[144,144,144,0,199,0,144,215,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":378,"old":369,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[24,33,2,4,72,112,64,128,256],"offset":1,"phase":1,"quadratic_rows":[32,0,0,88,120,49,24,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":383,"old":369,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[40,1,2,20,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,16,120,28,104,40,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":379,"old":370,"rank":1,"right":{"linear_Z4":[1,3,3,3,2,1,0,3,2],"matrix_rows":[399,289,258,260,264,48,256,64,384],"offset":99,"phase":0,"quadratic_rows":[175,143,143,143,32,49,0,143,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":382,"old":370,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,2,84,24,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,0,85,16,28,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":380,"old":371,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,0,0,0],"matrix_rows":[5,65,2,84,24,64,32,128,256],"offset":1,"phase":1,"quadratic_rows":[69,0,85,16,28,0,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":381,"old":371,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,2,0,0,0],"matrix_rows":[49,33,2,4,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[17,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":377,"old":372,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,3,0,0,0],"matrix_rows":[40,1,2,20,88,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,16,120,28,104,40,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":384,"old":372,"rank":1,"right":{"linear_Z4":[0,1,1,2,2,0,0,1,2],"matrix_rows":[166,33,258,260,8,48,256,320,384],"offset":240,"phase":0,"quadratic_rows":[32,422,422,0,32,407,0,422,166]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":379,"old":373,"rank":1,"right":{"linear_Z4":[0,1,1,1,1,0,0,1,2],"matrix_rows":[158,1,258,260,264,272,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,414,414,414,414,0,0,414,158]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":381,"old":373,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":377,"old":374,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,3,0,3,2],"matrix_rows":[431,257,258,260,264,16,288,64,384],"offset":1,"phase":1,"quadratic_rows":[175,175,175,175,0,175,0,175,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":383,"old":374,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,0,3,2],"matrix_rows":[386,1,258,4,8,16,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,130,0,0,0,0,0,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":481,"old":375,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,1,2],"matrix_rows":[258,1,386,4,8,144,32,64,256],"offset":293,"phase":0,"quadratic_rows":[0,130,0,0,128,0,0,146,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,33,64,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":485,"old":375,"rank":2,"right":{"linear_Z4":[3,1,0,3,2,0,2,3,2],"matrix_rows":[73,386,65,258,4,72,144,32,256],"offset":321,"phase":3,"quadratic_rows":[9,130,0,9,128,0,0,146,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":517,"old":375,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,3,2],"matrix_rows":[386,1,258,4,8,16,32,192,256],"offset":384,"phase":2,"quadratic_rows":[0,130,0,0,0,0,128,194,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,32,1,64,2,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":519,"old":375,"rank":2,"right":{"linear_Z4":[3,1,3,0,2,0,2,0,0],"matrix_rows":[21,2,17,66,20,8,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,66,5,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":494,"old":376,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[19,46,67,134,262,6,10,2,5],"offset":0,"phase":0,"quadratic_rows":[4,2,9,12,0,0,0,0,0]},"new":500,"old":376,"rank":4,"right":{"linear_Z4":[2,1,2,2,0,1,1,0,3],"matrix_rows":[269,15,450,170,289,234,300,32,48],"offset":299,"phase":1,"quadratic_rows":[34,399,42,70,0,101,360,258,450]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":516,"old":376,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,2,0],"matrix_rows":[194,1,130,4,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[3,2,2,3,0,0,0,0,0],"matrix_rows":[16,40,69,1,132,4,10,258,2],"offset":0,"phase":0,"quadratic_rows":[5,8,1,10,0,0,0,0,0]},"new":522,"old":376,"rank":4,"right":{"linear_Z4":[2,1,0,3,0,1,1,3,0],"matrix_rows":[44,192,36,258,13,322,32,48,384],"offset":87,"phase":1,"quadratic_rows":[12,66,33,41,0,44,450,448,192]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":385,"old":377,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,2,0,3,0],"matrix_rows":[134,33,258,292,40,16,256,320,384],"offset":1,"phase":1,"quadratic_rows":[32,390,422,32,0,13,0,390,134]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,37,64,133,2,263,1,6],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":660,"old":377,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,2,0,1,2],"matrix_rows":[166,32,294,133,290,256,40,272,320],"offset":40,"phase":2,"quadratic_rows":[132,160,1,32,0,138,0,163,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,2,20,35,68,131,4,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":700,"old":377,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[489,170,196,320,64,328,80,352,384],"offset":9,"phase":0,"quadratic_rows":[168,168,128,3,0,3,0,135,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":385,"old":378,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[49,33,2,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,16,16,13,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,64,129,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":661,"old":378,"rank":3,"right":{"linear_Z4":[1,0,3,2,1,2,0,2,3],"matrix_rows":[33,390,384,49,256,388,24,32,64],"offset":219,"phase":0,"quadratic_rows":[17,132,6,16,25,0,0,258,384]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,2,32,68,5,1,128,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":701,"old":378,"rank":3,"right":{"linear_Z4":[0,1,2,2,1,1,2,0,0],"matrix_rows":[33,2,80,64,6,24,96,128,256],"offset":100,"phase":3,"quadratic_rows":[96,6,2,16,56,113,33,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":385,"old":379,"rank":1,"right":{"linear_Z4":[0,1,0,3,3,0,0,1,2],"matrix_rows":[394,1,258,20,280,256,288,320,384],"offset":240,"phase":2,"quadratic_rows":[0,138,16,154,28,0,0,138,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,18,38,4,65,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":668,"old":379,"rank":3,"right":{"linear_Z4":[2,0,2,0,1,0,0,3,2],"matrix_rows":[208,471,157,337,320,324,64,96,384],"offset":0,"phase":0,"quadratic_rows":[26,149,10,149,155,0,0,154,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,21,35,64,133,5,262,4,2],"offset":0,"phase":0,"quadratic_rows":[7,5,3,0,0,0,0,0,0]},"new":692,"old":379,"rank":3,"right":{"linear_Z4":[0,2,1,0,1,0,0,3,2],"matrix_rows":[274,292,438,21,38,288,152,32,320],"offset":403,"phase":3,"quadratic_rows":[20,128,389,144,25,384,0,430,164]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":385,"old":380,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,18,33,68,5,2,4,128,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":669,"old":380,"rank":3,"right":{"linear_Z4":[2,1,1,0,1,2,2,0,0],"matrix_rows":[68,2,24,5,34,80,64,128,256],"offset":41,"phase":3,"quadratic_rows":[4,34,21,80,92,2,24,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,33,65,1,130,256,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":693,"old":380,"rank":3,"right":{"linear_Z4":[2,0,3,1,2,3,0,2,3],"matrix_rows":[28,418,384,5,256,16,24,416,64],"offset":58,"phase":2,"quadratic_rows":[4,160,13,12,0,34,0,258,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":385,"old":381,"rank":1,"right":{"linear_Z4":[0,0,0,1,3,0,2,0,0],"matrix_rows":[8,1,2,20,88,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,16,88,28,0,8,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,18,37,2,65,1,4,128,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":684,"old":381,"rank":3,"right":{"linear_Z4":[2,1,0,2,3,1,3,0,0],"matrix_rows":[116,2,36,21,10,96,32,128,256],"offset":45,"phase":0,"quadratic_rows":[20,10,33,2,81,36,80,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,66,129,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":708,"old":381,"rank":3,"right":{"linear_Z4":[3,0,2,3,3,0,0,2,3],"matrix_rows":[17,394,384,69,256,64,392,80,32],"offset":19,"phase":1,"quadratic_rows":[85,136,1,10,81,0,17,258,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":385,"old":382,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,2,0,1,2],"matrix_rows":[399,289,258,292,296,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[175,143,175,175,0,13,0,143,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[13,17,37,66,130,4,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":685,"old":382,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,2],"matrix_rows":[455,200,165,321,320,324,64,80,384],"offset":17,"phase":0,"quadratic_rows":[34,133,34,128,0,133,0,170,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,64,129,6,256,2,5],"offset":0,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]},"new":709,"old":382,"rank":3,"right":{"linear_Z4":[0,0,2,2,0,2,0,1,3],"matrix_rows":[260,160,288,5,6,256,168,272,64],"offset":224,"phase":1,"quadratic_rows":[4,4,3,160,0,264,0,136,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":385,"old":383,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,2,0,0],"matrix_rows":[68,33,2,100,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[32,0,36,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[10,18,36,64,128,260,4,1,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":676,"old":383,"rank":3,"right":{"linear_Z4":[3,0,1,2,0,3,2,2,3],"matrix_rows":[384,387,100,385,256,68,40,16,64],"offset":338,"phase":2,"quadratic_rows":[3,129,36,32,0,44,0,258,384]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,130,4,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":716,"old":383,"rank":3,"right":{"linear_Z4":[2,3,2,2,0,1,3,1,2],"matrix_rows":[386,68,96,3,256,64,40,80,384],"offset":248,"phase":3,"quadratic_rows":[2,131,0,32,0,104,96,130,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":385,"old":384,"rank":1,"right":{"linear_Z4":[3,1,0,0,2,0,0,1,2],"matrix_rows":[147,257,258,20,24,256,288,64,384],"offset":98,"phase":1,"quadratic_rows":[403,403,16,16,399,0,0,403,147]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,37,64,131,3,256,1,7],"offset":0,"phase":0,"quadratic_rows":[2,5,6,0,0,0,0,0,0]},"new":677,"old":384,"rank":3,"right":{"linear_Z4":[0,0,2,0,2,1,0,1,3],"matrix_rows":[180,272,36,149,18,288,24,32,64],"offset":1,"phase":1,"quadratic_rows":[148,16,289,16,267,420,0,161,308]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,4,39,71,129,1,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":717,"old":384,"rank":3,"right":{"linear_Z4":[2,0,0,3,3,0,2,0,2],"matrix_rows":[89,410,156,64,256,328,336,96,384],"offset":19,"phase":1,"quadratic_rows":[24,152,152,31,31,0,0,6,0]}},{"left":{"linear_Z4":[2,3,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,264,12,13,9,16,18],"offset":0,"phase":0,"quadratic_rows":[4,18,1,8,18,0,0,0,0]},"new":1,"old":385,"rank":5,"right":{"linear_Z4":[0,0,0,2,1,0,1,0,1],"matrix_rows":[81,2,84,8,384,48,256,96,112],"offset":239,"phase":1,"quadratic_rows":[96,256,48,112,92,13,89,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[20,34,68,129,261,5,1,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":417,"old":385,"rank":4,"right":{"linear_Z4":[1,0,2,2,0,2,2,0,1],"matrix_rows":[8,2,13,384,105,256,96,64,48],"offset":99,"phase":0,"quadratic_rows":[101,256,105,36,0,13,5,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,65,132,4,261,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":418,"old":385,"rank":4,"right":{"linear_Z4":[2,0,1,2,2,0,2,0,1],"matrix_rows":[5,2,8,384,80,256,84,16,96],"offset":54,"phase":0,"quadratic_rows":[84,256,85,16,13,0,5,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,33,66,132,262,6,4,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,4,9,0,0,0,0,0]},"new":421,"old":385,"rank":4,"right":{"linear_Z4":[1,0,2,2,0,2,2,0,1],"matrix_rows":[2,5,8,384,97,256,96,64,48],"offset":101,"phase":0,"quadratic_rows":[101,256,97,64,0,5,13,256,386]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,65,132,4,261,5,8,10],"offset":0,"phase":0,"quadratic_rows":[1,10,4,10,0,0,0,0,0]},"new":422,"old":385,"rank":4,"right":{"linear_Z4":[2,0,1,2,2,0,2,0,1],"matrix_rows":[13,2,8,384,80,256,92,16,96],"offset":54,"phase":0,"quadratic_rows":[92,256,85,65,5,0,13,256,386]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":394,"old":386,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":395,"old":386,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":396,"old":386,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,2,0],"matrix_rows":[130,1,146,20,24,128,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":397,"old":387,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,2],"matrix_rows":[257,289,2,36,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":398,"old":387,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,2],"matrix_rows":[257,289,34,4,8,48,256,64,128],"offset":0,"phase":0,"quadratic_rows":[33,32,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":399,"old":387,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":397,"old":388,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":400,"old":388,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":401,"old":388,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":394,"old":389,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,2,0],"matrix_rows":[159,161,130,164,168,144,128,64,256],"offset":0,"phase":0,"quadratic_rows":[63,31,63,63,31,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":402,"old":389,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,1,0,2,0],"matrix_rows":[175,129,146,148,152,128,160,64,256],"offset":0,"phase":0,"quadratic_rows":[47,63,63,63,14,47,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":403,"old":389,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,2,0],"matrix_rows":[159,161,162,132,136,176,128,64,256],"offset":0,"phase":0,"quadratic_rows":[63,63,31,31,63,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":398,"old":390,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":400,"old":390,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,2],"matrix_rows":[258,1,274,20,24,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,16,16,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":404,"old":390,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":395,"old":391,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,2,0],"matrix_rows":[129,161,34,4,8,48,128,64,256],"offset":0,"phase":0,"quadratic_rows":[33,32,0,0,32,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":402,"old":391,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":405,"old":391,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,2,0],"matrix_rows":[129,161,2,36,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":396,"old":392,"rank":1,"right":{"linear_Z4":[0,1,1,1,2,0,0,0,0],"matrix_rows":[14,1,18,20,24,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":403,"old":392,"rank":1,"right":{"linear_Z4":[1,1,0,0,1,2,0,0,0],"matrix_rows":[19,33,34,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[51,51,0,0,51,19,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":405,"old":392,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":399,"old":393,"rank":1,"right":{"linear_Z4":[1,1,1,1,2,1,0,0,2],"matrix_rows":[303,257,274,276,280,256,288,64,128],"offset":0,"phase":0,"quadratic_rows":[47,63,63,63,14,47,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":401,"old":393,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,0,2],"matrix_rows":[287,289,290,260,264,304,256,64,128],"offset":0,"phase":0,"quadratic_rows":[63,63,31,31,63,19,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":404,"old":393,"rank":1,"right":{"linear_Z4":[1,1,1,1,1,2,0,0,2],"matrix_rows":[287,289,258,292,296,272,256,64,128],"offset":0,"phase":0,"quadratic_rows":[63,31,63,63,31,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":468,"old":394,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[16,1,2,4,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,16,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[20,42,68,129,264,1,2,8,5],"offset":0,"phase":0,"quadratic_rows":[4,10,1,2,0,0,0,0,0]},"new":474,"old":394,"rank":4,"right":{"linear_Z4":[3,2,3,0,0,0,3,3,1],"matrix_rows":[264,130,269,210,297,194,292,32,128],"offset":5,"phase":2,"quadratic_rows":[37,144,45,260,66,5,80,130,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":481,"old":394,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[16,1,2,4,8,272,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,272,0,0,0,16]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[20,42,68,129,264,1,5,8,2],"offset":0,"phase":0,"quadratic_rows":[4,10,1,2,0,0,0,0,0]},"new":487,"old":394,"rank":4,"right":{"linear_Z4":[3,2,3,0,0,0,1,3,3],"matrix_rows":[72,130,77,402,105,386,100,32,128],"offset":5,"phase":2,"quadratic_rows":[37,144,45,68,258,5,72,130,272]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":407,"old":395,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":413,"old":395,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":409,"old":396,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":411,"old":396,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,0,2],"matrix_rows":[289,257,2,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":469,"old":397,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,288,64,128],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,33,66,129,258,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":471,"old":397,"rank":2,"right":{"linear_Z4":[2,0,2,1,3,0,3,2,2],"matrix_rows":[264,208,9,2,4,256,144,288,192],"offset":183,"phase":2,"quadratic_rows":[8,0,0,9,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":494,"old":397,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,17,34,67,130,259,3,2],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":496,"old":397,"rank":2,"right":{"linear_Z4":[3,1,3,0,2,0,2,3,0],"matrix_rows":[343,472,385,394,396,256,144,288,192],"offset":180,"phase":0,"quadratic_rows":[215,223,223,214,15,0,15,143,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":407,"old":398,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":398,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":408,"old":399,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,2,0],"matrix_rows":[161,129,2,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":411,"old":399,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":409,"old":400,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":410,"old":400,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,2,0],"matrix_rows":[161,129,2,4,8,16,160,64,256],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":406,"old":401,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":413,"old":401,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":408,"old":402,"rank":1,"right":{"linear_Z4":[3,0,0,0,0,3,0,0,2],"matrix_rows":[289,257,2,4,8,16,288,64,128],"offset":1,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":410,"old":402,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":406,"old":403,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,2],"matrix_rows":[268,1,2,260,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":412,"old":403,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,0,2],"matrix_rows":[274,1,258,4,8,272,32,64,128],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":482,"old":404,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,32,64,128,1,2,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":484,"old":404,"rank":2,"right":{"linear_Z4":[3,1,3,0,0,0,2,2,0],"matrix_rows":[69,2,65,130,68,8,16,32,256],"offset":1,"phase":1,"quadratic_rows":[5,130,5,0,0,0,0,2,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":527,"old":404,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[16,1,2,4,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,16,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,32,64,128,2,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":529,"old":404,"rank":2,"right":{"linear_Z4":[3,1,3,0,0,0,2,2,0],"matrix_rows":[133,2,129,66,132,8,16,32,256],"offset":1,"phase":1,"quadratic_rows":[5,66,5,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":493,"old":405,"rank":1,"right":{"linear_Z4":[1,1,0,1,1,0,1,0,2],"matrix_rows":[91,257,258,4,264,272,32,320,128],"offset":0,"phase":0,"quadratic_rows":[347,347,0,347,347,0,347,0,91]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,41,65,134,7,262,10,6,2],"offset":0,"phase":0,"quadratic_rows":[15,11,5,11,0,0,0,0,0]},"new":499,"old":405,"rank":4,"right":{"linear_Z4":[3,2,3,0,3,0,2,0,3],"matrix_rows":[455,472,152,410,145,474,156,128,160],"offset":466,"phase":1,"quadratic_rows":[343,389,351,276,285,0,389,66,351]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":526,"old":405,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,160,64,256],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,40,64,129,4,257,10,1,2],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":532,"old":405,"rank":4,"right":{"linear_Z4":[2,1,2,1,2,0,3,2,0],"matrix_rows":[136,320,16,258,9,322,4,128,160],"offset":469,"phase":2,"quadratic_rows":[8,66,0,9,0,0,66,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":414,"old":406,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,16,14,3,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[10,18,32,68,129,1,3,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":582,"old":406,"rank":3,"right":{"linear_Z4":[3,3,0,0,0,0,1,0,2],"matrix_rows":[80,83,264,113,98,4,256,32,384],"offset":3,"phase":2,"quadratic_rows":[35,51,0,0,66,3,80,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,19,36,64,130,3,1,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":583,"old":406,"rank":3,"right":{"linear_Z4":[3,1,0,0,3,0,2,0,2],"matrix_rows":[66,17,260,99,32,256,8,112,384],"offset":3,"phase":2,"quadratic_rows":[115,3,0,0,113,17,17,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":414,"old":407,"rank":1,"right":{"linear_Z4":[1,1,0,0,2,0,0,0,2],"matrix_rows":[3,257,274,20,24,256,288,64,384],"offset":0,"phase":0,"quadratic_rows":[259,275,16,16,14,0,0,0,3]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,35,7,70,134,4,262,6],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":584,"old":407,"rank":3,"right":{"linear_Z4":[3,3,0,1,2,0,1,0,2],"matrix_rows":[71,68,88,265,282,92,256,288,384],"offset":222,"phase":2,"quadratic_rows":[335,351,91,31,14,0,71,0,3]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[13,21,3,36,70,134,4,262,6],"offset":0,"phase":0,"quadratic_rows":[2,1,4,0,0,0,0,0,0]},"new":585,"old":407,"rank":3,"right":{"linear_Z4":[0,0,3,3,2,0,2,0,2],"matrix_rows":[23,20,27,261,278,88,256,288,384],"offset":221,"phase":2,"quadratic_rows":[264,280,20,75,70,0,24,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":414,"old":408,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,2,0,0,0],"matrix_rows":[13,289,2,292,296,16,256,64,384],"offset":1,"phase":1,"quadratic_rows":[301,0,301,301,0,13,0,0,13]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,2,64,4,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":605,"old":408,"rank":3,"right":{"linear_Z4":[0,2,0,3,3,0,2,0,0],"matrix_rows":[28,4,64,1,14,16,32,128,256],"offset":55,"phase":1,"quadratic_rows":[0,12,2,26,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,4,2,261,5],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":615,"old":408,"rank":3,"right":{"linear_Z4":[0,0,3,3,0,0,2,0,2],"matrix_rows":[257,76,32,256,2,68,72,16,384],"offset":11,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":414,"old":409,"rank":1,"right":{"linear_Z4":[1,0,1,1,0,2,0,0,0],"matrix_rows":[13,33,2,36,40,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[45,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,18,34,69,133,7,1,261,5],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":586,"old":409,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,1,1,0,2],"matrix_rows":[104,71,65,105,290,300,256,272,384],"offset":245,"phase":2,"quadratic_rows":[110,359,367,37,0,47,71,0,6]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[12,23,35,71,131,5,1,259,3],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":587,"old":409,"rank":3,"right":{"linear_Z4":[1,1,3,1,0,1,2,0,2],"matrix_rows":[106,10,75,101,358,256,360,272,384],"offset":1,"phase":1,"quadratic_rows":[47,335,7,331,0,33,10,0,10]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":414,"old":410,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,2,0],"matrix_rows":[129,161,2,36,40,16,128,64,256],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,2,68,129,1,256,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":610,"old":410,"rank":3,"right":{"linear_Z4":[3,2,0,3,0,3,2,0,1],"matrix_rows":[97,268,260,65,14,256,272,96,128],"offset":55,"phase":1,"quadratic_rows":[33,12,258,266,0,33,0,0,268]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,32,64,128,2,4,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":620,"old":410,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,2,1,0],"matrix_rows":[1,160,64,128,2,4,8,16,256],"offset":13,"phase":1,"quadratic_rows":[128,0,0,0,0,128,0,161,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":414,"old":411,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,2],"matrix_rows":[257,289,2,36,40,16,256,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,32,32,0,13,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[13,16,32,66,130,260,1,2,4],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":588,"old":411,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,0,3,2,3],"matrix_rows":[257,136,353,321,10,4,128,144,256],"offset":242,"phase":1,"quadratic_rows":[288,8,0,10,0,65,96,0,257]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,130,261,4,2,1],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":589,"old":411,"rank":3,"right":{"linear_Z4":[0,2,1,2,0,2,3,2,3],"matrix_rows":[353,132,288,256,6,128,8,144,352],"offset":242,"phase":1,"quadratic_rows":[96,4,6,0,0,257,65,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":414,"old":412,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,0,2],"matrix_rows":[271,257,274,276,280,256,288,64,128],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,68,129,257,2,4,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":590,"old":412,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,0,3,3,2],"matrix_rows":[272,132,204,17,2,196,128,256,288],"offset":409,"phase":1,"quadratic_rows":[16,0,136,68,17,0,72,132,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,70,128,257,4,2,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":591,"old":412,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,0,3,3,2],"matrix_rows":[258,204,136,3,256,128,200,16,288],"offset":409,"phase":1,"quadratic_rows":[2,3,72,132,0,0,68,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":414,"old":413,"rank":1,"right":{"linear_Z4":[3,3,3,3,2,0,0,2,0],"matrix_rows":[143,129,146,148,152,128,160,64,256],"offset":1,"phase":1,"quadratic_rows":[15,31,31,31,14,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,68,129,257,2,1,4],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":592,"old":413,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,0,3,2,3],"matrix_rows":[144,260,332,17,2,324,256,128,160],"offset":409,"phase":1,"quadratic_rows":[16,0,264,68,17,0,72,0,260]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,70,128,257,4,1,2],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":593,"old":413,"rank":3,"right":{"linear_Z4":[2,1,0,2,2,0,3,2,3],"matrix_rows":[130,332,264,3,128,256,328,16,160],"offset":409,"phase":1,"quadratic_rows":[2,3,72,260,0,0,68,0,264]}},{"left":{"linear_Z4":[3,3,2,2,2,0,0,0,0],"matrix_rows":[33,66,132,8,14,13,16,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,3,3,0,0,0,0,0]},"new":1,"old":414,"rank":5,"right":{"linear_Z4":[0,0,2,2,0,0,2,0,0],"matrix_rows":[257,258,308,56,64,288,272,256,384],"offset":251,"phase":1,"quadratic_rows":[32,16,48,48,14,13,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,46,68,8,140,13,2,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":419,"old":414,"rank":4,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,1],"matrix_rows":[257,258,358,106,288,322,256,272,384],"offset":85,"phase":0,"quadratic_rows":[32,334,98,98,0,13,14,0,258]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[29,35,69,9,15,140,1,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":420,"old":414,"rank":4,"right":{"linear_Z4":[1,3,1,1,0,0,2,0,1],"matrix_rows":[257,258,347,87,335,272,256,288,384],"offset":102,"phase":0,"quadratic_rows":[323,83,28,28,14,0,3,0,257]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[29,34,68,8,14,140,1,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":421,"old":414,"rank":4,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,1],"matrix_rows":[257,258,341,89,321,272,256,288,384],"offset":102,"phase":0,"quadratic_rows":[333,16,81,81,14,0,13,0,257]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[17,34,72,140,14,13,4,268,12],"offset":0,"phase":0,"quadratic_rows":[13,14,15,15,0,0,0,0,0]},"new":422,"old":414,"rank":4,"right":{"linear_Z4":[0,0,1,3,2,2,0,0,1],"matrix_rows":[257,258,376,116,288,272,332,256,384],"offset":51,"phase":0,"quadratic_rows":[32,16,316,316,14,13,0,0,268]}},{"left":{"linear_Z4":[2,3,2,3,2,2,2,2,0],"matrix_rows":[1,264,4,10,16,2,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":0,"old":415,"rank":8,"right":{"linear_Z4":[2,3,2,1,2,0,2,2,2],"matrix_rows":[1,40,4,34,16,64,128,256,42],"offset":8,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":415,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,4,40,16,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,2,2,2,2,2,0],"matrix_rows":[258,3,1,4,8,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":0,"old":416,"rank":8,"right":{"linear_Z4":[3,1,0,2,2,2,2,2,2],"matrix_rows":[6,5,8,16,32,64,128,256,7],"offset":2,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,1,8,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":416,"rank":1,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[5,4,6,8,16,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,3,2,2,2,2,0],"matrix_rows":[264,2,4,9,1,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"new":0,"old":417,"rank":8,"right":{"linear_Z4":[3,2,2,1,0,2,2,2,2],"matrix_rows":[24,2,4,17,32,64,128,256,25],"offset":8,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":417,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[17,16,2,4,24,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,2,3,2,2,2,0],"matrix_rows":[1,2,272,8,20,4,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"new":0,"old":418,"rank":8,"right":{"linear_Z4":[2,2,3,2,1,0,2,2,2],"matrix_rows":[1,2,48,8,36,64,128,256,52],"offset":16,"phase":1,"quadratic_rows":[0,0,20,0,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":418,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[36,1,2,32,8,48,64,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,3,2,2,2,0],"matrix_rows":[1,272,4,8,18,32,2,64,128],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"new":0,"old":419,"rank":8,"right":{"linear_Z4":[2,3,2,2,1,2,0,2,2],"matrix_rows":[1,80,4,8,66,32,128,256,82],"offset":16,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":419,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,8,80,32,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,3,3,3,2,2,0],"matrix_rows":[318,3,5,9,17,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"new":0,"old":420,"rank":8,"right":{"linear_Z4":[3,1,1,1,1,1,0,2,2],"matrix_rows":[126,125,123,119,111,95,128,256,127],"offset":62,"phase":1,"quadratic_rows":[63,63,63,63,63,63,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":420,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,66,68,72,80,96,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,2,2,3,2,2,0],"matrix_rows":[288,2,4,8,16,33,1,64,128],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"new":0,"old":421,"rank":8,"right":{"linear_Z4":[3,2,2,2,2,1,0,2,2],"matrix_rows":[96,2,4,8,16,65,128,256,97],"offset":32,"phase":1,"quadratic_rows":[33,0,0,0,0,33,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":421,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,8,16,96,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,2,2,2,2,0],"matrix_rows":[1,2,264,12,16,32,4,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":0,"old":422,"rank":8,"right":{"linear_Z4":[2,2,3,1,2,2,0,2,2],"matrix_rows":[1,2,72,68,16,32,128,256,76],"offset":8,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":422,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,72,16,32,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":17,"old":423,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,0,0,0,0],"matrix_rows":[5,41,10,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,8,37,11,0,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":28,"old":423,"rank":1,"right":{"linear_Z4":[3,0,3,0,2,0,0,0,0],"matrix_rows":[21,17,2,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":46,"old":423,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,2,0],"matrix_rows":[208,1,2,4,8,144,32,192,256],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":57,"old":423,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,2,0],"matrix_rows":[133,129,2,132,8,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":75,"old":423,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,0,3,2],"matrix_rows":[400,1,2,4,8,272,32,64,384],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,144,0,0,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":86,"old":423,"rank":1,"right":{"linear_Z4":[3,3,0,3,3,0,3,3,2],"matrix_rows":[475,257,258,4,264,272,32,320,384],"offset":1,"phase":1,"quadratic_rows":[219,219,0,219,219,0,219,219,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":336,"old":423,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,2],"matrix_rows":[265,257,2,4,264,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":347,"old":423,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,0,3,0,2],"matrix_rows":[322,1,258,4,8,16,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,66,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":365,"old":423,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,2,0,0],"matrix_rows":[73,65,2,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":376,"old":423,"rank":1,"right":{"linear_Z4":[0,0,3,3,2,0,0,0,0],"matrix_rows":[28,1,2,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":394,"old":423,"rank":1,"right":{"linear_Z4":[0,3,0,0,3,0,0,2,0],"matrix_rows":[146,1,130,4,8,144,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,18,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":405,"old":423,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,2,0],"matrix_rows":[140,1,2,132,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,21,38,65,135,1,2,263,7],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":425,"old":423,"rank":3,"right":{"linear_Z4":[2,2,2,1,3,0,1,3,3],"matrix_rows":[218,477,223,297,322,292,32,272,384],"offset":0,"phase":0,"quadratic_rows":[42,325,34,217,216,5,218,216,258]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,21,35,68,2,4,135,263,7],"offset":0,"phase":0,"quadratic_rows":[3,7,6,0,0,0,0,0,0]},"new":426,"old":423,"rank":3,"right":{"linear_Z4":[2,2,2,1,1,0,3,3,3],"matrix_rows":[223,477,218,289,274,300,32,320,384],"offset":0,"phase":0,"quadratic_rows":[34,277,42,220,218,5,216,216,258]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,20,33,64,129,256,1,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":427,"old":423,"rank":3,"right":{"linear_Z4":[1,1,1,0,1,0,2,3,0],"matrix_rows":[21,384,258,65,386,68,8,80,32],"offset":0,"phase":0,"quadratic_rows":[85,130,85,0,85,0,21,130,0]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[28,2,37,76,129,5,8,265,9],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":433,"old":423,"rank":4,"right":{"linear_Z4":[2,2,0,2,3,0,0,2,2],"matrix_rows":[468,2,9,205,293,32,296,336,384],"offset":15,"phase":0,"quadratic_rows":[480,0,24,484,148,9,9,25,9]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[18,33,67,130,264,3,1,12,4],"offset":0,"phase":0,"quadratic_rows":[1,2,12,12,0,0,0,0,0]},"new":434,"old":423,"rank":4,"right":{"linear_Z4":[3,1,3,3,1,0,2,3,0],"matrix_rows":[2,9,384,272,101,70,32,104,400],"offset":2,"phase":1,"quadratic_rows":[109,70,7,105,144,9,11,144,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,65,1,128,260,6,2],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":435,"old":423,"rank":3,"right":{"linear_Z4":[0,1,1,1,2,0,1,3,0],"matrix_rows":[14,384,320,1,18,20,24,32,448],"offset":0,"phase":0,"quadratic_rows":[0,30,30,30,14,0,192,192,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,35,67,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":710,"old":424,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,1],"matrix_rows":[281,28,129,2,256,264,272,32,64],"offset":18,"phase":0,"quadratic_rows":[409,0,280,5,5,0,0,1,261]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,34,66,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":711,"old":424,"rank":2,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,2],"matrix_rows":[261,153,257,2,256,136,144,32,64],"offset":17,"phase":0,"quadratic_rows":[156,0,1,25,25,0,0,1,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,35,66,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":712,"old":424,"rank":2,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[429,153,257,2,288,264,32,64,384],"offset":64,"phase":3,"quadratic_rows":[52,0,137,52,169,153,0,52,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,67,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":713,"old":424,"rank":2,"right":{"linear_Z4":[2,0,0,1,0,0,0,0,1],"matrix_rows":[408,212,9,2,320,64,272,32,384],"offset":37,"phase":3,"quadratic_rows":[8,0,400,473,76,0,408,76,332]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":714,"old":424,"rank":1,"right":{"linear_Z4":[1,0,3,1,3,0,0,0,0],"matrix_rows":[157,385,2,260,392,272,32,64,256],"offset":275,"phase":0,"quadratic_rows":[285,0,413,285,413,0,0,276,157]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":715,"old":424,"rank":1,"right":{"linear_Z4":[3,0,1,3,1,0,0,0,0],"matrix_rows":[157,257,2,388,264,400,32,64,256],"offset":297,"phase":0,"quadratic_rows":[413,0,285,413,285,0,0,265,157]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,32,66,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":716,"old":424,"rank":2,"right":{"linear_Z4":[0,0,0,2,1,0,0,0,1],"matrix_rows":[165,401,257,2,288,24,32,64,384],"offset":98,"phase":3,"quadratic_rows":[52,0,385,16,441,401,0,52,308]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,2,19,35,64,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":717,"old":424,"rank":2,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[153,156,256,258,264,272,32,64,384],"offset":4,"phase":3,"quadratic_rows":[408,0,152,261,261,0,0,261,153]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,32,66,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":718,"old":425,"rank":2,"right":{"linear_Z4":[2,1,0,0,0,0,0,0,1],"matrix_rows":[390,212,3,64,260,8,320,32,384],"offset":13,"phase":3,"quadratic_rows":[2,455,82,0,388,0,390,82,338]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,66,1,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":719,"old":425,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,435,257,258,32,8,288,64,384],"offset":16,"phase":3,"quadratic_rows":[52,52,163,0,131,135,0,52,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,19,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":720,"old":425,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,1],"matrix_rows":[263,22,129,258,260,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[391,17,17,0,262,0,0,1,273]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,17,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":721,"old":425,"rank":2,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,2],"matrix_rows":[135,273,257,130,132,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[150,7,7,0,1,0,0,1,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,19,33,2,64,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":722,"old":425,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,150,256,258,260,264,32,64,384],"offset":4,"phase":3,"quadratic_rows":[390,273,273,0,134,0,0,273,135]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,32,66,1,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":723,"old":425,"rank":2,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,1],"matrix_rows":[389,177,257,6,32,8,288,64,384],"offset":25,"phase":3,"quadratic_rows":[52,4,423,0,385,389,0,52,308]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,19,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":724,"old":425,"rank":2,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[135,276,129,130,260,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[7,7,147,0,4,0,0,4,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,66,128,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":725,"old":425,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,1],"matrix_rows":[263,19,257,258,132,8,256,32,64],"offset":66,"phase":0,"quadratic_rows":[20,20,391,0,259,0,0,4,276]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":734,"old":426,"rank":1,"right":{"linear_Z4":[1,1,3,0,0,0,0,3,0],"matrix_rows":[199,321,322,260,8,16,32,256,384],"offset":135,"phase":0,"quadratic_rows":[391,391,455,0,0,0,388,455,199]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":735,"old":426,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,3,3,2],"matrix_rows":[455,257,258,256,264,16,32,320,384],"offset":9,"phase":0,"quadratic_rows":[199,199,195,0,0,0,199,199,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":736,"old":426,"rank":1,"right":{"linear_Z4":[3,1,1,0,0,0,0,3,0],"matrix_rows":[199,257,322,324,8,16,32,256,384],"offset":141,"phase":0,"quadratic_rows":[455,391,391,0,0,0,385,455,199]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":737,"old":426,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,3,3,2],"matrix_rows":[455,256,258,260,8,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[198,199,199,0,0,0,199,199,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":738,"old":426,"rank":1,"right":{"linear_Z4":[1,3,3,0,0,0,1,0,0],"matrix_rows":[199,385,258,260,8,16,32,448,256],"offset":387,"phase":0,"quadratic_rows":[327,455,455,0,0,0,327,262,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":739,"old":426,"rank":1,"right":{"linear_Z4":[3,1,1,0,0,0,3,0,0],"matrix_rows":[199,257,386,388,8,16,32,320,256],"offset":269,"phase":0,"quadratic_rows":[455,327,327,0,0,0,455,321,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":740,"old":426,"rank":1,"right":{"linear_Z4":[3,3,1,0,0,0,1,0,0],"matrix_rows":[199,257,258,388,8,16,32,448,256],"offset":393,"phase":0,"quadratic_rows":[455,455,327,0,0,0,327,259,199]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":741,"old":426,"rank":1,"right":{"linear_Z4":[1,1,3,0,0,0,3,0,0],"matrix_rows":[199,385,386,260,8,16,32,320,256],"offset":263,"phase":0,"quadratic_rows":[327,327,455,0,0,0,455,324,199]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,32,65,128,1,259,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":726,"old":427,"rank":2,"right":{"linear_Z4":[1,1,3,0,3,0,0,0,3],"matrix_rows":[342,81,339,256,68,24,64,32,384],"offset":15,"phase":0,"quadratic_rows":[259,263,278,16,28,0,0,0,263]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,18,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":727,"old":427,"rank":2,"right":{"linear_Z4":[2,0,2,2,2,0,2,0,0],"matrix_rows":[97,21,81,2,32,24,96,128,256],"offset":117,"phase":3,"quadratic_rows":[36,0,49,16,44,21,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,67,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":728,"old":427,"rank":2,"right":{"linear_Z4":[3,2,3,1,0,0,0,0,0],"matrix_rows":[5,24,113,26,100,32,64,128,256],"offset":43,"phase":0,"quadratic_rows":[117,24,101,42,35,29,5,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,3,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":729,"old":427,"rank":2,"right":{"linear_Z4":[1,0,1,3,2,0,0,0,0],"matrix_rows":[29,24,105,2,124,32,64,128,256],"offset":55,"phase":1,"quadratic_rows":[117,0,101,56,41,29,5,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,34,65,2,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":730,"old":427,"rank":2,"right":{"linear_Z4":[2,0,2,0,1,0,0,0,0],"matrix_rows":[5,29,113,2,100,32,64,128,256],"offset":35,"phase":1,"quadratic_rows":[104,0,120,53,60,29,5,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,3,2,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":731,"old":427,"rank":2,"right":{"linear_Z4":[1,2,1,0,1,0,0,0,0],"matrix_rows":[29,24,105,26,124,32,64,128,256],"offset":63,"phase":0,"quadratic_rows":[117,24,101,34,51,29,5,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,66,1,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":732,"old":427,"rank":2,"right":{"linear_Z4":[0,0,1,2,3,2,1,0,0],"matrix_rows":[65,84,32,2,100,24,96,128,256],"offset":101,"phase":2,"quadratic_rows":[96,0,52,16,60,21,65,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,18,32,65,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":733,"old":427,"rank":2,"right":{"linear_Z4":[0,2,3,0,2,0,1,0,0],"matrix_rows":[39,83,81,70,32,24,96,128,256],"offset":26,"phase":3,"quadratic_rows":[36,48,69,16,106,83,116,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,32,65,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":702,"old":428,"rank":2,"right":{"linear_Z4":[2,3,2,0,1,3,1,0,0],"matrix_rows":[116,114,21,86,96,8,32,128,256],"offset":77,"phase":0,"quadratic_rows":[20,38,83,0,117,114,116,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,34,67,128,3,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":703,"old":428,"rank":2,"right":{"linear_Z4":[2,1,0,2,2,0,0,0,0],"matrix_rows":[17,23,69,270,64,256,80,32,384],"offset":43,"phase":0,"quadratic_rows":[66,283,280,6,70,0,17,0,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,8,19,33,67,128,3,257,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":704,"old":428,"rank":2,"right":{"linear_Z4":[3,0,0,2,0,0,1,0,0],"matrix_rows":[348,281,333,6,64,256,80,32,384],"offset":37,"phase":3,"quadratic_rows":[85,4,83,0,5,0,69,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,32,66,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":705,"old":428,"rank":2,"right":{"linear_Z4":[2,2,2,0,2,0,2,0,0],"matrix_rows":[97,21,69,6,96,8,32,128,256],"offset":93,"phase":3,"quadratic_rows":[48,4,50,0,37,21,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,17,35,66,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":706,"old":428,"rank":2,"right":{"linear_Z4":[0,0,2,2,3,0,1,0,0],"matrix_rows":[57,77,69,6,96,88,32,128,256],"offset":98,"phase":3,"quadratic_rows":[48,4,106,36,81,77,116,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,66,1,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":707,"old":428,"rank":2,"right":{"linear_Z4":[0,2,3,0,1,2,1,0,0],"matrix_rows":[65,84,32,6,96,8,112,128,256],"offset":29,"phase":2,"quadratic_rows":[96,4,54,0,52,21,65,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,17,32,67,2,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":708,"old":428,"rank":2,"right":{"linear_Z4":[2,0,1,0,2,0,0,0,0],"matrix_rows":[17,23,101,32,64,8,112,128,256],"offset":11,"phase":1,"quadratic_rows":[98,53,54,0,102,23,17,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,19,34,65,1,2,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":709,"old":428,"rank":2,"right":{"linear_Z4":[0,3,2,1,3,1,1,0,0],"matrix_rows":[116,42,21,86,96,88,32,128,256],"offset":114,"phase":2,"quadratic_rows":[20,126,83,122,95,42,94,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,64,131,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":694,"old":429,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,1],"matrix_rows":[41,298,256,130,4,264,16,288,64],"offset":5,"phase":0,"quadratic_rows":[296,426,0,3,0,3,0,2,259]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,34,64,130,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":695,"old":429,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,1,0,0,2],"matrix_rows":[259,170,256,258,4,136,16,160,64],"offset":5,"phase":0,"quadratic_rows":[2,169,0,42,0,42,0,2,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,34,2,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":696,"old":429,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,2,0,2,2],"matrix_rows":[435,170,272,258,4,16,288,64,384],"offset":32,"phase":3,"quadratic_rows":[162,25,0,178,170,25,0,25,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,35,64,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":697,"old":429,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,1,0,0,1],"matrix_rows":[201,424,320,34,4,264,16,64,384],"offset":138,"phase":3,"quadratic_rows":[392,32,0,97,0,490,424,97,353]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,34,64,131,256,2,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":698,"old":429,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,1],"matrix_rows":[35,298,256,258,4,136,16,288,64],"offset":5,"phase":0,"quadratic_rows":[290,9,0,426,0,9,0,8,265]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,64,130,256,2,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":699,"old":429,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,1,0,0,2],"matrix_rows":[265,170,256,130,4,264,16,160,64],"offset":5,"phase":0,"quadratic_rows":[8,42,0,163,0,42,0,8,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,2,19,32,67,128,259,3],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":700,"old":429,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,2,0,2,2],"matrix_rows":[429,170,260,4,264,16,288,64,384],"offset":8,"phase":3,"quadratic_rows":[168,172,170,7,0,7,0,7,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,32,64,130,2,259,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":701,"old":429,"rank":2,"right":{"linear_Z4":[0,0,0,2,0,1,0,0,1],"matrix_rows":[195,418,320,258,4,40,16,64,384],"offset":162,"phase":3,"quadratic_rows":[386,97,0,32,0,490,418,97,353]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,32,64,130,256,1,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":678,"old":430,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,1],"matrix_rows":[263,37,257,130,260,8,16,256,64],"offset":130,"phase":0,"quadratic_rows":[34,391,34,0,0,261,0,2,290]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,11,17,32,64,130,256,1,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":679,"old":430,"rank":2,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,2],"matrix_rows":[135,290,129,258,132,8,16,256,64],"offset":130,"phase":0,"quadratic_rows":[7,165,7,0,0,2,0,2,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,11,17,32,65,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":680,"old":430,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,163,257,258,256,8,272,64,384],"offset":16,"phase":3,"quadratic_rows":[292,292,387,0,0,131,0,292,135]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,33,64,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":681,"old":430,"rank":2,"right":{"linear_Z4":[2,1,0,0,0,0,0,0,3],"matrix_rows":[390,420,3,256,260,264,16,64,384],"offset":13,"phase":3,"quadratic_rows":[2,135,290,0,0,388,0,290,420]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":682,"old":430,"rank":1,"right":{"linear_Z4":[1,1,3,0,0,3,0,0,0],"matrix_rows":[167,385,386,260,8,16,288,64,256],"offset":263,"phase":0,"quadratic_rows":[295,295,423,0,0,423,0,292,167]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":683,"old":430,"rank":1,"right":{"linear_Z4":[3,3,1,0,0,1,0,0,0],"matrix_rows":[167,257,258,388,8,16,416,64,256],"offset":329,"phase":0,"quadratic_rows":[423,423,295,0,0,295,0,259,167]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,11,17,32,65,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":684,"old":430,"rank":2,"right":{"linear_Z4":[2,0,1,0,0,0,0,0,3],"matrix_rows":[390,418,5,258,256,8,272,64,384],"offset":21,"phase":3,"quadratic_rows":[4,292,135,0,0,386,0,292,418]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,33,64,2,128,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":685,"old":430,"rank":2,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[135,165,257,256,260,264,16,64,384],"offset":8,"phase":3,"quadratic_rows":[290,389,290,0,0,133,0,290,135]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":670,"old":431,"rank":1,"right":{"linear_Z4":[0,3,0,2,0,0,2,0,0],"matrix_rows":[6,1,66,64,8,80,32,128,256],"offset":52,"phase":3,"quadratic_rows":[0,70,66,0,0,0,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":671,"old":431,"rank":1,"right":{"linear_Z4":[1,2,3,0,0,2,0,0,0],"matrix_rows":[37,35,32,36,8,48,64,128,256],"offset":7,"phase":3,"quadratic_rows":[7,1,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":672,"old":431,"rank":1,"right":{"linear_Z4":[2,0,0,1,0,0,0,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":19,"phase":3,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":673,"old":431,"rank":1,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,0],"matrix_rows":[8,1,10,12,64,80,96,128,256],"offset":29,"phase":0,"quadratic_rows":[0,8,8,70,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":674,"old":431,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,0,0],"matrix_rows":[8,9,10,12,64,80,96,128,256],"offset":35,"phase":3,"quadratic_rows":[8,8,8,79,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":675,"old":431,"rank":1,"right":{"linear_Z4":[0,2,2,2,0,0,0,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":45,"phase":0,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":676,"old":431,"rank":1,"right":{"linear_Z4":[0,0,3,2,0,2,0,0,0],"matrix_rows":[6,1,32,36,8,48,64,128,256],"offset":56,"phase":3,"quadratic_rows":[0,36,38,0,0,6,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":677,"old":431,"rank":1,"right":{"linear_Z4":[1,3,2,0,0,0,2,0,0],"matrix_rows":[67,69,66,64,8,80,32,128,256],"offset":11,"phase":3,"quadratic_rows":[7,3,1,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":662,"old":432,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,0,0,2,2],"matrix_rows":[263,257,386,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[7,135,7,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":663,"old":432,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,0,0,0,2],"matrix_rows":[391,385,258,388,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[7,135,7,0,0,0,0,2,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":664,"old":432,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,1,2],"matrix_rows":[135,256,258,260,8,272,32,64,384],"offset":32,"phase":3,"quadratic_rows":[390,391,391,0,0,0,0,391,135]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":665,"old":432,"rank":1,"right":{"linear_Z4":[3,2,3,0,0,0,0,3,2],"matrix_rows":[389,257,6,256,8,16,32,320,384],"offset":133,"phase":3,"quadratic_rows":[133,4,135,0,0,0,0,133,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":666,"old":432,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,0,0,2,2],"matrix_rows":[263,385,258,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[135,7,7,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":667,"old":432,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,0,0,0,2],"matrix_rows":[391,257,386,388,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[135,7,7,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":668,"old":432,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,0,1,2],"matrix_rows":[135,257,256,260,8,16,288,64,384],"offset":64,"phase":3,"quadratic_rows":[391,389,391,0,0,0,0,391,135]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":669,"old":432,"rank":1,"right":{"linear_Z4":[2,3,3,0,0,0,0,3,2],"matrix_rows":[390,5,258,256,8,16,32,320,384],"offset":131,"phase":3,"quadratic_rows":[4,134,135,0,0,0,0,134,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":638,"old":433,"rank":1,"right":{"linear_Z4":[3,0,0,2,3,0,0,3,2],"matrix_rows":[401,257,2,4,24,256,32,320,384],"offset":145,"phase":3,"quadratic_rows":[145,0,0,16,153,0,0,145,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":639,"old":433,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,0,0,1,2],"matrix_rows":[153,256,2,260,264,272,32,64,384],"offset":8,"phase":3,"quadratic_rows":[408,0,0,409,409,0,0,409,153]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":640,"old":433,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,0,0,2,2],"matrix_rows":[281,257,2,4,392,272,32,64,256],"offset":0,"phase":0,"quadratic_rows":[25,0,0,153,25,0,0,8,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":641,"old":433,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,0,0,0,2],"matrix_rows":[409,385,2,4,264,400,32,64,256],"offset":0,"phase":0,"quadratic_rows":[25,0,0,153,25,0,0,8,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":642,"old":433,"rank":1,"right":{"linear_Z4":[2,0,0,3,3,0,0,3,2],"matrix_rows":[408,17,2,4,264,256,32,320,384],"offset":131,"phase":3,"quadratic_rows":[16,0,0,152,153,0,0,152,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":643,"old":433,"rank":1,"right":{"linear_Z4":[1,0,0,0,1,0,0,1,2],"matrix_rows":[153,257,2,4,256,272,288,64,384],"offset":64,"phase":3,"quadratic_rows":[409,0,0,401,409,0,0,409,153]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":644,"old":433,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,0,0,2,2],"matrix_rows":[281,385,2,4,264,272,32,64,256],"offset":0,"phase":0,"quadratic_rows":[153,0,0,25,25,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":645,"old":433,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,0,0,0,2],"matrix_rows":[409,257,2,4,392,400,32,64,256],"offset":0,"phase":0,"quadratic_rows":[153,0,0,25,25,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":646,"old":434,"rank":1,"right":{"linear_Z4":[0,1,0,1,0,0,0,0,2],"matrix_rows":[282,1,274,4,280,256,32,64,384],"offset":53,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":647,"old":434,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":83,"phase":0,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":648,"old":434,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,0],"matrix_rows":[8,1,2,4,280,256,32,64,384],"offset":49,"phase":3,"quadratic_rows":[0,0,0,280,8,0,0,0,8]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":649,"old":434,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[9,64,2,68,72,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[72,0,0,73,0,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":650,"old":434,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,32,64,384],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":651,"old":434,"rank":1,"right":{"linear_Z4":[1,2,0,2,0,0,2,0,0],"matrix_rows":[9,65,2,4,64,16,96,128,256],"offset":84,"phase":1,"quadratic_rows":[73,0,0,65,0,0,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":652,"old":434,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[275,273,274,4,8,256,32,64,384],"offset":39,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":653,"old":434,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,2,0,0],"matrix_rows":[67,65,74,4,64,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[3,11,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":630,"old":435,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,0,0,2],"matrix_rows":[335,321,322,324,328,16,32,256,384],"offset":159,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":631,"old":435,"rank":1,"right":{"linear_Z4":[1,1,2,0,0,2,0,0,0],"matrix_rows":[39,33,34,32,8,48,64,128,256],"offset":8,"phase":3,"quadratic_rows":[7,7,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":632,"old":435,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,0],"matrix_rows":[13,32,2,36,40,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[44,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":633,"old":435,"rank":1,"right":{"linear_Z4":[0,1,0,1,0,0,0,0,2],"matrix_rows":[330,1,322,4,328,16,32,256,384],"offset":149,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":634,"old":435,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,2],"matrix_rows":[326,1,322,324,8,16,32,256,384],"offset":141,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":635,"old":435,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,2,0,0,0],"matrix_rows":[38,9,34,44,32,48,64,128,256],"offset":61,"phase":1,"quadratic_rows":[8,6,14,13,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":636,"old":435,"rank":1,"right":{"linear_Z4":[1,1,0,2,0,2,0,0,0],"matrix_rows":[43,33,34,4,32,48,64,128,256],"offset":16,"phase":3,"quadratic_rows":[11,11,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":637,"old":435,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[323,321,322,4,8,16,32,256,384],"offset":135,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":686,"old":436,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,2,0,0],"matrix_rows":[10,1,66,4,64,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[0,74,0,66,0,0,10,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":687,"old":436,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,290,4,8,16,256,64,384],"offset":69,"phase":3,"quadratic_rows":[0,290,0,0,0,2,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":688,"old":436,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[291,289,290,4,8,16,256,64,384],"offset":71,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":689,"old":436,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,2,0,0],"matrix_rows":[67,73,66,4,64,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[11,3,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":690,"old":436,"rank":1,"right":{"linear_Z4":[3,2,0,3,0,0,2,0,0],"matrix_rows":[73,67,64,68,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[11,1,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":691,"old":436,"rank":1,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,2],"matrix_rows":[297,289,2,4,296,16,256,64,384],"offset":83,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":692,"old":436,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[8,1,2,4,296,16,256,64,384],"offset":81,"phase":3,"quadratic_rows":[0,0,0,296,0,8,0,0,8]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":693,"old":436,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[10,1,64,68,72,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[0,72,0,74,0,0,10,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":654,"old":437,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,2,0,0],"matrix_rows":[3,64,66,4,8,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":655,"old":437,"rank":1,"right":{"linear_Z4":[0,1,2,0,0,0,0,0,0],"matrix_rows":[2,1,262,256,8,16,32,64,384],"offset":13,"phase":3,"quadratic_rows":[0,262,2,0,0,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":656,"old":437,"rank":1,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[8,1,10,12,64,80,96,128,256],"offset":73,"phase":3,"quadratic_rows":[0,8,8,70,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":657,"old":437,"rank":1,"right":{"linear_Z4":[2,2,0,3,0,0,0,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":71,"phase":0,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":658,"old":437,"rank":1,"right":{"linear_Z4":[2,2,0,3,0,0,0,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":39,"phase":0,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":659,"old":437,"rank":1,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[8,9,2,12,64,80,96,128,256],"offset":41,"phase":3,"quadratic_rows":[8,0,8,69,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":660,"old":437,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,64,384],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":661,"old":437,"rank":1,"right":{"linear_Z4":[1,2,0,2,0,0,2,0,0],"matrix_rows":[3,65,64,4,8,16,96,128,256],"offset":84,"phase":1,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":442,"old":438,"rank":1,"right":{"linear_Z4":[2,1,3,0,0,2,0,0,0],"matrix_rows":[38,5,34,32,8,16,64,128,256],"offset":10,"phase":2,"quadratic_rows":[4,6,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,33,65,128,2,1,260,8,12],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":451,"old":438,"rank":4,"right":{"linear_Z4":[2,1,1,0,2,2,0,0,1],"matrix_rows":[34,16,64,384,5,38,32,8,256],"offset":375,"phase":1,"quadratic_rows":[4,6,7,0,0,0,256,256,448]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":441,"old":439,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,3,0,2],"matrix_rows":[320,1,2,4,8,80,32,256,384],"offset":289,"phase":3,"quadratic_rows":[0,0,0,0,64,0,80,0,0]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[16,2,37,1,72,4,136,256,8],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"new":448,"old":439,"rank":4,"right":{"linear_Z4":[2,2,0,3,0,3,1,0,2],"matrix_rows":[44,2,4,336,13,32,256,320,128],"offset":55,"phase":1,"quadratic_rows":[12,0,1,41,64,40,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":443,"old":440,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[16,34,65,3,136,2,268,12,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":449,"old":440,"rank":4,"right":{"linear_Z4":[2,0,1,1,1,2,3,2,0],"matrix_rows":[36,10,320,400,5,32,40,464,128],"offset":81,"phase":3,"quadratic_rows":[4,40,13,46,80,10,80,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":446,"old":441,"rank":2,"right":{"linear_Z4":[3,0,3,3,0,0,0,2,0],"matrix_rows":[9,144,37,6,32,40,128,192,256],"offset":67,"phase":1,"quadratic_rows":[45,4,7,41,0,9,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,2,21,1,32,4,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"new":450,"old":441,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,3,0,0,0],"matrix_rows":[44,2,4,13,32,16,64,128,256],"offset":31,"phase":1,"quadratic_rows":[12,0,1,41,0,40,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,33,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":445,"old":442,"rank":2,"right":{"linear_Z4":[0,0,0,0,2,2,3,1,2],"matrix_rows":[34,448,1,32,4,40,80,256,384],"offset":192,"phase":2,"quadratic_rows":[0,0,0,0,64,0,208,192,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,65,132,1,260,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":452,"old":442,"rank":3,"right":{"linear_Z4":[0,0,0,0,3,2,0,2,3],"matrix_rows":[34,384,464,1,32,4,40,400,256],"offset":260,"phase":0,"quadratic_rows":[0,0,0,0,80,0,144,320,384]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,3,32,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":444,"old":443,"rank":2,"right":{"linear_Z4":[2,0,1,1,0,2,0,0,0],"matrix_rows":[36,10,5,32,40,16,64,128,256],"offset":21,"phase":3,"quadratic_rows":[4,40,13,46,0,10,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,1,66,128,4,262,6],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":447,"old":443,"rank":3,"right":{"linear_Z4":[2,1,1,2,0,0,0,0,2],"matrix_rows":[10,272,64,5,14,8,256,32,384],"offset":123,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":448,"old":444,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":452,"old":444,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":449,"old":445,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[400,1,2,4,8,272,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,16,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":450,"old":445,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,2],"matrix_rows":[272,1,2,4,8,400,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,16,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":447,"old":446,"rank":1,"right":{"linear_Z4":[2,1,0,3,0,2,0,0,0],"matrix_rows":[42,9,34,4,32,16,64,128,256],"offset":18,"phase":2,"quadratic_rows":[8,10,0,11,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":451,"old":446,"rank":1,"right":{"linear_Z4":[2,1,0,1,0,2,0,0,0],"matrix_rows":[34,9,42,4,32,16,64,128,256],"offset":23,"phase":0,"quadratic_rows":[8,10,0,11,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,1,32,3,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":447,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,42,8,40,36,16,64,128,256],"offset":4,"phase":3,"quadratic_rows":[8,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":775,"old":447,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":778,"old":447,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,35,32,36,8,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,1,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,64,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":448,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,320,32,2,36,40,16,256,384],"offset":134,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":783,"old":448,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[1,321,2,4,8,16,32,256,384],"offset":131,"phase":3,"quadratic_rows":[321,0,0,0,0,0,1,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":786,"old":448,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":449,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,272,32,2,36,40,256,320,128],"offset":70,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":799,"old":449,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,32,320,128],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":802,"old":449,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":450,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[1,144,32,2,36,40,128,192,256],"offset":70,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":791,"old":450,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,145,2,4,8,128,32,192,256],"offset":35,"phase":3,"quadratic_rows":[145,0,0,0,1,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":794,"old":450,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,3,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":451,"rank":2,"right":{"linear_Z4":[2,0,0,2,0,0,0,0,0],"matrix_rows":[1,42,32,40,12,16,64,128,256],"offset":4,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":815,"old":451,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":26,"phase":1,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":818,"old":451,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,11,8,12,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[11,1,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":452,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,272,32,2,36,40,256,64,384],"offset":70,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":807,"old":452,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,32,64,384],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":810,"old":452,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":457,"old":453,"rank":1,"right":{"linear_Z4":[3,2,3,0,0,2,0,0,0],"matrix_rows":[39,33,32,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[7,5,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[16,32,65,128,262,1,10,2,15],"offset":0,"phase":0,"quadratic_rows":[14,3,13,13,0,0,0,0,0]},"new":465,"old":453,"rank":4,"right":{"linear_Z4":[2,2,3,0,2,3,2,1,2],"matrix_rows":[260,240,48,320,5,210,32,8,288],"offset":372,"phase":1,"quadratic_rows":[4,208,293,0,290,500,290,162,116]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,19,33,1,64,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":456,"old":454,"rank":2,"right":{"linear_Z4":[1,0,0,3,0,0,0,0,1],"matrix_rows":[270,23,273,258,260,24,32,64,128],"offset":1,"phase":1,"quadratic_rows":[263,25,25,286,270,0,0,0,281]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[16,44,71,131,10,4,259,3,2],"offset":0,"phase":0,"quadratic_rows":[5,14,11,14,0,0,0,0,0]},"new":462,"old":454,"rank":4,"right":{"linear_Z4":[2,2,2,1,0,1,0,3,3],"matrix_rows":[44,316,442,302,13,318,160,128,192],"offset":186,"phase":1,"quadratic_rows":[12,424,425,63,424,62,0,406,406]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,10,18,32,65,128,2,3,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":458,"old":455,"rank":2,"right":{"linear_Z4":[3,1,1,2,1,0,1,1,0],"matrix_rows":[16,215,17,66,68,88,128,32,256],"offset":101,"phase":0,"quadratic_rows":[199,151,151,80,30,0,201,199,0]}},{"left":{"linear_Z4":[3,3,3,3,0,0,0,0,0],"matrix_rows":[30,34,78,129,4,257,8,15,1],"offset":0,"phase":0,"quadratic_rows":[15,15,15,15,0,0,0,0,0]},"new":463,"old":455,"rank":4,"right":{"linear_Z4":[1,0,1,0,0,0,0,3,0],"matrix_rows":[392,271,157,205,393,384,388,256,288],"offset":34,"phase":0,"quadratic_rows":[215,141,223,86,141,0,141,215,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":461,"old":456,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,0],"matrix_rows":[2,1,138,12,128,144,160,192,256],"offset":1,"phase":1,"quadratic_rows":[0,138,8,14,0,0,0,2,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,33,65,129,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":464,"old":456,"rank":2,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[133,15,393,256,388,128,144,160,192],"offset":10,"phase":0,"quadratic_rows":[258,269,266,270,0,0,0,0,15]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,32,65,128,2,259,3],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":460,"old":457,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[405,197,257,2,260,8,256,32,384],"offset":65,"phase":0,"quadratic_rows":[80,0,80,0,133,0,133,80,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,64,130,256,1,4,7],"offset":0,"phase":0,"quadratic_rows":[7,7,7,0,0,0,0,0,0]},"new":466,"old":457,"rank":3,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[325,16,384,65,2,68,8,256,32],"offset":0,"phase":0,"quadratic_rows":[261,0,261,0,256,0,256,256,213]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,33,65,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":447,"old":458,"rank":2,"right":{"linear_Z4":[2,3,2,1,0,0,3,0,1],"matrix_rows":[74,324,13,262,320,256,272,96,384],"offset":142,"phase":0,"quadratic_rows":[12,334,267,335,0,0,74,0,270]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":459,"old":458,"rank":1,"right":{"linear_Z4":[0,1,0,1,0,0,0,0,2],"matrix_rows":[258,9,266,4,256,272,288,320,384],"offset":208,"phase":3,"quadratic_rows":[8,10,0,11,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":462,"old":459,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,2,0,0],"matrix_rows":[68,5,6,64,8,16,96,128,256],"offset":14,"phase":3,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":466,"old":459,"rank":1,"right":{"linear_Z4":[3,2,3,0,0,0,0,0,2],"matrix_rows":[7,257,256,260,264,272,288,64,384],"offset":94,"phase":3,"quadratic_rows":[263,261,263,0,0,0,0,0,7]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":463,"old":460,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[133,385,2,388,8,16,32,64,256],"offset":267,"phase":0,"quadratic_rows":[261,0,261,0,0,0,0,256,133]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":464,"old":460,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[133,257,2,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[389,0,389,0,0,0,0,261,133]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":447,"old":461,"rank":1,"right":{"linear_Z4":[2,1,1,0,0,0,0,0,2],"matrix_rows":[258,5,262,256,264,272,32,320,384],"offset":15,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":465,"old":461,"rank":1,"right":{"linear_Z4":[2,1,3,0,0,0,0,0,2],"matrix_rows":[262,5,258,256,264,272,32,320,384],"offset":23,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,35,66,1,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":462,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,292,296,272,320,384],"offset":62,"phase":1,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":784,"old":462,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":26,"phase":1,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":787,"old":462,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,264,272,32,320,384],"offset":31,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,33,64,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":463,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,132,160,2,32,168,16,64,256],"offset":51,"phase":0,"quadratic_rows":[32,0,160,0,0,5,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":959,"old":463,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":962,"old":463,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,33,64,2,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":464,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,1],"matrix_rows":[257,260,288,2,32,296,16,64,128],"offset":51,"phase":0,"quadratic_rows":[32,0,288,0,0,5,0,0,260]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":951,"old":464,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":954,"old":464,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,35,66,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":465,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,258,288,256,292,40,272,320,384],"offset":26,"phase":3,"quadratic_rows":[288,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":975,"old":465,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,264,272,288,320,384],"offset":87,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":978,"old":465,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":8,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,33,64,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":466,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,1,0,0],"matrix_rows":[65,68,96,2,32,104,16,128,256],"offset":51,"phase":0,"quadratic_rows":[32,0,96,0,0,5,68,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":967,"old":466,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,0],"matrix_rows":[5,64,2,68,72,16,32,128,256],"offset":16,"phase":3,"quadratic_rows":[68,0,69,0,0,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":970,"old":466,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[5,65,2,64,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[69,0,65,0,0,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":471,"old":467,"rank":1,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,0],"matrix_rows":[5,41,2,36,32,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[45,0,37,1,0,5,0,0,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[18,1,34,66,132,2,8,12,256],"offset":0,"phase":0,"quadratic_rows":[0,2,12,12,0,0,0,0,0]},"new":478,"old":467,"rank":4,"right":{"linear_Z4":[3,2,3,2,0,0,0,1,0],"matrix_rows":[2,5,16,192,33,44,32,128,256],"offset":135,"phase":2,"quadratic_rows":[37,0,45,4,128,5,128,208,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":470,"old":468,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[20,34,69,132,264,5,8,10,1],"offset":0,"phase":0,"quadratic_rows":[0,10,4,2,0,0,0,0,0]},"new":476,"old":468,"rank":4,"right":{"linear_Z4":[3,0,1,3,0,0,0,1,2],"matrix_rows":[260,66,9,144,293,192,32,296,64],"offset":269,"phase":2,"quadratic_rows":[301,128,5,297,192,9,144,210,9]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,16,32,65,128,3,2,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":472,"old":469,"rank":2,"right":{"linear_Z4":[0,2,0,0,3,0,2,0,0],"matrix_rows":[210,130,1,66,4,8,208,32,256],"offset":3,"phase":2,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,40,64,129,4,257,10,2,1],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"new":477,"old":469,"rank":4,"right":{"linear_Z4":[2,1,0,3,2,0,3,0,2],"matrix_rows":[264,192,16,130,9,194,4,256,288],"offset":277,"phase":0,"quadratic_rows":[8,66,0,9,0,0,66,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,33,65,132,1,4,6,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":464,"old":470,"rank":3,"right":{"linear_Z4":[3,0,3,2,0,0,0,1,0],"matrix_rows":[5,66,144,41,192,36,32,64,256],"offset":133,"phase":1,"quadratic_rows":[45,128,37,1,192,5,144,210,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[6,9,18,34,65,2,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":475,"old":470,"rank":2,"right":{"linear_Z4":[3,0,3,2,1,0,0,2,0],"matrix_rows":[146,5,33,128,44,32,144,64,256],"offset":2,"phase":1,"quadratic_rows":[37,16,45,4,18,5,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,66,128,1,3,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":474,"old":471,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,0,2,3,0],"matrix_rows":[192,210,1,194,4,8,128,32,256],"offset":66,"phase":0,"quadratic_rows":[0,18,0,0,66,0,144,192,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,20,33,64,130,257,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":479,"old":471,"rank":3,"right":{"linear_Z4":[2,1,3,0,0,0,2,3,2],"matrix_rows":[260,16,210,5,18,256,8,128,288],"offset":415,"phase":3,"quadratic_rows":[4,194,5,0,64,0,146,194,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,33,66,129,2,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":450,"old":472,"rank":2,"right":{"linear_Z4":[2,0,0,3,1,0,2,0,2],"matrix_rows":[264,82,9,64,4,256,80,288,128],"offset":133,"phase":3,"quadratic_rows":[8,16,0,9,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":473,"old":472,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,0,2,0],"matrix_rows":[144,1,18,4,8,128,32,192,256],"offset":164,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":476,"old":473,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,144,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":479,"old":473,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,0,2],"matrix_rows":[264,9,2,4,256,16,288,64,128],"offset":67,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":464,"old":474,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,32,192,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":477,"old":474,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,288,64,128],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":450,"old":475,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,264,16,32,64,128],"offset":19,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":478,"old":475,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,32,192,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,2,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":476,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,1],"matrix_rows":[257,264,288,2,292,32,16,64,128],"offset":51,"phase":0,"quadratic_rows":[32,0,0,288,0,9,0,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":800,"old":476,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[9,257,2,4,256,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[265,0,0,257,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":803,"old":476,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[9,256,2,260,264,16,32,64,128],"offset":8,"phase":3,"quadratic_rows":[264,0,0,265,0,0,0,0,9]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":477,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[1,130,32,128,36,40,16,192,256],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":960,"old":477,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,8,16,32,192,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":963,"old":477,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,1,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":478,"rank":2,"right":{"linear_Z4":[0,0,2,0,0,0,0,0,1],"matrix_rows":[257,260,32,2,288,296,16,64,128],"offset":39,"phase":0,"quadratic_rows":[288,0,32,0,0,5,0,0,257]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":991,"old":478,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":994,"old":478,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,66,1,128,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":479,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[1,130,32,128,36,40,144,64,256],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":983,"old":479,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,8,144,32,64,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":986,"old":479,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":484,"old":480,"rank":1,"right":{"linear_Z4":[0,2,0,0,1,0,0,3,2],"matrix_rows":[400,1,130,4,8,272,32,64,256],"offset":260,"phase":2,"quadratic_rows":[0,128,0,0,144,0,0,146,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[16,40,69,129,258,4,5,8,10],"offset":0,"phase":0,"quadratic_rows":[0,10,0,2,0,0,0,0,0]},"new":491,"old":480,"rank":4,"right":{"linear_Z4":[2,1,0,1,0,0,2,2,3],"matrix_rows":[108,16,36,402,13,18,64,96,256],"offset":443,"phase":3,"quadratic_rows":[12,386,1,9,128,0,0,274,386]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":483,"old":481,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,2,0,0],"matrix_rows":[69,65,2,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[20,34,69,132,264,5,1,10,8],"offset":0,"phase":0,"quadratic_rows":[0,10,4,2,0,0,0,0,0]},"new":489,"old":481,"rank":4,"right":{"linear_Z4":[3,0,1,3,0,0,2,1,0],"matrix_rows":[68,258,9,144,101,384,32,104,256],"offset":269,"phase":2,"quadratic_rows":[109,128,5,105,384,9,9,402,144]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":485,"old":482,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[16,1,2,4,8,144,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,16,0]}},{"left":{"linear_Z4":[2,3,3,2,0,0,0,0,0],"matrix_rows":[16,42,69,129,264,4,1,2,8],"offset":0,"phase":0,"quadratic_rows":[4,10,5,2,0,0,0,0,0]},"new":490,"old":482,"rank":4,"right":{"linear_Z4":[2,2,0,3,0,3,1,3,3],"matrix_rows":[108,258,68,402,13,386,96,64,256],"offset":85,"phase":0,"quadratic_rows":[12,272,65,41,130,40,68,144,258]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,33,65,132,1,256,6,4],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":466,"old":483,"rank":3,"right":{"linear_Z4":[3,0,3,2,0,0,0,1,0],"matrix_rows":[5,258,144,41,384,36,32,256,64],"offset":133,"phase":1,"quadratic_rows":[45,128,37,1,384,5,0,402,144]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,19,33,64,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":488,"old":483,"rank":2,"right":{"linear_Z4":[2,0,0,1,0,0,2,0,0],"matrix_rows":[108,36,13,2,64,96,16,128,256],"offset":37,"phase":3,"quadratic_rows":[12,0,1,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,37,65,130,4,5,256,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":479,"old":484,"rank":3,"right":{"linear_Z4":[2,1,0,1,2,0,2,0,2],"matrix_rows":[108,258,36,13,274,64,96,256,128],"offset":73,"phase":3,"quadratic_rows":[12,18,1,9,2,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,66,1,128,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":487,"old":484,"rank":2,"right":{"linear_Z4":[3,1,3,2,0,0,0,0,2],"matrix_rows":[5,274,41,258,36,32,256,64,128],"offset":1,"phase":1,"quadratic_rows":[45,18,37,1,2,5,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,18,37,65,130,4,1,256,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":452,"old":485,"rank":3,"right":{"linear_Z4":[2,0,0,3,1,3,1,0,2],"matrix_rows":[108,274,68,13,256,96,64,272,128],"offset":45,"phase":0,"quadratic_rows":[12,16,65,41,18,40,68,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,33,66,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":486,"old":485,"rank":2,"right":{"linear_Z4":[3,2,2,3,3,0,0,0,2],"matrix_rows":[9,272,37,18,32,40,256,64,384],"offset":267,"phase":0,"quadratic_rows":[45,16,1,41,18,9,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":479,"old":486,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":489,"old":486,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,144,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":466,"old":487,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":490,"old":487,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":452,"old":488,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[146,1,128,4,8,144,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":491,"old":488,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,0,0,2],"matrix_rows":[272,1,18,4,8,256,32,64,384],"offset":292,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,2,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":489,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,1,0,0],"matrix_rows":[65,72,96,2,100,32,16,128,256],"offset":51,"phase":0,"quadratic_rows":[32,0,0,96,0,9,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":816,"old":489,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[9,65,2,4,64,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[73,0,0,65,0,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":819,"old":489,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[9,64,2,68,72,16,32,128,256],"offset":8,"phase":3,"quadratic_rows":[72,0,0,73,0,0,9,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":490,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,36,40,16,64,384],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":976,"old":490,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,32,64,384],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":979,"old":490,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,66,1,128,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":491,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,36,40,272,64,128],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":992,"old":491,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,272,32,64,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":995,"old":491,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[31,33,79,129,258,1,4,8,14],"offset":0,"phase":0,"quadratic_rows":[0,14,14,14,0,0,0,0,0]},"new":478,"old":492,"rank":4,"right":{"linear_Z4":[2,2,2,0,0,2,0,0,0],"matrix_rows":[39,21,325,389,289,32,292,40,256],"offset":1,"phase":1,"quadratic_rows":[466,5,466,0,261,0,261,261,213]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":496,"old":492,"rank":1,"right":{"linear_Z4":[1,2,1,0,1,0,1,1,0],"matrix_rows":[213,385,130,388,8,400,32,448,256],"offset":431,"phase":3,"quadratic_rows":[341,128,341,0,341,0,341,386,213]}},{"left":{"linear_Z4":[2,3,3,3,0,0,0,0,0],"matrix_rows":[16,34,67,129,4,258,8,2,13],"offset":0,"phase":0,"quadratic_rows":[14,3,13,13,0,0,0,0,0]},"new":451,"old":493,"rank":4,"right":{"linear_Z4":[2,3,0,3,0,0,0,1,1],"matrix_rows":[396,266,272,320,13,142,384,256,160],"offset":113,"phase":0,"quadratic_rows":[12,390,139,269,256,0,256,134,346]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,35,66,131,257,3,2],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":495,"old":493,"rank":2,"right":{"linear_Z4":[3,0,3,2,3,0,3,1,0],"matrix_rows":[325,152,385,74,396,128,272,160,384],"offset":182,"phase":1,"quadratic_rows":[197,72,205,470,408,0,207,477,152]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[16,45,69,3,134,262,10,2,6],"offset":0,"phase":0,"quadratic_rows":[10,15,10,15,0,0,0,0,0]},"new":465,"old":494,"rank":4,"right":{"linear_Z4":[2,3,2,2,0,0,1,0,0],"matrix_rows":[198,456,462,394,13,458,256,272,288],"offset":314,"phase":1,"quadratic_rows":[12,330,1,67,0,0,330,0,66]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":497,"old":494,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,0,3,2,0],"matrix_rows":[199,129,130,132,8,16,32,192,256],"offset":1,"phase":1,"quadratic_rows":[71,71,71,0,0,0,71,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":500,"old":495,"rank":1,"right":{"linear_Z4":[1,1,1,0,2,0,0,0,2],"matrix_rows":[263,257,274,260,8,256,32,64,128],"offset":0,"phase":0,"quadratic_rows":[7,23,7,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,34,65,130,258,2,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":502,"old":495,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,0,3],"matrix_rows":[149,391,273,128,276,136,384,160,192],"offset":188,"phase":3,"quadratic_rows":[2,261,2,0,256,0,0,0,274]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,19,32,67,128,2,1,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":499,"old":496,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,3,3,0],"matrix_rows":[21,213,145,82,148,8,128,32,256],"offset":95,"phase":0,"quadratic_rows":[80,80,80,0,7,0,199,192,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[14,17,38,65,130,257,4,7,1],"offset":0,"phase":0,"quadratic_rows":[6,7,7,0,0,0,0,0,0]},"new":503,"old":496,"rank":3,"right":{"linear_Z4":[2,0,2,0,0,0,0,0,0],"matrix_rows":[130,277,197,385,256,388,264,384,288],"offset":507,"phase":0,"quadratic_rows":[80,384,80,0,133,0,133,338,130]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[7,10,19,33,65,129,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":498,"old":497,"rank":2,"right":{"linear_Z4":[2,1,2,3,0,0,0,2,2],"matrix_rows":[5,207,385,130,396,256,272,288,128],"offset":0,"phase":0,"quadratic_rows":[330,79,322,75,0,0,15,0,5]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,22,39,65,134,262,2,5,6],"offset":0,"phase":0,"quadratic_rows":[2,7,6,0,0,0,0,0,0]},"new":501,"old":497,"rank":3,"right":{"linear_Z4":[2,2,2,1,0,0,3,3,0],"matrix_rows":[396,130,66,13,326,128,384,272,288],"offset":361,"phase":1,"quadratic_rows":[12,388,67,9,0,0,324,130,66]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":451,"old":498,"rank":1,"right":{"linear_Z4":[2,2,0,0,0,0,0,2,0],"matrix_rows":[132,5,6,128,136,16,32,64,256],"offset":15,"phase":0,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":503,"old":498,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[7,129,128,132,8,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[135,133,135,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":465,"old":499,"rank":1,"right":{"linear_Z4":[2,2,1,0,2,0,0,0,0],"matrix_rows":[20,5,2,16,24,32,64,128,256],"offset":22,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":502,"old":499,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":94,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":478,"old":500,"rank":1,"right":{"linear_Z4":[3,2,3,0,0,0,0,2,0],"matrix_rows":[7,129,128,132,136,144,160,192,256],"offset":94,"phase":3,"quadratic_rows":[135,133,135,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":501,"old":500,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,5,6,256,264,16,32,64,128],"offset":14,"phase":3,"quadratic_rows":[4,4,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,33,66,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":501,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,258,288,256,36,296,272,320,384],"offset":42,"phase":3,"quadratic_rows":[288,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":808,"old":501,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":811,"old":501,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,8,272,288,320,384],"offset":79,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,3,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":502,"rank":2,"right":{"linear_Z4":[0,0,2,0,1,0,0,0,0],"matrix_rows":[17,20,32,2,48,56,64,128,256],"offset":39,"phase":0,"quadratic_rows":[48,0,32,0,17,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":968,"old":502,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,2,0,0,0],"matrix_rows":[5,32,2,36,8,48,64,128,256],"offset":42,"phase":1,"quadratic_rows":[36,0,37,0,0,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":971,"old":502,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[5,17,2,16,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[21,0,17,0,5,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,34,64,1,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":503,"rank":2,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,0],"matrix_rows":[129,132,32,2,160,168,16,64,256],"offset":39,"phase":0,"quadratic_rows":[160,0,32,0,0,5,0,129,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":984,"old":503,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":987,"old":503,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,3,2,3,0,0,0,0,0],"matrix_rows":[20,34,69,132,261,5,1,8,11],"offset":0,"phase":0,"quadratic_rows":[14,11,1,11,0,0,0,0,0]},"new":489,"old":504,"rank":4,"right":{"linear_Z4":[3,0,3,3,0,3,0,0,0],"matrix_rows":[356,2,41,384,101,256,32,104,48],"offset":4,"phase":1,"quadratic_rows":[77,256,293,73,0,356,297,256,230]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":508,"old":504,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,3,3,0],"matrix_rows":[139,321,258,68,264,16,32,256,384],"offset":1,"phase":1,"quadratic_rows":[459,395,64,395,0,0,69,395,139]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[16,39,71,131,266,4,2,12,7],"offset":0,"phase":0,"quadratic_rows":[5,14,11,14,0,0,0,0,0]},"new":462,"old":505,"rank":4,"right":{"linear_Z4":[2,1,3,0,3,0,2,0,1],"matrix_rows":[114,130,506,48,13,350,256,288,160],"offset":348,"phase":1,"quadratic_rows":[12,86,87,385,86,0,150,328,392]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,17,34,67,129,259,3,1],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":507,"old":505,"rank":2,"right":{"linear_Z4":[1,0,0,1,2,0,2,3,0],"matrix_rows":[468,351,389,384,256,392,144,288,192],"offset":0,"phase":0,"quadratic_rows":[219,221,10,223,11,0,11,139,0]}},{"left":{"linear_Z4":[2,2,3,2,0,0,0,0,0],"matrix_rows":[20,2,37,68,8,133,261,5,1],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":476,"old":506,"rank":4,"right":{"linear_Z4":[1,2,3,1,2,0,0,2,0],"matrix_rows":[260,2,9,16,389,128,392,160,192],"offset":10,"phase":2,"quadratic_rows":[397,0,5,393,0,0,0,9,9]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":509,"old":506,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,2],"matrix_rows":[261,257,2,260,8,16,32,64,128],"offset":1,"phase":1,"quadratic_rows":[5,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":512,"old":507,"rank":1,"right":{"linear_Z4":[1,0,0,1,1,0,2,2,0],"matrix_rows":[153,193,2,4,200,208,32,128,256],"offset":0,"phase":0,"quadratic_rows":[89,0,0,89,89,0,25,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,8,16,35,65,128,2,3,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":514,"old":507,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,0],"matrix_rows":[25,201,129,2,4,136,128,32,256],"offset":65,"phase":0,"quadratic_rows":[80,0,0,80,137,0,137,208,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,23,39,65,135,262,7,2,4],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"new":501,"old":508,"rank":3,"right":{"linear_Z4":[2,3,3,3,0,0,2,0,1],"matrix_rows":[458,258,130,13,198,64,320,80,288],"offset":360,"phase":0,"quadratic_rows":[12,142,143,143,0,0,0,270,384]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[6,10,17,34,65,129,1,259,3],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":511,"old":508,"rank":2,"right":{"linear_Z4":[3,0,0,3,0,0,2,2,2],"matrix_rows":[132,463,325,320,64,328,80,96,384],"offset":11,"phase":1,"quadratic_rows":[139,141,74,143,0,0,132,75,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,19,35,2,67,131,259,3],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"new":510,"old":509,"rank":2,"right":{"linear_Z4":[0,3,2,0,0,0,0,0,3],"matrix_rows":[31,281,261,278,256,264,288,320,384],"offset":119,"phase":2,"quadratic_rows":[2,267,264,6,0,0,0,0,262]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,2,21,36,1,69,133,261,5],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":513,"old":509,"rank":3,"right":{"linear_Z4":[1,2,1,1,2,0,0,0,1],"matrix_rows":[276,2,265,277,256,280,288,320,384],"offset":3,"phase":2,"quadratic_rows":[29,0,261,25,265,0,0,0,276]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":462,"old":510,"rank":1,"right":{"linear_Z4":[2,1,0,1,0,2,0,0,0],"matrix_rows":[34,9,42,4,32,16,64,128,256],"offset":23,"phase":0,"quadratic_rows":[8,10,0,11,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":501,"old":510,"rank":1,"right":{"linear_Z4":[2,1,0,3,0,2,0,0,0],"matrix_rows":[42,9,34,4,32,16,64,128,256],"offset":18,"phase":2,"quadratic_rows":[8,10,0,11,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":476,"old":511,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,0],"matrix_rows":[137,257,2,4,264,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[393,0,0,393,0,0,0,265,137]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":514,"old":511,"rank":1,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[137,385,2,4,392,16,32,64,256],"offset":275,"phase":0,"quadratic_rows":[265,0,0,265,0,0,0,256,137]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":489,"old":512,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,0],"matrix_rows":[25,65,2,4,72,64,32,128,256],"offset":33,"phase":0,"quadratic_rows":[89,0,0,89,73,0,25,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":513,"old":512,"rank":1,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[25,81,2,4,88,64,32,128,256],"offset":51,"phase":0,"quadratic_rows":[73,0,0,73,64,0,25,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":513,"rank":2,"right":{"linear_Z4":[2,0,0,0,1,0,0,0,0],"matrix_rows":[17,24,48,2,52,32,64,128,256],"offset":51,"phase":0,"quadratic_rows":[32,0,0,48,24,9,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":776,"old":513,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,2,0,0,0],"matrix_rows":[9,33,2,4,32,48,64,128,256],"offset":50,"phase":1,"quadratic_rows":[41,0,0,33,0,9,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":779,"old":513,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,0],"matrix_rows":[9,16,2,20,24,32,64,128,256],"offset":8,"phase":3,"quadratic_rows":[24,0,0,25,9,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,64,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":514,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,136,160,2,164,32,16,64,256],"offset":51,"phase":0,"quadratic_rows":[32,0,0,160,0,9,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":792,"old":514,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[9,129,2,4,128,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[137,0,0,129,0,0,0,9,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":795,"old":514,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[9,128,2,132,136,16,32,64,256],"offset":8,"phase":3,"quadratic_rows":[136,0,0,137,0,0,0,9,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[16,40,69,129,5,4,264,2,10],"offset":0,"phase":0,"quadratic_rows":[0,10,0,2,0,0,0,0,0]},"new":490,"old":515,"rank":4,"right":{"linear_Z4":[2,3,0,1,2,0,0,2,3],"matrix_rows":[60,384,36,450,13,386,16,48,256],"offset":409,"phase":3,"quadratic_rows":[12,66,1,9,0,0,130,320,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":519,"old":515,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,3,1,2],"matrix_rows":[448,1,66,4,8,16,32,256,384],"offset":132,"phase":2,"quadratic_rows":[0,64,0,0,0,0,194,192,0]}},{"left":{"linear_Z4":[3,2,2,3,0,0,0,0,0],"matrix_rows":[16,34,69,1,132,4,266,2,8],"offset":0,"phase":0,"quadratic_rows":[5,8,1,10,0,0,0,0,0]},"new":448,"old":516,"rank":4,"right":{"linear_Z4":[2,0,0,3,0,1,2,3,3],"matrix_rows":[44,450,36,192,13,128,32,48,448],"offset":85,"phase":0,"quadratic_rows":[12,320,33,41,0,44,130,192,258]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":518,"old":516,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[2,1,258,4,8,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,258,0,0,0,0,0,0,2]}},{"left":{"linear_Z4":[3,2,3,2,0,0,0,0,0],"matrix_rows":[16,32,69,1,8,4,130,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"new":477,"old":517,"rank":4,"right":{"linear_Z4":[2,2,0,3,2,3,3,0,2],"matrix_rows":[44,320,4,16,13,66,32,256,384],"offset":383,"phase":0,"quadratic_rows":[12,64,1,41,0,40,66,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":520,"old":517,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[322,1,256,4,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,64,0,0,0,0,66,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,65,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":523,"old":518,"rank":2,"right":{"linear_Z4":[2,1,1,2,0,2,0,2,0],"matrix_rows":[36,194,5,130,32,8,48,128,256],"offset":100,"phase":3,"quadratic_rows":[4,66,5,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,18,37,1,68,4,130,2,256],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":524,"old":518,"rank":3,"right":{"linear_Z4":[2,1,0,3,0,1,2,2,0],"matrix_rows":[44,130,36,13,194,32,48,128,256],"offset":45,"phase":0,"quadratic_rows":[12,66,33,41,0,44,2,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[10,17,34,66,128,2,257,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":502,"old":519,"rank":3,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,3],"matrix_rows":[258,5,384,33,256,44,32,16,320],"offset":19,"phase":1,"quadratic_rows":[37,0,45,4,0,5,0,256,384]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,19,33,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":522,"old":519,"rank":2,"right":{"linear_Z4":[2,0,0,1,2,0,0,0,0],"matrix_rows":[60,36,13,2,16,48,64,128,256],"offset":37,"phase":3,"quadratic_rows":[12,0,1,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[10,16,35,66,1,3,132,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":513,"old":520,"rank":3,"right":{"linear_Z4":[3,0,1,3,2,0,0,0,2],"matrix_rows":[20,9,320,53,2,32,56,256,384],"offset":135,"phase":2,"quadratic_rows":[61,0,5,57,9,9,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,3,2,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":521,"old":520,"rank":2,"right":{"linear_Z4":[3,0,3,0,1,0,0,0,0],"matrix_rows":[29,24,49,2,60,32,64,128,256],"offset":3,"phase":2,"quadratic_rows":[45,0,37,17,24,5,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":448,"old":521,"rank":1,"right":{"linear_Z4":[2,0,3,0,2,0,0,0,0],"matrix_rows":[20,5,2,16,24,32,64,128,256],"offset":19,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":502,"old":521,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":129,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":477,"old":522,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":524,"old":522,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":490,"old":523,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,2,0,0,0],"matrix_rows":[40,9,2,4,32,48,64,128,256],"offset":50,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":513,"old":523,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,64,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":524,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,258,32,256,36,40,16,320,128],"offset":14,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":952,"old":524,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,32,320,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":955,"old":524,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,2,36,40,16,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[16,40,69,129,258,4,8,5,10],"offset":0,"phase":0,"quadratic_rows":[0,10,0,2,0,0,0,0,0]},"new":491,"old":525,"rank":4,"right":{"linear_Z4":[2,1,0,1,0,0,2,2,3],"matrix_rows":[172,16,36,338,13,18,128,160,256],"offset":443,"phase":3,"quadratic_rows":[12,322,1,9,64,0,274,0,322]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":529,"old":525,"rank":1,"right":{"linear_Z4":[0,2,0,0,1,0,3,0,2],"matrix_rows":[336,1,66,4,8,272,32,256,128],"offset":132,"phase":2,"quadratic_rows":[0,64,0,0,80,0,82,0,0]}},{"left":{"linear_Z4":[2,2,3,3,0,0,0,0,0],"matrix_rows":[16,2,32,65,136,257,12,1,4],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"new":449,"old":526,"rank":4,"right":{"linear_Z4":[2,2,0,3,1,0,3,2,0],"matrix_rows":[136,2,320,272,9,4,128,336,160],"offset":275,"phase":0,"quadratic_rows":[8,0,0,9,80,0,80,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":528,"old":526,"rank":1,"right":{"linear_Z4":[0,0,0,0,3,0,3,0,2],"matrix_rows":[336,1,2,4,8,272,32,320,128],"offset":1,"phase":1,"quadratic_rows":[0,0,0,0,80,0,80,0,0]}},{"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[20,34,68,129,264,1,8,5,10],"offset":0,"phase":0,"quadratic_rows":[4,10,1,2,0,0,0,0,0]},"new":463,"old":527,"rank":4,"right":{"linear_Z4":[3,0,3,0,0,0,0,1,1],"matrix_rows":[136,66,141,272,169,320,164,32,64],"offset":269,"phase":2,"quadratic_rows":[37,256,45,132,320,5,272,136,338]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":530,"old":527,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,2,0],"matrix_rows":[137,129,2,4,136,16,32,64,256],"offset":1,"phase":1,"quadratic_rows":[9,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,20,32,65,132,257,2,1,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":524,"old":528,"rank":3,"right":{"linear_Z4":[2,3,0,3,0,0,2,2,3],"matrix_rows":[136,320,338,9,322,4,128,256,160],"offset":397,"phase":3,"quadratic_rows":[8,18,0,9,66,0,272,0,320]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,16,32,65,128,2,256,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":533,"old":528,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,3],"matrix_rows":[16,338,1,18,4,8,256,32,128],"offset":75,"phase":0,"quadratic_rows":[0,322,0,0,64,0,274,0,322]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[10,17,34,66,132,2,1,256,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":503,"old":529,"rank":3,"right":{"linear_Z4":[3,0,3,2,0,0,0,0,1],"matrix_rows":[258,5,80,33,64,44,32,320,128],"offset":19,"phase":1,"quadratic_rows":[37,320,45,4,256,5,258,0,338]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,33,66,1,128,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":532,"old":529,"rank":2,"right":{"linear_Z4":[3,1,3,2,0,0,0,0,2],"matrix_rows":[5,274,41,258,36,32,256,64,128],"offset":1,"phase":1,"quadratic_rows":[45,18,37,1,2,5,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,33,65,132,1,4,256,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":514,"old":530,"rank":3,"right":{"linear_Z4":[3,0,2,3,0,0,0,0,1],"matrix_rows":[9,66,272,37,320,32,40,64,128],"offset":133,"phase":1,"quadratic_rows":[45,256,1,41,320,9,272,0,338]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,34,65,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":531,"old":530,"rank":2,"right":{"linear_Z4":[2,0,2,1,1,0,0,2,2],"matrix_rows":[274,136,1,256,12,128,272,160,64],"offset":182,"phase":1,"quadratic_rows":[0,16,8,12,18,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":449,"old":531,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,136,16,32,64,256],"offset":19,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":503,"old":531,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,320,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":463,"old":532,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,320,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":524,"old":532,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,160,64,256],"offset":67,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":491,"old":533,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,2,0],"matrix_rows":[136,9,2,4,128,16,160,64,256],"offset":67,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":514,"old":533,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,272,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":124,"old":534,"rank":1,"right":{"linear_Z4":[0,0,1,3,3,0,0,1,2],"matrix_rows":[396,1,18,260,280,256,288,320,384],"offset":240,"phase":2,"quadratic_rows":[0,16,140,156,26,0,0,140,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,22,34,4,65,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":538,"old":534,"rank":3,"right":{"linear_Z4":[2,2,0,0,1,0,0,3,2],"matrix_rows":[208,471,155,337,322,320,64,96,384],"offset":0,"phase":0,"quadratic_rows":[28,12,147,147,157,0,0,156,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":598,"old":534,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,0,3,0],"matrix_rows":[30,129,258,260,264,400,32,64,256],"offset":1,"phase":1,"quadratic_rows":[128,286,286,286,414,0,0,145,30]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":124,"old":535,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,68,5,4,2,128,256],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":539,"old":535,"rank":3,"right":{"linear_Z4":[2,1,1,0,1,2,2,0,0],"matrix_rows":[34,4,24,3,48,68,32,128,256],"offset":25,"phase":3,"quadratic_rows":[2,19,68,48,58,24,4,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":599,"old":535,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,3,2],"matrix_rows":[388,1,2,260,8,16,32,192,256],"offset":384,"phase":2,"quadratic_rows":[0,0,132,0,0,0,128,196,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":124,"old":536,"rank":1,"right":{"linear_Z4":[0,0,0,1,3,0,2,0,0],"matrix_rows":[8,1,18,4,88,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,16,0,88,26,0,8,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":583,"old":536,"rank":3,"right":{"linear_Z4":[3,2,0,3,3,0,0,2,3],"matrix_rows":[17,396,384,35,32,256,392,48,64],"offset":35,"phase":1,"quadratic_rows":[51,1,136,12,49,17,0,260,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":624,"old":536,"rank":1,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,0],"matrix_rows":[4,1,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":124,"old":537,"rank":1,"right":{"linear_Z4":[1,1,1,1,0,0,2,1,2],"matrix_rows":[399,321,322,260,328,16,32,256,384],"offset":0,"phase":0,"quadratic_rows":[207,207,143,207,0,0,11,143,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,33,65,128,256,6,2,5],"offset":0,"phase":0,"quadratic_rows":[4,6,7,0,0,0,0,0,0]},"new":585,"old":537,"rank":3,"right":{"linear_Z4":[1,1,0,3,0,0,3,2,3],"matrix_rows":[463,192,320,261,262,256,456,16,32],"offset":57,"phase":0,"quadratic_rows":[203,203,200,15,0,0,455,71,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":625,"old":537,"rank":1,"right":{"linear_Z4":[2,2,1,2,0,0,1,1,2],"matrix_rows":[452,1,2,268,256,272,288,320,384],"offset":102,"phase":0,"quadratic_rows":[0,0,204,4,0,0,196,196,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":746,"old":538,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[131,385,386,4,8,16,32,64,256],"offset":263,"phase":0,"quadratic_rows":[259,259,0,0,0,0,0,256,131]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":747,"old":538,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[131,257,258,4,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[387,387,0,0,0,0,0,259,131]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":748,"old":539,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[388,1,2,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":749,"old":539,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,2],"matrix_rows":[260,1,2,388,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":153,"old":540,"rank":1,"right":{"linear_Z4":[1,0,1,0,1,0,2,0,0],"matrix_rows":[21,65,2,68,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[85,0,85,0,85,0,21,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[10,18,35,4,69,133,7,261,5],"offset":0,"phase":0,"quadratic_rows":[5,6,7,0,0,0,0,0,0]},"new":544,"old":540,"rank":3,"right":{"linear_Z4":[3,3,0,1,2,0,1,0,2],"matrix_rows":[12,15,88,337,322,92,256,288,384],"offset":221,"phase":2,"quadratic_rows":[351,335,91,15,69,0,87,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":594,"old":540,"rank":1,"right":{"linear_Z4":[3,3,3,3,0,0,2,0,0],"matrix_rows":[79,65,66,68,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[15,15,15,15,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":153,"old":541,"rank":1,"right":{"linear_Z4":[3,0,3,0,3,0,2,0,0],"matrix_rows":[21,321,2,324,8,336,32,256,384],"offset":1,"phase":1,"quadratic_rows":[341,0,341,0,341,0,21,0,21]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,3,66,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":545,"old":541,"rank":3,"right":{"linear_Z4":[3,3,0,1,0,0,0,0,2],"matrix_rows":[27,24,320,41,58,4,32,256,384],"offset":3,"phase":2,"quadratic_rows":[51,35,0,24,9,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":595,"old":541,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,4,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,16,26,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":153,"old":542,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,2,0],"matrix_rows":[132,65,2,196,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,4,6,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":591,"old":542,"rank":3,"right":{"linear_Z4":[3,2,0,3,3,0,2,3,0],"matrix_rows":[17,204,192,35,32,128,200,48,256],"offset":35,"phase":1,"quadratic_rows":[51,1,72,12,49,17,132,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":628,"old":542,"rank":1,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,0],"matrix_rows":[4,1,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":153,"old":543,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,2],"matrix_rows":[260,65,2,324,8,80,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,0,68,0,64,0,21,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,4,256,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":593,"old":543,"rank":3,"right":{"linear_Z4":[3,2,0,3,3,0,2,0,3],"matrix_rows":[17,332,320,35,32,256,328,48,128],"offset":35,"phase":1,"quadratic_rows":[51,1,72,12,49,17,260,0,320]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":629,"old":543,"rank":1,"right":{"linear_Z4":[0,0,1,2,0,0,0,0,0],"matrix_rows":[4,1,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":742,"old":544,"rank":1,"right":{"linear_Z4":[2,1,2,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":74,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":743,"old":544,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":110,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":744,"old":545,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":745,"old":545,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":22,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":182,"old":546,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,2,0,0],"matrix_rows":[74,1,66,4,72,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,10,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,2,68,4,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":550,"old":546,"rank":3,"right":{"linear_Z4":[1,2,0,3,0,1,2,0,0],"matrix_rows":[1,44,36,65,14,32,48,128,256],"offset":54,"phase":0,"quadratic_rows":[65,12,34,42,0,44,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":607,"old":546,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,3,2],"matrix_rows":[385,257,2,4,8,16,32,192,256],"offset":384,"phase":2,"quadratic_rows":[129,0,0,0,0,0,128,193,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":182,"old":547,"rank":1,"right":{"linear_Z4":[3,0,1,1,0,0,0,3,0],"matrix_rows":[173,257,2,292,296,16,256,64,384],"offset":89,"phase":0,"quadratic_rows":[429,0,397,397,0,385,0,429,173]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,21,37,66,130,4,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":551,"old":547,"rank":3,"right":{"linear_Z4":[0,2,2,1,0,0,0,3,2],"matrix_rows":[463,200,174,320,330,324,64,80,384],"offset":0,"phase":0,"quadratic_rows":[142,41,33,171,0,142,0,169,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":608,"old":547,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,3,0,3,0],"matrix_rows":[45,257,130,260,392,16,288,64,256],"offset":1,"phase":1,"quadratic_rows":[301,128,301,429,0,301,0,138,45]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":182,"old":548,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":614,"old":548,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,2,0,0],"matrix_rows":[72,1,2,12,64,80,32,128,256],"offset":61,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[17,34,66,130,2,4,256,8,9],"offset":0,"phase":0,"quadratic_rows":[9,2,0,9,0,0,0,0,0]},"new":759,"old":548,"rank":4,"right":{"linear_Z4":[0,3,2,3,0,2,0,0,1],"matrix_rows":[1,10,32,384,256,22,16,24,64],"offset":23,"phase":2,"quadratic_rows":[256,30,2,26,10,0,0,256,385]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":182,"old":549,"rank":1,"right":{"linear_Z4":[3,1,0,1,0,0,0,3,0],"matrix_rows":[203,257,322,4,328,16,32,256,384],"offset":149,"phase":0,"quadratic_rows":[459,395,0,395,0,0,385,459,203]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,16,35,64,131,3,261,1,4],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":587,"old":549,"rank":3,"right":{"linear_Z4":[0,2,3,2,0,0,0,3,3],"matrix_rows":[257,193,64,229,198,32,200,48,256],"offset":351,"phase":1,"quadratic_rows":[292,196,7,192,0,193,298,170,321]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":616,"old":549,"rank":1,"right":{"linear_Z4":[3,2,2,1,0,0,3,3,2],"matrix_rows":[457,257,2,12,256,272,288,320,384],"offset":125,"phase":0,"quadratic_rows":[201,0,8,205,0,0,201,201,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":754,"old":550,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":755,"old":550,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":756,"old":551,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[134,1,386,388,8,16,32,64,256],"offset":269,"phase":0,"quadratic_rows":[0,262,262,0,0,0,0,256,134]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":757,"old":551,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[134,1,258,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,390,390,0,0,0,0,262,134]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":211,"old":552,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,2,0,0],"matrix_rows":[11,321,322,4,328,16,32,256,384],"offset":1,"phase":1,"quadratic_rows":[331,331,0,331,0,0,11,0,11]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,2,3,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":556,"old":552,"rank":3,"right":{"linear_Z4":[0,3,3,0,0,1,0,0,2],"matrix_rows":[46,40,320,1,50,60,16,256,384],"offset":3,"phase":2,"quadratic_rows":[0,30,22,34,6,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":602,"old":552,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,2,0,0,0],"matrix_rows":[44,1,2,36,40,16,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,0,12,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":211,"old":553,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[14,20,36,67,131,1,7,259,3],"offset":0,"phase":0,"quadratic_rows":[7,3,5,0,0,0,0,0,0]},"new":557,"old":553,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,1,1,0,2],"matrix_rows":[104,33,39,105,330,324,256,272,384],"offset":243,"phase":2,"quadratic_rows":[110,367,359,67,0,39,79,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":603,"old":553,"rank":1,"right":{"linear_Z4":[3,3,3,0,0,3,2,0,0],"matrix_rows":[103,65,66,68,8,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[39,39,39,0,0,39,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":211,"old":554,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,2,0],"matrix_rows":[129,193,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":619,"old":554,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,0,2],"matrix_rows":[264,1,2,12,256,272,32,64,128],"offset":61,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,3,0,0,0,0,0],"matrix_rows":[17,34,66,130,2,4,8,9,256],"offset":0,"phase":0,"quadratic_rows":[9,2,0,9,0,0,0,0,0]},"new":763,"old":554,"rank":4,"right":{"linear_Z4":[0,3,2,3,0,2,0,1,0],"matrix_rows":[1,10,32,192,128,22,16,24,256],"offset":23,"phase":2,"quadratic_rows":[128,30,2,26,10,0,128,193,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":211,"old":555,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,2],"matrix_rows":[257,321,66,4,72,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,64,0,64,0,0,11,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,66,2,129,4,256,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":589,"old":555,"rank":3,"right":{"linear_Z4":[0,3,2,3,0,3,2,0,3],"matrix_rows":[353,10,320,256,22,16,24,352,128],"offset":11,"phase":1,"quadratic_rows":[96,30,2,26,10,33,257,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":621,"old":555,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,2,0],"matrix_rows":[136,1,2,12,128,144,32,64,256],"offset":61,"phase":1,"quadratic_rows":[0,0,8,12,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":750,"old":556,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":751,"old":556,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":21,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":752,"old":557,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":38,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":753,"old":557,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":62,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":240,"old":558,"rank":1,"right":{"linear_Z4":[0,1,1,3,0,3,0,3,2],"matrix_rows":[422,9,258,268,256,272,288,64,384],"offset":61,"phase":1,"quadratic_rows":[8,166,174,13,0,166,0,166,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,21,34,69,130,4,2,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":562,"old":558,"rank":3,"right":{"linear_Z4":[0,2,1,2,0,0,0,3,2],"matrix_rows":[463,196,174,320,326,64,328,80,384],"offset":0,"phase":0,"quadratic_rows":[142,37,167,33,0,142,0,165,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":617,"old":558,"rank":1,"right":{"linear_Z4":[3,0,3,3,0,3,0,3,0],"matrix_rows":[45,257,130,388,264,16,288,64,256],"offset":1,"phase":1,"quadratic_rows":[301,128,429,301,0,301,0,134,45]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":240,"old":559,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,2,0,0],"matrix_rows":[70,1,66,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,3,1,68,4,128,256],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":563,"old":559,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,1,2,0,0],"matrix_rows":[9,20,32,16,6,24,96,128,256],"offset":50,"phase":3,"quadratic_rows":[24,4,14,29,9,96,32,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":618,"old":559,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,3,2],"matrix_rows":[416,1,2,4,8,16,288,192,256],"offset":384,"phase":2,"quadratic_rows":[0,0,0,0,0,160,128,224,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":240,"old":560,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":604,"old":560,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,3,0,1,2],"matrix_rows":[416,33,2,4,8,16,256,64,384],"offset":66,"phase":2,"quadratic_rows":[32,0,0,0,0,161,0,160,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,6,1,9],"offset":0,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]},"new":751,"old":560,"rank":4,"right":{"linear_Z4":[3,2,0,1,0,0,2,2,3],"matrix_rows":[384,92,20,417,385,14,64,80,256],"offset":426,"phase":3,"quadratic_rows":[33,12,2,10,0,129,0,288,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":240,"old":561,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,3,0,3,0],"matrix_rows":[230,1,322,324,8,16,288,256,384],"offset":141,"phase":0,"quadratic_rows":[0,422,422,0,0,486,416,486,230]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[8,19,35,64,128,259,5,1,7],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":586,"old":561,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,2,2,1,3],"matrix_rows":[230,38,320,225,290,292,8,16,256],"offset":1,"phase":1,"quadratic_rows":[224,480,480,0,0,263,263,135,358]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":606,"old":561,"rank":1,"right":{"linear_Z4":[2,3,3,0,0,1,3,3,0],"matrix_rows":[230,33,258,260,8,16,256,320,384],"offset":67,"phase":3,"quadratic_rows":[32,486,486,0,0,487,486,486,230]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":762,"old":562,"rank":1,"right":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[138,1,386,4,392,16,32,64,256],"offset":277,"phase":0,"quadratic_rows":[0,266,0,266,0,0,0,256,138]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":763,"old":562,"rank":1,"right":{"linear_Z4":[0,3,0,3,0,0,0,0,0],"matrix_rows":[138,1,258,4,264,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,394,0,394,0,0,0,266,138]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":764,"old":563,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,0,2],"matrix_rows":[416,1,2,4,8,16,288,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,160,0,32,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":765,"old":563,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,2,2],"matrix_rows":[288,1,2,4,8,16,416,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,160,0,32,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":269,"old":564,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,1,2,0,0],"matrix_rows":[38,1,66,68,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,102,102,0,0,102,38,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[10,20,39,68,135,1,3,263,7],"offset":0,"phase":0,"quadratic_rows":[3,3,4,0,0,0,0,0,0]},"new":568,"old":564,"rank":3,"right":{"linear_Z4":[3,3,2,3,0,0,1,0,2],"matrix_rows":[100,33,10,101,326,256,328,272,384],"offset":243,"phase":2,"quadratic_rows":[69,334,67,330,0,0,79,0,10]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":612,"old":564,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,3,2,0,0],"matrix_rows":[107,65,66,4,72,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[43,43,0,43,0,43,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":269,"old":565,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,3,2,0,0],"matrix_rows":[38,1,322,324,8,16,352,256,384],"offset":1,"phase":1,"quadratic_rows":[0,358,358,0,0,358,38,0,38]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[10,16,35,1,2,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":569,"old":565,"rank":3,"right":{"linear_Z4":[1,2,0,1,1,0,0,0,2],"matrix_rows":[28,25,320,29,14,16,32,256,384],"offset":59,"phase":1,"quadratic_rows":[5,12,27,30,28,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":613,"old":565,"rank":1,"right":{"linear_Z4":[0,3,3,3,0,0,0,0,0],"matrix_rows":[6,9,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[8,22,30,13,6,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":269,"old":566,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,2,0],"matrix_rows":[160,1,66,68,8,16,224,128,256],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":609,"old":566,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,3,1,2,0],"matrix_rows":[224,33,2,4,8,16,128,192,256],"offset":66,"phase":2,"quadratic_rows":[32,0,0,0,0,97,96,0,0]}},{"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[24,32,70,130,4,264,1,9,6],"offset":0,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]},"new":755,"old":566,"rank":4,"right":{"linear_Z4":[3,2,0,1,0,0,2,3,2],"matrix_rows":[192,284,20,225,193,14,256,272,128],"offset":426,"phase":3,"quadratic_rows":[33,12,2,10,0,65,160,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":269,"old":567,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,2,0,2],"matrix_rows":[288,1,66,68,8,16,352,256,128],"offset":0,"phase":0,"quadratic_rows":[0,64,64,0,0,96,38,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[12,18,34,66,2,132,1,256,5],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":588,"old":567,"rank":3,"right":{"linear_Z4":[3,3,3,2,0,0,2,0,3],"matrix_rows":[320,6,353,321,26,20,16,256,128],"offset":134,"phase":1,"quadratic_rows":[33,30,22,2,6,65,288,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":611,"old":567,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,3,1,0,2],"matrix_rows":[352,33,2,4,8,16,256,320,128],"offset":66,"phase":2,"quadratic_rows":[32,0,0,0,0,97,96,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":758,"old":568,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":38,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":759,"old":568,"rank":1,"right":{"linear_Z4":[2,2,0,2,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,272,288,320,384],"offset":62,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":760,"old":569,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":761,"old":569,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":298,"old":570,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,2,0,0],"matrix_rows":[67,65,66,4,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,68,3,2,4,128,256],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":574,"old":570,"rank":3,"right":{"linear_Z4":[2,1,0,1,1,2,2,0,0],"matrix_rows":[34,20,8,3,48,32,72,128,256],"offset":25,"phase":3,"quadratic_rows":[2,19,48,72,54,20,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":626,"old":570,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,3,2],"matrix_rows":[392,1,2,4,264,16,32,192,256],"offset":384,"phase":2,"quadratic_rows":[0,0,0,136,0,0,128,200,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":298,"old":571,"rank":1,"right":{"linear_Z4":[1,1,0,3,3,0,0,3,2],"matrix_rows":[395,257,274,20,264,256,288,64,384],"offset":103,"phase":1,"quadratic_rows":[139,155,16,139,22,0,0,139,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[14,17,34,4,70,129,1,263,7],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":575,"old":571,"rank":3,"right":{"linear_Z4":[2,1,0,0,2,0,0,3,2],"matrix_rows":[194,471,155,323,64,320,336,96,384],"offset":0,"phase":0,"quadratic_rows":[14,143,147,147,12,0,0,142,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":627,"old":571,"rank":1,"right":{"linear_Z4":[0,3,3,3,3,0,0,3,0],"matrix_rows":[30,129,386,260,264,272,32,64,256],"offset":1,"phase":1,"quadratic_rows":[128,414,286,286,286,0,0,131,30]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":298,"old":572,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,68,129,1,256,2,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":582,"old":572,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,0,2,3],"matrix_rows":[3,384,396,49,34,388,256,32,64],"offset":69,"phase":1,"quadratic_rows":[51,35,12,132,1,3,0,264,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":596,"old":572,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,0,2,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":298,"old":573,"rank":1,"right":{"linear_Z4":[1,1,0,3,0,0,0,3,0],"matrix_rows":[203,321,322,4,264,16,32,256,384],"offset":135,"phase":0,"quadratic_rows":[395,395,0,459,0,0,392,459,203]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,32,67,128,256,6,2,7],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":584,"old":573,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,1,3],"matrix_rows":[11,203,320,265,266,204,256,16,32],"offset":2,"phase":1,"quadratic_rows":[456,456,200,263,0,0,263,135,331]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":597,"old":573,"rank":1,"right":{"linear_Z4":[3,3,2,0,0,2,0,0,0],"matrix_rows":[39,33,34,32,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[7,7,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":770,"old":574,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[392,1,2,4,264,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":771,"old":574,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,2],"matrix_rows":[264,1,2,4,392,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":772,"old":575,"rank":1,"right":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[145,385,2,4,8,400,32,64,256],"offset":291,"phase":0,"quadratic_rows":[273,0,0,0,273,0,0,256,145]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":773,"old":575,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,0],"matrix_rows":[145,257,2,4,8,272,32,64,256],"offset":257,"phase":0,"quadratic_rows":[401,0,0,0,401,0,0,273,145]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":327,"old":576,"rank":1,"right":{"linear_Z4":[3,3,0,3,0,0,2,0,0],"matrix_rows":[11,321,322,4,328,16,32,256,384],"offset":1,"phase":1,"quadratic_rows":[331,331,0,331,0,0,11,0,11]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,3,32,66,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":580,"old":576,"rank":3,"right":{"linear_Z4":[3,3,1,0,0,0,0,0,2],"matrix_rows":[23,20,320,37,54,8,32,256,384],"offset":3,"phase":2,"quadratic_rows":[51,35,20,0,5,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":622,"old":576,"rank":1,"right":{"linear_Z4":[3,3,0,0,3,0,0,0,0],"matrix_rows":[3,33,50,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,16,0,22,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":327,"old":577,"rank":1,"right":{"linear_Z4":[1,1,0,1,0,0,2,0,0],"matrix_rows":[11,65,66,4,72,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[75,75,0,75,0,0,11,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[12,22,7,3,34,64,2,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":581,"old":577,"rank":3,"right":{"linear_Z4":[3,0,3,0,1,0,3,0,0],"matrix_rows":[12,82,71,13,78,80,32,128,256],"offset":4,"phase":1,"quadratic_rows":[75,89,12,71,18,0,75,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":623,"old":577,"rank":1,"right":{"linear_Z4":[3,0,3,3,3,0,2,0,0],"matrix_rows":[93,65,2,68,72,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[29,0,29,29,29,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":327,"old":578,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,2,0],"matrix_rows":[136,65,66,4,200,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,68,129,1,2,6,256],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":590,"old":578,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,2,3,0],"matrix_rows":[3,192,204,49,34,196,128,32,256],"offset":69,"phase":1,"quadratic_rows":[51,35,12,68,1,3,136,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":600,"old":578,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,0,2,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":327,"old":579,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,2],"matrix_rows":[264,65,66,4,328,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,64,0,72,0,0,11,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,17,36,68,129,1,2,256,6],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":592,"old":579,"rank":3,"right":{"linear_Z4":[3,3,3,0,2,0,2,0,3],"matrix_rows":[3,320,332,49,34,324,256,32,128],"offset":69,"phase":1,"quadratic_rows":[51,35,12,68,1,3,264,0,320]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":601,"old":579,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,0],"matrix_rows":[3,33,50,4,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[35,51,0,0,2,3,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":766,"old":580,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":767,"old":580,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":768,"old":581,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":769,"old":581,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,2],"matrix_rows":[258,3,256,260,264,16,288,320,384],"offset":162,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":743,"old":582,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":745,"old":582,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":767,"old":583,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":769,"old":583,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":742,"old":584,"rank":1,"right":{"linear_Z4":[2,1,2,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":31,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":744,"old":584,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":110,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":766,"old":585,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,2],"matrix_rows":[11,257,258,4,256,272,288,320,384],"offset":118,"phase":3,"quadratic_rows":[267,267,0,259,0,0,0,0,11]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":768,"old":585,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,2],"matrix_rows":[11,265,266,4,256,272,288,320,384],"offset":22,"phase":3,"quadratic_rows":[259,259,0,256,0,0,0,0,11]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":750,"old":586,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":62,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":752,"old":586,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":22,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":758,"old":587,"rank":1,"right":{"linear_Z4":[1,2,0,3,0,0,0,0,2],"matrix_rows":[265,257,10,4,256,272,288,320,384],"offset":39,"phase":0,"quadratic_rows":[9,8,0,11,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":760,"old":587,"rank":1,"right":{"linear_Z4":[1,2,0,1,0,0,0,0,2],"matrix_rows":[257,265,10,4,256,272,288,320,384],"offset":23,"phase":0,"quadratic_rows":[9,8,0,11,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":754,"old":588,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,144,32,64,256],"offset":37,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":756,"old":588,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":762,"old":589,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,320,128],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":764,"old":589,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,0,2,0],"matrix_rows":[136,1,10,4,128,144,32,64,256],"offset":37,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":747,"old":590,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":749,"old":590,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,288,64,128],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":771,"old":591,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,288,64,128],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":773,"old":591,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":746,"old":592,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,320,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":748,"old":592,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,2,0],"matrix_rows":[130,3,128,4,8,16,160,64,256],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":770,"old":593,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,2,0],"matrix_rows":[144,17,2,4,8,128,160,64,256],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":772,"old":593,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,320,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":630,"old":594,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,0,2],"matrix_rows":[3,257,274,20,24,256,288,64,384],"offset":102,"phase":0,"quadratic_rows":[259,275,16,16,14,0,0,0,3]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,23,34,4,65,129,6,257,1],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":743,"old":594,"rank":3,"right":{"linear_Z4":[1,1,0,0,2,0,1,0,2],"matrix_rows":[3,23,91,337,322,64,256,288,384],"offset":34,"phase":0,"quadratic_rows":[287,271,83,83,13,0,76,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":631,"old":595,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,66,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":745,"old":595,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,24,320,3,48,4,32,256,384],"offset":25,"phase":3,"quadratic_rows":[2,19,0,48,58,24,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":734,"old":596,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,0,1,2],"matrix_rows":[392,1,2,12,256,16,32,64,384],"offset":24,"phase":2,"quadratic_rows":[0,0,8,140,0,0,0,136,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,68,129,256,1,2,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":745,"old":596,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,2,3],"matrix_rows":[66,384,396,3,64,388,256,80,32],"offset":205,"phase":3,"quadratic_rows":[2,3,12,132,0,0,0,264,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":735,"old":597,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,3,3,0],"matrix_rows":[203,257,258,4,256,16,32,320,384],"offset":17,"phase":0,"quadratic_rows":[459,459,0,451,0,0,459,459,203]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,65,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[7,7,7,0,0,0,0,0,0]},"new":744,"old":597,"rank":3,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[11,320,384,265,266,4,256,16,32],"offset":0,"phase":0,"quadratic_rows":[259,259,0,256,0,0,256,256,203]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":630,"old":598,"rank":1,"right":{"linear_Z4":[3,3,0,0,2,0,0,2,0],"matrix_rows":[3,129,146,20,24,128,160,192,256],"offset":102,"phase":0,"quadratic_rows":[131,147,16,16,14,0,0,3,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,23,34,4,65,129,257,1,6],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":747,"old":598,"rank":3,"right":{"linear_Z4":[1,1,0,0,2,0,0,2,1],"matrix_rows":[3,23,283,401,386,256,128,160,192],"offset":34,"phase":0,"quadratic_rows":[159,143,275,275,13,0,0,3,268]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":631,"old":599,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[324,1,2,256,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,64,0,0,0,68,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,68,5,4,130,258,2],"offset":0,"phase":0,"quadratic_rows":[5,0,1,0,0,0,0,0,0]},"new":749,"old":599,"rank":3,"right":{"linear_Z4":[2,1,2,0,1,2,3,0,2],"matrix_rows":[34,320,24,3,48,68,32,256,384],"offset":315,"phase":2,"quadratic_rows":[2,19,64,48,58,24,68,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":740,"old":600,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,1,2,0],"matrix_rows":[200,1,2,12,128,16,32,192,256],"offset":24,"phase":2,"quadratic_rows":[0,0,8,76,0,0,72,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,68,129,256,2,6,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":749,"old":600,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,3,2],"matrix_rows":[258,192,204,3,256,196,128,272,32],"offset":205,"phase":3,"quadratic_rows":[2,3,12,68,0,0,136,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":741,"old":601,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,1,0,2],"matrix_rows":[328,1,2,12,256,16,32,320,128],"offset":24,"phase":2,"quadratic_rows":[0,0,8,76,0,0,72,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,17,36,68,129,256,2,1,6],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":748,"old":601,"rank":3,"right":{"linear_Z4":[2,3,3,0,0,0,2,2,3],"matrix_rows":[130,320,332,3,128,324,256,144,32],"offset":205,"phase":3,"quadratic_rows":[2,3,12,68,0,0,264,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":632,"old":602,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,66,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":751,"old":602,"rank":3,"right":{"linear_Z4":[0,2,0,3,0,1,0,0,2],"matrix_rows":[44,36,320,1,14,32,48,256,384],"offset":51,"phase":0,"quadratic_rows":[0,12,34,42,0,44,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":633,"old":603,"rank":1,"right":{"linear_Z4":[3,1,3,2,0,3,2,0,0],"matrix_rows":[103,97,66,100,40,16,64,128,256],"offset":90,"phase":2,"quadratic_rows":[7,39,7,32,0,42,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,130,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":753,"old":603,"rank":3,"right":{"linear_Z4":[0,1,1,2,0,0,1,0,2],"matrix_rows":[15,6,110,64,330,324,256,272,384],"offset":9,"phase":0,"quadratic_rows":[78,303,295,35,0,78,97,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":736,"old":604,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[6,1,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,22,30,4,6,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,66,2,129,256,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":753,"old":604,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,3],"matrix_rows":[257,6,384,256,26,20,16,288,64],"offset":11,"phase":1,"quadratic_rows":[0,30,22,2,6,0,0,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":751,"old":605,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":761,"old":605,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":737,"old":606,"rank":1,"right":{"linear_Z4":[0,2,2,0,0,0,3,3,2],"matrix_rows":[449,256,2,4,264,272,288,320,384],"offset":63,"phase":0,"quadratic_rows":[192,0,0,0,0,0,193,193,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,34,66,128,256,5,1,6],"offset":0,"phase":0,"quadratic_rows":[5,4,7,0,0,0,0,0,0]},"new":752,"old":606,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,0,0,3,3],"matrix_rows":[192,260,320,193,6,256,264,16,32],"offset":48,"phase":2,"quadratic_rows":[192,4,6,0,0,0,257,129,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":632,"old":607,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[321,256,2,4,8,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[64,0,0,0,0,0,65,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[8,16,38,2,68,4,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,6,2,0,0,0,0,0,0]},"new":755,"old":607,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,1,3,0,2],"matrix_rows":[320,44,36,65,14,32,48,256,384],"offset":319,"phase":3,"quadratic_rows":[64,12,34,42,0,44,65,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":633,"old":608,"rank":1,"right":{"linear_Z4":[3,1,3,2,0,3,0,0,2],"matrix_rows":[295,289,258,292,40,16,256,64,128],"offset":90,"phase":2,"quadratic_rows":[7,39,7,32,0,42,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,39,66,130,4,258,2,5],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":757,"old":608,"rank":3,"right":{"linear_Z4":[0,1,1,2,0,0,0,2,1],"matrix_rows":[15,6,302,256,394,388,128,144,192],"offset":9,"phase":0,"quadratic_rows":[270,175,167,35,0,270,0,6,289]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":738,"old":609,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[6,1,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,22,30,4,6,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,66,2,129,4,5,256],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":757,"old":609,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,0,0,3,0],"matrix_rows":[129,6,192,128,26,20,16,160,256],"offset":11,"phase":1,"quadratic_rows":[0,30,22,2,6,0,128,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":755,"old":610,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":765,"old":610,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":739,"old":611,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,0],"matrix_rows":[6,1,18,28,16,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,22,30,4,6,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,66,2,129,4,256,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":756,"old":611,"rank":3,"right":{"linear_Z4":[0,3,3,2,0,0,0,0,3],"matrix_rows":[257,6,320,256,26,20,16,288,128],"offset":11,"phase":1,"quadratic_rows":[0,30,22,2,6,0,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":634,"old":612,"rank":1,"right":{"linear_Z4":[3,1,2,3,0,3,2,0,0],"matrix_rows":[107,97,66,36,104,16,64,128,256],"offset":90,"phase":2,"quadratic_rows":[11,43,32,11,0,38,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,34,71,130,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":759,"old":612,"rank":3,"right":{"linear_Z4":[0,1,2,1,0,0,1,0,2],"matrix_rows":[15,10,110,64,326,256,328,272,384],"offset":9,"phase":0,"quadratic_rows":[78,303,35,299,0,78,97,0,10]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":635,"old":613,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,3,1,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":761,"old":613,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,0,0,0,2],"matrix_rows":[9,20,320,16,6,24,32,256,384],"offset":50,"phase":3,"quadratic_rows":[24,4,14,29,9,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":736,"old":614,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,33,2,4,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,257,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":761,"old":614,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,3,2,2,3],"matrix_rows":[417,68,384,256,6,64,72,16,416],"offset":91,"phase":3,"quadratic_rows":[160,4,6,0,0,33,0,257,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":753,"old":615,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":61,"phase":1,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":759,"old":615,"rank":1,"right":{"linear_Z4":[0,2,1,2,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":61,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":737,"old":616,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,3,3,0],"matrix_rows":[199,256,258,260,8,16,32,320,384],"offset":3,"phase":0,"quadratic_rows":[454,455,455,0,0,0,455,455,199]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,65,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,7,7,0,0,0,0,0,0]},"new":760,"old":616,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[260,320,384,5,6,256,264,16,32],"offset":89,"phase":0,"quadratic_rows":[4,4,3,0,0,0,256,256,192]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":634,"old":617,"rank":1,"right":{"linear_Z4":[3,1,2,3,0,3,0,0,2],"matrix_rows":[299,289,258,36,296,16,256,64,128],"offset":90,"phase":2,"quadratic_rows":[11,43,32,11,0,38,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[9,23,34,71,130,4,258,2,5],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":763,"old":617,"rank":3,"right":{"linear_Z4":[0,1,2,1,0,0,0,2,1],"matrix_rows":[15,10,302,256,390,128,392,144,192],"offset":9,"phase":0,"quadratic_rows":[270,175,35,171,0,270,0,10,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":635,"old":618,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[352,1,2,4,8,16,256,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,64,96,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,3,1,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":765,"old":618,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,2,3,0,2],"matrix_rows":[9,20,320,16,6,24,96,256,384],"offset":374,"phase":2,"quadratic_rows":[24,4,14,29,9,64,96,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":738,"old":619,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,33,2,4,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,257,4,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":765,"old":619,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,3,2,3,2],"matrix_rows":[225,260,192,128,6,256,264,16,224],"offset":91,"phase":3,"quadratic_rows":[96,4,6,0,0,33,129,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":757,"old":620,"rank":1,"right":{"linear_Z4":[0,2,2,1,0,0,0,0,2],"matrix_rows":[264,1,10,4,256,272,32,64,128],"offset":61,"phase":1,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":763,"old":620,"rank":1,"right":{"linear_Z4":[0,2,1,2,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,272,32,64,128],"offset":61,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":739,"old":621,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,33,2,4,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,257,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":764,"old":621,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,3,2,2,3],"matrix_rows":[353,132,320,256,6,128,136,16,352],"offset":91,"phase":3,"quadratic_rows":[96,4,6,0,0,33,257,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":636,"old":622,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":767,"old":622,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,20,320,3,48,32,8,256,384],"offset":25,"phase":3,"quadratic_rows":[2,19,48,0,54,20,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":637,"old":623,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,1,18,20,24,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[0,16,16,16,30,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,17,34,4,71,129,6,257,1],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":769,"old":623,"rank":3,"right":{"linear_Z4":[1,2,0,0,1,0,1,0,2],"matrix_rows":[17,23,91,323,256,64,336,288,384],"offset":34,"phase":0,"quadratic_rows":[287,13,83,83,285,0,76,0,17]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":734,"old":624,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,1,18,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,256,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":769,"old":624,"rank":3,"right":{"linear_Z4":[3,2,0,0,3,0,0,0,3],"matrix_rows":[17,260,384,35,32,256,264,48,64],"offset":35,"phase":1,"quadratic_rows":[51,1,0,0,49,17,0,256,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":735,"old":625,"rank":1,"right":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[7,33,34,32,40,48,64,128,256],"offset":17,"phase":0,"quadratic_rows":[39,39,35,0,0,7,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[11,19,35,67,131,3,261,1,4],"offset":0,"phase":0,"quadratic_rows":[5,2,5,0,0,0,0,0,0]},"new":768,"old":625,"rank":3,"right":{"linear_Z4":[2,2,3,0,0,0,3,2,3],"matrix_rows":[455,7,64,229,230,32,40,48,256],"offset":295,"phase":1,"quadratic_rows":[292,292,487,0,0,7,196,324,391]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":636,"old":626,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[328,1,2,4,256,16,32,320,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,64,0,0,72,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":771,"old":626,"rank":3,"right":{"linear_Z4":[2,1,0,2,1,2,3,0,2],"matrix_rows":[34,20,320,3,48,32,72,256,384],"offset":349,"phase":2,"quadratic_rows":[2,19,48,64,54,20,72,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":637,"old":627,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,0,2],"matrix_rows":[272,1,18,20,24,256,288,64,128],"offset":103,"phase":1,"quadratic_rows":[0,16,16,16,30,0,0,0,0]}},{"left":{"linear_Z4":[3,3,3,0,0,0,0,0,0],"matrix_rows":[15,17,34,4,71,129,257,1,6],"offset":0,"phase":0,"quadratic_rows":[1,6,6,0,0,0,0,0,0]},"new":773,"old":627,"rank":3,"right":{"linear_Z4":[1,2,0,0,1,0,0,2,1],"matrix_rows":[17,23,283,387,128,256,400,160,192],"offset":34,"phase":0,"quadratic_rows":[159,13,275,275,157,0,0,17,268]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":740,"old":628,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,0,2],"matrix_rows":[272,1,18,4,8,256,288,64,128],"offset":103,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,4,6,256],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":773,"old":628,"rank":3,"right":{"linear_Z4":[3,2,0,0,3,0,0,3,0],"matrix_rows":[17,132,192,35,32,128,136,48,256],"offset":35,"phase":1,"quadratic_rows":[51,1,0,0,49,17,128,192,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":741,"old":629,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,0,2,0],"matrix_rows":[144,1,18,4,8,128,160,64,256],"offset":103,"phase":1,"quadratic_rows":[0,16,0,0,18,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,66,129,1,4,256,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":772,"old":629,"rank":3,"right":{"linear_Z4":[3,2,0,0,3,0,0,0,3],"matrix_rows":[17,260,320,35,32,256,264,48,128],"offset":35,"phase":1,"quadratic_rows":[51,1,0,0,49,17,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":774,"old":630,"rank":1,"right":{"linear_Z4":[2,2,3,2,0,0,0,0,2],"matrix_rows":[268,1,2,260,256,272,288,320,384],"offset":103,"phase":1,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":782,"old":630,"rank":1,"right":{"linear_Z4":[0,0,3,2,0,0,0,0,2],"matrix_rows":[260,1,2,268,256,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[0,0,12,4,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,4,71,6,135,263,7],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"new":998,"old":630,"rank":3,"right":{"linear_Z4":[2,1,2,2,0,3,0,0,2],"matrix_rows":[290,4,40,3,288,32,272,320,384],"offset":108,"phase":2,"quadratic_rows":[2,3,32,32,0,44,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":777,"old":631,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,2],"matrix_rows":[323,321,322,4,8,16,32,256,384],"offset":135,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":785,"old":631,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,2,0,0,0],"matrix_rows":[43,33,34,4,32,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[11,11,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,32,66,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":998,"old":631,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,24,320,3,48,4,32,256,384],"offset":157,"phase":3,"quadratic_rows":[2,19,0,48,58,24,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":780,"old":632,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,2],"matrix_rows":[326,1,322,324,8,16,32,256,384],"offset":141,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":788,"old":632,"rank":1,"right":{"linear_Z4":[0,3,3,2,0,2,0,0,0],"matrix_rows":[38,1,34,44,32,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[0,6,14,4,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,16,35,1,66,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":999,"old":632,"rank":3,"right":{"linear_Z4":[0,2,0,3,0,1,0,0,2],"matrix_rows":[44,36,320,1,14,32,48,256,384],"offset":183,"phase":0,"quadratic_rows":[0,12,34,42,0,44,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":781,"old":633,"rank":1,"right":{"linear_Z4":[1,0,0,3,0,0,0,0,2],"matrix_rows":[257,265,2,12,256,272,288,320,384],"offset":64,"phase":3,"quadratic_rows":[9,0,8,13,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":789,"old":633,"rank":1,"right":{"linear_Z4":[1,2,2,1,0,0,0,0,2],"matrix_rows":[265,257,2,12,256,272,288,320,384],"offset":127,"phase":3,"quadratic_rows":[9,0,8,13,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,38,66,4,5,130,258,2],"offset":0,"phase":0,"quadratic_rows":[5,4,3,0,0,0,0,0,0]},"new":999,"old":633,"rank":3,"right":{"linear_Z4":[0,2,2,1,1,3,0,0,1],"matrix_rows":[17,284,292,48,14,272,256,320,384],"offset":61,"phase":3,"quadratic_rows":[32,12,290,26,56,309,0,0,292]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":780,"old":634,"rank":1,"right":{"linear_Z4":[0,0,3,3,0,0,0,0,0],"matrix_rows":[13,32,2,36,40,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[44,0,45,45,0,13,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":789,"old":634,"rank":1,"right":{"linear_Z4":[1,1,1,2,0,2,0,0,0],"matrix_rows":[7,33,34,44,32,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[39,39,47,4,0,7,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,38,66,4,5,134,262,6],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"new":999,"old":634,"rank":3,"right":{"linear_Z4":[0,2,2,3,2,1,0,0,2],"matrix_rows":[17,284,52,48,14,256,272,320,384],"offset":89,"phase":2,"quadratic_rows":[32,12,34,10,0,37,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":781,"old":635,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,0,2,0,0],"matrix_rows":[7,321,322,324,8,16,32,256,384],"offset":143,"phase":3,"quadratic_rows":[327,327,327,0,0,0,7,0,7]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":788,"old":635,"rank":1,"right":{"linear_Z4":[2,3,3,0,2,0,0,0,0],"matrix_rows":[23,16,18,20,24,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[6,7,7,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,16,34,3,1,64,132,260,4],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":999,"old":635,"rank":3,"right":{"linear_Z4":[0,2,1,1,2,0,0,0,2],"matrix_rows":[9,20,320,16,6,24,32,256,384],"offset":182,"phase":3,"quadratic_rows":[24,4,14,29,9,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":774,"old":636,"rank":1,"right":{"linear_Z4":[1,1,1,0,0,0,2,0,0],"matrix_rows":[7,321,322,324,8,16,32,256,384],"offset":143,"phase":3,"quadratic_rows":[327,327,327,0,0,0,7,0,7]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":785,"old":636,"rank":1,"right":{"linear_Z4":[3,3,2,0,0,2,0,0,0],"matrix_rows":[39,33,34,32,8,48,64,128,256],"offset":1,"phase":1,"quadratic_rows":[7,7,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,3,2,132,260,4],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":998,"old":636,"rank":3,"right":{"linear_Z4":[2,1,0,0,1,2,0,0,2],"matrix_rows":[34,20,320,3,48,32,8,256,384],"offset":157,"phase":3,"quadratic_rows":[2,19,48,0,54,20,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":777,"old":637,"rank":1,"right":{"linear_Z4":[1,1,2,0,0,2,0,0,0],"matrix_rows":[39,33,34,32,8,48,64,128,256],"offset":8,"phase":3,"quadratic_rows":[7,7,3,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":782,"old":637,"rank":1,"right":{"linear_Z4":[1,1,1,2,0,2,0,0,0],"matrix_rows":[7,33,34,44,32,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[39,39,47,4,0,7,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,34,4,71,6,129,257,1],"offset":0,"phase":0,"quadratic_rows":[6,1,1,0,0,0,0,0,0]},"new":998,"old":637,"rank":3,"right":{"linear_Z4":[2,1,2,2,0,3,0,0,2],"matrix_rows":[290,292,264,3,256,32,304,320,384],"offset":108,"phase":2,"quadratic_rows":[2,35,256,256,0,290,0,0,44]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":790,"old":638,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":798,"old":638,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,32,64,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1003,"old":638,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[257,384,256,2,260,8,16,32,64],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,256,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":793,"old":639,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[152,1,2,4,392,400,32,64,256],"offset":305,"phase":0,"quadratic_rows":[0,0,0,280,280,0,0,256,152]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":801,"old":639,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,0],"matrix_rows":[152,1,2,4,264,272,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,0,0,408,408,0,0,280,152]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,65,128,257,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1003,"old":639,"rank":2,"right":{"linear_Z4":[0,0,0,2,1,0,0,0,3],"matrix_rows":[272,384,1,2,4,24,256,32,320],"offset":97,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":796,"old":640,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,32,320,128],"offset":131,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":804,"old":640,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,160,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,130,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1002,"old":640,"rank":2,"right":{"linear_Z4":[2,0,0,0,3,0,0,2,2],"matrix_rows":[272,136,17,2,4,128,256,160,320],"offset":295,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":797,"old":641,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,288,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":805,"old":641,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,2,0],"matrix_rows":[144,17,2,4,8,128,32,192,256],"offset":131,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,130,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1002,"old":641,"rank":2,"right":{"linear_Z4":[2,0,0,0,3,0,0,2,2],"matrix_rows":[144,264,17,2,4,256,128,288,192],"offset":295,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,129,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":642,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,264,384,64,2,68,256,80,288],"offset":74,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":796,"old":642,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,2],"matrix_rows":[264,1,2,4,392,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":805,"old":642,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[392,1,2,4,264,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,33,64,130,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":643,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,272,384,320,2,324,8,64,32],"offset":139,"phase":0,"quadratic_rows":[64,0,0,0,320,0,17,256,144]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":797,"old":643,"rank":1,"right":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[145,385,2,4,8,400,32,64,256],"offset":291,"phase":0,"quadratic_rows":[273,0,0,0,273,0,0,256,145]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":804,"old":643,"rank":1,"right":{"linear_Z4":[3,0,0,0,3,0,0,0,0],"matrix_rows":[145,257,2,4,8,272,32,64,256],"offset":257,"phase":0,"quadratic_rows":[401,0,0,0,401,0,0,273,145]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,258,4,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":644,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,2,1],"matrix_rows":[129,264,272,128,2,132,320,64,352],"offset":399,"phase":0,"quadratic_rows":[0,0,0,64,320,0,24,0,272]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":790,"old":644,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,0,2],"matrix_rows":[272,1,2,4,24,256,32,320,128],"offset":145,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":801,"old":644,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,132,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,66,132,258,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":645,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,1,2],"matrix_rows":[257,136,144,256,2,260,192,64,224],"offset":399,"phase":0,"quadratic_rows":[0,0,0,64,192,0,24,144,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":793,"old":645,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":798,"old":645,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,2,0],"matrix_rows":[144,1,2,4,24,128,32,192,256],"offset":145,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":806,"old":646,"rank":1,"right":{"linear_Z4":[1,1,0,2,0,0,0,0,0],"matrix_rows":[3,265,258,4,256,272,288,320,384],"offset":151,"phase":1,"quadratic_rows":[267,259,0,1,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":814,"old":646,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[3,257,266,4,256,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[259,267,0,2,0,0,0,0,3]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,11,19,1,34,66,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1000,"old":646,"rank":2,"right":{"linear_Z4":[2,0,0,1,0,0,0,0,2],"matrix_rows":[10,258,11,256,260,272,288,320,384],"offset":28,"phase":1,"quadratic_rows":[10,1,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":809,"old":647,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":82,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":817,"old":647,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,33,66,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1000,"old":647,"rank":2,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,2],"matrix_rows":[72,272,9,2,4,64,256,96,384],"offset":230,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":812,"old":648,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,265,2,4,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":820,"old":648,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,2],"matrix_rows":[265,257,2,4,256,272,288,320,384],"offset":85,"phase":2,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,66,130,3,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1001,"old":648,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,0,3,0,2],"matrix_rows":[65,328,320,2,324,256,272,288,384],"offset":168,"phase":1,"quadratic_rows":[256,0,0,64,0,0,328,0,65]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":813,"old":649,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":821,"old":649,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,33,66,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1001,"old":649,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,2],"matrix_rows":[72,272,1,2,4,64,256,96,384],"offset":66,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,65,134,7,257,1],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":1,"old":650,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,3],"matrix_rows":[1,2,264,256,320,68,272,352,384],"offset":58,"phase":2,"quadratic_rows":[256,320,0,256,0,0,2,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":812,"old":650,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":70,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":821,"old":650,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,0,0,2],"matrix_rows":[265,256,2,260,264,272,32,320,384],"offset":15,"phase":2,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,64,132,2,3,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":651,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,2],"matrix_rows":[97,2,272,96,32,68,8,256,384],"offset":148,"phase":3,"quadratic_rows":[0,32,0,0,0,2,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":813,"old":651,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,68,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":820,"old":651,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,131,6,7,259,3],"offset":0,"phase":0,"quadratic_rows":[7,1,1,0,0,0,0,0,0]},"new":1,"old":652,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,1,0,0,0],"matrix_rows":[33,258,296,96,352,260,320,272,384],"offset":77,"phase":0,"quadratic_rows":[64,96,0,96,0,42,11,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":806,"old":652,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,16,96,128,256],"offset":70,"phase":3,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":817,"old":652,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,0,0,2],"matrix_rows":[258,3,256,260,8,272,288,320,384],"offset":82,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,2,68,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":653,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,0,3,0,2],"matrix_rows":[73,74,272,64,8,76,256,32,384],"offset":124,"phase":1,"quadratic_rows":[8,64,0,73,0,0,74,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":809,"old":653,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,0],"matrix_rows":[10,3,8,12,16,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":814,"old":653,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":822,"old":654,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":830,"old":654,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,32,64,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1003,"old":654,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,2],"matrix_rows":[66,260,1,64,256,8,16,96,384],"offset":18,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":825,"old":655,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,2],"matrix_rows":[259,257,256,260,8,16,288,320,384],"offset":85,"phase":2,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":833,"old":655,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,259,256,260,8,16,288,320,384],"offset":150,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,32,65,130,3,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1003,"old":655,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,0,3,0,2],"matrix_rows":[65,322,320,256,260,8,336,288,384],"offset":168,"phase":1,"quadratic_rows":[256,64,0,0,0,0,322,0,65]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":828,"old":656,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":158,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":836,"old":656,"rank":1,"right":{"linear_Z4":[2,1,2,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":26,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,35,3,66,130,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1000,"old":656,"rank":2,"right":{"linear_Z4":[2,1,2,0,2,0,0,0,0],"matrix_rows":[274,260,3,272,256,24,288,320,384],"offset":148,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":829,"old":657,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":837,"old":657,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":70,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,32,64,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1000,"old":657,"rank":2,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,2],"matrix_rows":[66,260,3,64,256,8,16,96,384],"offset":158,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,3,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":658,"rank":3,"right":{"linear_Z4":[0,2,0,0,1,0,0,0,2],"matrix_rows":[17,18,260,64,80,256,88,32,384],"offset":111,"phase":0,"quadratic_rows":[80,64,0,0,17,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":828,"old":658,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":837,"old":658,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":19,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,69,132,7,6,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":659,"rank":3,"right":{"linear_Z4":[2,0,2,0,0,3,0,0,1],"matrix_rows":[289,290,260,96,320,256,360,272,384],"offset":104,"phase":1,"quadratic_rows":[320,96,0,0,0,290,3,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":829,"old":659,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":158,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":836,"old":659,"rank":1,"right":{"linear_Z4":[2,1,2,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":79,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,68,5,134,7,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":660,"rank":3,"right":{"linear_Z4":[0,0,0,2,1,0,1,0,3],"matrix_rows":[81,338,8,256,80,260,272,352,384],"offset":31,"phase":1,"quadratic_rows":[336,256,0,272,89,0,81,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":822,"old":660,"rank":1,"right":{"linear_Z4":[0,3,0,2,0,0,0,0,2],"matrix_rows":[259,256,258,260,8,272,32,320,384],"offset":51,"phase":2,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":833,"old":660,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":82,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,68,133,4,5,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":661,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,2],"matrix_rows":[97,260,8,96,2,256,32,80,384],"offset":98,"phase":3,"quadratic_rows":[0,0,0,32,0,8,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":825,"old":661,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":830,"old":661,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":838,"old":662,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,160,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":846,"old":662,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,16,32,320,128],"offset":131,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,64,130,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1002,"old":662,"rank":2,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,2],"matrix_rows":[260,130,5,128,256,8,16,160,320],"offset":271,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":841,"old":663,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,16,32,192,256],"offset":131,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":849,"old":663,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,288,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,32,64,130,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1002,"old":663,"rank":2,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,2],"matrix_rows":[132,258,5,256,128,8,16,288,192],"offset":271,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":844,"old":664,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[134,1,258,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,390,390,0,0,0,0,262,134]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":852,"old":664,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[134,1,386,388,8,16,32,64,256],"offset":269,"phase":0,"quadratic_rows":[0,262,262,0,0,0,0,256,134]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,64,128,257,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1001,"old":664,"rank":2,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,3],"matrix_rows":[260,384,1,6,256,8,16,32,320],"offset":25,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":845,"old":665,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":853,"old":665,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,16,32,65,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1001,"old":665,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[257,384,256,2,4,8,272,32,64],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,256,384]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,258,4,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":666,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,2,1],"matrix_rows":[129,258,260,128,320,64,8,144,352],"offset":303,"phase":0,"quadratic_rows":[0,64,320,0,0,0,6,0,260]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":844,"old":666,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,144,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":853,"old":666,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,16,32,320,128],"offset":133,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,258,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":667,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,2],"matrix_rows":[257,130,132,256,192,64,8,272,224],"offset":303,"phase":0,"quadratic_rows":[0,64,192,0,0,0,6,132,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":845,"old":667,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,16,32,192,256],"offset":133,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":852,"old":667,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,272,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,64,129,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":668,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,260,384,320,2,64,8,336,32],"offset":43,"phase":0,"quadratic_rows":[64,0,320,0,0,0,5,256,132]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":838,"old":668,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[133,257,2,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[389,0,389,0,0,0,0,261,133]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":849,"old":668,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[133,385,2,388,8,16,32,64,256],"offset":267,"phase":0,"quadratic_rows":[261,0,261,0,0,0,0,256,133]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,33,64,129,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":669,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,258,384,64,256,68,8,80,288],"offset":26,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":841,"old":669,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":846,"old":669,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,68,134,6,4,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":670,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,0,2],"matrix_rows":[257,98,8,256,96,4,64,48,384],"offset":73,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":854,"old":670,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":862,"old":670,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,68,135,5,6,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":671,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,0],"matrix_rows":[353,100,8,256,258,352,288,336,384],"offset":47,"phase":1,"quadratic_rows":[96,0,256,288,0,361,353,0,108]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":857,"old":671,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,80,32,128,256],"offset":59,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":865,"old":671,"rank":1,"right":{"linear_Z4":[0,0,3,2,0,0,0,0,2],"matrix_rows":[261,256,258,260,8,272,288,64,384],"offset":83,"phase":2,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,135,3,5,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":672,"rank":3,"right":{"linear_Z4":[2,2,2,0,0,1,1,0,2],"matrix_rows":[257,98,100,256,288,320,264,368,384],"offset":142,"phase":0,"quadratic_rows":[0,320,288,0,0,100,98,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":860,"old":672,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":47,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":868,"old":672,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":206,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,70,128,4,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":673,"rank":3,"right":{"linear_Z4":[0,2,2,0,0,3,3,0,2],"matrix_rows":[257,98,100,256,64,32,104,16,384],"offset":121,"phase":1,"quadratic_rows":[0,32,64,0,0,98,100,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":861,"old":673,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":28,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":869,"old":673,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":860,"old":674,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":31,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":869,"old":674,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":206,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,35,65,3,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1001,"old":674,"rank":2,"right":{"linear_Z4":[2,2,1,0,0,2,0,0,0],"matrix_rows":[257,292,256,6,288,40,272,320,384],"offset":140,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":861,"old":675,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":44,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":868,"old":675,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,66,128,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1001,"old":675,"rank":2,"right":{"linear_Z4":[0,2,3,0,0,0,2,0,2],"matrix_rows":[257,68,256,6,64,8,80,32,384],"offset":93,"phase":1,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":854,"old":676,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":865,"old":676,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,8,18,32,66,128,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1003,"old":676,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,2],"matrix_rows":[257,68,256,2,64,8,80,32,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":857,"old":677,"rank":1,"right":{"linear_Z4":[2,1,0,2,0,2,0,0,0],"matrix_rows":[34,3,32,4,8,48,64,128,256],"offset":55,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":862,"old":677,"rank":1,"right":{"linear_Z4":[0,3,0,2,0,0,0,0,2],"matrix_rows":[259,256,258,260,8,272,32,320,384],"offset":147,"phase":2,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,17,32,67,2,129,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":1003,"old":677,"rank":2,"right":{"linear_Z4":[2,0,0,2,0,3,0,0,3],"matrix_rows":[33,290,256,32,260,8,304,320,384],"offset":164,"phase":1,"quadratic_rows":[288,256,0,0,0,33,0,0,259]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,132,256,1,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":678,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,2,1],"matrix_rows":[257,130,260,64,128,320,136,336,32],"offset":159,"phase":0,"quadratic_rows":[320,0,64,0,0,0,5,0,257]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":870,"old":678,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,0,2],"matrix_rows":[260,5,2,256,8,272,32,64,128],"offset":35,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":878,"old":678,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,136,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,132,256,1,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":679,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,2],"matrix_rows":[129,258,132,64,256,192,264,208,32],"offset":159,"phase":0,"quadratic_rows":[192,0,64,0,0,0,5,129,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":873,"old":679,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":881,"old":679,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,0,2,0],"matrix_rows":[132,5,2,128,8,144,32,64,256],"offset":35,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,66,128,256,1,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":680,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,384,64,320,4,328,16,32],"offset":27,"phase":0,"quadratic_rows":[320,64,0,0,0,0,3,256,129]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":876,"old":680,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[131,385,386,4,8,16,32,64,256],"offset":263,"phase":0,"quadratic_rows":[259,259,0,0,0,0,0,256,131]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":884,"old":680,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[131,257,258,4,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[387,387,0,0,0,0,0,259,131]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,130,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":681,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,260,384,64,66,256,72,272,32],"offset":42,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":877,"old":681,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,2],"matrix_rows":[260,1,2,388,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":885,"old":681,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[388,1,2,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,2,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":876,"old":682,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[260,288,1,2,256,8,272,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,256,0,0,288]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,64,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":885,"old":682,"rank":2,"right":{"linear_Z4":[2,3,1,0,0,0,0,2,2],"matrix_rows":[130,292,3,128,260,136,16,256,64],"offset":37,"phase":3,"quadratic_rows":[2,3,36,0,0,4,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,64,130,256,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1004,"old":682,"rank":2,"right":{"linear_Z4":[2,3,1,0,0,2,0,2,2],"matrix_rows":[130,260,3,128,292,136,16,256,64],"offset":37,"phase":3,"quadratic_rows":[2,3,36,0,0,4,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,64,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":877,"old":683,"rank":2,"right":{"linear_Z4":[2,3,1,0,0,0,0,2,2],"matrix_rows":[258,164,3,256,132,264,16,128,64],"offset":37,"phase":3,"quadratic_rows":[2,3,36,0,0,4,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":884,"old":683,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,3,0],"matrix_rows":[132,160,1,2,128,8,144,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,128,0,160,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,64,130,256,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1004,"old":683,"rank":2,"right":{"linear_Z4":[2,3,1,0,0,2,0,2,2],"matrix_rows":[258,132,3,256,164,264,16,128,64],"offset":37,"phase":3,"quadratic_rows":[2,3,36,0,0,4,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":870,"old":684,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":881,"old":684,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,16,33,64,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1002,"old":684,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[258,384,1,256,4,264,16,32,64],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,256,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":873,"old":685,"rank":1,"right":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[133,385,2,388,8,16,32,64,256],"offset":267,"phase":0,"quadratic_rows":[261,0,261,0,0,0,0,256,133]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":878,"old":685,"rank":1,"right":{"linear_Z4":[3,0,3,0,0,0,0,0,0],"matrix_rows":[133,257,2,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[389,0,389,0,0,0,0,261,133]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,65,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1002,"old":685,"rank":2,"right":{"linear_Z4":[2,0,1,0,0,0,0,0,3],"matrix_rows":[260,384,5,2,256,8,272,32,64],"offset":21,"phase":3,"quadratic_rows":[4,0,5,0,0,0,0,256,384]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,64,1,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":686,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[1,82,288,16,80,68,8,256,384],"offset":140,"phase":3,"quadratic_rows":[16,0,0,0,1,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":886,"old":686,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":894,"old":686,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,68,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,69,130,7,258,2],"offset":0,"phase":0,"quadratic_rows":[1,6,2,0,0,0,0,0,0]},"new":1,"old":687,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,0,3],"matrix_rows":[1,2,264,320,256,68,336,288,384],"offset":57,"phase":2,"quadratic_rows":[320,256,0,256,0,0,1,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":889,"old":687,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,0,0,2],"matrix_rows":[266,1,256,260,264,16,288,320,384],"offset":15,"phase":2,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":897,"old":687,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":38,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,5,131,7,259,3],"offset":0,"phase":0,"quadratic_rows":[2,7,2,0,0,0,0,0,0]},"new":1,"old":688,"rank":3,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,0],"matrix_rows":[257,18,280,336,80,260,320,288,384],"offset":86,"phase":0,"quadratic_rows":[80,64,0,80,25,0,11,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":892,"old":688,"rank":1,"right":{"linear_Z4":[3,2,0,3,0,0,0,0,0],"matrix_rows":[9,259,256,260,264,16,288,320,384],"offset":1,"phase":1,"quadratic_rows":[267,1,0,265,0,0,0,0,9]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":900,"old":688,"rank":1,"right":{"linear_Z4":[2,2,0,1,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":38,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,1,64,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":689,"rank":3,"right":{"linear_Z4":[2,2,0,3,0,0,3,0,2],"matrix_rows":[73,74,288,8,64,76,16,256,384],"offset":188,"phase":1,"quadratic_rows":[64,8,0,74,0,0,73,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":893,"old":689,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":901,"old":689,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[66,3,64,68,8,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,3,132,2,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":690,"rank":3,"right":{"linear_Z4":[2,0,0,0,1,0,0,0,2],"matrix_rows":[17,24,288,80,82,4,64,256,384],"offset":215,"phase":0,"quadratic_rows":[64,0,0,80,24,0,9,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":892,"old":690,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":901,"old":690,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[72,9,2,4,64,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[8,0,0,9,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,4,69,133,7,261,5],"offset":0,"phase":0,"quadratic_rows":[4,4,7,0,0,0,0,0,0]},"new":1,"old":691,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,0,3,0,0],"matrix_rows":[257,322,72,256,320,68,272,288,384],"offset":56,"phase":1,"quadratic_rows":[0,0,0,64,0,0,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":893,"old":691,"rank":1,"right":{"linear_Z4":[3,3,0,2,0,0,0,0,0],"matrix_rows":[3,265,258,4,256,272,288,320,384],"offset":1,"phase":1,"quadratic_rows":[267,259,0,1,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":900,"old":691,"rank":1,"right":{"linear_Z4":[1,1,0,2,0,0,0,0,0],"matrix_rows":[3,257,266,4,256,272,288,320,384],"offset":151,"phase":1,"quadratic_rows":[259,267,0,2,0,0,0,0,3]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,5,132,7,260,4],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":692,"rank":3,"right":{"linear_Z4":[2,0,0,0,1,0,1,0,3],"matrix_rows":[1,338,88,272,80,324,256,288,384],"offset":87,"phase":1,"quadratic_rows":[272,256,0,336,89,0,88,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":886,"old":692,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[266,1,258,4,256,272,288,320,384],"offset":51,"phase":2,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":897,"old":692,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,2],"matrix_rows":[258,1,266,4,256,272,288,320,384],"offset":150,"phase":0,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,16,33,2,67,132,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":693,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,2],"matrix_rows":[1,8,288,64,2,68,80,256,384],"offset":140,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":889,"old":693,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":894,"old":693,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,80,32,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":694,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,2,1],"matrix_rows":[130,264,288,1,128,132,320,336,64],"offset":407,"phase":0,"quadratic_rows":[0,0,0,64,0,320,40,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":902,"old":694,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,132,8,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":910,"old":694,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,3,0,0,2],"matrix_rows":[288,1,2,4,40,16,256,320,128],"offset":145,"phase":3,"quadratic_rows":[0,0,0,32,0,40,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":695,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,0,1,2],"matrix_rows":[258,136,160,1,256,260,192,208,64],"offset":407,"phase":0,"quadratic_rows":[0,0,0,64,0,192,40,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":905,"old":695,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,3,0,2,0],"matrix_rows":[160,1,2,4,40,16,128,192,256],"offset":145,"phase":3,"quadratic_rows":[0,0,0,32,0,40,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":913,"old":695,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,8,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,64,128,258,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":696,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,288,384,1,320,324,8,16,64],"offset":275,"phase":0,"quadratic_rows":[0,64,0,0,0,320,34,256,160]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":908,"old":696,"rank":1,"right":{"linear_Z4":[0,3,0,0,0,3,0,0,0],"matrix_rows":[162,1,258,4,8,16,288,64,256],"offset":257,"phase":0,"quadratic_rows":[0,418,0,0,0,418,0,290,162]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":916,"old":696,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[162,1,386,4,8,16,416,64,256],"offset":325,"phase":0,"quadratic_rows":[0,290,0,0,0,290,0,256,162]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,257,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":697,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,3],"matrix_rows":[2,264,384,1,64,68,256,272,96],"offset":82,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":909,"old":697,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[392,1,2,4,264,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":917,"old":697,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,2],"matrix_rows":[264,1,2,4,392,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,8,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":698,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,2,1],"matrix_rows":[258,136,288,1,320,324,128,144,64],"offset":359,"phase":0,"quadratic_rows":[0,64,0,0,0,320,34,0,288]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":908,"old":698,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,144,32,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":917,"old":698,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,3,0,0,2],"matrix_rows":[288,1,34,4,8,16,256,320,128],"offset":133,"phase":3,"quadratic_rows":[0,32,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,260,4,5,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":699,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,2],"matrix_rows":[130,264,160,1,192,196,256,272,64],"offset":359,"phase":0,"quadratic_rows":[0,64,0,0,0,192,34,160,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":909,"old":699,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,3,0,2,0],"matrix_rows":[160,1,34,4,8,16,128,192,256],"offset":133,"phase":3,"quadratic_rows":[0,32,0,0,0,34,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":916,"old":699,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,272,32,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,16,32,65,129,258,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":700,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,288,384,1,2,4,320,336,64],"offset":323,"phase":0,"quadratic_rows":[0,0,0,64,0,320,40,256,160]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":902,"old":700,"rank":1,"right":{"linear_Z4":[0,0,0,3,0,3,0,0,0],"matrix_rows":[168,1,2,4,264,16,288,64,256],"offset":257,"phase":0,"quadratic_rows":[0,0,0,424,0,424,0,296,168]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":913,"old":700,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[168,1,2,4,392,16,416,64,256],"offset":337,"phase":0,"quadratic_rows":[0,0,0,296,0,296,0,256,168]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,33,66,130,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":701,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,3],"matrix_rows":[258,8,384,1,256,260,64,80,96],"offset":81,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":905,"old":701,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[386,1,258,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":910,"old":701,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,2],"matrix_rows":[258,1,386,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,2,0]}},{"left":{"linear_Z4":[3,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,3,128,1,260,4],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":702,"rank":3,"right":{"linear_Z4":[2,0,0,0,2,0,0,0,2],"matrix_rows":[1,82,264,64,80,20,256,32,384],"offset":76,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":918,"old":702,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[18,1,16,20,8,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":926,"old":702,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,66,132,7,6,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":703,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,3,0,0,1],"matrix_rows":[289,258,304,96,256,356,264,320,384],"offset":56,"phase":1,"quadratic_rows":[320,0,0,0,96,304,17,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":921,"old":703,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":929,"old":703,"rank":1,"right":{"linear_Z4":[2,2,0,0,2,0,0,0,2],"matrix_rows":[258,1,256,260,264,16,288,320,384],"offset":174,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,65,4,135,6,257,1],"offset":0,"phase":0,"quadratic_rows":[5,2,1,0,0,0,0,0,0]},"new":1,"old":704,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,3],"matrix_rows":[1,2,272,256,64,324,264,352,384],"offset":58,"phase":2,"quadratic_rows":[256,64,0,0,256,0,2,0,273]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":924,"old":704,"rank":1,"right":{"linear_Z4":[2,2,0,0,1,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":103,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":932,"old":704,"rank":1,"right":{"linear_Z4":[0,2,0,0,3,0,0,0,2],"matrix_rows":[273,256,2,260,264,272,288,64,384],"offset":15,"phase":2,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,3,2,0,0,0,0,0,0],"matrix_rows":[9,18,35,68,128,3,2,260,4],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":705,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,2,0,0,2],"matrix_rows":[97,2,264,96,64,36,256,16,384],"offset":84,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":925,"old":705,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,36,8,16,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":933,"old":705,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":924,"old":706,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,265,2,4,256,272,288,320,384],"offset":86,"phase":0,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":933,"old":706,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,2],"matrix_rows":[265,257,2,4,256,272,288,320,384],"offset":149,"phase":2,"quadratic_rows":[9,0,0,1,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,8,17,34,66,3,130,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1001,"old":706,"rank":2,"right":{"linear_Z4":[0,2,0,2,0,3,0,0,2],"matrix_rows":[33,296,288,2,292,256,272,320,384],"offset":168,"phase":1,"quadratic_rows":[256,0,0,32,0,296,0,0,33]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":925,"old":707,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[80,1,2,4,8,64,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":932,"old":707,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,33,66,130,2,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1001,"old":707,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,2],"matrix_rows":[264,80,1,2,4,256,64,96,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":918,"old":708,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":98,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":929,"old":708,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,34,65,129,1,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1002,"old":708,"rank":2,"right":{"linear_Z4":[2,0,0,0,3,0,2,0,2],"matrix_rows":[80,264,17,2,4,256,64,96,384],"offset":230,"phase":1,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":921,"old":709,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,2],"matrix_rows":[258,1,266,4,256,272,288,320,384],"offset":54,"phase":0,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":926,"old":709,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[266,1,258,4,256,272,288,320,384],"offset":147,"phase":2,"quadratic_rows":[0,10,0,2,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,3,66,130,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1002,"old":709,"rank":2,"right":{"linear_Z4":[2,0,0,2,3,0,0,0,2],"matrix_rows":[18,280,1,272,276,256,288,320,384],"offset":164,"phase":1,"quadratic_rows":[0,256,0,16,280,0,0,0,18]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,260,2,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":710,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,0,0,2,1],"matrix_rows":[129,264,272,128,130,4,64,320,352],"offset":335,"phase":0,"quadratic_rows":[0,0,0,320,64,0,24,0,264]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":934,"old":710,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,0,2],"matrix_rows":[272,1,2,4,24,256,288,64,128],"offset":81,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":942,"old":710,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,4,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,132,260,2,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":711,"rank":3,"right":{"linear_Z4":[0,0,0,0,2,0,0,1,2],"matrix_rows":[257,136,144,256,258,4,64,192,224],"offset":335,"phase":0,"quadratic_rows":[0,0,0,192,64,0,24,136,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":937,"old":711,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":945,"old":711,"rank":1,"right":{"linear_Z4":[0,0,0,2,3,0,0,2,0],"matrix_rows":[144,1,2,4,24,128,160,64,256],"offset":81,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,66,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":712,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,264,384,320,322,4,64,16,32],"offset":75,"phase":0,"quadratic_rows":[64,0,0,320,0,0,9,256,136]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":940,"old":712,"rank":1,"right":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[137,385,2,4,392,16,32,64,256],"offset":275,"phase":0,"quadratic_rows":[265,0,0,265,0,0,0,256,137]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":948,"old":712,"rank":1,"right":{"linear_Z4":[3,0,0,3,0,0,0,0,0],"matrix_rows":[137,257,2,4,264,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[393,0,0,393,0,0,0,265,137]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,32,65,130,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":713,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,272,384,64,66,4,72,256,288],"offset":138,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":941,"old":713,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,2],"matrix_rows":[272,1,2,4,8,400,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,16,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":949,"old":713,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[400,1,2,4,8,272,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,16,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,66,2,128,256,3],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":940,"old":714,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,1],"matrix_rows":[36,272,1,2,288,8,32,64,128],"offset":66,"phase":0,"quadratic_rows":[0,0,256,0,288,272,0,0,308]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,66,128,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":949,"old":714,"rank":2,"right":{"linear_Z4":[2,0,0,3,1,0,0,2,2],"matrix_rows":[136,276,9,2,256,128,272,32,192],"offset":261,"phase":3,"quadratic_rows":[8,0,16,9,20,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,33,66,130,257,1,2],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1004,"old":714,"rank":2,"right":{"linear_Z4":[2,0,2,3,3,0,0,2,2],"matrix_rows":[136,272,9,2,20,128,256,288,192],"offset":407,"phase":2,"quadratic_rows":[8,0,16,9,20,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,18,33,66,128,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":941,"old":715,"rank":2,"right":{"linear_Z4":[2,0,0,3,1,0,0,2,2],"matrix_rows":[264,148,9,2,128,256,144,32,320],"offset":261,"phase":3,"quadratic_rows":[8,0,16,9,20,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,17,32,66,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]},"new":948,"old":715,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,1,0],"matrix_rows":[36,144,1,2,160,8,32,64,256],"offset":66,"phase":0,"quadratic_rows":[0,0,128,0,160,144,0,180,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,33,66,130,257,2,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1004,"old":715,"rank":2,"right":{"linear_Z4":[2,0,2,3,3,0,0,2,2],"matrix_rows":[264,144,9,2,20,256,128,160,320],"offset":407,"phase":2,"quadratic_rows":[8,0,16,9,20,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":934,"old":716,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":945,"old":716,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,64,128,256,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1003,"old":716,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,3],"matrix_rows":[257,384,256,258,4,8,16,32,64],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,256,384]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":937,"old":717,"rank":1,"right":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[152,1,2,4,392,400,32,64,256],"offset":305,"phase":0,"quadratic_rows":[0,0,0,280,280,0,0,256,152]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":942,"old":717,"rank":1,"right":{"linear_Z4":[0,0,0,3,3,0,0,0,0],"matrix_rows":[152,1,2,4,264,272,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,0,0,408,408,0,0,280,152]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[4,8,16,32,65,129,256,2,3],"offset":0,"phase":0,"quadratic_rows":[2,3,0,0,0,0,0,0,0]},"new":1003,"old":717,"rank":2,"right":{"linear_Z4":[0,0,0,2,1,0,0,0,3],"matrix_rows":[272,384,1,2,4,24,256,288,64],"offset":97,"phase":3,"quadratic_rows":[0,0,0,16,24,0,0,256,384]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,65,128,258,1,4,6],"offset":0,"phase":0,"quadratic_rows":[1,4,6,0,0,0,0,0,0]},"new":1,"old":718,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,3],"matrix_rows":[1,260,384,64,66,256,72,16,288],"offset":42,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":950,"old":718,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[388,1,2,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":958,"old":718,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,2],"matrix_rows":[260,1,2,388,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,4,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,65,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":719,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,384,320,64,4,328,16,32],"offset":27,"phase":0,"quadratic_rows":[64,320,0,0,0,0,3,256,130]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":953,"old":719,"rank":1,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[131,257,258,4,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[387,387,0,0,0,0,0,259,131]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":961,"old":719,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[131,385,386,4,8,16,32,64,256],"offset":263,"phase":0,"quadratic_rows":[259,259,0,0,0,0,0,256,131]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":720,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,2,1],"matrix_rows":[129,258,260,128,64,320,136,16,352],"offset":287,"phase":0,"quadratic_rows":[0,320,64,0,0,0,6,0,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":956,"old":720,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,136,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":964,"old":720,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,16,288,64,128],"offset":69,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,0,0,0,0,0,0]},"new":1,"old":721,"rank":3,"right":{"linear_Z4":[0,0,2,0,0,0,0,1,2],"matrix_rows":[257,130,132,256,64,192,264,16,224],"offset":287,"phase":0,"quadratic_rows":[0,192,64,0,0,0,6,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":957,"old":721,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,16,160,64,256],"offset":69,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":965,"old":721,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,64,128,258,1,4,7],"offset":0,"phase":0,"quadratic_rows":[6,5,7,0,0,0,0,0,0]},"new":1,"old":722,"rank":3,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,260,384,1,64,320,8,16,352],"offset":51,"phase":0,"quadratic_rows":[0,320,64,0,0,0,6,256,130]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":956,"old":722,"rank":1,"right":{"linear_Z4":[0,3,3,0,0,0,0,0,0],"matrix_rows":[134,1,258,260,8,16,32,64,256],"offset":257,"phase":0,"quadratic_rows":[0,390,390,0,0,0,0,262,134]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":965,"old":722,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[134,1,386,388,8,16,32,64,256],"offset":269,"phase":0,"quadratic_rows":[0,262,262,0,0,0,0,256,134]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,65,128,258,2,4,5],"offset":0,"phase":0,"quadratic_rows":[4,2,5,0,0,0,0,0,0]},"new":1,"old":723,"rank":3,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,3],"matrix_rows":[257,2,384,256,64,68,264,16,96],"offset":25,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":957,"old":723,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":964,"old":723,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,2,4,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,3,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":724,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,2],"matrix_rows":[129,130,260,192,64,256,200,16,288],"offset":119,"phase":0,"quadratic_rows":[64,192,0,0,0,0,3,130,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":950,"old":724,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,2,0],"matrix_rows":[130,3,128,4,8,16,32,192,256],"offset":131,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":961,"old":724,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,288,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,65,128,260,2,4,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":725,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,0,0,2,1],"matrix_rows":[257,258,132,320,64,128,328,16,160],"offset":119,"phase":0,"quadratic_rows":[64,320,0,0,0,0,3,0,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":953,"old":725,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,160,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":958,"old":725,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,32,320,128],"offset":131,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,3,0,0,0,0,0,0],"matrix_rows":[9,17,34,68,5,135,6,257,1],"offset":0,"phase":0,"quadratic_rows":[3,1,4,0,0,0,0,0,0]},"new":1,"old":726,"rank":3,"right":{"linear_Z4":[0,0,0,2,1,0,1,0,0],"matrix_rows":[337,84,8,256,258,336,272,352,384],"offset":47,"phase":1,"quadratic_rows":[80,0,256,272,345,0,337,0,92]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":966,"old":726,"rank":1,"right":{"linear_Z4":[0,0,3,2,0,0,0,0,2],"matrix_rows":[261,256,258,260,8,272,288,64,384],"offset":51,"phase":2,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":974,"old":726,"rank":1,"right":{"linear_Z4":[2,0,1,2,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":91,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,18,32,68,133,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":727,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,2,0,0,2],"matrix_rows":[97,258,8,96,256,4,64,48,384],"offset":82,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":969,"old":727,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":977,"old":727,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,4,8,48,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,66,131,7,6,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":728,"rank":3,"right":{"linear_Z4":[2,2,0,0,0,3,0,0,1],"matrix_rows":[289,258,292,96,256,320,264,368,384],"offset":152,"phase":1,"quadratic_rows":[320,0,96,0,0,292,5,0,289]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":972,"old":728,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":174,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":980,"old":728,"rank":1,"right":{"linear_Z4":[2,2,1,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":79,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,69,4,128,1,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":729,"rank":3,"right":{"linear_Z4":[2,0,2,0,3,0,3,0,2],"matrix_rows":[81,258,84,64,256,16,88,32,384],"offset":122,"phase":1,"quadratic_rows":[16,0,64,0,81,0,84,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":973,"old":729,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":981,"old":729,"rank":1,"right":{"linear_Z4":[2,0,3,0,2,0,0,0,0],"matrix_rows":[20,5,2,16,24,32,64,128,256],"offset":26,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,64,129,5,4,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":730,"rank":3,"right":{"linear_Z4":[2,0,0,0,0,1,0,0,2],"matrix_rows":[33,258,36,96,256,64,8,112,384],"offset":183,"phase":0,"quadratic_rows":[64,0,96,0,0,36,5,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":972,"old":730,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":981,"old":730,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[68,5,2,64,8,16,96,128,256],"offset":74,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,2,0,0,0,0,0,0],"matrix_rows":[9,18,36,71,6,130,3,258,2],"offset":0,"phase":0,"quadratic_rows":[4,0,1,0,0,0,0,0,0]},"new":1,"old":731,"rank":3,"right":{"linear_Z4":[2,2,2,0,1,0,1,0,2],"matrix_rows":[81,258,84,320,256,272,344,288,384],"offset":85,"phase":0,"quadratic_rows":[272,0,320,0,81,0,84,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":973,"old":731,"rank":1,"right":{"linear_Z4":[2,2,2,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":174,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":980,"old":731,"rank":1,"right":{"linear_Z4":[2,2,1,0,2,0,0,0,0],"matrix_rows":[20,5,2,16,24,32,64,128,256],"offset":31,"phase":1,"quadratic_rows":[4,0,5,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,68,4,134,6,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,4,0,0,0,0,0,0]},"new":1,"old":732,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,2],"matrix_rows":[258,84,8,1,256,80,16,96,384],"offset":81,"phase":3,"quadratic_rows":[0,0,0,16,8,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":966,"old":732,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":977,"old":732,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,16,96,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[9,18,34,68,133,7,6,258,2],"offset":0,"phase":0,"quadratic_rows":[2,3,4,0,0,0,0,0,0]},"new":1,"old":733,"rank":3,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,3],"matrix_rows":[353,98,8,96,256,260,320,304,384],"offset":31,"phase":1,"quadratic_rows":[256,352,0,320,0,98,106,0,267]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":969,"old":733,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,2],"matrix_rows":[259,257,256,260,8,16,288,320,384],"offset":149,"phase":2,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":974,"old":733,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,2],"matrix_rows":[257,259,256,260,8,16,288,320,384],"offset":86,"phase":0,"quadratic_rows":[3,1,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":982,"old":734,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,2],"matrix_rows":[260,129,130,388,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[128,128,132,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":990,"old":734,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[388,129,130,260,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[128,128,132,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,66,129,256,1,4,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":998,"old":734,"rank":3,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,3],"matrix_rows":[66,260,384,3,64,256,264,80,32],"offset":171,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":985,"old":735,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,1,0,2],"matrix_rows":[451,385,386,4,8,16,32,320,256],"offset":0,"phase":0,"quadratic_rows":[67,67,0,0,0,0,195,64,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":993,"old":735,"rank":1,"right":{"linear_Z4":[1,1,0,0,0,0,1,2,2],"matrix_rows":[323,257,258,4,8,16,32,448,256],"offset":0,"phase":0,"quadratic_rows":[67,67,0,0,0,0,195,64,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,17,32,64,129,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,7,7,0,0,0,0,0,0]},"new":998,"old":735,"rank":3,"right":{"linear_Z4":[2,1,0,0,0,0,0,0,0],"matrix_rows":[258,320,384,3,256,4,8,272,32],"offset":25,"phase":3,"quadratic_rows":[2,3,0,0,0,0,256,256,192]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,2,257,6,8,9],"offset":0,"phase":0,"quadratic_rows":[8,4,2,9,0,0,0,0,0]},"new":1,"old":736,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,1,0,3],"matrix_rows":[257,66,68,384,256,16,80,88,288],"offset":183,"phase":0,"quadratic_rows":[0,80,16,0,6,0,66,256,384]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":988,"old":736,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,2],"matrix_rows":[257,385,130,132,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,128,128,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":996,"old":736,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[385,257,130,132,8,16,32,64,256],"offset":0,"phase":0,"quadratic_rows":[129,128,128,0,0,0,0,7,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":989,"old":737,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,1,0,2],"matrix_rows":[454,1,386,388,8,16,32,320,256],"offset":0,"phase":0,"quadratic_rows":[0,70,70,0,0,0,198,64,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":997,"old":737,"rank":1,"right":{"linear_Z4":[0,1,1,0,0,0,1,2,2],"matrix_rows":[326,1,258,260,8,16,32,448,256],"offset":0,"phase":0,"quadratic_rows":[0,70,70,0,0,0,198,64,0]}},{"left":{"linear_Z4":[2,3,3,0,0,0,0,0,0],"matrix_rows":[8,16,33,65,128,256,2,4,7],"offset":0,"phase":0,"quadratic_rows":[6,7,7,0,0,0,0,0,0]},"new":999,"old":737,"rank":3,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,0],"matrix_rows":[260,320,384,1,6,256,264,16,32],"offset":49,"phase":3,"quadratic_rows":[0,4,6,0,0,0,256,256,192]}},{"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,132,2,257,8,9,6],"offset":0,"phase":0,"quadratic_rows":[8,4,2,9,0,0,0,0,0]},"new":1,"old":738,"rank":4,"right":{"linear_Z4":[0,0,2,0,0,0,0,3,1],"matrix_rows":[129,258,260,192,128,16,272,280,160],"offset":183,"phase":0,"quadratic_rows":[0,272,16,0,6,0,128,192,258]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":988,"old":738,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[193,129,66,68,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[65,64,64,0,0,0,7,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":997,"old":738,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,2,0],"matrix_rows":[65,128,2,4,8,16,160,192,256],"offset":64,"phase":3,"quadratic_rows":[192,0,0,0,0,0,193,65,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":989,"old":739,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[65,256,2,4,8,16,288,320,128],"offset":64,"phase":3,"quadratic_rows":[320,0,0,0,0,0,321,0,65]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":996,"old":739,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[321,257,66,68,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[65,64,64,0,0,0,7,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[9,16,34,66,128,257,4,2,5],"offset":0,"phase":0,"quadratic_rows":[4,0,5,0,0,0,0,0,0]},"new":999,"old":739,"rank":3,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,3],"matrix_rows":[257,132,320,256,6,128,136,16,288],"offset":91,"phase":3,"quadratic_rows":[0,4,6,0,0,0,256,0,320]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":982,"old":740,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[196,65,66,132,8,16,32,128,256],"offset":0,"phase":0,"quadratic_rows":[64,64,68,0,0,0,7,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":993,"old":740,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,2,0],"matrix_rows":[68,1,2,128,136,16,32,192,256],"offset":16,"phase":3,"quadratic_rows":[0,0,192,0,0,0,196,68,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,66,129,256,4,6,1],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":998,"old":740,"rank":3,"right":{"linear_Z4":[2,3,0,0,0,0,0,3,2],"matrix_rows":[258,132,192,3,256,128,136,272,32],"offset":171,"phase":3,"quadratic_rows":[2,3,0,0,0,0,128,192,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":985,"old":741,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,1,0,2],"matrix_rows":[68,1,2,256,264,16,32,320,128],"offset":16,"phase":3,"quadratic_rows":[0,0,320,0,0,0,324,0,68]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":990,"old":741,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[324,65,66,260,8,16,32,256,128],"offset":0,"phase":0,"quadratic_rows":[64,64,68,0,0,0,7,0,0]}},{"left":{"linear_Z4":[2,2,3,0,0,0,0,0,0],"matrix_rows":[8,17,34,66,129,256,4,1,6],"offset":0,"phase":0,"quadratic_rows":[0,4,6,0,0,0,0,0,0]},"new":998,"old":741,"rank":3,"right":{"linear_Z4":[2,3,0,0,0,0,0,2,3],"matrix_rows":[130,260,320,3,128,256,264,144,32],"offset":171,"phase":3,"quadratic_rows":[2,3,0,0,0,0,256,0,320]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":832,"old":742,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":4,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":835,"old":742,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,264,272,288,320,384],"offset":107,"phase":1,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":742,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":105,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":824,"old":743,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[3,64,66,4,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":827,"old":743,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[3,65,64,4,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":743,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[66,3,64,4,8,16,96,128,256],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":823,"old":744,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,2,0,0,0],"matrix_rows":[3,32,34,4,40,16,64,128,256],"offset":22,"phase":1,"quadratic_rows":[34,35,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":826,"old":744,"rank":1,"right":{"linear_Z4":[3,2,0,0,2,0,0,0,0],"matrix_rows":[3,17,16,4,24,32,64,128,256],"offset":22,"phase":1,"quadratic_rows":[19,17,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":744,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,4,24,32,64,128,256],"offset":22,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":831,"old":745,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":834,"old":745,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,64,384],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":745,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,65,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":746,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,130,160,32,4,8,176,64,256],"offset":75,"phase":0,"quadratic_rows":[32,160,0,0,0,3,0,130,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":848,"old":746,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":851,"old":746,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":746,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,2,0],"matrix_rows":[130,3,128,4,8,16,160,64,256],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":840,"old":747,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,4,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":843,"old":747,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,4,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":747,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,4,8,16,288,64,128],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,32,65,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":748,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,260,32,34,256,8,48,320,128],"offset":22,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":839,"old":748,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":842,"old":748,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,320,128],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":748,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,320,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":847,"old":749,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,8,16,32,192,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":850,"old":749,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":749,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":864,"old":750,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[6,1,34,32,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[0,38,34,0,0,6,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":867,"old":750,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,0],"matrix_rows":[6,1,32,36,8,48,64,128,256],"offset":32,"phase":3,"quadratic_rows":[0,36,38,0,0,6,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":750,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[36,1,6,32,40,16,64,128,256],"offset":21,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":751,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[257,2,256,16,20,24,32,64,384],"offset":13,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":856,"old":751,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":859,"old":751,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":751,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":855,"old":752,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":8,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":858,"old":752,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":10,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":752,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":51,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":863,"old":753,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[6,1,66,64,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[0,70,66,0,0,0,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":866,"old":753,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,2,0,0],"matrix_rows":[6,1,64,68,72,16,32,128,256],"offset":16,"phase":3,"quadratic_rows":[0,68,70,0,0,0,6,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":753,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,2,0,0],"matrix_rows":[68,1,6,64,8,80,32,128,256],"offset":37,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":754,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[257,2,256,16,20,24,32,320,128],"offset":13,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":880,"old":754,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":883,"old":754,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":754,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,18,34,2,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":755,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,2,0],"matrix_rows":[129,2,128,16,20,24,32,192,256],"offset":13,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":872,"old":755,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":6,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":875,"old":755,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":755,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,2,64,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":756,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,0],"matrix_rows":[130,132,1,144,16,152,32,64,256],"offset":51,"phase":0,"quadratic_rows":[0,16,144,0,6,0,0,132,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":871,"old":756,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":874,"old":756,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":756,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,2,0],"matrix_rows":[132,1,6,128,8,144,32,64,256],"offset":37,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":879,"old":757,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,1,256,260,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[0,260,262,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":882,"old":757,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,1,258,256,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[0,262,258,0,0,0,0,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":757,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,0,0,2],"matrix_rows":[260,1,6,256,8,272,32,64,128],"offset":37,"phase":3,"quadratic_rows":[0,4,6,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,34,3,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,2,0,0,0,0,0,0,0]},"new":1,"old":758,"rank":2,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[257,2,256,272,20,280,288,320,384],"offset":37,"phase":3,"quadratic_rows":[0,272,0,0,2,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":896,"old":758,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":899,"old":758,"rank":1,"right":{"linear_Z4":[2,1,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":18,"phase":2,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":758,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,272,288,320,384],"offset":43,"phase":2,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,2,64,3,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":759,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,1,0,0],"matrix_rows":[66,72,1,80,84,16,32,128,256],"offset":51,"phase":0,"quadratic_rows":[0,16,0,80,10,0,72,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":888,"old":759,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,2,0,0],"matrix_rows":[10,1,66,4,64,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[0,74,0,66,0,0,10,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":891,"old":759,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,2,0,0],"matrix_rows":[10,1,64,68,72,16,32,128,256],"offset":8,"phase":3,"quadratic_rows":[0,72,0,74,0,0,10,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":759,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[72,1,10,4,64,80,32,128,256],"offset":37,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":887,"old":760,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[2,3,16,20,24,32,64,128,256],"offset":30,"phase":0,"quadratic_rows":[2,19,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":890,"old":760,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":28,"phase":1,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":760,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,2,12,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":895,"old":761,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":898,"old":761,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,290,4,8,16,256,64,384],"offset":69,"phase":3,"quadratic_rows":[0,290,0,0,0,2,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":761,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,2,64,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":762,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,1,0],"matrix_rows":[130,136,1,144,148,16,32,64,256],"offset":51,"phase":0,"quadratic_rows":[0,16,0,144,10,0,0,136,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":912,"old":762,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[10,1,130,4,128,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[0,138,0,130,0,0,0,10,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":915,"old":762,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[10,1,128,132,136,16,32,64,256],"offset":8,"phase":3,"quadratic_rows":[0,136,0,138,0,0,0,10,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,34,2,64,128,256,3],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":763,"rank":2,"right":{"linear_Z4":[0,2,0,0,0,0,0,0,1],"matrix_rows":[258,264,1,272,276,16,32,64,128],"offset":51,"phase":0,"quadratic_rows":[0,16,0,272,10,0,0,0,264]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":904,"old":763,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[10,1,256,260,264,16,32,64,128],"offset":8,"phase":3,"quadratic_rows":[0,264,0,266,0,0,0,0,10]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":907,"old":763,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[10,1,258,4,256,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[0,266,0,258,0,0,0,0,10]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":763,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,0,0,2],"matrix_rows":[264,1,10,4,256,272,32,64,128],"offset":37,"phase":3,"quadratic_rows":[0,8,0,10,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,1,66,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":764,"rank":2,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,2],"matrix_rows":[2,288,1,16,20,24,256,320,128],"offset":74,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":903,"old":764,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":906,"old":764,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,290,4,8,16,256,320,128],"offset":69,"phase":3,"quadratic_rows":[0,290,0,0,0,2,0,0,2]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":764,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,320,128],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":911,"old":765,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[2,1,162,4,8,16,128,192,256],"offset":69,"phase":3,"quadratic_rows":[0,162,0,0,0,2,0,2,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":914,"old":765,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":999,"old":765,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,32,2,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":766,"rank":2,"right":{"linear_Z4":[2,2,0,0,3,3,0,0,0],"matrix_rows":[49,50,32,16,52,8,64,128,256],"offset":28,"phase":1,"quadratic_rows":[16,32,0,0,49,50,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":928,"old":766,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,2,0,0,0],"matrix_rows":[3,32,34,36,8,16,64,128,256],"offset":14,"phase":1,"quadratic_rows":[34,35,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":931,"old":766,"rank":1,"right":{"linear_Z4":[3,2,0,0,2,0,0,0,0],"matrix_rows":[3,17,16,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[19,17,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":766,"rank":1,"right":{"linear_Z4":[2,3,0,0,2,0,0,0,0],"matrix_rows":[18,3,16,20,8,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,128,258,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":767,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,264,32,34,4,256,48,64,384],"offset":38,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":920,"old":767,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":923,"old":767,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,32,64,384],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":767,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":919,"old":768,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,260,264,16,288,320,384],"offset":64,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":922,"old":768,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,260,264,272,32,320,384],"offset":32,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":768,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,0,0,2],"matrix_rows":[258,3,256,260,264,16,288,320,384],"offset":67,"phase":3,"quadratic_rows":[2,3,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":927,"old":769,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,2,0,0],"matrix_rows":[17,65,2,4,8,64,96,128,256],"offset":64,"phase":3,"quadratic_rows":[81,0,0,0,65,0,17,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":930,"old":769,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,2,0,0],"matrix_rows":[17,64,66,4,8,80,32,128,256],"offset":4,"phase":3,"quadratic_rows":[80,0,0,0,81,0,17,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":769,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,2,0,0],"matrix_rows":[80,17,2,4,8,64,96,128,256],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,130,256,2],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":770,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,2],"matrix_rows":[1,264,32,34,4,256,48,320,128],"offset":38,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":944,"old":770,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":947,"old":770,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,32,320,128],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,34,65,1,130,2,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":771,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,0,2,0],"matrix_rows":[1,136,32,34,4,128,48,192,256],"offset":38,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":936,"old":771,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,137,2,4,128,16,32,192,256],"offset":19,"phase":3,"quadratic_rows":[137,0,0,1,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":939,"old":771,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":771,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,66,2,128,3,256],"offset":0,"phase":0,"quadratic_rows":[2,1,0,0,0,0,0,0,0]},"new":1,"old":772,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,1,0],"matrix_rows":[129,144,160,162,4,8,32,64,256],"offset":75,"phase":0,"quadratic_rows":[32,0,0,0,160,17,0,144,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":935,"old":772,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[17,129,2,4,8,128,160,64,256],"offset":64,"phase":3,"quadratic_rows":[145,0,0,0,129,0,0,17,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":938,"old":772,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[17,128,130,4,8,144,32,64,256],"offset":4,"phase":3,"quadratic_rows":[144,0,0,0,145,0,0,17,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":772,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,2,0],"matrix_rows":[144,17,2,4,8,128,160,64,256],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":943,"old":773,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[17,256,258,4,8,272,32,64,128],"offset":4,"phase":3,"quadratic_rows":[272,0,0,0,273,0,0,0,17]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":946,"old":773,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[17,257,2,4,8,256,288,64,128],"offset":64,"phase":3,"quadratic_rows":[273,0,0,0,257,0,0,0,17]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":998,"old":773,"rank":1,"right":{"linear_Z4":[2,0,0,0,3,0,0,0,2],"matrix_rows":[272,17,2,4,8,256,288,64,128],"offset":67,"phase":3,"quadratic_rows":[16,0,0,0,17,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,32,2,67,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":775,"old":774,"rank":2,"right":{"linear_Z4":[0,3,2,0,2,0,0,0,0],"matrix_rows":[7,4,272,278,16,8,288,320,384],"offset":5,"phase":0,"quadratic_rows":[278,275,257,0,3,0,0,0,7]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,17,32,67,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":776,"old":774,"rank":2,"right":{"linear_Z4":[3,0,2,0,0,2,0,0,0],"matrix_rows":[4,7,293,288,32,8,272,320,384],"offset":10,"phase":0,"quadratic_rows":[291,293,258,0,0,3,0,0,7]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":775,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,36,8,16,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":776,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[17,16,2,20,8,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,16,33,66,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":778,"old":777,"rank":2,"right":{"linear_Z4":[3,3,0,2,0,2,0,0,0],"matrix_rows":[10,9,299,256,4,32,304,320,384],"offset":66,"phase":0,"quadratic_rows":[291,35,0,256,0,3,0,0,9]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,35,66,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":779,"old":777,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[9,10,32,288,4,264,304,320,384],"offset":107,"phase":3,"quadratic_rows":[40,296,0,259,0,3,0,0,10]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":778,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,10,4,16,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":779,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[40,1,2,4,32,48,64,128,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,10,17,34,67,3,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":775,"old":780,"rank":2,"right":{"linear_Z4":[0,1,0,2,0,2,0,0,0],"matrix_rows":[4,14,1,294,256,288,48,320,384],"offset":32,"phase":3,"quadratic_rows":[0,298,40,294,0,14,0,0,10]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,33,67,2,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":779,"old":780,"rank":2,"right":{"linear_Z4":[0,0,0,3,0,2,0,0,0],"matrix_rows":[10,4,1,288,32,296,272,320,384],"offset":9,"phase":0,"quadratic_rows":[0,296,32,298,0,14,0,0,10]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,17,33,2,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":776,"old":781,"rank":2,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,0],"matrix_rows":[1,7,261,16,272,280,32,320,384],"offset":55,"phase":3,"quadratic_rows":[258,21,22,0,6,0,0,0,1]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,1,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":778,"old":781,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,0,0,0,0],"matrix_rows":[1,7,259,16,272,280,32,320,384],"offset":55,"phase":3,"quadratic_rows":[260,278,275,0,6,0,0,0,7]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,10,17,1,34,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":783,"old":782,"rank":2,"right":{"linear_Z4":[3,0,2,0,0,0,0,0,2],"matrix_rows":[4,7,261,256,8,272,32,320,384],"offset":53,"phase":2,"quadratic_rows":[259,261,266,4,0,0,0,0,7]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,2,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":784,"old":782,"rank":2,"right":{"linear_Z4":[0,3,2,0,0,0,0,0,2],"matrix_rows":[7,4,256,262,8,16,288,320,384],"offset":90,"phase":2,"quadratic_rows":[262,259,265,4,0,0,0,0,7]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":783,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":784,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,32,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,16,32,2,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":786,"old":785,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,32,16,4,8,64,128,256],"offset":15,"phase":0,"quadratic_rows":[32,16,0,0,2,1,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,11,16,32,3,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":787,"old":785,"rank":2,"right":{"linear_Z4":[1,3,0,0,0,0,0,0,2],"matrix_rows":[1,2,323,16,4,8,32,256,384],"offset":138,"phase":3,"quadratic_rows":[323,339,0,0,2,0,3,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":786,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[320,1,2,4,8,16,32,256,384],"offset":129,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":787,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,8,272,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,19,3,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":784,"old":788,"rank":2,"right":{"linear_Z4":[0,1,3,0,0,0,0,0,2],"matrix_rows":[2,4,1,326,8,16,32,256,384],"offset":146,"phase":3,"quadratic_rows":[0,326,334,4,0,0,6,0,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,18,2,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":786,"old":788,"rank":2,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,1,16,8,32,64,128,256],"offset":27,"phase":0,"quadratic_rows":[0,16,8,4,2,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,10,17,33,2,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":783,"old":789,"rank":2,"right":{"linear_Z4":[0,2,1,0,0,0,0,0,2],"matrix_rows":[1,7,261,16,272,280,32,320,384],"offset":44,"phase":1,"quadratic_rows":[258,21,22,0,6,0,0,0,1]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,1,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":787,"old":789,"rank":2,"right":{"linear_Z4":[0,3,0,0,0,0,0,0,2],"matrix_rows":[1,7,259,16,272,280,32,320,384],"offset":44,"phase":1,"quadratic_rows":[260,278,275,0,6,0,0,0,7]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":791,"old":790,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":792,"old":790,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":791,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,132,136,144,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":792,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,132,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":794,"old":793,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[24,1,2,4,128,144,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,144,152,0,0,24,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":795,"old":793,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[24,1,2,4,136,128,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,0,0,152,136,0,0,24,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":794,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,32,192,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":795,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,160,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":791,"old":796,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,137,2,4,128,16,160,64,256],"offset":19,"phase":3,"quadratic_rows":[137,0,0,1,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":795,"old":796,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":792,"old":797,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[17,129,2,4,8,128,32,192,256],"offset":128,"phase":3,"quadratic_rows":[145,0,0,0,129,0,0,17,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":794,"old":797,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[17,128,2,132,8,144,32,64,256],"offset":8,"phase":3,"quadratic_rows":[144,0,0,0,145,0,0,17,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":799,"old":798,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":800,"old":798,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":799,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,272,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":800,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":802,"old":801,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[24,1,2,4,256,272,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,0,0,272,280,0,0,0,24]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":803,"old":801,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[24,1,2,4,264,256,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,0,0,280,264,0,0,0,24]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":802,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,320,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":803,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,288,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":800,"old":804,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[17,257,2,4,8,256,32,320,128],"offset":128,"phase":3,"quadratic_rows":[273,0,0,0,257,0,0,0,17]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":802,"old":804,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[17,256,2,260,8,272,32,64,128],"offset":8,"phase":3,"quadratic_rows":[272,0,0,0,273,0,0,0,17]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":799,"old":805,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,288,64,128],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":803,"old":805,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":807,"old":806,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,260,8,272,288,320,384],"offset":128,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":808,"old":806,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,260,264,272,288,64,384],"offset":16,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":807,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,272,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":808,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,8,272,288,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":810,"old":809,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":811,"old":809,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,32,64,384],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":810,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,32,64,384],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":811,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,272,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":807,"old":812,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":76,"phase":1,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":811,"old":812,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":78,"phase":0,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":808,"old":813,"rank":1,"right":{"linear_Z4":[0,1,0,0,2,0,0,0,0],"matrix_rows":[2,1,274,4,8,256,32,64,384],"offset":37,"phase":3,"quadratic_rows":[0,274,0,0,2,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":810,"old":813,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":815,"old":814,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[3,64,66,68,8,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":816,"old":814,"rank":1,"right":{"linear_Z4":[3,2,0,2,0,0,0,0,0],"matrix_rows":[3,9,8,12,16,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[11,9,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":815,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[10,1,8,12,16,32,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":816,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,68,8,16,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":818,"old":817,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,2,0,0],"matrix_rows":[9,65,2,4,64,16,96,128,256],"offset":82,"phase":1,"quadratic_rows":[73,0,0,65,0,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":819,"old":817,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,2,0,0,0],"matrix_rows":[9,32,34,4,40,16,64,128,256],"offset":4,"phase":3,"quadratic_rows":[40,0,0,41,0,9,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":818,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,34,4,8,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":819,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,16,96,128,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":816,"old":820,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":818,"old":820,"rank":1,"right":{"linear_Z4":[2,1,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":66,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":815,"old":821,"rank":1,"right":{"linear_Z4":[0,3,0,2,0,0,0,0,0],"matrix_rows":[2,1,74,4,64,16,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,74,0,2,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":819,"old":821,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":8,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":823,"old":822,"rank":1,"right":{"linear_Z4":[0,2,0,1,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":36,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":824,"old":822,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":823,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[18,1,16,4,24,32,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":824,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,8,16,96,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":826,"old":825,"rank":1,"right":{"linear_Z4":[2,0,0,1,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":66,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":827,"old":825,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":826,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,4,40,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":827,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,8,80,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":823,"old":828,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[3,64,66,4,8,80,32,128,256],"offset":38,"phase":1,"quadratic_rows":[66,67,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":827,"old":828,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[3,17,16,4,24,32,64,128,256],"offset":16,"phase":3,"quadratic_rows":[19,17,0,0,3,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":824,"old":829,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,2,0,0,0],"matrix_rows":[3,32,34,4,40,16,64,128,256],"offset":16,"phase":3,"quadratic_rows":[34,35,0,0,0,3,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":826,"old":829,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,2,0,0],"matrix_rows":[3,65,64,4,8,16,96,128,256],"offset":70,"phase":1,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":831,"old":830,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":832,"old":830,"rank":1,"right":{"linear_Z4":[0,0,2,3,0,0,2,0,0],"matrix_rows":[8,1,2,12,64,80,96,128,256],"offset":24,"phase":2,"quadratic_rows":[0,0,8,76,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":831,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,64,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":832,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,272,288,320,384],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":834,"old":833,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":112,"phase":1,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":835,"old":833,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":114,"phase":0,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":834,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,272,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":835,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,16,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":832,"old":836,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":4,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":834,"old":836,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,264,272,288,320,384],"offset":155,"phase":1,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":831,"old":837,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":835,"old":837,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,32,64,384],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":839,"old":838,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":840,"old":838,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":839,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,32,320,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":840,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,272,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":842,"old":841,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,288,64,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":843,"old":841,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":842,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,272,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":843,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,288,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":839,"old":844,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,1,256,260,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,260,262,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":843,"old":844,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,1,258,256,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,262,258,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":840,"old":845,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":842,"old":845,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":847,"old":846,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,8,16,160,64,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":848,"old":846,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":847,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,8,144,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":848,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,160,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":850,"old":849,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":851,"old":849,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":850,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,32,192,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":851,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,144,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":848,"old":852,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":850,"old":852,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":847,"old":853,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":851,"old":853,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":855,"old":854,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":856,"old":854,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":855,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,272,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":856,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":858,"old":857,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":859,"old":857,"rank":1,"right":{"linear_Z4":[2,0,0,1,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":34,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":858,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":859,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,272,32,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":855,"old":860,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":8,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":859,"old":860,"rank":1,"right":{"linear_Z4":[2,1,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":10,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":856,"old":861,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":858,"old":861,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":863,"old":862,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":116,"phase":0,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":864,"old":862,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":112,"phase":1,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":863,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,4,72,16,32,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":864,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[34,1,32,4,8,48,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":866,"old":865,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":867,"old":865,"rank":1,"right":{"linear_Z4":[0,0,2,1,0,0,2,0,0],"matrix_rows":[8,1,2,12,64,80,96,128,256],"offset":72,"phase":2,"quadratic_rows":[0,0,8,76,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":866,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,80,32,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":867,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[36,1,2,32,40,16,64,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":864,"old":868,"rank":1,"right":{"linear_Z4":[0,3,2,0,0,0,2,0,0],"matrix_rows":[6,1,66,64,8,80,32,128,256],"offset":44,"phase":1,"quadratic_rows":[0,70,66,0,0,0,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":866,"old":868,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,2,0,0,0],"matrix_rows":[6,1,32,36,8,48,64,128,256],"offset":44,"phase":1,"quadratic_rows":[0,36,38,0,0,6,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":863,"old":869,"rank":1,"right":{"linear_Z4":[0,3,2,0,0,2,0,0,0],"matrix_rows":[6,1,34,32,40,16,64,128,256],"offset":28,"phase":1,"quadratic_rows":[0,38,34,0,0,6,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":867,"old":869,"rank":1,"right":{"linear_Z4":[0,2,3,0,0,0,2,0,0],"matrix_rows":[6,1,64,68,72,16,32,128,256],"offset":28,"phase":1,"quadratic_rows":[0,68,70,0,0,0,6,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":871,"old":870,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":872,"old":870,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,131,128,4,136,16,32,64,256],"offset":7,"phase":3,"quadratic_rows":[131,1,0,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":871,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,136,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":872,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,136,144,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":874,"old":873,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[5,128,2,132,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[132,0,133,0,0,0,0,5,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":875,"old":873,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[5,129,2,128,8,144,32,64,256],"offset":32,"phase":3,"quadratic_rows":[133,0,129,0,0,0,0,5,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":874,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,144,32,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":875,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,32,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":871,"old":876,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":875,"old":876,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":872,"old":877,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,8,144,32,64,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":874,"old":877,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":879,"old":878,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[5,256,2,260,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[260,0,261,0,0,0,0,0,5]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":880,"old":878,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[5,257,2,256,8,272,32,64,128],"offset":32,"phase":3,"quadratic_rows":[261,0,257,0,0,0,0,0,5]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":879,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,272,32,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":880,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,32,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":882,"old":881,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":883,"old":881,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,264,16,32,64,128],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":882,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":883,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,272,32,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":880,"old":884,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,4,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":882,"old":884,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,4,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":879,"old":885,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":883,"old":885,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,272,32,64,128],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":887,"old":886,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,67,64,68,8,16,32,128,256],"offset":1,"phase":1,"quadratic_rows":[67,1,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":888,"old":886,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":887,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[17,16,18,4,8,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":888,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[66,1,64,68,8,16,32,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":890,"old":889,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,0,0,0],"matrix_rows":[1,73,2,4,64,80,32,128,256],"offset":1,"phase":1,"quadratic_rows":[73,0,0,1,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":891,"old":889,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":8,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":890,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[9,8,2,12,16,32,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":891,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[72,1,2,4,64,80,32,128,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":887,"old":892,"rank":1,"right":{"linear_Z4":[3,0,0,2,0,0,2,0,0],"matrix_rows":[9,65,2,4,64,80,32,128,256],"offset":50,"phase":1,"quadratic_rows":[73,0,0,65,0,0,9,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":891,"old":892,"rank":1,"right":{"linear_Z4":[0,0,0,1,2,0,0,0,0],"matrix_rows":[9,16,18,4,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[24,0,0,25,9,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,1,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":888,"old":893,"rank":1,"right":{"linear_Z4":[2,3,0,2,0,0,0,0,0],"matrix_rows":[3,8,10,12,16,32,64,128,256],"offset":14,"phase":1,"quadratic_rows":[10,11,0,3,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":890,"old":893,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,2,0,0],"matrix_rows":[3,65,64,68,8,16,32,128,256],"offset":14,"phase":1,"quadratic_rows":[67,65,0,0,0,0,3,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":895,"old":894,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":896,"old":894,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,289,2,4,8,16,256,64,384],"offset":67,"phase":3,"quadratic_rows":[289,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":895,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,64,384],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":896,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,8,272,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":898,"old":897,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":42,"phase":1,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":899,"old":897,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,264,272,288,64,384],"offset":47,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":898,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,288,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":899,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,16,288,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":896,"old":900,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,260,264,272,288,64,384],"offset":16,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":898,"old":900,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,260,8,272,288,320,384],"offset":128,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":895,"old":901,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":899,"old":901,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,2,0,0,0],"matrix_rows":[1,289,2,4,8,16,256,64,384],"offset":67,"phase":3,"quadratic_rows":[289,0,0,0,0,1,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":903,"old":902,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,0,2],"matrix_rows":[40,1,2,4,256,272,288,64,128],"offset":32,"phase":3,"quadratic_rows":[0,0,0,288,0,296,0,0,40]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":904,"old":902,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[40,1,2,4,264,16,256,320,128],"offset":128,"phase":3,"quadratic_rows":[0,0,0,296,0,264,0,0,40]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":903,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[288,1,2,4,8,16,256,320,128],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":904,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,272,32,64,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":906,"old":905,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":20,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":907,"old":905,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":906,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,272,288,320,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":907,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,8,16,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":903,"old":908,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,0,2],"matrix_rows":[34,1,256,260,8,16,288,64,128],"offset":8,"phase":3,"quadratic_rows":[0,288,0,0,0,290,0,0,34]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":907,"old":908,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[34,1,258,4,8,16,256,320,128],"offset":128,"phase":3,"quadratic_rows":[0,290,0,0,0,258,0,0,34]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":904,"old":909,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":906,"old":909,"rank":1,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,0],"matrix_rows":[2,1,266,4,256,272,32,64,128],"offset":21,"phase":3,"quadratic_rows":[0,266,0,2,0,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":911,"old":910,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":20,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":912,"old":910,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":911,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,132,136,144,160,192,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":912,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,132,8,16,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":914,"old":913,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,2,0],"matrix_rows":[40,1,2,4,128,144,160,64,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,160,0,168,0,40,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":915,"old":913,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[40,1,2,4,136,16,128,192,256],"offset":128,"phase":3,"quadratic_rows":[0,0,0,168,0,136,0,40,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":914,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[160,1,2,4,8,16,128,192,256],"offset":65,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":915,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,144,32,64,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":912,"old":916,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[34,1,130,4,8,16,128,192,256],"offset":128,"phase":3,"quadratic_rows":[0,162,0,0,0,130,0,34,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":914,"old":916,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,1,0,2,0],"matrix_rows":[34,1,128,132,8,16,160,64,256],"offset":8,"phase":3,"quadratic_rows":[0,160,0,0,0,162,0,34,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":911,"old":917,"rank":1,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,0],"matrix_rows":[2,1,138,4,128,144,32,64,256],"offset":21,"phase":3,"quadratic_rows":[0,138,0,2,0,0,0,2,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":915,"old":917,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":919,"old":918,"rank":1,"right":{"linear_Z4":[1,0,0,2,0,0,0,0,0],"matrix_rows":[1,265,2,4,256,16,32,64,384],"offset":19,"phase":3,"quadratic_rows":[265,0,0,1,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":920,"old":918,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":919,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,260,264,272,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":920,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,64,384],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":922,"old":921,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":32,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":923,"old":921,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,260,264,16,288,320,384],"offset":143,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,32,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":922,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,260,264,16,288,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":923,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,272,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":919,"old":924,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":923,"old":924,"rank":1,"right":{"linear_Z4":[2,1,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":66,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":920,"old":925,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":922,"old":925,"rank":1,"right":{"linear_Z4":[0,1,0,2,0,0,0,0,0],"matrix_rows":[2,1,266,4,256,16,32,64,384],"offset":21,"phase":3,"quadratic_rows":[0,266,0,2,0,0,0,0,2]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":927,"old":926,"rank":1,"right":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[1,19,16,20,8,32,64,128,256],"offset":1,"phase":1,"quadratic_rows":[19,1,0,0,1,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":928,"old":926,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":42,"phase":1,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":927,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,66,4,8,16,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":928,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[18,1,16,20,8,32,64,128,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":930,"old":929,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,2,0,0,0],"matrix_rows":[17,32,2,36,8,48,64,128,256],"offset":8,"phase":3,"quadratic_rows":[48,0,0,0,49,17,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":931,"old":929,"rank":1,"right":{"linear_Z4":[3,0,0,0,2,0,2,0,0],"matrix_rows":[17,65,2,4,8,64,96,128,256],"offset":98,"phase":1,"quadratic_rows":[81,0,0,0,65,0,17,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":930,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[80,1,2,4,8,64,96,128,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":931,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,36,8,16,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":928,"old":932,"rank":1,"right":{"linear_Z4":[0,3,0,0,2,0,0,0,0],"matrix_rows":[2,1,82,4,8,64,96,128,256],"offset":1,"phase":1,"quadratic_rows":[0,82,0,0,2,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":930,"old":932,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":8,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":927,"old":933,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":78,"phase":0,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":931,"old":933,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":76,"phase":1,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":935,"old":934,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":936,"old":934,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":935,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,4,8,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":936,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,4,136,144,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":938,"old":937,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,2,0],"matrix_rows":[24,1,2,4,128,144,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,0,0,144,152,0,0,24,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":939,"old":937,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[24,1,2,4,136,128,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,152,136,0,0,24,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":938,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[144,1,2,4,8,128,160,64,256],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":939,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[136,1,2,4,128,16,32,192,256],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":935,"old":940,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[9,129,2,4,128,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[137,0,0,129,0,0,0,9,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":939,"old":940,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,2,0],"matrix_rows":[9,128,130,4,136,16,32,64,256],"offset":4,"phase":3,"quadratic_rows":[136,0,0,137,0,0,0,9,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":936,"old":941,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,145,2,4,8,128,160,64,256],"offset":35,"phase":3,"quadratic_rows":[145,0,0,0,1,0,0,1,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":938,"old":941,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":943,"old":942,"rank":1,"right":{"linear_Z4":[0,0,0,0,1,0,0,0,2],"matrix_rows":[24,1,2,4,256,272,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,0,0,272,280,0,0,0,24]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":944,"old":942,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[24,1,2,4,264,256,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,0,0,280,264,0,0,0,24]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":943,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[272,1,2,4,8,256,288,64,128],"offset":33,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":944,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[264,1,2,4,256,16,32,320,128],"offset":17,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":946,"old":945,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":947,"old":945,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":18,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":946,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,8,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":947,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,4,264,272,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":944,"old":948,"rank":1,"right":{"linear_Z4":[0,0,0,1,0,0,0,0,2],"matrix_rows":[9,256,258,4,264,16,32,64,128],"offset":4,"phase":3,"quadratic_rows":[264,0,0,265,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":946,"old":948,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[9,257,2,4,256,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[265,0,0,257,0,0,0,0,9]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":943,"old":949,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":947,"old":949,"rank":1,"right":{"linear_Z4":[1,0,0,0,2,0,0,0,0],"matrix_rows":[1,273,2,4,8,256,288,64,128],"offset":35,"phase":3,"quadratic_rows":[273,0,0,0,1,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":951,"old":950,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":952,"old":950,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,261,2,256,8,16,288,64,128],"offset":11,"phase":3,"quadratic_rows":[261,0,1,0,0,0,0,0,1]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":951,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,8,16,288,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":952,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,16,288,320,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":954,"old":953,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,257,256,4,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[259,257,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":955,"old":953,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,256,258,4,264,16,32,64,128],"offset":16,"phase":3,"quadratic_rows":[258,259,0,0,0,0,0,0,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":954,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,264,16,32,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":955,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,320,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":951,"old":956,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,1,256,260,8,16,32,320,128],"offset":128,"phase":3,"quadratic_rows":[0,260,262,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":955,"old":956,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,1,258,256,8,16,288,64,128],"offset":64,"phase":3,"quadratic_rows":[0,262,258,0,0,0,0,0,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":952,"old":957,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":954,"old":957,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":959,"old":958,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":960,"old":958,"rank":1,"right":{"linear_Z4":[1,0,2,0,0,0,0,0,0],"matrix_rows":[1,133,2,128,8,16,160,64,256],"offset":11,"phase":3,"quadratic_rows":[133,0,1,0,0,0,0,1,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":959,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,8,16,160,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":960,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,136,16,160,192,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":962,"old":961,"rank":1,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,129,128,4,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[131,129,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":963,"old":961,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,128,130,4,136,16,32,64,256],"offset":16,"phase":3,"quadratic_rows":[130,131,0,0,0,0,0,3,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":962,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,136,16,32,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":963,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,16,32,192,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":960,"old":964,"rank":1,"right":{"linear_Z4":[2,3,0,0,0,0,2,0,0],"matrix_rows":[2,3,64,68,8,16,96,128,256],"offset":6,"phase":2,"quadratic_rows":[2,67,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":962,"old":964,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,64,129,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":959,"old":965,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,1,128,132,8,16,32,192,256],"offset":128,"phase":3,"quadratic_rows":[0,132,134,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":963,"old":965,"rank":1,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,1,130,128,8,16,160,64,256],"offset":64,"phase":3,"quadratic_rows":[0,134,130,0,0,0,0,6,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":967,"old":966,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":32,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":968,"old":966,"rank":1,"right":{"linear_Z4":[0,0,2,1,0,0,2,0,0],"matrix_rows":[8,1,2,12,64,80,96,128,256],"offset":40,"phase":2,"quadratic_rows":[0,0,8,76,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":967,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[68,1,2,64,8,16,96,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":968,"rank":1,"right":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[20,1,2,16,24,32,64,128,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":970,"old":969,"rank":1,"right":{"linear_Z4":[2,0,0,3,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":114,"phase":0,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":971,"old":969,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":112,"phase":1,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":970,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[65,64,2,4,72,16,32,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":971,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[33,32,2,4,8,48,64,128,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":967,"old":972,"rank":1,"right":{"linear_Z4":[0,0,1,0,0,2,0,0,0],"matrix_rows":[5,32,2,36,8,48,64,128,256],"offset":32,"phase":3,"quadratic_rows":[36,0,37,0,0,5,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":971,"old":972,"rank":1,"right":{"linear_Z4":[3,0,2,0,0,0,2,0,0],"matrix_rows":[5,65,2,64,8,16,96,128,256],"offset":74,"phase":1,"quadratic_rows":[69,0,65,0,0,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":968,"old":973,"rank":1,"right":{"linear_Z4":[2,0,3,0,0,0,2,0,0],"matrix_rows":[5,64,2,68,72,16,32,128,256],"offset":26,"phase":1,"quadratic_rows":[68,0,69,0,0,0,5,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":970,"old":973,"rank":1,"right":{"linear_Z4":[3,0,2,0,2,0,0,0,0],"matrix_rows":[5,17,2,16,24,32,64,128,256],"offset":26,"phase":1,"quadratic_rows":[21,0,17,0,5,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":975,"old":974,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":64,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":976,"old":974,"rank":1,"right":{"linear_Z4":[2,0,0,1,0,0,2,0,0],"matrix_rows":[8,9,2,4,64,80,96,128,256],"offset":66,"phase":2,"quadratic_rows":[8,0,0,73,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,16,33,64,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":975,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,8,272,32,320,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,32,65,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":976,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,16,288,64,384],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":978,"old":977,"rank":1,"right":{"linear_Z4":[0,2,0,3,0,0,2,0,0],"matrix_rows":[8,1,10,4,64,80,96,128,256],"offset":20,"phase":2,"quadratic_rows":[0,8,0,74,0,0,8,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":979,"old":977,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":978,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,264,272,288,320,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":979,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,16,32,64,384],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,33,65,129,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":976,"old":980,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,264,272,288,320,384],"offset":167,"phase":1,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":978,"old":980,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":8,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,32,64,128,257,1],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":975,"old":981,"rank":1,"right":{"linear_Z4":[1,2,0,0,0,0,0,0,0],"matrix_rows":[1,259,256,4,8,16,32,64,384],"offset":7,"phase":3,"quadratic_rows":[259,1,0,0,0,0,0,0,1]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":979,"old":981,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,67,128,259,2,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":983,"old":982,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,2],"matrix_rows":[6,5,135,256,384,392,272,32,320],"offset":82,"phase":3,"quadratic_rows":[131,387,256,0,0,0,0,3,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,32,66,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":984,"old":982,"rank":2,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,0],"matrix_rows":[5,6,32,288,260,8,304,320,384],"offset":71,"phase":0,"quadratic_rows":[36,292,259,0,0,3,0,0,6]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":983,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,130,132,136,144,160,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":984,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[132,1,2,128,136,16,32,64,256],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,64,129,258,1,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":986,"old":985,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[3,64,128,130,4,8,16,160,256],"offset":386,"phase":3,"quadratic_rows":[130,131,0,0,0,0,256,3,64]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":987,"old":985,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,2,0],"matrix_rows":[3,64,129,128,4,8,144,32,256],"offset":322,"phase":3,"quadratic_rows":[131,129,0,0,0,0,256,3,64]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":986,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[130,1,128,4,8,144,32,64,256],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,1,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":987,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,2,0],"matrix_rows":[129,128,2,4,8,16,160,64,256],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,3,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":983,"old":988,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,5,263,16,272,280,32,320,384],"offset":43,"phase":0,"quadratic_rows":[259,275,16,0,6,0,0,0,3]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,1,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":987,"old":988,"rank":2,"right":{"linear_Z4":[2,0,2,0,0,0,0,0,0],"matrix_rows":[3,5,257,16,272,280,32,320,384],"offset":43,"phase":0,"quadratic_rows":[262,17,273,0,6,0,0,0,5]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,65,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":984,"old":989,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,2,0],"matrix_rows":[6,64,1,128,132,8,144,32,256],"offset":322,"phase":3,"quadratic_rows":[0,132,134,0,0,0,256,6,64]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,64,128,258,1,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":986,"old":989,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,2,0],"matrix_rows":[6,64,1,130,128,136,16,32,256],"offset":290,"phase":3,"quadratic_rows":[0,134,130,0,0,0,256,6,64]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,10,19,32,66,1,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":991,"old":990,"rank":2,"right":{"linear_Z4":[0,2,2,0,0,0,0,0,0],"matrix_rows":[5,6,32,288,260,8,304,320,384],"offset":71,"phase":0,"quadratic_rows":[36,292,259,0,0,3,0,0,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,67,128,259,3,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":992,"old":990,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,2,2],"matrix_rows":[6,5,263,128,384,392,144,32,192],"offset":82,"phase":3,"quadratic_rows":[259,387,128,0,0,0,0,6,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,9,17,32,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":991,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[260,1,2,256,264,16,32,64,128],"offset":9,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,9,17,33,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":992,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,258,260,264,272,288,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":994,"old":993,"rank":2,"right":{"linear_Z4":[1,0,0,0,0,0,0,0,2],"matrix_rows":[3,64,257,256,4,8,272,32,128],"offset":322,"phase":3,"quadratic_rows":[259,257,0,0,0,0,128,64,3]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[5,9,16,32,64,129,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":995,"old":993,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[3,64,256,258,4,8,16,288,128],"offset":386,"phase":3,"quadratic_rows":[258,259,0,0,0,0,128,64,3]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,8,16,32,65,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":994,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,256,2,4,8,16,288,64,128],"offset":3,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,8,16,33,64,128,256,1],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"new":1,"old":995,"rank":1,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[258,1,256,4,8,272,32,64,128],"offset":5,"phase":0,"quadratic_rows":[0,0,0,0,0,0,0,0,0]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,11,17,33,3,64,130,258,2],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":992,"old":996,"rank":2,"right":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[6,5,263,16,272,280,32,320,384],"offset":43,"phase":0,"quadratic_rows":[259,275,16,0,6,0,0,0,3]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[7,9,18,34,1,64,131,259,3],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":994,"old":996,"rank":2,"right":{"linear_Z4":[2,0,2,0,0,0,0,0,0],"matrix_rows":[3,5,257,16,272,280,32,320,384],"offset":43,"phase":0,"quadratic_rows":[262,17,273,0,6,0,0,0,5]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,32,65,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":991,"old":997,"rank":2,"right":{"linear_Z4":[0,0,1,0,0,0,0,0,2],"matrix_rows":[6,64,1,256,260,8,272,32,128],"offset":322,"phase":3,"quadratic_rows":[0,260,262,0,0,0,128,64,6]}},{"left":{"linear_Z4":[3,3,0,0,0,0,0,0,0],"matrix_rows":[4,9,17,33,64,128,258,2,1],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"new":995,"old":997,"rank":2,"right":{"linear_Z4":[0,1,0,0,0,0,0,0,2],"matrix_rows":[6,64,1,258,256,264,16,32,128],"offset":290,"phase":3,"quadratic_rows":[0,262,258,0,0,0,128,64,6]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,16,33,1,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":998,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,2,0,0,0],"matrix_rows":[1,32,34,4,8,48,64,128,256],"offset":2,"phase":3,"quadratic_rows":[32,0,0,0,0,1,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,17,1,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":999,"rank":1,"right":{"linear_Z4":[0,2,0,0,2,0,0,0,0],"matrix_rows":[2,1,16,20,24,32,64,128,256],"offset":4,"phase":3,"quadratic_rows":[0,16,0,0,2,0,0,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,5,8,17,32,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1000,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,66,4,72,16,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,5,9,16,32,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1001,"rank":1,"right":{"linear_Z4":[0,2,0,0,0,0,2,0,0],"matrix_rows":[2,1,64,68,8,16,96,128,256],"offset":4,"phase":3,"quadratic_rows":[0,64,0,0,0,0,2,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[3,4,9,16,33,64,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1002,"rank":1,"right":{"linear_Z4":[2,0,0,0,0,0,2,0,0],"matrix_rows":[1,64,2,68,8,80,32,128,256],"offset":2,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}},{"left":{"linear_Z4":[3,0,0,0,0,0,0,0,0],"matrix_rows":[2,4,8,17,33,65,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1003,"rank":1,"right":{"linear_Z4":[0,0,0,2,0,0,2,0,0],"matrix_rows":[8,1,2,4,64,80,96,128,256],"offset":16,"phase":3,"quadratic_rows":[0,0,0,64,0,0,8,0,0]}},{"left":{"linear_Z4":[3,2,0,0,0,0,0,0,0],"matrix_rows":[5,9,18,33,66,2,1,128,256],"offset":0,"phase":0,"quadratic_rows":[1,0,0,0,0,0,0,0,0]},"new":1,"old":1004,"rank":2,"right":{"linear_Z4":[2,0,0,0,0,2,2,0,0],"matrix_rows":[1,36,64,66,32,72,48,128,256],"offset":22,"phase":3,"quadratic_rows":[64,0,0,0,0,0,1,0,0]}}],"endpoint_adapters":[{"frame":9,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,11,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":0,"rank":0,"right":null,"role":"source"},{"frame":778,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,16,32,64,128,256],"offset":11,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":0,"rank":0,"right":null,"role":"target"},{"frame":215,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,19,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":1,"rank":0,"right":null,"role":"source"},{"frame":887,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,17,32,64,128,256],"offset":19,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":1,"rank":0,"right":null,"role":"target"},{"frame":68,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,35,64,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":2,"rank":0,"right":null,"role":"source"},{"frame":818,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,33,64,128,256],"offset":35,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":2,"rank":0,"right":null,"role":"target"},{"frame":272,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,32,67,128,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":3,"rank":0,"right":null,"role":"source"},{"frame":927,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,32,65,128,256],"offset":67,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":3,"rank":0,"right":null,"role":"target"},{"frame":302,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,32,64,131,256],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":4,"rank":0,"right":null,"role":"source"},{"frame":935,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,32,64,129,256],"offset":131,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":4,"rank":0,"right":null,"role":"target"},{"frame":300,"left":{"linear_Z4":[1,1,0,0,0,0,0,0,0],"matrix_rows":[2,1,4,8,16,32,64,128,259],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"port":5,"rank":0,"right":null,"role":"source"},{"frame":946,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,16,32,64,128,257],"offset":259,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":5,"rank":0,"right":null,"role":"target"},{"frame":212,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,13,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":6,"rank":0,"right":null,"role":"source"},{"frame":890,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,16,32,64,128,256],"offset":13,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":6,"rank":0,"right":null,"role":"target"},{"frame":15,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,21,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":7,"rank":0,"right":null,"role":"source"},{"frame":776,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,17,32,64,128,256],"offset":21,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":7,"rank":0,"right":null,"role":"target"},{"frame":274,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,37,64,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":8,"rank":0,"right":null,"role":"source"},{"frame":931,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,33,64,128,256],"offset":37,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":8,"rank":0,"right":null,"role":"target"},{"frame":74,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,32,69,128,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":9,"rank":0,"right":null,"role":"source"},{"frame":816,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,32,65,128,256],"offset":69,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":9,"rank":0,"right":null,"role":"target"},{"frame":44,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,32,64,133,256],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":10,"rank":0,"right":null,"role":"source"},{"frame":792,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,32,64,129,256],"offset":133,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":10,"rank":0,"right":null,"role":"target"},{"frame":45,"left":{"linear_Z4":[1,0,1,0,0,0,0,0,0],"matrix_rows":[4,2,1,8,16,32,64,128,261],"offset":0,"phase":0,"quadratic_rows":[5,0,5,0,0,0,0,0,0]},"port":11,"rank":0,"right":null,"role":"source"},{"frame":800,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,16,32,64,128,257],"offset":261,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":11,"rank":0,"right":null,"role":"target"},{"frame":96,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,41,64,128,256],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":12,"rank":0,"right":null,"role":"source"},{"frame":826,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,33,64,128,256],"offset":41,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":12,"rank":0,"right":null,"role":"target"},{"frame":357,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,32,73,128,256],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":13,"rank":0,"right":null,"role":"source"},{"frame":970,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,32,65,128,256],"offset":73,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":13,"rank":0,"right":null,"role":"target"},{"frame":329,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,32,64,137,256],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":14,"rank":0,"right":null,"role":"source"},{"frame":962,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,32,64,129,256],"offset":137,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":14,"rank":0,"right":null,"role":"target"},{"frame":328,"left":{"linear_Z4":[1,0,0,1,0,0,0,0,0],"matrix_rows":[8,2,4,1,16,32,64,128,265],"offset":0,"phase":0,"quadratic_rows":[9,0,0,9,0,0,0,0,0]},"port":15,"rank":0,"right":null,"role":"source"},{"frame":954,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,16,32,64,128,257],"offset":265,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":15,"rank":0,"right":null,"role":"target"},{"frame":362,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,49,64,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":16,"rank":0,"right":null,"role":"source"},{"frame":971,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,33,64,128,256],"offset":49,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":16,"rank":0,"right":null,"role":"target"},{"frame":101,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,32,81,128,256],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":17,"rank":0,"right":null,"role":"source"},{"frame":827,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,32,65,128,256],"offset":81,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":17,"rank":0,"right":null,"role":"target"},{"frame":129,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,32,64,145,256],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":18,"rank":0,"right":null,"role":"source"},{"frame":851,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,32,64,129,256],"offset":145,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":18,"rank":0,"right":null,"role":"target"},{"frame":131,"left":{"linear_Z4":[1,0,0,0,1,0,0,0,0],"matrix_rows":[16,2,4,8,1,32,64,128,273],"offset":0,"phase":0,"quadratic_rows":[17,0,0,0,17,0,0,0,0]},"port":19,"rank":0,"right":null,"role":"source"},{"frame":840,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,17,32,64,128,257],"offset":273,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":19,"rank":0,"right":null,"role":"target"},{"frame":391,"left":{"linear_Z4":[1,0,0,0,0,1,0,0,0],"matrix_rows":[32,2,4,8,16,1,64,161,256],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"port":20,"rank":0,"right":null,"role":"source"},{"frame":987,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,33,64,129,256],"offset":161,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":20,"rank":0,"right":null,"role":"target"},{"frame":387,"left":{"linear_Z4":[1,0,0,0,0,1,0,0,0],"matrix_rows":[32,2,4,8,16,1,64,128,289],"offset":0,"phase":0,"quadratic_rows":[33,0,0,0,0,33,0,0,0]},"port":21,"rank":0,"right":null,"role":"source"},{"frame":994,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,33,64,128,257],"offset":289,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":21,"rank":0,"right":null,"role":"target"},{"frame":188,"left":{"linear_Z4":[1,0,0,0,0,0,1,0,0],"matrix_rows":[64,2,4,8,16,32,1,193,256],"offset":0,"phase":0,"quadratic_rows":[65,0,0,0,0,0,65,0,0]},"port":22,"rank":0,"right":null,"role":"source"},{"frame":875,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,65,129,256],"offset":193,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":22,"rank":0,"right":null,"role":"target"},{"frame":190,"left":{"linear_Z4":[1,0,0,0,0,0,1,0,0],"matrix_rows":[64,2,4,8,16,32,1,128,321],"offset":0,"phase":0,"quadratic_rows":[65,0,0,0,0,0,65,0,0]},"port":23,"rank":0,"right":null,"role":"source"},{"frame":880,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,65,128,257],"offset":321,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":23,"rank":0,"right":null,"role":"target"},{"frame":160,"left":{"linear_Z4":[1,0,0,0,0,0,0,1,0],"matrix_rows":[128,2,4,8,16,32,64,1,385],"offset":0,"phase":0,"quadratic_rows":[129,0,0,0,0,0,0,129,0]},"port":24,"rank":0,"right":null,"role":"source"},{"frame":856,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,129,257],"offset":385,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":24,"rank":0,"right":null,"role":"target"},{"frame":69,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,14,16,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":25,"rank":0,"right":null,"role":"source"},{"frame":815,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,16,32,64,128,256],"offset":14,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":25,"rank":0,"right":null,"role":"target"},{"frame":277,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,22,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":26,"rank":0,"right":null,"role":"source"},{"frame":928,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,18,32,64,128,256],"offset":22,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":26,"rank":0,"right":null,"role":"target"},{"frame":12,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,38,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":27,"rank":0,"right":null,"role":"source"},{"frame":775,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,34,64,128,256],"offset":38,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":27,"rank":0,"right":null,"role":"target"},{"frame":218,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,32,70,128,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":28,"rank":0,"right":null,"role":"source"},{"frame":888,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,32,66,128,256],"offset":70,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":28,"rank":0,"right":null,"role":"target"},{"frame":248,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,32,64,134,256],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":29,"rank":0,"right":null,"role":"source"},{"frame":912,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,32,64,130,256],"offset":134,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":29,"rank":0,"right":null,"role":"target"},{"frame":246,"left":{"linear_Z4":[0,1,1,0,0,0,0,0,0],"matrix_rows":[1,4,2,8,16,32,64,128,262],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"port":30,"rank":0,"right":null,"role":"source"},{"frame":907,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,16,32,64,128,258],"offset":262,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":30,"rank":0,"right":null,"role":"target"},{"frame":99,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,26,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":31,"rank":0,"right":null,"role":"source"},{"frame":823,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,18,32,64,128,256],"offset":26,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":31,"rank":0,"right":null,"role":"target"},{"frame":156,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,16,32,74,128,256],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":32,"rank":0,"right":null,"role":"source"},{"frame":863,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,16,32,66,128,256],"offset":74,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":32,"rank":0,"right":null,"role":"target"},{"frame":186,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,16,32,64,138,256],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":33,"rank":0,"right":null,"role":"source"},{"frame":871,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,16,32,64,130,256],"offset":138,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":33,"rank":0,"right":null,"role":"target"},{"frame":184,"left":{"linear_Z4":[0,1,0,1,0,0,0,0,0],"matrix_rows":[1,8,4,2,16,32,64,128,266],"offset":0,"phase":0,"quadratic_rows":[0,10,0,10,0,0,0,0,0]},"port":34,"rank":0,"right":null,"role":"source"},{"frame":882,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,16,32,64,128,258],"offset":266,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":34,"rank":0,"right":null,"role":"target"},{"frame":161,"left":{"linear_Z4":[0,1,0,0,1,0,0,0,0],"matrix_rows":[1,16,4,8,2,50,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"port":35,"rank":0,"right":null,"role":"source"},{"frame":864,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,18,34,64,128,256],"offset":50,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":35,"rank":0,"right":null,"role":"target"},{"frame":386,"left":{"linear_Z4":[0,1,0,0,1,0,0,0,0],"matrix_rows":[1,16,4,8,2,32,64,146,256],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"port":36,"rank":0,"right":null,"role":"source"},{"frame":986,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,18,32,64,130,256],"offset":146,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":36,"rank":0,"right":null,"role":"target"},{"frame":390,"left":{"linear_Z4":[0,1,0,0,1,0,0,0,0],"matrix_rows":[1,16,4,8,2,32,64,128,274],"offset":0,"phase":0,"quadratic_rows":[0,18,0,0,18,0,0,0,0]},"port":37,"rank":0,"right":null,"role":"source"},{"frame":995,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,18,32,64,128,258],"offset":274,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":37,"rank":0,"right":null,"role":"target"},{"frame":102,"left":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[1,32,4,8,16,2,98,128,256],"offset":0,"phase":0,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"port":38,"rank":0,"right":null,"role":"source"},{"frame":824,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,34,66,128,256],"offset":98,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":38,"rank":0,"right":null,"role":"target"},{"frame":132,"left":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[1,32,4,8,16,2,64,162,256],"offset":0,"phase":0,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"port":39,"rank":0,"right":null,"role":"source"},{"frame":848,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,34,64,130,256],"offset":162,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":39,"rank":0,"right":null,"role":"target"},{"frame":130,"left":{"linear_Z4":[0,1,0,0,0,1,0,0,0],"matrix_rows":[1,32,4,8,16,2,64,128,290],"offset":0,"phase":0,"quadratic_rows":[0,34,0,0,0,34,0,0,0]},"port":40,"rank":0,"right":null,"role":"source"},{"frame":843,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,34,64,128,258],"offset":290,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":40,"rank":0,"right":null,"role":"target"},{"frame":332,"left":{"linear_Z4":[0,1,0,0,0,0,1,0,0],"matrix_rows":[1,64,4,8,16,32,2,194,256],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"port":41,"rank":0,"right":null,"role":"source"},{"frame":963,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,66,130,256],"offset":194,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":41,"rank":0,"right":null,"role":"target"},{"frame":333,"left":{"linear_Z4":[0,1,0,0,0,0,1,0,0],"matrix_rows":[1,64,4,8,16,32,2,128,322],"offset":0,"phase":0,"quadratic_rows":[0,66,0,0,0,0,66,0,0]},"port":42,"rank":0,"right":null,"role":"source"},{"frame":955,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,66,128,258],"offset":322,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":42,"rank":0,"right":null,"role":"target"},{"frame":361,"left":{"linear_Z4":[0,1,0,0,0,0,0,1,0],"matrix_rows":[1,128,4,8,16,32,64,2,386],"offset":0,"phase":0,"quadratic_rows":[0,130,0,0,0,0,0,130,0]},"port":43,"rank":0,"right":null,"role":"source"},{"frame":979,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,130,258],"offset":386,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":43,"rank":0,"right":null,"role":"target"},{"frame":363,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,28,32,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":44,"rank":0,"right":null,"role":"source"},{"frame":968,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,20,32,64,128,256],"offset":28,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":44,"rank":0,"right":null,"role":"target"},{"frame":158,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,16,44,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":45,"rank":0,"right":null,"role":"source"},{"frame":867,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,16,36,64,128,256],"offset":44,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":45,"rank":0,"right":null,"role":"target"},{"frame":392,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,16,32,64,140,256],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":46,"rank":0,"right":null,"role":"source"},{"frame":984,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,16,32,64,132,256],"offset":140,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":46,"rank":0,"right":null,"role":"target"},{"frame":388,"left":{"linear_Z4":[0,0,1,1,0,0,0,0,0],"matrix_rows":[1,2,8,4,16,32,64,128,268],"offset":0,"phase":0,"quadratic_rows":[0,0,12,12,0,0,0,0,0]},"port":47,"rank":0,"right":null,"role":"source"},{"frame":991,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,16,32,64,128,260],"offset":268,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":47,"rank":0,"right":null,"role":"target"},{"frame":155,"left":{"linear_Z4":[0,0,1,0,1,0,0,0,0],"matrix_rows":[1,2,16,8,4,32,84,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"port":48,"rank":0,"right":null,"role":"source"},{"frame":866,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,20,32,68,128,256],"offset":84,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":48,"rank":0,"right":null,"role":"target"},{"frame":183,"left":{"linear_Z4":[0,0,1,0,1,0,0,0,0],"matrix_rows":[1,2,16,8,4,32,64,148,256],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"port":49,"rank":0,"right":null,"role":"source"},{"frame":874,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,20,32,64,132,256],"offset":148,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":49,"rank":0,"right":null,"role":"target"},{"frame":185,"left":{"linear_Z4":[0,0,1,0,1,0,0,0,0],"matrix_rows":[1,2,16,8,4,32,64,128,276],"offset":0,"phase":0,"quadratic_rows":[0,0,20,0,20,0,0,0,0]},"port":50,"rank":0,"right":null,"role":"source"},{"frame":879,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,20,32,64,128,260],"offset":276,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":50,"rank":0,"right":null,"role":"target"},{"frame":360,"left":{"linear_Z4":[0,0,1,0,0,1,0,0,0],"matrix_rows":[1,2,32,8,16,4,100,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"port":51,"rank":0,"right":null,"role":"source"},{"frame":967,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,36,68,128,256],"offset":100,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":51,"rank":0,"right":null,"role":"target"},{"frame":330,"left":{"linear_Z4":[0,0,1,0,0,1,0,0,0],"matrix_rows":[1,2,32,8,16,4,64,164,256],"offset":0,"phase":0,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"port":52,"rank":0,"right":null,"role":"source"},{"frame":959,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,36,64,132,256],"offset":164,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":52,"rank":0,"right":null,"role":"target"},{"frame":331,"left":{"linear_Z4":[0,0,1,0,0,1,0,0,0],"matrix_rows":[1,2,32,8,16,4,64,128,292],"offset":0,"phase":0,"quadratic_rows":[0,0,36,0,0,36,0,0,0]},"port":53,"rank":0,"right":null,"role":"source"},{"frame":951,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,36,64,128,260],"offset":292,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":53,"rank":0,"right":null,"role":"target"},{"frame":126,"left":{"linear_Z4":[0,0,1,0,0,0,1,0,0],"matrix_rows":[1,2,64,8,16,32,4,196,256],"offset":0,"phase":0,"quadratic_rows":[0,0,68,0,0,0,68,0,0]},"port":54,"rank":0,"right":null,"role":"source"},{"frame":850,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,68,132,256],"offset":196,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":54,"rank":0,"right":null,"role":"target"},{"frame":128,"left":{"linear_Z4":[0,0,1,0,0,0,1,0,0],"matrix_rows":[1,2,64,8,16,32,4,128,324],"offset":0,"phase":0,"quadratic_rows":[0,0,68,0,0,0,68,0,0]},"port":55,"rank":0,"right":null,"role":"source"},{"frame":839,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,68,128,260],"offset":324,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":55,"rank":0,"right":null,"role":"target"},{"frame":98,"left":{"linear_Z4":[0,0,1,0,0,0,0,1,0],"matrix_rows":[1,2,128,8,16,32,64,4,388],"offset":0,"phase":0,"quadratic_rows":[0,0,132,0,0,0,0,132,0]},"port":56,"rank":0,"right":null,"role":"source"},{"frame":831,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,132,260],"offset":388,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":56,"rank":0,"right":null,"role":"target"},{"frame":14,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,56,64,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":57,"rank":0,"right":null,"role":"source"},{"frame":779,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,40,64,128,256],"offset":56,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":57,"rank":0,"right":null,"role":"target"},{"frame":217,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,32,88,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":58,"rank":0,"right":null,"role":"source"},{"frame":891,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,32,72,128,256],"offset":88,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":58,"rank":0,"right":null,"role":"target"},{"frame":245,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,32,64,152,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":59,"rank":0,"right":null,"role":"source"},{"frame":915,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,32,64,136,256],"offset":152,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":59,"rank":0,"right":null,"role":"target"},{"frame":247,"left":{"linear_Z4":[0,0,0,1,1,0,0,0,0],"matrix_rows":[1,2,4,16,8,32,64,128,280],"offset":0,"phase":0,"quadratic_rows":[0,0,0,24,24,0,0,0,0]},"port":60,"rank":0,"right":null,"role":"source"},{"frame":904,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,24,32,64,128,264],"offset":280,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":60,"rank":0,"right":null,"role":"target"},{"frame":71,"left":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[1,2,4,32,16,8,104,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"port":61,"rank":0,"right":null,"role":"source"},{"frame":819,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,40,72,128,256],"offset":104,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":61,"rank":0,"right":null,"role":"target"},{"frame":43,"left":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[1,2,4,32,16,8,64,168,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"port":62,"rank":0,"right":null,"role":"source"},{"frame":795,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,40,64,136,256],"offset":168,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":62,"rank":0,"right":null,"role":"target"},{"frame":42,"left":{"linear_Z4":[0,0,0,1,0,1,0,0,0],"matrix_rows":[1,2,4,32,16,8,64,128,296],"offset":0,"phase":0,"quadratic_rows":[0,0,0,40,0,40,0,0,0]},"port":63,"rank":0,"right":null,"role":"source"},{"frame":803,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,40,64,128,264],"offset":296,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":63,"rank":0,"right":null,"role":"target"},{"frame":304,"left":{"linear_Z4":[0,0,0,1,0,0,1,0,0],"matrix_rows":[1,2,4,64,16,32,8,200,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,0,0,72,0,0]},"port":64,"rank":0,"right":null,"role":"source"},{"frame":939,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,72,136,256],"offset":200,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":64,"rank":0,"right":null,"role":"target"},{"frame":306,"left":{"linear_Z4":[0,0,0,1,0,0,1,0,0],"matrix_rows":[1,2,4,64,16,32,8,128,328],"offset":0,"phase":0,"quadratic_rows":[0,0,0,72,0,0,72,0,0]},"port":65,"rank":0,"right":null,"role":"source"},{"frame":944,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,72,128,264],"offset":328,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":65,"rank":0,"right":null,"role":"target"},{"frame":276,"left":{"linear_Z4":[0,0,0,1,0,0,0,1,0],"matrix_rows":[1,2,4,128,16,32,64,8,392],"offset":0,"phase":0,"quadratic_rows":[0,0,0,136,0,0,0,136,0]},"port":66,"rank":0,"right":null,"role":"source"},{"frame":920,"left":{"linear_Z4":[0,0,0,2,0,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,136,264],"offset":392,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":66,"rank":0,"right":null,"role":"target"},{"frame":271,"left":{"linear_Z4":[0,0,0,0,1,1,0,0,0],"matrix_rows":[1,2,4,8,32,16,112,128,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"port":67,"rank":0,"right":null,"role":"source"},{"frame":930,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,48,80,128,256],"offset":112,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":67,"rank":0,"right":null,"role":"target"},{"frame":299,"left":{"linear_Z4":[0,0,0,0,1,1,0,0,0],"matrix_rows":[1,2,4,8,32,16,64,176,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"port":68,"rank":0,"right":null,"role":"source"},{"frame":938,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,48,64,144,256],"offset":176,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":68,"rank":0,"right":null,"role":"target"},{"frame":301,"left":{"linear_Z4":[0,0,0,0,1,1,0,0,0],"matrix_rows":[1,2,4,8,32,16,64,128,304],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,48,48,0,0,0]},"port":69,"rank":0,"right":null,"role":"source"},{"frame":943,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,48,64,128,272],"offset":304,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":69,"rank":0,"right":null,"role":"target"},{"frame":38,"left":{"linear_Z4":[0,0,0,0,1,0,1,0,0],"matrix_rows":[1,2,4,8,64,32,16,208,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,80,0,0]},"port":70,"rank":0,"right":null,"role":"source"},{"frame":794,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,80,144,256],"offset":208,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":70,"rank":0,"right":null,"role":"target"},{"frame":39,"left":{"linear_Z4":[0,0,0,0,1,0,1,0,0],"matrix_rows":[1,2,4,8,64,32,16,128,336],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,80,0,80,0,0]},"port":71,"rank":0,"right":null,"role":"source"},{"frame":802,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,80,128,272],"offset":336,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":71,"rank":0,"right":null,"role":"target"},{"frame":67,"left":{"linear_Z4":[0,0,0,0,1,0,0,1,0],"matrix_rows":[1,2,4,8,128,32,64,16,400],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,144,0,0,144,0]},"port":72,"rank":0,"right":null,"role":"source"},{"frame":810,"left":{"linear_Z4":[0,0,0,0,2,0,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,144,272],"offset":400,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":72,"rank":0,"right":null,"role":"target"},{"frame":242,"left":{"linear_Z4":[0,0,0,0,0,1,1,0,0],"matrix_rows":[1,2,4,8,16,64,32,224,256],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,96,96,0,0]},"port":73,"rank":0,"right":null,"role":"source"},{"frame":914,"left":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,2,4,8,16,32,96,160,256],"offset":224,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":73,"rank":0,"right":null,"role":"target"},{"frame":244,"left":{"linear_Z4":[0,0,0,0,0,1,1,0,0],"matrix_rows":[1,2,4,8,16,64,32,128,352],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,96,96,0,0]},"port":74,"rank":0,"right":null,"role":"source"},{"frame":903,"left":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,2,4,8,16,32,96,128,288],"offset":352,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":74,"rank":0,"right":null,"role":"target"},{"frame":214,"left":{"linear_Z4":[0,0,0,0,0,1,0,1,0],"matrix_rows":[1,2,4,8,16,128,64,32,416],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,160,0,160,0]},"port":75,"rank":0,"right":null,"role":"source"},{"frame":895,"left":{"linear_Z4":[0,0,0,0,0,2,0,0,0],"matrix_rows":[1,2,4,8,16,32,64,160,288],"offset":416,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":75,"rank":0,"right":null,"role":"target"},{"frame":10,"left":{"linear_Z4":[0,0,0,0,0,0,1,1,0],"matrix_rows":[1,2,4,8,16,32,128,64,448],"offset":0,"phase":0,"quadratic_rows":[0,0,0,0,0,0,192,192,0]},"port":76,"rank":0,"right":null,"role":"source"},{"frame":786,"left":{"linear_Z4":[0,0,0,0,0,0,2,0,0],"matrix_rows":[1,2,4,8,16,32,64,192,320],"offset":448,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":76,"rank":0,"right":null,"role":"target"},{"frame":103,"left":{"linear_Z4":[0,0,1,1,1,1,1,1,0],"matrix_rows":[1,2,248,244,236,220,188,124,508],"offset":0,"phase":0,"quadratic_rows":[0,0,252,252,252,252,252,252,0]},"port":77,"rank":0,"right":null,"role":"source"},{"frame":832,"left":{"linear_Z4":[0,0,2,0,0,0,0,0,0],"matrix_rows":[1,2,4,12,20,36,68,132,260],"offset":508,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":77,"rank":0,"right":null,"role":"target"},{"frame":358,"left":{"linear_Z4":[0,1,0,1,1,1,1,1,0],"matrix_rows":[1,248,4,242,234,218,186,122,506],"offset":0,"phase":0,"quadratic_rows":[0,250,0,250,250,250,250,250,0]},"port":78,"rank":0,"right":null,"role":"source"},{"frame":978,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,10,18,34,66,130,258],"offset":506,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":78,"rank":0,"right":null,"role":"target"},{"frame":73,"left":{"linear_Z4":[0,1,1,0,1,1,1,1,0],"matrix_rows":[1,244,242,8,230,214,182,118,502],"offset":0,"phase":0,"quadratic_rows":[0,246,246,0,246,246,246,246,0]},"port":79,"rank":0,"right":null,"role":"source"},{"frame":808,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,8,18,34,66,130,258],"offset":502,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":79,"rank":0,"right":null,"role":"target"},{"frame":270,"left":{"linear_Z4":[0,1,1,1,0,1,1,1,0],"matrix_rows":[1,236,234,230,16,206,174,110,494],"offset":0,"phase":0,"quadratic_rows":[0,238,238,238,0,238,238,238,0]},"port":80,"rank":0,"right":null,"role":"source"},{"frame":922,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,16,34,66,130,258],"offset":494,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":80,"rank":0,"right":null,"role":"target"},{"frame":16,"left":{"linear_Z4":[0,1,1,1,1,0,1,1,0],"matrix_rows":[1,220,218,214,206,32,158,94,478],"offset":0,"phase":0,"quadratic_rows":[0,222,222,222,222,0,222,222,0]},"port":81,"rank":0,"right":null,"role":"source"},{"frame":784,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,32,66,130,258],"offset":478,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":81,"rank":0,"right":null,"role":"target"},{"frame":213,"left":{"linear_Z4":[0,1,1,1,1,1,0,1,0],"matrix_rows":[1,188,186,182,174,158,64,62,446],"offset":0,"phase":0,"quadratic_rows":[0,190,190,190,190,190,0,190,0]},"port":82,"rank":0,"right":null,"role":"source"},{"frame":898,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,34,64,130,258],"offset":446,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":82,"rank":0,"right":null,"role":"target"},{"frame":241,"left":{"linear_Z4":[0,1,1,1,1,1,1,0,0],"matrix_rows":[1,124,122,118,110,94,62,128,382],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"port":83,"rank":0,"right":null,"role":"source"},{"frame":906,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,34,66,128,258],"offset":382,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":83,"rank":0,"right":null,"role":"target"},{"frame":243,"left":{"linear_Z4":[0,1,1,1,1,1,1,0,0],"matrix_rows":[1,124,122,118,110,94,62,254,256],"offset":0,"phase":0,"quadratic_rows":[0,126,126,126,126,126,126,0,0]},"port":84,"rank":0,"right":null,"role":"source"},{"frame":911,"left":{"linear_Z4":[0,2,0,0,0,0,0,0,0],"matrix_rows":[1,2,6,10,18,34,66,130,256],"offset":254,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":84,"rank":0,"right":null,"role":"target"},{"frame":157,"left":{"linear_Z4":[1,0,0,1,1,1,1,1,0],"matrix_rows":[248,2,4,241,233,217,185,121,505],"offset":0,"phase":0,"quadratic_rows":[249,0,0,249,249,249,249,249,0]},"port":85,"rank":0,"right":null,"role":"source"},{"frame":855,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,4,9,17,33,65,129,257],"offset":505,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":85,"rank":0,"right":null,"role":"target"},{"frame":219,"left":{"linear_Z4":[1,0,1,0,1,1,1,1,0],"matrix_rows":[244,2,241,8,229,213,181,117,501],"offset":0,"phase":0,"quadratic_rows":[245,0,245,0,245,245,245,245,0]},"port":86,"rank":0,"right":null,"role":"source"},{"frame":896,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,8,17,33,65,129,257],"offset":501,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":86,"rank":0,"right":null,"role":"target"},{"frame":11,"left":{"linear_Z4":[1,0,1,1,0,1,1,1,0],"matrix_rows":[236,2,233,229,16,205,173,109,493],"offset":0,"phase":0,"quadratic_rows":[237,0,237,237,0,237,237,237,0]},"port":87,"rank":0,"right":null,"role":"source"},{"frame":783,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,16,33,65,129,257],"offset":493,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":87,"rank":0,"right":null,"role":"target"},{"frame":273,"left":{"linear_Z4":[1,0,1,1,1,0,1,1,0],"matrix_rows":[220,2,217,213,205,32,157,93,477],"offset":0,"phase":0,"quadratic_rows":[221,0,221,221,221,0,221,221,0]},"port":88,"rank":0,"right":null,"role":"source"},{"frame":919,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,32,65,129,257],"offset":477,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":88,"rank":0,"right":null,"role":"target"},{"frame":70,"left":{"linear_Z4":[1,0,1,1,1,1,0,1,0],"matrix_rows":[188,2,185,181,173,157,64,61,445],"offset":0,"phase":0,"quadratic_rows":[189,0,189,189,189,189,0,189,0]},"port":89,"rank":0,"right":null,"role":"source"},{"frame":807,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,33,64,129,257],"offset":445,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":89,"rank":0,"right":null,"role":"target"},{"frame":40,"left":{"linear_Z4":[1,0,1,1,1,1,1,0,0],"matrix_rows":[124,2,121,117,109,93,61,128,381],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,125,125,125,0,0]},"port":90,"rank":0,"right":null,"role":"source"},{"frame":799,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,33,65,128,257],"offset":381,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":90,"rank":0,"right":null,"role":"target"},{"frame":41,"left":{"linear_Z4":[1,0,1,1,1,1,1,0,0],"matrix_rows":[124,2,121,117,109,93,61,253,256],"offset":0,"phase":0,"quadratic_rows":[125,0,125,125,125,125,125,0,0]},"port":91,"rank":0,"right":null,"role":"source"},{"frame":791,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,2,5,9,17,33,65,129,256],"offset":253,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":91,"rank":0,"right":null,"role":"target"},{"frame":13,"left":{"linear_Z4":[1,1,0,0,1,1,1,1,0],"matrix_rows":[242,241,4,8,227,211,179,115,499],"offset":0,"phase":0,"quadratic_rows":[243,243,0,0,243,243,243,243,0]},"port":92,"rank":0,"right":null,"role":"source"},{"frame":787,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,8,17,33,65,129,257],"offset":499,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":92,"rank":0,"right":null,"role":"target"},{"frame":216,"left":{"linear_Z4":[1,1,0,1,0,1,1,1,0],"matrix_rows":[234,233,4,227,16,203,171,107,491],"offset":0,"phase":0,"quadratic_rows":[235,235,0,235,0,235,235,235,0]},"port":93,"rank":0,"right":null,"role":"source"},{"frame":899,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,16,33,65,129,257],"offset":491,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":93,"rank":0,"right":null,"role":"target"},{"frame":72,"left":{"linear_Z4":[1,1,0,1,1,0,1,1,0],"matrix_rows":[218,217,4,211,203,32,155,91,475],"offset":0,"phase":0,"quadratic_rows":[219,219,0,219,219,0,219,219,0]},"port":94,"rank":0,"right":null,"role":"source"},{"frame":811,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,32,65,129,257],"offset":475,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":94,"rank":0,"right":null,"role":"target"},{"frame":275,"left":{"linear_Z4":[1,1,0,1,1,1,0,1,0],"matrix_rows":[186,185,4,179,171,155,64,59,443],"offset":0,"phase":0,"quadratic_rows":[187,187,0,187,187,187,0,187,0]},"port":95,"rank":0,"right":null,"role":"source"},{"frame":923,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,33,64,129,257],"offset":443,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":95,"rank":0,"right":null,"role":"target"},{"frame":303,"left":{"linear_Z4":[1,1,0,1,1,1,1,0,0],"matrix_rows":[122,121,4,115,107,91,59,128,379],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,123,123,123,0,0]},"port":96,"rank":0,"right":null,"role":"source"},{"frame":947,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,33,65,128,257],"offset":379,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":96,"rank":0,"right":null,"role":"target"},{"frame":305,"left":{"linear_Z4":[1,1,0,1,1,1,1,0,0],"matrix_rows":[122,121,4,115,107,91,59,251,256],"offset":0,"phase":0,"quadratic_rows":[123,123,0,123,123,123,123,0,0]},"port":97,"rank":0,"right":null,"role":"source"},{"frame":936,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,4,9,17,33,65,129,256],"offset":251,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":97,"rank":0,"right":null,"role":"target"},{"frame":154,"left":{"linear_Z4":[1,1,1,0,0,1,1,1,0],"matrix_rows":[230,229,227,8,16,199,167,103,487],"offset":0,"phase":0,"quadratic_rows":[231,231,231,0,0,231,231,231,0]},"port":98,"rank":0,"right":null,"role":"source"},{"frame":858,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,16,33,65,129,257],"offset":487,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":98,"rank":0,"right":null,"role":"target"},{"frame":359,"left":{"linear_Z4":[1,1,1,0,1,0,1,1,0],"matrix_rows":[214,213,211,8,199,32,151,87,471],"offset":0,"phase":0,"quadratic_rows":[215,215,215,0,215,0,215,215,0]},"port":99,"rank":0,"right":null,"role":"source"},{"frame":975,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,32,65,129,257],"offset":471,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":99,"rank":0,"right":null,"role":"target"},{"frame":97,"left":{"linear_Z4":[1,1,1,0,1,1,0,1,0],"matrix_rows":[182,181,179,8,167,151,64,55,439],"offset":0,"phase":0,"quadratic_rows":[183,183,183,0,183,183,0,183,0]},"port":100,"rank":0,"right":null,"role":"source"},{"frame":834,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,33,64,129,257],"offset":439,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":100,"rank":0,"right":null,"role":"target"},{"frame":125,"left":{"linear_Z4":[1,1,1,0,1,1,1,0,0],"matrix_rows":[118,117,115,8,103,87,55,128,375],"offset":0,"phase":0,"quadratic_rows":[119,119,119,0,119,119,119,0,0]},"port":101,"rank":0,"right":null,"role":"source"},{"frame":842,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,33,65,128,257],"offset":375,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":101,"rank":0,"right":null,"role":"target"},{"frame":127,"left":{"linear_Z4":[1,1,1,0,1,1,1,0,0],"matrix_rows":[118,117,115,8,103,87,55,247,256],"offset":0,"phase":0,"quadratic_rows":[119,119,119,0,119,119,119,0,0]},"port":102,"rank":0,"right":null,"role":"source"},{"frame":847,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,8,17,33,65,129,256],"offset":247,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":102,"rank":0,"right":null,"role":"target"},{"frame":100,"left":{"linear_Z4":[1,1,1,1,0,0,1,1,0],"matrix_rows":[206,205,203,199,16,32,143,79,463],"offset":0,"phase":0,"quadratic_rows":[207,207,207,207,0,0,207,207,0]},"port":103,"rank":0,"right":null,"role":"source"},{"frame":835,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,32,65,129,257],"offset":463,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":103,"rank":0,"right":null,"role":"target"},{"frame":364,"left":{"linear_Z4":[1,1,1,1,0,1,0,1,0],"matrix_rows":[174,173,171,167,16,143,64,47,431],"offset":0,"phase":0,"quadratic_rows":[175,175,175,175,0,175,0,175,0]},"port":104,"rank":0,"right":null,"role":"source"},{"frame":976,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,33,64,129,257],"offset":431,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":104,"rank":0,"right":null,"role":"target"},{"frame":334,"left":{"linear_Z4":[1,1,1,1,0,1,1,0,0],"matrix_rows":[110,109,107,103,16,79,47,128,367],"offset":0,"phase":0,"quadratic_rows":[111,111,111,111,0,111,111,0,0]},"port":105,"rank":0,"right":null,"role":"source"},{"frame":952,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,33,65,128,257],"offset":367,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":105,"rank":0,"right":null,"role":"target"},{"frame":335,"left":{"linear_Z4":[1,1,1,1,0,1,1,0,0],"matrix_rows":[110,109,107,103,16,79,47,239,256],"offset":0,"phase":0,"quadratic_rows":[111,111,111,111,0,111,111,0,0]},"port":106,"rank":0,"right":null,"role":"source"},{"frame":960,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,16,33,65,129,256],"offset":239,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":106,"rank":0,"right":null,"role":"target"},{"frame":159,"left":{"linear_Z4":[1,1,1,1,1,0,0,1,0],"matrix_rows":[158,157,155,151,143,32,64,31,415],"offset":0,"phase":0,"quadratic_rows":[159,159,159,159,159,0,0,159,0]},"port":107,"rank":0,"right":null,"role":"source"},{"frame":859,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,32,64,129,257],"offset":415,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":107,"rank":0,"right":null,"role":"target"},{"frame":187,"left":{"linear_Z4":[1,1,1,1,1,0,1,0,0],"matrix_rows":[94,93,91,87,79,32,31,128,351],"offset":0,"phase":0,"quadratic_rows":[95,95,95,95,95,0,95,0,0]},"port":108,"rank":0,"right":null,"role":"source"},{"frame":883,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,32,65,128,257],"offset":351,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":108,"rank":0,"right":null,"role":"target"},{"frame":189,"left":{"linear_Z4":[1,1,1,1,1,0,1,0,0],"matrix_rows":[94,93,91,87,79,32,31,223,256],"offset":0,"phase":0,"quadratic_rows":[95,95,95,95,95,0,95,0,0]},"port":109,"rank":0,"right":null,"role":"source"},{"frame":872,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,32,65,129,256],"offset":223,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":109,"rank":0,"right":null,"role":"target"},{"frame":393,"left":{"linear_Z4":[1,1,1,1,1,1,0,0,0],"matrix_rows":[62,61,59,55,47,31,64,128,319],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"port":110,"rank":0,"right":null,"role":"source"},{"frame":992,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,33,64,128,257],"offset":319,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":110,"rank":0,"right":null,"role":"target"},{"frame":389,"left":{"linear_Z4":[1,1,1,1,1,1,0,0,0],"matrix_rows":[62,61,59,55,47,31,64,191,256],"offset":0,"phase":0,"quadratic_rows":[63,63,63,63,63,63,0,0,0]},"port":111,"rank":0,"right":null,"role":"source"},{"frame":983,"left":{"linear_Z4":[2,0,0,0,0,0,0,0,0],"matrix_rows":[1,3,5,9,17,33,64,129,256],"offset":191,"phase":3,"quadratic_rows":[0,0,0,0,0,0,0,0,0]},"port":111,"rank":0,"right":null,"role":"target"}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CLIFFORD-REVIEW.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CLIFFORD-REVIEW.json new file mode 100644 index 0000000000..5c454881e3 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/CLIFFORD-REVIEW.json @@ -0,0 +1,19 @@ +{ + "status": "PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES", + "canonical_word_sha256": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "frames": 1005, + "directed_edges": 2897, + "ranks": { + "1": 1924, + "2": 393, + "3": 402, + "8": 16, + "4": 120, + "5": 42 + }, + "endpoint_adapters": 224, + "all_child_equalities_include_global_phase": true, + "recipe_sha256": "8594c741d1b9796928029d3a3d53d54eea21bd081f29ecae7fc4483a9c79dd1a", + "seconds": 4.0939999999973224, + "scope": "Every local frame and center transition. Expanded scalar-interface integration and global emitted program are separate obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/FULL-WORD.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/FULL-WORD.json.gz new file mode 100644 index 0000000000..f52aa2ad93 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/FULL-WORD.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/INDEPENDENT-LOCAL-REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/INDEPENDENT-LOCAL-REPLAY.json new file mode 100644 index 0000000000..8475099c24 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/INDEPENDENT-LOCAL-REPLAY.json @@ -0,0 +1,71 @@ +{ + "status": "PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY", + "canonical_word_sha256": "ce6e22693c195504eb0d2c4e89b76cb131e74f4833350d3918925f9a382a6da2", + "local_programs_sha256": "94930ab1b7a2ba87afdf68ffc3e1f57afd79218982a65996a34152473b794bac", + "v": 112, + "helpers": 480, + "local": { + "forward": { + "all_exact_columns": 704, + "prefix_l1_upper": "2765345371136269591/1024", + "prefix_bits_upper": 52, + "charged_payload_bits": 192, + "private_work_erased": true + }, + "backward": { + "all_exact_columns": 704, + "prefix_l1_upper": "14824960514781440791821/64", + "prefix_bits_upper": 68, + "charged_payload_bits": 192, + "private_work_erased": true + } + }, + "paid_profiles": { + "forward": { + "1": 2406, + "4": 138, + "8": 8, + "3": 426, + "2": 432, + "5": 84 + }, + "backward": { + "1": 2406, + "4": 138, + "8": 8, + "3": 426, + "2": 432, + "5": 84 + } + }, + "entering_helpers": 192, + "cold_hyperplane_ended_helpers": 48, + "negative_controls_rejected": [ + "wrong_scale", + "missing_center", + "wrong_common_frame", + "wrong_child_rank", + "missing_pre_wrapper", + "missing_post_wrapper", + "wrapper_with_wrong_frame", + "wrapper_in_wrong_phase", + "wrapper_on_a_data_register", + "wrapper_on_a_target_register", + "wrapper_on_a_centre_register", + "hpe_pre_wrapper_resolved_to_full_recipe", + "hpe_post_wrapper_without_terminal_frame", + "hpe_post_wrapper_wrong_terminal_frame", + "hpe_tail_gate_at_full_frame", + "hpe_tail_climb_dropped", + "hpe_helper_exit_adapter_to_full", + "hpe_tail_gate_moved_into_full_cleanup", + "cold_hpe_pre_wrapper_replaced_by_identity_entry_adapter", + "cold_hpe_pre_wrapper_dropped", + "cold_hpe_post_wrapper_replaced_by_exit_adapter", + "cold_hpe_pre_wrapper_resolved_to_cold_full_convention", + "cold_hpe_wrapper_with_nonzero_entrance", + "cold_hpe_post_wrapper_wrong_terminal_frame", + "cold_hpe_premix_gate_before_pre_wrapper" + ], + "scope": "Literal forward and inverse-transpose replay on every arbitrary data/helper column, physical frame incidence, ordered paid wrappers, cleared private work and prefix coefficients. Global hosting and outer exponent are separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/LOCAL-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/LOCAL-CHECKS.json new file mode 100644 index 0000000000..82cf0daf20 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/LOCAL-CHECKS.json @@ -0,0 +1,36 @@ +{ + "forward": { + "sha256": "5d34ae613d474418762808bac4d3c8303082b3c63752b06e780994cab0a36f4f", + "events": 24769, + "scalar_macros": 19695, + "real_component_primitive_bound": 198782, + "paid_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "all_columns": 704, + "private_centers_cleared": true, + "private_coefficient_stream_cleared_after_each_macro": true + }, + "backward": { + "sha256": "4c4178b3d0548dd3f2aba4388098a26b7a359f41652e3c90ca40d4e8e28063a6", + "events": 24769, + "scalar_macros": 19695, + "real_component_primitive_bound": 198830, + "paid_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "all_columns": 704, + "private_centers_cleared": true, + "private_coefficient_stream_cleared_after_each_macro": true + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/LOCAL-PROGRAMS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/LOCAL-PROGRAMS.json.gz new file mode 100644 index 0000000000..2cdc70cc8f Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/LOCAL-PROGRAMS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/RESIDUAL-ADAPTERS.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/RESIDUAL-ADAPTERS.json new file mode 100644 index 0000000000..0da99c9630 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/RESIDUAL-ADAPTERS.json @@ -0,0 +1 @@ +{"recipes":{"0:1000":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,3,2,2,2,2,0],"matrix_rows":[267,3,4,9,16,32,1,64,128],"offset":0,"phase":0,"quadratic_rows":[1,10,0,10,0,0,0,0,0]},"rank":8,"right":{"linear_Z4":[1,3,2,3,2,2,0,2,2],"matrix_rows":[1,73,4,67,16,32,128,256,75],"offset":245,"phase":2,"quadratic_rows":[65,10,0,10,0,0,1,0,0]},"terminal":1000,"terminal_rank":8,"terminal_vectors":[256,128,65,32,16,9,4,3],"vectors":[]},"0:1001":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[2,3,3,2,2,3,2,2,0],"matrix_rows":[1,294,6,8,16,34,2,64,128],"offset":0,"phase":0,"quadratic_rows":[0,2,36,0,0,36,0,0,0]},"rank":8,"right":{"linear_Z4":[2,1,3,2,2,3,0,2,2],"matrix_rows":[1,2,98,8,16,70,128,256,102],"offset":219,"phase":2,"quadratic_rows":[0,66,36,0,0,36,2,0,0]},"terminal":1001,"terminal_rank":8,"terminal_vectors":[256,128,66,34,16,8,6,1],"vectors":[]},"0:1002":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,2,3,2,3,2,2,2,0],"matrix_rows":[277,2,5,8,17,32,1,64,128],"offset":0,"phase":0,"quadratic_rows":[1,0,20,0,20,0,0,0,0]},"rank":8,"right":{"linear_Z4":[1,2,3,2,3,2,0,2,2],"matrix_rows":[1,2,81,8,69,32,128,256,85],"offset":235,"phase":2,"quadratic_rows":[65,0,20,0,20,0,1,0,0]},"terminal":1002,"terminal_rank":8,"terminal_vectors":[256,128,65,32,17,8,5,2],"vectors":[]},"0:1003":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[2,2,2,3,3,3,2,2,0],"matrix_rows":[1,2,4,312,24,40,8,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,8,48,48,0,0,0]},"rank":8,"right":{"linear_Z4":[2,2,2,1,3,3,0,2,2],"matrix_rows":[1,2,4,8,104,88,128,256,120],"offset":207,"phase":2,"quadratic_rows":[0,0,0,72,48,48,8,0,0]},"terminal":1003,"terminal_rank":8,"terminal_vectors":[256,128,72,40,24,4,2,1],"vectors":[]},"0:1004":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,3,3,2,2,0,0],"matrix_rows":[139,3,272,9,20,4,1,32,64],"offset":0,"phase":0,"quadratic_rows":[1,10,20,10,20,0,0,0,0]},"rank":7,"right":{"linear_Z4":[1,3,1,3,3,0,0,2,2],"matrix_rows":[1,73,48,67,36,128,256,75,52],"offset":97,"phase":3,"quadratic_rows":[65,10,20,10,20,0,1,0,0]},"terminal":1004,"terminal_rank":7,"terminal_vectors":[256,128,65,36,20,9,3],"vectors":[]},"0:124":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[18,33,68,136,10,9,11,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,1,3,1,1,1,2,3,2],"matrix_rows":[50,49,388,8,97,82,260,120,384],"offset":4,"phase":1,"quadratic_rows":[81,98,132,120,57,58,11,132,0]},"terminal":124,"terminal_rank":4,"terminal_vectors":[388,75,41,26],"vectors":[]},"0:153":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[30,35,69,128,270,3,5,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,2,2,0,1,2,2,3,0],"matrix_rows":[390,19,21,145,481,34,68,8,496],"offset":8,"phase":1,"quadratic_rows":[375,437,467,0,375,19,21,390,151]},"terminal":153,"terminal_rank":4,"terminal_vectors":[273,145,85,51],"vectors":[]},"0:182":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,36,66,136,14,12,10,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[3,1,1,1,2,1,1,3,2],"matrix_rows":[385,100,98,8,257,82,52,120,384],"offset":1,"phase":1,"quadratic_rows":[129,50,84,120,14,106,108,129,0]},"terminal":182,"terminal_rank":4,"terminal_vectors":[385,74,44,30],"vectors":[]},"0:211":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[19,45,70,141,6,256,3,10,2],"offset":0,"phase":0,"quadratic_rows":[1,10,4,2,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,1,2,1,2,0,2,3,0],"matrix_rows":[11,389,14,138,65,466,20,472,32],"offset":8,"phase":1,"quadratic_rows":[462,351,411,351,14,0,11,389,143]},"terminal":211,"terminal_rank":4,"terminal_vectors":[266,138,75,30],"vectors":[]},"0:240":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[22,33,71,5,3,136,2,264,8],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,3,1,2,2,3,2,3,2],"matrix_rows":[6,5,93,416,25,82,76,288,384],"offset":15,"phase":0,"quadratic_rows":[64,86,22,0,6,160,3,160,0]},"terminal":240,"terminal_rank":4,"terminal_vectors":[416,70,19,13],"vectors":[]},"0:269":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[16,46,78,131,3,261,5,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[0,1,1,2,2,2,2,3,0],"matrix_rows":[424,14,38,134,1,466,468,24,96],"offset":8,"phase":1,"quadratic_rows":[0,382,382,438,14,462,38,424,174]},"terminal":269,"terminal_rank":4,"terminal_vectors":[262,134,102,30],"vectors":[]},"0:298":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,2,2,0,0,0,0,0],"matrix_rows":[18,41,75,132,10,1,3,260,4],"offset":0,"phase":0,"quadratic_rows":[1,2,0,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[3,2,1,3,2,2,2,3,2],"matrix_rows":[6,5,392,118,97,82,52,264,384],"offset":15,"phase":0,"quadratic_rows":[101,32,69,136,0,3,5,136,0]},"terminal":298,"terminal_rank":4,"terminal_vectors":[392,67,37,22],"vectors":[]},"0:327":{"entrance_rank":0,"frame":0,"left":{"linear_Z4":[3,3,3,2,0,0,0,0,0],"matrix_rows":[30,46,64,131,261,5,3,9,1],"offset":0,"phase":0,"quadratic_rows":[9,2,4,1,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[1,1,0,2,2,2,2,3,0],"matrix_rows":[408,11,19,131,481,482,4,72,48],"offset":8,"phase":1,"quadratic_rows":[379,379,0,467,427,19,11,408,155]},"terminal":327,"terminal_rank":4,"terminal_vectors":[259,131,75,51],"vectors":[]},"2":{"entrance_rank":1,"frame":2,"left":{"linear_Z4":[2,3,3,3,2,2,2,2,0],"matrix_rows":[1,258,4,8,14,16,32,64,128],"offset":0,"phase":0,"quadratic_rows":[0,14,14,14,0,0,0,0,0]},"rank":8,"right":{"linear_Z4":[2,0,0,0,0,2,2,2,2],"matrix_rows":[1,2,20,24,32,64,128,256,16],"offset":241,"phase":1,"quadratic_rows":[0,16,16,16,14,0,0,0,0]},"vectors":[30]},"2:999":{"entrance_rank":1,"frame":2,"left":{"linear_Z4":[2,3,3,2,2,2,2,0,0],"matrix_rows":[1,128,262,2,4,8,16,32,64],"offset":0,"phase":0,"quadratic_rows":[0,6,6,0,0,0,0,0,0]},"rank":7,"right":{"linear_Z4":[2,2,0,3,3,2,2,2,2],"matrix_rows":[1,28,4,32,64,128,256,14,16],"offset":511,"phase":1,"quadratic_rows":[0,12,2,26,24,0,0,0,0]},"terminal":999,"terminal_rank":8,"terminal_vectors":[256,128,64,32,18,10,6,1],"vectors":[30]},"3":{"entrance_rank":1,"frame":3,"left":{"linear_Z4":[3,3,2,2,3,2,2,2,0],"matrix_rows":[257,2,4,8,16,19,32,64,128],"offset":0,"phase":0,"quadratic_rows":[19,19,0,0,19,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,0,2,2,0,0,2,2,2],"matrix_rows":[1,34,4,8,48,64,128,256,32],"offset":236,"phase":1,"quadratic_rows":[32,32,0,0,32,19,0,0,0]},"vectors":[51]},"3:998":{"entrance_rank":1,"frame":3,"left":{"linear_Z4":[3,3,2,2,2,2,2,0,0],"matrix_rows":[128,259,4,8,1,2,16,32,64],"offset":0,"phase":0,"quadratic_rows":[3,3,0,0,0,0,0,0,0]},"rank":7,"right":{"linear_Z4":[2,0,2,2,3,3,2,2,2],"matrix_rows":[50,2,4,8,64,128,256,19,32],"offset":511,"phase":1,"quadratic_rows":[18,1,0,0,49,48,0,0,0]},"terminal":998,"terminal_rank":8,"terminal_vectors":[256,128,64,33,17,8,4,3],"vectors":[51]},"4":{"entrance_rank":1,"frame":4,"left":{"linear_Z4":[3,3,2,3,2,2,3,3,0],"matrix_rows":[257,2,4,8,16,32,64,128,203],"offset":0,"phase":0,"quadratic_rows":[203,203,0,203,0,0,203,203,0]},"rank":8,"right":{"linear_Z4":[0,0,2,0,2,2,0,0,0],"matrix_rows":[1,258,4,264,16,32,320,384,256],"offset":309,"phase":3,"quadratic_rows":[256,256,0,256,0,0,256,256,203]},"vectors":[459]},"423":{"entrance_rank":1,"frame":423,"left":{"linear_Z4":[3,2,3,3,2,2,2,2,0],"matrix_rows":[257,2,4,8,16,13,32,64,128],"offset":0,"phase":0,"quadratic_rows":[13,0,13,13,0,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,2,0,0,2,0,2,2,2],"matrix_rows":[1,2,36,40,16,64,128,256,32],"offset":242,"phase":1,"quadratic_rows":[32,0,32,32,0,13,0,0,0]},"vectors":[45]},"424":{"entrance_rank":4,"frame":424,"left":{"linear_Z4":[2,3,2,2,3,0,0,0,0],"matrix_rows":[33,65,2,132,264,8,4,16,31],"offset":0,"phase":0,"quadratic_rows":[30,31,27,23,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,260,264,272,384,352,354,64,32],"offset":429,"phase":0,"quadratic_rows":[96,0,256,320,288,17,9,256,156]},"vectors":[413,72,48,3]},"425":{"entrance_rank":4,"frame":425,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,257,8,4,2,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,260,272,384,352,64,32,360],"offset":231,"phase":0,"quadratic_rows":[96,320,288,0,256,5,3,256,150]},"vectors":[407,66,36,9]},"426":{"entrance_rank":4,"frame":426,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,260,2,1,8,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,260,320,384,32,16,304,312],"offset":231,"phase":0,"quadratic_rows":[288,272,48,0,6,5,256,256,195]},"vectors":[455,33,18,12]},"427":{"entrance_rank":4,"frame":427,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,4,136,16,13,21,258,2],"offset":0,"phase":0,"quadratic_rows":[24,0,24,13,21,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[33,258,100,72,80,64,256,96,384],"offset":66,"phase":0,"quadratic_rows":[96,0,96,32,64,13,21,0,0]},"vectors":[258,130,85,45]},"428":{"entrance_rank":4,"frame":428,"left":{"linear_Z4":[2,3,3,2,2,0,0,0,0],"matrix_rows":[33,66,4,136,16,19,21,264,8],"offset":0,"phase":0,"quadratic_rows":[6,19,21,0,6,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[33,66,68,264,112,64,96,256,384],"offset":136,"phase":0,"quadratic_rows":[96,32,64,0,96,19,21,0,0]},"vectors":[264,136,85,51]},"429":{"entrance_rank":4,"frame":429,"left":{"linear_Z4":[3,2,2,2,3,0,0,0,0],"matrix_rows":[33,66,2,132,4,264,8,16,31],"offset":0,"phase":0,"quadratic_rows":[31,29,27,23,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,0],"matrix_rows":[85,258,264,288,384,340,4,16,64],"offset":462,"phase":0,"quadratic_rows":[256,260,258,272,264,320,288,256,255]},"vectors":[427,96,24,6]},"430":{"entrance_rank":4,"frame":430,"left":{"linear_Z4":[2,2,2,3,3,0,0,0,0],"matrix_rows":[33,66,132,258,4,8,1,16,31],"offset":0,"phase":0,"quadratic_rows":[30,29,27,31,31,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[257,258,260,288,384,64,336,16,344],"offset":231,"phase":0,"quadratic_rows":[320,80,272,0,6,256,3,256,165]},"vectors":[423,65,20,10]},"431":{"entrance_rank":5,"frame":431,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,136,14,10,12,257,1],"offset":0,"phase":0,"quadratic_rows":[0,4,2,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[0,0,0,2,0,1,1,0,2],"matrix_rows":[257,98,100,8,256,80,48,112,384],"offset":127,"phase":1,"quadratic_rows":[0,48,80,112,14,106,108,0,0]},"vectors":[257,129,76,42,30]},"432":{"entrance_rank":5,"frame":432,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,128,257,2,4,8,15],"offset":0,"phase":0,"quadratic_rows":[14,13,11,15,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,1],"matrix_rows":[257,258,260,384,352,32,64,8,368],"offset":359,"phase":0,"quadratic_rows":[96,288,320,0,0,3,5,256,390]},"vectors":[391,68,34,17,8]},"433":{"entrance_rank":5,"frame":433,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,32,65,130,260,2,4,8,15],"offset":0,"phase":0,"quadratic_rows":[14,13,11,15,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,0,0,0,0,0,0,0,1],"matrix_rows":[257,264,272,384,352,2,356,32,64],"offset":455,"phase":0,"quadratic_rows":[96,0,0,288,320,9,17,256,408]},"vectors":[409,80,40,5,2]},"434":{"entrance_rank":5,"frame":434,"left":{"linear_Z4":[2,3,2,2,0,0,0,0,0],"matrix_rows":[17,34,67,4,136,6,7,264,8],"offset":0,"phase":0,"quadratic_rows":[4,2,1,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[2,0,0,0,0,3,3,0,2],"matrix_rows":[97,2,104,272,96,32,68,256,384],"offset":250,"phase":2,"quadratic_rows":[0,32,0,96,0,106,104,0,0]},"vectors":[272,144,75,42,7]},"435":{"entrance_rank":4,"frame":435,"left":{"linear_Z4":[3,3,2,2,2,0,0,0,0],"matrix_rows":[33,66,4,8,14,13,144,272,16],"offset":0,"phase":0,"quadratic_rows":[13,14,3,3,0,0,0,0,0]},"rank":5,"right":{"linear_Z4":[0,0,0,0,0,0,0,0,2],"matrix_rows":[1,2,52,56,320,32,16,256,384],"offset":144,"phase":0,"quadratic_rows":[32,16,48,48,14,13,0,0,0]},"vectors":[320,192,45,30]},"436":{"entrance_rank":5,"frame":436,"left":{"linear_Z4":[3,2,2,2,0,0,0,0,0],"matrix_rows":[17,34,67,4,5,136,7,264,8],"offset":0,"phase":0,"quadratic_rows":[1,4,2,0,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[0,2,0,0,3,0,3,0,2],"matrix_rows":[1,82,88,288,16,80,68,256,384],"offset":249,"phase":2,"quadratic_rows":[16,0,0,80,89,0,88,0,0]},"vectors":[288,160,75,25,7]},"437":{"entrance_rank":5,"frame":437,"left":{"linear_Z4":[2,2,2,3,0,0,0,0,0],"matrix_rows":[17,34,68,136,9,10,11,260,4],"offset":0,"phase":0,"quadratic_rows":[2,1,0,8,0,0,0,0,0]},"rank":4,"right":{"linear_Z4":[0,0,0,2,1,1,0,0,2],"matrix_rows":[49,50,260,8,96,80,256,112,384],"offset":127,"phase":1,"quadratic_rows":[80,96,0,112,57,58,11,0,0]},"vectors":[260,132,75,42,25]},"5":{"entrance_rank":1,"frame":5,"left":{"linear_Z4":[3,3,2,3,2,2,2,2,0],"matrix_rows":[257,2,4,8,16,32,11,64,128],"offset":0,"phase":0,"quadratic_rows":[11,11,0,11,0,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,0,2,0,2,2,0,2,2],"matrix_rows":[1,66,4,72,16,32,128,256,64],"offset":244,"phase":1,"quadratic_rows":[64,64,0,64,0,0,11,0,0]},"vectors":[75]},"6":{"entrance_rank":1,"frame":6,"left":{"linear_Z4":[2,3,3,2,2,3,2,2,0],"matrix_rows":[1,258,4,8,16,32,38,64,128],"offset":0,"phase":0,"quadratic_rows":[0,38,38,0,0,38,0,0,0]},"rank":8,"right":{"linear_Z4":[2,0,0,2,2,0,0,2,2],"matrix_rows":[1,2,68,8,16,96,128,256,64],"offset":217,"phase":1,"quadratic_rows":[0,64,64,0,0,64,38,0,0]},"vectors":[102]},"7":{"entrance_rank":1,"frame":7,"left":{"linear_Z4":[2,2,2,3,3,3,2,2,0],"matrix_rows":[1,2,4,264,16,32,56,64,128],"offset":0,"phase":0,"quadratic_rows":[0,0,0,56,56,56,0,0,0]},"rank":8,"right":{"linear_Z4":[2,2,2,0,0,0,0,2,2],"matrix_rows":[1,2,4,8,80,96,128,256,64],"offset":199,"phase":1,"quadratic_rows":[0,0,0,64,64,64,56,0,0]},"vectors":[120]},"8":{"entrance_rank":1,"frame":8,"left":{"linear_Z4":[3,2,3,2,3,2,2,2,0],"matrix_rows":[257,2,4,8,16,32,21,64,128],"offset":0,"phase":0,"quadratic_rows":[21,0,21,0,21,0,0,0,0]},"rank":8,"right":{"linear_Z4":[0,2,0,2,0,2,0,2,2],"matrix_rows":[1,2,68,8,80,32,128,256,64],"offset":234,"phase":1,"quadratic_rows":[64,0,64,0,64,0,21,0,0]},"vectors":[85]}},"status":"RESIDUAL_ADAPTER_RECIPES"} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/SCALAR-FRAME-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/SCALAR-FRAME-AUDIT.json new file mode 100644 index 0000000000..2473c3caa2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/SCALAR-FRAME-AUDIT.json @@ -0,0 +1,712 @@ +{ + "status": "PASS_CHANGED_WORD_ALL_COLUMNS_AND_NATIVE_FRAMES", + "input_content_sha256": "9fca1fc6f1fa0a9469fc10e3b90dc2c9802bf391b45f84d52ce5e7f6706c9674", + "routing_content_sha256": "7c84ac65c8b37173aa4293934f041915895e8ec30595844cc1534e2a19ae0d25", + "canonical_content_sha256": "4577d75e58f128340ce49dbdeeb6f034ed7e77dfbea973614c85676654864838", + "live_columns_each_orientation": 704, + "helpers": 480, + "compensation_additions": 7208, + "scalar_operations": 19671, + "center_rank_sum": 64, + "local_profile": { + "1": 2406, + "2": 432, + "3": 426, + "4": 138, + "5": 84, + "8": 8 + }, + "local_rank_mass": 5584, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "frames": 1005, + "directed_edges": 2897, + "tau": 43, + "target_port_order_matches_baseline": true, + "seconds": 1.437999999994645, + "scope": "Fresh exact forward and inverse-transpose scalar replay on every arbitrary input; all native frame chains and dyadic primitives. Phase lowering, wrappers, global owners and global assembly are separate.", + "hyperplane_ended_helpers": [ + 273, + 275, + 277, + 282, + 289, + 291, + 293, + 298, + 305, + 307, + 309, + 311, + 314, + 321, + 323, + 325, + 327, + 330, + 337, + 339, + 341, + 346, + 353, + 355, + 357, + 362, + 369, + 371, + 373, + 378, + 385, + 387, + 389, + 394, + 448, + 449, + 450, + 451, + 452, + 453, + 454, + 455, + 484, + 485, + 498, + 500, + 501, + 508, + 509, + 510, + 512, + 513, + 531, + 532, + 533, + 543, + 554, + 555, + 556, + 557, + 566, + 567, + 572, + 573, + 574, + 575, + 580, + 581, + 582, + 583, + 584, + 585, + 586, + 587, + 588, + 589, + 590, + 591 + ], + "early_cleanup_gates": 117, + "cold_hyperplane_ended_helpers": [ + 273, + 275, + 277, + 282, + 289, + 291, + 293, + 298, + 305, + 307, + 309, + 311, + 314, + 321, + 323, + 325, + 327, + 330, + 337, + 339, + 341, + 346, + 353, + 355, + 357, + 362, + 369, + 371, + 373, + 378, + 385, + 387, + 389, + 394, + 498, + 500, + 501, + 510, + 512, + 513, + 572, + 573, + 574, + 575, + 580, + 581, + 582, + 583 + ], + "refactored_cleanup_gates": 6798, + "refactored_cleanup": { + "cold_low_frame_ended_helpers": [ + 273, + 275, + 277, + 282, + 289, + 291, + 293, + 298, + 305, + 307, + 309, + 311, + 314, + 321, + 323, + 325, + 327, + 330, + 337, + 339, + 341, + 346, + 353, + 355, + 357, + 362, + 369, + 371, + 373, + 378, + 385, + 387, + 389, + 394, + 498, + 500, + 501, + 510, + 512, + 513, + 572, + 573, + 574, + 575, + 580, + 581, + 582, + 583 + ], + "construction": "; G44Stack premix-only factored entering ends 554,555,566,567 (start frame [24]); G44Stack premix-only factored entering ends 586,588,531,543 (start frame [30]); CarrierBypass premix-only factored cold ends 513,574,575,573,581,582; CarrierBypass premix-only factored cold ends 572,583,580,512; CarrierBypass premix-only factored cold ends 500,501,311,498,510,327", + "entering_low_frame_ended_helpers": [ + 531, + 543, + 554, + 555, + 566, + 567, + 586, + 588 + ], + "exact_non_target_isolation_checked": true, + "forward_absorption_A_indices": [], + "forward_absorptions": 0, + "high_inverse": "dyadic_sparse_Gauss_Jordan", + "kind": "source_branch_gauge_and_retired_completion_cold44", + "lower_frame_gates": 81, + "new_cold_ends": 32, + "premix_gates": 1190, + "premix_target_writes": 0 + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/WRAPPER-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/WRAPPER-CHECKS.json new file mode 100644 index 0000000000..d5d4f192c8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/evidence/local/WRAPPER-CHECKS.json @@ -0,0 +1,403 @@ +{ + "status": "PASS_RESIDUAL_WRAPPERS_ARE_EXACT", + "frames": 22, + "hyperplane_end_pairs": [ + { + "frame": 0, + "terminal": 124, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 153, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 182, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 211, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 240, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 269, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 298, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 327, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 1000, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1001, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1002, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1003, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1004, + "entrance_rank": 0, + "terminal_rank": 7, + "residual_width": 7 + }, + { + "frame": 2, + "terminal": 999, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + }, + { + "frame": 3, + "terminal": 998, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + } + ], + "cold_hyperplane_end_pairs": 13, + "wrappers_reject": [ + "wrong global phase", + "wrong translation", + "wrong quadratic form", + "sides swapped", + "wrong width", + "hpe: U-wrapper decoded against a FULL ending", + "hpe: width misreported as 9 - dim E", + "hpe: wrong terminal hyperplane", + "hpe: pre wrapper resolved to the FULL recipe R_{E,FULL}", + "hpe: wrong global phase", + "cold hpe: identity pre wrapper instead of R_{0,U}", + "cold hpe: identity post wrapper instead of L_{0,U}", + "cold hpe: no wrappers (cold FULL convention L = R = I)", + "cold hpe: U-wrapper decoded against a FULL ending", + "cold hpe: width misreported as 9", + "cold hpe: wrong terminal hyperplane", + "cold hpe: wrong global phase" + ], + "all_even_weight": false, + "all_totally_isotropic": false, + "detail": [ + { + "frame": 2, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 30 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 3, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 51 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 4, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 459 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 5, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 75 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 6, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 102 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 7, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 120 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 8, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 85 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 423, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 45 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 424, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 413, + 72, + 48, + 3 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 425, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 407, + 66, + 36, + 9 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 426, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 455, + 33, + 18, + 12 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 427, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 258, + 130, + 85, + 45 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 428, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 264, + 136, + 85, + 51 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 429, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 427, + 96, + 24, + 6 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 430, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 423, + 65, + 20, + 10 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 431, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 257, + 129, + 76, + 42, + 30 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 432, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 391, + 68, + 34, + 17, + 8 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 433, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 409, + 80, + 40, + 5, + 2 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 434, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 272, + 144, + 75, + 42, + 7 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 435, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 320, + 192, + 45, + 30 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 436, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 288, + 160, + 75, + 25, + 7 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 437, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 260, + 132, + 75, + 42, + 25 + ], + "all_even_weight": false, + "totally_isotropic": false + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/PROOF.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/PROOF.md new file mode 100644 index 0000000000..b551b6d3e5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/PROOF.md @@ -0,0 +1,237 @@ +# Exact owner reuse and concave-cost matching + +## 1. Objects and interface assumptions + +The parent controller has 72 ordered calls, 112 source ports, 112 target ports, +and 492 helper roles per call. The ambient dimension is 73. A pending-child +group is a triple + +$$ +g=(\text{owner replica},\text{child},\text{port}). +$$ + +The parent window catalogue gives group capacity $C_g$, together with the call +times at which its physical stream is idle. The map from a group to its +physical family is + +$$ +F(g)=896\,\text{owner replica} + +112(2\,\text{pair(child)}+\text{side(child)})+\text{port}. +$$ + +At every call in this particular parent geometry, at most one pending child of +a physical family is eligible. Both the matcher and the independent frozen +audit check this condition. They also exclude both active data families of the +call. Consequently, injective assignment to eligible groups is equivalent to +assignment to distinct idle physical families at that call. + +Helper $h$ requests an integer width $w_h$, read afresh from the new local +word as the final-frame dimension minus the start-frame dimension. Native +program profiles are also recomputed from their paid edges. The finite local +compiler supplies the normalized helper chart and verifies its warm-start +semantics. A hosted width is a reservation in the pending child's address +coordinates on an existing physical stream; it is not a new physical stream. + +This proof concerns the discrete assignment and its moment contribution. It +uses the parent windows as input. Independent global admission must verify +those windows against the actual controller and construct the actual +73-column charts for the fresh native local word. + +## 2. Feasible shrinking on the original families + +For one call, sort the old slot widths and the new helper widths increasingly, +breaking ties by the old or new helper number. Suppose the new width in each +position is no larger than its matched old width. Assign that helper to the +matched old slot. + +This operation preserves the call time, stage, replica, pending child, port, +owner replica, and physical family. It preserves the set of 492 distinct +helper-owner families at the call, so the old window and active-data +exclusions still hold. In each pending-child group, the sum of new widths is +no larger than the old sum, hence remains within capacity. + +Now order the assignments in each group consistently and replace their +offsets by consecutive prefix sums. The occupied sets become pairwise +disjoint intervals whose union is exactly a prefix of length +$U_g=\sum w_h\le C_g$. The idle child retains rank $C_g-U_g$, with pending +offset $U_g$. Thus the shrinking operation has a direct capacity proof; it +requires neither an owner solver nor any change to the controller. + +The seed constructor applies this termwise argument to the 71 former `jp8` +calls. It keeps the remaining `ck` call provisionally unchanged. Two optional +fixed-family assignment passes redistribute the available capacity before +freezing the seed. Their result is audited using the same integer constraints. + +## 3. One call with all other calls fixed + +Fix one call $t$. Remove its existing assignments while keeping every other +call fixed. For each eligible group, define the available capacity + +$$ +c_g=C_g-\sum_{\substack{\text{assignments in }g\\\text{from calls other than }t}}w. +$$ + +The call must assign each of its 492 widths to a distinct eligible group with +$w\le c_g$. Unused groups can be viewed as receiving a dummy width zero. +After the assignment, group $g$'s idle rank is $c_g-w_g$. For any function +$\phi$, the portion of the idle objective affected by the call is exactly + +$$ +\sum_{g\text{ eligible at }t}\phi(c_g-w_g). +$$ + +All other idle contributions, and all local paid-edge contributions, are +constant in this single-call problem. + +### Greedy rule + +Sort eligible capacities increasingly. At each capacity, assign the largest +remaining helper width that fits; assign zero if none fits. Continue through +the remaining capacities. + +This rule has no floating parameter. Equal-capacity tie choices are used only +to limit changes to physical owners and make the artifact deterministic. + +### Exchange lemma + +Take two capacities $c_1\le c_2$ and two widths $w_1\le w_2\le c_1$. The +assignment of $w_1$ to $c_1$ and $w_2$ to $c_2$ has residual pair + +$$ +(c_1-w_1,\ c_2-w_2). +$$ + +Exchange the widths. Feasibility is preserved, and the new pair is + +$$ +(c_1-w_2,\ c_2-w_1). +$$ + +The total is unchanged. The first new component is no larger than either old +component, and the second is no smaller than either old component. Therefore +the new pair majorizes the old pair. Every concave $\phi$ has weakly smaller +sum on the new pair. + +### Consequence: feasibility and optimality + +Start from any feasible complete assignment. At the smallest remaining +capacity, its assigned width is no larger than the largest remaining width +that fits. The greedy width occurs at some later capacity. If the two differ, +the exchange lemma moves that width to the current capacity while preserving +feasibility and weakly decreasing every concave objective. Fix this first +position and repeat on the suffix. Dummy zero widths cover unused groups. + +Thus the greedy procedure succeeds whenever a feasible assignment exists, and +its remainder vector majorizes that of every feasible assignment. It +simultaneously minimizes every concave remainder objective for this call. +This proof depends on the absence of any eligibility restriction beyond the +capacity and the already fixed call window; that property is explicitly +checked for the present geometry. + +## 4. Exact majorization receipts + +Let $a_r$ and $b_r$ be the old and new remainder histograms for one update, +including zero remainders. When the helper-width multiset is unchanged, their +total numbers of groups and total ranks agree. Every remainder lies between +0 and 48. The implementation checks, with integers, that for each +$k=0,1,\ldots,48$, + +$$ +\sum_r b_r\max(r-k,0) +\;\ge\; +\sum_r a_r\max(r-k,0). +$$ + +These are the stored stop-loss margins. Between integer breakpoints the +difference is linear, so checking all integer breakpoints checks every real +threshold. With equal sums and equal lengths, the inequalities are the +standard majorization criterion: the new vector majorizes the old one. + +The transcript contains 288 such equal-width updates: four passes through 72 +calls. A single preceding update replaces the seed's last `ck` width multiset. +That bootstrap has different total width, so it is checked for exact +feasibility and is not represented as an equal-sum majorization step. + +`reproduce.py` reruns every update and compares the full transcript's semantic +hash. Independently, `audit_frozen.py` removes each final call in turn, computes +all available capacities directly from the frozen owner map, runs a separate +histogram-only greedy calculation, and verifies that it returns exactly the +existing remainder histogram. This checks all 72 final coordinate optima +without relying on the transcript or the discovery seed. + +## 5. Relation to the global moment + +For ambient dimension $M=73$, define + +$$ +\phi_b(r)=r\bigl((73/r)^b-1\bigr) + =73^b r^{1-b}-r,\qquad \phi_b(0)=0. +$$ + +For $0 used[g]) + paid = Counter({r: 72*n for r, n in sig['profile'].items()}) + paid.update(idle) + + # Independent cost-level fixed-point check. No helper-ID or family-ID + # tie-breaking is needed: equal capacities give the same histogram. + for t in range(72): + old = {g: w for g, w in bycall[t].values()} + assert len(old) == R + before = Counter(caps[g]-used[g] for g in eligible[t]) + available = sorted(caps[g]-used[g]+old.get(g, 0) for g in eligible[t]) + want = Counter(sig['widths']) + after = Counter() + for cap in available: + width = next((w for w in sorted(want, reverse=True) if want[w] and w <= cap), 0) + if width: + want[width] -= 1 + after[cap-width] += 1 + assert not any(want.values()), 'Greedy assignment unexpectedly infeasible' + assert after == before, ('Frozen map is not callwise optimal', t) + mass = sum(r*n for r, n in paid.items()) + assert 73*7168-mass == 2560 and max(paid) == 48 + return { + 'roles': len(owners), 'calls': 72, 'fixed_point_calls_checked': 72, + 'remainder_profile': dict(sorted(idle.items())), + 'global_profile': dict(sorted(paid.items())), + 'rank_mass': mass, 'deficit': 2560, 'maxchild': 48, + 'all_footprints_disjoint_compacted_prefixes': True, + 'all_helper_families_idle_and_outside_active_data': True, + 'one_helper_per_physical_family_per_call': True, + 'every_call_optimal_for_every_concave_remainder_cost': True, + 'global_optimality_claimed': False, + } + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + add_inputs(parser) + parser.add_argument('--owners', type=Path, default=HERE/'frozen/OWNERS.json.gz') + parser.add_argument('--majorization', type=Path, default=HERE/'frozen/MAJORIZATION.json.gz') + parser.add_argument('--out', type=Path, required=True) + args = parser.parse_args() + manifest = read(HERE/'frozen/MANIFEST.json') + plan, sig, provider_path = bound_inputs(args, manifest) + assert semantic_sha(args.owners) == manifest['artifacts']['OWNERS.json.gz']['semantic_sha256'] + assert semantic_sha(args.majorization) == manifest['artifacts']['MAJORIZATION.json.gz']['semantic_sha256'] + result = audit(plan, sig, read(args.owners)) + for key in ('remainder_profile', 'global_profile'): + assert result[key] == {int(r): n for r, n in manifest[key].items()} + moves = read(args.majorization) + checked = 0 + for move in moves: + if move['equal_width_multiset']: + margins = move['integer_stoploss_margins'] + assert len(margins) == 49 and all(type(x) is int and x >= 0 for x in margins) + assert margins[0] == margins[-1] == 0 + assert move['strict_majorization'] == bool(any(margins)) + checked += 1 + else: + assert move['bootstrap'] and move['integer_stoploss_margins'] is None + assert checked == 288 and len(moves) == 289 + result.update({ + 'status': 'PASS_FROZEN_HOSTING_AND_ALL_72_CALLWISE_FIXED_POINTS', + 'parent_plan_sha256': sha(args.parent_plan), + 'parent_owners_sha256': sha(args.parent_owners), + 'owners_semantic_sha256': semantic_sha(args.owners), + 'majorization_semantic_sha256': semantic_sha(args.majorization), + 'stored_integer_majorization_steps': checked, + 'majorization_replay': 'reproduce.py re-executes every step; this audit separately checks the final fixed point.', + 'remaining_scope': 'The package global verifier checks fresh local algebra, phases, windows, invoice, moment, and outer assembly.', + }) + args.out.parent.mkdir(parents=True, exist_ok=True) + args.out.write_text(json.dumps(result, indent=2)+'\n') + print(json.dumps(result, indent=2)) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/expand_owners.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/expand_owners.py new file mode 100644 index 0000000000..ee6c4c24e6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/expand_owners.py @@ -0,0 +1,186 @@ +"""Exact callwise concave-cost owner matching over every legal idle family. + +This is a finite integer nomination algorithm, not a MILP. Each greedy +matching is optimal for every concave remainder cost. Its majorization +receipt is checked with integers, independently of floating root screens. +""" +from collections import Counter, defaultdict, deque +from pathlib import Path +import argparse +import gzip +import hashlib +import json +import time + +from reuse_owners import read, packed, sha, signature, audit_roles, rate + + +def stoploss(hist,k):return sum(n*max(r-k,0) for r,n in hist.items()) + + +def main(): + ap=argparse.ArgumentParser(description=__doc__) + ap.add_argument('--plan',type=Path,required=True) + ap.add_argument('--owners',type=Path,required=True) + ap.add_argument('--signature',action='append',required=True,help='Existing PID=verified native directory or raw/signature JSON') + ap.add_argument('--max-passes',type=int,default=8) + ap.add_argument('--out',type=Path,required=True) + a=ap.parse_args();assert 1<=a.max_passes<=12 + a.out.mkdir(parents=True,exist_ok=False);beg=time.monotonic() + plan,oldroles=read(a.plan),read(a.owners);V,M=112,73 + assert (plan['K'],plan['T'],plan['M'],plan['L'])==(4,8,73,9) + sig={pid:{'widths':desc['widths'],'profile':{int(r):n for r,n in desc['actual_paid_profile'].items()},'source':'input PLAN'} for pid,desc in plan['provider_registry'].items()} + for spec in a.signature: + pid,path=spec.split('=',1);assert pid in sig;sig[pid]=signature(path) + R=len(next(iter(sig.values()))['widths']) + for s in sig.values(): + assert len(s['widths'])==R and all(type(w) is int and 0used[g]) + + def total_profile(): + p=Counter() + for c in plan['provider_calls']:p.update(sig[c['provider']]['profile']) + p.update(idle_profile());assert M*plan['live']-sum(r*n for r,n in p.items())==2560 + return p + + def update(call,bootstrap=False): + t=calls[call]['time'];gs=eligible[t] + old=current[call] + old_by_group={g:(h,w) for h,(g,w) in old.items()} + assert len(old_by_group)==R and set(old_by_group)<=set(gs) + oldhist=Counter(caps[g]-used[g] for g in gs) + for g,(h,w) in old_by_group.items():used[g]-=w + want=defaultdict(set) + for h,w in enumerate(widths[call]):want[w].add(h) + # Equal-capacity opportunities have identical costs. Preserve old + # matching widths first, then old owners, and finally family order. + buckets=defaultdict(lambda:defaultdict(deque)) + for g in sorted(gs,key=lambda g:(families[g],g[1])): + available=caps[g]-used[g];oldw=old_by_group.get(g,(None,0))[1] + buckets[available][oldw].append(g) + result={};unassigned=R + for c in sorted(buckets): + bucket=buckets[c] + while unassigned and any(bucket.values()): + w=next((w for w in sorted(want,reverse=True) if w<=c and want[w]),None) + if w is None:break + if bucket.get(w):q=w + else:q=next(q for q in sorted(bucket,reverse=True) if bucket[q]) + g=bucket[q].popleft() + h0=old_by_group.get(g,(None,0))[0] + h=h0 if h0 in want[w] else min(want[w]) + want[w].remove(h);result[h]=(g,w);used[g]+=w;unassigned-=1 + assert used[g]<=caps[g] + assert unassigned==0,('no legal family matching',call,{w:len(h) for w,h in want.items() if h}) + assert set(result)==set(range(R)) and len({families[g] for g,w in result.values()})==R + newhist=Counter(caps[g]-used[g] for g in gs) + equal_widths=Counter(w for g,w in old.values())==Counter(widths[call]) + strict=False + if equal_widths: + assert sum(oldhist.values())==sum(newhist.values()) + assert stoploss(oldhist,0)==stoploss(newhist,0) + margins=[stoploss(newhist,k)-stoploss(oldhist,k) for k in range(49)] + assert min(margins)>=0,('greedy did not majorize old assignment',call,margins) + strict=any(margins) + else: + assert bootstrap + margins=None + changed=sum(result[h]!=old[h] for h in result) + current[call]=result + moves.append({'stage':call[0],'replica':call[1],'time':t,'bootstrap':bootstrap, + 'equal_width_multiset':equal_widths,'integer_stoploss_margins':margins, + 'strict_majorization':strict,'changed_helper_owners':changed}) + return strict,changed + + changed_calls=[c for c in order if any(current[c][h][1]!=widths[c][h] for h in range(R))] + for c in changed_calls:update(c,bootstrap=True) + p=total_profile();baseline_b=rate(p,2560,M) + rounds=[{'pass':'bootstrap','changed_provider_calls':[list(c) for c in changed_calls], + 'floating_b':baseline_b,'remainder_profile':dict(sorted(idle_profile().items()))}] + print(json.dumps({'checkpoint':'all_goal_signatures_feasible','bootstrap_calls':len(changed_calls),'floating_b':baseline_b}),flush=True) + quiet=0 + for passno in range(a.max_passes): + strict=changed=0 + for c in (order if passno%2==0 else list(reversed(order))): + s,z=update(c);strict+=bool(s);changed+=z + p=total_profile();r={'pass':passno+1,'strictly_improved_calls':strict,'changed_helper_owners':changed, + 'floating_b':rate(p,2560,M),'remainder_profile':dict(sorted(idle_profile().items()))} + rounds.append(r);print(json.dumps({k:r[k] for k in ('pass','strictly_improved_calls','changed_helper_owners','floating_b')}),flush=True) + quiet=quiet+1 if not strict else 0 + if quiet>=2 or (not strict and not changed):break + + groups=defaultdict(list);roles=[] + for call in order: + s,rep=call;t=calls[call]['time'] + for h,(g,w) in current[call].items(): + orp,ch,port=g + z={'child':ch,'copy':orp*V+port,'family':families[g],'helper':h,'offset':0, + 'owner_replica':orp,'port':port,'replica':rep,'stage':s,'time':t,'width':w} + roles.append(z);groups[g].append(z) + for g,zs in groups.items(): + off=0 + for z in sorted(zs,key=lambda z:(z['time'],z['helper'])):z['offset']=off;off+=z['width'] + assert off==used[g]<=caps[g] + roles.sort(key=lambda z:(z['time'],z['helper'])) + cells,_=audit_roles(roles,plan,widths,V,R) + for z in roles: + active=max(0,(z['stage']-1)//2) + assert not (z['owner_replica']==z['replica'] and plan['pairs'][str(z['child'])]==active) + for g in caps:assert len(cells[g])==used[g] + remainder=[] + for g in caps: + left=caps[g]-used[g] + if left: + rep,ch,port=g + remainder.append({'child':ch,'port':port,'replica':rep,'replicas':1,'family':families[g], + 'rank':left,'hosted':used[g],'pending_offset':used[g]}) + profile=dict(sorted(total_profile().items()));assert M*M>2*max(profile)**2 + raw=packed(roles);compressed=bytearray(gzip.compress(raw,mtime=0));compressed[9]=255 + (a.out/'OWNERS.json.gz').write_bytes(bytes(compressed)) + (a.out/'MAJORIZATION.json.gz').write_bytes(gzip.compress(packed(moves),mtime=0)) + (a.out/'REMAINDERS.json').write_text(json.dumps(remainder,indent=2)+'\n') + (a.out/'PROFILE.json').write_text(json.dumps(profile,indent=2)+'\n') + fields={'profile':profile,'per_call_widths':[{'stage':s,'replica':r,'widths':widths[s,r]} for s,r in order], + 'assignment_sha256':hashlib.sha256(raw).hexdigest(),'assignment_sha256_semantics':'SHA256 sorted-key compact uncompressed OWNERS array', + 'source_owners_sha256':sha(a.owners),'provider_signatures':sig} + (a.out/'PLAN-OWNER-FIELDS.json').write_text(json.dumps(fields,indent=2)+'\n') + receipt={'status':'PASS_EXPANDED_OWNER_MATCHING_EXACT_COMBINATORICS_PENDING_GLOBAL_ADMISSION', + 'source_plan':str(a.plan),'source_plan_sha256':sha(a.plan),'source_owners':str(a.owners),'source_owners_sha256':sha(a.owners), + 'owners_sha256':sha(a.out/'OWNERS.json.gz'),'source_signatures':sig, + 'roles':len(roles),'calls':len(order),'unchanged_call_order_and_windows':True, + 'all_families_idle_and_outside_active_data':True,'one_helper_per_family_per_call':True, + 'all_footprints_disjoint_compacted_prefixes':True,'integer_majorization_steps':sum(z['equal_width_multiset'] for z in moves), + 'majorization_sha256':sha(a.out/'MAJORIZATION.json.gz'),'matching_rounds':rounds, + 'global_profile':profile,'rank_mass':sum(r*n for r,n in profile.items()),'deficit':2560, + 'remainder_profile':dict(sorted(idle_profile().items())),'maxchild':max(profile), + 'candidate_floating_screen_b':rate(profile,2560,M),'seconds':time.monotonic()-beg, + 'remaining_admission':'Fresh native-provider bindings, actual 73-column owner charts, independent full controller audit, finite invoice, exact moment and outer assembly.'} + (a.out/'EXPANDED-OWNER-REUSE.json').write_text(json.dumps(receipt,indent=2)+'\n') + print(json.dumps({k:receipt[k] for k in ('status','roles','remainder_profile','rank_mass','candidate_floating_screen_b','seconds')},indent=2),flush=True) + + +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/FROZEN-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/FROZEN-AUDIT.json new file mode 100644 index 0000000000..5f95552366 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/FROZEN-AUDIT.json @@ -0,0 +1,57 @@ +{ + "roles": 35424, + "calls": 72, + "fixed_point_calls_checked": 72, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "all_footprints_disjoint_compacted_prefixes": true, + "all_helper_families_idle_and_outside_active_data": true, + "one_helper_per_physical_family_per_call": true, + "every_call_optimal_for_every_concave_remainder_cost": true, + "global_optimality_claimed": false, + "status": "PASS_FROZEN_HOSTING_AND_ALL_72_CALLWISE_FIXED_POINTS", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "stored_integer_majorization_steps": 288, + "majorization_replay": "reproduce.py re-executes every step; this audit separately checks the final fixed point.", + "remaining_scope": "The package global verifier checks fresh local algebra, phases, windows, invoice, moment, and outer assembly." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MAJORIZATION.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MAJORIZATION.json.gz new file mode 100644 index 0000000000..047b1cfb67 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MAJORIZATION.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MANIFEST.json new file mode 100644 index 0000000000..291005722c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MANIFEST.json @@ -0,0 +1,114 @@ +{ + "schema": "gauge44-hosting-frozen-v1", + "parent_pr": 635, + "parent_paths": { + "plan": "research/complex-571-cold14-st2/data/PLAN.json", + "owners": "research/complex-571-cold14-st2/data/OWNERS.json.gz" + }, + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "artifacts": { + "OWNERS.json.gz": { + "sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d" + }, + "SEED-OWNERS.json.gz": { + "sha256": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "semantic_sha256": "beea695aa2e1ab973ad53f475b3e3e9cf6d0f8a9bca2033a445b64f3b3484e34" + }, + "MAJORIZATION.json.gz": { + "sha256": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc" + } + }, + "new_provider": { + "R": 492, + "h": 9, + "v": 112, + "width_histogram": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "width_sum": 3794, + "profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "rank_mass": 5650, + "raw_word_sha256": "3ef4e74e81e2f4621fc95272918ac7b8bb8858df0baa16cc6d91424d55aead9e", + "canonical_word_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "local_programs_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2", + "width_vector_sha256": "b7fbefdb3af3942194ac9314c767c7812bd68adb734d4e00b70b2916bdb55de8" + }, + "seed_discovery": { + "provider_replaced": "jp8", + "unchanged_provider": "ck", + "passes": 2, + "price_b": 0.001638923, + "python": "3.12.14", + "numpy": "2.3.5", + "scipy": "1.17.0", + "note": "Only seed discovery uses floating-point Hungarian costs. Frozen seed and the expanded exact replay require the Python standard library." + }, + "expanded_replay": { + "providers_replaced": [ + "jp8", + "ck" + ], + "max_passes": 8, + "actual_passes": 4, + "integer_majorization_steps": 288, + "changed_width_bootstrap_calls": 1 + }, + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "live": 7168, + "roles": 35424, + "calls": 72, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "candidate_floating_screen_b": 0.0016522089943684115, + "screening_only": "The floating rate here is not a certified exponent. Exact supplier and outer admission belong to the package verifier." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MATCHING-RECEIPT.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MATCHING-RECEIPT.json new file mode 100644 index 0000000000..993331090c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/MATCHING-RECEIPT.json @@ -0,0 +1,1205 @@ +{ + "status": "PASS_EXPANDED_OWNER_MATCHING_EXACT_COMBINATORICS_PENDING_GLOBAL_ADMISSION", + "source_plan": "explicit parent PLAN, with a temporary signature-only seed view for expanded replay", + "source_plan_sha256": "0d2b6a12d3450cfb78e556e80d34cabb8cd1a7f8aa85c1a712a5177236672a37", + "source_owners": "frozen/SEED-OWNERS.json.gz", + "source_owners_sha256": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "owners_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "source_signatures": { + "ck": { + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2514, + "4": 160, + "8": 8, + "3": 448, + "2": 404, + "5": 56 + }, + "source": "supplied new provider (raw or independently checked native)", + "canonical_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "program_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2" + }, + "jp8": { + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2514, + "4": 160, + "8": 8, + "3": 448, + "2": 404, + "5": 56 + }, + "source": "supplied new provider (raw or independently checked native)", + "canonical_sha256": "92941c2b718b533f1d3addb710d261a6e2b9ec5d19f0051d79775b08cb2571ed", + "program_sha256": "172dc3d23e437909ddc01d07b12ede735afbb5bb6145f1ddf5c2e03097dfebe2" + } + }, + "roles": 35424, + "calls": 72, + "unchanged_call_order_and_windows": true, + "all_families_idle_and_outside_active_data": true, + "one_helper_per_family_per_call": true, + "all_footprints_disjoint_compacted_prefixes": true, + "integer_majorization_steps": 288, + "majorization_sha256": "ec5f94b13d190d72bc0608dc9fe2498cc43ba9deb05028159a812ec1e4dcacdf", + "matching_rounds": [ + { + "pass": "bootstrap", + "changed_provider_calls": [ + [ + 2, + 0 + ] + ], + "floating_b": 0.0016448741407332063, + "remainder_profile": { + "1": 87, + "2": 111, + "3": 191, + "4": 160, + "5": 1, + "6": 2, + "7": 50, + "8": 127, + "10": 3, + "11": 23, + "12": 25, + "13": 1, + "14": 5, + "15": 9, + "16": 107, + "18": 1, + "19": 10, + "20": 15, + "23": 2, + "24": 52, + "32": 1, + "44": 1, + "48": 2221 + } + }, + { + "pass": 1, + "strictly_improved_calls": 70, + "changed_helper_owners": 1245, + "floating_b": 0.0016518485664379205, + "remainder_profile": { + "1": 83, + "2": 92, + "3": 167, + "4": 10, + "6": 3, + "7": 9, + "8": 13, + "11": 4, + "12": 11, + "15": 1, + "16": 35, + "24": 1, + "28": 7, + "32": 57, + "44": 11, + "48": 2284 + } + }, + { + "pass": 2, + "strictly_improved_calls": 41, + "changed_helper_owners": 169, + "floating_b": 0.0016521846143978994, + "remainder_profile": { + "1": 83, + "2": 80, + "3": 171, + "7": 7, + "8": 6, + "12": 14, + "16": 33, + "19": 1, + "20": 2, + "24": 2, + "28": 3, + "32": 61, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + } + }, + { + "pass": 3, + "strictly_improved_calls": 8, + "changed_helper_owners": 13, + "floating_b": 0.0016522089943684115, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + } + }, + { + "pass": 4, + "strictly_improved_calls": 0, + "changed_helper_owners": 0, + "floating_b": 0.0016522089943684115, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + } + } + ], + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "rank_mass": 520704, + "deficit": 2560, + "remainder_profile": { + "1": 85, + "2": 76, + "3": 173, + "7": 7, + "8": 6, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "maxchild": 48, + "candidate_floating_screen_b": 0.0016522089943684115, + "remaining_admission": "Fresh native-provider bindings, actual 73-column owner charts, independent full controller audit, finite invoice, exact moment and outer assembly.", + "provenance_note": "Absolute discovery paths and wall time removed; original artifact hashes and all exact combinatorial fields preserved." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/OWNERS.json.gz new file mode 100644 index 0000000000..e9c7cfc72d Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/REPRODUCTION.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/REPRODUCTION.json new file mode 100644 index 0000000000..8ad59712b2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/REPRODUCTION.json @@ -0,0 +1,29 @@ +{ + "status": "PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY", + "seed_mode": "included_frozen_seed", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "owners_gzip_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "scope": "Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-OWNERS.json.gz new file mode 100644 index 0000000000..d61916a156 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-RECEIPT.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-RECEIPT.json new file mode 100644 index 0000000000..82911f647b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-RECEIPT.json @@ -0,0 +1,1537 @@ +{ + "status": "PASS_OWNER_REUSE_NOMINATION_COMBINATORICS_NOT_FULL_SUPPLIER_ADMISSION", + "source_plan": "explicit parent PLAN", + "source_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "source_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_sha256": "eb3be5eebbb84349d7e7f1bde2fc77772a12ad5bccc6dab7c4efd8d903e2a048", + "unchanged_owner_family_sets": true, + "unchanged_call_order_and_windows": true, + "all_footprints_are_disjoint_compacted_prefixes": true, + "local_signatures": { + "ck": { + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2600, + "2": 552, + "3": 304, + "4": 164, + "5": 70, + "6": 4, + "8": 8 + }, + "source": "inherited parent PLAN signature" + }, + "jp8": { + "widths": [ + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "source": "supplied new provider (raw or independently checked native)", + "source_sha256": "3ef4e74e81e2f4621fc95272918ac7b8bb8858df0baa16cc6d91424d55aead9e" + } + }, + "sorted_initial_dominance": { + "(0, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 0)": { + "old_total": 3854, + "new_total": 3854, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(0, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(1, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(2, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 0)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 1)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(3, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 2)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(4, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 3)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(5, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 4)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(6, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 5)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(7, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 6)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + }, + "(8, 7)": { + "old_total": 3894, + "new_total": 3794, + "sorted_termwise_dominance": true, + "failed_positions": [] + } + }, + "matching_passes": [ + { + "pass": "sorted", + "touched_group_idle_pressure": 44.06409529228022, + "calls_awaiting_capacity_matching": 0 + }, + { + "pass": 1, + "accepted_calls": 71, + "touched_group_idle_pressure": 24.92521223381306, + "decrease": 19.13888305846716 + }, + { + "pass": 2, + "accepted_calls": 58, + "touched_group_idle_pressure": 23.047886627886065, + "decrease": 1.8773256059269947 + } + ], + "roles": 35424, + "calls": 72, + "remainder_children": 3197, + "remainder_profile": { + "1": 83, + "2": 99, + "3": 197, + "4": 168, + "5": 6, + "6": 13, + "7": 16, + "8": 145, + "10": 4, + "11": 24, + "12": 19, + "13": 1, + "14": 3, + "15": 9, + "16": 107, + "18": 1, + "19": 10, + "20": 15, + "23": 2, + "24": 52, + "32": 1, + "44": 1, + "48": 2221 + }, + "global_profile": { + "1": 181177, + "2": 29335, + "3": 32309, + "4": 11692, + "5": 4052, + "6": 17, + "7": 16, + "8": 721, + "10": 4, + "11": 24, + "12": 19, + "13": 1, + "14": 3, + "15": 9, + "16": 107, + "18": 1, + "19": 10, + "20": 15, + "23": 2, + "24": 52, + "32": 1, + "44": 1, + "48": 2221 + }, + "rank_mass": 520704, + "deficit": 2560, + "maxchild": 48, + "source_floating_screen_b": 0.001638923175694355, + "candidate_floating_screen_b": 0.0016446065186552388, + "remaining_admission": "Bind freshly verified provider artifacts and their hashes; regenerate the global template, actual 73-column sigmas and remainder axes with the existing emitter; run independent owner/frame audit, finite invoice, and exact moment/outer assembly.", + "provenance_note": "Absolute discovery paths and wall time removed; original artifact hashes and all exact combinatorial fields preserved." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-REPRODUCTION.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-REPRODUCTION.json new file mode 100644 index 0000000000..91ee98cf70 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/frozen/SEED-REPRODUCTION.json @@ -0,0 +1,29 @@ +{ + "status": "PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY", + "seed_mode": "two_pass_hungarian_discovery_rebuilt", + "parent_plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "parent_owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "owners_semantic_sha256": "c09faf298565c1388c02370fdd4e61dd542579fe1898e842d5096cc97b68191d", + "owners_gzip_sha256": "90ff7657a23dcfb67532b49c0800c5fc259b27c89005081e24bf184869e1bd57", + "majorization_semantic_sha256": "9ed3fdb41fb8dbc6542de7701c78bb8f3bb728604057daf82a537bde182ab9fc", + "global_profile": { + "1": 181093, + "2": 29164, + "3": 32429, + "4": 11520, + "5": 4032, + "7": 7, + "8": 582, + "12": 13, + "16": 33, + "19": 1, + "20": 2, + "28": 4, + "32": 62, + "36": 1, + "40": 1, + "44": 6, + "48": 2289 + }, + "scope": "Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/reproduce.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/reproduce.py new file mode 100644 index 0000000000..2f29a5ff13 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/reproduce.py @@ -0,0 +1,100 @@ +"""Reproduce the frozen all-cold44 owner nomination from explicit inputs. + +By default, replay the exact integer optimizer from the included frozen seed. +--rebuild-seed additionally repeats the original two floating-cost Hungarian +discovery passes; that optional route requires NumPy and SciPy. +""" +from pathlib import Path +from collections import Counter +import argparse +import copy +import json +import shutil +import subprocess +import sys + +from audit_frozen import HERE, add_inputs, bound_inputs, semantic_sha +from reuse_owners import audit_roles, read, sha + + +def run(name, *args): + subprocess.run([sys.executable, str(HERE/name), *map(str, args)], check=True) + + +def seed_plan(parent, seed_owners, new_signature): + """Build a signature-only resizer input; never an admitted provider PLAN.""" + plan = copy.deepcopy(parent) + plan['provider_registry']['jp8']['widths'] = new_signature['widths'] + plan['provider_registry']['jp8']['actual_paid_profile'] = new_signature['profile'] + call_widths = { + (c['stage'], c['replica']): plan['provider_registry'][c['provider']]['widths'] + for c in plan['provider_calls'] + } + used, families = audit_roles(seed_owners, plan, call_widths, 112, 492) + profile = Counter() + for c in plan['provider_calls']: + profile.update({int(r): n for r, n in plan['provider_registry'][c['provider']]['actual_paid_profile'].items()}) + for key, (cap, times) in plan['windows'].items(): + rep, child = map(int, key.split(',')) + for port in range(112): + left = cap-len(used[rep, child, port]) + if left: + profile[left] += 1 + assert 73*7168-sum(r*n for r, n in profile.items()) == 2560 + plan['profile'] = dict(sorted(profile.items())) + plan['per_call_widths'] = [ + {'stage': s, 'replica': r, 'widths': call_widths[s, r]} + for s, r in plan['order'] + ] + plan['status'] = 'INTERMEDIATE_SIGNATURE_ONLY_OWNER_SEED_NOT_PROVIDER_ADMISSION' + return plan + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + add_inputs(parser) + parser.add_argument('--rebuild-seed', action='store_true') + parser.add_argument('--out', type=Path, required=True, help='New output directory') + args = parser.parse_args() + manifest = read(HERE/'frozen/MANIFEST.json') + parent, sig, provider = bound_inputs(args, manifest) + args.out.mkdir(parents=True, exist_ok=False) + seed_dir = args.out/'seed' + if args.rebuild_seed: + run('reuse_owners.py', '--plan', args.parent_plan, '--owners', args.parent_owners, + '--signature', f'jp8={provider}', '--passes', '2', '--price-b', '0.001638923', '--out', seed_dir) + else: + seed_dir.mkdir() + shutil.copyfile(HERE/'frozen/SEED-OWNERS.json.gz', seed_dir/'OWNERS.json.gz') + assert semantic_sha(seed_dir/'OWNERS.json.gz') == manifest['artifacts']['SEED-OWNERS.json.gz']['semantic_sha256'], ( + 'Seed differs; use the default frozen-seed replay, or the recorded NumPy/SciPy versions for discovery replay.' + ) + plan = seed_plan(parent, read(seed_dir/'OWNERS.json.gz'), sig) + plan_path = seed_dir/'PLAN-FOR-RESIZER.json' + plan_path.write_text(json.dumps(plan, indent=2)+'\n') + final_dir = args.out/'all72' + run('expand_owners.py', '--plan', plan_path, '--owners', seed_dir/'OWNERS.json.gz', + '--signature', f'jp8={provider}', '--signature', f'ck={provider}', + '--max-passes', '8', '--out', final_dir) + for name in ('OWNERS.json.gz', 'MAJORIZATION.json.gz'): + assert semantic_sha(final_dir/name) == manifest['artifacts'][name]['semantic_sha256'], (name, 'Frozen semantic digest mismatch') + kwargs = ('--local44', args.local44) if args.local44 is not None else ('--raw-word', args.raw_word) + run('audit_frozen.py', '--parent-plan', args.parent_plan, '--parent-owners', args.parent_owners, + *kwargs, '--owners', final_dir/'OWNERS.json.gz', '--majorization', final_dir/'MAJORIZATION.json.gz', + '--out', args.out/'FROZEN-AUDIT.json') + receipt = { + 'status': 'PASS_FROZEN_OWNER_AND_INTEGER_MAJORIZATION_REPLAY', + 'seed_mode': 'two_pass_hungarian_discovery_rebuilt' if args.rebuild_seed else 'included_frozen_seed', + 'parent_plan_sha256': sha(args.parent_plan), 'parent_owners_sha256': sha(args.parent_owners), + 'owners_semantic_sha256': semantic_sha(final_dir/'OWNERS.json.gz'), + 'owners_gzip_sha256': sha(final_dir/'OWNERS.json.gz'), + 'majorization_semantic_sha256': semantic_sha(final_dir/'MAJORIZATION.json.gz'), + 'global_profile': read(final_dir/'PROFILE.json'), + 'scope': 'Exact hosting nomination and callwise fixed-point replay; full supplier admission is separate.', + } + (args.out/'REPRODUCTION.json').write_text(json.dumps(receipt, indent=2)+'\n') + print(json.dumps(receipt, indent=2)) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/reuse_owners.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/reuse_owners.py new file mode 100644 index 0000000000..234b831790 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/hosting/reuse_owners.py @@ -0,0 +1,230 @@ +"""Deterministic existing-family owner reuse and optional callwise matching. + +The output is a nomination, requiring the ordinary independent owner, phase, +finite-invoice, and exact-moment admission. No MILP or new owner family is used. +""" +from collections import Counter, defaultdict +from pathlib import Path +import argparse +import copy +import gzip +import hashlib +import json +import math +import time + + +def read(path): + raw=Path(path).read_bytes() + return json.loads(gzip.decompress(raw) if str(path).endswith('.gz') else raw) + + +def packed(obj):return json.dumps(obj,sort_keys=True,separators=(',',':')).encode() +def sha(path):return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def signature(path): + path=Path(path) + if path.is_dir(): + w=read(path/'CANONICAL-WORD.json.gz');V,R=w['v'],w['R'] + widths=[len(w['frames'][w['final'][2*V+h]])-len(w['frames'][w['start'][2*V+h]]) for h in range(R)] + programs=read(path/'LOCAL-PROGRAMS.json.gz') + profiles=[Counter(e[-1] for e in programs[o] if e[0] in ('climb','center')) for o in ('forward','backward')] + assert profiles[0]==profiles[1] + assert profiles[0]=={int(r):n for r,n in w['local_profile'].items()} + return {'widths':widths,'profile':dict(profiles[0]),'source':str(path), + 'canonical_sha256':sha(path/'CANONICAL-WORD.json.gz'), + 'program_sha256':sha(path/'LOCAL-PROGRAMS.json.gz')} + w=read(path) + if 'report' in w: + V,R=w['report']['v'],w['report']['R'] + widths=[len(w.get('helper_final',{}).get(str(2*V+h),range(9)))-len(w.get('start_extra',{}).get(str(2*V+h),[])) for h in range(R)] + profile={int(r):n for r,n in w['report']['local_profile'].items()} + else: + widths=w['widths'];profile={int(r):n for r,n in w['profile'].items()} + return {'widths':widths,'profile':profile,'source':str(path),'source_sha256':sha(path)} + + +def phi(rank,b,M):return rank*math.expm1(b*math.log(M/rank)) if rank else 0. + + +def rate(profile,deficit,M): + lo,hi=0.,.02 + for _ in range(58): + mid=(lo+hi)/2 + if sum(n*phi(r,mid,M) for r,n in profile.items())oldroles[i]['width']] + if failures: + # Keep this call's old widths provisionally; shrunk calls leave + # slack on their original owner families. A subsequent exact + # bipartite matching may use that slack for this call. + pending.append(call) + for i in ids:assigned_h[i]=oldroles[i]['helper'];assigned_w[i]=oldroles[i]['width'] + else: + for h,i in zip(helpers,slots):assigned_h[i]=h;assigned_w[i]=newwidths[call][h] + dominance[str(call)]={'old_total':sum(oldwidths[call]),'new_total':sum(newwidths[call]),'sorted_termwise_dominance':not failures,'failed_positions':failures} + used={g:sum(assigned_w[i] for i in ids) for g,ids in groups.items()} + assert all(used[g]<=cap[g] for g in groups) + cost_cache=[phi(r,a.price_b,M) for r in range(49)] + def current_cost():return sum(cost_cache[cap[g]-used[g]] for g in groups) + passes=[{'pass':'sorted','touched_group_idle_pressure':current_cost(),'calls_awaiting_capacity_matching':len(pending)}] + + if a.passes or pending: + import numpy as np + from scipy.optimize import linear_sum_assignment + def match_call(call,force=False): + ids=sorted(bycall[call],key=lambda i:oldroles[i]['helper']) + gs=[group_of[i] for i in ids] + assert len(set(gs))==R, 'one owner family per complete call is essential' + available=np.array([cap[g]-used[g]+assigned_w[i] for i,g in zip(ids,gs)],dtype=np.int64) + ws=np.array(newwidths[call],dtype=np.int64) + left=available[None,:]-ws[:,None] + matrix=np.full((R,R),np.inf) + valid=left>=0 + matrix[valid]=np.asarray(cost_cache)[left[valid]] + ri,ci=linear_sum_assignment(matrix) + assert len(ri)==R and np.all(np.isfinite(matrix[ri,ci])) + oldcost=sum(cost_cache[cap[g]-used[g]] for g in gs) + newcost=float(matrix[ri,ci].sum()) + if not force: + assert newcost<=oldcost+1e-10 + if oldcost-newcost<=1e-10:return False + for h,col in zip(ri,ci): + i=ids[int(col)];g=group_of[i];h=int(h);ww=int(ws[h]) + used[g]+=ww-assigned_w[i];assigned_w[i]=ww;assigned_h[i]=h + assert used[g]<=cap[g] + return True + for call in pending: + match_call(call,force=True) + dominance[str(call)]['capacity_matching_feasible']=True + if pending:passes.append({'pass':'capacity_bootstrap','touched_group_idle_pressure':current_cost(),'resolved_calls':[list(c) for c in pending]}) + for p in range(a.passes): + accepted=0;startcost=current_cost() + order=[tuple(k) for k in plan['order']] + if p%2:order.reverse() + for call in order: + accepted+=match_call(call) + finalcost=current_cost();assert finalcost<=startcost+1e-9 + passes.append({'pass':p+1,'accepted_calls':accepted,'touched_group_idle_pressure':finalcost,'decrease':startcost-finalcost}) + + # The inherited compiler requires each used coordinate set to be a + # prefix. Stable left compaction preserves every immutable owner field. + roles=copy.deepcopy(oldroles);matching=[] + for g,ids in groups.items(): + off=0 + for i in sorted(ids,key=lambda i:(oldroles[i]['offset'],oldroles[i]['time'],oldroles[i]['helper'])): + z=roles[i];z['helper']=assigned_h[i];z['width']=assigned_w[i];z['offset']=off;off+=z['width'] + matching.append({'stage':z['stage'],'replica':z['replica'],'old_helper':oldroles[i]['helper'], + 'new_helper':z['helper'],'old_width':oldroles[i]['width'],'new_width':z['width'], + 'family':z['family'],'child':z['child'],'old_offset':oldroles[i]['offset'],'new_offset':z['offset']}) + assert off==used[g]<=cap[g] + roles.sort(key=lambda z:(z['time'],z['helper'])) + newused,newfamilies=audit_roles(roles,plan,newwidths,V,R) + assert newfamilies==oldfamilies + paid=Counter();remainders=[] + for c in plan['provider_calls']:paid.update(signatures[c['provider']]['profile']) + idle=Counter() + for key,(capacity,window) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(V): + occupied=len(newused[rep,ch,port]);left=capacity-occupied + if left: + family=rep*(8*V)+(2*plan['pairs'][str(ch)]+plan['sides'][str(ch)])*V+port + remainders.append({'child':ch,'port':port,'replica':rep,'replicas':1,'family':family, + 'rank':left,'hosted':occupied,'pending_offset':occupied}) + idle[left]+=1 + paid.update(idle);mass=sum(r*n for r,n in paid.items()) + assert M*plan['live']-mass==plan['deficit']==2560 + assert M*M>2*max(paid)**2 + oldprofile={int(r):n for r,n in plan['profile'].items()} + ownerraw=packed(roles);gz=bytearray(gzip.compress(ownerraw,mtime=0));gz[9]=255 + (a.out/'OWNERS.json.gz').write_bytes(bytes(gz)) + (a.out/'MATCHING.json.gz').write_bytes(gzip.compress(packed(matching),mtime=0)) + (a.out/'REMAINDERS.json').write_text(json.dumps(remainders,indent=2)+'\n') + profile=dict(sorted(paid.items())) + (a.out/'PROFILE.json').write_text(json.dumps(profile,indent=2)+'\n') + owner_fields={'profile':profile, + 'per_call_widths':[{'stage':s,'replica':r,'widths':newwidths[s,r]} for s,r in plan['order']], + 'assignment_sha256':hashlib.sha256(ownerraw).hexdigest(), + 'assignment_sha256_semantics':'SHA256 of sorted-key compact uncompressed OWNERS array', + 'source_owners_sha256':sha(a.owners), + 'provider_signatures':signatures} + (a.out/'PLAN-OWNER-FIELDS.json').write_text(json.dumps(owner_fields,indent=2)+'\n') + rec={'status':'PASS_OWNER_REUSE_NOMINATION_COMBINATORICS_NOT_FULL_SUPPLIER_ADMISSION', + 'source_plan':str(a.plan),'source_plan_sha256':sha(a.plan),'source_owners_sha256':sha(a.owners), + 'owners_sha256':sha(a.out/'OWNERS.json.gz'),'unchanged_owner_family_sets':True, + 'unchanged_call_order_and_windows':True,'all_footprints_are_disjoint_compacted_prefixes':True, + 'local_signatures':signatures,'sorted_initial_dominance':dominance,'matching_passes':passes, + 'roles':len(roles),'calls':len(calls),'remainder_children':len(remainders),'remainder_profile':dict(sorted(idle.items())), + 'global_profile':profile,'rank_mass':mass,'deficit':2560,'maxchild':max(paid), + 'source_floating_screen_b':rate(oldprofile,2560,M), + 'candidate_floating_screen_b':rate(profile,2560,M), + 'seconds':time.monotonic()-beg, + 'remaining_admission':'Bind freshly verified provider artifacts and their hashes; regenerate the global template, actual 73-column sigmas and remainder axes with the existing emitter; run independent owner/frame audit, finite invoice, and exact moment/outer assembly.'} + (a.out/'OWNER-REUSE.json').write_text(json.dumps(rec,indent=2)+'\n') + print(json.dumps({k:rec[k] for k in ('status','roles','matching_passes','remainder_profile','rank_mass','source_floating_screen_b','candidate_floating_screen_b','seconds')},indent=2),flush=True) + + +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/CENTRE-GUARD-REVIEW.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/CENTRE-GUARD-REVIEW.md new file mode 100644 index 0000000000..6c62bd070e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/CENTRE-GUARD-REVIEW.md @@ -0,0 +1,79 @@ +# Independent review of the centre and admission interfaces + +**Finding:** the replacement of old local centre-carrier IDs by equality of the +eight ordered centre-frame bases preserves the inherited global contract. It +must be used together with the complete local scalar, frame, phase and wrapper +admission. No mathematical admission guard was found to have been removed. + +## Why source carriers may supply centres + +The transported gauge44 centre carriers are +`[92, 57, 81, 224, 11, 240, 9, 256]`. Five are source registers and three are +helper registers. All 112 transported port labels and all eight ordered +rank-eight centre-frame bases agree exactly with the retained parent. The +optional `--main` check in `audit_local.py` independently verifies that boundary +against a byte-pinned parent canonical word. + +The actual forward local program copies the current row of `L_r` into private +`C_k` at their common frame `F_k`. It then descends `C_k` from `F_k` to frame +zero, scatters to the targets, and clears `C_k`. The backward program performs +the corresponding reversed ascent and scatter. This construction depends on +the copied row, its frame and the exact local program, rather than on a +requirement that `r` be in the helper-ID interval. The source itself is not +cleared or treated as private work. + +The independently checked local contract retains every required obligation: +all 716 input columns in both orientations; the forward and backward shear +identities; arbitrary initial helper dirt; scalar/COPY common-frame legality; +centre lifetimes and nested steps; exact native phase identities; endpoint +and row/column cone conditions; and residual wrappers before and after every +relevant touch. Its finite invoice recounts the actual operations. + +The global controller addresses private centres by `k`, while the source or +helper `L_r` is mapped through the complete invocation's ordinary owner array. +The owner audit retains pairwise distinct owners for all active source, target +and helper roles. A helper therefore cannot borrow the family of an active +source centre. The private-centre namespace is disjoint from those owners and +the local program clears it. Each whole invocation finishes before another +begins, so no new interleaving or family lifetime assumption is introduced. + +## Admission guards and single-provider controls + +An AST comparison with PR635 found all **91 assertions in `code/assemble.py` +identical, in the same traversal order**, including constants. This includes +the unchanged PR543 bit input, deficit and surcharge, every finite-invoice +guard, both conservative and native complex moment checks, and the strict +outer assembly and its controls. The following files retain the reviewed PR635 code (the packaged +`bind_providers_portable.py` only trims trailing whitespace): `invoice_allcold.py` (67 assertions), +`bind_providers_portable.py` (22), `generated_identity.py` (4), and `witness.py` +(3). `review_guards.py` reproduces the assertion comparison and records the +file hashes. + +The controller still checks the complete serialized provider registry, +per-call program and dispatch, native phase and wrapper bindings, helper +widths, owner uniqueness, actual busy-family windows, spectator orthogonality, +and literal idle remainders. The single-provider branch replaces partner +substitutions by direct invalid-ID, program, width and hash mutations. Only +four assembly mutation scenarios requiring a second registered provider are +inapplicable. Their removal does not remove any admission predicate. Direct +forged program/phase tests, width-order and width-inventory tests, and +selected-call/order tests remain. + +## Price and bit headroom + +The frozen all72 profile gives the native complex root bracket +`(0.001652208994368411824947, 0.001652208994368411824948)` and +`kappa = 0.001649483702558979`. Both independent rational engines certify the +two signs. The seven-step outer driver passes all 47 strict constraints and +rejects its four standard mutations. The conservative complex price passes +separately at `kappa = 0.001649483699681650`. + +The achieved complex rate is below PR543's retained bit rate +`0.001653826988146798944268`. Using eumemic's independently reviewed PR555 bit +rate `0.001733052823330162099157` gives exactly the same attained kappa. PR543 +therefore remains the cited supplier for this delta; no bit improvement is +claimed here and no PR555 implementation is bundled. + +These receipts supplement the package's complete native, owner, phase and +finite-invoice replay. The inherited all-size realization and analytic +transfer assumptions remain conditional. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json new file mode 100644 index 0000000000..771faa86a7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE-COLD44-INDEPENDENT-AUDIT.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "78c7aadacb6eec2eeecc124ca236e5bcfdba6a52b30c2971aaa596d1d119b290", + "compressed_sha256": "3ef4e74e81e2f4621fc95272918ac7b8bb8858df0baa16cc6d91424d55aead9e", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 492, + "entering": 204, + "lowends": 78, + "coldends": 44, + "compensation_gates": 7348, + "local_profile": { + "1": 2514, + "2": 404, + "3": 448, + "4": 160, + "5": 56, + "8": 8 + }, + "width_inventory": { + "4": 52, + "5": 48, + "7": 34, + "8": 114, + "9": 244 + }, + "checked_columns": 716, + "elapsed_seconds": 3.147683588000291, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json new file mode 100644 index 0000000000..e2df1dcca8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE44-GLOBAL-GUARD-REVIEW.json @@ -0,0 +1,47 @@ +{ + "status": "PASS_PR635_ADMISSION_ASSERTION_PRESERVATION", + "files": [ + { + "file": "code/assemble.py", + "baseline_sha256": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "new_sha256": "7ac28118d69416e4fb67b61216285fb0823310b7635ce1b9025aa3f10119ef6a", + "byte_identical": false, + "assert_count": 91, + "all_assertions_identical_in_order": true + }, + { + "file": "code/invoice_allcold.py", + "baseline_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "new_sha256": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "byte_identical": true, + "assert_count": 67, + "all_assertions_identical_in_order": true + }, + { + "file": "code/bind_providers_portable.py", + "baseline_sha256": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "new_sha256": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "byte_identical": true, + "assert_count": 22, + "all_assertions_identical_in_order": true + }, + { + "file": "code/generated_identity.py", + "baseline_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "new_sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "byte_identical": true, + "assert_count": 4, + "all_assertions_identical_in_order": true + }, + { + "file": "code/witness.py", + "baseline_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "new_sha256": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "byte_identical": true, + "assert_count": 3, + "all_assertions_identical_in_order": true + } + ], + "centre_interface_review": "CENTRE-GUARD-REVIEW.md", + "scope": "Exact syntax preservation for all admission assertions in these five files. The changed emitter/controller centre boundary and single-provider controls require the separate semantic review; assertion counts alone do not prove them." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE44-INDEPENDENT-PRICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE44-INDEPENDENT-PRICE.json new file mode 100644 index 0000000000..7aa86180dd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/GAUGE44-INDEPENDENT-PRICE.json @@ -0,0 +1,156 @@ +{ + "status": "PASS_FROZEN_PROFILE_TWO_EXACT_ENGINE_AND_OUTER47_CROSSCHECK", + "profile_input_file": "PLAN.json", + "profile_input_sha256": "7b3122026e82b9d9e964d2a50c7bffdc976ae3dfea64bb98b2fdad5cfbdbaa20", + "global_profile": { + "1": 174763, + "2": 30105, + "3": 30275, + "4": 12240, + "5": 4896, + "7": 54, + "8": 576, + "16": 23, + "48": 2419 + }, + "live": 7168, + "m": 73, + "rank_mass": 520704, + "deficit": 2560, + "prices": { + "native": { + "root": { + "lower": "0.001674185476674086429846", + "upper": "0.001674185476674086429847", + "lower_endpoint_residual_upper": "-9.258737006004892346173061244464039982798397391664878463422077941068021E-25", + "upper_endpoint_residual_lower": "2.005290772036567694936493754533147163786510359586083088453102073919377E-24", + "strict_rational_signs": true + }, + "exact_moments": [ + { + "endpoint": "837092738337043214923/500000000000000000000000", + "accept": true, + "mercator_residual": [ + "-24961505588706589063536270371864708160498115/26959946667150639794667015087019630673637144422540572481103610249216", + "-24961505588706589063536270371864708160498113/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "-462937/500000000000000000000000000000", + "-925873/1000000000000000000000000000000" + ] + }, + { + "endpoint": "1674185476674086429847/1000000000000000000000000", + "accept": false, + "mercator_residual": [ + "54062532266235196619370246291034158858524675/26959946667150639794667015087019630673637144422540572481103610249216", + "54062532266235196619370246291034158858524677/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "200529/100000000000000000000000000000", + "2005291/1000000000000000000000000000000" + ] + } + ], + "outer_with_bit": { + "complex_b": "837092738337043214923/500000000000000000000000", + "bit_c": "1733427039589844234749/1000000000000000000000000", + "kappa": "835693632195073/500000000000000000", + "kappa_decimal": "0.001671387264390146", + "binding": "complex", + "strict_constraints_passed": 47, + "controls_rejected": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ] + } + }, + "conservative": { + "root": { + "lower": "0.001674185473814575474867", + "upper": "0.001674185473814575474868", + "lower_endpoint_residual_upper": "-4.932703074050864500363221905991238131757959051186123070698964701314504E-25", + "upper_endpoint_residual_lower": "2.437894165237372647986425295760776771093048289170590753978317997095726E-24", + "strict_rational_signs": true + }, + "exact_moments": [ + { + "endpoint": "1674185473814575474867/1000000000000000000000000", + "accept": true, + "mercator_residual": [ + "-6649270590065065997663222052892326679295837/13479973333575319897333507543509815336818572211270286240551805124608", + "-1662317647516266499415805513223081669823959/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two_residual": [ + "-246635539906040992121/500000000000000000000000000000000000000000000", + "-2466350399060409921139/5000000000000000000000000000000000000000000000" + ] + }, + { + "endpoint": "418546368453643868717/250000000000000000000000", + "accept": false, + "mercator_residual": [ + "65725496674957295861389862879254608557678601/26959946667150639794667015087019630673637144422540572481103610249216", + "65725496674957295861389862879254608557678603/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "12189469601119396732213/5000000000000000000000000000000000000000000000", + "24378949202238793464567/10000000000000000000000000000000000000000000000" + ] + } + ], + "outer_with_bit": { + "complex_b": "1674185473814575474867/1000000000000000000000000", + "bit_c": "1733427039589844234749/1000000000000000000000000", + "kappa": "835693630770093/500000000000000000", + "kappa_decimal": "0.001671387261540186", + "binding": "complex", + "strict_constraints_passed": 47, + "controls_rejected": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ] + } + } + }, + "bit_supplier_pr": 589, + "bit_deficit": 10272, + "bit_moments_with_surcharge": [ + { + "endpoint": "1733427039589844234749/1000000000000000000000000", + "accept": true, + "mercator_residual": [ + "-43100600330766044577088869872467188970742291/26959946667150639794667015087019630673637144422540572481103610249216", + "-43100600330766044577088869872467188970742289/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "-799345163337715793503/500000000000000000000000000000000000000000000", + "-3197378653350863173989/2000000000000000000000000000000000000000000000" + ] + }, + { + "endpoint": "6933708158359376939/4000000000000000000000", + "accept": false, + "mercator_residual": [ + "22502934905675809315035333485365686073718547/13479973333575319897333507543509815336818572211270286240551805124608", + "5625733726418952328758833371341421518429637/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two_residual": [ + "8346798366759439729359/5000000000000000000000000000000000000000000000", + "16693606733518879458833/10000000000000000000000000000000000000000000000" + ] + } + ], + "gain_over_pr635_percent": "2.14795693544613460937516788041147829054201996498013663108098185775358537919", + "input_sha256": { + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4" + }, + "scope": "Independent arithmetic for the exact nominated all72 profile. Complete local, controller and finite invoice admission are separately replayed by the package driver; this receipt does not replace them. The cited PR589 bit supplier is unchanged and its exceptional-residue surcharge is retained. Any alternative c is only a headroom comparison." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/README.md new file mode 100644 index 0000000000..f97dcf81b1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/README.md @@ -0,0 +1,43 @@ +# Independent checks + +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0, under the +package license. The scalar/frame audit imports no generator or supplier +checker. Pricing uses the pinned inherited rational engines and the retained +PR635 outer formula, with their original notices preserved in the main +dependency tree. + +From the delta package directory, using the pinned checkouts and a rebuilt +word: + +```sh +python independent/audit_local.py \ + --word /path/to/rebuild/cold44/FULL-WORD.json.gz \ + --main /path/to/main \ + --output /path/to/output/LOCAL-AUDIT.json + +python independent/price_profile.py \ + --main /path/to/main \ + --output /path/to/output/PRICE.json + +python independent/review_guards.py \ + --pr635 /path/to/pr635 \ + --output /path/to/output/GUARD-REVIEW.json +``` + +`audit_local.py` can run without `--main`; including it also verifies the +transported centre-frame and port boundary against the pinned parent. Its +receipt authenticates the supplied word by its content SHA256, independent +of its location. `price_profile.py` defaults to the package's `data/PLAN.json`; +`--profile` accepts another explicit profile for arithmetic only. The bit side is the cited merged PR589 supplier +(`inputs/PR589-EXPECTED.json`, git blob `e293ddc5…`); its rank-mass deficit +`T(2Kv - L*cst) = 32*(8*111 - 9*63) = 10272` is re-derived independently of +`code/assemble.py`, and the outer receipt key is `outer_with_bit`. The retained +`GAUGE44-INDEPENDENT-PRICE.json` is #645/PR543 historical evidence unless regenerated. The optional +`--headroom-c 0.001733052823330162099157` reproduces the unchanged-kappa +comparison with the reviewed PR555 rate without importing a second supplier. + +The retained receipts are `GAUGE-COLD44-INDEPENDENT-AUDIT.json`, +`GAUGE44-INDEPENDENT-PRICE.json`, and `GAUGE44-GLOBAL-GUARD-REVIEW.json`. +[CENTRE-GUARD-REVIEW.md](CENTRE-GUARD-REVIEW.md) gives the semantic argument +behind the changed centre boundary and the single-provider control branch. +The main package driver performs the separate complete global admission. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/audit_local.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/audit_local.py new file mode 100644 index 0000000000..4744d8783c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/audit_local.py @@ -0,0 +1,171 @@ +"""Independent exact scalar/frame audit of the changed forward supplier. + +This does not import a generator, builder, stored compensation, or price. +All claimed endpoint matrices are derived from the input word's gates. +Optional --main checks the transported boundary against the pinned parent. +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. +""" +import argparse,gzip,json,hashlib,time +from pathlib import Path +from fractions import Fraction as F +from collections import Counter + +def require(x,label): + if not x:raise RuntimeError(label) + +def basis(vs): + piv={} + for a in vs: + while a: + bit=a.bit_length()-1 + if bit in piv:a^=piv[bit] + else: + piv[bit]=a;break + for k in sorted(piv): + for j in piv: + if j>k and piv[j]>>k&1:piv[j]^=piv[k] + return tuple(piv[k] for k in sorted(piv,reverse=True)) + +def contained(a,b):return basis(a+b)==b + +def registers(e):return e[1:3] if e[0]=='add' else e[1:2] + +def apply(e,rows,dual=False): + if e[0]=='add': + t,s=e[1:3];q=F(e[3],e[4]);require(t!=s,'self add') + if dual:t,s,q=s,t,-q + dst=rows[t] + for k,x in list(rows[s].items()): + a=dst.get(k,F(0))+q*x + if a:dst[k]=a + else:dst.pop(k,None) + elif e[0]=='scale': + t=e[1];q=F(e[2],e[3]);require(q!=0,'zero scale') + if dual:q=1/q + rows[t]={k:q*x for k,x in rows[t].items()} + else:raise RuntimeError('unknown scalar primitive') + +def invert(e): + r=list(e) + if r[0]=='add':r[3]=-r[3] + else:r[2],r[3]=r[3],r[2] + return r + +def check_parent_interface(word,main): + # Read only the retained boundary data. No builder or local checker is imported. + relative="research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz" + path=main/relative;raw=path.read_bytes() + require(hashlib.sha256(raw).hexdigest()=="66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844",'parent canonical input pin') + parent=json.loads(gzip.decompress(raw)) + tau=lambda x:x^(43 if (x&43).bit_count()%2 else 0) + ports=parent['ports'];v=word['report']['v'] + require(len(ports)==len(set(ports))==v,'parent port count') + require(set(map(tau,word['ports']))==set(ports),'transported source/target ports') + moved={i:ports.index(tau(p)) for i,p in enumerate(word['ports'])} + centers=[moved.get(r,r) for r in word['centers']] + actual=[list(basis([tau(x) for x in frame])) for frame in word['center_frames']] + expected=[parent['frames'][f] for f in parent['center_frames']] + require(len(centers)==len(set(centers))==len(actual)==8,'eight distinct centre carriers') + require(actual==expected and all(len(f)==8 for f in actual),'ordered centre frame interface') + return dict(parent_path=relative,parent_file_sha256=hashlib.sha256(raw).hexdigest(), + transport_tau=43,ordered_frame_bases_match=True,all_ports_match=True, + transported_centers=centers,source_centers=[r for r in centers if r=2*v} + for e in w['precondition']:apply(e,dirt) + compensation=[['add',y,k,-a.numerator,a.denominator,[]] for y in range(v,2*v) for k,a in sorted(dirt[y].items())] + entering=set(map(int,w.get('start_extra',{})));lowends=set(map(int,w.get('helper_final',{}))) + coldends=lowends-entering + require(not any(e[2] in entering for e in compensation),'nonzero entrance response') + require(not any(r in entering|coldends for e in w['precondition']+compensation for r in registers(e)), 'pre-wrapper touch of residual helper') + require(all(e[-1]==[] for e in w['precondition']+compensation),'nonzero frame precondition') + early=w.get('early_cleanup',[]);earlyids={i for i,U in early} + require(len(earlyids)==len(early),'duplicate early cleanup gate') + tail=[w['cleanup'][i][:-1]+[U] for i,U in early] + cleanup=[e for i,e in enumerate(w['cleanup']) if i not in earlyids] + prefix=w['precondition']+compensation+main + program=prefix+tail+cleanup + for dual in (False,True): + actual=ident() + for e in program:apply(e,actual,dual) + expected=ident() + for t in range(v):expected[t if dual else v+t][v+t if dual else t]=F(-1 if dual else 1) + bad=[i for i in range(n) if actual[i]!=expected[i]] + require(not bad,'all-column endpoint failure '+str((dual,bad[:8]))) + print('endpoint', 'dual' if dual else 'forward','PASS',flush=True) + full=basis([1< 2*max(H)**2, 'halving guard') + rows = [] + for z, accept in [(lower, True), (lower+Q(1, 10**24), False)]: + l, u = M.moment(H, m, W, z, bad) + ll, uu = B.moment(m, W, list(H.items()), z) + if bad: + fl, fu = B.moment(m, W, [(1, 32*m*m*sum(H.values()))], z) + ll, uu = ll+fl/10**16, uu+fu/10**16 + require((u < 1 and uu < 1) if accept else (l > 1 and ll > 1), 'two exact moment signs') + rows.append(dict(endpoint=str(z), accept=accept, + mercator_residual=[str(l-1), str(u-1)], + base_two_residual=[str(ll-1), str(uu-1)])) + return rows + + +def outer47(c, b, engine): + eta = beta = Q(1, 10**24) + s = min(c, (1-beta)*b)-Q(1, 10**27) + require(0 < s < c and s < (1-beta)*b, 'strict common saving') + a = Q(384599, 10**10) + for _ in range(7): + old = a + a = (1-s)*s+s*old + gap = min(s-a, 1-a-s, 1-a-s*(1-old), 1-s) + require(old < a < s < 1-a and gap > 0, 'bootstrap gap') + ceil = lambda x: -(-x.numerator//x.denominator) + cut = max(ceil(36/gap**2), ceil(2*(4+512)/gap)) + require(cut*gap**2 >= 36 and cut*gap >= 2*(4+512), 'finite bootstrap cutoff') + q = a*(1-2*eta) + margin = (1-eta)*q/(1+q) + ticks = margin*10**18 + k = Q((ticks.numerator-1)//ticks.denominator, 10**18) + bridge = {'semantic': {'C0': {'base': 2, 'exponent': 210000}, 'strict_literal_gap': 1}, + 'rows': {'degree_gap': Q(10**6)-Q(51*20161, 25)}} + result = engine.assembly(a, b, bridge, k, eta=eta, beta=beta) + require(len(result['strict_constraints']) == 47, '47 outer constraints') + require(all(x > 0 for x in result['strict_constraints'].values()), 'strict outer constraints') + rejected = [] + for name, kk, ee, be in [('next_grid', k+Q(1, 10**18), eta, beta), + ('zero_eta', k, Q(0), beta), ('zero_beta', k, eta, Q(0)), + ('unit_beta', k, eta, Q(1))]: + try: + engine.assembly(a, b, bridge, kk, eta=ee, beta=be) + except AssertionError: + rejected.append(name) + else: + raise RuntimeError('accepted negative control: '+name) + return dict(complex_b=str(b), bit_c=str(c), kappa=str(k), kappa_decimal=decimal(k), + binding='bit' if c < (1-beta)*b else 'complex', + strict_constraints_passed=47, controls_rejected=rejected) + + +def main(): + require(__debug__, 'Do not use python -O: the retained outer engine requires assertions') + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--main', type=Path, required=True, help='Pinned main checkout') + parser.add_argument('--profile', type=Path, default=HERE.parent/'data/PLAN.json', + help='Raw profile or a JSON object containing profile/global_profile') + parser.add_argument('--output', type=Path, required=True) + parser.add_argument('--headroom-c', help='Optional alternative bit saving, for comparison only') + args = parser.parse_args() + inputs = json.loads((HERE.parent/'data/UPSTREAM-PINS.json').read_text()) + selected = [SOURCE/'engines'/(n+'.py') for n in ('moment', 'base_two_moment', 'outer')] + for relative in selected: + require(sha(args.main/relative) == inputs[relative.as_posix()], 'pinned input '+str(relative)) + M, B, A = [load(args.main/SOURCE/'engines', n) for n in ('moment', 'base_two_moment', 'outer')] + supplied = json.loads(args.profile.read_text()) + H = {int(r): n for r, n in supplied.get('profile', supplied.get('global_profile', supplied)).items()} + bit_data = BIT_PATH.read_bytes() + require(hashlib.sha1(b'blob '+str(len(bit_data)).encode()+b'\0'+bit_data).hexdigest() == BIT_BLOB, 'PR589 blob pin') + record = json.loads(bit_data) + bit = record['nine'] + require('nine-stage' in bit['pipeline'] and '32 replicas' in bit['pipeline'], 'nine-stage bit record') + bit_deficit = pr589_deficit(record['word'], bit['bit']['live']) + require(sum(int(r)*n for r, n in bit['profile'].items()) == bit['bit']['rank_mass'], 'bit rank mass') + c = Q(bit['bit_lower']) + bit_checks = moment_checks(M, B, {int(r): n for r, n in bit['profile'].items()}, + 64, bit['bit']['live'], c, bit_deficit, True) + prices = {} + for mode, bad in [('native', False), ('conservative', True)]: + root = M.certify(H, 73, 7168, bad) + root = {key: root[key] for key in ('lower', 'upper', 'lower_endpoint_residual_upper', + 'upper_endpoint_residual_lower', 'strict_rational_signs')} + b = Q(root['lower']) + row = dict(root=root, exact_moments=moment_checks(M, B, H, 73, 7168, b, 2560, bad), + outer_with_bit=outer47(c, b, A)) + if args.headroom_c: + alternate = outer47(Q(args.headroom_c), b, A) + require(alternate['kappa'] == row['outer_with_bit']['kappa'], 'headroom comparison changed kappa') + row.update(outer_with_alternative_bit_rate=alternate, same_kappa_with_either_bit_rate=True) + prices[mode] = row + native_k = Q(prices['native']['outer_with_bit']['kappa']) + result = dict(status='PASS_FROZEN_PROFILE_TWO_EXACT_ENGINE_AND_OUTER47_CROSSCHECK', + profile_input_file=args.profile.name, profile_input_sha256=sha(args.profile), + global_profile=H, live=7168, m=73, rank_mass=sum(r*n for r, n in H.items()), deficit=2560, + prices=prices, bit_supplier_pr=589, bit_deficit=bit_deficit, bit_moments_with_surcharge=bit_checks, + gain_over_pr635_percent=decimal(100*(native_k/Q('0.001636241501576388')-1)), + input_sha256={**{relative.as_posix(): sha(args.main/relative) for relative in selected}, 'package:inputs/PR589-EXPECTED.json': sha(BIT_PATH)}, + scope='Independent arithmetic for the exact nominated all72 profile. Complete local, controller and finite invoice admission are separately replayed by the package driver; this receipt does not replace them. The cited PR589 bit supplier is unchanged and its exceptional-residue surcharge is retained. Any alternative c is only a headroom comparison.') + args.output.write_text(json.dumps(result, indent=2)+'\n') + print(result['status'], prices['native']['outer_with_bit']['kappa_decimal'], result['gain_over_pr635_percent']) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/review_guards.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/review_guards.py new file mode 100644 index 0000000000..086dcf3d11 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/independent/review_guards.py @@ -0,0 +1,46 @@ +"""Reproduce the assertion-preservation part of the independent guard review. + +This compares complete assertion ASTs in their traversal order. It supplements +the semantic centre-interface argument in CENTRE-GUARD-REVIEW.md. +Prepared for icekylinx with OpenAI GPT-6 Astra assistance. Apache-2.0. +""" +import argparse +import ast +import hashlib +import json +from pathlib import Path + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--pr635', type=Path, required=True, help='Pinned PR635 checkout or supplier directory') + parser.add_argument('--delta', type=Path, default=Path(__file__).resolve().parents[1]) + parser.add_argument('--output', type=Path, required=True) + args = parser.parse_args() + old = args.pr635 + if not (old/'code/assemble.py').exists(): + old = old/'research/complex-571-cold14-st2' + names = ['assemble.py', 'invoice_allcold.py', 'bind_providers_portable.py', + 'generated_identity.py', 'witness.py'] + records = [] + for name in names: + a, b = (old/'code'/name).read_bytes(), (args.delta/'code'/name).read_bytes() + assertions = lambda data: [ast.dump(n, include_attributes=False) for n in ast.walk(ast.parse(data)) + if isinstance(n, ast.Assert)] + aa, bb = assertions(a), assertions(b) + if aa != bb: + raise RuntimeError('Assertion sequence changed: '+name) + records.append(dict(file='code/'+name, baseline_sha256=hashlib.sha256(a).hexdigest(), + new_sha256=hashlib.sha256(b).hexdigest(), byte_identical=a == b, + assert_count=len(aa), all_assertions_identical_in_order=True)) + if records[0]['assert_count'] != 91: + raise RuntimeError('The expected PR635 assembly has 91 assertions') + result = dict(status='PASS_PR635_ADMISSION_ASSERTION_PRESERVATION', files=records, + centre_interface_review='CENTRE-GUARD-REVIEW.md', + scope='Exact syntax preservation for all admission assertions in these five files. The changed emitter/controller centre boundary and single-provider controls require the separate semantic review; assertion counts alone do not prove them.') + args.output.write_text(json.dumps(result, indent=2)+'\n') + print(result['status'], [r['assert_count'] for r in records]) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/inputs/PR589-EXPECTED.json b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/inputs/PR589-EXPECTED.json new file mode 100644 index 0000000000..e293ddc557 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/inputs/PR589-EXPECTED.json @@ -0,0 +1,222 @@ +{ + "word": { + "file": "tune/bitE8mut-p111-tuned.json.gz", + "file_sha256": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "content_sha256": "5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b", + "v": 111, + "R": 439, + "punctured": [ + 10, + 15, + 51, + 53, + 56, + 66, + 72, + 89, + 111 + ], + "retained_totals": 9, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ], + "decoder_constant": 63, + "gates": { + "D": 111, + "A": 2075, + "B": 712, + "C": 2574 + }, + "local_histogram": { + "1": 1323, + "2": 1342, + "3": 79, + "4": 44, + "5": 102, + "6": 11, + "7": 19 + }, + "legality": { + "records": 27234, + "common_frame_ADDs": 24305, + "rank_mass": 5129 + }, + "five_stage_columns": 883, + "five_stage_payload_bits": 93, + "nine_stage_columns": 1327, + "nine_stage_payload_bits": 93, + "eleven_stage_columns": 1549, + "eleven_stage_payload_bits": 93, + "base_content_sha256": "d0df3c89ae84989f4045ba1681a5e2e9fcdfa38ed0301c8abf5185537155cbe3" + }, + "interface": { + "hypotheses": { + "H1_no_target_feeds_z": true, + "H2_D_frame0_targets_from_helpers": true, + "H3_A_z_only_scatter_targets_B_split": true, + "H4_C_literal_reverse_at_full": true, + "H5_V_identity": true + }, + "conclusion": { + "U_block_form": true, + "J_identity": true, + "K_equals_D": true, + "C_is_U_inverse": true + }, + "interleaving": { + "z_gates_A": 2075, + "source_writes_A": 0, + "z_gates_B": 499, + "source_writes_B": 483, + "helper_writes_B": 16, + "sources_rewritten_B": 108, + "B_z_write_frame_dims": { + "4": 388, + "6": 111 + }, + "B_z_operand_kinds": { + "helper<-helper": 3, + "helper<-source": 13, + "source<-helper": 108, + "source<-source": 375 + }, + "B_z_operand_kinds_by_dim": { + "dim4:helper<-source": 13, + "dim4:source<-source": 375, + "dim6:helper<-helper": 3, + "dim6:source<-helper": 108 + }, + "B_z_writes_after_a_target_read_of_the_same_register": 454, + "B_target_reads_of_registers_rewritten_earlier_in_B": 111, + "target_reads_of_targets": 0, + "cleanup_gates": 2574 + } + }, + "nine": { + "pipeline": "PR #510 (PR #463 nine-stage template, 32 replicas, PR #442 hosting, PR #493 outer assembly), parameterised for v <= 120 by code/adapt9p.py", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_lower_decimal": "0.001733427039589844234749", + "profile": { + "1": 381024, + "2": 400416, + "3": 22752, + "4": 26880, + "5": 29376, + "6": 17376, + "7": 26784, + "42": 288 + }, + "bit": { + "live": 28416, + "physical": 28425, + "maxchild": 42, + "rank_mass": 1808352, + "hosted_residuals": 126432, + "bank_assignments": 0, + "prefix_bits": 177, + "charged_prefix_bits": 192, + "coefficient_bits": 177, + "two_level_coefficient_bits": 393, + "charged_two_level_coefficient_bits": 512, + "row_coefficient": 18355, + "halving_depth": 2 + }, + "kappa": { + "pr548": { + "kappa": "49718254847979/31250000000000000", + "kappa_decimal": "0.001590984155135328", + "complex_lower": "796759709641153381751/500000000000000000000000", + "binding_component": "complex" + }, + "pr544": { + "kappa": "397677800014309/250000000000000000", + "kappa_decimal": "0.001590711200057236", + "complex_lower": "31864911873350496687/20000000000000000000000", + "binding_component": "complex" + }, + "pr535": { + "kappa": "793733736881443/500000000000000000", + "kappa_decimal": "0.001587467473762886", + "complex_lower": "1589991533606044174031/1000000000000000000000000", + "binding_component": "complex" + }, + "pr531": { + "kappa": "1517760977820331/1000000000000000000", + "kappa_decimal": "0.001517760977820331", + "complex_lower": "304013615566499291631/200000000000000000000000", + "binding_component": "complex" + } + } + }, + "eleven": { + "pipeline": "PR #493 (PR #445 geometry, PR #472 emitter, audit and invoice, PR #442 hosting), parameterised by PR #545's code/adapt.py", + "bit_lower": "855475950388791987811/500000000000000000000000", + "bit_lower_decimal": "0.001710951900777583975622", + "profile": { + "1": 116424, + "2": 121648, + "3": 6952, + "4": 7424, + "5": 8976, + "6": 4520, + "7": 8776, + "56": 2600 + }, + "bit": { + "live": 8880, + "physical": 8889, + "maxchild": 56, + "rank_mass": 689304, + "hosted_residuals": 38632, + "prefix_bits": 4304, + "charged_prefix_bits": 4352, + "coefficient_bits": 4304, + "three_level_coefficient_bits": 12966, + "charged_three_level_coefficient_bits": 12992, + "row_coefficient": 19431, + "halving_depth": 3 + }, + "emitted_program_sha256": "793b6f40c9aa4b8db57fec0ac0973e16884dae28707e482ee8f7a2349a5d5a4b", + "kappa": { + "pr548": { + "kappa": "49718254847979/31250000000000000", + "kappa_decimal": "0.001590984155135328", + "complex_lower": "796759709641153381751/500000000000000000000000", + "binding_component": "complex" + }, + "pr544": { + "kappa": "397677800014309/250000000000000000", + "kappa_decimal": "0.001590711200057236", + "complex_lower": "31864911873350496687/20000000000000000000000", + "binding_component": "complex" + }, + "pr535": { + "kappa": "793733736881443/500000000000000000", + "kappa_decimal": "0.001587467473762886", + "complex_lower": "1589991533606044174031/1000000000000000000000000", + "binding_component": "complex" + }, + "pr531": { + "kappa": "1517760977820331/1000000000000000000", + "kappa_decimal": "0.001517760977820331", + "complex_lower": "304013615566499291631/200000000000000000000000", + "binding_component": "complex" + } + } + }, + "base": { + "nine_bit_lower": "1733052823330162099157/1000000000000000000000000", + "nine_bit_lower_decimal": "0.001733052823330162099157", + "eleven_bit_lower": "427652201524503168379/250000000000000000000000", + "eleven_bit_lower_decimal": "0.001710608806098012673516", + "note": "PR #555's EXPECTED.json (untuned word); the tune/ pipeline is the same, with the same frozen hosting selections" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/NOTICE.md new file mode 100644 index 0000000000..403f4afffb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/NOTICE.md @@ -0,0 +1,39 @@ +# Attribution and license + +Apache-2.0. New construction and integration: Hao Yan (@FanPUYen), 2026. +Prepared with substantial OpenAI Codex assistance, including separately tasked +AI agents for owner construction, independent mathematical/code checking and +native verification. These are not claims of independent human peer review. + +The exact local supplier is Jeremy Kothe's accepted PR799 X4 word, layered on +Chafik Boukhalfa's PR741 frame changes and PR685 owner construction. Chafik's +PR795 fixed-inventory optimality result motivated changing the replica count. +The original owner bytes, scalar program, local frame and width inventory, +native phase and wrapper implementations retain their existing authorship. + +Credit icekylinx for the source gauge and supplier/admission pipeline; +DreamingOfClouds for the PR589 bit transport and inherited cold-end work; +eumemic for the PR555 bit supplier and earlier supplier work; Rohan Arun for +the native exact-complex recurrence correction; Jeremy Diviney, jaymosley07, +and the other retained owner/allocation contributors; and the complete +PR514/PR484/PR507/PR558 controller, physical hosting and verification lineage. +This list is cumulative credit, not approval of every claim in those PRs. + +All original notices and licenses remain in the referenced source packages: + +- `research/gauge44-frames-x/{NOTICE,UPSTREAM-NOTICE}.md` +- `research/complex-sw4-frame8/PROVENANCE.md` +- `research/e8-bit-p111-tuned/tune/README.md` +- the repository `CONTRIBUTORS.md` and source-package licenses. + +The verifier copies pinned global source files into an external replay +directory and applies an explicit checked edit list. Original attribution +comments are preserved in those generated derivatives. No original source +file or historical certificate is rewritten. + +The optional ancestry-reuse coverage guard addresses the omission issue +identified by Lucas (@ljste) in PR838 and the related PR847 integration by +Chinmay (@chinmayarvind23). Its fixed inventories were read from the accepted +PR741 source; no pending implementation is imported. Charles Bethin's +concurrent PR850 strengthens the fixed-inventory owner-profile theorem and +was checked for overlap before publication; that inventory is changed here. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/build_parent.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/build_parent.py new file mode 100644 index 0000000000..bd9e28bd2d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/build_parent.py @@ -0,0 +1,281 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: Apache-2.0 +# Copyright (c) 2026 Hao Yan (@FanPUYen) +"""Lift the PR741 controller and PR799 provider plan to sixteen replicas. + +Authored with OpenAI Codex assistance. Precursor credit: the PR514/PR484/PR507 +controller lineage, PR558/PR589 admission, Chafik Boukhalfa's PR741 frames +and owner map, and Jeremy Kothe's PR799 paired-read-exchange provider. +This script changes only the global replica namespace and the nominated owner +map; it reuses the exact local programs and exact data-phase recipes. +""" +import argparse +import copy +import gzip +import hashlib +import json +from collections import Counter +from pathlib import Path + +SOURCE_PLAN_SHA256 = '5f40e7ccfca61f298539b4f41286d2a9d62caf947057f9cec82aa53f73f707fd' +SOURCE_OWNERS_SHA256 = '99d1c4caf85855c353d30f122d9efbd9e51562914facded13027f347b18a6082' + + +def require(condition, reason): + if not condition: + raise ValueError(reason) + + +def read(path): + raw = Path(path).read_bytes() + return json.loads(gzip.decompress(raw) if str(path).endswith('.gz') else raw) + + +def canonical(value): + return json.dumps(value, sort_keys=True, separators=(',', ':')).encode() + + +def portable_gzip(raw): + compressed = bytearray(gzip.compress(raw, mtime=0)) + compressed[9] = 255 # RFC1952 OS=unknown, independent of zlib/Python platform. + return bytes(compressed) + + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def content_sha(value): + return hashlib.sha256(canonical(value)).hexdigest() + + +def lift_parent(source, copies=2): + """A direct sum of bank/data stocks; erased private streams are shared. + + copies=1 is deliberately the identity, byte-for-byte after canonicalization. + The helper routes retain replica lanes 0..7 in each *separate* bank group. + No axis index is inferred from the new global replica label 8..15. + """ + require(type(copies) is int and copies in (1, 2), 'only identity or T16 lift') + t = copy.deepcopy(source) + if copies == 1: + return t + require(source['m'] == 73, 'source dimension') + require(len(source['calls']) == 72, 'source calls') + data = 8*8*112 + bank_stock = source['live'] - data + private_stock = source['physical'] - source['live'] + require((bank_stock, private_stock) == (9*504, 504+8+2), 'source namespace') + require({(c['stage'], c['replica']) for c in source['calls']} == + {(s, r) for s in range(9) for r in range(8)}, 'source coverage') + new_data = copies*data + new_live = copies*source['live'] + new_physical = new_live + private_stock + t['calls'] = [] + for c in source['calls']: + for group in range(copies): + new = copy.deepcopy(c) + new['replica'] = c['replica'] + 8*group + owners = [] + for family, route in c['owners']: + require(0 <= family < source['live'], 'owner outside live stock') + mapped = (family + data*group if family < data else + new_data + group*bank_stock + family - data) + owners.append([mapped, copy.deepcopy(route)]) + new['owners'] = owners + t['calls'].append(new) + # Every data/idle recipe is a portwise direct sum, hence only multiplicity + # changes. Its local axis labels and exact phase words stay unchanged. + for child in t['idle_children']: + require(child['replicas'] == 8, 'source idle multiplicity') + child['replicas'] *= copies + for event in t['execution_schedule']: + if 'replicas' in event: + require(event['replicas'] == list(range(8)), 'source sweep replicas') + event['replicas'] = list(range(8*copies)) + if event['kind'] == 'bank_padding_cover_sweep': + event['families'] = [new_data, new_live] + elif event['kind'] == 'translate_every_live_family': + event['families'] = [0, new_live] + event['charged_calls_per_cover'] = new_live + t['bank_padding']['families'] = [] + t['bank_padding']['children'] = [] + for group in range(copies): + for family in source['bank_padding']['families']: + t['bank_padding']['families'].append(new_data + group*bank_stock + family - data) + for child in source['bank_padding']['children']: + new = copy.deepcopy(child) + new['family'] = new_data + group*bank_stock + child['family'] - data + t['bank_padding']['children'].append(new) + t['cover_final_correction'].update(families=[0, new_live], charged_calls_per_cover=new_live) + t['private_namespace'] = { + key: [new_live + x - source['live'] for x in interval] + for key, interval in source['private_namespace'].items() + } + t.update(live=new_live, physical=new_physical, + version='t16-direct-sum-two-bank-groups-parent-v1') + t['route_semantics']['helper'] = ( + 'Two independent groups of nine dedicated banks. Group floor(replica/8) ' + 'selects the bank namespace; the stored original helper route retains ' + 'lane replica%8. All original residual/spectator axes are unchanged.') + t['loop_order'] = ( + 'For each recipe phase: the explicit calls order, then every cover class d; ' + 'each local invocation completes before the next. Each original replica ' + 'has a disjoint data and bank namespace in its group; private erased ' + 'streams are reused between completed calls.') + t['replica_lift'] = dict( + source_template_content_sha256=content_sha(source), groups=copies, + source_replicas=8, replicas=8*copies, data_stock=new_data, + bank_stock=copies*bank_stock, banks_per_stage=copies*504, + private_helpers=504, local_programs_content_sha256=content_sha(source['local_programs']), + construction='direct sum of data and dedicated banks; share only restored private streams', + phase_recipe_unchanged=True) + # Source data and helper owner routes are preserved literally in each copy. + for c in t['calls']: + group, replica = divmod(c['replica'], 8) + old = next(z for z in source['calls'] if (z['stage'], z['replica']) == (c['stage'], replica)) + require([r for f, r in c['owners']] == [r for f, r in old['owners']], 'route changed') + require(c['window'] == old['window'], 'local window changed') + require(len({f for f, r in c['owners']}) == len(c['owners']), 'per-call owner alias') + require(t['local_programs'] == source['local_programs'], 'program changed') + require(t['recipe'] == source['recipe'], 'data recipe changed') + require(len(t['bank_padding']['children']) == copies*bank_stock, 'bank padding count') + require(t['physical'] == t['live']+514, 'private namespace size') + return t + + +def expanded_schedule(parent, order): + blocks = {} + globals_ = [] + stage = None + for index, event in enumerate(parent['execution_schedule']): + if event['kind'] in ('bank_padding_cover_sweep', 'translate_every_live_family'): + globals_.append((index, event)) + continue + if event['kind'] == 'local_cover_sweep': + stage = event['stage'] + blocks[stage] = [] + require(stage is not None, 'event precedes first stage') + blocks[stage].append((index, event)) + schedule = [] + for time, (stage, replica) in enumerate(order): + for index, event in blocks[stage]: + new = copy.deepcopy(event) + new.update(source_event=index, replica=replica, replicas=[replica], time=time) + schedule.append(new) + for index, event in globals_: + schedule.append(dict(event, source_event=index)) + return schedule + + +def actual_windows(parent, order): + ranks = {c['child']: c['rank'] for c in parent['idle_children']} + stage_pair = {e['stage']: e['pair'] for e in parent['recipe'] if e['kind'] == 'local'} + last, intervals, callpos, perrep = {}, {}, {}, {} + schedule = expanded_schedule(parent, order) + for pos, event in enumerate(schedule): + if 'replica' not in event: + continue + replica = event['replica'] + perrep.setdefault(replica, []).append(event['source_event']) + if event['kind'] == 'local_cover_sweep': + last[replica, stage_pair[event['stage']]] = pos + callpos[event['time']] = pos + elif event['kind'] == 'bridge': + last[replica, event['src']] = last[replica, event['dst']] = pos + elif event['kind'] == 'idle_cover_sweep': + for child in event['child_indices']: + if child in ranks: + intervals[replica, child] = (last.get((replica, event['pair']), -1), pos) + require(all(events == list(range(30)) for events in perrep.values()), 'per-replica projection') + require([e['source_event'] for e in schedule if 'replica' not in e] == [30, 31], 'global tail') + require(set(callpos) == set(range(len(order))), 'complete schedule') + windows = {f'{replica},{child}': [ranks[child], [time for time, pos in sorted(callpos.items()) if start < pos < stop]] + for (replica, child), (start, stop) in intervals.items()} + return windows, schedule + + +def lift_plan(source, parent, owners, source_plan_sha, source_owners_sha, owners_sha): + p = copy.deepcopy(source) + require(source['T'] == 8 and len(source['order']) == 72, 'source plan dimensions') + order = [[stage, replica + 8*group] for stage, replica in source['order'] for group in range(2)] + windows, schedule = actual_windows(parent, order) + # These windows are recomputed from actual source-event touches, not copied + # from the old nomination. Their T8 restriction must recover the old plan. + rank = Counter({int(k): 2*v for k, v in source['profile'].items()}) + rank.update({48: 1, 44: -1, 3: -2, 2: 1}) + rank = +rank + p.update(status='FROZEN_EXPLICIT_T16_TWO_BANK_DIRECT_SUM_OWNER_NOMINATION', + mode='gauge44-all144-t16-idle-concentration', T=16, live=14336, + deficit=5120, profile=dict(sorted(rank.items())), order=order, windows=windows, + solver_status='explicit two-role augmenting path and two-bin recombination', gap=None, + source_plan_sha256=source_plan_sha, source_owners_sha256=source_owners_sha, + assignment_sha256=owners_sha, assignment_content_sha256=content_sha(owners)) + for field in ('provider_calls', 'per_call_widths'): + p[field] = [] + for old in source[field]: + for group in range(2): + new = copy.deepcopy(old) + new['replica'] += 8*group + if 'time' in new: + new['time'] = 2*old['time']+group + p[field].append(new) + at = {tuple(x): i for i, x in enumerate(order)} + for field in ('provider_calls', 'per_call_widths'): + p[field].sort(key=lambda c: at[c['stage'], c['replica']]) + p['replica_lift'] = dict(groups=2, source_replicas=8, replicas=16, + parent_template_content_sha256=content_sha(parent), owners_file_sha256=owners_sha, + window_semantics='strict physical source-event touch intervals, including bridges', + schedule_content_sha256=content_sha(schedule)) + require(len(owners) == 144*504, 'owner role count') + for role in owners: + require(role['time'] == at[role['stage'], role['replica']], 'role call time') + require(role['time'] in windows[f"{role['owner_replica']},{role['child']}"][1], + 'owner outside actual source-event window') + require(sum(int(k)*v for k,v in p['profile'].items()) == 73*p['live']-p['deficit'], 'rank mass') + return p, schedule + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--base', type=Path, required=True) + parser.add_argument('--source-plan', type=Path, required=True) + parser.add_argument('--source-owners', type=Path, required=True) + parser.add_argument('--owners', type=Path, required=True) + parser.add_argument('--out', type=Path, required=True) + args = parser.parse_args() + require(not args.out.exists(), 'output directory already exists') + require(sha(args.source_plan) == SOURCE_PLAN_SHA256, 'source plan byte pin') + require(sha(args.source_owners) == SOURCE_OWNERS_SHA256, 'source owners byte pin') + source_path = args.base/'split-centres/GLOBAL-TEMPLATE.json.gz' + source = read(source_path) + original_plan = read(args.source_plan) + require(lift_parent(source, 1) == source, 'T8 identity control') + require(actual_windows(source, original_plan['order'])[0] == original_plan['windows'], 'T8 source-window replay') + require(source['exact_data_phase_recipe_sha256'] == sha(args.base/'work/complex-nine-native/DATA-PHASES.json'), 'source exact data-phase binding') + parent = lift_parent(source) + owners = read(args.owners) + plan, schedule = lift_plan(original_plan, parent, owners, sha(args.source_plan), sha(args.source_owners), sha(args.owners)) + args.out.mkdir(parents=True) + (args.out/'GLOBAL-TEMPLATE.json.gz').write_bytes(portable_gzip(canonical(parent))) + (args.out/'PLAN.json').write_bytes((json.dumps(plan, indent=2)+'\n').encode('utf-8')) + receipt = dict(status='PASS_T16_DIRECT_SUM_PARENT_AND_LITERAL_SOURCE_WINDOWS', + source_template_file_sha256=sha(source_path), source_template_content_sha256=content_sha(source), + source_plan_sha256=sha(args.source_plan), source_owners_sha256=sha(args.source_owners), + owners_sha256=sha(args.owners), + parent_template_file_sha256=sha(args.out/'GLOBAL-TEMPLATE.json.gz'), + parent_template_content_sha256=content_sha(parent), plan_sha256=sha(args.out/'PLAN.json'), + T8_identity_control=True, T8_source_window_identity=True, + local_programs_identical=True, exact_data_phases_identical=True, + parent_live=parent['live'], parent_physical=parent['physical'], + bank_stock=9072, banks_per_stage=1008, private_helpers=504, + source_idle_children_charged=sum(c['replicas'] for c in parent['idle_children']), + events=len(schedule), replica_source_events=30, global_source_events=[30,31], + calls=len(plan['order']), roles=len(owners), actual_window_membership_checked=len(owners), + scope='Legal direct-sum parent namespace and actual source-event windows; full global emitter, geometry, finite invoice, and recurrence admission remain separate checks.') + (args.out/'PARENT-LIFT-RECEIPT.json').write_bytes((json.dumps(receipt, indent=2)+'\n').encode('utf-8')) + print(json.dumps(receipt, indent=2)) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/indep16.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/indep16.py new file mode 100644 index 0000000000..81e1e9fe15 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/indep16.py @@ -0,0 +1,306 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: Apache-2.0 +# Prepared for haoyan with substantial OpenAI Codex assistance. +"""Independent T16 event-window, whole-helper, chart and finite-reserve audit. + +Inputs are read-only. No owner constructor or controller auditor is imported. +--word is the canonical local supplier JSON.gz, with frame IDs and a native +INDEPENDENT-LOCAL-REPLAY.json alongside it (override with --local-replay). +--baseline-parent is the original eight-replica GLOBAL-TEMPLATE.json.gz. +Its sibling CANONICAL-WORD.json.gz supplies ports; DATA-PHASES.json defaults +to ../work/complex-nine-native/DATA-PHASES.json (override with --phases). +The PR741 and PR799/X4 suppliers share this width/owner interface. Their +local paid profiles and prefix exponents are read and recounted from the +provided canonical word and hash-bound native replay, never fixed to PR741. +--out names a JSON receipt. Checks remain enabled under python -O. +""" +import argparse +from collections import Counter, defaultdict +import gzip +import hashlib +import json +from pathlib import Path + +V, H, M, T, R = 112, 9, 73, 16, 504 +import os +EXPECTED_IDLE = {int(k): v for k, v in json.loads(os.environ['T16_EXPECTED_IDLE']).items()} +EXPECTED_WIDTHS = {int(k): v for k, v in json.loads(os.environ['T16_EXPECTED_WIDTHS']).items()} + + +def require(condition, message): + if not condition: + raise ValueError(message) + + +def read(path): + data = path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix == '.gz' else data) + + +def filehash(path): + return hashlib.sha256(path.read_bytes()).hexdigest() + + +def basis(vectors): + pivots = {} + for x in vectors: + require(type(x) is int and 0 <= x < 1 << H, 'invalid local frame vector') + while x: + bit = x.bit_length() - 1 + if bit in pivots: + x ^= pivots[bit] + else: + pivots[bit] = x + break + for bit in sorted(pivots): + for upper in pivots: + if upper > bit and pivots[upper] >> bit & 1: + pivots[upper] ^= pivots[bit] + return tuple(pivots[bit] for bit in sorted(pivots, reverse=True)) + + +def local_inventory(word, replay): + global RH + require((word['v'], word['h']) == (V, H) and 0 < word['R'] <= R, 'local supplier dimensions') + RH = word['R'] + frames = [basis(frame) for frame in word['frames']] + n = 2 * V + RH + require(len(word['start']) == len(word['final']) == n, 'local frame vector lengths') + current = [frames[f] for f in word['start']] + paid = Counter() + + def climb(register, frame): + require(basis(current[register] + frame) == frame, 'nonmonotone local frame') + jump = len(frame) - len(current[register]) + if jump: + paid[jump] += 1 + current[register] = frame + + require(not word['target_levels'], 'this audit requires the current zero-level centre interface') + for section in ('A', 'B', 'tail'): + if section == 'B': + require(all(current[t] == () for t in range(V, 2 * V)), 'target centre level') + for q, frame_id in zip(word['centers'], word['center_frames']): + require(current[q] == frames[frame_id], 'centre carrier frame') + paid[len(frames[frame_id])] += 1 + for gate in word[section]: + registers = gate[1:3] if gate[0] == 'add' else gate[1:2] + require(gate[0] in ('add', 'scale'), 'unknown scalar gate') + for register in registers: + climb(register, frames[gate[-1]]) + for register, frame_id in enumerate(word['final']): + climb(register, frames[frame_id]) + require(dict(paid) == {int(r): count for r, count in word['local_profile'].items()}, 'local paid-profile recount') + for orientation in ('forward', 'backward'): + require(dict(paid) == {int(r): count for r, count in replay['paid_profiles'][orientation].items()}, 'local replay profile binding') + widths = [len(frames[word['final'][q]]) - len(frames[word['start'][q]]) for q in range(2 * V, n)] + require(Counter(widths) == EXPECTED_WIDTHS, 'current supplier width inventory') + return widths, paid + + +def make_context(parent, phases, ports, word, replay, roles): + widths, paid = local_inventory(word, replay) + require(len(parent['calls']) == 72 and {(c['stage'], c['replica']) for c in parent['calls']} == {(s, r) for s in range(9) for r in range(8)}, 'original eight-replica baseline calls') + require(len(roles) == 9 * T * RH, 'complete helper role count') + address = {} + for role in roles: + key = (role['stage'], role['replica']) + time = role['time'] + require(time not in address or address[time] == key, 'inconsistent invocation time address') + address[time] = key + require(set(address) == set(range(9 * T)), 'contiguous invocation times') + order = [address[t] for t in range(9 * T)] + require(set(order) == {(s, r) for s in range(9) for r in range(T)}, 'stage/replica inventory') + require(all(order[2*t+1] == (order[2*t][0], order[2*t][1]+8) and order[2*t][1] < 8 for t in range(72)), 'two-copy interleaving') + rank = {child['child']: child['rank'] for child in parent['idle_children']} + source = parent['execution_schedule'] + blocks, stage = {}, None + for index, event in enumerate(source): + if event['kind'] in ('bank_padding_cover_sweep', 'translate_every_live_family'): + continue + if event['kind'] == 'local_cover_sweep': + stage = event['stage'] + blocks[stage] = [] + require(stage is not None, 'source event before first invocation') + blocks[stage].append((index, event)) + require(set(blocks) == set(range(9)), 'source stage inventory') + events = [(index, event, replica, time) for time, (stage, replica) in enumerate(order) for index, event in blocks[stage]] + projections = defaultdict(list) + for index, event, replica, time in events: + projections[replica].append(index) + require(set(projections) == set(range(T)) and all(p == list(range(30)) for p in projections.values()), 'per-replica source-event projection') + stage_pair = {e['stage']: e['pair'] for e in parent['recipe'] if e['kind'] == 'local'} + last, windows, callpos, child_pair, side = {}, {}, {}, {}, {} + bridges = 0 + for position, (_, event, replica, _) in enumerate(events): + kind = event['kind'] + if kind == 'local_cover_sweep': + stage = event['stage'] + callpos[stage, replica] = position + last[replica, stage_pair[stage]] = position + elif kind == 'bridge': + last[replica, event['src']] = last[replica, event['dst']] = position + bridges += 1 + elif kind == 'idle_cover_sweep': + for sd, child in enumerate(event['child_indices']): + if child in rank: + windows[replica, child] = (last.get((replica, event['pair']), -1), position) + child_pair[child], side[child] = event['pair'], sd + require(len(windows) == T * len(rank), 'actual window inventory') + require(len(ports) == V, 'port count') + bases = [] + for q in ports: + zero = next(i for i in range(H) if not (q >> i & 1)) + correction = q ^ (1 << zero) + axes = list(range(H)) + axes[0], axes[zero] = axes[zero], axes[0] + frame = [(1 << i) ^ (correction if correction >> i & 1 else 0) for i in axes] + [1 << i for i in range(H, M)] + require(all((x & y).bit_count() % 2 == int(i == j) for i, x in enumerate(frame) for j, y in enumerate(frame)), 'nonorthogonal owner basis') + bases.append(frame) + return dict(widths=widths, paid=paid, order=order, at={key:t for t,key in enumerate(order)}, rank=rank, + windows=windows, callpos=callpos, child_pair=child_pair, side=side, stage_pair=stage_pair, + bases=bases, phases=phases, bridges=bridges, event_count=len(events), replay=replay) + + +def check_roles(context, roles): + c = context + live, physical = T * 8 * V, T * 8 * V + 8 + R + 2 + require(len(roles) == 9 * T * RH, 'complete helper role count') + helpers, families, used = defaultdict(set), defaultdict(set), defaultdict(set) + charts, chart_cache = set(), {} + for z in roles: + s, r, helper = z['stage'], z['replica'], z['helper'] + owner, child, port = z['owner_replica'], z['child'], z['port'] + offset, width, family = z['offset'], z['width'], z['family'] + call = (s, r) + require(call in c['at'] and 0 <= helper < RH and 0 <= owner < T and 0 <= port < V, 'role coordinates') + require(z['time'] == c['at'][call], 'role invocation time') + require(width == c['widths'][helper], 'whole-helper residual width') + require(0 <= family < live, 'private-namespace collision') + require(child in c['rank'], 'unknown idle child') + require(z['copy'] == V * owner + port and family == owner * 896 + (2 * c['child_pair'][child] + c['side'][child]) * V + port, 'physical family identity') + lo, hi = c['windows'][owner, child] + require(lo < c['callpos'][call] < hi, 'strict bridge-aware idle window') + require(family // 224 != r * 4 + c['stage_pair'][s], 'helper aliases active data pair') + require(helper not in helpers[call] and family not in families[call], 'duplicate helper or family within whole invocation') + helpers[call].add(helper) + families[call].add(family) + cells = set(range(offset, offset + width)) + bin_key = (owner, child, port) + require(offset >= 0 and offset + width <= c['rank'][child] and not used[bin_key] & cells, 'overlapping or out-of-capacity slice') + used[bin_key].update(cells) + chart_key = (port, child, offset, width) + if chart_key not in chart_cache: + frame = c['bases'][port] + pending = list(map(int, c['phases']['recipes'][port]['idle_children'][child]['orthogonal_axes'])) + require(len(pending) == c['rank'][child], 'phase child rank') + occupied = [frame.index(x) for x in pending[offset:offset + width]] + spectators = [i for i in range(M) if i not in occupied][:H - width] + permutation = occupied + spectators + [i for i in range(M) if i not in occupied and i not in spectators] + require(len(occupied) == width and len(set(occupied + spectators)) == H and sorted(permutation) == list(range(M)), 'residual/spectator permutation') + require([frame[i] for i in permutation[:width]] == pending[offset:offset + width], 'pending-axis binding') + chart_cache[chart_key] = tuple(frame[i] for i in permutation) + charts.add(chart_cache[chart_key]) + require(set(helpers) == set(c['order']) and all(h == set(range(RH)) for h in helpers.values()), 'complete per-call helper inventory') + idle = Counter() + for owner, child in c['windows']: + for port in range(V): + cells = used[owner, child, port] + require(cells == set(range(len(cells))), 'gap in pending prefix') + left = c['rank'][child] - len(cells) + if left: + idle[left] += 1 + require(idle == EXPECTED_IDLE, 'nominated idle profile') + profile = Counter({rank: 9 * T * count for rank, count in c['paid'].items()}) + profile.update(idle) + mass = sum(rank * count for rank, count in profile.items()) + require(M * live - mass == 5120, 'doubled rank deficit') + require(c['bridges'] == 144, 'actual bridge count') + localbits = max(x['prefix_bits_upper'] for x in c['replay']['local'].values()) + prefix = localbits + (M + 1) // 2 + len(c['order']) + c['bridges'] + 4 + group = 2 ** (36 * 36) + for i in range(1, 37): + group *= 2 ** (2 * i) - 1 + stock = group * physical + row = 2 * stock.bit_length() + 9909 + 252 + 2 * 512 + require(prefix < 512, 'prefix reserve') + require(row < 20161 and M * M > 2 * max(profile) ** 2, 'row or halving reserve') + return dict(status='PASS_INDEPENDENT_T16_LITERAL_WINDOWS_CHARTS_PREFIX_ROW', roles=len(roles), calls=len(c['order']), + source_events_per_replica=30, expanded_replica_events=c['event_count'], bridge_events=c['bridges'], + literal_windows=len(c['windows']), checked_whole_helper_widths=len(roles), checked_busy_family_windows=len(roles), + orthogonal_port_bases=len(c['bases']), actual_73_axis_charts=len(charts), checked_slice_prefixes=len(c['windows']) * V, + local_profile=dict(sorted(c['paid'].items())), width_inventory=dict(sorted(Counter(c['widths']).items())), + idle=dict(sorted(idle.items())), profile=dict(sorted(profile.items())), live=live, physical=physical, + rank_mass=mass, deficit=5120, namespace={'data':[0,live], 'centres':[live,live+8], 'tableau':[live+8,live+8+R], 'coefficient':[live+8+R,physical]}, + local_prefix_bits=localbits, local_prefix_from_native_receipt=True, local_profile_recounted=True, + prefix_formula=dict(local_scalar=localbits, input_l2=(M + 1) // 2, invocations=len(c['order']), bridges=c['bridges'], margin=4), + prefix_bits=prefix, charged_prefix_bits=512, physical_stock_bits=stock.bit_length(), + physical_row_coefficient=row, row_limit=20161, + scope='Finite role/window/chart and inherited prefix/row obligations. Requires separately admitted local supplier and emitted controller, complete finite invoice, exact moments and outer assembly; no all-size theorem is asserted.') + + +def controls(context, roles): + candidates = [] + first = roles[0] + bad = dict(first, family=14336) + candidates.append(('private_namespace_collision', [bad] + roles[1:], 'private-namespace collision')) + index = next(i for i, z in enumerate(roles) if z['replica'] >= 8) + bad = dict(roles[index], replica=roles[index]['replica'] - 8) + candidates.append(('copy_replica_alias', [bad] + roles[:index] + roles[index+1:], 'role invocation time')) + candidates.append(('missing_whole_helper', roles[1:], 'complete helper role count')) + split = dict(first, width=first['width'] - 1) + fragment = dict(first, offset=first['offset'] + first['width'] - 1, width=1) + candidates.append(('split_whole_helper', [split, fragment] + roles[1:], 'complete helper role count')) + candidates.append(('truncated_helper_width', [split] + roles[1:], 'whole-helper residual width')) + # Keep the family and chart valid, but move one complete role past its + # actual idle event. Freeze the original invocation order for controls. + crossing = None + for index, z in enumerate(roles): + lo, hi = context['windows'][z['owner_replica'], z['child']] + later = next((key for key in context['order'] if context['callpos'][key] >= hi), None) + if later is not None: + crossing = [dict(z, stage=later[0], replica=later[1], time=context['at'][later])] + roles[:index] + roles[index+1:] + break + require(crossing is not None, 'no idle-boundary control could be constructed') + candidates.append(('cross_idle_boundary', crossing, 'strict bridge-aware idle window')) + rejected = [] + for name, bad, expected in candidates: + try: + check_roles(context, bad) + except ValueError as exc: + require(str(exc) == expected, 'control rejected at unexpected predicate: ' + name) + rejected.append(dict(name=name, reason=str(exc))) + else: + raise ValueError('accepted negative control: ' + name) + return rejected + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--baseline-parent', type=Path, required=True) + parser.add_argument('--owners', type=Path, required=True) + parser.add_argument('--word', type=Path, required=True) + parser.add_argument('--phases', type=Path) + parser.add_argument('--local-replay', type=Path) + parser.add_argument('--out', type=Path, required=True) + args = parser.parse_args() + phases_path = args.phases or args.baseline_parent.parent.parent / 'work/complex-nine-native/DATA-PHASES.json' + canonical_path = args.baseline_parent.parent / 'CANONICAL-WORD.json.gz' + replay_path = args.local_replay or args.word.parent / 'INDEPENDENT-LOCAL-REPLAY.json' + parent, phases, canonical, word, replay, roles = map(read, (args.baseline_parent, phases_path, canonical_path, args.word, replay_path, args.owners)) + require(replay['status'] == 'PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY', 'local replay status') + require(replay['canonical_word_sha256'] == filehash(args.word), 'local word/replay hash binding') + require(set(replay['local']) == {'forward', 'backward'}, 'both native prefix orientations') + require(word['ports'] == canonical['ports'], 'local/controller port interface') + require(len(word['center_frames']) == len(canonical['center_frames']) == 8, 'eight centre interfaces') + require([basis(word['frames'][f]) for f in word['center_frames']] == [basis(canonical['frames'][f]) for f in canonical['center_frames']], 'ordered centre-frame interface') + context = make_context(parent, phases, canonical['ports'], word, replay, roles) + receipt = check_roles(context, roles) + receipt['controls_rejected'] = controls(context, roles) + receipt['input_sha256'] = {str(path): filehash(path) for path in (args.baseline_parent, phases_path, canonical_path, args.word, replay_path, args.owners)} + args.out.write_text(json.dumps(receipt, indent=2) + '\n', encoding='utf-8') + print(receipt['status'], 'roles=' + str(receipt['roles']), 'controls=' + str(len(receipt['controls_rejected']))) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/lift16.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/lift16.py new file mode 100644 index 0000000000..613c4bdb3c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/t16/lift16.py @@ -0,0 +1,102 @@ +"""lift16.py BASE8 PLAN8 OWNERS8 OWNERS16 OUT +Generic T16 lift (after #858 build_parent.py): direct-sum two-bank parent, actual +source-event windows, T16 PLAN with profile recomputed from the T16 owner map. +BASE8 = bound T8 global base (has split-centres/GLOBAL-TEMPLATE.json.gz).""" +import copy, gzip, hashlib, json, sys +from collections import Counter +from pathlib import Path +sys.path.insert(0, str(Path(__file__).resolve().parent)) +from build_parent import lift_parent, actual_windows, read, canonical, portable_gzip, sha, content_sha, require + + +def idle_profile(owners, windows): + used = {} + for r in owners: + key = (r['owner_replica'], r['child'], r['port']) + cells = used.setdefault(key, set()) + new = set(range(r['offset'], r['offset'] + r['width'])) + require(not cells & new, 'overlap') + cells |= new + idle = Counter() + for key, (cap, _) in windows.items(): + rep, ch = map(int, key.split(',')) + for port in range(112): + c = used.get((rep, ch, port), set()) + require(c == set(range(len(c))), 'non-prefix') + if len(c) < cap: + idle[cap - len(c)] += 1 + return idle + + +def interleave(order8): + return [[s, r + 8 * g] for s, r in order8 for g in range(2)] + + +def lift_plan(source, parent, owners8, owners, plan_sha, owners8_sha, owners_sha): + p = copy.deepcopy(source) + require(source['T'] == 8 and len(source['order']) == 72, 'source plan dimensions') + order = interleave(source['order']) + windows, schedule = actual_windows(parent, order) + idle8 = idle_profile(owners8, source['windows']) + paid = Counter({int(k): v for k, v in source['profile'].items()}) + paid.subtract(idle8) + require(all(v >= 0 for v in paid.values()), 'T8 idle not within profile') + idle16 = idle_profile(owners, windows) + prof = Counter({k: 2 * v for k, v in paid.items()}) + prof.update(idle16) + prof = +prof + p.update(status='FROZEN_EXPLICIT_T16_TWO_BANK_DIRECT_SUM_OWNER_NOMINATION', + mode='gauge44-all144-t16-idle-concentration', T=16, live=14336, deficit=5120, + profile={str(k): prof[k] for k in sorted(prof)}, order=order, windows=windows, + solver_status='exact pattern-flow LNS on the T16 actual-window geometry', gap=None, + source_plan_sha256=plan_sha, source_owners_sha256=owners8_sha, + assignment_sha256=owners_sha, assignment_content_sha256=content_sha(owners)) + for field in ('provider_calls', 'per_call_widths'): + p[field] = [] + for old in source[field]: + for group in range(2): + new = copy.deepcopy(old) + new['replica'] += 8 * group + if 'time' in new: + new['time'] = 2 * old['time'] + group + p[field].append(new) + at = {tuple(x): i for i, x in enumerate(order)} + for field in ('provider_calls', 'per_call_widths'): + p[field].sort(key=lambda c: at[c['stage'], c['replica']]) + p['replica_lift'] = dict(groups=2, source_replicas=8, replicas=16, + parent_template_content_sha256=content_sha(parent), owners_file_sha256=owners_sha, + window_semantics='strict physical source-event touch intervals, including bridges', + schedule_content_sha256=content_sha(schedule)) + require(len(owners) == 144 * len(source['provider_registry']['gauge44']['widths']), 'owner role count') + for role in owners: + require(role['time'] == at[role['stage'], role['replica']], 'role call time') + require(role['time'] in windows[f"{role['owner_replica']},{role['child']}"][1], 'owner outside actual window') + require(sum(int(k) * v for k, v in p['profile'].items()) == 73 * p['live'] - p['deficit'], 'rank mass') + return p, schedule, idle8, idle16 + + +def main(base, plan8p, own8p, own16p, out): + base, out = Path(base), Path(out) + require(not out.exists(), 'out exists') + src_path = base / 'split-centres/GLOBAL-TEMPLATE.json.gz' + source = read(src_path) + plan8 = read(plan8p) + require(lift_parent(source, 1) == source, 'T8 identity control') + require(actual_windows(source, plan8['order'])[0] == plan8['windows'], 'T8 source-window replay') + require(source['exact_data_phase_recipe_sha256'] == sha(base / 'work/complex-nine-native/DATA-PHASES.json'), 'data-phase binding') + parent = lift_parent(source) + owners8, owners = read(own8p), read(own16p) + plan, schedule, idle8, idle16 = lift_plan(plan8, parent, owners8, owners, sha(plan8p), sha(own8p), sha(own16p)) + out.mkdir(parents=True) + (out / 'GLOBAL-TEMPLATE.json.gz').write_bytes(portable_gzip(canonical(parent))) + (out / 'PLAN.json').write_bytes((json.dumps(plan, indent=2) + '\n').encode()) + rec = dict(status='PASS_T16_DIRECT_SUM_PARENT_AND_LITERAL_SOURCE_WINDOWS', T8_identity_control=True, + T8_source_window_identity=True, idle8=dict(sorted(idle8.items())), idle16=dict(sorted(idle16.items())), + profile=plan['profile'], parent_live=parent['live'], parent_physical=parent['physical'], + actual_window_membership_checked=len(owners), events=len(schedule)) + (out / 'PARENT-LIFT-RECEIPT.json').write_text(json.dumps(rec, indent=2) + '\n') + print(json.dumps(rec)) + + +if __name__ == '__main__': + main(*sys.argv[1:6]) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/verify_manifest.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/verify_manifest.py new file mode 100644 index 0000000000..8c2441d392 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/verify_manifest.py @@ -0,0 +1,19 @@ +"""Verify the submitted package's exact file inventory and SHA256 bindings.""" +from hashlib import sha256 +import json +from pathlib import Path + +root = Path(__file__).resolve().parent +expected = json.loads((root / 'MANIFEST.json').read_text()) +actual = { + p.relative_to(root).as_posix(): sha256(p.read_bytes()).hexdigest() + for p in root.rglob('*') + if p.is_file() and '__pycache__' not in p.parts + and p != root / 'MANIFEST.json' +} +if actual != expected: + missing = sorted(expected.keys() - actual.keys()) + extra = sorted(actual.keys() - expected.keys()) + changed = sorted(k for k in expected.keys() & actual.keys() if expected[k] != actual[k]) + raise SystemExit(f'Manifest mismatch: missing={missing}, extra={extra}, changed={changed}') +print(f'PASS package manifest: {len(actual)} files') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/verify_t16.py b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/verify_t16.py new file mode 100644 index 0000000000..4794150c4c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1130/research/gauge44-ends7-x54-t16/verify_t16.py @@ -0,0 +1,122 @@ +"""Strict T16 replay: the T8 package's frozen admission, then the sixteen-replica two-bank controller. + +Credit: the T16 controller, source adapters, direct-sum parent lift, actual-window reconstruction and the +independent T16 checker are Hao Yan's (@FanPUYen) PR #858 (research/complex-double-replica-owners, Apache-2.0), +vendored in t16/ with only the documented generalisations (word-derived R/widths/idle profile, owner-derived PLAN profile). +The adapted controller code/ is byte-identical to the signed research/gauge44-barch-t16 code (#870's T16 code). + +Stages (strict only, no discovery, no optimizer): + restore-parent, bind8 (T8 SPEC data/SPEC-T8.json, T8 PLAN/OWNERS data/T8/: replays the gauge44-slots admission), + lift16 (direct-sum parent and actual source-event windows; every one of the frozen data/OWNERS.json.gz roles is checked + inside its owner's actual window; the lifted PLAN must equal data/PLAN.json). data/OWNERS.json.gz is frozen data (an exact + pattern-flow LNS repack on the T16 geometry); it is checked by lift16, the controller audit and independent-t16. No + owner constructor or optimizer runs. bind, emit, audit, invoice, assembly, admission-controls, + bit-supplier-controls (code/ = pinned gauge44 code + #858's exact multiplicity-checked T16 edits), independent-t16. +""" +import argparse, gzip, hashlib, json, os, shutil, subprocess, sys, time +from fractions import Fraction +from pathlib import Path + +assert __debug__, 'Assertions required' +PKG = Path(__file__).resolve().parent +sha = lambda p: hashlib.sha256(Path(p).read_bytes()).hexdigest() +rd = lambda p: json.loads(gzip.decompress(Path(p).read_bytes()) if str(p).endswith('.gz') else Path(p).read_bytes()) +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--main', type=Path, required=True) +ap.add_argument('--local', type=Path, required=True) +ap.add_argument('--work', type=Path, required=True) +a = ap.parse_args() +main, local, work = a.main.resolve(), a.local.resolve(), a.work.resolve() +assert not work.exists(), 'Output directory must be new' +source = main / 'research/complex-k492-owner-repair/vendor/multicold' +baseline = main / 'research/community-k492-audit/pr622/replay/baseline558' +vendor = source / 'vendor/pr558/vendor/pr552/complex-global/vendor531' +for rel, expected in rd(PKG / 'data/UPSTREAM-PINS.json').items(): + assert sha(main / rel) == expected, 'Upstream dependency changed: ' + rel +work.mkdir(parents=True) +env0 = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(source), GAIN_PR564_SOURCE=str(source)) +for k in ('PYTHONOPTIMIZE', 'WITNESS_DISCOVER', 'WITNESS_RECORD', 'WITNESS_SPEC'): + env0.pop(k, None) +stages = [] +SPEC8, SPEC16 = PKG / 'data/SPEC-T8.json', PKG / 'data/SPEC.json' +PLAN8, OWN8 = PKG / 'data/T8/PLAN.json', PKG / 'data/T8/OWNERS.json.gz' + + +def run(name, script, *args, spec=SPEC16, extra=None): + t0 = time.monotonic() + log = work / (name + '.log') + with log.open('w') as s: + rc = subprocess.run([sys.executable, '-B', str(source / 'code/run_portable.py'), str(script), *map(str, args)], + env=dict(env0, WITNESS_SPEC=str(spec), **(extra or {})), stdout=s, stderr=subprocess.STDOUT).returncode + stages.append(dict(name=name, seconds=round(time.monotonic() - t0, 3), exit_code=rc, log_sha256=sha(log))) + (work / 'STAGES.json').write_text(json.dumps(stages, indent=2) + '\n') + if rc: + raise RuntimeError(name + ' failed:\n' + log.read_text()[-6000:]) + print('PASS', name, stages[-1]['seconds'], flush=True) + + +code, t16 = PKG / 'code', PKG / 't16' +R16 = len(rd(PLAN8)['provider_registry']['gauge44']['widths']) +run('restore-parent', code / 'restore_parent.py', '--source', source, '--baseline', baseline, '--out', work / 'parent558', spec=SPEC8) +run('bind8', code / 'bind_providers_portable.py', '--baseline', work / 'parent558', '--provider', 'gauge44=' + str(local), + '--plan', PLAN8, '--out', work / 'global8', spec=SPEC8) + +run('lift16', t16 / 'lift16.py', work / 'global8/base', PLAN8, OWN8, PKG / 'data/OWNERS.json.gz', work / 'lift', spec=SPEC8) +assert rd(work / 'lift/PLAN.json') == rd(PKG / 'data/PLAN.json'), 'lifted PLAN differs from data/PLAN.json' +parent16 = work / 'parent16' +shutil.copytree(work / 'parent558', parent16) +shutil.copyfile(work / 'lift/GLOBAL-TEMPLATE.json.gz', parent16 / 'complex-global/base/split-centres/GLOBAL-TEMPLATE.json.gz') +g = work / 'global' +run('bind', code / 'bind_providers_portable.py', '--baseline', parent16, '--provider', 'gauge44=' + str(local), + '--plan', PKG / 'data/PLAN.json', '--out', g) +run('emit', code / 'emit_allcold.py', '--base', g / 'base', '--owners', PKG / 'data/OWNERS.json.gz', '--plan', g / 'PLAN.json', '--out', g / 'hosted') +run('audit', code / 'audit_allcold.py', g / 'base', g / 'hosted', g / 'audit/ASYNC-AUDIT.json', '--mutation-controls') +run('invoice', code / 'invoice_allcold.py', '--base', g / 'base', '--hosted', g / 'hosted', '--audit', g / 'audit', + '--out', g / 'audit', '--retained-invoice', vendor / 'evidence/audit/PREFIX-AND-INVOICE.json') +run('assembly', code / 'assemble.py', source, g, work / 'ASSEMBLY.json') +for nm, sc, out in (('admission-controls', 'assembly_controls.py', 'ADMISSION-CONTROLS.json'), + ('bit-supplier-controls', 'bit_supplier_controls.py', 'BIT-SUPPLIER-CONTROLS.json')): + run(nm, code / sc, '--source-package', source, '--owner', g / 'audit/OWNERS-AND-PROFILE.json', + '--invoice', g / 'audit/PREFIX-AND-INVOICE.json', '--out', work / out) +lift = rd(work / 'lift/PARENT-LIFT-RECEIPT.json') +run('independent-t16', t16 / 'indep16.py', '--baseline-parent', work / 'global8/base/split-centres/GLOBAL-TEMPLATE.json.gz', + '--owners', PKG / 'data/OWNERS.json.gz', '--word', local / 'CANONICAL-WORD.json.gz', '--out', work / 'INDEPENDENT-T16.json', + extra={'T16_EXPECTED_IDLE': json.dumps(rd(SPEC16)['expected']['idle_remainder_profile']), + 'T16_EXPECTED_WIDTHS': json.dumps(rd(SPEC16)['providers']['gauge44']['inventory'])}) +asm, ind = rd(work / 'ASSEMBLY.json'), rd(work / 'INDEPENDENT-T16.json') +inv = rd(g / 'audit/PREFIX-AND-INVOICE.json') +bc, ac = rd(work / 'BIT-SUPPLIER-CONTROLS.json'), rd(work / 'ADMISSION-CONTROLS.json') +assert asm['status'] == 'PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY' and asm['kappa'] == rd(SPEC16)['expected']['kappa'] +assert bc['status'] == 'PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS' and len(bc['rejected_controls']) == 12 and bc['derived_deficit'] == 10272 +assert not ac['discovery_accepted_controls'] and len(ac['rejected_controls']) == 69 +assert ind['status'] == 'PASS_INDEPENDENT_T16_LITERAL_WINDOWS_CHARTS_PREFIX_ROW' and len(ind['controls_rejected']) == 6 +assert ind['profile'] == asm['complex_profile'] and {str(k): v for k, v in lift['idle16'].items()} == {str(k): v for k, v in ind['idle'].items()} +assert ind['prefix_bits'] == inv['global_prefix_bits'] < 512 and ind['physical_row_coefficient'] < 20161 +# Final binding (as #858 verify.py final_binding). +owner, audit = rd(g / 'audit/OWNERS-AND-PROFILE.json'), rd(g / 'audit/ASYNC-AUDIT.json') +assert ind['physical_row_coefficient'] == inv['finite']['physical_row_coefficient'] < inv['finite']['retained_row_coefficient'] == 20161 +assert inv['charged_prefix_bits'] == 512 +assert ind['rank_mass'] == owner['rank_mass'] == 1041408 and ind['deficit'] == owner['deficit'] == 5120 +assert inv['strict_checks'] and all(inv['strict_checks'].values()), 'every finite invoice inequality' +assert len(asm['outer']) == 47 and all(Fraction(v) > 0 for v in asm['outer'].values()), 'all 47 strict outer margins' +assert audit['mutation_controls_run'] and len(audit['mutations_rejected']) == 15 +assert ind['roles'] == owner['hosted_residuals'] == audit['complex_hosted_residuals'] == 144 * R16 +assert ind['calls'] == audit['complete_invocations'] == inv['complete_invocation_sweeps'] == 144 +assert ind['actual_73_axis_charts'] == owner['actual_73column_sigmas'] == audit['actual_orthogonal_73column_maps'] +assert lift['actual_window_membership_checked'] == 144 * R16 and lift['T8_identity_control'] and lift['T8_source_window_identity'] +for name in ('CANONICAL-WORD.json.gz', 'LOCAL-PROGRAMS.json.gz', 'LOCAL-CHECKS.json', 'INDEPENDENT-LOCAL-REPLAY.json', + 'RESIDUAL-ADAPTERS.json', 'CLIFFORD-RECIPES.json', 'CLIFFORD-REVIEW.json'): + assert rd(g / 'base/providers/gauge44' / name) == rd(local / name), 'provider content binding: ' + name +assert asm['template_sha256'] == owner['template_sha256'] == inv['template_sha256'] +assert inv['owner_audit_sha256'] == sha(g / 'audit/OWNERS-AND-PROFILE.json') and inv['controller_audit_sha256'] == sha(g / 'audit/ASYNC-AUDIT.json') +assert Fraction(asm['kappa']) > Fraction(rd(SPEC8)['expected']['kappa']), 'T16 must strictly improve the T8 package' +res = dict(status='PASS_GAUGE44_T16_STRICT_GLOBAL_REPLAY', kappa=asm['kappa'], kappa_decimal=asm['kappa_decimal'], + conservative_kappa_decimal=asm['conservative_kappa_decimal'], complex_lower=asm['complex_lower'], bit_lower=asm['bit_lower'], + complex_profile=asm['complex_profile'], idle_remainder_profile=ind['idle'], complete_invocations=144, roles=ind['roles'], + prefix_bits=ind['prefix_bits'], charged_prefix_bits=512, physical_row_coefficient=ind['physical_row_coefficient'], + retained_row_coefficient=20161, actual_73_axis_charts=ind['actual_73_axis_charts'], + controls=dict(admission=69, bit_supplier=12, independent_t16=6, controller_mutations=15), + t8_kappa=rd(SPEC8)['expected']['kappa'], spec_sha256=sha(SPEC16), stages=stages, scope=asm['scope']) +(work / 'REPLAY.json').write_text(json.dumps(res, indent=2) + '\n') +print(res['status'], res['kappa_decimal'], flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/CLAIM.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/CLAIM.json new file mode 100644 index 0000000000..49271e6bce --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/CLAIM.json @@ -0,0 +1,52 @@ +{ + "status": "FROZEN_CANDIDATE_REQUIRES_VERIFY_PY", + "baseline_pr": 1018, + "baseline_commit": "eac7547cb191f875d5f5ea5f9bbb1d2b8c51c4ef", + "baseline_kappa": "0.00167166528321877", + "kappa_decimal": "0.001672196274581061", + "gain_percent": "0.0317642154575695298353261990653697672265824378100", + "gain_over_previous_pushed_u10_t37_percent": "0.6111286406103019880837965694577492917132467559300", + "complex_lower": "0.001674997198656588841754", + "bit_lower": "0.001733427039589844234749", + "changed_owner_rows": 31939, + "calls": 72, + "R": 480, + "replicas": 8, + "live": 7168, + "physical": 7658, + "rank_mass": 520704, + "deficit": 2560, + "local_profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "idle_profile": { + "1": 1110, + "3": 247, + "23": 2, + "32": 4, + "39": 1, + "48": 2426 + }, + "global_profile": { + "1": 174774, + "2": 30096, + "3": 31351, + "4": 10224, + "5": 5904, + "8": 576, + "23": 2, + "32": 4, + "39": 1, + "48": 2426 + }, + "files": { + "SPEC.json": "21d605679db7c2e2801ee0d3ef9c262e71319fc49cb98a01b2d05c8a491aa569", + "OWNERS.json.gz": "681670248da5ffe1504fab103855b6d0b8e91d176f31963fe88efa1d9d8bc2bd" + }, + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/MANIFEST.json new file mode 100644 index 0000000000..4600c7120d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/MANIFEST.json @@ -0,0 +1,31 @@ +{ + "CLAIM.json": "721457ddf32e3a418bf7e23e5e3009626d49eb0108c9f617263d8f5028a8e180", + "NOTICE.md": "442756fc1c5ecfd7b7b7694b53b1ecc70aa525004cd80f7d748ccd7270555189", + "OWNERS.json.gz": "681670248da5ffe1504fab103855b6d0b8e91d176f31963fe88efa1d9d8bc2bd", + "README.md": "7df766fd7fe3e7f0435eb2190e4a199ab6698b509499e3c0004168a66d78184f", + "SOURCE-PINS.json": "80b0357d714181f36476c34f9242ae21d72839c4afad9318b4228b78889fd676", + "SPEC.json": "21d605679db7c2e2801ee0d3ef9c262e71319fc49cb98a01b2d05c8a491aa569", + "discovery/SEARCH-LOG.json": "a7b4082ce270d84fcdea6dfcc7ae0836610f41d67183156fcd5f81bffb2ef096", + "discovery/SEARCH-TRACE.json.gz": "04be238ac938f38f77327e6e83efe0ea6e2cb29ee3d95a5b783bcdf7bda3b861", + "discovery/STAGES-RELAXATION.json": "165bf9204534944b44762109bbf35ba4bdedbc867fa1dde63a90bdf593cecaa2", + "discovery/screen_stages.py": "e78a0ee907b4ee97f90b7b66a8f8da7a0044474dab7c27845b24ffbf01dede14", + "discovery/search_calls.py": "5df48ab7775bfee767d71dd8c47585977922568b532c29f4528f2c8ca5ab364d", + "evidence/ADMISSION-CONTROLS.json": "31218c75b7a28d4f5397195bad9ba7e5750366ae7b73d010a749f358ce4adda4", + "evidence/ALL-T-BOUND.json": "07cc98bd055bc3f351de2c460364dc9fae25c1b728b90d6dc3ce9b5d9da32381", + "evidence/ASSEMBLY.json": "8634e3ce597619d6da631dcd1e40bd82f327a2b500bf6963b5961c945ab810b9", + "evidence/ASYNC-AUDIT.json": "abc1e11e3184371a41e4d73d56033e8e7ff608443085926a4e0037f7e335300b", + "evidence/BASELINE-CHAIN-STEPS.json": "9f5d3b0e72c92a4f5fda023685aab2e5f23dda6e079410824126c0802bc1710a", + "evidence/BASELINE-RESULT.json": "1d43f5f4a6d77f096182d9482eecb5313a0b79c4d3e12f4f70846c6f935287be", + "evidence/BIT-SUPPLIER-CONTROLS.json": "4f996bdd4802b0eea6187f01734d4e3f482b281952d6a923dac395a27bf93eb0", + "evidence/NATIVE-BINDING.json": "6059b4f78e63c818d52b72615e42d9b80269a3d69769a14a424af6fe19f22870", + "evidence/OWNERS-AND-PROFILE.json": "ee31a5ae84bcc6344b18c67ae828693ba92ec0328223c9b6af29b04d90c80b40", + "evidence/PREFIX-AND-INVOICE.json": "22cf5aa33d7c26708d1c8b5a5f88df9b330516e6ab9e5e8e10da5857c58e7961", + "evidence/PREPARATION.json": "23105d9e89bbf7e2a64e8ce391c6b3fc7a900e4e2d7351bbd0120d05ab52a2eb", + "evidence/REPLAY.json": "842986705a5ee84c969d5b58e831dd6cd8ddf549f2ee3bebbd9c6a5dcf566857", + "evidence/RESULT.json": "7bf23e92f06971315168cfe167a0ba923f8ba0c58a5f35d93ba53f58fcdb828e", + "independent/UPSTREAM.json": "46079c0178181f97b0d35cf2fb3a05e9d33a267bef31230a56dd5c84a7b3b385", + "independent/all_t_bound.py": "0ac15a2b2eaf72060924fcd33a43b2170a5c14ecfe4345ff5da041b81bd402df", + "prepare.py": "2a92b1a55cad73c0a5168f49f432a436db86111328228e300d3e8b72e9e994e6", + "verify.py": "960ad27c57416e061d907cb5f0de7acb4901b5232c29ca88224cc6284e60b496", + "verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/NOTICE.md new file mode 100644 index 0000000000..281e6404ca --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/NOTICE.md @@ -0,0 +1,41 @@ +# Attribution and scope + +Prepared for Thomas DiFiore with OpenAI Codex assistance, October 13, 2026. +Licensed under the repository's Apache-2.0 license. + +This contribution changes the whole-helper ownership map for the circuit from +Jeremy Kothe's PR1018 (`eac7547cb191f875d5f5ea5f9bbb1d2b8c51c4ef`). The +eight no-helper mutable-source cells, R480 circuit, frame optimization and +construction controls come from Jeremy Kothe and the credited contributors to +PR1005. The seven additional triangle slots come from PR1018 using Rohan Arun's +PR987 search and NewBArch's PR869 builder. None of those circuit improvements +are claimed as new here. + +The starting ownership map is G44Pack3's K8c8, descended from chafreaky's PR685 +and PR741 maps through G44Pack's relabeling and width changes. This package adds +coordinated complete-call reassignment by grouped integer packing, with +explicitly serialized owners and an unchanged independent admission verifier. + +The separate all-replica upper bound adapts jon314159's PR942 arithmetic +implementation and proof, using chafreaky's PR795/890 signed-dual prices. Its +new contribution is the application to PR1018's changed local profile and +helper inventory. The two rational numerical engines retain their upstream +authorship. `independent/UPSTREAM.json` records the source file and hash. + +All construction, controller, spectator, native phase, finite invoice, exact +moment and outer-transfer implementations retain their upstream authorship +and notices. The runtime copies PR1018's verifier files byte for byte. It +changes the owner nomination, its derived PLAN fields, and expected-value SPEC. +The original packages remain unchanged. + +The bit supplier is the unchanged PR589/PR555 punctured-star construction; +this run reprices its pinned profile and reruns its admission controls. It does +not rebuild the bit circuit. Earlier complex ancestry is inherited through the +pinned PR741 initial word and PR622/PR558 reviewed parent artifacts. The run +freshly rebuilds the k8 leaver circuit, all later layers, and the seven slots. + +This is a conditional finite construction, not an unconditional integer +multiplication theorem. All-size compilation, common-label and mutable-source +realization, whole-call hosting, precision/tape, analytic transfer and bit H1–H5 +assumptions remain. No independent human peer review is claimed. Optimizer +outputs and floating relaxations are discovery evidence, not admission proofs. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/OWNERS.json.gz new file mode 100644 index 0000000000..d4182e1948 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/README.md new file mode 100644 index 0000000000..79e2103240 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/README.md @@ -0,0 +1,134 @@ +# Coordinated k8 owners: conditional κ = 0.001672196274581061 + +Coordinated reassignment of complete calls improves the conditional κ from +PR1018's **0.001671665283218770** to **0.001672196274581061**, a **0.0317642%** +gain. The circuit is PR1018's R480 k8 leaver word with seven additional +triangle slots. This contribution improves its whole-helper ownership map. +Larger κ is better in the bound `n (log n)^(1−κ)`. + +The fresh k8 and slot rebuild reproduced PR1018 before the changed ownership +map was admitted. This is a conditional finite construction; the inherited +all-size/compiler, mutable-source realization, hosting, precision/tape, +analytic-transfer and bit H1–H5 assumptions remain. See [NOTICE.md](NOTICE.md) +for attribution and precise reuse scope. + +| Quantity | Verified result | +|---|---:| +| κ | 0.001672196274581061 | +| Complex saving lower endpoint | 0.001674997198656588841754 | +| Bit saving lower endpoint, unchanged | 0.001733427039589844234749 | +| Replicas / complete calls / helpers per call | 8 / 72 / 480 | +| Serialized helper roles | 34,560 | +| Live / physical families | 7,168 / 7,658 | +| Rank mass / deficit | 520,704 / 2,560 | +| Global coefficient prefix / charged bits | 253 / 512 | +| Physical row coefficient / retained limit | 16,467 / 20,161 | + +The per-call profile is `{1:2412,2:418,3:432,4:142,5:82,8:8}`. The helper-width +inventory is `{4:56,5:32,7:30,8:122,9:240}`. The idle remainder profile changes +from `{1:1099,2:9,3:179,7:54,16:23,48:2419}` to +`{1:1110,3:247,23:2,32:4,39:1,48:2426}`. The actual controller, spectator +permutations and complete invoice are rebuilt from the serialized roles. + +## Search and verification + +A single-call min-cost reassignment found no improvement. The new search +removes two, three or four complete calls, groups available bins by their +remaining capacity and allowed calls, and solves an integer pattern assignment. +Each pattern uses a bin at most once per call. Six-call searches specifically +target occupied capacity-48 bins; these moves hold widths 5 and 7 fixed and +jointly place widths 4, 8 and 9. A final four-call pass cleans up residuals. +Stable prefix compaction emits the literal owner map. + +The objective uses floating arithmetic for discovery. Integer assignments are +checked before use, and timed-out solves may contribute feasible incumbents. +There is no claim that a neighborhood or the final map is globally optimal. +The independent physical audit and two rational moment engines determine the +claim, rather than the optimizer objective. + +The admission runtime copies PR1018's verifier files **byte for byte**. Only +the owner file, derived PLAN fields and frozen expected-value SPEC change. +There are no relaxed guards or special-case acceptance paths. + +The completed run includes the 21-stage k8 chain, five sets of 95 cold-end +controls, 34 slot-control outcomes, fresh native forward/backward programs, +exact local phases, independent local audit, and the strict global replay. +The latter checks 15 controller mutants, 69 admission mutants, 12 bit-supplier +mutants, both rational moment engines, 47 strict outer inequalities, and the +next-grid and recurrence-model controls. The bit circuit is cited unchanged +and repriced; it is not rebuilt by this run. + +## Reproduce + +Use Python 3.11+ and the repository's native verifier prerequisites, including +Boost where required. The verifier itself does not need SciPy. From the +repository root, choose fresh output directories: + +```sh +python -B research/gauge44-slots/construction/reproduce.py \ + --main . --pr635 research/complex-sw4-frame8/vendor/pr635 \ + --out /tmp/k8-initial --until word + +python -B research/k8-coordinated-owners/verify.py \ + --word-dir /tmp/k8-initial --work /tmp/k8-coordinated +``` + +The first command builds the historical shadow/hamming inputs; the verifier +then constructs the k8 word and slot layer. A completed native rebuild may be +explicitly reused with `--native-from /path/to/native` instead of `--word-dir`. +That directory must contain completed `word/`, `chain/`, and `slots/` runs. +The verifier rechecks their step coverage, pinned programs, canonical words, +Clifford recipes, control counts and baseline result, then rebuilds the entire +changed global controller and admission. The recorded run freshly built this +native chain and subsequently used that explicit reuse path for final admission. + +The optional search requires NumPy and SciPy/HiGHS. It is not part of admission. +Run `discovery/search_calls.py --help` from the repository root. The recorded +sequence is `(block, passes, seed, seconds per solve)`: + +```text +(1, 12, 13, 3) negative single-call screen (stopped after 3 unchanged passes) +(2, 240, 13, 2) starting from the upstream owner map +(3, 360, 27, 2) starting from the preceding output +(4, 240, 41, 3) +(6, 24, 53, 5) --target48 +(6, 48, 67, 3) --target48 +(4, 160, 79, 2) +``` + +Use `--input previous-output --out fresh-output` to chain searches. +Solver timing/version can change the nominated map. The frozen `OWNERS.json.gz` +and `SPEC.json`, rather than a rerun optimizer, reproduce the certified result. +`discovery/SEARCH-LOG.json` records accepted changes and solver statuses. + +## Exact limit of this packing family + +An independent extension of PR942's signed-dual argument proves that **every +replica count** for this fixed local circuit, helper inventory and bin stock +has κ-grid upper bound **0.001674097969905390**. This is an upper relaxation, +not an attained construction. It leaves about **0.114%** improvement above the +present result; a major increase must change assumptions of this packing family. + +With PR795/890 width prices `(-1,-20,-8,-2,4)` and capacity bonuses +`(2,4,8,-13)`, two independently structured enumerations agree on all 1,163 +bin patterns. The remainder mass per replica is 14,814, the signed price is +−1,084, and the required dual credit is 140,550. Thus the supporting rank-one +solution has normalized remainders `{1:5622/37,48:11302/37}`. Both exact +rational engines certify the supporting inequalities and the next-endpoint +rejection. Every feasible physical owner map is subject to these necessary +inequalities. Since the retained outer transfer has `κ < b/(1+b)`, the certified +upper endpoint for `b` gives the stated grid ceiling. + +```sh +python -B research/k8-coordinated-owners/independent/all_t_bound.py \ + --out /tmp/k8-all-t-bound.json +``` + +The separate floating stage-count screen considers bank-free paired-chain +relaxations with 5, 7, 9, 11 and 13 stages. It finds no improvement over nine +stages in that search. It is not a proof against other circuits, banked +constructions, helper splitting, or different recursion geometries. + +`CLAIM.json` contains the frozen numerical claim. `evidence/RESULT.json` and +`evidence/ASSEMBLY.json` contain the completed strict admission; +`evidence/ALL-T-BOUND.json` contains the separate exact upper-bound certificate. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/SOURCE-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/SOURCE-PINS.json new file mode 100644 index 0000000000..740de3ceb7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/SOURCE-PINS.json @@ -0,0 +1,27 @@ +{ + "research/gauge44-slots/MANIFEST.json": "9a6f239b1618a43262e56735a99cc59b6f5a6e8816a794a34413e89cc33f4976", + "research/gauge44-leaver8/MANIFEST.json": "7c9637f06798b144274458efa145f701c61282f8b3aab1c0c900b53bdfbe1f0d", + "research/gauge44-slots/verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "research/gauge44-slots/verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "research/gauge44-slots/hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "research/gauge44-slots/data/PLAN.json": "1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08", + "research/gauge44-slots/data/OWNERS.json.gz": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a", + "research/gauge44-slots/data/SPEC.json": "8e95ae8087124189cbd366d0e9d1c5ebededff536ff3501927b4b2a2e8dac70e", + "research/gauge44-slots/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "research/gauge44-slots/construction/slots/verify_slots.py": "bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be", + "research/gauge44-slots/construction/slots/SLOT-PINS-k8.json": "55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2", + "research/gauge44-slots/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/gauge44-slots/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/gauge44-slots/code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "research/gauge44-slots/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/gauge44-slots/code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "research/gauge44-slots/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/gauge44-slots/code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "research/gauge44-slots/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/gauge44-slots/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/gauge44-slots/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/gauge44-slots/code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "research/gauge44-slots/code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "research/gauge44-slots/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/SPEC.json new file mode 100644 index 0000000000..cf015eae1b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/SPEC.json @@ -0,0 +1,1328 @@ +{ + "schema": "witness-spec/1", + "name": "k8-coordinated-whole-call-owners", + "data": { + "plan_sha256": "4c8e55335b909faf562ee0ce194a252e4983b9591b9c4e1b2625ea4c885c195a", + "owners_sha256": "681670248da5ffe1504fab103855b6d0b8e91d176f31963fe88efa1d9d8bc2bd" + }, + "dispatch": [ + [ + 0, + 0, + "gauge44" + ], + [ + 0, + 1, + "gauge44" + ], + [ + 0, + 2, + "gauge44" + ], + [ + 0, + 3, + "gauge44" + ], + [ + 0, + 4, + "gauge44" + ], + [ + 0, + 5, + "gauge44" + ], + [ + 0, + 6, + "gauge44" + ], + [ + 0, + 7, + "gauge44" + ], + [ + 1, + 0, + "gauge44" + ], + [ + 1, + 1, + "gauge44" + ], + [ + 1, + 2, + "gauge44" + ], + [ + 1, + 3, + "gauge44" + ], + [ + 1, + 4, + "gauge44" + ], + [ + 1, + 5, + "gauge44" + ], + [ + 1, + 6, + "gauge44" + ], + [ + 1, + 7, + "gauge44" + ], + [ + 2, + 0, + "gauge44" + ], + [ + 2, + 1, + "gauge44" + ], + [ + 2, + 2, + "gauge44" + ], + [ + 2, + 3, + "gauge44" + ], + [ + 2, + 4, + "gauge44" + ], + [ + 2, + 5, + "gauge44" + ], + [ + 2, + 6, + "gauge44" + ], + [ + 2, + 7, + "gauge44" + ], + [ + 3, + 0, + "gauge44" + ], + [ + 3, + 1, + "gauge44" + ], + [ + 3, + 2, + "gauge44" + ], + [ + 3, + 3, + "gauge44" + ], + [ + 3, + 4, + "gauge44" + ], + [ + 3, + 5, + "gauge44" + ], + [ + 3, + 6, + "gauge44" + ], + [ + 3, + 7, + "gauge44" + ], + [ + 4, + 0, + "gauge44" + ], + [ + 4, + 1, + "gauge44" + ], + [ + 4, + 2, + "gauge44" + ], + [ + 4, + 3, + "gauge44" + ], + [ + 4, + 4, + "gauge44" + ], + [ + 4, + 5, + "gauge44" + ], + [ + 4, + 6, + "gauge44" + ], + [ + 4, + 7, + "gauge44" + ], + [ + 5, + 0, + "gauge44" + ], + [ + 5, + 1, + "gauge44" + ], + [ + 5, + 2, + "gauge44" + ], + [ + 5, + 3, + "gauge44" + ], + [ + 5, + 4, + "gauge44" + ], + [ + 5, + 5, + "gauge44" + ], + [ + 5, + 6, + "gauge44" + ], + [ + 5, + 7, + "gauge44" + ], + [ + 6, + 0, + "gauge44" + ], + [ + 6, + 1, + "gauge44" + ], + [ + 6, + 2, + "gauge44" + ], + [ + 6, + 3, + "gauge44" + ], + [ + 6, + 4, + "gauge44" + ], + [ + 6, + 5, + "gauge44" + ], + [ + 6, + 6, + "gauge44" + ], + [ + 6, + 7, + "gauge44" + ], + [ + 7, + 0, + "gauge44" + ], + [ + 7, + 1, + "gauge44" + ], + [ + 7, + 2, + "gauge44" + ], + [ + 7, + 3, + "gauge44" + ], + [ + 7, + 4, + "gauge44" + ], + [ + 7, + 5, + "gauge44" + ], + [ + 7, + 6, + "gauge44" + ], + [ + 7, + 7, + "gauge44" + ], + [ + 8, + 0, + "gauge44" + ], + [ + 8, + 1, + "gauge44" + ], + [ + 8, + 2, + "gauge44" + ], + [ + 8, + 3, + "gauge44" + ], + [ + 8, + 4, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2896, + "expected_profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "LOCAL-PROGRAMS.json.gz": "9f41d53659e9be84e20c661560c5687abbf5cd0660cdecbe01ad5eb29e6b8ee3", + "LOCAL-CHECKS.json": "18f09b79835aa352f04d27041d86d1338c5ad0094b888588c1c05af2dc399ffd", + "INDEPENDENT-LOCAL-REPLAY.json": "2d4680965c62db1fde1236c4857b19bf7bc97af58805e6b4109afbc452f0fdd8", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "CLIFFORD-REVIEW.json": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + }, + "entering": 192, + "entrance": 384, + "width_digest": "ca0b972f2ee81a50449ce6489ddf9a94be914f84351136c2a9e3f81b37a0e387", + "program_hashes": { + "backward": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "forward": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + "artifacts": { + "LOCAL-CHECKS.json": "2b8b1891a736598010232bfb26abc31973b265a53a2009a3fcfd9138b5ecadb4", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "RESIDUAL-ADAPTERS.json": "383f40aadd00a4ac700dfd0d4c22d6c6c0be9a9863116e4d69c7acd23bafae0c" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 206, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387056, + "local_primitive_bound": 10038040553630, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "forward": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "LOCAL-PROGRAMS.json.gz": "9f41d53659e9be84e20c661560c5687abbf5cd0660cdecbe01ad5eb29e6b8ee3", + "LOCAL-CHECKS.json": "18f09b79835aa352f04d27041d86d1338c5ad0094b888588c1c05af2dc399ffd", + "INDEPENDENT-LOCAL-REPLAY.json": "2d4680965c62db1fde1236c4857b19bf7bc97af58805e6b4109afbc452f0fdd8", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "CLIFFORD-REVIEW.json": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + } + }, + "semantic_phase_sha256": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007", + "expected_local": { + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "coefficient_work_primitive_count": 98333 + }, + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98365 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "0.001636241501576388", + "hosted_residuals": 34560, + "rank_mass": 520704, + "actual_73column_sigmas": 8850, + "cross_replica_helper_roles": 27178, + "idle_remainders": 3790, + "idle_remainder_profile": { + "1": 1110, + "3": 247, + "23": 2, + "32": 4, + "39": 1, + "48": 2426 + }, + "global_profile": { + "1": 174774, + "2": 30096, + "3": 31351, + "4": 10224, + "5": 5904, + "8": 576, + "23": 2, + "32": 4, + "39": 1, + "48": 2426 + }, + "live": 7168, + "physical": 7658, + "conservative_kappa_decimal": "0.001672196271729641", + "kappa_decimal": "0.001672196274581061", + "complex_lower": "837498599328294420877/500000000000000000000000", + "conservative_complex_lower": "1674997195795608988513/1000000000000000000000000", + "kappa": "1672196274581061/1000000000000000000", + "assembly_controls_rejected": 69, + "provider_counts": { + "gauge44": 72 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/SEARCH-LOG.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/SEARCH-LOG.json new file mode 100644 index 0000000000..d2af99be3c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/SEARCH-LOG.json @@ -0,0 +1,133 @@ +{ + "status": "DISCOVERY_ONLY_FLOAT_OBJECTIVE_NOT_SUPPLIER_ADMISSION", + "full_trace": "SEARCH-TRACE.json.gz", + "full_trace_sha256": "04be238ac938f38f77327e6e83efe0ea6e2cb29ee3d95a5b783bcdf7bda3b861", + "runs": { + "calls13": { + "seed": 13, + "iterations_or_passes": 3, + "accepted_block_moves": 0, + "time_limited_solves": 0, + "initial_objective": 56661.105912635365, + "final_objective": 56661.105912635365, + "decrease": 0.0, + "idle": { + "1": 1099, + "2": 9, + "3": 179, + "7": 54, + "16": 23, + "48": 2419 + } + }, + "pairs13": { + "seed": 13, + "iterations_or_passes": 240, + "accepted_block_moves": 28, + "time_limited_solves": 0, + "initial_objective": 56661.105912635365, + "final_objective": 56417.34258832474, + "decrease": 243.76332431062474, + "idle": { + "1": 1104, + "2": 3, + "3": 228, + "7": 2, + "16": 21, + "32": 8, + "48": 2419 + } + }, + "triples27": { + "seed": 27, + "iterations_or_passes": 360, + "accepted_block_moves": 18, + "time_limited_solves": 0, + "initial_objective": 56417.34258832474, + "final_objective": 56304.555735470596, + "decrease": 112.78685285414394, + "idle": { + "1": 1098, + "2": 2, + "3": 249, + "16": 1, + "23": 1, + "32": 16, + "48": 2419 + } + }, + "quads41": { + "seed": 41, + "iterations_or_passes": 240, + "accepted_block_moves": 2, + "time_limited_solves": 1, + "initial_objective": 56304.555735470596, + "final_objective": 56285.69065254017, + "decrease": 18.86508293042425, + "idle": { + "1": 1099, + "2": 2, + "3": 244, + "7": 3, + "32": 17, + "48": 2419 + } + }, + "six53-restricted": { + "seed": 53, + "iterations_or_passes": 24, + "accepted_block_moves": 6, + "time_limited_solves": 15, + "initial_objective": 56285.69065254017, + "final_objective": 56215.86091994149, + "decrease": 69.82973259867867, + "idle": { + "1": 1109, + "2": 1, + "3": 245, + "7": 2, + "9": 1, + "19": 1, + "32": 7, + "48": 2425 + } + }, + "six67": { + "seed": 67, + "iterations_or_passes": 48, + "accepted_block_moves": 2, + "time_limited_solves": 26, + "initial_objective": 56215.86091994149, + "final_objective": 56207.67395420974, + "decrease": 8.186965731751116, + "idle": { + "1": 1110, + "2": 1, + "3": 247, + "9": 1, + "23": 1, + "32": 6, + "39": 1, + "44": 1, + "48": 2424 + } + }, + "final79": { + "seed": 79, + "iterations_or_passes": 160, + "accepted_block_moves": 7, + "time_limited_solves": 4, + "initial_objective": 56207.67395420974, + "final_objective": 56173.33411992297, + "decrease": 34.33983428677311, + "idle": { + "1": 1110, + "3": 247, + "23": 2, + "32": 4, + "39": 1, + "48": 2426 + } + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/SEARCH-TRACE.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/SEARCH-TRACE.json.gz new file mode 100644 index 0000000000..5df63b0f39 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/SEARCH-TRACE.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/STAGES-RELAXATION.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/STAGES-RELAXATION.json new file mode 100644 index 0000000000..c11163d70c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/STAGES-RELAXATION.json @@ -0,0 +1,65 @@ +{ + "status": "FLOATING_RELAXATION_ONLY_NOT_A_WITNESS", + "rows": [ + { + "K": 2, + "L": 5, + "m": 41, + "variables": 33, + "success": false + }, + { + "K": 3, + "L": 7, + "m": 57, + "variables": 248, + "success": false + }, + { + "K": 4, + "L": 9, + "m": 73, + "variables": 1163, + "success": true, + "complex_relaxed": 0.0016769052736152026, + "kappa_relaxed": 0.0016740979699009272, + "idle": { + "1": 151.9459459459459, + "48": 305.4594594594595 + } + }, + { + "K": 5, + "L": 11, + "m": 89, + "variables": 3960, + "success": true, + "complex_relaxed": 0.0016273560127685425, + "kappa_relaxed": 0.001624712027880953, + "idle": { + "1": 96.0000000000003, + "48": 212.79999999999978, + "3": 25.199999999998987, + "62": 138.0000000000018, + "2": 138.0000000000018, + "60": 309.99999999999835 + } + }, + { + "K": 6, + "L": 13, + "m": 105, + "variables": 10912, + "success": true, + "complex_relaxed": 0.0015772190111506483, + "kappa_relaxed": 0.0015747353086842612, + "idle": { + "1": 31.999999999997815, + "48": 150.54545454545422, + "64": 448.00000000000006, + "71": 322.09090909090895, + "73": 125.90909090909123 + } + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/screen_stages.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/screen_stages.py new file mode 100644 index 0000000000..d933cc0a13 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/screen_stages.py @@ -0,0 +1,76 @@ +"""Floating bank-free packing relaxation; never a physical or theorem witness. + +Adapted from the paired-chain inventory in larger-gain/stages/screen_stages.py. +Prepared with OpenAI Codex assistance; Apache-2.0. See ../NOTICE.md. +Geometry, execution windows and integrality are relaxed. No claim of a global +upper bound over different circuits, banked constructions or split rules. +""" +import argparse +from collections import Counter +import json +import math +from pathlib import Path + +import numpy as np +from scipy.optimize import brentq, linprog + +P = Path(__file__).resolve().parents[1] +ROOT = P.parents[1] + + +def main(): + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--out', type=Path, required=True) + args = ap.parse_args() + provider = json.loads((ROOT / 'research/gauge44-slots/data/PLAN.json').read_text())['provider_registry']['gauge44'] + profile = {int(r): n for r, n in provider['actual_paid_profile'].items()} + inventory = Counter(provider['widths']) + widths = sorted(inventory) + results = [] + for pairs in range(2, 7): + stages, m, live = 2*pairs+1, 16*pairs+9, 224*pairs + capacities = {8: 224*(pairs-1)} | {16*p: 448 for p in range(1, pairs)} + patterns = [] + + def enumerate_bin(capacity, remainder, index=0, vector=()): + if index == len(widths): + patterns.append((capacity, vector, remainder)) + return + w = widths[index] + for n in range(remainder//w+1): + enumerate_bin(capacity, remainder-n*w, index+1, vector+(n,)) + + for cap in capacities: + enumerate_bin(cap, cap) + matrix = np.array([[int(cap == c) for cap, vec, r in patterns] for c in capacities] + + [[vec[i] for cap, vec, r in patterns] for i in range(len(widths))]) + limit = int(m/math.sqrt(2)) + + def parts(r): + return [r] if r <= limit else [limit, r-limit] + + def cost(r): + return r*math.expm1(.00168*math.log(m/r))/.00168 if r else 0 + + objective = [sum(cost(q) for q in parts(r)) for cap, vec, r in patterns] + rhs = list(capacities.values()) + [stages*inventory[w] for w in widths] + solve = linprog(objective, A_eq=matrix, b_eq=rhs, bounds=(0, None), method='highs') + row = dict(K=pairs, L=stages, m=m, variables=len(patterns), success=solve.success) + if solve.success: + idle = Counter() + for val, (cap, vec, r) in zip(solve.x, patterns): + if val > 1e-8: + for q in parts(r): + if q: + idle[q] += float(val) + combined = Counter({r: stages*n for r, n in profile.items()}) + combined.update(idle) + root = brentq(lambda b: sum(n*(r/m)**(1-b) for r, n in combined.items())/live-1, 0, .005) + row.update(complex_relaxed=root, kappa_relaxed=root/(1+root), idle=dict(idle)) + results.append(row) + print(row, flush=True) + args.out.write_text(json.dumps(dict(status='FLOATING_RELAXATION_ONLY_NOT_A_WITNESS', rows=results), indent=2)+'\n') + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/search_calls.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/search_calls.py new file mode 100644 index 0000000000..27682bb609 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/discovery/search_calls.py @@ -0,0 +1,111 @@ +"""Discovery only: coordinated complete-call reassignment. + +Prepared with OpenAI Codex assistance; Apache-2.0. See ../NOTICE.md. +SciPy/HiGHS nominates integer feasible maps; only the separate unchanged +physical verifier and rational engines may certify a kappa value. A timed-out +solve may supply a checked feasible incumbent; no optimality is claimed. +Run from the repository root. The frozen map, not a new search, is verified. +""" +import argparse, gzip, json, math, random, time +from collections import Counter, defaultdict +from pathlib import Path +import numpy as np +from scipy.optimize import linprog, milp, Bounds, LinearConstraint +from scipy.sparse import coo_matrix + +ap=argparse.ArgumentParser();ap.add_argument('--passes',type=int,default=10);ap.add_argument('--seed',type=int,default=13);ap.add_argument('--out',type=Path,required=True);ap.add_argument('--input',type=Path,default=Path('research/gauge44-slots/data'));ap.add_argument('--block',type=int,default=1);ap.add_argument('--limit',type=float,default=3);ap.add_argument('--target48',action='store_true');a=ap.parse_args() +p=a.input;plan=json.loads((p/'PLAN.json').read_text());roles=json.loads(gzip.decompress((p/'OWNERS.json.gz').read_bytes())) +rng=random.Random(a.seed);V=112;bins=[];eligible=defaultdict(list);lookup={} +for key,(cap,times) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(V): + fam=rep*896+(2*plan['pairs'][str(ch)]+plan['sides'][str(ch)])*V+port + idx=len(bins);bins.append((rep,ch,port,cap,fam));lookup[rep,ch,port]=idx + for t in times:eligible[t].append(idx) +for t,ids in eligible.items():assert len({bins[i][4] for i in ids})==len(ids) +bycall=defaultdict(list);assignment=[];used=np.zeros(len(bins),dtype=int) +for j,z in enumerate(roles): + i=lookup[z['owner_replica'],z['child'],z['port']];assignment.append(i);used[i]+=z['width'];bycall[z['time']].append(j) +cap=np.array([b[3] for b in bins]);phi=np.array([r*math.expm1(.0016769*math.log(73/r))/.0016769 if r else 0 for r in range(49)]) +def cost():return float(phi[cap-used].sum()) +def save(): + offsets=Counter();out=[] + for j,z in enumerate(roles): + i=assignment[j];rep,ch,port,cp,fam=bins[i];new=z|dict(owner_replica=rep,child=ch,port=port,copy=rep*V+port,family=fam,offset=offsets[i]);offsets[i]+=z['width'];out.append(new) + assert all(offsets[i]==used[i]<=cap[i] for i in range(len(bins))) + a.out.mkdir(exist_ok=True,parents=True);(a.out/'OWNERS.json.gz').write_bytes(gzip.compress(json.dumps(out,sort_keys=True,separators=(',',':')).encode(),mtime=0)) + idle=Counter(int(x) for x in cap-used if x);H=Counter({int(r):n*72 for r,n in plan['provider_registry']['gauge44']['actual_paid_profile'].items()});H.update(idle) + np=plan|dict(profile=dict(sorted(H.items())));(a.out/'PLAN.json').write_text(json.dumps(np,indent=2)+'\n');(a.out/'SEARCH.json').write_text(json.dumps(dict(seed=a.seed,cost=cost(),idle=dict(sorted(idle.items())),trace=trace),indent=2)+'\n') +trace=[];initial=cost();print('initial',initial,Counter(cap-used),flush=True) +if a.block>1: + import itertools + for it in range(a.passes): + # Nearby calls share narrow windows; random distant calls provide escape paths. + t=rng.randrange(72);ts=sorted({t,*rng.sample([k for k in range(72) if k!=t],a.block-1)}) + if it%2:ts=sorted(rng.sample(list(range(max(0,t-6),min(72,t+7))),a.block)) + if a.target48: + occupants=defaultdict(list) + for j,i in enumerate(assignment): + if cap[i]==48:occupants[i].append(roles[j]['time']) + target=rng.choice([x for x in occupants.values() if len(x)==a.block]);ts=sorted(target);assert len(set(ts))==len(ts) + ws=[4,8,9] if a.target48 else [4,5,7,8,9] + oldcost=cost();js=[j for t in ts for j in bycall[t] if roles[j]['width'] in ws];oldassign={j:assignment[j] for j in js} + for j in js:used[assignment[j]]-=roles[j]['width'] + es=[set(eligible[t])-{assignment[j] for j in bycall[t] if roles[j]['width'] not in ws} for t in ts] + allids=set().union(*es);groups=defaultdict(list) + for i in allids: + v=int(cap[i]-used[i]);mask=sum(1<>k&1 else [0]) for k in range(len(ts))] + for pat in itertools.product(*opts): + if sum(pat)>v:continue + col=len(patterns);patterns.append((g,pat));costs.append(phi[v-sum(pat)]-phi[v]);rows.append(g);cols.append(col);vals.append(1) + for k,w in enumerate(pat): + if w:rows.append(len(keys)+k*len(ws)+ws.index(w));cols.append(col);vals.append(1) + A=coo_matrix((vals,(rows,cols)),shape=(len(keys)+len(ws)*len(ts),len(patterns))).tocsc();b=np.array([len(groups[k]) for k in keys]+[dem[k,w] for k in range(len(ts)) for w in ws]) + res=milp(np.array(costs),integrality=np.ones(len(patterns)),bounds=Bounds(0,np.inf),constraints=LinearConstraint(A,b,b),options=dict(time_limit=a.limit,mip_rel_gap=0)) + accept=False + if res.x is not None: + xx=np.rint(res.x).astype(int) + if np.max(abs(xx-res.x))<1e-5 and np.array_equal(A@xx,b): + after=float(phi[cap-used].sum()+np.dot(costs,xx)) + if after=min(dem):groups[int(v)].append(i) + ws=sorted(dem);vs=sorted(groups);edges=[(w,v) for w in ws for v in vs if w<=v];rr=[];cc=[];dd=[] + for k,(w,v) in enumerate(edges):rr.extend([ws.index(w),len(ws)+vs.index(v)]);cc.extend([k,k]);dd.extend([1,1]) + A=coo_matrix((dd,(rr,cc)),shape=(len(ws)+len(vs),len(edges))).tocsr();c=np.array([phi[v-w]-phi[v] for w,v in edges]) + b=np.array([dem[w] for w in ws]+[len(groups[v]) for v in vs]);res=linprog(c,A_eq=A[:len(ws)],b_eq=b[:len(ws)],A_ub=A[len(ws):],b_ub=b[len(ws):],bounds=(0,None),method='highs') + assert res.success;xx=np.rint(res.x).astype(int);assert np.max(abs(xx-res.x))<1e-5;assert np.array_equal(A[:len(ws)]@xx,b[:len(ws)]);assert np.all(A[len(ws):]@xx<=b[len(ws):]) + helpers=defaultdict(list) + for j in js:helpers[roles[j]['width']].append(j) + for g in groups.values():rng.shuffle(g) + for (w,v),n in zip(edges,xx): + for _ in range(n): + i=groups[v].pop();j=helpers[w].pop();assignment[j]=i;used[i]+=w + newcost=cost();assert newcost<=oldcost+1e-6 + if oldcost-newcost>1e-6:changed+=1 + trace.append(dict(pass_number=it,cost=cost(),changed=changed));save();print(trace[-1],flush=True) + if changed==0 and it>=2:break +print('gain',initial-cost(),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ADMISSION-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..f29f647763 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ADMISSION-CONTROLS.json @@ -0,0 +1,102 @@ +{ + "status": "PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS", + "valid_receipt_kappa": "1672196274581061/1000000000000000000", + "input_sha256": { + "owner_audit": "ee31a5ae84bcc6344b18c67ae828693ba92ec0328223c9b6af29b04d90c80b40", + "fresh_invoice": "22cf5aa33d7c26708d1c8b5a5f88df9b330516e6ab9e5e8e10da5857c58e7961", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "assembler_sha256": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "rejected_controls": [ + "empty_certification_maps", + "failed_invoice_status", + "nonboolean_precision_check", + "wrong_owner_role_count", + "understated_physical_stock", + "changed_profile_same_rank_mass", + "insufficient_finite_C0", + "missing_finite_check", + "wrong_reflected_orientation_selfconsistent_totals", + "missing_selected_call", + "wrong_selected_primitive_sum", + "wrong_selected_coefficient_work_sum", + "unpaid_wrapper_factors", + "wrong_global_compiler", + "wrong_global_adapter_maximum", + "understated_exact_prefix_and_global_sum", + "wrong_global_prefix_sum", + "wrong_row_prefix_reserve", + "wrong_parent_geometry_charge", + "wrong_rebased_geometry_charge", + "wrong_complete_pervertex_envelope", + "wrong_prior_added_complete_invoice", + "wrong_finite_router_bits", + "wrong_finite_literal_bits", + "wrong_finite_physical_stock_bits", + "wrong_finite_row_coefficient", + "reordered_complete_calls", + "understated_explicit_idle_remainders", + "understated_actual_chart_types", + "wrong_cross_replica_role_count", + "old_no_cold_wrapper_counts_selfconsistent", + "gauge44:missing_provider", + "gauge44:missing_backward_orientation", + "gauge44:unpaid_scalar_primitive", + "gauge44:wrong_local_artifact_binding", + "gauge44:false_dirty_restoration", + "gauge44:wrong_declared_provider_count", + "gauge44:wrong_local_compiler", + "gauge44:wrong_local_adapter_charge", + "gauge44:wrong_local_primitive_bound", + "gauge44:forged_provider_and_call_program_hash", + "gauge44:provider_at_wrong_call", + "gauge44:synchronized_forged_source_recipe_hash", + "gauge44:synchronized_forged_phase_review_semantics", + "gauge44:width_order_swap_4_5", + "gauge44:width_inventory_shift_4_5", + "gauge44:width_order_swap_4_7", + "gauge44:width_inventory_shift_4_7", + "gauge44:width_order_swap_4_8", + "gauge44:width_inventory_shift_4_8", + "gauge44:width_order_swap_4_9", + "gauge44:width_inventory_shift_4_9", + "gauge44:width_order_swap_5_7", + "gauge44:width_inventory_shift_5_7", + "gauge44:width_order_swap_5_8", + "gauge44:width_inventory_shift_5_8", + "gauge44:width_order_swap_5_9", + "gauge44:width_inventory_shift_5_9", + "gauge44:width_order_swap_7_8", + "gauge44:width_inventory_shift_7_8", + "gauge44:width_order_swap_7_9", + "gauge44:width_inventory_shift_7_9", + "gauge44:width_order_swap_8_9", + "gauge44:width_inventory_shift_8_9", + "gauge44:cold_helper_width_swap_258", + "gauge44:cold_helper_width_swap_270", + "gauge44:cold_helper_width_swap_282", + "gauge44:cold_helper_width_swap_294", + "wrong_owner_receipt_hash" + ], + "discovery_accepted_controls": [], + "exact_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "conservative_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "recurrence_model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "scope": "Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ALL-T-BOUND.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ALL-T-BOUND.json new file mode 100644 index 0000000000..786cf02909 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ALL-T-BOUND.json @@ -0,0 +1,320 @@ +{ + "status": "PASS_ALL_T_K8_SIGNED_DUAL_UPPER_RELAXATION", + "scope": "All positive integer replica counts, fixed PR1018 local word and widths, nine calls and 896 live wires per replica, whole helpers and fixed 8/16/32/48 bin inventory. Geometry, time windows, finite invoice and physical realization are relaxed. This does not construct a supplier at the upper bound and does not cover different circuits, split helpers, banks or recursion geometries.", + "dual_bin_vectors": 1163, + "upper": { + "8": 2, + "0": 0, + "1": 19, + "3": 7, + "4": 1, + "16": 4, + "7": 8, + "9": -4, + "2": 13, + "11": 9, + "6": 14, + "12": 3, + "5": 20, + "32": 8, + "23": 12, + "14": 16, + "24": 6, + "15": 10, + "25": 0, + "17": -2, + "18": -8, + "10": 15, + "27": -12, + "19": 11, + "20": 5, + "13": -3, + "22": -7, + "28": 7, + "21": -1, + "48": -13, + "39": -9, + "30": -5, + "40": -15, + "31": -11, + "41": -21, + "33": -23, + "34": -29, + "26": -6, + "43": -33, + "35": -10, + "36": -16, + "29": -24, + "38": -53, + "44": -14, + "37": -22 + }, + "mass_per_replica": 14814, + "signed_price_per_replica": -1084, + "credit_per_replica": 140550, + "normalized_idle": { + "1": "5622/37", + "48": "11302/37" + }, + "equality_requires_replica_count_multiple_of": 37, + "formal_profile": { + "replicas": 37, + "idle": { + "1": 5622, + "48": 11302 + }, + "profile": { + "1": 808818, + "2": 139194, + "3": 143856, + "4": 47286, + "5": 27306, + "8": 2664, + "48": 11302 + }, + "live": 33152, + "deficit": 11840 + }, + "root": { + "lower": "0.0016769052736196808613", + "upper": "0.001676905273619680861301", + "lower_endpoint_residual_upper": "-1.299429593054568866855484568658642431653668306624507520284172556832772E-24", + "upper_endpoint_residual_lower": "1.626998170340931007216795193152096835016903956980249908778111108484690E-24", + "strict_rational_signs": true, + "moment_minus_one_at_current_k_required_rate": [ + "-0.002867561161372568085493597312772668944352083906524636248243670220806452", + "-0.002867561161372568085493597312772668944352083906524636248243670220732268" + ], + "nominal_k_ceiling_interval": [ + "0.001674097969905390510170479409079122007141961236178257566229032233752559", + "0.001674097969905390510171476063685786209202290684500732119672646888867108" + ] + }, + "two_engine_signs": { + "lower": { + "endpoint": "16769052736196808613/10000000000000000000000", + "mercator": [ + "-35032552526468436078184471195427599835927813/26959946667150639794667015087019630673637144422540572481103610249216", + "-35032552526468436078184471195427599835927811/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "atanh": [ + "-129943/100000000000000000000000000000", + "-1299429/1000000000000000000000000000000" + ] + }, + "upper": { + "endpoint": "1676905273619680861301/1000000000000000000000000", + "mercator": [ + "43863783899943171831995157596908580818041753/26959946667150639794667015087019630673637144422540572481103610249216", + "43863783899943171831995157596908580818041755/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "atanh": [ + "813499/500000000000000000000000000000", + "1626999/1000000000000000000000000000000" + ] + } + }, + "supporting_inequalities": { + "mercator": { + "credit": { + "8": 200, + "1": 925, + "3": 375, + "4": 100, + "16": 400, + "7": 475, + "9": -75, + "2": 650, + "11": 575, + "6": 750, + "12": 300, + "5": 1025, + "32": 800, + "23": 875, + "14": 950, + "24": 600, + "15": 675, + "25": 325, + "17": 125, + "18": -150, + "10": 850, + "27": -225, + "19": 775, + "20": 500, + "13": 25, + "22": -50, + "28": 700, + "21": 225, + "39": 75, + "30": 150, + "40": -200, + "31": -125, + "41": -475, + "33": -675, + "34": -950, + "26": 50, + "43": -1025, + "35": -25, + "36": -300, + "29": -775, + "38": -2050, + "44": -100, + "37": -575 + }, + "multiplier_interval": [ + "527120945865610758518251372910444691787647487985927680893055414557/1558621916694646363129186809718322398319647411928126846563802467532800", + "527120945865610758518251372910444691787647487985927680893055414563/1558621916694646363129186809718322398319647411928126846563802467532800" + ], + "strict_margin_by_rank": { + "8": "4242097184419810597329177717861937030727659787500200943229889537549/3896554791736615907822967024295805995799118529820317116409506168832", + "3": "16980127855733811217812389092273930428983475427584335296980909134733/31172438333892927262583736194366447966392948238562536931276049350656", + "4": "748594784886785138986952355498561823695520641433389752939319930021/974138697934153976955741756073951498949779632455079279102376542208", + "16": "2497465128132360177128646721603324097987614055672200282675058933337/1948277395868307953911483512147902997899559264910158558204753084416", + "7": "1805390575389168997955733937598132925054537606600633316267641657873/1948277395868307953911483512147902997899559264910158558204753084416", + "9": "77344407181360535231265997386675276577634232377218837425925697024679/62344876667785854525167472388732895932785896477125073862552098701312", + "2": "4574725096770160199542208350266512546956048320099953901310478896515/15586219166946463631291868097183223983196474119281268465638024675328", + "11": "69361285868375708366653504368143786419569919363658346547724496235257/62344876667785854525167472388732895932785896477125073862552098701312", + "6": "23475232224554007851721728728156716202054949273551565565358532663925/31172438333892927262583736194366447966392948238562536931276049350656", + "12": "9663920096402564555458005881864111643332009588666429364676786322619/7793109583473231815645934048591611991598237059640634232819012337664", + "5": "2205376244715532727706768295196732787344160421719653687229936372567/3896554791736615907822967024295805995799118529820317116409506168832", + "32": "1509719506330375475184484012150647181972385910371022751087178310747/1948277395868307953911483512147902997899559264910158558204753084416", + "23": "66577677444466407894861493781150138486471410645056149900821427920785/62344876667785854525167472388732895932785896477125073862552098701312", + "14": "33342179812210800592137537970479201470141353032102975412555191181167/31172438333892927262583736194366447966392948238562536931276049350656", + "24": "8867162766221715038782509107688937069344533255509238676442365571467/7793109583473231815645934048591611991598237059640634232819012337664", + "15": "4591823997487280403678523416779303267791018846066022865082699878099/3896554791736615907822967024295805995799118529820317116409506168832", + "25": "37543867040445386410657553298980694630071675067365435713795140596253/31172438333892927262583736194366447966392948238562536931276049350656", + "17": "43027233815611405920964523538377875583398048750810744879528405003575/31172438333892927262583736194366447966392948238562536931276049350656", + "18": "45947232067891949828233292976532082844522571304815846161040044376761/31172438333892927262583736194366447966392948238562536931276049350656", + "10": "30476846288400472913846457013440004501671217804260993952217227019859/31172438333892927262583736194366447966392948238562536931276049350656", + "27": "10349239724466064747762668098311633044162177514702550866506882902127/7793109583473231815645934048591611991598237059640634232819012337664", + "19": "36076766969805264030534701517410522326688536784857917105983011128633/31172438333892927262583736194366447966392948238562536931276049350656", + "20": "19362504103784758976670172165368418809761963804956654043019289303665/15586219166946463631291868097183223983196474119281268465638024675328", + "13": "662829671334390392898349442512569150194002045515259818011086597389/487069348967076988477870878036975749474889816227539639551188271104", + "22": "43650774438995306877512438454137027416419197303737239381155728648905/31172438333892927262583736194366447966392948238562536931276049350656", + "28": "15265692454939241783413420683593035708807542117792611011874284170081/15586219166946463631291868097183223983196474119281268465638024675328", + "21": "41247679376619510377207798944106826105588503283795788231463409959387/31172438333892927262583736194366447966392948238562536931276049350656", + "39": "39091597322749877301772463052461848025067292337284888188501042367707/62344876667785854525167472388732895932785896477125073862552098701312", + "30": "16918133651047212280792025725350835214421204663245659684663188988383/15586219166946463631291868097183223983196474119281268465638024675328", + "40": "2552847737472948711323315422474459701926085797422768718304290693361/3896554791736615907822967024295805995799118529820317116409506168832", + "31": "17680903944017400670527982806388395095827771928780573370922147427211/15586219166946463631291868097183223983196474119281268465638024675328", + "41": "331829260974692217916632003887322410792724361309577315510054159859/487069348967076988477870878036975749474889816227539639551188271104", + "33": "19086311117350324245331709578282067510634155212729417097550214550253/15586219166946463631291868097183223983196474119281268465638024675328", + "34": "1233212830982640640671931336912402769976064403915524755108920024205/974138697934153976955741756073951498949779632455079279102376542208", + "26": "4939834957862646734750443012880282167402259307316833818111730355983/3896554791736615907822967024295805995799118529820317116409506168832", + "43": "45367263334708622136736996628823274998201852930592831334341432257003/62344876667785854525167472388732895932785896477125073862552098701312", + "35": "56056634753382305540726313433453423774648392175630971837977415550557/62344876667785854525167472388732895932785896477125073862552098701312", + "36": "14586530013646735289270694461948401203868912654480892973403851898635/15586219166946463631291868097183223983196474119281268465638024675328", + "29": "89755984742080869163086193097095927278898053155640437481943477495647/62344876667785854525167472388732895932785896477125073862552098701312", + "38": "43906317811482211938245618564120721700714487402529185494080664869825/31172438333892927262583736194366447966392948238562536931276049350656", + "44": "5333923494044166957174537362092284247801231461994923962122241049489/15586219166946463631291868097183223983196474119281268465638024675328", + "37": "60496260800397107765940527677624686104279543749443337329723870079803/62344876667785854525167472388732895932785896477125073862552098701312" + }, + "minimum_strict_margin": "4574725096770160199542208350266512546956048320099953901310478896515/15586219166946463631291868097183223983196474119281268465638024675328" + }, + "atanh": { + "credit": { + "8": 200, + "1": 925, + "3": 375, + "4": 100, + "16": 400, + "7": 475, + "9": -75, + "2": 650, + "11": 575, + "6": 750, + "12": 300, + "5": 1025, + "32": 800, + "23": 875, + "14": 950, + "24": 600, + "15": 675, + "25": 325, + "17": 125, + "18": -150, + "10": 850, + "27": -225, + "19": 775, + "20": 500, + "13": 25, + "22": -50, + "28": 700, + "21": 225, + "39": 75, + "30": 150, + "40": -200, + "31": -125, + "41": -475, + "33": -675, + "34": -950, + "26": 50, + "43": -1025, + "35": -25, + "36": -300, + "29": -775, + "38": -2050, + "44": -100, + "37": -575 + }, + "multiplier_interval": [ + "3852956302905149829042239548182830726718541540360584005679409791505603713020877229331207982092446299912111396313761842642614581449123243210965391140894027616307654551341054829569372036391814655202093961334933770926396058409884341501576321455954273925726992833388029630488881873870684326618979603882279306999761096485232777438477847779712460372279874079536612371160476595034438995895471704648459366537078666233641482356455524215409804735475413894686784852849799011263436186311979572706298818972614495846176367579600689563303858910690678151924146649270692167822323583665627719553070167545275266892095656407878276651612869667158372388145301478969219926986939276957026422860189496037454896938944952940840669249/11392645625024720759123584253890264994110257874914613179088447265625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "3687519939902316540129041236477653031119723898968810343917403549897151316331159063826579630485521040035114932290510779313581689910364333019943907203674479152352441824643028219007135907470945938062013325364056103907858384056100617292255046060461516772712786681690311688222090164205750515996151757944557303432478877336996005828447270776187088738929142964303940887827042661868370426663701368365640132258550965537512476376058300895129725224146484424443374673985750976505467527916910310182541541169743466457992196681555123376875770964306568990270945238039293905953513818327983685287535851367921893825455555947998916632281669580993438537608886053754264975076294981594265773296656385627298063213496691991953743244649/10903473750492141021234839250800779863027197158633388884728420000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "strict_margin_by_rank": { + "8": "61754969042826704436862395265312283358396411631124153535149731617559142347093052881767030381036527597876947609520983736073708216920040318379691491441471257974260910324094133237291775587023979175129610595829579874408232144984805504314660274636234718893588149958402586928369408142003048337080001177612742714440757791327671810054528569682936201868033238384401590471337331808381771779955618902164866452952356957707494436474532751949117332276609675912810786549348303795527110784955704002389946888282861574269212299180078243194705069042451666399293501557660667024260343139769761565560516236131835939099241682427998415269320600465257180759006054045354946822313859104289535012250862649839475632366806014254699284033300911644304455834002308134550137948082964224844515434421/56724683588380314824892893590147551666672814871921641006840004779752921368428399144987761367704431473148605442492700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "3": "82396923383820618925417938034890033577295684020279692447729029101832208892440778412651160002197809924191642741093353156285582676898663272194172665224940589906095432536416180296360999548815451100443223046823892641490657158498153905245987543766965842352445120546749237085660870593699806301752830095564635034234267606399915903367767020988776220815816811968931445705315905861459659687282371929778166283977619011083252165964505990679567445015359335778832982896240441022753214849737915580777838230763058373270704979761796259226164025225254113370437610295664420888346220246550083794817881752016124443178151341528552819146057775766108113811954613585931524741454535957479429407373328087106017098784193100976168248739384569382552609410109366851966501958866453236479198387849/151265822902347506199714382907060137777794172991791042684906679412674456982475731053300696980545150595062947846647200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "4": "87182251148973070291081325128188940650177935082262856934266199115561860247657374360968363702454666051600888081344677077233566475505128365582401458688619788097313593887093149199290374923102386189940216875783863156734173293822916797265884148432471973498880822174628293954179691369766729682610842911797457943905732812155750112685361801073217635471883531194304900357896876105523094121851588033459496797428378169512157997538961008368510168408847012364230253896032427278066202653412300055406188609099223301805632070353238955972970372647739424853134988252331612677356368293891725021812119261461376658099499342233854801892322732590810429317954540199285771743113199929354358456461548955816820322316198042419055302847915385072270134216145201585801343247338637822454049683381/113449367176760629649785787180295103333345629743843282013680009559505842736856798289975522735408862946297210884985400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "16": "72714449937547674621090014168249259400886702243536040906519526921597518648811750182673741648634113127969646445878084069324600860814261905081494862707758450165562200927298195362921456298479717214732101493270288469180824638294038479635734949734347109994085189837893340473652218332518349640515092740435754175557896272156428690509366758205941151704196489038118425700358398273421588875703650333648883568944463469883378006558039880291368820214814119333715367436793750609645241118828731454702586384618754900755060083121561489224772656346118738262315267327562387503432774745150881360688992998876257210219830087236691977816332378784177300595936372416602483011781821658158631465767149877972472432540525446010323963795807232991627462915594409094217075758660241806299013262901/56724683588380314824892893590147551666672814871921641006840004779752921368428399144987761367704431473148605442492700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "7": "4546118118423544719171020963826645496315433792029459939904331480134709606707770448620915363230534066394335959744773562072910684491601849033392590651945066153756333452050387820719319670252897829711241930747145592170535869721190244874742043645508104907419724376872411293671575113417837350773759369358334659309972660953721525964282925820967466040522200555216183453251819598042107985378785162638767338852770868018412922844655908750525622072031140788447786112799657751937561627802562072595872630592242893368435116986763254354197576994006368253778425214944151217765041751051415473165153950900408775983731413238978828222186676903060701547800086025252168171625949379945697125915391342300036277635813312098153735219478077869174583168989817940729415525881891114076840380867/4905918580616675876747493499688436900901432637571601384375351764735387794026239926052995577747410289569609119350720000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "9": "210513517348627080400317080116529011955117105786247552189132310471257884137032687380608596966945441711869056402071035186684382525665538048427352411978216831508909868617013453527293479615907502277702023178665487104863144581081108529777121526029315607202199276117654032342999855122232385970989582298886269616859920159410747679464180019899516175652088922523342413309036572975305654396720123620652990739844716782059414933431552019034092592535495838931211577638368578321550647209381635948980809579965591155584546625009671344341337395251768683547700754082320708196080126815798076684321072507395301397169933768929079998577392777078539669968232903409494619509330328703811794517663499328966104271131307661916978354680359/169688278109459113561346185832489183330456786384182747569259200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "2": "9513892857660842566284931542108856954718167293841531910234929962739275602969121506872033870520036776797065522052245720447399824410007768163021337660846006653935332610391493714133224614202037564672908091942970446479819224709264816051230681975899325609158515158363051606325219762815300082473191228472244623653596773254754680191841460704107986947174358475962102716108913946451361757278382264020904369909958296645117342771745211006615455515494408190686779825814007324990922149805568675355437971304704875864260574714244468430375919945568027171515130915091253341797194915494353733819513652775250212765757699006592801632870121364158941626210586732878226243295984547475090635454206177937671188999524566694876731160799642297433818259869439384205464379961486760896816006151/32414104907645894185653082051512886666670179926812366289622859874144526496244799511421577924402532270370631681424400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "11": "3671772260795991308790148844608559592561041310108101659351082473638553942585759043499831887010190680651759843222215842208299151461018361098976087151135214396268199420629098279337644745010753901522500041003261024972418736927897022581218049237471410363019301594760654582101799226138827655828100330727170539184149783530420183449240705389211260450670836804101477559467780095252148546589737326285018903024968855703420620814534429860370598652224197234116032280789325041080290106175611947779652510915845279259610582363486648338735738815846021877680782919485626919376495381331137125075903916830934886204120197822219417871040836094794654490577597138855202815937135574040008226230536353064596359866867157461640482167098244709822889626943273482877564805298248606642417460021/3300345226960309226175586536154039369697327410729986385852509369003806334163106859344742479575530558437737043926848000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "6": "113914743602522864479113923903697581627436019698813892932685228243348457160048401701667125766249362917794464770834979216035433187522919008479301646751277764474105572977268432025934061209569528940871334491615288535241791143409641383837832468472089778451023310631636102853421085659789560486296611695874221615256924464559915056522112013288398483068590701491777839267258862742147094655585078003306140879519776907045565103741180894955584040215524439839740857635287224242311126006185064927343396173636010733806670886779387509982492578987605928327731909127913874419007393765564321647567682753730271557230106393476859751783358636146729091085399081879350445066228981172793992310279596072129243858431324829603699366654050238338150876084914508867611579495967623380232007315693/151265822902347506199714382907060137777794172991791042684906679412674456982475731053300696980545150595062947846647200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "12": "93789315432246450000367906077191684528595508046848730239002823857007811290096150835523980447365677026977894010582950961091884119962255649275570288040130134230391167959181821886210903259569217485971079243450489818920138250238398579876748574635557648766374234804821179617933239475804943422081936551022560113246559908505923125502554467866218202896136099317179256071684199587478025837340279135753638187319103809279691907038509922900743851415857675853191628173582485269387780904105815487458025040876192692444014891773909532677782691295694662312408342134507704214775325468446263296665658703726522681790488218261488798230052623069271595504563976572036903171045456251387654549903958047096656128459540090997384342532813497837524899119571152363857952517658459816448916881797/75632911451173753099857191453530068888897086495895521342453339706337228491237865526650348490272575297531473923323600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "5": "256840776246987695717410234886779910337273615577730012435333714275153770000062748591182249678779046127182955797511798193645458913636804623497068991941092704566179900124913735776469743908310297750635206764349726959110073757116149518546816067574730162180385946902165440660377633177299739673018969003887081397782100060844559072131241961198315711834791920076106747856779709276553305162164067799584876856520881480321346136904044391001750883729043912568150143603742275809230927386353397200933629886472590434819102986798649512742067100360895485072418342000051992698065409567458056245633527089832693035905854243333014481649675876798938296198455853255439957889892066962254746508789683591544161160957824794623953946656926395796115890240340420002476298600015043104687679984637/453797468707042518599143148721180413333382518975373128054720038238023370947427193159902090941635451785188843539941600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "32": "21977969226920325057625829244221799464444686321680677586444160991434991210835974752551873858077443508631396741664928163692566486342151351757762218655468386382106255090178508514386969165528090169027949554171621033407349680146188601837579756487842878060162352563298203646631753220605787020046657517390354996528073023355042343578192206070296328214958558468784270355205412654034270354505381372524352141967405265259557667082083844295694595639038112538030843266217880450521389234429769504789509021933005467427473778150171528729732011148187354063786752570531317623393173903382606953525653815711245115942027620706956522219210719422111924657429624261776513917355547255617463828117008272151280140022406281938200056230768831032337897240929137861210716530787380571220911383637/28362341794190157412446446795073775833336407435960820503420002389876460684214199572493880683852215736574302721246350000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "23": "484607286300143165983627291607683241511282663724910388940597033479748379522164268273240562274752320599828607351669240661230897311791277512346038272140569080700158518391069830046298450856251033743932626382993566109908928400123654477640791296421971846059687318043685059993672977165601655296896186423557381982024818444068006500108589798586242701792951087211541921747415238272115281130463081272640513910762975334654732316460046779360192809626799544922606038437939840923455576182294157251104737543929907699641772903281953346368721650795957108529638525016668159550566750131163170370171879441964575468310681273752673497909024407499238914811453521036676861730660917660786610999527713970211216982403702401919402830262991832794555269929119374798919163245440712967261719926207/453797468707042518599143148721180413333382518975373128054720038238023370947427193159902090941635451785188843539941600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "14": "13118481277187875834266397113478304724688759567071012682457531677684766124334477391118043199858900325468094640850003601325811072442531956999998618541509023279708677333937144584581649097320202797845360673748792860334338449775976610026208984727253856662448943741331758650139738851813544030117101223369946822066487777444772771606445094040886222283192844762763413432337875777629757109769547005437331187777341074303833369210540629534856060959673004459002817818876377661240400975361228245306212434793168704871374110566814616546131787634531220622459437665936544306628973550825856975631369646844403568718659392448103061030048591405205837816262630560718539254642236460760481337153127803731416674612616046385106051634546202782164314550373776551872795914890157460622644395871/12264796451541689691868733749221092252253581593929003460938379411838469485065599815132488944368525723924022798376800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "24": "43028352747857614296613765792712178114614048715727613879721330714938113444133829049345064204162203678105610690086606135093731011884439907400140534984586386485360195170755081537623815472531847873504170082148365087473392442620644561789213603473849642309282741733518440683039692131740266840950431467385343518723656664901529389742804376085847705340847484555098750656854963648183086353382358081865581892580488045802341550674581717594953832237908000668000631331941845735936721930313429222641799690763992690377387213181396895155698355662092077533195947422032761461316935056140972606914941974415004930030073106533370809218421731974312232493128152425249810515773792022369847023656995727497936555414422277486610516018206025882967962836711042520913708703892331486456239705877/37816455725586876549928595726765034444448543247947760671226669853168614245618932763325174245136287648765736961661800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "15": "39612545083025758198916151753405492598730479259158884477876699748512425796761005983171458323883091734740536920290454858754729797453800485345706580401130770265427065327365149007047073412029101088843335386786181772355830936034961343761147004198160046203444078204013697683880981036746485337632612333788203508227307839489958603489511667931890490616230238777013668277576943831372097999096177922217675523766831130056839726255021219866046824550035895118199231608091982046937365952815805812541358571353301341354416716125633886229946887698783573504400029715992941078268801973464903491125743208269065537073661928058786017253999330421309258855927773138612639204379351216980793682100402880533465689796290236195583846638850713703995830737103907628086357811605498362424822398809/33614627311632779155492085090457808395065371775953565041090373202816545996105718011844599329010033465569543965921600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "25": "546550502271863790547208620275638413767159067839471829347649184210408863501323400965385582262036300650315089476505538186376382075031447822279345663247146754682566127259176554407958077398820855974498501688739766079433600754528184532211689969410263638472320851610426345859712319812131134090731817820800175633766775735860888327619647969986627683516586342168885404169910008089024007997330742107977270654627151452793705014379572116596631469777765791553871432906188872737350894812312839639503988524288150714808480377839335172116613715600687463671069940036037874413848718749979966145127186912349076910752158744892110032365869273402542812397373029001167928485701266070793754271983125867880142477221566644141353755240219891877819099429782791567275826517080846817655751570481/453797468707042518599143148721180413333382518975373128054720038238023370947427193159902090941635451785188843539941600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "17": "1252750880880615707388267541872566422256187054301660653767096268878418820780532538653953441700278808461157053733205845330612024876282383365621011440806945216649793223280044431546434015454546821979095896314593526894803333705780693058364539525080753757269520408184479326975659150729053907589432596893828786676192111875629539402640315018441520791434488610891966317362628365321754359407834071069834248114260921448881086432428755700545275223452086070753859326256728523733482049040684573414572654859225150789759517576457869698045136065174543267580229982017212082149835710971434106694216566472909328978365208288840175165065405751471939212866069186793506543326635795752881370221778403744029128951631353879737492469809916271209206622676831346891352164925128292505359285349229/907594937414085037198286297442360826666765037950746256109440076476046741894854386319804181883270903570377687079883200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "18": "55025386663584035036223922935390062464291061154298157081968423180830760078092637279174973985911694317052321482194156554843749855008597462578097551650974273708715519919647968377236254269754002978676341788357564823110111758916841529018236632761899284866371556530219319734889006733261405176779606611195754732944652962043788042611759214671637439636989602269229439272489100570204182648433997793178999233743231779587523744361467442755182884249388724791345216624118406591442545727394653280333366369075183507652569973833416976359905768491126985951450766912094765959787609420024308713523211615397732484139892086663888888824906411105515793354351952609152270205512112577414600453949114839117552797670735879409079546347573/37331421184081004983496160883147620332700493004520204465237024000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "10": "31690805905687433652516951774642571454538861026107922129115565220214455239089998430665687944346034086362186366392771942721050087423750219319966232167876321520029595367466783022995340658033230024906118332827497258762302589597797858017876282017882619409101595491286269622020422353122991086192463711795704607366501886595286476146488899394558971372851638768053640222986259491366827452378188566468835339571038292655100938740115241155680216240247535372722853479607187225909921613633143091123657555862938938309581979407670771101795813002826446477199449908492034067665556400701309694727840044930978185995738235167906958837275398361411753316969609911821196537287408543166225189538972976742780579821502422530455982465730366971126970146089184462820203090756516821541335906707/32414104907645894185653082051512886666670179926812366289622859874144526496244799511421577924402532270370631681424400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "27": "72044852666912173312279609095235157137950677247693755444042798068179068296355341002009140438299629528195331015852187257213248573641589610034038514249032156559601332785268854271136812085547004125841757056660150274902023764430476760121516172534224275233215586082149189415259654163015958536240085930531551858735560762979344472746390238989519982259097073990493260122549429230872065984166668402135404973924854198676403152355488894823190437667731436098821985027061182555164161167943765051167231425368719441342829697081190424896891173132755458835730348552397897810277854114901566375838266796290799008243946033092666823056640913992375924712614881138193520189134113452917370859429099081035458062682693301956207849/54250693452498670281540877399477452352905989880545777043278320312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "19": "525192971902719020085591899558532741002741535163953921178004671458308959646449495679408123467240098216025881169255585886210531431546133938577627402302327125725632631615336994856153615793939789318128467043788089435561101897491637796157707967367115041242479007616002856328925378920155015317433973933184047717213807858203649527120593838244066654508855751406451074115300415656258548142073707570479925879469399013048158389094931120872933404817342988650759096555469019564868176157827074445604616336697901672288009317771420155836925828117406189680933512835248562674584502205037765840437471573274708691635543733006312645002139635258127968818005036260894302736810427266405625382099129686818405102475293400445577942494544631547124143096734481999110687638786371001018880237291/453797468707042518599143148721180413333382518975373128054720038238023370947427193159902090941635451785188843539941600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "20": "28187257140464882878905924557038584626758950240544037286870991626439550425849209261354847152851954373719321614884528597963424010579011472932711030458790128425074990883680497549550757627180588955960037024555950626935804001062555913718449987846414770761782917116455505558999876580326889705856839497920623080414118769303900303480565773033313261370085340471757010523740852984036054630529815552790432926352359842942171059020961858863148740694797158051968305896092051276315099497108204172069174359123091510849802596466491700501767414924692146518378368647457028436516895994445039626079584267262748443666360602006243263687329709529013168285972361228217267402016916291263225858867748734029788553346415717377400282854661869796990236655914234815547550036203963426327261536181/22689873435352125929957157436059020666669125948768656402736001911901168547371359657995104547081772589259442176997080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "13": "1235103082028670041988740971096433559064657796991329917332122853972958838660001608144689261077792314232987344034623800301972060706306209208987707432590382202145010113743457625371466192972564664177728150815979502887365196251962349070140134202140291137640052579322504245676318515498169825320564607068003898355972529635770926026764582250131467981178508990381636925474967004896964180383107351093168724681712630720181481496851346321234381394539901721107549527550186103049547464526259393112144273518748753853506957450730636927907697128411649640928701178182525340299942024091335537589405895942419564802307399416033856225311346319958282369369398966542858902776423679837099720151609342033291407390239602167770790553582848596500313021859212482052075656118287299376592908639433/907594937414085037198286297442360826666765037950746256109440076476046741894854386319804181883270903570377687079883200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "22": "435626665918551596724804495519391042825614035967281626625195066432252919697338087076739579861426435997855407033969499901893761472071757870685177780569450003840764013136651929037298566516570368119949519696812645525753304586878618998320372913101032829367443208093935633780481243527608500388727917758620679015043250942922329194344126420718097850302669808196983952104704535020584126100232976641251737983047178903696098493813569808407333875146997510567884350988735379293166954539130115817889334468523596885045875685069669530133168190012156239021465605929958022080085357530534656056634109712843988702225512032397130312727088886670405008281396767409869815310766020054897903993582551954344655851510705796968714029008477/311095176534008374862468007359563502772504108371001703876975200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "28": "31747516920051187308356504367395630569365195954312398594349414852098501797827832289284593494144285917223679619520253796635266551987896748561583227006282297276291626202832911522660286510020274786090403895217050475622521313415360759316502140526628374878290329053321833839396528447748802388878992249798176459767652237910665893980512187258047233813509952311275811140472922965614342929822168603734636494554264982318404017880175357840001069568724660519957574424985445460555423205794058088863622369662892751620452832442091993894183081760216781112149346466153114404951648499188752644754667020852469994953390716209166175075819158537028043053006254172491838773925857922558144580900939956191225179350247013244288050524456822160160036628595734003279662382813362262684036763237/32414104907645894185653082051512886666670179926812366289622859874144526496244799511421577924402532270370631681424400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "21": "66718812057473336503313750251614437968876448317703304510302044459501622708372629958849379717337015045586109444619922438243586602628374963794701549900639913328045977172000271682841029350412228503087376450301796257883556158999626863173953255054003089209412335194464309779849982388060486621466430226687325113926316539557356580848194649506083081819698934564462362797499658623878140820378116492950094846742750289607021898897898236686829377474311248914175818318863367203695152835217685495561019577192590691982744377657447732421622529591410135888454352264028966167401862802241623313667463319192504577029246110876168103573800240285717561933099034947629713869130304806725957684023630927442514304293863537729409397261719970956587317567353939460632894643670218324632214888373/50421940967449168733238127635686712592598057663930347561635559804224818994158577017766898993515050198354315948882400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "39": "758775758797627575718206623936584316556106366359606009670722780692337693137031504274340740428697820577367136754451997185265082677722280620976781179442594511206848828210783444246862820894840723993633960773654136583934596458057524123785500535194060539924032222046923080661288239501187138560664001798251813398193789763936240857288266537758152061908388631250918403640952387403049770977647374975485125940555806533633264128780361827206241461549232375299707424110303459405076561750210242666405978966821689872335416212782489882658538478077881081439265056559109194696513346928604449382912787666558916793478890821925152745684752714805651113692760117257915403977727154052847391359840457280382784860216405319801213488379770040956537764206585504788386160787909984635278905753/1210126583218780049597715063256481102222353383934328341479253435301395655859805848426405575844361204760503582773177600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "30": "164192186782839923958129599819342800486323568794713847793170042365665383137727327271964757188813754450494136781069715276839178443100608938581213992977088027449332153611694771945388704749006063658458495134656235685960895432905298927044996263646226221350891892092408973024430454693450772140013433084912333859235635561516974912340805559822031293029001214230908614984846720652145151796947395694501650801601662623026598788758063802606675844778039997936205763109657877394991958768472880166607416313926381337521177975481692325436460791222981092579294397997664710857642485366521956194423308638323178237345867066040297761097183393049420578944763634071928130558772780146124644498944783404156264815707322146753033538031965964844563869422538776031122125909759955738623754811089/151265822902347506199714382907060137777794172991791042684906679412674456982475731053300696980545150595062947846647200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "40": "1375755238924172750643693482093578482779221880272629231536206905390079382073825289318996057318286505485032268048471563108609623063016544435876996523228901270598822907301445147327131328116260476635956563873321204980886506377147686313086653562531890712339397771564301748533007836332748073486033871986182645363485785760867918919272747147573057884174646277517269477450381447243793778880923455404096565030683143010638602558369279337411804554031520035447239400258056396151996677866761920989991247045159923727236818465535604293559192777904194885083332747742708707228441919125223504925904029153571557766823393360235230063330266746426774828173867299685076655280709277383604629081334900608808039717633220598128498940023921/2099892441604556530321659049677053643714402731504261501169582600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "31": "4652547066765769269627023249033818661635476761763813630533858723596891577102884033592101301943416780170390919979418258312630982879239515110772705330423178830425042629690634698614939835672168881554523710574161815162759028239783693287767584505244238313127558850502489324087117475823741236234862123539455027191475862120107068627466773617615873915299429602454418949240964178913955533399470675562575892126600792410256430517577584199690521755517647382105732886942477853042356677687080024276375541639944480098212019908846864491518963567880492181362775553197404874003457440330125134124684212930439899896073215183900825593503446891583423619328383782611766510918654941858904849257031002437285146763742954563784426425197/4101352425008899473284490331400495397879692834969260744471841015625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "41": "1040442853496870851625521630405034206713457910798063228859946397039841208463691500507268991038182173137723383459504850055386853060100939150008536851964419444885063626601760463095055657658090658595499824227595708251003951610071043499848433773045636242392665915162519469926973430584583474106728532439628509184314753774073349915313820823011644630110009619437359938282788656411338201994344235595101513751644709866218413431967886151795194762085991382732228624079729151942085647575436219721681760392931209897779367843941604017438290814366010071602440852236354181132258064001116890152025440751599389380556878180072609485474386525461106642611966836759056407680354269669830862723889796442803962187137678538774005044356191/1527194502985132022052115672492402649974111077457644728123332800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "33": "8048662553952403547945749599584392320271309426480682195700512523843943877358435691528563623338704073369654074463938388187502253848334023665864126482181998628986906896147503234032960949713675777677289514079844121398666374614170187585361300303325868971001467838589030352276345518074842038374528513071706580461377987738240560821282028142129635744928148717490841170413617750430988072786910136980522675659103494303619424343764318426850994963826052910864272644069339342157601206214748646891458405629732032072332875083351000483113151664959656091274248495346806625684246002594125188442316908288904644713550536381429847103036759944896602195045047880130468152702697570307892297817299702612826957141310730320056298669/6572680168283492745648221684936691342755918004758430680243334960937500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "34": "10633452128170139432367683334692205985978422452862335063736336720580345059066655381293485694639107588451525108190886285805772385018917548463465319639255393354986798910183464315958921565900189788113702962547321091999050117973601117134650431996817562146449059957878813810771151216881052875102503516142073637698334705113692898888324740396833530573549551014465421822896807332442425982449567882024271518778972920825124116775980894865400549860503974764418041889238228012290089985710227819223405595923066186781866855809171072245396535093617178604773098216289000077509371604292902087825529198780373326225174585621495497463206700371108732329145950912498223221659819730914673250070368944450077660036902721200586598023463213/8399569766418226121286636198708214574857610926017046004678330400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "26": "4602393077007507960397651824543853457495397337772405470799517237313626969819950948508890150406727345370741128974023276890101877743741617985389759096933274261414357876366781337683569690289236952717044979183945227909420161954075157093635749129568851800936181728535021266228594496704275156968417362391550678366830203070153728832924733506222509973863029245869733941393330942272306552852278287386394104218153020035809036601335643290342159084927983632038386154679966452474546183752514730052921263167685602314105024064349052899758398326253178022166964491253713164905883607896557529542170017457127144060597193421646668619054981381917118829385623965586094713690875072046053006881917732442126319765110850569917396805027532998859634454901021571488148224867419519274274608381/3630379749656340148793145189769443306667060151802985024437760305904186967579417545279216727533083614281510748319532800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "43": "2984481571522092084415368058010366348050562317613930739253441339856650581454965090346508238628786551598243562214524278025670157691168195858394946467658118557417086122970101255906578682721976487948874957721363079416494090174326047513704817671019825665258340067157271330967336004449901183661936411154177231619676863151409817119040037726855388523231134923038754074339888981342390479155495237497005235701910431365540428469958725714745901395110541799233010737292429800808510810569291235529209650400548059724715959405604937446679613450041994472574649315667747757782717246773325889984455923253939607082349922889133890895733268598639541989872375102771457408607157608929191499051815761442293775908965579099784201227697/4101352425008899473284490331400495397879692834969260744471841015625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "35": "15104741228077603830598127932980243948500908853735508963266962935982128896571871993800493640871258889525953115709357347595656473965242835065343001427828862503588302472131869462540030898773321980866307182616304507929647994206894858222030514075005479188648916410958080453905799769989466310796530105920621867851498283322018217262146521467981686054486473429362134926646033285106873021131833511928380647229765673909701027278417237211021245828134926432987244655926361941391826967455921377265524762323031601410254036887518096536702776411186994748178449463408591161342831134398005929812922688582311766034834516486044211899015995393808688951610236052695585702891971547695592994743945270927181971642535634018506496694493831/16799139532836452242573272397416429149715221852034092009356660800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "36": "145570875175337811808029244285625121456824990458029649157511694068131069894774814917655577709753000493998362026918301672051192317422893964441465610695532015813058490008098156477087067026264476787428311096028710019606487645692018353790316017547881126512650167383365271245954411514887824834027244920674944428200630169354304689873110701732357829465687481197811315377737832498765683860421927744339848269594812106277167184946003767570059075309174299447398445988395010266677104452776286123510070940540932975724115229639122202725276078965433738349762445124464760007060936715037218631371610927425916726035623576110219037549091936331927089860799561257779254534763815000513931325374870328116501262225660194693457443037343/155547588267004187431234003679781751386252054185500851938487600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "29": "5904589845330570194602124074665056682158268685461914273513464063322328013869689235394425368544159699032381649978324076025514333903922474997877438866813334715647823472800789071237484498277970368321948592683981499511754367685354131521003561767529790203376683276747440551639665793632254404186177177926684911921746906489523924389058237856915005223291103305508142387576274061278947159871416880432184825650056006513264268228604081361271604746871434401393274195574201295887753765049477660516208168993113329018524969477804093203573667347955453838069567324326728585920881349743865465268078557060697959029509140287535444700762423065417364421389252613741055195908896676543092816715471998030305697119067035122407858067159/4101352425008899473284490331400495397879692834969260744471841015625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "38": "2888373394158633191823013870194237558685468855896909708941328604372215196585787781927982689502301036815447418312739402537001500408715895482274687094468453709460830418451752125869536087938741558937251057516364006218920682136148811408206328806885307996973597261567928842326254174284641204754066509582656497557830848498245890319359692877587942922927680706975632322973054491988302273083447017846557324010971255660606099459456348440989653447704904853616583839707849505250910871017564133591077245844067503876094423681731742553489227066026454299795180370680246368083725071378837619367827634613442998722448108547427667446316060226934557544030695455578005631697898829875178503567655592714789732945948351904483785625009/2050676212504449736642245165700247698939846417484630372235920507812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "44": "1437252422703441846435003025001926056753599009576428816546055080265474436643131177760591442607414413081101363206972024546873585511080801901017358865824445049515193062210824380666048837225933927890183911115269054796276191112358458146088526953917105902925359737313363927295914131916630596946125090943506095569060118790105496694959159824699256063669402239448654047097633630692012113643581152185872714989209571546113007330095653998145397482330110557684684096582268571442711315882761722612680138403898387390493116494412224837710142610027882927465465092576717931183680310795386833023550339177721382356509033607549456079370401999463148058961906484179837908339939590919348622222035720296129531985406809316561306932333343/4199784883209113060643318099354107287428805463008523002339165200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "37": "16301020720855138049746952921143081701134789532890601723676557182135460884999853267874767801532751875086874152689269182164501004326738480741983891334094905647907977084655606791500358227413228511060036020421527476243200781061125027901473744889490318426480100238497046210887092990689373715495585245307737605926038800879431243491754664873816285712206984117653825207170038949386217053099526815902684268659006808596995611633504290421057450017631654505914071444308037910717105773386688945469371552555469761037072734740978391733179530192832686695843626870045021991805975188322637496896192448521759650827994111064761897326059781725002882803955625474547796195398260386669853318284620855785316851184855515258136809749880897/16799139532836452242573272397416429149715221852034092009356660800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + }, + "minimum_strict_margin": "9513892857660842566284931542108856954718167293841531910234929962739275602969121506872033870520036776797065522052245720447399824410007768163021337660846006653935332610391493714133224614202037564672908091942970446479819224709264816051230681975899325609158515158363051606325219762815300082473191228472244623653596773254754680191841460704107986947174358475962102716108913946451361757278382264020904369909958296645117342771745211006615455515494408190686779825814007324990922149805568675355437971304704875864260574714244468430375919945568027171515130915091253341797194915494353733819513652775250212765757699006592801632870121364158941626210586732878226243295984547475090635454206177937671188999524566694876731160799642297433818259869439384205464379961486760896816006151/32414104907645894185653082051512886666670179926812366289622859874144526496244799511421577924402532270370631681424400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + } + }, + "kappa_strict_rational_upper": "1676905273619680861301/1001676905273619680861301", + "kappa_strict_upper_decimal": "0.001674097969905390510171476063685786209202290684500732119672646888867108", + "all_T_grid_upper": "167409796990539/100000000000000000", + "all_T_grid_upper_decimal": "0.00167409796990539", + "source_sha256": { + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/gauge44-slots/data/PLAN.json": "1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ASSEMBLY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..f2c5fac237 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ASSEMBLY.json @@ -0,0 +1,347 @@ +{ + "status": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY", + "kappa": "1672196274581061/1000000000000000000", + "kappa_decimal": "0.001672196274581061", + "complex_lower": "837498599328294420877/500000000000000000000000", + "complex_decimal": "0.001674997198656588841754", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "gain_over_pr635_percent": "2.197400137451192132777215427059875285749650841912810186405092998724973", + "complex_profile": { + "1": 174774, + "2": 30096, + "3": 31351, + "4": 10224, + "5": 5904, + "8": 576, + "23": 2, + "32": 4, + "39": 1, + "48": 2426 + }, + "provider_counts": { + "gauge44": 72 + }, + "surcharge_model": { + "complex": false, + "bit": true + }, + "conservative_complex_lower": "1674997195795608988513/1000000000000000000000000", + "conservative_complex_decimal": "0.001674997195795608988513", + "conservative_kappa": "1672196271729641/1000000000000000000", + "conservative_kappa_decimal": "0.001672196271729641", + "conservative_moments": [ + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "1674997195795608988513/1000000000000000000000000", + "accept": true, + "mercator": [ + "-37600598415530113036473530431956643821025501/13479973333575319897333507543509815336818572211270286240551805124608", + "-9400149603882528259118382607989160955256375/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "-13946841244781140110151/5000000000000000000000000000000000000000000000", + "-27893672489562280220161/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "837498597897804494257/500000000000000000000000", + "accept": false, + "mercator": [ + "3784708390047855027703470917605686069377423/26959946667150639794667015087019630673637144422540572481103610249216", + "3784708390047855027703470917605686069377425/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "1403817510797344197159/10000000000000000000000000000000000000000000000", + "1403827510797344197301/10000000000000000000000000000000000000000000000" + ] + } + ], + "conservative_bootstrap": [ + { + "exponent": "1672256000414336414381349526885177004212006100458917925035360417530687188881895327321034048831/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "2741195381272574131647798117627200179005386541082074964639582469312811118104672678965951169/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4790959702863" + }, + { + "exponent": "1674992604301032229076111774607474314394725631494721962904252274578666706746669548166549971691594728751172090608573237089353017335335039921697/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4591494576759436885550395329889996285855505278037095747725421333293253330451833450028308405271248827909391426762910646982664664960078303/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1707632254663679726" + }, + { + "exponent": "1674997188104868447930193995947867660079072418170766188777500590534561979554379275382167998703837690701032238830152169391156157683578553790715927121914157321342570061497039714017175107533439/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "7690740540582803329054936544311939068829233811222499409465438020445620724617832001296162309298967761169847830608843842316421446209284072878085842678657429938502960285982824892466561/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "608647974105420657491068" + }, + { + "exponent": "1674997195782727019673929523458991537266943968337075572853726481257422104481688520795011271513329965621550354249596417652667991305485519539622729296093851991490904049844758250139923333495120837725243476814072818318231831082113590885613793/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "12881968839067801543812667124067518662924427146273518742577895518311479204988728486670034378449645750403582347332008694514480460377270703906148008509095950155241749860076666504879162274756523185927181681768168917886409114386207/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "216939188968173866500552236643" + }, + { + "exponent": "1674997195795587411251315560018605394819968336294137641049453555574175740822662925769106478073520684106376722828745575618566538114441986198158866773164891068057750870239067304525458788514213946976579894752752188998269447594671605831296161015708375870268576195534269581015879268108640191/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "21577261681764984198809571043150705862358950546444425824259177337074230893521926479315893623277171254424381433461885558013801841133226835108931942249129760932695474541211485786053023420105247247811001730552405328394168703838984291624129731423804465730418984120731891359809/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "77323204401264608124635767069436681" + }, + { + "exponent": "1674997195795608952371144515098409680656362994687524871312876928065740054264137173583356023801655447857844818734207760102972024001892643082719304175454062860683177567477146842997169748314418565873433277832418651266016440370597044564300325985189621369900348819563679015963925536531672083262339834036965147496409522319493794042630874017/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "36141852809904394523734648492312475128687123071934259945735862826416643976198344552142155181265792239897027975998107356917280695824545937139316822432522853157002830251685581434126566722167581348733983559629402955435699674014810378630099651180436320984036074463468327916737660165963034852503590477680506205957369125983/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "27560156223119648871917122463130520807180" + }, + { + "exponent": "1674997195795608988452459822895356692388508924335158322389668002265731936378652106586636272857919538855154324901344825816446802755370271116190835483702951398471106503951839803979400841113005444743918948571478152551416022899144660727488689779532603325141446327706039949745543013474388084277672600604708392565798238149528332694596139930024436449405063267387467483688322806909496833279/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "60537502107447512002502562664841677610331997734268063621347893413363727142080461144845675098655174183553197244629728883809164516297048601528893496048160196020599158886994555256081051428521847448583977100855339272511310220467396674858553672293960050254456986525611915722327399395291607434201761850471667305403860069975563550594936732612532516311677193090503166721/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9823211763199226589827388999238019600500248445" + } + ], + "conservative_outer": { + "bit_positive": "1674997195795608988452459822895356692388508924335158322389668002265731936378652106586636272857919538855154324901344825816446802755370271116190835483702951398471106503951839803979400841113005444743918948571478152551416022899144660727488689779532603325141446327706039949745543013474388084277672600604708392565798238149528332694596139930024436449405063267387467483688322806909496833279/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "60540177104643307611491075664841677610331997734268063621347893413363727142080461144845675098655174183553197244629728883809164516297048601528893496048160196020599158886994555256081051428521847448583977100855339272511310220467396674858553672293960050254456986525611915722327399395291607434201761850471667305403860069975563550594936732612532516311677193090503166721/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "29575002804204391011487/1000000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "60538502107447512002502562664841677610331997734268063621347893413363727142080461144845675098655174183553197244629728883809164516297048601528893496048160196020599158886994555256081051428521847448583977100855339272511310220467396674858553672293960050254456986525611915722327399395291607434201761850471667305403860069975563550594936732612532516311677193090503166721/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "1674997195795608988452459822895356692388508924335158322389668002265731936378652106586636272857919538855154324901344825816446802755370271116190835483702951398471106503951839803979400841113005444743918948571478152551416022899144660727488689779532603325141446327706039949745543013474388084277672600604708392565798238149528332694596139930024436449405063267387467483688322806909496833279/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "30270926050919551610239733792243734161858387376058366968996336374684129302976609224529424185600445011315453776639765786730398704951279671035562938859563800961698050550001229467844505115102036729736732469376241114408206526256597482090004324836759557730553634709133663901113445240659278105185158597836438361094495833225931303630162962446196282592288001608518970827983688322806909496833279/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "837498597897804494226353236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "499162501402102195505773646763549517449414733990292243734161858387376058366968996336374684129302976609224529424185600445011315453776639765786730398704951279671035562938859563800961698050550001229467844505115102036729736732469376241114408206526256597482090004324836759557730553634709133663901113445240659278105185158597836438361094495833225931303630162962446196282592288001608518970827983688322806909496833279/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "1674997195795608988452459822895356692388508924335158322389668002265731936378652106586636272857919538855154324901344825816446802755370271116190835483702951398471106503951839803979400841113005444743918948571478152551416022899144660727488689779532603325141446327706039949745543013474388084277672600604708392565798238149528332694596139930024436449405063267387467483688322806909496833279/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "60541852101839103220479528124664572967024386243192398779670283081365992874016839796952261734928032103092052398954630228634980963099803971800009686883643898971997629993498507095885030829362960454028721019803910750663861636490295819519281160983739582857782127971939621762277144938305081822286039523072272013796425868213713078927631328752462540748126598153770554188483688322806909496833279/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "1674997195795608988452459822895356692388508924335158322389668002265731936378652106586636272857919538855154324901344825816446802755370271116190835483702951398471106503951839803979400841113005444743918948571478152551416022899144660727488689779532603325141446327706039949745543013474388084277672600604708392565798238149528332694596139930024436449405063267387467483688322806909496833279/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "1674997195795608988452459822895356692388508924335158322389668002265731936378652106586636272857919538855154324901344825816446802755370271116190835483702951398471106503951839803979400841113005444743918948571478152551416022899144660727488689779532603325141446327706039949745543013474388084277672600604708392565798238149528332694596139930024436449405063267387467483688322806909496833279/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "30270926050919551610239733792243734161858387376058366968996336374684129302976609224529424185600445011315453776639765786730398704951279671035562938859563800961698050550001229467844505115102036729736732469376241114408206526256597482090004324836759557730553634709133663901113445240659278105185158597836438361094495833225931303630162962446196282592288001608518970827983688322806909496833279/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "499999999999999999999999500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721", + "epsilon_below_one": "837498597897804494226728236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721", + "guard_width": "837498597897804494226728236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721", + "K_geometry": "375837498597897804494226353236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721000000000000000000000000", + "K_dominates_log": "837498597897804494226352398951884652780771783354519815355591027357931925274737825483703246755390359771806950498528857965293770752784419813714612610502496968730223791539141150317972985012937630095956456582948513271492735375128873987628523210475871894151110083369766698866928455295191172858444285312975431028478742515608802298183609351932666532808198132049636943339015628554443475368298903965194699022137548983688322806909496833279/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721000000000000000000000000", + "record_suffix": "837498597897804494226728236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721", + "phase_local": "6699988783182435953813325054105262506877633851433813676222582315725523356491763470860914341634554095200100981199325742886085594316306059306601821675843539271481283219522194543586086631162929023821044920777234256163335608089495186186771077526679689519521079809512449794753053012331255525550650168628360484292182632330753733770522138519351147407397057394926262965192999617294810679572413085705546332544304595983688322806909496833279/4006699988783182435953809825891603860404682128077662050126705132900991533064248029309002526965576187126203764606515196439909476369786881873706156810360389762631715496489123489592306415595599990164257243959079183706162106140244990071084734347789947220143279965401305923538155570922326930688791092438074725775158518731217308493111244033334192549570958696300430429739261695987131848233376130493417544724025333768000000000000000000000000", + "phase_boundary": "1339997756636487190762264340822174183131931389304173574858475994932296905093340023658892769173604394237089295987168590958504498486800560341676373387531729166108886028223402869740954154682936892415249753513887291233650695893503129318983599294721913404897107488467710964228596274469710974517776218168579864165367647356906939281526911851997107750630100354581919173783642827589332092871508690971510553324037581583688322806909496833279/801339997756636487190761965178320772080936425615532410025341026580198306612849605861800505393115237425240752921303039287981895273957376374741231362072077952526343099297824697918461283119119998032851448791815836741232421228048998014216946869557989444028655993080261184707631114184465386137758218487614945155031703746243461698622248806666838509914191739260086085947852339197426369646675226098683508944805066753600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "999999999999999999999998499162501402102195505773771763549517449414733990292243734161858387376058366968996336374684129302976609224529424185600445011315453776639765786730398704951279671035562938859563800961698050550001229467844505115102036729736732469376241114408206526256597482090004324836759557730553634709133663901113445240659278105185158597836438361094495833225931303630162962446196282592288001608518970827983688322806909496833279/2003349994391591217976904912945801930202341064038831025063352566450495766532124014654501263482788093563101882303257598219954738184893440936853078405180194881315857748244561744796153207797799995082128621979539591853081053070122495035542367173894973610071639982700652961769077785461163465344395546219037362887579259365608654246555622016667096274785479348150215214869630847993565924116688065246708772362012666884000000000000000000000000", + "prime_interval_packing": "837498597897804494226728236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721", + "alpha_positive": "1674997195795608988452955635402367203366037793187276081193732639981873558305741489109019117452413750547277526312928412953978316976144654026984213905551217297694660852679577349356274934462936400628111951467846476541756002905752632873220316684219274412061105758533007141136374820586057508957330840072316152923293583917772363937089113518706735229178035169603440660746727626945924504540315215642387789525304269983688322806909496833279/1001674997195795608988452456472900965101170532019415512531676283225247883266062007327250631741394046781550941151628799109977369092446720468426539202590097440657928874122280872398076603898899997541064310989769795926540526535061247517771183586947486805035819991350326480884538892730581732672197773109518681443789629682804327123277811008333548137392739674075107607434815423996782962058344032623354386181006333442000000000000000000000000", + "alpha_below_one": "999999999999999999999999500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721/1001674997195795608988452456472900965101170532019415512531676283225247883266062007327250631741394046781550941151628799109977369092446720468426539202590097440657928874122280872398076603898899997541064310989769795926540526535061247517771183586947486805035819991350326480884538892730581732672197773109518681443789629682804327123277811008333548137392739674075107607434815423996782962058344032623354386181006333442000000000000000000000000", + "alpha_below_one_fourth": "248743752103153293258660158482822874071926595211666602051725338166330097258209760342703638817896097944840457761594271364540363956135535463079650586741973142866787557677890640750162876040262062984637965795974602505093375630859559246569575580052652426846893892079048613079998348362059375659092112437307354208024113836783309416882363638564680299119006883349173461197957128372249816010045692940196208755726279090516311677193090503166721/1001674997195795608988452456472900965101170532019415512531676283225247883266062007327250631741394046781550941151628799109977369092446720468426539202590097440657928874122280872398076603898899997541064310989769795926540526535061247517771183586947486805035819991350326480884538892730581732672197773109518681443789629682804327123277811008333548137392739674075107607434815423996782962058344032623354386181006333442000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "499161098594299233928936478936932484167316717187202638334621282514438657337154118422367985129819052262340269253662673762450173559774691852845430965017705247138062783367640369655312954184216020439661675625962318389311478108979024402657164206729267912426001896844418951672636720834064545087418709892569142695589440639727431739520397258911054978276288645996727653193492257108746838664428268147306283372250166353007590295408083999001730155025336909950495849352940220531372736886841437523975996400997058860318299665760312955300317783066644306467302079017724693527669164517193439776155917393373458975131026144573237227271100946080927317769407736395824265549705765335243303682626522491716465135843161770788812074184229598390542813518508049433208568657168886507769640510992074502615411492529121891841/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "28053599910265459487630484109645326676930870507299981110365088714963730293637253031986445053596434396102641107728069183610345983284706782432847919448936756771134426611721791801884612311658111104735366548787539317999293160718426405223371764593109380353017516379985827809535452121108602471000050066312936902073867158146398132222912117951118064603058354487119955938236299657006565898528420196170476352966645757660048935031579271509500163/4006699988783182435953809825891603860404682128077662050126705132900991533064248029309002526965576187126203764606515196439909476369786881873706156810360389762631715496489123489592306415595599990164257243959079183706162106140244990071084734347789947220143279965401305923538155570922326930688791092438074725775158518731217308493111244033334192549570958696300430429739261695987131848233376130493417544724025333768000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "483797927344594123427991354792480088321934041010540179543822551023474547904612715470993404811275383688138320614172268705315537526464393878842908500192845637021797229118135253946414418393227829424854423926494652296296894991911011364582026718959725035977131185224382054524465885370970882587352542723846471352724105331710907241485630520366565040575603679089702955756206649265173649215307811901251704681539522839/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721000000000000000000", + "coordinate_movement_above_kappa": "2800924065967988452459822895356692388508924335158322389668002265731936378652106586636272857919538855154324901344825816446802755370271116190835483702951398471106503951839803979400841113005444743918948571478152551416022899144660727488689779532603325141446327706039949745543013474388084277672600604708392565798238149528332694596139930024436449405063267387467483688322806909496833279/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "483797426507095525530186860566251851871451490425274169836066285185332935280671082439989741185959512991114929838701692890915982537779847655482674286923244341973076900153698192805978219354925879974855653394339157411398931721647743833958267833367931562233728667314386379361225443101524517296486206624959916593383383436896065839322068881461060873801534982719865918202402931857461650823826782729235393004346432335833279/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721000000000000000000000000", + "bulk_exposure_above_kappa": "2800924065967988452459822895356692388508924335158322389668002265731936378652106586636272857919538855154324901344825816446802755370271116190835483702951398471106503951839803979400841113005444743918948571478152551416022899144660727488689779532603325141446327706039949745543013474388084277672600604708392565798238149528332694596139930024436449405063267387467483688322806909496833279/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "774076182913851999586981673441739904864611915031598277562359815799417664023438711722585784072724743203997922207205054114105305053658483982788419387038951724186155237624579345173826870390862577629768307750235948789177068716794350652707483864743766583820007378449015612075904974324107046848897732259267799405017846635922610184213447193680999898146897190173687691656126921416565840353011469869986415813270146039233279/801339997756636487190761965178320772080936425615532410025341026580198306612849605861800505393115237425240752921303039287981895273957376374741231362072077952526343099297824697918461283119119998032851448791815836741232421228048998014216946869557989444028655993080261184707631114184465386137758218487614945155031703746243461698622248806666838509914191739260086085947852339197426369646675226098683508944805066753600000000000000000000000", + "scalar_work_above_kappa": "3870382917919254389526126344113612470124989777499055426642824142349654770612960090736943574864887198808083174137907573828124745223030604807383033788273163801125657503980644970430879148107520685948836620879801723485477196665024823386032454866086006814073646963885060761032486640698320695407954005691885216062452120758872416529721482524027016157830760736347786608495849476713677195330981466037997325775123092208833279/4006699988783182435953809825891603860404682128077662050126705132900991533064248029309002526965576187126203764606515196439909476369786881873706156810360389762631715496489123489592306415595599990164257243959079183706162106140244990071084734347789947220143279965401305923538155570922326930688791092438074725775158518731217308493111244033334192549570958696300430429739261695987131848233376130493417544724025333768000000000000000000000000", + "dimension_above_kappa": "499162501402102195989570699108143640877406088782772332056095899397916237910791547359849232033915692080217934235460984133149636067948908471102267925169345158513944063131705200822758927168685255175882262898342931461584160658964028537411303198437267962064116723284561795534861738859091188188366998816211541865457727882444307791085199827544133172789260683329011236858195967091311474727034632953496456124804645180251704681539522839/500837498597897804494226228236450482550585266009707756265838141612623941633031003663625315870697023390775470575814399554988684546223360234213269601295048720328964437061140436199038301949449998770532155494884897963270263267530623758885591793473743402517909995675163240442269446365290866336098886554759340721894814841402163561638905504166774068696369837037553803717407711998391481029172016311677193090503166721000000000000000000" + }, + "conservative_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "native_correction_gain": "2.85142E-12", + "template_sha256": "1fa5adc69098226423c27c6b63c0b282a14b0f80c8afae41c8fea44c82551806", + "input_sha256": { + "owner_audit": "ee31a5ae84bcc6344b18c67ae828693ba92ec0328223c9b6af29b04d90c80b40", + "fresh_invoice": "22cf5aa33d7c26708d1c8b5a5f88df9b330516e6ab9e5e8e10da5857c58e7961", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "moments": [ + { + "side": "bit", + "surcharge": true, + "endpoint": "1733427039589844234749/1000000000000000000000000", + "accept": true, + "mercator": [ + "-43100600330766044577088869872467188970742291/26959946667150639794667015087019630673637144422540572481103610249216", + "-43100600330766044577088869872467188970742289/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-799345163337715793503/500000000000000000000000000000000000000000000", + "-3197378653350863173989/2000000000000000000000000000000000000000000000" + ] + }, + { + "side": "bit", + "surcharge": true, + "endpoint": "6933708158359376939/4000000000000000000000", + "accept": false, + "mercator": [ + "22502934905675809315035333485365686073718547/13479973333575319897333507543509815336818572211270286240551805124608", + "5625733726418952328758833371341421518429637/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "8346798366759439729359/5000000000000000000000000000000000000000000000", + "16693606733518879458833/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "837498599328294420877/500000000000000000000000", + "accept": true, + "mercator": [ + "-13448453073594601094351247400426569009316031/26959946667150639794667015087019630673637144422540572481103610249216", + "-13448453073594601094351247400426569009316029/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-498831/1000000000000000000000000000000", + "-49883/100000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "334999439731317768351/200000000000000000000000", + "accept": false, + "mercator": [ + "32768726073683996296031282252040159239680975/13479973333575319897333507543509815336818572211270286240551805124608", + "2048045379605249768501955140752509952480061/842498333348457493583344221469363458551160763204392890034487820288" + ], + "base_two": [ + "2430919/1000000000000000000000000000000", + "60773/25000000000000000000000000000" + ] + } + ], + "bootstrap": [ + { + "exponent": "418064000816460508537602292202011746931191790469824403797426421748800927215070575035186550871/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "685298847686701900897039048688588921597771030175596202573578251199072784929424964813449129/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4790959669745" + }, + { + "exponent": "209374075895248546312228404737988540060806620392323778695816878314190476713940468379064751487253687841246030280015256648535327655145955066133/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "573936825058907021260887361627865588160357676221304183121685809523286059531620935248512746312158753969719984743351464672344854044933867/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1707632237026256252" + }, + { + "exponent": "104687324435365515519861852432721530787321077430131863973062151067220399056460202000210744519107260490788375928396302653322459241499572310974839632640761228551759276708576464987802529141359/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "480671287089762980379953553175876312944868136026937848932779600943539797999789255480892739509211624071603697346677540758500427689025160367359238771448240723291423535012197470858641/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "608647965739745860607620" + }, + { + "exponent": "52343662457615839775137411421199931091666969629537829961140790038949563739326381810469097289241139107618166156289078840147000732698085856141434375118457652066925481673361411188515869678273822038820136996860811755533166370660631026248157/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "402561529675004985137610889931725557962170038859209961050436260673618189530902710758860892381833843710921159852999267301914143858565624881542347933074518326638588811484130321726177961179863003139188244466833629339368973751843/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "216939185245326825649743086331" + }, + { + "exponent": "26171831229008863507688961930864148211383630272514067482056920544898858028831846397365680095952377877736636538253526357294286942397114687732429354787997882413112708317800804420788414763152155058123513959889760865519908555045555506189741478721934878837020317604033999502440111596426311/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "337144717246272304622779415717321235932517943079455101141971168153602634319904047622122263363461746473642705713057602885312267570645212002117586887291682199195579211585236847844941876486040110239134480091444954444493810258521278065121162979682395966000497559888403573689/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "77323202810193753104235980363517721" + }, + { + "exponent": "13085915614504600043844875636897462701216260144987474471608463013927187069746201872451590319957516557508748921905114952778619570550156212540116342353604582128780476264991795540021903634851619799460026598375258603494717926380689289623540680961719979449809075196299043039671780591496429076816902797733254087451473045837683287449505253/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "282358228464686922794183413651887525528391536986072812930253798127548409680042483442491251078094885047221380429449843787459883657646395417871219523735008204459978096365148380200539973401624741396505282073619310710376459319038280020550190924803700956960328219408503570923183097202266745912548526954162316712550494747/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "27560155561869146133472290305028153334034" + }, + { + "exponent": "6542957807252300162865077429944198897792417451644910149552741306690954755871466207984023669152296072074980837702678068225095683365089660819809702193103243688490306765080087679109231577825061095083777576075061084171182760202443094891923271407194460474854846475944092331117295410087123043759750267777560500144288122685140330916551964218818819137675169573595930672782603586195633119/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "236474620847993849907419446792589850447258693309045244128533792015976330847703927925019162297321931774904316634910339180190297806896756311509693234919912320890768422174938904916222423924938915828817239797556905108076728592805539525145153524055907668882704589912876956240249732222439499855711877314859669083448035781181180862324830426404069327217396413804366881/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9823211493953939493944136801996385939006162425" + } + ], + "outer": { + "bit_positive": "6542957807252300162865077429944198897792417451644910149552741306690954755871466207984023669152296072074980837702678068225095683365089660819809702193103243688490306765080087679109231577825061095083777576075061084171182760202443094891923271407194460474854846475944092331117295410087123043759750267777560500144288122685140330916551964218818819137675169573595930672782603586195633119/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "236485070055801102207582548355089850447258693309045244128533792015976330847703927925019162297321931774904316634910339180190297806896756311509693234919912320890768422174938904916222423924938915828817239797556905108076728592805539525145153524055907668882704589912876956240249732222439499855711877314859669083448035781181180862324830426404069327217396413804366881/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "14787501400671705579123/500000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "236478527097993849907419446792589850447258693309045244128533792015976330847703927925019162297321931774904316634910339180190297806896756311509693234919912320890768422174938904916222423924938915828817239797556905108076728592805539525145153524055907668882704589912876956240249732222439499855711877314859669083448035781181180862324830426404069327217396413804366881/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "3271478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "6542957807252300162865077429944198897792417451644910149552741306690954755871466207984023669152296072074980837702678068225095683365089660819809702193103243688490306765080087679109231577825061095083777576075061084171182760202443094891923271407194460474854846475944092331117295410087123043759750267777560500144288122685140330916551964218818819137675169573595930672782603586195633119/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "118245806506804177253872588473724869422527139071974266974416448749294856378607835428717565172330118183524233298292872268163373999131743245415666427162149263689072701394234532545790321194047282975503703676354527615122535479162972205667468685299361028901827149802914422212455983406629837050899698407697612102224162178713275571493331765166253482427835882071757036430672782603586195633119/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "3271478903626150081433020453264292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "1949853521096373849918566979546735707803403954139254974869422527139071974266974416448749294856378607835428717565172330118183524233298292872268163373999131743245415666427162149263689072701394234532545790321194047282975503703676354527615122535479162972205667468685299361028901827149802914422212455983406629837050899698407697612102224162178713275571493331765166253482427835882071757036430672782603586195633119/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "6542957807252300162865077429944198897792417451644910149552741306690954755871466207984023669152296072074980837702678068225095683365089660819809702193103243688490306765080087679109231577825061095083777576075061084171182760202443094891923271407194460474854846475944092331117295410087123043759750267777560500144288122685140330916551964218818819137675169573595930672782603586195633119/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "236491613013608354507745413432519794646156485726496889038683344757283021802459799391227146320991084070976391615748041858258522902580121401170513044622105424134456912481703985003901533156516740889912323575132980169160899775565741968240045447327314863343179444759352900332580849517849586978755637065127446643948180069303866002655746978368288146036534088973940476930672782603586195633119/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "6542957807252300162865077429944198897792417451644910149552741306690954755871466207984023669152296072074980837702678068225095683365089660819809702193103243688490306765080087679109231577825061095083777576075061084171182760202443094891923271407194460474854846475944092331117295410087123043759750267777560500144288122685140330916551964218818819137675169573595930672782603586195633119/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "6542957807252300162865077429944198897792417451644910149552741306690954755871466207984023669152296072074980837702678068225095683365089660819809702193103243688490306765080087679109231577825061095083777576075061084171182760202443094891923271407194460474854846475944092331117295410087123043759750267777560500144288122685140330916551964218818819137675169573595930672782603586195633119/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "118245806506804177253872588473724869422527139071974266974416448749294856378607835428717565172330118183524233298292872268163373999131743245415666427162149263689072701394234532545790321194047282975503703676354527615122535479162972205667468685299361028901827149802914422212455983406629837050899698407697612102224162178713275571493331765166253482427835882071757036430672782603586195633119/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "3271478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "1953124999999999999999998046875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/1956396478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881", + "epsilon_below_one": "3271478903626150081434485297014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881/1956396478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881", + "guard_width": "3271478903626150081434485297014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881/1956396478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881", + "K_geometry": "1468115228903626150081433020453264292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881/1956396478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881000000000000000000000000", + "K_dominates_log": "3271478903626150081433017181785388570445964427724571866285276264882164988000452973777844215595659138987731184122526260424311195419272300061954809525101555047456601736211849868054172714272192629603473367878654111259028842113966666432160440024540704148860146437236118134070378517665770877148572918420519965863522514048285794527612888720985132126118770458995925230847735611260008129822809645232295876123917430672782603586195633119/1956396478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881000000000000000000000000", + "record_suffix": "3271478903626150081434485297014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881/1956396478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881", + "phase_local": "26171831229009200651473925979635433946618285453428029030327586291378345119179537832532780220945404290986708227916215433139641562331222194184811191531179352329546936746076805022230663804512550901782941119520323130430502916379484973126302691670399898709187865640140590931757588469045369921661381034574111106507224625194402509812043753469992203125665448102832150853852884436757708874808100167007192506692084430672782603586195633119/15651171831229009200651460257376114337572768366885960201044619782887424205864204668410005641148971137316570259478621359054531806133613657021854693008006946054036674668582702805890487418388846123739633677430447621736195970370589163779079019716166696222354660250517605111768785382801576684622300352132746961303592802412738419103182206702570293795428053345878669972140577312943425943708554617739171310434935048000000000000000000000000", + "phase_boundary": "5234366245801840130293220078743963888403591944659868194631759981438980427815803104528267301768494437730500645019128189514196655440296576701056785125622509100207201879914560309840729093435651910075999175162225741473726619908153949863086918737042920825459665226056501516729282227784022223821099328376542063632982695003667227266278391413757166783222771399896173141391034082016953907964405975670144158744046030672782603586195633119/3130234366245801840130292051475222867514553673377192040208923956577484841172840933682001128229794227463314051895724271810906361226722731404370938601601389210807334933716540561178097483677769224747926735486089524347239194074117832755815803943233339244470932050103521022353757076560315336924460070426549392260718560482547683820636441340514058759085610669175733994428115462588685188741710923547834262086987009600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "3906249999999999999999994137353521096373849918567467827985707803403954139254974869422527139071974266974416448749294856378607835428717565172330118183524233298292872268163373999131743245415666427162149263689072701394234532545790321194047282975503703676354527615122535479162972205667468685299361028901827149802914422212455983406629837050899698407697612102224162178713275571493331765166253482427835882071757036430672782603586195633119/7825585915614504600325730128688057168786384183442980100522309891443712102932102334205002820574485568658285129739310679527265903066806828510927346504003473027018337334291351402945243709194423061869816838715223810868097985185294581889539509858083348111177330125258802555884392691400788342311150176066373480651796401206369209551591103351285146897714026672939334986070288656471712971854277308869585655217467524000000000000000000000000", + "prime_interval_packing": "3271478903626150081434485297014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881/1956396478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881", + "alpha_positive": "6542957807252300162867014197549680767042010288957878246862749125810190721026036525028549359217051303559013618950196142240786962120979427793791435525969811802040935309049700604365100012877958097057683046684606828283525138437612138817037904545377731943192677751936757105168551367862856454936116935013890128812622815640588182425388726542271856554625438693829671748419899729188251093392136862628709680490798430672782603586195633119/3912792957807252300162865064344028584393192091721490050261154945721856051466051167102501410287242784329142564869655339763632951533403414255463673252001736513509168667145675701472621854597211530934908419357611905434048992592647290944769754929041674055588665062629401277942196345700394171155575088033186740325898200603184604775795551675642573448857013336469667493035144328235856485927138654434792827608733762000000000000000000000000", + "alpha_below_one": "3906249999999999999999998050146478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881/3912792957807252300162865064344028584393192091721490050261154945721856051466051167102501410287242784329142564869655339763632951533403414255463673252001736513509168667145675701472621854597211530934908419357611905434048992592647290944769754929041674055588665062629401277942196345700394171155575088033186740325898200603184604775795551675642573448857013336469667493035144328235856485927138654434792827608733762000000000000000000000000", + "alpha_below_one_fourth": "971655281644560774877849251888457465331256012641414634318425987304653822145486755250596803212593644778726627598463638798667450921229874136072126877474464316575251231477369224763790363636424924636669421792718369530228723009724210597375400827715040781953973587905413562380380535057235686333957655073282794952661927335155563011523499192368371505659627895423587201510366182329775870388392526746069497221692642069327217396413804366881/3912792957807252300162865064344028584393192091721490050261154945721856051466051167102501410287242784329142564869655339763632951533403414255463673252001736513509168667145675701472621854597211530934908419357611905434048992592647290944769754929041674055588665062629401277942196345700394171155575088033186740325898200603184604775795551675642573448857013336469667493035144328235856485927138654434792827608733762000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "7616593911634276609330451659035375279631182249217127134163766166298563771195972952417718971818898674517591687475988461408694382797259394271014086153688623303748889032706383755367860846866157344289849808803530960406467733604205878384212545003063941067365545476076818035101593607251935749546357130934408816409970547924787843132872865443189863299816969157597015497800712811032948166956242270204116252280163372390460389901351191594089312700400413422263475152528494209428851423259357052879417856400571112653128619483443160376797983078282709438252825955819047288944665622189454164678804045078399015661609865307930048494964337130994024841719463419256935158838156495436909220574893376118829430692757733996018684732324613430225812774120665730385064209492982866621967049188017692977801785249668161/7642173745717289648755595828796930828892953304143535254416318253363000100519631185747073066967271063142856572011045585475845608463678543467702486820315891627947595053018897854438714559760178771357243006557835752800876938657514240126503427595784519639821611450448049370980852237696082365538232593814817852199019923053094931202725686866489401267298854172792319322334266266085657199076442684442954741423308128906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "109584374649832073605211703553198351411460597179385278124399834852887531229148712739012463711975846297609312729581086303300430942782756560657847189513482868537414780544171500449728669610863769708430621628376362869706864165327342346650490308802822458749773699158773234456661366445410207421080319730356494241019999152664539402605568142467863255140331590460356873240984791789067412254169676494629862837264209274707981652189241413100643/15651171831229009200651460257376114337572768366885960201044619782887424205864204668410005641148971137316570259478621359054531806133613657021854693008006946054036674668582702805890487418388846123739633677430447621736195970370589163779079019716166696222354660250517605111768785382801576684622300352132746961303592802412738419103182206702570293795428053345878669972140577312943425943708554617739171310434935048000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "1133751129105741397501533747880735507881686194482294247291254598352129170447836482551745535751780211450465136834883619076577928746078345884613133751807680502647253333275084860457317559716427154255591891091558499301685420388768889287636681671933312005586207032023887592775704200179582296927075688282956074096407308349554580470963931379919444150856484818737978879859831752367898142176379988959061219381759259/1956396478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881000000000000000000", + "coordinate_movement_above_kappa": "10941109670030631615077429944198897792417451644910149552741306690954755871466207984023669152296072074980837702678068225095683365089660819809702193103243688490306765080087679109231577825061095083777576075061084171182760202443094891923271407194460474854846475944092331117295410087123043759750267777560500144288122685140330916551964218818819137675169573595930672782603586195633119/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "1133749172709262493875383666448203335867393997886248386546229467774656309519810749526161984501075067829072972263601184248908046929602579182906006019971054501778996578690751287619466823405499855649826423637348820495732703364272592963991209287055847484749179237691356278075065229081409446729990110495412057503037145400454278878661543482143606329569760390231310645026085234795734024248137025389734001985345454633119/1956396478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881000000000000000000000000", + "bulk_exposure_above_kappa": "10941109670030631615077429944198897792417451644910149552741306690954755871466207984023669152296072074980837702678068225095683365089660819809702193103243688490306765080087679109231577825061095083777576075061084171182760202443094891923271407194460474854846475944092331117295410087123043759750267777560500144288122685140330916551964218818819137675169573595930672782603586195633119/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "1813999850172707332376303915176644640596405714575624934920982226785933811788512639057209305952143194699352054364531355694854804177249586713673886271055662803367348578655802203893857359235356148203181558292283920076743955597533926536573218290215834688100903456905688833740487749189158824886235523465185701960881530410187027161239902310095272820083651281474097972941984286216472909553965018765170733614401010033119/3130234366245801840130292051475222867514553673377192040208923956577484841172840933682001128229794227463314051895724271810906361226722731404370938601601389210807334933716540561178097483677769224747926735486089524347239194074117832755815803943233339244470932050103521022353757076560315336924460070426549392260718560482547683820636441340514058759085610669175733994428115462588685188741710923547834262086987009600000000000000000000000", + "scalar_work_above_kappa": "9070007076449452276386119901613351891039197359262308117585011656239560502654666127388380734763536547982328930107786517784953548152151000375197942282624818020309769911616345310820689741420489935438969661278258315607530646085654817977447980990589031523852628461858569427504994630338485525219519928476104576177888303847336342175409063141579715385565154121397162804044907501371021019482796948103162537657660267633119/15651171831229009200651460257376114337572768366885960201044619782887424205864204668410005641148971137316570259478621359054531806133613657021854693008006946054036674668582702805890487418388846123739633677430447621736195970370589163779079019716166696222354660250517605111768785382801576684622300352132746961303592802412738419103182206702570293795428053345878669972140577312943425943708554617739171310434935048000000000000000000000000", + "dimension_above_kappa": "1949853521096373851052314690683727105304937702019990482751108721621366221558229014800878465304215090387174253316952541568648661068181911948846092120077477627858549418234842651910942405976479094989863350037621201538567394795234853829300542924248052259842349140618611366615108859173690507197916656162988926764126587981363771708509532511733293746535424711684610404338912654620050636896262425150501728372013107959061219381759259/1956396478903626150081432532172014292196596045860745025130577472860928025733025583551250705143621392164571282434827669881816475766701707127731836626000868256754584333572837850736310927298605765467454209678805952717024496296323645472384877464520837027794332531314700638971098172850197085577787544016593370162949100301592302387897775837821286724428506668234833746517572164117928242963569327217396413804366881000000000000000000" + }, + "controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ASYNC-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ASYNC-AUDIT.json new file mode 100644 index 0000000000..0b3b93fccd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/ASYNC-AUDIT.json @@ -0,0 +1,77 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS", + "template_sha256": "1fa5adc69098226423c27c6b63c0b282a14b0f80c8afae41c8fea44c82551806", + "complex_template_sha256": "1fa5adc69098226423c27c6b63c0b282a14b0f80c8afae41c8fea44c82551806", + "complex_live": 7168, + "complex_profile": { + "1": 174774, + "2": 30096, + "3": 31351, + "4": 10224, + "5": 5904, + "8": 576, + "23": 2, + "32": 4, + "39": 1, + "48": 2426 + }, + "complex_hosted_residuals": 34560, + "physical": 7658, + "rank_mass": 520704, + "deficit": 2560, + "entering_helper_roles": 17280, + "cross_replica_helper_roles": 27178, + "one_owner_per_complete_invocation": true, + "helper_busy_family_window_checks": 34560, + "complete_invocations": 72, + "actual_orthogonal_73column_maps": 8850, + "actual_sigma_stream_sha256": "f888a52a730a54c05a4f9a8cc6dfcea27998601e81b3fe8b647a5b4738a1dd53", + "all_actual_residual_and_spectator_charts": true, + "idle_remainders": 3790, + "mutations_rejected": [ + "alias two whole owners", + "helper on active data family", + "owner in private namespace", + "wrong residual width", + "wrong spectator coordinate", + "omit idle remainder", + "understate physical reserve", + "gauge44: wrong provider at its invocation", + "gauge44: stale per-call local program hash", + "gauge44: stale serialized provider program", + "gauge44: unbound residual adapter hash", + "gauge44: wrong provider width registry", + "gauge44: wrong per-call residual width", + "gauge44: wrong sweep provider", + "gauge44: entering helper width silently restored to nine" + ], + "mutation_controls_run": true, + "provider_phase_semantic_sha256": { + "gauge44": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "LOCAL-PROGRAMS.json.gz": "9f41d53659e9be84e20c661560c5687abbf5cd0660cdecbe01ad5eb29e6b8ee3", + "LOCAL-CHECKS.json": "18f09b79835aa352f04d27041d86d1338c5ad0094b888588c1c05af2dc399ffd", + "INDEPENDENT-LOCAL-REPLAY.json": "2d4680965c62db1fde1236c4857b19bf7bc97af58805e6b4109afbc452f0fdd8", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "CLIFFORD-REVIEW.json": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + } + }, + "widths_by_provider": { + "gauge44": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + } + }, + "provider_counts": { + "gauge44": 72 + }, + "all_provider_program_phase_and_wrapper_bindings": true, + "scope": "Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/BASELINE-CHAIN-STEPS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/BASELINE-CHAIN-STEPS.json new file mode 100644 index 0000000000..2fe4aed171 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/BASELINE-CHAIN-STEPS.json @@ -0,0 +1,107 @@ +[ + { + "step": "pivot-swap", + "exit_code": 0, + "seconds": 9.208 + }, + { + "step": "cold44-exact", + "exit_code": 0, + "seconds": 2.091 + }, + { + "step": "lec-p6n", + "exit_code": 0, + "seconds": 92.833 + }, + { + "step": "promotion", + "exit_code": 0, + "seconds": 0.225 + }, + { + "step": "promo-controls", + "exit_code": 0, + "seconds": 6.66 + }, + { + "step": "lec-promo", + "exit_code": 0, + "seconds": 93.692 + }, + { + "step": "jx", + "exit_code": 0, + "seconds": 0.183 + }, + { + "step": "jx-control-C0_identity", + "exit_code": 0, + "seconds": 0.15 + }, + { + "step": "jx-control-C1_741_only", + "exit_code": 0, + "seconds": 0.148 + }, + { + "step": "jx-control-N3_plain_join_moved_reads", + "exit_code": 0, + "seconds": 0.148 + }, + { + "step": "lec-jx", + "exit_code": 0, + "seconds": 93.972 + }, + { + "step": "hybrids", + "exit_code": 0, + "seconds": 0.105 + }, + { + "step": "hybrid-controls", + "exit_code": 0, + "seconds": 13.125 + }, + { + "step": "lec-hyb", + "exit_code": 0, + "seconds": 92.765 + }, + { + "step": "frames", + "exit_code": 0, + "seconds": 0.413 + }, + { + "step": "lec-frames", + "exit_code": 0, + "seconds": 96.189 + }, + { + "step": "native", + "exit_code": 0, + "seconds": 1.439 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.909 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 7.279 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.835 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 128.261 + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/BASELINE-RESULT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/BASELINE-RESULT.json new file mode 100644 index 0000000000..3f5fb56787 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/BASELINE-RESULT.json @@ -0,0 +1,58 @@ +{ + "status": "PASS_SLOTS_ON_CHECKED_K8_BASELINE", + "kappa_decimal": "0.00167166528321877", + "strict": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY 0.00167166528321877 2.164948243169117498148727559671554388312775174640418891709408020842883", + "baseline": "/Users/thomasdifiore/integer-mult-runs/k8-native-20261013/chain", + "steps": [ + { + "step": "parent-manifest", + "exit_code": 0, + "seconds": 0.147 + }, + { + "step": "slots", + "exit_code": 0, + "seconds": 0.11 + }, + { + "step": "slot-controls", + "exit_code": 0, + "seconds": 14.82 + }, + { + "step": "native", + "exit_code": 0, + "seconds": 1.388 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.875 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 6.261 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.795 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 125.479 + }, + { + "step": "audit-local", + "exit_code": 0, + "seconds": 1.046 + }, + { + "step": "strict", + "exit_code": 0, + "seconds": 17.374 + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/BIT-SUPPLIER-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/BIT-SUPPLIER-CONTROLS.json new file mode 100644 index 0000000000..28ae343185 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/BIT-SUPPLIER-CONTROLS.json @@ -0,0 +1,49 @@ +{ + "status": "PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS", + "kappa": "0.001672196274581061", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "derived_deficit": 10272, + "rejected_controls": [ + "revert_hardcoded_9984", + "ports_112", + "decoder_constant_64_copy_ranks_unchanged", + "decoder_constant_64_with_one_copy_rank_8", + "eight_retained_totals", + "live_minus_one", + "profile_rank_mass_plus_one", + "profile_rank_mass_receipt_mismatch", + "bit_lower_next_grid", + "not_nine_stage_record", + "tampered_bytes_next_grid", + "pr543_file_under_pr589_pin" + ], + "assembler_sha256": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/NATIVE-BINDING.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/NATIVE-BINDING.json new file mode 100644 index 0000000000..25d00524e0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/NATIVE-BINDING.json @@ -0,0 +1,12 @@ +{ + "status": "PASS_PINNED_COMPLETE_K8_AND_SLOT_REBUILD", + "native_directory": "/Users/thomasdifiore/integer-mult-runs/k8-native-20261013", + "chain_steps": 21, + "slot_steps": 10, + "cold_end_controls": 475, + "slot_control_outcomes": 34, + "source_result_sha256": "1d43f5f4a6d77f096182d9482eecb5313a0b79c4d3e12f4f70846c6f935287be", + "source_assembly_sha256": "f0e4add6cd67728b855a065ec01e3321a2382ae13326e06e8735ab8fa9cb8c46", + "canonical_payload_sha256": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "reuse_explicitly_requested": true +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/OWNERS-AND-PROFILE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/OWNERS-AND-PROFILE.json new file mode 100644 index 0000000000..9d99e0792f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/OWNERS-AND-PROFILE.json @@ -0,0 +1,54 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE", + "template_sha256": "1fa5adc69098226423c27c6b63c0b282a14b0f80c8afae41c8fea44c82551806", + "paid_profile": { + "1": 174774, + "2": 30096, + "3": 31351, + "4": 10224, + "5": 5904, + "8": 576, + "23": 2, + "32": 4, + "39": 1, + "48": 2426 + }, + "live": 7168, + "physical": 7658, + "rank_mass": 520704, + "deficit": 2560, + "hosted_residuals": 34560, + "banked_residuals": 0, + "all_live_owners_per_call_distinct": true, + "owners_per_call": 704, + "actual_helper_owner_charts": 34560, + "actual_73column_sigmas": 8850, + "cross_replica_helper_roles": 27178, + "explicit_idle_remainder_children": 3790, + "source_idle_children_charged": 16128, + "source_artifacts": { + "work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "providers/gauge44/CANONICAL-WORD.json.gz": "16bc0ebb04b4be6c0ade74badc6a0c0cdba4215eda86e4ff9f13abf8ecebd219", + "providers/gauge44/LOCAL-PROGRAMS.json.gz": "241fde27d4e43f5a9cb6b128f9f76c5131a53d09f0371676163f914d0b0fef3a", + "providers/gauge44/LOCAL-CHECKS.json": "2b8b1891a736598010232bfb26abc31973b265a53a2009a3fcfd9138b5ecadb4", + "providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "13dd18297162569532983db1a2ab67926b064330cd7edd3587e7b546b2dedf17", + "providers/gauge44/RESIDUAL-ADAPTERS.json": "383f40aadd00a4ac700dfd0d4c22d6c6c0be9a9863116e4d69c7acd23bafae0c", + "providers/gauge44/CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "providers/gauge44/CLIFFORD-REVIEW.json": "979c2406a4753c23de9e71005b71dcd942be35e11db2685513deed09b0fd9119" + }, + "provider_phase_semantic_sha256": { + "gauge44": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "LOCAL-PROGRAMS.json.gz": "9f41d53659e9be84e20c661560c5687abbf5cd0660cdecbe01ad5eb29e6b8ee3", + "LOCAL-CHECKS.json": "18f09b79835aa352f04d27041d86d1338c5ad0094b888588c1c05af2dc399ffd", + "INDEPENDENT-LOCAL-REPLAY.json": "2d4680965c62db1fde1236c4857b19bf7bc97af58805e6b4109afbc452f0fdd8", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "CLIFFORD-REVIEW.json": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + } + }, + "controller_audit_sha256": "abc1e11e3184371a41e4d73d56033e8e7ff608443085926a4e0037f7e335300b" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/PREFIX-AND-INVOICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/PREFIX-AND-INVOICE.json new file mode 100644 index 0000000000..e4a8fdac5a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/PREFIX-AND-INVOICE.json @@ -0,0 +1,1734 @@ +{ + "status": "PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE", + "template_sha256": "1fa5adc69098226423c27c6b63c0b282a14b0f80c8afae41c8fea44c82551806", + "parent_template_sha256": "7db047a427a7979d69e163c78a1e32bd445628fb86723e131a3138361355a9c3", + "owner_audit_sha256": "ee31a5ae84bcc6344b18c67ae828693ba92ec0328223c9b6af29b04d90c80b40", + "controller_audit_sha256": "abc1e11e3184371a41e4d73d56033e8e7ff608443085926a4e0037f7e335300b", + "providers": { + "gauge44": { + "local": { + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 206, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 30, + "8": 122, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387056, + "local_primitive_bound": 10038040553630, + "compiler": 25934336, + "children": 3494, + "artifacts": { + "CANONICAL-WORD.json.gz": "16bc0ebb04b4be6c0ade74badc6a0c0cdba4215eda86e4ff9f13abf8ecebd219", + "RESIDUAL-ADAPTERS.json": "383f40aadd00a4ac700dfd0d4c22d6c6c0be9a9863116e4d69c7acd23bafae0c", + "LOCAL-PROGRAMS.json.gz": "241fde27d4e43f5a9cb6b128f9f76c5131a53d09f0371676163f914d0b0fef3a", + "LOCAL-CHECKS.json": "2b8b1891a736598010232bfb26abc31973b265a53a2009a3fcfd9138b5ecadb4", + "CLIFFORD-REVIEW.json": "979c2406a4753c23de9e71005b71dcd942be35e11db2685513deed09b0fd9119", + "INDEPENDENT-LOCAL-REPLAY.json": "13dd18297162569532983db1a2ab67926b064330cd7edd3587e7b546b2dedf17", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "FULL-WORD.json.gz": "49596aa4ed4fd36cd4582fd0e8ddeb09fd80370a7d8aea1ede52a135b536d289", + "SCALAR-FRAME-AUDIT.json": "55c5708ccd5094941a334f850a5ad1132d424dc5959e17938a7666758989a8e4", + "WRAPPER-CHECKS.json": "0ae753d6fa6e922d8b8180da602828f6cb3f444fcd124d019acee74e145c0836" + }, + "paid_profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "forward": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "LOCAL-PROGRAMS.json.gz": "9f41d53659e9be84e20c661560c5687abbf5cd0660cdecbe01ad5eb29e6b8ee3", + "LOCAL-CHECKS.json": "18f09b79835aa352f04d27041d86d1338c5ad0094b888588c1c05af2dc399ffd", + "INDEPENDENT-LOCAL-REPLAY.json": "2d4680965c62db1fde1236c4857b19bf7bc97af58805e6b4109afbc452f0fdd8", + "CLIFFORD-RECIPES.json": "d0768f2164d5f64a2fdbec422f1cfde4e400818792f1904ca541958377243731", + "CLIFFORD-REVIEW.json": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007", + "RESIDUAL-ADAPTERS.json": "c682e9ff1b347f89771c6800f46ad98c2bb92b91c5c88452d53a9e7f0180c35f" + } + } + }, + "provider_phase_semantic_sha256": { + "gauge44": "4960fd1215509b5347ef7f0092868f79aea0f8e24fb84352da9a1033e4394007" + }, + "provider_counts": { + "gauge44": 72 + }, + "selected_calls": [ + { + "stage": 0, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "f36c5831106f5637102c6bedeec76ed2b223c6671ce42fd0eceed9ef24725b23", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "071ecdacc0bb3ac16046aad4119ed551a945cb0ed6c57002a548a3e2232503d8", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + } + ], + "selected_local_paid_profile": { + "1": 173664, + "2": 30096, + "3": 31104, + "4": 10224, + "5": 5904, + "8": 576 + }, + "selected_real_component_primitives": 14312688, + "selected_coefficient_work_primitive_count": 7081000, + "selected_scalar_macros": 1417896, + "global_prefix_bits": 253, + "charged_prefix_bits": 512, + "complete_invocation_sweeps": 72, + "bridge_sweeps": 72, + "row_prefix_extra": 1024, + "helpers": 480, + "centres": 8, + "live": 7168, + "physical": 7658, + "physical_stock_identity": { + "data_and_owner_families": 7168, + "local_helpers": 480, + "private_centres": 8, + "coefficient_work": 2 + }, + "local_adapters": 387056, + "local_primitive_bound": 10038040553630, + "wrapper_elementary_factors_charged": 4976640, + "factors_per_wrapper": 144, + "compiler": 25934336, + "unhosted_pervertex": 1794593408977448, + "hosted_rebased_pervertex": 1794593408676512, + "conservative_pervertex_used": 4672540398702016, + "retained_prior_overcharge": { + "sha256": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "previous_pervertex_allowance": 2877946989724568, + "added_complete_new_pervertex": 1794593408977448, + "policy": "Retain old allowance and add entire fresh mixed recount." + }, + "finite": { + "physical_stock_bits": 2641, + "router_bits": 7985, + "literal_bits": 35282, + "physical_row_coefficient": 16467, + "retained_row_coefficient": 20161, + "required_C0_bits": 200012, + "halving_integer_inequality": [ + 5329, + 4608 + ], + "G_exponent": 30000, + "E_exponent": 100000, + "C0_exponent": 210000 + }, + "strict_checks": { + "local_primitive_bound": true, + "logical": true, + "router": true, + "literal": true, + "mass": true, + "precision": true, + "tape": true, + "row": true, + "halving": true + }, + "scope": "Actual call-specific mixed scalar, Horner, wrappers and paid children recounted. All three providers use fresh hash-bound independent all-column/frame/phase/normalization admission. Shared compiler uses conservative maxima; parent is geometry/overcharge only. All-size compiler, hosting, precision/tape and analytic transfer remain conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/PREPARATION.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/PREPARATION.json new file mode 100644 index 0000000000..e4a2037ee9 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/PREPARATION.json @@ -0,0 +1,54 @@ +{ + "status": "PASS_NOMINATION_COMBINATORICS_NOT_ASSEMBLY_ADMISSION", + "helper_roles": 34560, + "calls": 72, + "helpers": 480, + "live": 7168, + "physical": 7658, + "deficit": 2560, + "local_profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "idle_profile": { + "1": 1110, + "3": 247, + "23": 2, + "32": 4, + "39": 1, + "48": 2426 + }, + "global_profile": { + "1": 174774, + "2": 30096, + "3": 31351, + "4": 10224, + "5": 5904, + "8": 576, + "23": 2, + "32": 4, + "39": 1, + "48": 2426 + }, + "upstream_verifiers_copied_without_edits": { + "verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93" + }, + "owners_sha256": "681670248da5ffe1504fab103855b6d0b8e91d176f31963fe88efa1d9d8bc2bd", + "plan_sha256": "4c8e55335b909faf562ee0ce194a252e4983b9591b9c4e1b2625ea4c885c195a" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/REPLAY.json new file mode 100644 index 0000000000..bae0b42106 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/REPLAY.json @@ -0,0 +1,86 @@ +{ + "status": "PASS_GAUGE44_STRICT_GLOBAL_REPLAY", + "kappa": "1672196274581061/1000000000000000000", + "kappa_decimal": "0.001672196274581061", + "complex_lower": "837498599328294420877/500000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "gain_over_pr635_percent": "2.197400137451192132777215427059875285749650841912810186405092998724973", + "spec_sha256": "21d605679db7c2e2801ee0d3ef9c262e71319fc49cb98a01b2d05c8a491aa569", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.077, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind", + "seconds": 0.315, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 2.315, + "exit_code": 0, + "log_sha256": "bf20f88b488a90ea5019049c7cac747fb431cd8f9d4e566f8094ec6b6384456f" + }, + { + "name": "audit", + "seconds": 10.934, + "exit_code": 0, + "log_sha256": "abc1e11e3184371a41e4d73d56033e8e7ff608443085926a4e0037f7e335300b" + }, + { + "name": "invoice", + "seconds": 0.714, + "exit_code": 0, + "log_sha256": "afa9dce4acbf44b7183fe01e3af311a1ce7eb57a3921f656ebd6154bcda5ce0c" + }, + { + "name": "assembly", + "seconds": 0.324, + "exit_code": 0, + "log_sha256": "88fd39ed4e520159bc338bec91bcbb8e24a50b98fe6334ef68286ae050ef83a4" + }, + { + "name": "admission-controls", + "seconds": 0.381, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.622, + "exit_code": 0, + "log_sha256": "d54d260bf95bd8ae4ab8846314082b93b2e3d8f427eb35376691f2ce543a6b67" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/RESULT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/RESULT.json new file mode 100644 index 0000000000..11cf887888 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/evidence/RESULT.json @@ -0,0 +1,48 @@ +{ + "status": "PASS_K8_COORDINATED_OWNERS_COMPLETE_ADMISSION", + "kappa_decimal": "0.001672196274581061", + "baseline_kappa": "0.00167166528321877", + "gain_percent": "0.03176421545756953", + "complex_lower": "0.001674997198656588841754", + "bit_lower": "0.001733427039589844234749", + "admission_controls": 69, + "bit_supplier_controls": 12, + "outer_strict_inequalities": 47, + "native": { + "status": "PASS_PINNED_COMPLETE_K8_AND_SLOT_REBUILD", + "native_directory": "/Users/thomasdifiore/integer-mult-runs/k8-native-20261013", + "chain_steps": 21, + "slot_steps": 10, + "cold_end_controls": 475, + "slot_control_outcomes": 34, + "source_result_sha256": "1d43f5f4a6d77f096182d9482eecb5313a0b79c4d3e12f4f70846c6f935287be", + "source_assembly_sha256": "f0e4add6cd67728b855a065ec01e3321a2382ae13326e06e8735ab8fa9cb8c46", + "canonical_payload_sha256": "4ddb29fb9bc6f27e0c0fbfcf19a2a93a3496ad900d0f6d89059d0305c9576c0c", + "reuse_explicitly_requested": true + }, + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification.", + "steps": [ + { + "step": "gauge44-leaver8-manifest", + "exit_code": 0, + "seconds": 0.057, + "log_sha256": "c66926837b197e52f831c4d6e121b561906fbf52825ebc73c1053ef61fdcbc48" + }, + { + "step": "gauge44-slots-manifest", + "exit_code": 0, + "seconds": 0.134, + "log_sha256": "d323939e4d2fffd0ab0295f935a021c0cc64fe010a40d5386d5fa5cb64b3ec74" + }, + { + "step": "strict-global", + "exit_code": 0, + "seconds": 16.861, + "log_sha256": "9db5a330957cc3e1d1c36a668189c717c206a13edde93fb7a2785859e0058461" + } + ], + "source_pins_sha256": "80b0357d714181f36476c34f9242ae21d72839c4afad9318b4228b78889fd676", + "assembly_sha256": "8634e3ce597619d6da631dcd1e40bd82f327a2b500bf6963b5961c945ab810b9", + "owner_audit_sha256": "ee31a5ae84bcc6344b18c67ae828693ba92ec0328223c9b6af29b04d90c80b40", + "invoice_sha256": "22cf5aa33d7c26708d1c8b5a5f88df9b330516e6ab9e5e8e10da5857c58e7961" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/independent/UPSTREAM.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/independent/UPSTREAM.json new file mode 100644 index 0000000000..b488548ca2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/independent/UPSTREAM.json @@ -0,0 +1,8 @@ +{ + "repository": "CrocSwap/integer-mult-bounds", + "pull_request": 942, + "commit": "1960cfa919a0945d0ca4cb14ea96237000037903", + "path": "research/complex-t37-owners/independent/all_t_bound.py", + "source_sha256": "3f8637a90baaa11ef18eab9e739d17b32fcff18fbc50c355f9ef32727a92e4f6", + "adaptation": "Retain dual-table and exact supporting-inequality routines; replace U8 inventory/profile with pinned PR1018; bound by b/(1+b), without claiming finite admission." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/independent/all_t_bound.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/independent/all_t_bound.py new file mode 100644 index 0000000000..1b51e277d0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/independent/all_t_bound.py @@ -0,0 +1,171 @@ +"""All-replica signed-dual bound for PR1018's fixed k8 whole-owner family. + +Adapted from jon314159's PR942 all_t_bound.py, with the new PR1018 inventory. +Dual prices: chafreaky's PR795/890. See ../NOTICE.md. Apache-2.0. +Two exact rational engines certify the inequalities and endpoint signs. +This is an upper relaxation only: it does not establish physical feasibility. +""" +import argparse +from collections import Counter +from fractions import Fraction as Q +import hashlib +import importlib.util +import itertools +import json +from pathlib import Path +import sys + +if sys.flags.optimize: + raise RuntimeError('Retained arithmetic assertions must stay enabled; do not use Python -O') + +HERE = Path(__file__).resolve().parent +ROOT = HERE.parents[2] +ENGINE = 'research/complex-k492-owner-repair/vendor/multicold/engines/' +PINS = {'research/complex-k492-owner-repair/vendor/multicold/engines/moment.py': '81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482', 'research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py': 'aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098', 'research/gauge44-slots/data/PLAN.json': '1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08'} +WIDTHS = (4, 5, 7, 8, 9) +PRICES = (-1, -20, -8, -2, 4) +CAPACITIES = {8: (672, 2), 16: (448, 4), 32: (448, 8), 48: (448, -13)} +INVENTORY = {4: 56, 5: 32, 7: 30, 8: 122, 9: 240} + + +def need(ok, message): + if not ok: + raise ValueError(message) + + +def load(relative, name): + spec = importlib.util.spec_from_file_location(name, ROOT/relative) + obj = importlib.util.module_from_spec(spec) + spec.loader.exec_module(obj) + return obj + + +def dual_tables(): + """Cartesian product enumeration and independently programmed recurrence.""" + upper, count = {}, 0 + for cap, (_, bonus) in CAPACITIES.items(): + for vector in itertools.product(*(range(cap//w+1) for w in WIDTHS)): + used = sum(w*n for w, n in zip(WIDTHS, vector)) + if used > cap: + continue + count += 1 + r = cap-used + value = bonus+sum(p*n for p, n in zip(PRICES, vector)) + upper[r] = max(upper.get(r, -10**6), value) + alt = {} + for cap, (_, bonus) in CAPACITIES.items(): + scores = [None]*(cap+1) + scores[0] = 0 + for fill in range(cap+1): + if scores[fill] is None: + continue + for width, price in zip(WIDTHS, PRICES): + nxt = fill+width + if nxt <= cap: + proposal = scores[fill]+price + if scores[nxt] is None or proposal > scores[nxt]: + scores[nxt] = proposal + for fill, value in enumerate(scores): + if value is not None: + alt[cap-fill] = max(alt.get(cap-fill, -10**6), value+bonus) + need(upper == alt and count == 1163, 'two independently structured dual enumerations') + return upper, count + + +def phi_pair(engine, kind, r, z): + if kind == 'mercator': + a, b = engine.logarithm(Q(73, r)) + a, b = engine.exponential(z*a, z*b) + else: + a, b = engine.log_bounds(Q(73, r)) + a, b = engine.exp_bounds(z*a)[0], engine.exp_bounds(z*b)[1] + return r*a, r*b + + +def ratio_certificate(engine, kind, upper, z): + phi = {r: phi_pair(engine, kind, r, z) for r in upper if r} + cost = {r: (48*lo-r*phi[48][1], 48*hi-r*phi[48][0]) + for r, (lo, hi) in phi.items() if r < 48} + credit = {r: 48*upper[r]+13*r for r in cost} + need(credit[1] == 925, 'rank-one credit') + need(all(a > 0 for a, b in cost.values()), 'positive non48 costs') + # c(r)-v(r)*c(1)/925 > 0 at every r != 1, so a single + # multiplier gives a supporting inequality for every count vector. + margins = {} + for r, (lo, hi) in cost.items(): + if r == 1: + continue + c = credit[r] + rhs = c*cost[1][1 if c >= 0 else 0]/925 + margins[r] = lo-rhs + need(margins[r] > 0, 'rank-one strictly optimal cost/credit ratio: '+str(r)) + return dict(credit=credit, multiplier_interval=[str(cost[1][0]/925), str(cost[1][1]/925)], + strict_margin_by_rank={r: str(x) for r, x in margins.items()}, + minimum_strict_margin=str(min(margins.values()))) + + +def main(out): + for relative, expected in PINS.items(): + need(hashlib.sha256((ROOT/relative).read_bytes()).hexdigest() == expected, 'source drift: '+relative) + M = load(ENGINE+'moment.py', 'retained_mercator') + B = load(ENGINE+'base_two_moment.py', 'retained_atanh') + plan = json.loads((ROOT/'research/gauge44-slots/data/PLAN.json').read_text()) + provider = plan['provider_registry']['gauge44'] + local = {int(r): n for r, n in provider['actual_paid_profile'].items()} + need(Counter(provider['widths']) == INVENTORY, 'fixed helper inventory') + actual_caps = Counter(v[0] for v in plan['windows'].values()) + need({c: n*112//plan['T'] for c, n in actual_caps.items()} == + {c: n for c, (n, _) in CAPACITIES.items()}, 'fixed bin inventory per replica') + upper, vectors = dual_tables() + mass = sum(c*n for c, (n, _) in CAPACITIES.items())-9*sum(r*n for r, n in INVENTORY.items()) + signed = sum(n*p for n, p in CAPACITIES.values())+9*sum(INVENTORY[r]*p for r, p in zip(WIDTHS, PRICES)) + need((mass, signed, upper[0], upper[48]) == (14814, -1084, 0, -13), 'fixed-family coefficients') + credit = 48*signed+13*mass + need(credit == 140550 and Q(credit, 925) == Q(5622, 37), 'dual credit demand') + T = 37 + idle = {1: 5622, 48: 11302} + need(sum(r*n for r, n in idle.items()) == mass*T, 'formal relaxed idle mass') + need(sum(upper[r]*n for r, n in idle.items()) == signed*T, 'dual equality') + profile = Counter({r: 9*T*n for r, n in local.items()}) + profile.update(idle) + live = 896*T + need(73*live-sum(r*n for r, n in profile.items()) == 320*T, 'rank deficit') + root = M.certify(profile, 73, live, False) + lo, hi = Q(root['lower']), Q(root['upper']) + signs = {} + for name, z in [('lower', lo), ('upper', hi)]: + first = M.moment(profile, 73, live, z) + second = B.moment(73, live, list(profile.items()), z) + need(first[1] < 1 and second[1] < 1 if name == 'lower' else first[0] > 1 and second[0] > 1, + 'two exact moment signs at '+name) + signs[name] = dict(endpoint=str(z), mercator=[str(x-1) for x in first], + atanh=[str(x-1) for x in second]) + certs = {kind: ratio_certificate(engine, kind, upper, hi) + for kind, engine in [('mercator', M), ('atanh', B)]} + # The retained outer recipe always has a < b and kappa < a/(1+a). + # Therefore b < hi implies kappa < hi/(1+hi), without assuming that + # this formal relaxed profile can pass any finite or physical admission. + ceiling = hi/(1+hi) + ticks = ceiling*10**18 + grid = Q((ticks.numerator-1)//ticks.denominator, 10**18) + result = dict(status='PASS_ALL_T_K8_SIGNED_DUAL_UPPER_RELAXATION', + scope='All positive integer replica counts, fixed PR1018 local word and widths, nine calls and 896 live wires per replica, whole helpers and fixed 8/16/32/48 bin inventory. Geometry, time windows, finite invoice and physical realization are relaxed. This does not construct a supplier at the upper bound and does not cover different circuits, split helpers, banks or recursion geometries.', + dual_bin_vectors=vectors, upper=upper, mass_per_replica=mass, + signed_price_per_replica=signed, credit_per_replica=credit, + normalized_idle={'1': '5622/37', '48': '11302/37'}, + equality_requires_replica_count_multiple_of=37, + formal_profile=dict(replicas=T, idle=idle, profile=dict(sorted(profile.items())), + live=live, deficit=320*T), + root=root, two_engine_signs=signs, supporting_inequalities=certs, + kappa_strict_rational_upper=str(ceiling), kappa_strict_upper_decimal=M.decimal(ceiling), + all_T_grid_upper=str(grid), all_T_grid_upper_decimal=M.decimal(grid), + source_sha256=PINS) + need(not out.exists(), 'output preservation: choose a new file') + out.write_text(json.dumps(result, indent=2)+'\n') + print(result['status'], result['all_T_grid_upper_decimal']) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--out', type=Path, required=True) + main(parser.parse_args().out) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/prepare.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/prepare.py new file mode 100644 index 0000000000..bdf06ddbc2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/prepare.py @@ -0,0 +1,100 @@ +"""Materialize unchanged PR1018 verifiers with a new frozen owner nomination. + +Prepared with OpenAI Codex assistance. Apache-2.0; upstream credit in NOTICE.md. +Only PLAN, OWNERS and the expected-value SPEC change. No guard is rewritten. +""" +import argparse +from collections import Counter +import gzip +import hashlib +import importlib.util +import json +from pathlib import Path +import shutil + +P = Path(__file__).resolve().parent +ROOT = P.parents[1] +UP = ROOT / 'research/gauge44-slots' + + +def read(path): + raw = Path(path).read_bytes() + return json.loads(gzip.decompress(raw) if str(path).endswith('.gz') else raw) + + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def dump(path, obj): + Path(path).write_text(json.dumps(obj, indent=2) + '\n') + + +def prepare(runtime, owners, frozen_spec=None): + assert __debug__, 'Assertions are required' + assert not runtime.exists() and not runtime.resolve().is_relative_to(ROOT) + runtime.mkdir(parents=True) + plan = read(UP / 'data/PLAN.json') + roles = read(owners) + widths = plan['provider_registry']['gauge44']['widths'] + spec = importlib.util.spec_from_file_location('reuse', UP / 'hosting/reuse_owners.py') + checker = importlib.util.module_from_spec(spec) + spec.loader.exec_module(checker) + used, _ = checker.audit_roles(roles, plan, {tuple(c): widths for c in plan['order']}, 112, 480) + idle = Counter() + for key, (cap, _) in plan['windows'].items(): + rep, ch = map(int, key.split(',')) + for port in range(112): + rem = cap - len(used[rep, ch, port]) + assert 0 <= rem <= 48 + if rem: + idle[rem] += 1 + local = {int(r): n for r, n in plan['provider_registry']['gauge44']['actual_paid_profile'].items()} + profile = Counter({r: 72*n for r, n in local.items()}) + profile.update(idle) + assert 73*7168 - sum(r*n for r, n in profile.items()) == 2560 + plan.update(status='NOMINATED_COORDINATED_WHOLE_CALL_OWNERS_REQUIRES_STRICT_ADMISSION', + profile=dict(sorted(profile.items())), + assignment_sha256=hashlib.sha256(gzip.decompress(owners.read_bytes())).hexdigest(), + source_owners_sha256=sha(UP / 'data/OWNERS.json.gz'), + source_plan_sha256=sha(UP / 'data/PLAN.json'), + solver_status='Frozen candidate; no optimizer is part of admission', gap=None) + shutil.copytree(UP / 'code', runtime / 'code', ignore=shutil.ignore_patterns('__pycache__')) + shutil.copytree(UP / 'inputs', runtime / 'inputs') + shutil.copy2(UP / 'verify_global.py', runtime / 'verify_global.py') + (runtime / 'data').mkdir() + shutil.copy2(UP / 'data/UPSTREAM-PINS.json', runtime / 'data/UPSTREAM-PINS.json') + shutil.copy2(owners, runtime / 'data/OWNERS.json.gz') + dump(runtime / 'data/PLAN.json', plan) + witness = read(frozen_spec) if frozen_spec else read(UP / 'data/SPEC.json') + recipe = Path(witness['pivot_swap']['recipe']) + assert not recipe.is_absolute() and '..' not in recipe.parts + (runtime / recipe).parent.mkdir(parents=True) + shutil.copy2(UP / recipe, runtime / recipe) + if not frozen_spec: + witness.update(name='k8-coordinated-whole-call-owners', providers={}, + expected={'gain_baseline_kappa': witness['expected']['gain_baseline_kappa']}) + witness['data'] = {'plan_sha256': sha(runtime / 'data/PLAN.json'), + 'owners_sha256': sha(owners)} + assert witness['data'] == {'plan_sha256': sha(runtime / 'data/PLAN.json'), 'owners_sha256': sha(owners)} + dump(runtime / 'data/SPEC.json', witness) + copied = [UP / 'verify_global.py', *(UP / 'code').glob('*.py')] + identities = {f.relative_to(UP).as_posix(): sha(f) for f in copied} + assert all(sha(runtime / name) == digest for name, digest in identities.items()) + result = dict(status='PASS_NOMINATION_COMBINATORICS_NOT_ASSEMBLY_ADMISSION', + helper_roles=len(roles), calls=72, helpers=480, live=7168, physical=7658, + deficit=2560, local_profile=local, idle_profile=dict(sorted(idle.items())), + global_profile=dict(sorted(profile.items())), + upstream_verifiers_copied_without_edits=identities, + owners_sha256=sha(owners), plan_sha256=sha(runtime / 'data/PLAN.json')) + dump(runtime / 'PREPARATION.json', result) + return result + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--runtime', type=Path, required=True) + ap.add_argument('--owners', type=Path, default=P / 'OWNERS.json.gz') + ap.add_argument('--spec', type=Path) + args = ap.parse_args() + print(json.dumps(prepare(args.runtime.resolve(), args.owners.resolve(), args.spec), indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/verify.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/verify.py new file mode 100644 index 0000000000..4e45748ff4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/verify.py @@ -0,0 +1,163 @@ +"""Verify the frozen owner improvement with unchanged PR1018 admission code. + +Default: rebuild k8 and its slot layer. --native-from explicitly reuses a +completed, pinned rebuild (including all controls), and reruns global admission. +""" +import argparse +import gzip +import hashlib +import json +import os +from pathlib import Path +import subprocess +import sys +import time + +from prepare import P, ROOT, UP, read, sha, dump, prepare + +CHAIN_STEPS = ['pivot-swap', 'cold44-exact', 'lec-p6n', 'promotion', 'promo-controls', + 'lec-promo', 'jx', 'jx-control-C0_identity', 'jx-control-C1_741_only', + 'jx-control-N3_plain_join_moved_reads', 'lec-jx', 'hybrids', + 'hybrid-controls', 'lec-hyb', 'frames', 'lec-frames', 'native', + 'ledgers', 'local-replay', 'wrappers', 'phases'] +SLOT_STEPS = ['parent-manifest', 'slots', 'slot-controls', 'native', 'ledgers', + 'local-replay', 'wrappers', 'phases', 'audit-local', 'strict'] + + +def payload(path): + return hashlib.sha256(gzip.decompress(Path(path).read_bytes())).hexdigest() + + +def check_steps(path, expected): + rows = read(path) + assert [s['step'] for s in rows] == expected + assert all(type(s['exit_code']) is int and s['exit_code'] == 0 for s in rows) + + +def check_native(native): + """Rebind receipt references and proof-relevant identities, not just status strings.""" + leaver = ROOT / 'research/gauge44-leaver8/construction/leaver' + cp = read(leaver / 'CHAIN-PINS-k8.json') + sp = read(UP / 'construction/slots/SLOT-PINS-k8.json') + check_steps(native / 'word/STEPS.json', ['gauge-forward', 'port0', 'port1', 'port2', 'port3', 'cold44']) + check_steps(native / 'chain/STEPS.json', CHAIN_STEPS) + check_steps(native / 'slots/STEPS.json', SLOT_STEPS) + assert payload(native / 'chain/frames/FULL-WORD.json.gz') == sp['base_sha256'] + for label in ('lec-p6n', 'lec-promo', 'lec-jx', 'lec-hyb', 'lec-frames'): + controls = read(native / 'chain' / label / 'COLD-END-CONTROLS.json') + assert controls['status'] == 'PASS_COLD_END_RAW_WORD_CONTROLS' + assert len(controls['rejected']) == cp[label] == 95 + controls = read(native / 'slots/slot-controls/controls.json') + assert sorted(controls) == sorted(sp['slot_controls']) and all(v['ok'] for v in controls.values()) + for directory, pins in [(native / 'chain/local', cp), (native / 'slots/local', sp)]: + assert payload(directory / 'CANONICAL-WORD.json.gz') == pins['canonical_sha256'] + checks = read(directory / 'LOCAL-CHECKS.json') + programs = read(directory / 'LOCAL-PROGRAMS.json.gz') + assert set(programs) == set(checks) == {'forward', 'backward'} + for direction in programs: + encoded = json.dumps(programs[direction], sort_keys=True, separators=(',', ':')).encode() + assert hashlib.sha256(encoded).hexdigest() == checks[direction]['sha256'] == pins['program_sha256'][direction] + assert sha(directory / 'CLIFFORD-RECIPES.json') == pins['clifford_recipes_sha256'] + phase = read(directory / 'CLIFFORD-REVIEW.json') + assert phase['status'] == 'PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES' + assert phase['canonical_word_sha256'] == sha(directory / 'CANONICAL-WORD.json.gz') + assert phase['recipe_sha256'] == sha(directory / 'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] is True + assert payload(native / 'slots/slots/FULL-WORD.json.gz') == sp['word_sha256'] + result = read(native / 'slots/RESULT.json') + assert result['status'] == 'PASS_SLOTS_ON_CHECKED_K8_BASELINE' + assert result['kappa_decimal'] == sp['kappa_decimal'] + old = read(native / 'slots/global/ASSEMBLY.json') + assert old['kappa_decimal'] == sp['kappa_decimal'] + assert len(old['outer']) == 47 and len(old['conservative_outer']) == 47 + return dict(status='PASS_PINNED_COMPLETE_K8_AND_SLOT_REBUILD', + native_directory=str(native), chain_steps=len(CHAIN_STEPS), slot_steps=len(SLOT_STEPS), + cold_end_controls=5*95, slot_control_outcomes=len(controls), + source_result_sha256=sha(native / 'slots/RESULT.json'), + source_assembly_sha256=sha(native / 'slots/global/ASSEMBLY.json'), + canonical_payload_sha256=sp['canonical_sha256']) + + +def main(): + assert __debug__, 'Assertions are required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--work', type=Path, required=True) + ap.add_argument('--word-dir', type=Path, help='Completed, pinned PR741 gauge44 initial word directory') + ap.add_argument('--native-from', type=Path, help='Completed word/, chain/, slots/ rebuild; explicitly rechecked') + args = ap.parse_args() + work = args.work.resolve() + assert not work.exists() and not work.is_relative_to(ROOT) + assert args.native_from or args.word_dir, 'Supply --word-dir for rebuild, or explicitly --native-from' + work.mkdir(parents=True) + for rel, digest in read(P / 'SOURCE-PINS.json').items(): + assert sha(ROOT / rel) == digest, 'Changed upstream dependency: ' + rel + for name in ('OWNERS.json.gz', 'SPEC.json'): + assert sha(P / name) == read(P / 'CLAIM.json')['files'][name], 'Changed frozen candidate' + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0') + env.pop('PYTHONOPTIMIZE', None) + env.pop('WITNESS_DISCOVER', None) + env.pop('WITNESS_RECORD', None) + steps = [] + + def run(name, script, *arguments): + log = work / (name + '.log'); start = time.monotonic() + with log.open('w') as f: + proc = subprocess.run([sys.executable, '-B', str(script), *map(str, arguments)], + cwd=ROOT, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=name, exit_code=proc.returncode, seconds=round(time.monotonic()-start, 3), log_sha256=sha(log))) + dump(work / 'STEPS.json', steps) + assert proc.returncode == 0, name + ':\n' + log.read_text()[-6000:] + print('PASS', name, flush=True) + + for package in ('gauge44-leaver8', 'gauge44-slots'): + run(package + '-manifest', ROOT / 'research' / package / 'verify_manifest.py') + if args.native_from: + native = args.native_from.resolve() + else: + native = work / 'native' + pr635 = ROOT / 'research/complex-sw4-frame8/vendor/pr635' + leaver = ROOT / 'research/gauge44-leaver8/construction/leaver' + run('leaver-word', leaver / 'reproduce_leaver.py', '--main', ROOT, '--pr635', pr635, + '--word-dir', args.word_dir.resolve(), '--out', native / 'word', '--id', 'k8', '--word-only') + run('leaver-chain', leaver / 'reproduce_leaver_chain.py', '--main', ROOT, '--pr635', pr635, + '--leaver-dir', native / 'word', '--hamming', args.word_dir.resolve() / 'hamming', + '--out', native / 'chain', '--id', 'k8') + run('slot-layer', UP / 'construction/slots/verify_slots.py', '--main', ROOT, '--pr635', pr635, + '--baseline', native / 'chain', '--work', native / 'slots') + binding = check_native(native) + binding['reuse_explicitly_requested'] = bool(args.native_from) + dump(work / 'NATIVE-BINDING.json', binding) + preparation = prepare(work / 'runtime', P / 'OWNERS.json.gz', P / 'SPEC.json') + dump(work / 'PREPARATION.json', preparation) + run('strict-global', work / 'runtime/verify_global.py', '--main', ROOT, + '--local', native / 'slots/local', '--work', work / 'global') + result = read(work / 'global/ASSEMBLY.json') + claim = read(P / 'CLAIM.json') + assert result['kappa_decimal'] == claim['kappa_decimal'] + assert result['complex_profile'] == {str(k): v for k, v in preparation['global_profile'].items()} + from fractions import Fraction as F + assert F(result['kappa']) > F(claim['baseline_kappa']) + assert len(result['outer']) == len(result['conservative_outer']) == 47 + assert all(F(v) > 0 for v in result['outer'].values()) + owner = read(work / 'global/global/audit/OWNERS-AND-PROFILE.json') + invoice = read(work / 'global/global/audit/PREFIX-AND-INVOICE.json') + controls = read(work / 'global/ADMISSION-CONTROLS.json') + bit = read(work / 'global/BIT-SUPPLIER-CONTROLS.json') + assert len(controls['rejected_controls']) == 69 and len(bit['rejected_controls']) == 12 + assert all(invoice['strict_checks'].values()) + receipt = dict(status='PASS_K8_COORDINATED_OWNERS_COMPLETE_ADMISSION', + kappa_decimal=result['kappa_decimal'], baseline_kappa=claim['baseline_kappa'], + gain_percent=str(float(100*(F(result['kappa'])/F(claim['baseline_kappa'])-1))), + complex_lower=result['complex_decimal'], bit_lower=result['bit_decimal'], + admission_controls=69, bit_supplier_controls=12, outer_strict_inequalities=47, + native=binding, scope=result['scope'], steps=steps, + source_pins_sha256=sha(P / 'SOURCE-PINS.json'), + assembly_sha256=sha(work / 'global/ASSEMBLY.json'), + owner_audit_sha256=sha(work / 'global/global/audit/OWNERS-AND-PROFILE.json'), + invoice_sha256=sha(work / 'global/global/audit/PREFIX-AND-INVOICE.json')) + dump(work / 'RESULT.json', receipt) + print(receipt['status'], result['kappa_decimal'], flush=True) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/verify_manifest.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/verify_manifest.py new file mode 100644 index 0000000000..8c2441d392 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-coordinated-owners/verify_manifest.py @@ -0,0 +1,19 @@ +"""Verify the submitted package's exact file inventory and SHA256 bindings.""" +from hashlib import sha256 +import json +from pathlib import Path + +root = Path(__file__).resolve().parent +expected = json.loads((root / 'MANIFEST.json').read_text()) +actual = { + p.relative_to(root).as_posix(): sha256(p.read_bytes()).hexdigest() + for p in root.rglob('*') + if p.is_file() and '__pycache__' not in p.parts + and p != root / 'MANIFEST.json' +} +if actual != expected: + missing = sorted(expected.keys() - actual.keys()) + extra = sorted(actual.keys() - expected.keys()) + changed = sorted(k for k in expected.keys() & actual.keys() if expected[k] != actual[k]) + raise SystemExit(f'Manifest mismatch: missing={missing}, extra={extra}, changed={changed}') +print(f'PASS package manifest: {len(actual)} files') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/CLAIM.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/CLAIM.json new file mode 100644 index 0000000000..1162be40d5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/CLAIM.json @@ -0,0 +1,34 @@ +{ + "status": "PASS_K8_EIGHT_ENDS_T16_COMPLETE_ADMISSION", + "kappa": "418655624469341/250000000000000000", + "kappa_decimal": "0.001674622497877364", + "previous_kappa": "0.001673414377866467", + "gain_percent": "0.072194910410492721947823700", + "complex_lower": "1677431562510593854067/1000000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "global_profile": { + "1": 347112, + "2": 67680, + "3": 57600, + "4": 20448, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "local_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "fixed_family_all_replica_grid_upper": "0.001674630216885732", + "remaining_fixed_family_gain_percent_upper": "0.000460940204600385025360700", + "scope": "Conditional native exact-complex witness using the unchanged eight-endpoint R480 k8 word, the cited PR1074/PR858 sixteen-replica controller, and the unchanged PR589 bit supplier. PR559 exact-cover recurrence correction, bit bad-residue surcharge, and H1-H5 retained. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification. The all-replica upper bound applies only to this fixed local profile, whole-helper widths, nine calls per replica, and fixed bin inventory.", + "comparison_sources": { + "previous": "../k8-eight-ends/CLAIM.json", + "controller": "https://github.com/CrocSwap/integer-mult-bounds/pull/1074" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/MANIFEST.json new file mode 100644 index 0000000000..65477df4ba --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/MANIFEST.json @@ -0,0 +1,86 @@ +{ + "CLAIM.json": "4ba568cb88f86a87a6c35df444b44b6f8c006ece6351279934ede873f5d61eab", + "NOTICE.md": "a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0", + "OWNERS.json.gz": "a4c79743dcc93c4260fae00b3324b97983fcd56af8bff5414243d7258a4bc97b", + "PLAN.json.gz": "6561ecb8db5e24dd534d0f940f91830691ab375f925b20665ca0f019718e2b7a", + "PROOF.md": "7084e8a9fedd0d5902e95500da70982343fa725d8b68c2c3210a7b0a7bb2e664", + "README.md": "7aa1a4f5348ed9408cdebb2525eaabe50776259b939d7d49f6845503f3c585c3", + "SEARCH.json": "bf8efc27b2ca95f4bd15ebc719d2794a0e5d2edf26fc5b4cffc8c18dcb7f6d4a", + "SOURCE-PINS.json": "07515a4634303b85a54b570079f0efb373b36d586c72f7b023df3d2f495ad5a3", + "SPEC.json": "30d4dcc96f1361fcee1562681291763f6ee8c08fb1f93da1ea4fd2a42a1d0b5d", + "UPSTREAM.json": "23493f74fc09ac50442d9d83b7626d4760cfa24c785ca1d96fde8175bdd39fa6", + "discovery/ALIASES-REFRAMED.json": "a65d322ee757815e0de08e1f3c5796b5add8c744e1c3df292af917966b09adf0", + "discovery/BANK-STAGES.json": "ad8a80986982b67481ed4785663d83f56516542a79dc02c9ff50c991173c2771", + "discovery/FINAL-SEARCH.json": "ed936c49a0c15d69388b03f7c71bee50b2726be353f8dd52c6dcc56b1c12e1bd", + "discovery/HELPER-ALIASES.json": "ad1e0ffa923ce6632b2b86ad00ab004b5fc28ecd1d186e3c55727d1d6e834d73", + "discovery/PROMOTION-GROUPS.json": "221e05ae8c2b32594490b98ca12a96fc301789d1d80752c1d5f168469f8f8c07", + "discovery/PROMOTION-SCREEN.json": "6b5799744b7abbf4182ad594ede3984123ec559dfed1c1f50ad4f005ce713390", + "discovery/RETIRABLE-HELPERS.json": "3670ce299d538c4215fab08e88e7553903dfc595b756bcbc157178b0dc913159", + "discovery/SWAP-SEARCH.json": "70901cb74e475b35e0cffe99fbdae6ed74e5d315b92fdf900ef3a6ef7e542258", + "discovery/bank_screen.py": "b6c208ab449a9371bc812a19ed13edd8121f3f042769739fab9f964959a30b78", + "discovery/columns12-SEARCH.json.gz": "ee6f2925af9fc0dae9c2c511a35e34fe3d9983fb2df6b14de144d1166bba495a", + "discovery/columns12.log.gz": "7056db81c9131f484f1b09931bd3a722fa78e03e8e5898645da2eea3df75638b", + "discovery/columns144-SEARCH.json.gz": "b07b6a6dd29ec3cb03fa3827767e674b4ea06b3f2a555ba332f2dcb88ff918f9", + "discovery/columns144.log.gz": "bcf0b3ca6bd12a9032bfd27231e5a4efe2dd3b0edf874c9a01d0ba9dc8a3889d", + "discovery/columns24-SEARCH.json.gz": "9049ac77892a20aeeb30ccbf2a703c2b89cdbacf4f8f68a391cae10552c948b1", + "discovery/columns24.log.gz": "6aedcc3e39ee3ee8d2f9d4f33fd0107a1dec002323a6bf5e7e29308beafd3f91", + "discovery/columns48-SEARCH.json.gz": "adafcb5f6a7169a01a71220ea7ac94b389884112d00b1e9083961d69e4bbe467", + "discovery/columns48.log.gz": "0d69973436734bdce8399377f617dc728f099c1da237bdb829bf1ddf20ca4c4e", + "discovery/columns48b-SEARCH.json.gz": "fffcdb5b4f3679ab726a3abf9a8ed97559eec7975ca39ece8a140231efaad130", + "discovery/columns48b.log.gz": "c811f9ea49dd8ddf80f54556c7e387172b5ecbd8998ed4bea795e7c2b12121e9", + "discovery/double-calls-SEARCH.json.gz": "69df67741eae2afdd3f683f4021f478000dded1322c5820023faa77067ef6a9e", + "discovery/double-six-SEARCH.json.gz": "0364f028731baeccbf07953a98fabbf152b3685c5dfdf309d65398946ade9883", + "discovery/double-triples-SEARCH.json.gz": "f0040bb71eac1612bf730791a6d32bf13c7a065f0a2772a1149ced7aa71ffc77", + "discovery/helper_aliases.py": "3b996c21bf97e950e785c2f7f3ce025ce59c754c3679f97023ababfc5ac0b295", + "discovery/make_start.py": "3ba975c7947a3b74959a7e83a580a6f7b36e90d075157bac304a097d20e2cafd", + "discovery/promotion_groups.py": "5244da8cffc5f56698c134ca36230bcddbbdea935bc633e4975de50b47d785d2", + "discovery/reframe_aliases.py": "5e6342d583a7f3b99c940b6382527a000803eb728267fb4c101371b2b2128d89", + "discovery/search_calls.py": "273d3b3e1de5644af5a13a2c7cb18a34a3689b80830b614d7d2ed1da998a90ee", + "discovery/search_columns.py": "edbb093207e21ee4301382f00198c6eccb197949068e96c76e46a2e61dc90f82", + "discovery/search_uniform_blocks.py": "ab6308d536b37b14996e06b857a4f11433b3cb551444e836eb12ec560b452bb8", + "discovery/swap_frames.py": "cd89dd461142788817ac53c041808077d162a4d3bcfebee240307199aebadcc5", + "discovery/t16-calls-SEARCH.json.gz": "44df70fe291f3c0ec9ecd01791c02b9b52b29807c576353476542aaf76bbff40", + "discovery/t16-pairs-SEARCH.json.gz": "d32f9facc6b68c8dad2c9e4ead26aec913b076d4eb10214d18fa0c4c0b4762fa", + "discovery/t16-triples-SEARCH.json.gz": "57dd34fea35dee80e72a007e4cd044c50f00c1c794f03df6b0cbf292f54d8e0e", + "discovery/uniform-blocks-SEARCH.json.gz": "9c0a86f5befe738ebcf39badda84314150b060a911e0708d83d29a22423f149c", + "evidence/ADMISSION-CONTROLS.json": "6bdc8957237a01c0c5f667e2be2e889b02714fc6bc7a209672d09d5222073059", + "evidence/ALL-T-BOUND.json": "dde30a7151248cb9f316fe3816554dc165d050f5216e13797ceb30fe681a3a04", + "evidence/ASSEMBLY.json": "52c6af2fc860f7459f0fe3397639caecd5a8edf35ad76d4b22e99d19a79a2831", + "evidence/ASYNC-AUDIT.json": "644c15a99e207161a50eca01ddf1c7852e67504517fa4710d5490c3f65a4665a", + "evidence/AUDIT-LOCAL.json": "9fd252469f82b5ce5fc2f42b674445dfcac08d769768d00bede6cb5c99e9aa63", + "evidence/BIT-SUPPLIER-CONTROLS.json": "17939b88da6b6ad8a8220ed04ddf325679fc2f096c7d197938f10893a87383b4", + "evidence/END-CONTROLS.json": "e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135", + "evidence/GLOBAL-PREFIX.json": "a6820bfad6fd665c08755fdff98d64069cb94dce337b0881e035a61bcb981cd2", + "evidence/IDLE-REMAINDER-FRAMES.json": "2d8b44b6bfe85df299bef25602529867b3316a20e41991786c2063b4c203d34c", + "evidence/INDEPENDENT-T16.json": "8311da24ffd4314b7d0857f7669de063fa76679af7fb67009513c513e47da5b3", + "evidence/NATIVE-STEPS.json": "782098b0ae9b7a87c75c47edc2e072c25a2c44d3e5417f44bf5f81ecf3d04a6e", + "evidence/OWNERS-AND-PROFILE.json": "f20ff5901bfe41cddf5c62d59f8c5361323f7e49b78c17d97173e9db5b3baf0f", + "evidence/PARENT-LIFT-RECEIPT.json": "d4705df4d65289e9ced31f625e34559fb26c1a4ca6f74559dd2e31a366b20a74", + "evidence/PREFIX-AND-INVOICE.json": "ef4775a3cd6bb1d52b9f43924b9bb1b378d52662c67e373fed20c1d5728caeb5", + "evidence/REPLAY-LOGS.json.gz": "81d8a6d5968f206177a4a1bd51baa530f1f9881867ce9925d341066dc1b33f21", + "evidence/REPLAY.json": "fa8db7880863b26de2999eab873f9d9b4661da651e17ac2f3b24a888efb1a341", + "evidence/RESULT.json": "33708ffb914369d4e25f34824bad32f2962d94027c2710df70fff83def7ec19f", + "evidence/STAGES.json": "b46df79356639d66a30fd50ca9d62b067037fb6072865d7399273ab20ccd3b23", + "independent/all_t_bound.py": "0cf8498903ef9e2a210886aa8360643b43a41f5bce33e187528835c325e3a059", + "vendor/pr1074/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "vendor/pr1074/code/assemble.py": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a", + "vendor/pr1074/code/assembly_controls.py": "da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d", + "vendor/pr1074/code/audit_allcold.py": "1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc", + "vendor/pr1074/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "vendor/pr1074/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "vendor/pr1074/code/emit_allcold.py": "354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e", + "vendor/pr1074/code/freeze_spec.py": "5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2", + "vendor/pr1074/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "vendor/pr1074/code/invoice_allcold.py": "71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8", + "vendor/pr1074/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "vendor/pr1074/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "vendor/pr1074/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "vendor/pr1074/construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "vendor/pr1074/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "vendor/pr1074/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "vendor/pr1074/t16/build_parent.py": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "vendor/pr1074/t16/indep16.py": "1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7", + "vendor/pr1074/t16/lift16.py": "072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689", + "vendor/pr1074/verify_t16.py": "050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46", + "verify.py": "e910ca38941209be9b32c3fa6d784e84a824bef9767d2bf492f298d4889cfe92" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/NOTICE.md new file mode 100644 index 0000000000..d0359f2e08 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/NOTICE.md @@ -0,0 +1,9 @@ +Apache-2.0. Prepared for Thomas DiFiore with OpenAI Codex assistance. + +This package composes community work. It claims the new finite owner assignment, the documented pattern-pricing search, and the inventory-specific ceiling certificate, not original authorship of E8, the k8 word, the sixteen-replica controller, or the admission machinery. + +* `../k8-eight-ends` supplies the unchanged endpoint word, local verification, and initial T8 owners. Its NOTICE.md credits PR1018's R480 k8 + seven-slot supplier, PR1030's rank-seven endpoint lead, PR864's frame model, and earlier owner research. +* CrocSwap/integer-mult-bounds PR1074, commit `052afc128954f7b6a2b3c409eb4d72248e4020f2`, supplies the consumed controller and strict admission sources. Every file under `vendor/pr1074` is byte-identical to that upstream commit and pinned in `UPSTREAM.json`. The original `UPSTREAM-NOTICE.md` is retained there. PR1074's owner research was contributed by jeremykothe2 with Claude Opus 5.5. +* The T16 controller, direct-sum parent, actual-window reconstruction, and independent checker originate in Hao Yan / FanPUYen's PR858, with subsequent PR870 and PR1074 adaptations. This package does not modify their checks. +* `independent/all_t_bound.py` adapts `../k8-coordinated-owners/independent/all_t_bound.py`, itself adapted from jon314159's PR942 certificate and chafreaky's PR795/890 signed dual prices. The two rational arithmetic engines are retained upstream code. +* The bit supplier remains the cited PR589 supplier. All analytic, compiler, boundary, common-label, hosting, and bit-supplier assumptions remain in force. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/OWNERS.json.gz new file mode 100644 index 0000000000..552924ef0d Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/PLAN.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/PLAN.json.gz new file mode 100644 index 0000000000..ff24b37525 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/PLAN.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/PROOF.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/PROOF.md new file mode 100644 index 0000000000..f230cad6a4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/PROOF.md @@ -0,0 +1,25 @@ +# Frozen witness and scope + +The local supplier is exactly the admitted eight-endpoint R480 k8 word in `../k8-eight-ends`. Its decompressed raw-word SHA-256 is `f43271fcabcc9ebb3b9540610574ba463bba4440e7a868bd92e8ea348081d3ec`. Its local paid profile is `{1:2396, 2:470, 3:400, 4:142, 5:82, 8:8}`, and its whole-helper inventory is `{4:56, 5:32, 7:38, 8:114, 9:240}`. The native replay checks all 704 exact scalar columns in both orientations, the residual wrappers, and all 2,904 directed phase edges. The independent local audit and 32 endpoint mutations are also rerun. + +The sixteen-replica controller is the unmodified consumed PR1074 source, descended from PR858 and PR870. The direct-sum parent lift interleaves the two T8 call lists. The lift rebuilds every owner's legal time windows from the actual parent source events and checks all 144 × 480 whole-helper roles. The emitted controller, independent T16 checker, and exact finite invoice check the resulting physical realization under the inherited model. In particular, each helper is hosted as a whole interval, each call has at most one helper in an owner, all source and helper aliases are checked, the charged prefix is 512 bits, and the finite physical row coefficient remains below 20,161. + +The achieved idle profile is `{1:2088, 24:1, 48:4918}`. Adding 144 copies of the local paid profile gives + +`{1:347112, 2:67680, 3:57600, 4:20448, 5:11808, 8:1152, 24:1, 48:4918}`. + +Its rank mass is 1,041,408, and `73 × 14336 − 1041408 = 5120`. The unchanged rational engines certify complex lower endpoint `1677431562510593854067/10^24`, unchanged bit lower endpoint `1733427039589844234749/10^24`, and final κ `418655624469341/250000000000000000`. All 47 outer inequalities are strict. The admission tests must reject 69 assembly mutations, 12 bit-supplier mutations, 15 controller mutations, and six independent T16 mutations. + +## All-replica ceiling for this fixed family + +The proof adapts the prior signed-dual certificate to the new width inventory and local paid profile. It relaxes geometry, time windows, and integer replica counts in the normalized optimization; it does not assume the relaxed packing is realizable. + +Per replica, the owner inventory has 672 bins of capacity 8 and 448 each of capacities 16, 32, and 48. Nine calls consume the helper inventory above. The remaining rank mass is 14,886. The signed prices of helper widths 4, 5, 7, 8, and 9 are respectively −1, −20, −8, −2, and 4; the corresponding bin bonuses are 2, 4, 8, and −13. Their total signed price per replica is −1,516, giving credit demand `48 × (−1516) + 13 × 14886 = 120750`. + +Two independent enumerations check all 1,163 possible bin patterns. At the certified upper root, two exact rational transcendental engines independently establish that rank-one remainders have the strictly best cost-to-credit ratio. The supporting inequality is tight in the relaxed profile with normalized idle counts `I1/T = 4830/37` and `I48/T = 11374/37`. Clearing denominators gives the formal T=37 profile used for exact root certification. This is a dual equality example, not a physical T37 construction. + +The resulting exact rational upper bound, its two-engine signs, every supporting margin, and the derived 18-decimal-grid bound appear in `evidence/ALL-T-BOUND.json`. The grid upper bound is `0.001674630216885732`; it leaves less than 0.000461% above the admitted value. This certificate covers all positive integer replica counts in this fixed local-profile, fixed-width, fixed-bin, nine-call family. It does not cover new local circuits, split helpers, auxiliary banks, or different recursion geometries. + +The finite witness and the ceiling retain the upstream conditional analytic framework. They do not discharge the all-size compiler, common-label/mutable-source, whole-call hosting, precision/tape, analytic-transfer, or bit H1–H5 assumptions. + +The unchanged upstream receipt formatter retains historical U8/PR799 labels in its prose `scope` field. The actual supplier in this composition is identified by the raw-word hash, semantic artifact identities, frozen PLAN, and this package's `CLAIM.json`; those executable bindings use the eight-endpoint k8 word described above. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/README.md new file mode 100644 index 0000000000..b274d59bd0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/README.md @@ -0,0 +1,31 @@ +# Sixteen-replica packing of the eight-endpoint k8 word + +The frozen conditional value is **κ = 0.001674622497877364**, a **0.072195%** increase over 0.001673414377866467. The local circuit is unchanged from `../k8-eight-ends`; the change is a sixteen-replica owner map obtained by optimizing larger groups of complete calls. + +The new search combines knapsack pricing of capacity patterns with an integer assignment of those patterns to actual owners. It releases all 480 helpers in each selected call, including the previously fixed width-five and width-seven helpers. Coordinating 48 calls at a time reached a substantially better packing than the tested smaller neighborhoods. Optimizer output is used only to nominate frozen data. The byte-identical upstream admission engines check every actual time window, whole-helper interval, chart, occupancy, prefix invoice, and exact arithmetic condition. + +The final idle profile is `{1:2088, 24:1, 48:4918}`. There are 144 complete calls, 69,120 hosted helpers, and 14,336 live wires. The rank mass is 1,041,408 and the deficit is 5,120. + +An independent exact signed-dual certificate bounds the same fixed word and packing inventory at every positive integer replica count. Its 18-decimal-grid upper bound is **0.001674630216885732**. Less than **0.000461%** further improvement remains in that family. A materially larger gain requires changing the circuit, helper model, or recursion geometry. The bound does not rule out those changes. + +This remains a conditional finite witness, with the inherited compiler, analytic-transfer, common-label, mutable-source, whole-call hosting, precision/tape, and bit-supplier assumptions. It is not an unconditional integer-multiplication theorem. See `CLAIM.json`, `PROOF.md`, and `NOTICE.md`. + +## Reproduce + +Use Python 3.11+ and the native backend's C++ compiler and Boost dependencies. No optimization solver is used during verification. `BASE` is the raw R480 k8 + seven-slot word identified in `../k8-eight-ends/RECIPE.json`. + +```sh +python -B research/k8-eight-ends-t16/verify.py \ + --base "$BASE" \ + --work /tmp/k8-eight-ends-t16-fresh +``` + +The output directory must be new and outside the repository. Set `CPLUS_INCLUDE_PATH` to the Boost include directory if necessary. The default run rebuilds the endpoint word and reruns all five native stages, the exact local audit, 32 endpoint controls, the unchanged T16 strict verifier, and the independent all-replica bound. To reuse a completed native replay of the same word, add `--native-from /path/to/completed/native`; its receipts, word content, and all proof-relevant semantic artifact identities are checked. + +The package pins the consumed PR1074 controller sources by SHA-256 and Git blob identity. `SOURCE-PINS.json` pins repository dependencies; `MANIFEST.json` pins this package. The frozen plan is decompressed verbatim, and the T16 verifier independently reconstructs it from actual source-event windows. No discovery mode or solver runs in admission. + +## Research record + +`SEARCH.json` and compressed traces document the successful search chain, the smaller-neighborhood runs, and interrupted exploratory runs. `discovery/make_start.py` reconstructs the doubled T8 starting assignment. The search scripts require NumPy/SciPy; solver choices can vary across versions. The frozen witness does not depend on reproducing those choices. + +The same run screened 76 scalar aliases with fixed ordering, 430 adjacent commuting windows, 20 entrance-promotion groups, and several stage-private bank relaxations. Those tests did not produce a structural improvement. Their scope and numerical limitations are recorded in `SEARCH.json`; they are not general impossibility results. The separate all-replica certificate uses two exact rational arithmetic engines and checks all 1,163 capacity patterns. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/SEARCH.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/SEARCH.json new file mode 100644 index 0000000000..6aa91df171 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/SEARCH.json @@ -0,0 +1,312 @@ +{ + "status": "FROZEN_NOMINATION_AND_SCOPED_NEGATIVE_RESEARCH", + "selected": "columns48b", + "starting_map": "make_start.py doubles the frozen k8-eight-ends T8 owners into the exact PR1074 interleaved T16 call order.", + "algorithm": "Column generation of whole-owner capacity patterns, with one width choice per selected call, followed by integer pattern counts and literal role reconstruction. Baseline assignment columns guarantee feasibility. All final column equations are checked as integers. Exact admission is independent.", + "chain": [ + "double-calls", + "double-triples", + "double-six", + "columns12", + "columns48", + "columns48b" + ], + "runs": [ + { + "name": "t16-calls", + "source": "t16-start", + "seed": 211, + "requested_passes": 10, + "completed_passes": 10, + "block": 1, + "idle": { + "1": 2490, + "2": 27, + "3": 219, + "4": 2, + "7": 4, + "8": 1, + "12": 1, + "16": 57, + "23": 1, + "32": 10, + "48": 4868 + }, + "trace": "discovery/t16-calls-SEARCH.json.gz", + "final_owners_sha256": "18a5b576d60e7ccd4ac46b4bda0a53e240b52f4cbbabafcb789122fb951de415", + "termination": "Completed requested passes.", + "limit_note": "Single-call runs solve a transportation LP without a time limit; the --limit option applies only to multi-call MIP searches." + }, + { + "name": "t16-pairs", + "source": "t16-calls", + "seed": 223, + "requested_passes": 400, + "completed_passes": 400, + "block": 2, + "seconds_per_integer_solve": 0.5, + "idle": { + "1": 2288, + "2": 4, + "3": 188, + "7": 6, + "16": 65, + "23": 1, + "28": 1, + "32": 12, + "39": 1, + "48": 4870 + }, + "trace": "discovery/t16-pairs-SEARCH.json.gz", + "final_owners_sha256": "646afbc54e789f9f239e20e83e19d14f84f755f5dd8f4ef86fc15c0f90ca5e24", + "termination": "Completed requested passes." + }, + { + "name": "t16-triples", + "source": "t16-pairs", + "seed": 227, + "requested_passes": 200, + "completed_passes": 200, + "block": 3, + "seconds_per_integer_solve": 1, + "idle": { + "1": 2154, + "2": 4, + "3": 226, + "7": 4, + "16": 38, + "28": 1, + "32": 27, + "48": 4871 + }, + "trace": "discovery/t16-triples-SEARCH.json.gz", + "final_owners_sha256": "eefd9a22218127438fb6317adf3295fe1c3a4d64b3771a90a33720900ba30944", + "termination": "Completed requested passes." + }, + { + "name": "double-calls", + "source": "t16-double", + "seed": 229, + "requested_passes": 8, + "completed_passes": 8, + "block": 1, + "idle": { + "1": 1991, + "2": 8, + "3": 297, + "7": 2, + "32": 2, + "48": 4900 + }, + "trace": "discovery/double-calls-SEARCH.json.gz", + "final_owners_sha256": "d8afef3a2b30bfcd6ba472ed77da3a075fa5e7019dddabe4eac26906d9c2560d", + "termination": "Completed requested passes.", + "limit_note": "Single-call runs solve a transportation LP without a time limit; the --limit option applies only to multi-call MIP searches." + }, + { + "name": "double-triples", + "source": "double-calls", + "seed": 233, + "requested_passes": 180, + "completed_passes": 180, + "block": 3, + "seconds_per_integer_solve": 0.8, + "idle": { + "1": 1985, + "2": 3, + "3": 294, + "7": 1, + "16": 2, + "32": 2, + "48": 4900 + }, + "trace": "discovery/double-triples-SEARCH.json.gz", + "final_owners_sha256": "84a35bafa36310374f9f44802041a48add0fe40b5862af9b14445b2f5fec83c1", + "termination": "Completed requested passes." + }, + { + "name": "double-six", + "source": "double-triples", + "seed": 239, + "requested_passes": 80, + "completed_passes": 80, + "block": 6, + "seconds_per_integer_solve": 2, + "idle": { + "1": 1985, + "2": 3, + "3": 296, + "5": 2, + "39": 1, + "48": 4901 + }, + "trace": "discovery/double-six-SEARCH.json.gz", + "final_owners_sha256": "3dd92fb786bfb8ea1f84a8b605da69977a3b54fc3300e8052dfa073721d20158", + "termination": "Completed requested passes.", + "target48": true, + "freed_widths": [ + 4, + 8, + 9 + ] + }, + { + "name": "uniform-blocks", + "source": "double-triples", + "seed": 251, + "requested_passes": 120, + "completed_passes": 120, + "block": "6,8,10,12,16,20", + "seconds_per_integer_solve": 1.5, + "idle": { + "1": 1985, + "2": 3, + "3": 294, + "7": 1, + "16": 2, + "32": 2, + "48": 4900 + }, + "trace": "discovery/uniform-blocks-SEARCH.json.gz", + "final_owners_sha256": "84a35bafa36310374f9f44802041a48add0fe40b5862af9b14445b2f5fec83c1", + "termination": "Completed requested passes." + }, + { + "name": "columns12", + "source": "double-six", + "seed": 263, + "requested_passes": 8, + "completed_passes": 7, + "block": 12, + "seconds_per_integer_solve": 5, + "idle": { + "1": 1986, + "2": 2, + "3": 289, + "23": 1, + "48": 4902 + }, + "trace": "discovery/columns12-SEARCH.json.gz", + "final_owners_sha256": "d0ecdc6018cac78dfe91ad485dec52beb0b0796038dce5b749ff6400663c6262", + "pricing_rounds": 25, + "scope": "Feasible integer patterns only; floating restricted LP and time-limited MIP nominate owners, not an optimality proof.", + "termination": "Empty partial-rank48 target-list bug after saved checkpoint; fixed before columns48b. Only completed saved passes are claimed." + }, + { + "name": "columns24", + "source": "columns12", + "seed": 269, + "requested_passes": 60, + "completed_passes": 1, + "block": 24, + "seconds_per_integer_solve": 4, + "idle": { + "1": 1986, + "2": 2, + "3": 289, + "23": 1, + "48": 4902 + }, + "trace": "discovery/columns24-SEARCH.json.gz", + "final_owners_sha256": "d0ecdc6018cac78dfe91ad485dec52beb0b0796038dce5b749ff6400663c6262", + "pricing_rounds": 30, + "scope": "Feasible integer patterns only; floating restricted LP and time-limited MIP nominate owners, not an optimality proof.", + "termination": "Empty partial-rank48 target-list bug after saved checkpoint; fixed before columns48b. Only completed saved passes are claimed." + }, + { + "name": "columns48", + "source": "columns12", + "seed": 271, + "requested_passes": 20, + "completed_passes": 1, + "block": 48, + "seconds_per_integer_solve": 8, + "idle": { + "1": 1982, + "2": 1, + "3": 288, + "32": 1, + "48": 4902 + }, + "trace": "discovery/columns48-SEARCH.json.gz", + "final_owners_sha256": "61acd665586dc3749322440660ded7b1b9a09d80cf03c440b27f91278c40b84c", + "pricing_rounds": 30, + "scope": "Feasible integer patterns only; floating restricted LP and time-limited MIP nominate owners, not an optimality proof.", + "termination": "Empty partial-rank48 target-list bug after saved checkpoint; fixed before columns48b. Only completed saved passes are claimed." + }, + { + "name": "columns48b", + "source": "columns48", + "seed": 277, + "requested_passes": 24, + "completed_passes": 24, + "block": 48, + "seconds_per_integer_solve": 8, + "idle": { + "1": 2088, + "24": 1, + "48": 4918 + }, + "trace": "discovery/columns48b-SEARCH.json.gz", + "final_owners_sha256": "a4c79743dcc93c4260fae00b3324b97983fcd56af8bff5414243d7258a4bc97b", + "pricing_rounds": 30, + "scope": "Feasible integer patterns only; floating restricted LP and time-limited MIP nominate owners, not an optimality proof.", + "termination": "Completed requested passes." + }, + { + "name": "columns144", + "source": "columns48b", + "seed": 281, + "requested_passes": 2, + "completed_passes": 2, + "block": 144, + "seconds_per_integer_solve": 20, + "idle": { + "1": 2088, + "24": 1, + "48": 4918 + }, + "trace": "discovery/columns144-SEARCH.json.gz", + "final_owners_sha256": "a4c79743dcc93c4260fae00b3324b97983fcd56af8bff5414243d7258a4bc97b", + "pricing_rounds": 60, + "scope": "Feasible integer patterns only; floating restricted LP and time-limited MIP nominate owners, not an optimality proof.", + "termination": "Two 20-second MIP limits; neither improved the admitted map. No global integer optimality claim." + } + ], + "structural_screens": { + "aliases": { + "target_reads": 665, + "clean_aliases": 76, + "fixed_frame_feasible": 0, + "all_frames_refitted_feasible": 0, + "scope": "Single source/helper scalar substitutions in the fixed operation order and unchanged endpoints." + }, + "adjacent_swaps": { + "commuting_shared_windows": 430, + "frame_assignments": 296, + "improvements": 0, + "scope": "Adjacent commuting B gates with fixed surrounding frames." + }, + "entrance_promotions": { + "groups": 20, + "scope": "Twelve pairs from dimension one to two and eight groups of four from dimension four to five. Each refit worsened the relaxed objective compared with the unpromoted word; this is not a proof that every promoted construction is worse than the achieved witness." + }, + "banks": { + "stages": [ + 5, + 7, + 9, + 11, + 13 + ], + "scope": "Floating aggregate homogeneous stage-private bank screen; geometry, actual windows, and finite admission omitted. None produced a completed supplier." + }, + "common_window_blocks": { + "iterations": 120, + "accepted": 0, + "scope": "Common-window intersection plus regular bipartite multigraph decomposition; limited search only." + } + }, + "cost_warning": "search_calls.py and search_columns.py use slightly different fixed b in phi; compare the derived profile or moment root across scripts, not raw cost values.", + "replay": "verify.py uses frozen data and byte-identical admission engines, with no solver or discovery mode." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/SOURCE-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/SOURCE-PINS.json new file mode 100644 index 0000000000..d019988cd4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/SOURCE-PINS.json @@ -0,0 +1,136 @@ +{ + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-k492-owner-repair/vendor/multicold/code/assemble.py": "3fedbccb09d469f8ee366b4302e51448de6d25793a78a12c5f9a8d9667a755eb", + "research/complex-k492-owner-repair/vendor/multicold/code/assembly_controls.py": "a0f2349ba8fe8404b8b76c869f12dd7e250a775b2e05b3c9c00e6889ad4c8a45", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_allcold.py": "7950e5c01488a9146bdbaf19ab4fd0c33cd25a4d63fb56ef995ef2e45ac7ec1a", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_kernel_controls.py": "5100459211f43ba048bf82c3942bbedb8b224272b24722a14f0dcd808a38aafa", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-k492-owner-repair/vendor/multicold/code/bind_providers_portable.py": "01e62fee1f1dcf1b7b34338d555dacd5cd1d7d10d6b9a605d0913d959f8c7ecf", + "research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-k492-owner-repair/vendor/multicold/code/build_four_portable.py": "417b1dc4dca485dfbbaa820e552cae9bf3932bbace6ea16ce93aa0590c3c184e", + "research/complex-k492-owner-repair/vendor/multicold/code/build_multicut_kernels.py": "6ab3d73f81d5b2fb884a93a336ef1940e118d419d425b3356bab3b97f774c9aa", + "research/complex-k492-owner-repair/vendor/multicold/code/emit_allcold.py": "9d6c75af63fa8f53973734ccb1eef983511f4337ce644436a693fd8fb9ef8fe2", + "research/complex-k492-owner-repair/vendor/multicold/code/invoice_allcold.py": "ff8fee775ad97926454f3ad1183f8e05de654e276150e579ce612f3eb2f98d44", + "research/complex-k492-owner-repair/vendor/multicold/code/phase_timing_controls.py": "dcc4adfd139d6f65a88bdc6d183ea3777d4e4f688d2169dd41b54964f05591bb", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py": "8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py": "cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py": "e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py": "08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py": "0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py": "66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/emit_allcold.py": "fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py": "a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_controls_atc.py": "63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/phase_timing_controls.py": "1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/witness.py": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "research/gauge44-leaver8/MANIFEST.json": "7c9637f06798b144274458efa145f701c61282f8b3aab1c0c900b53bdfbe1f0d", + "research/gauge44-slots/MANIFEST.json": "9a6f239b1618a43262e56735a99cc59b6f5a6e8816a794a34413e89cc33f4976", + "research/gauge44-slots/code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "research/gauge44-slots/code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "research/gauge44-slots/code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "research/gauge44-slots/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/gauge44-slots/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/gauge44-slots/code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "research/gauge44-slots/code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "research/gauge44-slots/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/gauge44-slots/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/gauge44-slots/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/gauge44-slots/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/gauge44-slots/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "research/gauge44-slots/construction/slots/SLOT-PINS-k8.json": "55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2", + "research/gauge44-slots/construction/slots/verify_slots.py": "bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be", + "research/gauge44-slots/data/OWNERS.json.gz": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a", + "research/gauge44-slots/data/PLAN.json": "1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08", + "research/gauge44-slots/data/SPEC.json": "8e95ae8087124189cbd366d0e9d1c5ebededff536ff3501927b4b2a2e8dac70e", + "research/gauge44-slots/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/gauge44-slots/hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "research/gauge44-slots/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/gauge44-slots/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/gauge44-slots/verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "research/gauge44-slots/verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "research/k8-eight-ends/CLAIM.json": "65f620750f2a438316684b74cdf7cd990d59626b5c073e7dde0fd735ff3e158d", + "research/k8-eight-ends/FULL-WORD.json.gz": "d28c607df2bc4a82684d3fe47cfb3dba04e3bd14b247c7d4a62a03dff7b2836c", + "research/k8-eight-ends/MANIFEST.json": "bbdfe8589b21557ee0e0625cc485e7afef1f55fd31609bc5f4f9b30de4f6cbf9", + "research/k8-eight-ends/NOTICE.md": "820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5", + "research/k8-eight-ends/OWNERS.json.gz": "c41fdf51541ecc91af914f264967f3633570500994f8866daf642440a5d843dd", + "research/k8-eight-ends/PLAN.json.gz": "a3e9e390da3136655606ac919ec60696e2f704457ff01ef9e4d07e90534ab2d4", + "research/k8-eight-ends/PROOF.md": "1ee3b7d22a39ccb0877ca32f176786b2545dd2b86bbe986eec833b96cd17ba6b", + "research/k8-eight-ends/README.md": "0f2bc8afeff4054cb8fb62819563a6214d53af916ebf6f28bb2fcd972814362c", + "research/k8-eight-ends/RECIPE.json": "6a5d91b95bdba641ab4cc0e3c9b7f0f2adcc5ef22bef7f732d5d76cb0b6fab6c", + "research/k8-eight-ends/SEARCH.json": "f1816698aa4d7deb48ef7e98a711fdc0c74d67bd336d4b8f48b46fe191d7d1b1", + "research/k8-eight-ends/SOURCE-PINS.json": "6b85ed22262e23db1ff0518d874d4e3ee1b4317d642fabdc9747cecbd04ef420", + "research/k8-eight-ends/SPEC.json": "555cf868f29c8173b2faf8243aea30ee29f3e12f694c6cb3865a06981592af24", + "research/k8-eight-ends/build_word.py": "18691b1fad3bc798b7ad58b39b433f405e9bb4ec266af0303b563f11b07d956f", + "research/k8-eight-ends/discovery/END-COMBINATIONS.json": "db6353685f6f344a6e3a4b8476dde4858fa2fad65fe4e74abcecab93eb07a79f", + "research/k8-eight-ends/discovery/END-GROUP-SCREEN.json": "b197a014997ec869cc2768b68070e9ad3cd6d19633b366085a8061a3523fe3ef", + "research/k8-eight-ends/discovery/END-GROUPS.json": "19b456b91852df5ee2aec79a16ab454c5772bd5160d1cee42e4df6f0cb211bd4", + "research/k8-eight-ends/discovery/RETIME-CENSUS.json": "40ea9706b94cd23a6c37ab01afb6e945ab59ac43d1a61433583cf1d297cf57dd", + "research/k8-eight-ends/discovery/SEARCH-TRACES.json.gz": "eaa157000003e807fb466d6c7bfc032dc74857ae4afc5de2ca6d1bf1a631c37f", + "research/k8-eight-ends/discovery/SOURCE-CENSUS.json": "aeadcc466b01fd5a2498037f3a83dcecdde91d30327a15c684d77645489e6f69", + "research/k8-eight-ends/discovery/SOURCE-REFRAME.json": "d69170ce6443ffaf890a5e3e2b8cecdb74ba4e7b75273738ed367be5643b01a1", + "research/k8-eight-ends/discovery/combine_ends.py": "ea0e79e0bf4ea7d44cadd179fb5bb6ff13cf6cd960362a1e2e07c63c1969b7f8", + "research/k8-eight-ends/discovery/end_groups.py": "190a44e768daf0d9076158da9f00e4aa7e682e7df90749d18fbd55f1a04b9b09", + "research/k8-eight-ends/discovery/frame_model.py": "dee9899272846ee954f8daf6e9f60c9e073c86489b2a594d4d9a4a9899cbd0e9", + "research/k8-eight-ends/discovery/minimize_recipe.py": "8fa2216d1228c12a08b5e93b084ce1426ebe99b5abb7f6e614173b56bedb459d", + "research/k8-eight-ends/discovery/prepare_new.py": "b2995d74b63010aa3bd5e4cdc59666a0ca0d9d4244340c694e8eed6171231c0d", + "research/k8-eight-ends/discovery/resize_owners.py": "af9b632d51f6b4beddd87bf75d6e36eb3f58b7e467e711208f304a774f8b26f0", + "research/k8-eight-ends/discovery/retime_sources.py": "35600042b16447b24289c73a41462d4eeb6600117529df5baf4fed5aa389d898", + "research/k8-eight-ends/discovery/screen_end_groups.py": "a29814cfc5f3f86dc62272fd3cceb2fb0456a3aa25c8b183980291b744e9ab54", + "research/k8-eight-ends/discovery/search_calls.py": "5df48ab7775bfee767d71dd8c47585977922568b532c29f4528f2c8ca5ab364d", + "research/k8-eight-ends/discovery/source_census.py": "9808b026a8a7556fbf171f57ca46b32c2e33b36eeb2924e7eee24abb2a7b3853", + "research/k8-eight-ends/discovery/test_structures.py": "7c550f1c00d58fa1df668179e09c0fd9fe61c35029f548f973727f0b36706e31", + "research/k8-eight-ends/end_controls.py": "9f4a2ad05a3602be3bd89bb1a1e3fc40bb78eb3ad8de3f66aa19e44e53e30e2a", + "research/k8-eight-ends/evidence/ADMISSION-CONTROLS.json": "b7df5cb7695f8de70c674a03c10a36682d85b958340d392c8d61e9b969111179", + "research/k8-eight-ends/evidence/ASSEMBLY.json": "1cf819f87c1e550c78de98206a52e9aff04ec47022e5a63987bcd1dd5d2e51f6", + "research/k8-eight-ends/evidence/ASYNC-AUDIT.json": "2b056ae65d212cfdf4d83778b9be47dc7a9ded6626feb3a20ae2de6ead8dbb79", + "research/k8-eight-ends/evidence/AUDIT-LOCAL.json": "4ebd818fe459c8b729aaf385d6b2946e58316414a9c29c5ba6a2335d63af7ecf", + "research/k8-eight-ends/evidence/BIT-SUPPLIER-CONTROLS.json": "4fbf09922859926ed79eb4874a0c3414a13991de2ffc64d30a382e7eecb2c2a4", + "research/k8-eight-ends/evidence/CLIFFORD-REVIEW.json": "2bfc112221995431c25a7257fdda5a2e9b2631c1712a48ab428f946849cbac91", + "research/k8-eight-ends/evidence/END-CONTROLS.json": "e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135", + "research/k8-eight-ends/evidence/ENDS-8-AUDIT.json": "5381c41fa10fdccbc5c5bdc7059ad839e508d7b8bc3a139bc8ad6b45c20b01c3", + "research/k8-eight-ends/evidence/INDEPENDENT-LOCAL-REPLAY.json": "00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99", + "research/k8-eight-ends/evidence/LOCAL-CHECKS.json": "3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba", + "research/k8-eight-ends/evidence/NATIVE-STEPS.json": "02f6ea9122362ba1e408e72c331ffc850a2fbd1593afb06554aa0ab5c7aee0f6", + "research/k8-eight-ends/evidence/OWNERS-AND-PROFILE.json": "a04d3db0d157b197d9395967163e155f0d8775a06db2ca4318258830e2abdaa9", + "research/k8-eight-ends/evidence/PREFIX-AND-INVOICE.json": "66650384488db73bf3d5c7742abaa9c116877845bbb4ef46d6fffe235ae7d1c0", + "research/k8-eight-ends/evidence/PREPARATION.json": "cd980d9b80de65d1bd9358d590a479fb85d75fc4e468a12539cd5a0388190e8d", + "research/k8-eight-ends/evidence/REPLAY.json": "fa6b65403a28ce8c717412b0d90dd4c702bcba7e3c530bca932f921f0dba75e2", + "research/k8-eight-ends/evidence/RESULT.json": "904b0cb2082f6f109845d30f6ee4bb6f766ea493c4cee6a637634362a30785b0", + "research/k8-eight-ends/evidence/STEPS.json": "5577123fa4422fb80f412dc3713bbd7eea5c4c50b63db635f01585457c9d2960", + "research/k8-eight-ends/evidence/WRAPPER-CHECKS.json": "b6c7fdef5893b117434f39b6561b80504482fa748e23b840f77a07b137e1d1ea", + "research/k8-eight-ends/replay_native.py": "1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6", + "research/k8-eight-ends/verify.py": "d57061431e087fb755382e3b362ea7421e5ee3dfae5b3ed81ce5228278ba58b6" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/SPEC.json new file mode 100644 index 0000000000..7dd4f9780a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/SPEC.json @@ -0,0 +1,1971 @@ +{ + "schema": "witness-spec/1", + "name": "k8-eight-ends-t16", + "data": { + "plan_sha256": "30f7e21197fd8bc83d8354a5dfffd9d68061551e8a08c903bcebcabafa6fef03", + "owners_sha256": "a4c79743dcc93c4260fae00b3324b97983fcd56af8bff5414243d7258a4bc97b" + }, + "dispatch": [ + [ + 0, + 0, + "gauge44" + ], + [ + 0, + 8, + "gauge44" + ], + [ + 0, + 1, + "gauge44" + ], + [ + 0, + 9, + "gauge44" + ], + [ + 1, + 0, + "gauge44" + ], + [ + 1, + 8, + "gauge44" + ], + [ + 0, + 2, + "gauge44" + ], + [ + 0, + 10, + "gauge44" + ], + [ + 1, + 1, + "gauge44" + ], + [ + 1, + 9, + "gauge44" + ], + [ + 2, + 0, + "gauge44" + ], + [ + 2, + 8, + "gauge44" + ], + [ + 0, + 3, + "gauge44" + ], + [ + 0, + 11, + "gauge44" + ], + [ + 1, + 2, + "gauge44" + ], + [ + 1, + 10, + "gauge44" + ], + [ + 2, + 1, + "gauge44" + ], + [ + 2, + 9, + "gauge44" + ], + [ + 3, + 0, + "gauge44" + ], + [ + 3, + 8, + "gauge44" + ], + [ + 0, + 4, + "gauge44" + ], + [ + 0, + 12, + "gauge44" + ], + [ + 1, + 3, + "gauge44" + ], + [ + 1, + 11, + "gauge44" + ], + [ + 2, + 2, + "gauge44" + ], + [ + 2, + 10, + "gauge44" + ], + [ + 3, + 1, + "gauge44" + ], + [ + 3, + 9, + "gauge44" + ], + [ + 4, + 0, + "gauge44" + ], + [ + 4, + 8, + "gauge44" + ], + [ + 0, + 5, + "gauge44" + ], + [ + 0, + 13, + "gauge44" + ], + [ + 1, + 4, + "gauge44" + ], + [ + 1, + 12, + "gauge44" + ], + [ + 2, + 3, + "gauge44" + ], + [ + 2, + 11, + "gauge44" + ], + [ + 3, + 2, + "gauge44" + ], + [ + 3, + 10, + "gauge44" + ], + [ + 4, + 1, + "gauge44" + ], + [ + 4, + 9, + "gauge44" + ], + [ + 5, + 0, + "gauge44" + ], + [ + 5, + 8, + "gauge44" + ], + [ + 0, + 6, + "gauge44" + ], + [ + 0, + 14, + "gauge44" + ], + [ + 1, + 5, + "gauge44" + ], + [ + 1, + 13, + "gauge44" + ], + [ + 2, + 4, + "gauge44" + ], + [ + 2, + 12, + "gauge44" + ], + [ + 3, + 3, + "gauge44" + ], + [ + 3, + 11, + "gauge44" + ], + [ + 4, + 2, + "gauge44" + ], + [ + 4, + 10, + "gauge44" + ], + [ + 5, + 1, + "gauge44" + ], + [ + 5, + 9, + "gauge44" + ], + [ + 0, + 7, + "gauge44" + ], + [ + 0, + 15, + "gauge44" + ], + [ + 6, + 0, + "gauge44" + ], + [ + 6, + 8, + "gauge44" + ], + [ + 1, + 6, + "gauge44" + ], + [ + 1, + 14, + "gauge44" + ], + [ + 2, + 5, + "gauge44" + ], + [ + 2, + 13, + "gauge44" + ], + [ + 3, + 4, + "gauge44" + ], + [ + 3, + 12, + "gauge44" + ], + [ + 4, + 3, + "gauge44" + ], + [ + 4, + 11, + "gauge44" + ], + [ + 5, + 2, + "gauge44" + ], + [ + 5, + 10, + "gauge44" + ], + [ + 6, + 1, + "gauge44" + ], + [ + 6, + 9, + "gauge44" + ], + [ + 1, + 7, + "gauge44" + ], + [ + 1, + 15, + "gauge44" + ], + [ + 7, + 0, + "gauge44" + ], + [ + 7, + 8, + "gauge44" + ], + [ + 2, + 6, + "gauge44" + ], + [ + 2, + 14, + "gauge44" + ], + [ + 3, + 5, + "gauge44" + ], + [ + 3, + 13, + "gauge44" + ], + [ + 4, + 4, + "gauge44" + ], + [ + 4, + 12, + "gauge44" + ], + [ + 5, + 3, + "gauge44" + ], + [ + 5, + 11, + "gauge44" + ], + [ + 6, + 2, + "gauge44" + ], + [ + 6, + 10, + "gauge44" + ], + [ + 7, + 1, + "gauge44" + ], + [ + 7, + 9, + "gauge44" + ], + [ + 2, + 7, + "gauge44" + ], + [ + 2, + 15, + "gauge44" + ], + [ + 8, + 0, + "gauge44" + ], + [ + 8, + 8, + "gauge44" + ], + [ + 3, + 6, + "gauge44" + ], + [ + 3, + 14, + "gauge44" + ], + [ + 4, + 5, + "gauge44" + ], + [ + 4, + 13, + "gauge44" + ], + [ + 5, + 4, + "gauge44" + ], + [ + 5, + 12, + "gauge44" + ], + [ + 6, + 3, + "gauge44" + ], + [ + 6, + 11, + "gauge44" + ], + [ + 7, + 2, + "gauge44" + ], + [ + 7, + 10, + "gauge44" + ], + [ + 8, + 1, + "gauge44" + ], + [ + 8, + 9, + "gauge44" + ], + [ + 3, + 7, + "gauge44" + ], + [ + 3, + 15, + "gauge44" + ], + [ + 4, + 6, + "gauge44" + ], + [ + 4, + 14, + "gauge44" + ], + [ + 5, + 5, + "gauge44" + ], + [ + 5, + 13, + "gauge44" + ], + [ + 6, + 4, + "gauge44" + ], + [ + 6, + 12, + "gauge44" + ], + [ + 7, + 3, + "gauge44" + ], + [ + 7, + 11, + "gauge44" + ], + [ + 8, + 2, + "gauge44" + ], + [ + 8, + 10, + "gauge44" + ], + [ + 4, + 7, + "gauge44" + ], + [ + 4, + 15, + "gauge44" + ], + [ + 5, + 6, + "gauge44" + ], + [ + 5, + 14, + "gauge44" + ], + [ + 6, + 5, + "gauge44" + ], + [ + 6, + 13, + "gauge44" + ], + [ + 7, + 4, + "gauge44" + ], + [ + 7, + 12, + "gauge44" + ], + [ + 8, + 3, + "gauge44" + ], + [ + 8, + 11, + "gauge44" + ], + [ + 5, + 7, + "gauge44" + ], + [ + 5, + 15, + "gauge44" + ], + [ + 6, + 6, + "gauge44" + ], + [ + 6, + 14, + "gauge44" + ], + [ + 7, + 5, + "gauge44" + ], + [ + 7, + 13, + "gauge44" + ], + [ + 8, + 4, + "gauge44" + ], + [ + 8, + 12, + "gauge44" + ], + [ + 6, + 7, + "gauge44" + ], + [ + 6, + 15, + "gauge44" + ], + [ + 7, + 6, + "gauge44" + ], + [ + 7, + 14, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 13, + "gauge44" + ], + [ + 7, + 7, + "gauge44" + ], + [ + 7, + 15, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 14, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ], + [ + 8, + 15, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 8 + ], + [ + 0, + 1 + ], + [ + 0, + 9 + ], + [ + 1, + 0 + ], + [ + 1, + 8 + ], + [ + 0, + 2 + ], + [ + 0, + 10 + ], + [ + 1, + 1 + ], + [ + 1, + 9 + ], + [ + 2, + 0 + ], + [ + 2, + 8 + ], + [ + 0, + 3 + ], + [ + 0, + 11 + ], + [ + 1, + 2 + ], + [ + 1, + 10 + ], + [ + 2, + 1 + ], + [ + 2, + 9 + ], + [ + 3, + 0 + ], + [ + 3, + 8 + ], + [ + 0, + 4 + ], + [ + 0, + 12 + ], + [ + 1, + 3 + ], + [ + 1, + 11 + ], + [ + 2, + 2 + ], + [ + 2, + 10 + ], + [ + 3, + 1 + ], + [ + 3, + 9 + ], + [ + 4, + 0 + ], + [ + 4, + 8 + ], + [ + 0, + 5 + ], + [ + 0, + 13 + ], + [ + 1, + 4 + ], + [ + 1, + 12 + ], + [ + 2, + 3 + ], + [ + 2, + 11 + ], + [ + 3, + 2 + ], + [ + 3, + 10 + ], + [ + 4, + 1 + ], + [ + 4, + 9 + ], + [ + 5, + 0 + ], + [ + 5, + 8 + ], + [ + 0, + 6 + ], + [ + 0, + 14 + ], + [ + 1, + 5 + ], + [ + 1, + 13 + ], + [ + 2, + 4 + ], + [ + 2, + 12 + ], + [ + 3, + 3 + ], + [ + 3, + 11 + ], + [ + 4, + 2 + ], + [ + 4, + 10 + ], + [ + 5, + 1 + ], + [ + 5, + 9 + ], + [ + 0, + 7 + ], + [ + 0, + 15 + ], + [ + 6, + 0 + ], + [ + 6, + 8 + ], + [ + 1, + 6 + ], + [ + 1, + 14 + ], + [ + 2, + 5 + ], + [ + 2, + 13 + ], + [ + 3, + 4 + ], + [ + 3, + 12 + ], + [ + 4, + 3 + ], + [ + 4, + 11 + ], + [ + 5, + 2 + ], + [ + 5, + 10 + ], + [ + 6, + 1 + ], + [ + 6, + 9 + ], + [ + 1, + 7 + ], + [ + 1, + 15 + ], + [ + 7, + 0 + ], + [ + 7, + 8 + ], + [ + 2, + 6 + ], + [ + 2, + 14 + ], + [ + 3, + 5 + ], + [ + 3, + 13 + ], + [ + 4, + 4 + ], + [ + 4, + 12 + ], + [ + 5, + 3 + ], + [ + 5, + 11 + ], + [ + 6, + 2 + ], + [ + 6, + 10 + ], + [ + 7, + 1 + ], + [ + 7, + 9 + ], + [ + 2, + 7 + ], + [ + 2, + 15 + ], + [ + 8, + 0 + ], + [ + 8, + 8 + ], + [ + 3, + 6 + ], + [ + 3, + 14 + ], + [ + 4, + 5 + ], + [ + 4, + 13 + ], + [ + 5, + 4 + ], + [ + 5, + 12 + ], + [ + 6, + 3 + ], + [ + 6, + 11 + ], + [ + 7, + 2 + ], + [ + 7, + 10 + ], + [ + 8, + 1 + ], + [ + 8, + 9 + ], + [ + 3, + 7 + ], + [ + 3, + 15 + ], + [ + 4, + 6 + ], + [ + 4, + 14 + ], + [ + 5, + 5 + ], + [ + 5, + 13 + ], + [ + 6, + 4 + ], + [ + 6, + 12 + ], + [ + 7, + 3 + ], + [ + 7, + 11 + ], + [ + 8, + 2 + ], + [ + 8, + 10 + ], + [ + 4, + 7 + ], + [ + 4, + 15 + ], + [ + 5, + 6 + ], + [ + 5, + 14 + ], + [ + 6, + 5 + ], + [ + 6, + 13 + ], + [ + 7, + 4 + ], + [ + 7, + 12 + ], + [ + 8, + 3 + ], + [ + 8, + 11 + ], + [ + 5, + 7 + ], + [ + 5, + 15 + ], + [ + 6, + 6 + ], + [ + 6, + 14 + ], + [ + 7, + 5 + ], + [ + 7, + 13 + ], + [ + 8, + 4 + ], + [ + 8, + 12 + ], + [ + 6, + 7 + ], + [ + 6, + 15 + ], + [ + 7, + 6 + ], + [ + 7, + 14 + ], + [ + 8, + 5 + ], + [ + 8, + 13 + ], + [ + 7, + 7 + ], + [ + 7, + 15 + ], + [ + 8, + 6 + ], + [ + 8, + 14 + ], + [ + 8, + 7 + ], + [ + 8, + 15 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2904, + "expected_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + }, + "entering": 192, + "entrance": 384, + "width_digest": "2f46ced8ca41be7698df26f2e95964def00331860bfb4032c16e1c1da380a991", + "program_hashes": { + "backward": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "forward": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19" + }, + "artifacts": { + "LOCAL-CHECKS.json": "3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "RESIDUAL-ADAPTERS.json": "8ecf500ad8646d642906275de20704e4248abccabf2e21af51fcdcbd7581c312" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387120, + "local_primitive_bound": 10039700351134, + "compiler": 25934336, + "children": 3498, + "paid_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "forward": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + } + }, + "semantic_phase_sha256": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "expected_local": { + "forward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "coefficient_work_primitive_count": 98333 + }, + "backward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98365 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "0.001636241501576388", + "hosted_residuals": 69120, + "rank_mass": 1041408, + "actual_73column_sigmas": 11079, + "cross_replica_helper_roles": 58308, + "idle_remainders": 7007, + "idle_remainder_profile": { + "1": 2088, + "24": 1, + "48": 4918 + }, + "global_profile": { + "1": 347112, + "2": 67680, + "3": 57600, + "4": 20448, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "live": 14336, + "physical": 14826, + "conservative_kappa_decimal": "0.001674622495021787", + "kappa_decimal": "0.001674622497877364", + "complex_lower": "1677431562510593854067/1000000000000000000000000", + "conservative_complex_lower": "1677431559645429414343/1000000000000000000000000", + "kappa": "418655624469341/250000000000000000", + "assembly_controls_rejected": 69, + "provider_counts": { + "gauge44": 144 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/UPSTREAM.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/UPSTREAM.json new file mode 100644 index 0000000000..ec665901b3 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/UPSTREAM.json @@ -0,0 +1,89 @@ +{ + "repository": "CrocSwap/integer-mult-bounds", + "pr": 1074, + "commit": "052afc128954f7b6a2b3c409eb4d72248e4020f2", + "root": "research/gauge44-slots-t16", + "files": { + "UPSTREAM-NOTICE.md": { + "sha256": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "git_blob": "ebc24a0168c65c48c771dcf4e89359afc418e848" + }, + "code/assemble.py": { + "sha256": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a", + "git_blob": "581dd9cb29a45bd68cc651538311b63f6966ad68" + }, + "code/assembly_controls.py": { + "sha256": "da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d", + "git_blob": "096ba9cdfe9b5188b54768b845161014c5fb9a76" + }, + "code/audit_allcold.py": { + "sha256": "1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc", + "git_blob": "923bf7b675ca09f4d2633e7e53f16a1b23b6d5bc" + }, + "code/bind_providers_portable.py": { + "sha256": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "git_blob": "97e28da17ed75cd4add54394f6178dba8c9b257f" + }, + "code/bit_supplier_controls.py": { + "sha256": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "git_blob": "e86b8527b464277a926a788f2493e8f2e091fff1" + }, + "code/emit_allcold.py": { + "sha256": "354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e", + "git_blob": "28a08a79da911d8f0e16f4bf8df47c580fb6b255" + }, + "code/freeze_spec.py": { + "sha256": "5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2", + "git_blob": "4fe3b8891565ce658f6c05a4f4e8c15751103b85" + }, + "code/generated_identity.py": { + "sha256": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "git_blob": "74a9b604793f21a9f064c78874341e287ded7a68" + }, + "code/invoice_allcold.py": { + "sha256": "71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8", + "git_blob": "d1dd2212917ad1e7f099287a141f741fd52bdcf6" + }, + "code/prepare_global.py": { + "sha256": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "git_blob": "655c9470f666138918afbaff077ad2ec5663c6bd" + }, + "code/restore_parent.py": { + "sha256": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "git_blob": "21135f898a43e35b55e522c2d0b81a5e32033097" + }, + "code/witness.py": { + "sha256": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "git_blob": "c5c7fbc1142220ce854907de4e439420ac12d30c" + }, + "construction/leaver/PIVOT-SWAP-k8.json": { + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "git_blob": "7a8edeb1e404c441577427e72557e26b06c945f1" + }, + "data/UPSTREAM-PINS.json": { + "sha256": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "git_blob": "68486b84e3ae599d776b9613adc901fd8874718d" + }, + "inputs/PR589-EXPECTED.json": { + "sha256": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "git_blob": "e293ddc557742637f9f679f083a1a282d87b1b13" + }, + "t16/build_parent.py": { + "sha256": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "git_blob": "bd9e28bd2dc091dcec90a09fa3e556c71579e528" + }, + "t16/indep16.py": { + "sha256": "1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7", + "git_blob": "81e1e9fe1554c38865e9d149fb8f4196aad91b4a" + }, + "t16/lift16.py": { + "sha256": "072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689", + "git_blob": "613c4bdb3c8ab9cb5f069a52488a673e3ce77702" + }, + "verify_t16.py": { + "sha256": "050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46", + "git_blob": "4794150c4cf96cf1c445e2650800e636809fa06c" + } + }, + "scope": "Only consumed controller and admission sources retained; every file is byte-identical to its upstream Git blob." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/ALIASES-REFRAMED.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/ALIASES-REFRAMED.json new file mode 100644 index 0000000000..29084e93cd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/ALIASES-REFRAMED.json @@ -0,0 +1,1372 @@ +[ + { + "B": 458, + "target": 114, + "helper": 349, + "source": 346, + "coefficient": "1", + "frame": [ + 390, + 96, + 19, + 13 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 113))" + }, + { + "B": 462, + "target": 117, + "helper": 345, + "source": 341, + "coefficient": "-1/2", + "frame": [ + 390, + 96, + 19, + 13 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 117))" + }, + { + "B": 467, + "target": 122, + "helper": 285, + "source": 282, + "coefficient": "1", + "frame": [ + 388, + 96, + 24, + 2 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 121))" + }, + { + "B": 471, + "target": 125, + "helper": 281, + "source": 277, + "coefficient": "-1/2", + "frame": [ + 388, + 96, + 24, + 2 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 125))" + }, + { + "B": 476, + "target": 146, + "helper": 301, + "source": 298, + "coefficient": "1", + "frame": [ + 290, + 162, + 102, + 24 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 145))" + }, + { + "B": 480, + "target": 149, + "helper": 297, + "source": 293, + "coefficient": "-1/2", + "frame": [ + 290, + 162, + 102, + 24 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 149))" + }, + { + "B": 485, + "target": 154, + "helper": 365, + "source": 362, + "coefficient": "1", + "frame": [ + 301, + 173, + 102, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 153))" + }, + { + "B": 489, + "target": 157, + "helper": 361, + "source": 357, + "coefficient": "-1/2", + "frame": [ + 301, + 173, + 102, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 157))" + }, + { + "B": 494, + "target": 178, + "helper": 317, + "source": 314, + "coefficient": "1", + "frame": [ + 390, + 74, + 44, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 161))" + }, + { + "B": 498, + "target": 181, + "helper": 313, + "source": 309, + "coefficient": "-1/2", + "frame": [ + 390, + 74, + 44, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 169))" + }, + { + "B": 503, + "target": 186, + "helper": 381, + "source": 378, + "coefficient": "1", + "frame": [ + 390, + 67, + 37, + 24 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 162))" + }, + { + "B": 507, + "target": 189, + "helper": 377, + "source": 373, + "coefficient": "-1/2", + "frame": [ + 390, + 67, + 37, + 24 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 169))" + }, + { + "B": 512, + "target": 210, + "helper": 397, + "source": 394, + "coefficient": "1", + "frame": [ + 259, + 131, + 96, + 24 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 161))" + }, + { + "B": 515, + "target": 213, + "helper": 393, + "source": 389, + "coefficient": "-1/2", + "frame": [ + 259, + 131, + 96, + 24 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 169))" + }, + { + "B": 520, + "target": 218, + "helper": 333, + "source": 330, + "coefficient": "1", + "frame": [ + 266, + 138, + 96, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 162))" + }, + { + "B": 524, + "target": 221, + "helper": 329, + "source": 325, + "coefficient": "-1/2", + "frame": [ + 266, + 138, + 96, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 169))" + }, + { + "B": 612, + "target": 130, + "helper": 269, + "source": 266, + "coefficient": "1", + "frame": [ + 400, + 96, + 8, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 129))" + }, + { + "B": 613, + "target": 194, + "helper": 445, + "source": 442, + "coefficient": "1", + "frame": [ + 289, + 161, + 24, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 193))" + }, + { + "B": 615, + "target": 162, + "helper": 429, + "source": 426, + "coefficient": "1", + "frame": [ + 408, + 73, + 49, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 133))" + }, + { + "B": 627, + "target": 130, + "helper": 445, + "source": 442, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 129))" + }, + { + "B": 628, + "target": 194, + "helper": 429, + "source": 426, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 193))" + }, + { + "B": 630, + "target": 162, + "helper": 269, + "source": 266, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 161))" + }, + { + "B": 632, + "target": 173, + "helper": 233, + "source": 229, + "coefficient": "-1/2", + "frame": [ + 448, + 32, + 24, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 132))" + }, + { + "B": 635, + "target": 141, + "helper": 265, + "source": 261, + "coefficient": "-1/2", + "frame": [ + 400, + 96, + 8, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 133))" + }, + { + "B": 637, + "target": 133, + "helper": 249, + "source": 245, + "coefficient": "-1/2", + "frame": [ + 296, + 168, + 120, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 133))" + }, + { + "B": 654, + "target": 170, + "helper": 237, + "source": 234, + "coefficient": "1", + "frame": [ + 448, + 32, + 24, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 169))" + }, + { + "B": 656, + "target": 205, + "helper": 425, + "source": 421, + "coefficient": "-1/2", + "frame": [ + 408, + 73, + 49, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 197))" + }, + { + "B": 658, + "target": 197, + "helper": 409, + "source": 405, + "coefficient": "-1/2", + "frame": [ + 265, + 137, + 96, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 169))" + }, + { + "B": 672, + "target": 196, + "helper": 237, + "source": 234, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 196))" + }, + { + "B": 675, + "target": 138, + "helper": 253, + "source": 250, + "coefficient": "1", + "frame": [ + 296, + 168, + 120, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 137))" + }, + { + "B": 677, + "target": 206, + "helper": 441, + "source": 437, + "coefficient": "-1/2", + "frame": [ + 289, + 161, + 24, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 165))" + }, + { + "B": 678, + "target": 164, + "helper": 413, + "source": 410, + "coefficient": "1", + "frame": [ + 265, + 137, + 96, + 6 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 141))" + }, + { + "B": 691, + "target": 202, + "helper": 413, + "source": 410, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 201))" + }, + { + "B": 693, + "target": 164, + "helper": 253, + "source": 250, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 164))" + }, + { + "B": 914, + "target": 178, + "helper": 530, + "source": 2, + "coefficient": "1", + "frame": [ + 395, + 76, + 33, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 181))" + }, + { + "B": 915, + "target": 182, + "helper": 586, + "source": 438, + "coefficient": "-1/2", + "frame": [ + 289, + 161, + 74, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 177))" + }, + { + "B": 919, + "target": 218, + "helper": 542, + "source": 42, + "coefficient": "1", + "frame": [ + 268, + 203, + 33, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 221))" + }, + { + "B": 920, + "target": 222, + "helper": 588, + "source": 440, + "coefficient": "1", + "frame": [ + 266, + 140, + 45, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 217))" + }, + { + "B": 921, + "target": 219, + "helper": 543, + "source": 367, + "coefficient": "1", + "frame": [ + 331, + 140, + 33, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 220))" + }, + { + "B": 922, + "target": 223, + "helper": 589, + "source": 54, + "coefficient": "1", + "frame": [ + 268, + 138, + 45, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 216))" + }, + { + "B": 925, + "target": 114, + "helper": 506, + "source": 66, + "coefficient": "1", + "frame": [ + 397, + 74, + 39, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 117))" + }, + { + "B": 926, + "target": 118, + "helper": 438, + "source": 586, + "coefficient": "-1/2", + "frame": [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 113))" + }, + { + "B": 930, + "target": 154, + "helper": 518, + "source": 106, + "coefficient": "1", + "frame": [ + 266, + 205, + 39, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 157))" + }, + { + "B": 931, + "target": 158, + "helper": 440, + "source": 588, + "coefficient": "1", + "frame": [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 153))" + }, + { + "B": 932, + "target": 155, + "helper": 519, + "source": 335, + "coefficient": "1", + "frame": [ + 333, + 138, + 39, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 156))" + }, + { + "B": 1167, + "target": 125, + "helper": 448, + "source": 231, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 125))" + }, + { + "B": 1169, + "target": 121, + "helper": 449, + "source": 226, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 121))" + }, + { + "B": 1170, + "target": 122, + "helper": 584, + "source": 439, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 121))" + }, + { + "B": 1172, + "target": 123, + "helper": 585, + "source": 434, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 120))" + }, + { + "B": 1175, + "target": 149, + "helper": 231, + "source": 448, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 149))" + }, + { + "B": 1177, + "target": 145, + "helper": 226, + "source": 449, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 145))" + }, + { + "B": 1178, + "target": 146, + "helper": 590, + "source": 444, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 145))" + }, + { + "B": 1180, + "target": 147, + "helper": 591, + "source": 446, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 144))" + }, + { + "B": 1183, + "target": 181, + "helper": 450, + "source": 230, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 181))" + }, + { + "B": 1185, + "target": 177, + "helper": 451, + "source": 228, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 177))" + }, + { + "B": 1186, + "target": 178, + "helper": 438, + "source": 586, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 113))" + }, + { + "B": 1188, + "target": 179, + "helper": 587, + "source": 436, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 112))" + }, + { + "B": 1191, + "target": 221, + "helper": 230, + "source": 450, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 221))" + }, + { + "B": 1193, + "target": 217, + "helper": 228, + "source": 451, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 217))" + }, + { + "B": 1194, + "target": 218, + "helper": 440, + "source": 588, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 153))" + }, + { + "B": 1197, + "target": 223, + "helper": 367, + "source": 543, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 220))" + }, + { + "B": 1199, + "target": 117, + "helper": 452, + "source": 232, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 117))" + }, + { + "B": 1201, + "target": 113, + "helper": 453, + "source": 62, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 113))" + }, + { + "B": 1202, + "target": 114, + "helper": 586, + "source": 438, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 113))" + }, + { + "B": 1204, + "target": 115, + "helper": 436, + "source": 587, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 112))" + }, + { + "B": 1207, + "target": 157, + "helper": 232, + "source": 452, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 157))" + }, + { + "B": 1210, + "target": 154, + "helper": 588, + "source": 440, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 153))" + }, + { + "B": 1212, + "target": 155, + "helper": 589, + "source": 54, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 152))" + }, + { + "B": 1215, + "target": 189, + "helper": 454, + "source": 236, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 189))" + }, + { + "B": 1217, + "target": 185, + "helper": 455, + "source": 238, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 185))" + }, + { + "B": 1218, + "target": 186, + "helper": 439, + "source": 584, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 185))" + }, + { + "B": 1220, + "target": 187, + "helper": 434, + "source": 585, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 184))" + }, + { + "B": 1223, + "target": 213, + "helper": 236, + "source": 454, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 213))" + }, + { + "B": 1225, + "target": 209, + "helper": 238, + "source": 455, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 209))" + }, + { + "B": 1226, + "target": 210, + "helper": 444, + "source": 590, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 209))" + }, + { + "B": 1228, + "target": 211, + "helper": 446, + "source": 591, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 208))" + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/BANK-STAGES.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/BANK-STAGES.json new file mode 100644 index 0000000000..4ab6d8ca45 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/BANK-STAGES.json @@ -0,0 +1,96 @@ +[ + { + "pairs": 2, + "stages": 5, + "m": 41, + "bank_count_relaxed": 268.92857142857144, + "complex_relaxed": 0.0014394300212592754, + "kappa_relaxed": 0.0014373610406260098, + "profile": { + "1": 11995.0, + "2": 2350, + "3": 2000, + "4": 710, + "5": 662.5, + "6": 16.428571428571427, + "8": 40 + }, + "status": "FLOATING_RELAXATION_NOT_A_SUPPLIER" + }, + { + "pairs": 3, + "stages": 7, + "m": 57, + "bank_count_relaxed": 21.666666666666682, + "complex_relaxed": 0.0016663819200714294, + "kappa_relaxed": 0.0016636097109270851, + "profile": { + "1": 16976.0, + "2": 3290, + "3": 2821.6666666666665, + "4": 994, + "5": 574, + "8": 56 + }, + "status": "FLOATING_RELAXATION_NOT_A_SUPPLIER" + }, + { + "pairs": 4, + "stages": 9, + "m": 73, + "bank_count_relaxed": 0.0, + "complex_relaxed": 0.0016774393074369706, + "kappa_relaxed": 0.0016746302168857447, + "profile": { + "1": 21694.54054054054, + "2": 4230, + "3": 3600, + "4": 1278, + "5": 738, + "8": 72, + "48": 307.40540540540565 + }, + "status": "FLOATING_RELAXATION_NOT_A_SUPPLIER" + }, + { + "pairs": 5, + "stages": 11, + "m": 89, + "bank_count_relaxed": 0.0, + "complex_relaxed": 0.0016282337185926706, + "kappa_relaxed": 0.0016255868832169148, + "profile": { + "1": 26429.5, + "2": 5170, + "3": 4400, + "4": 1562, + "5": 902, + "8": 88, + "48": 240.0, + "55": 113.5, + "60": 334.5 + }, + "status": "FLOATING_RELAXATION_NOT_A_SUPPLIER" + }, + { + "pairs": 6, + "stages": 13, + "m": 105, + "bank_count_relaxed": 0.0, + "complex_relaxed": 0.001577772183759176, + "kappa_relaxed": 0.0015752867401591082, + "profile": { + "1": 31180.0, + "2": 6110, + "3": 5200, + "4": 1846, + "5": 1066, + "8": 104, + "48": 150.54545454545456, + "64": 448.0, + "71": 270.0909090909091, + "73": 177.90909090909088 + }, + "status": "FLOATING_RELAXATION_NOT_A_SUPPLIER" + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/FINAL-SEARCH.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/FINAL-SEARCH.json new file mode 100644 index 0000000000..aacb21f3eb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/FINAL-SEARCH.json @@ -0,0 +1,2164 @@ +{ + "seed": 277, + "cost": 108024.15161883351, + "idle": { + "1": 2088, + "24": 1, + "48": 4918 + }, + "trace": [ + { + "iteration": 0, + "calls": [ + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ], + "cost": 109514.96633149675, + "gain": 502.70753702630464, + "accepted": true, + "solver_status": 0, + "groups": 339, + "columns": 2749, + "pricing": [ + { + "round": 0, + "columns": 2748, + "added": 4, + "min_reduced_cost": -9.627105051047874, + "lp_gain": 401.1967707269796 + }, + { + "round": 1, + "columns": 2749, + "added": 1, + "min_reduced_cost": -5.0419853788765145, + "lp_gain": 456.8728029094782 + }, + { + "round": 2, + "columns": 2749, + "added": 0, + "min_reduced_cost": -2.0605739337042905e-13, + "lp_gain": 512.3346420776361 + } + ], + "seconds": 1.987389333982719 + }, + { + "iteration": 1, + "calls": [ + 3, + 7, + 11, + 15, + 17, + 20, + 28, + 29, + 30, + 33, + 37, + 38, + 41, + 42, + 45, + 46, + 52, + 56, + 58, + 61, + 68, + 71, + 73, + 75, + 77, + 78, + 79, + 81, + 82, + 84, + 89, + 92, + 99, + 101, + 102, + 103, + 104, + 110, + 112, + 113, + 118, + 124, + 133, + 138, + 139, + 140, + 142, + 143 + ], + "cost": 109188.01802227236, + "gain": 326.94830922438996, + "accepted": true, + "solver_status": 0, + "groups": 691, + "columns": 3057, + "pricing": [ + { + "round": 0, + "columns": 2632, + "added": 512, + "min_reduced_cost": -24.11080731475812, + "lp_gain": 38.55405993151362 + }, + { + "round": 1, + "columns": 2646, + "added": 14, + "min_reduced_cost": -7.858181773362283, + "lp_gain": 149.72335526332608 + }, + { + "round": 2, + "columns": 2671, + "added": 25, + "min_reduced_cost": -12.77511894025178, + "lp_gain": 180.24602587867412 + }, + { + "round": 3, + "columns": 2709, + "added": 38, + "min_reduced_cost": -4.3448586639749465, + "lp_gain": 249.7637645022187 + }, + { + "round": 4, + "columns": 2759, + "added": 50, + "min_reduced_cost": -3.2586439979812116, + "lp_gain": 289.9537071439845 + }, + { + "round": 5, + "columns": 3056, + "added": 297, + "min_reduced_cost": -14.833468108627292, + "lp_gain": 320.8846215462254 + }, + { + "round": 6, + "columns": 3057, + "added": 1, + "min_reduced_cost": -6.517287995962416, + "lp_gain": 338.83336711351876 + }, + { + "round": 7, + "columns": 3057, + "added": 0, + "min_reduced_cost": -1.865174681370263e-13, + "lp_gain": 338.83336711357697 + } + ], + "seconds": 2.9913574579986744 + }, + { + "iteration": 2, + "calls": [ + 3, + 7, + 9, + 11, + 16, + 20, + 22, + 23, + 25, + 26, + 31, + 32, + 34, + 41, + 45, + 46, + 52, + 53, + 54, + 55, + 59, + 60, + 63, + 71, + 78, + 80, + 82, + 84, + 89, + 90, + 93, + 94, + 96, + 102, + 107, + 108, + 109, + 110, + 111, + 114, + 118, + 122, + 123, + 124, + 125, + 131, + 134, + 137 + ], + "cost": 109107.93365140895, + "gain": 80.08437086340564, + "accepted": true, + "solver_status": 0, + "groups": 711, + "columns": 2684, + "pricing": [ + { + "round": 0, + "columns": 2670, + "added": 200, + "min_reduced_cost": -16.343675823353212, + "lp_gain": 45.95345807008562 + }, + { + "round": 1, + "columns": 2684, + "added": 14, + "min_reduced_cost": -13.525408212173444, + "lp_gain": 59.78221760308952 + }, + { + "round": 2, + "columns": 2684, + "added": 0, + "min_reduced_cost": -7.105427357601002e-14, + "lp_gain": 86.60165885897004 + } + ], + "seconds": 1.1246878750098404 + }, + { + "iteration": 3, + "calls": [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ], + "cost": 109107.56981321909, + "gain": 0.36383818986359984, + "accepted": true, + "solver_status": 0, + "groups": 267, + "columns": 1856, + "pricing": [ + { + "round": 0, + "columns": 1434, + "added": 16, + "min_reduced_cost": -13.288428129620517, + "lp_gain": 8.50327841496619 + }, + { + "round": 1, + "columns": 1603, + "added": 169, + "min_reduced_cost": -7.7654652930222525, + "lp_gain": 8.50327841496619 + }, + { + "round": 2, + "columns": 1856, + "added": 253, + "min_reduced_cost": -15.125956136629558, + "lp_gain": 8.50327841496619 + }, + { + "round": 3, + "columns": 1856, + "added": 0, + "min_reduced_cost": -1.900701818158268e-13, + "lp_gain": 8.503278415111708 + } + ], + "seconds": 1.6843078329984564 + }, + { + "iteration": 4, + "calls": [ + 5, + 9, + 14, + 20, + 21, + 26, + 27, + 30, + 33, + 34, + 35, + 38, + 42, + 43, + 49, + 53, + 55, + 57, + 62, + 63, + 65, + 66, + 67, + 69, + 70, + 72, + 75, + 77, + 82, + 98, + 99, + 101, + 103, + 104, + 105, + 110, + 111, + 114, + 115, + 118, + 122, + 123, + 124, + 128, + 129, + 131, + 135, + 137 + ], + "cost": 109072.3514746864, + "gain": 35.21833853269345, + "accepted": true, + "solver_status": 1, + "groups": 683, + "columns": 3299, + "pricing": [ + { + "round": 0, + "columns": 2788, + "added": 662, + "min_reduced_cost": -24.83531730364816, + "lp_gain": 48.743746745356475 + }, + { + "round": 1, + "columns": 2836, + "added": 48, + "min_reduced_cost": -14.589199321360242, + "lp_gain": 48.74374674547289 + }, + { + "round": 2, + "columns": 3296, + "added": 460, + "min_reduced_cost": -25.20992689438217, + "lp_gain": 48.74374674529827 + }, + { + "round": 3, + "columns": 3299, + "added": 3, + "min_reduced_cost": -5.041985378876442, + "lp_gain": 48.74374674524006 + }, + { + "round": 4, + "columns": 3299, + "added": 0, + "min_reduced_cost": -2.4868995751603507e-14, + "lp_gain": 48.74374674564751 + } + ], + "seconds": 9.398202333017252 + }, + { + "iteration": 5, + "calls": [ + 5, + 6, + 8, + 12, + 15, + 16, + 19, + 20, + 21, + 22, + 23, + 27, + 32, + 33, + 37, + 38, + 39, + 42, + 53, + 56, + 58, + 60, + 61, + 64, + 67, + 70, + 78, + 80, + 84, + 91, + 96, + 98, + 100, + 103, + 105, + 107, + 109, + 115, + 119, + 123, + 124, + 126, + 127, + 128, + 130, + 134, + 137, + 143 + ], + "cost": 108909.67600733017, + "gain": 162.67546735622454, + "accepted": true, + "solver_status": 0, + "groups": 721, + "columns": 2892, + "pricing": [ + { + "round": 0, + "columns": 2640, + "added": 445, + "min_reduced_cost": -16.7823123314688, + "lp_gain": 13.525408212779439 + }, + { + "round": 1, + "columns": 2649, + "added": 9, + "min_reduced_cost": -13.525408212173431, + "lp_gain": 121.80355893155502 + }, + { + "round": 2, + "columns": 2892, + "added": 243, + "min_reduced_cost": -14.684523290035195, + "lp_gain": 175.94263429129205 + }, + { + "round": 3, + "columns": 2892, + "added": 0, + "min_reduced_cost": -2.842170943040401e-14, + "lp_gain": 175.9426342908264 + } + ], + "seconds": 2.238119208981516 + }, + { + "iteration": 6, + "calls": [ + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ], + "cost": 108909.67600733017, + "gain": 0.0, + "accepted": false, + "solver_status": 0, + "groups": 333, + "columns": 1579, + "pricing": [ + { + "round": 0, + "columns": 1577, + "added": 93, + "min_reduced_cost": -4.195578082867497, + "lp_gain": 4.3655745685100555e-11 + }, + { + "round": 1, + "columns": 1579, + "added": 2, + "min_reduced_cost": -13.52540821217345, + "lp_gain": -2.1827872842550278e-10 + }, + { + "round": 2, + "columns": 1579, + "added": 0, + "min_reduced_cost": -1.1191048088221578e-13, + "lp_gain": -1.4551915228366852e-11 + } + ], + "seconds": 0.9461887079814915 + }, + { + "iteration": 7, + "calls": [ + 6, + 8, + 10, + 15, + 17, + 18, + 21, + 23, + 24, + 26, + 28, + 34, + 36, + 37, + 42, + 45, + 48, + 49, + 53, + 55, + 57, + 63, + 66, + 68, + 71, + 75, + 83, + 85, + 92, + 94, + 96, + 97, + 99, + 102, + 103, + 108, + 109, + 112, + 114, + 117, + 118, + 122, + 124, + 127, + 132, + 135, + 136, + 143 + ], + "cost": 108909.67600733017, + "gain": 0.0, + "accepted": false, + "solver_status": 0, + "groups": 660, + "columns": 2666, + "pricing": [ + { + "round": 0, + "columns": 2616, + "added": 405, + "min_reduced_cost": -19.903690136425013, + "lp_gain": 13.267166934427223 + }, + { + "round": 1, + "columns": 2659, + "added": 43, + "min_reduced_cost": -13.525408212173438, + "lp_gain": 13.267166934718261 + }, + { + "round": 2, + "columns": 2664, + "added": 5, + "min_reduced_cost": -13.525408212173433, + "lp_gain": 13.267166934427223 + }, + { + "round": 3, + "columns": 2666, + "added": 2, + "min_reduced_cost": -13.525408212173435, + "lp_gain": 13.267166934369016 + }, + { + "round": 4, + "columns": 2666, + "added": 0, + "min_reduced_cost": -7.105427357601002e-14, + "lp_gain": 13.267166934427223 + } + ], + "seconds": 2.210382708988618 + }, + { + "iteration": 8, + "calls": [ + 3, + 4, + 5, + 11, + 12, + 20, + 21, + 22, + 23, + 24, + 27, + 28, + 31, + 32, + 34, + 35, + 40, + 42, + 50, + 54, + 55, + 65, + 68, + 72, + 75, + 79, + 80, + 85, + 87, + 95, + 96, + 101, + 105, + 106, + 110, + 114, + 115, + 116, + 117, + 119, + 120, + 123, + 124, + 132, + 133, + 135, + 140, + 141 + ], + "cost": 108618.68466162965, + "gain": 290.99134570051683, + "accepted": true, + "solver_status": 0, + "groups": 685, + "columns": 3516, + "pricing": [ + { + "round": 0, + "columns": 3019, + "added": 728, + "min_reduced_cost": -28.986471900815822, + "lp_gain": 13.267166934951092 + }, + { + "round": 1, + "columns": 3081, + "added": 62, + "min_reduced_cost": -13.525408212173426, + "lp_gain": 53.48123126428982 + }, + { + "round": 2, + "columns": 3275, + "added": 194, + "min_reduced_cost": -25.400058544489546, + "lp_gain": 214.48406368760334 + }, + { + "round": 3, + "columns": 3297, + "added": 22, + "min_reduced_cost": -5.041985378876435, + "lp_gain": 232.675385583585 + }, + { + "round": 4, + "columns": 3302, + "added": 5, + "min_reduced_cost": -0.3347048556497594, + "lp_gain": 291.99546026792086 + }, + { + "round": 5, + "columns": 3513, + "added": 211, + "min_reduced_cost": -1.5979457624569235, + "lp_gain": 292.18980502295017 + }, + { + "round": 6, + "columns": 3516, + "added": 3, + "min_reduced_cost": -0.3347048556497594, + "lp_gain": 295.3425088242366 + }, + { + "round": 7, + "columns": 3516, + "added": 0, + "min_reduced_cost": -1.2434497875801753e-14, + "lp_gain": 296.0119185359654 + } + ], + "seconds": 3.3724999999976717 + }, + { + "iteration": 9, + "calls": [ + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ], + "cost": 108618.68466162965, + "gain": 0.0, + "accepted": false, + "solver_status": 1, + "groups": 272, + "columns": 1840, + "pricing": [ + { + "round": 0, + "columns": 1840, + "added": 1, + "min_reduced_cost": -5.041985378876655, + "lp_gain": 5.041985379226389 + }, + { + "round": 1, + "columns": 1840, + "added": 0, + "min_reduced_cost": -2.291500322826323e-13, + "lp_gain": 10.083970758059877 + } + ], + "seconds": 8.576243000017712 + }, + { + "iteration": 10, + "calls": [ + 0, + 1, + 2, + 4, + 8, + 9, + 12, + 16, + 17, + 18, + 32, + 35, + 38, + 44, + 45, + 49, + 51, + 52, + 57, + 58, + 64, + 66, + 69, + 72, + 74, + 75, + 76, + 77, + 79, + 81, + 82, + 85, + 88, + 89, + 94, + 98, + 99, + 107, + 110, + 112, + 113, + 117, + 130, + 131, + 137, + 139, + 140, + 143 + ], + "cost": 108062.2445079022, + "gain": 556.4401537274534, + "accepted": true, + "solver_status": 0, + "groups": 662, + "columns": 3153, + "pricing": [ + { + "round": 0, + "columns": 2605, + "added": 507, + "min_reduced_cost": -22.90170985010024, + "lp_gain": 59.96000737672148 + }, + { + "round": 1, + "columns": 2772, + "added": 167, + "min_reduced_cost": -11.512533970690628, + "lp_gain": 238.4662523369625 + }, + { + "round": 2, + "columns": 2798, + "added": 26, + "min_reduced_cost": -4.84629446894062, + "lp_gain": 312.9144068944006 + }, + { + "round": 3, + "columns": 3019, + "added": 221, + "min_reduced_cost": -14.629365355704824, + "lp_gain": 379.1151218018931 + }, + { + "round": 4, + "columns": 3032, + "added": 13, + "min_reduced_cost": -2.255794806645431, + "lp_gain": 519.5236277837976 + }, + { + "round": 5, + "columns": 3047, + "added": 15, + "min_reduced_cost": -4.344237185466014, + "lp_gain": 537.067928953431 + }, + { + "round": 6, + "columns": 3048, + "added": 1, + "min_reduced_cost": -3.6464889920555397, + "lp_gain": 558.7891148807685 + }, + { + "round": 7, + "columns": 3101, + "added": 53, + "min_reduced_cost": -1.2788634379720865, + "lp_gain": 562.6775510102016 + }, + { + "round": 8, + "columns": 3153, + "added": 52, + "min_reduced_cost": -0.6394317189860566, + "lp_gain": 568.432436480638 + }, + { + "round": 9, + "columns": 3153, + "added": 0, + "min_reduced_cost": -1.616484723854228e-13, + "lp_gain": 569.7285818573291 + } + ], + "seconds": 3.3668199999956414 + }, + { + "iteration": 11, + "calls": [ + 2, + 5, + 7, + 10, + 17, + 21, + 23, + 25, + 27, + 32, + 33, + 37, + 38, + 39, + 43, + 44, + 49, + 51, + 52, + 54, + 56, + 57, + 59, + 60, + 64, + 74, + 80, + 81, + 84, + 91, + 94, + 97, + 98, + 102, + 103, + 111, + 112, + 114, + 115, + 116, + 117, + 121, + 125, + 129, + 133, + 135, + 139, + 143 + ], + "cost": 108056.19332575823, + "gain": 6.051182143972255, + "accepted": true, + "solver_status": 0, + "groups": 679, + "columns": 2746, + "pricing": [ + { + "round": 0, + "columns": 2715, + "added": 551, + "min_reduced_cost": -34.840461057728206, + "lp_gain": 18.330413508592756 + }, + { + "round": 1, + "columns": 2746, + "added": 31, + "min_reduced_cost": -13.525408212173435, + "lp_gain": 18.33041350870917 + }, + { + "round": 2, + "columns": 2746, + "added": 0, + "min_reduced_cost": -1.5987211554602254e-14, + "lp_gain": 21.976902500449796 + } + ], + "seconds": 3.166471041011391 + }, + { + "iteration": 12, + "calls": [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ], + "cost": 108056.19332575823, + "gain": 0.0, + "accepted": false, + "solver_status": 1, + "groups": 332, + "columns": 1780, + "pricing": [ + { + "round": 0, + "columns": 1778, + "added": 160, + "min_reduced_cost": -9.678449837779466, + "lp_gain": 15.925720356448437 + }, + { + "round": 1, + "columns": 1780, + "added": 2, + "min_reduced_cost": -13.525408212173431, + "lp_gain": 15.925720356448437 + }, + { + "round": 2, + "columns": 1780, + "added": 0, + "min_reduced_cost": -1.0480505352461478e-13, + "lp_gain": 15.925720356535749 + } + ], + "seconds": 8.754138249991229 + }, + { + "iteration": 13, + "calls": [ + 0, + 3, + 7, + 9, + 10, + 13, + 14, + 15, + 17, + 23, + 25, + 26, + 29, + 30, + 32, + 33, + 34, + 37, + 39, + 40, + 41, + 45, + 46, + 50, + 51, + 52, + 56, + 59, + 60, + 67, + 74, + 79, + 85, + 87, + 89, + 94, + 96, + 109, + 115, + 116, + 118, + 124, + 125, + 132, + 134, + 136, + 140, + 142 + ], + "cost": 108040.57538802078, + "gain": 15.61793773745012, + "accepted": true, + "solver_status": 0, + "groups": 658, + "columns": 2593, + "pricing": [ + { + "round": 0, + "columns": 2527, + "added": 421, + "min_reduced_cost": -15.40611163457284, + "lp_gain": 15.925720356535749 + }, + { + "round": 1, + "columns": 2593, + "added": 66, + "min_reduced_cost": -13.525408212173428, + "lp_gain": 15.925720356943202 + }, + { + "round": 2, + "columns": 2593, + "added": 0, + "min_reduced_cost": -5.3290705182007514e-14, + "lp_gain": 31.051676493443665 + } + ], + "seconds": 3.766910624981392 + }, + { + "iteration": 14, + "calls": [ + 7, + 12, + 20, + 30, + 34, + 38, + 39, + 40, + 42, + 43, + 44, + 51, + 54, + 55, + 56, + 59, + 63, + 64, + 66, + 67, + 71, + 73, + 77, + 79, + 85, + 87, + 89, + 92, + 95, + 97, + 98, + 99, + 101, + 102, + 104, + 106, + 107, + 112, + 113, + 118, + 120, + 122, + 126, + 127, + 128, + 129, + 138, + 141 + ], + "cost": 108028.32484544169, + "gain": 12.250542579087778, + "accepted": true, + "solver_status": 0, + "groups": 657, + "columns": 2509, + "pricing": [ + { + "round": 0, + "columns": 2501, + "added": 338, + "min_reduced_cost": -19.818775336474232, + "lp_gain": 13.349518016155344 + }, + { + "round": 1, + "columns": 2509, + "added": 8, + "min_reduced_cost": -7.031571705534217, + "lp_gain": 25.51770951342769 + }, + { + "round": 2, + "columns": 2509, + "added": 0, + "min_reduced_cost": -1.9539925233402755e-14, + "lp_gain": 25.51770951342769 + } + ], + "seconds": 1.3454809590184595 + }, + { + "iteration": 15, + "calls": [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69 + ], + "cost": 108028.32484544169, + "gain": 0.0, + "accepted": false, + "solver_status": 0, + "groups": 277, + "columns": 1423, + "pricing": [ + { + "round": 0, + "columns": 1423, + "added": 4, + "min_reduced_cost": -9.627105051047781, + "lp_gain": 3.640061883299495 + }, + { + "round": 1, + "columns": 1423, + "added": 0, + "min_reduced_cost": -7.638334409421077e-14, + "lp_gain": 13.267166934427223 + } + ], + "seconds": 0.6548377909930423 + }, + { + "iteration": 16, + "calls": [ + 0, + 3, + 11, + 12, + 18, + 21, + 24, + 25, + 27, + 28, + 31, + 34, + 35, + 38, + 41, + 42, + 45, + 48, + 49, + 51, + 52, + 55, + 59, + 65, + 66, + 71, + 75, + 76, + 77, + 78, + 79, + 85, + 94, + 99, + 100, + 102, + 106, + 110, + 113, + 117, + 118, + 121, + 123, + 124, + 125, + 129, + 133, + 134 + ], + "cost": 108028.32484544169, + "gain": 0.0, + "accepted": false, + "solver_status": 0, + "groups": 638, + "columns": 2890, + "pricing": [ + { + "round": 0, + "columns": 2614, + "added": 556, + "min_reduced_cost": -20.131483118326756, + "lp_gain": 13.267166934805573 + }, + { + "round": 1, + "columns": 2878, + "added": 264, + "min_reduced_cost": -16.444161137918545, + "lp_gain": 13.26716693463095 + }, + { + "round": 2, + "columns": 2890, + "added": 12, + "min_reduced_cost": -6.767384419936301, + "lp_gain": 13.26716693463095 + }, + { + "round": 3, + "columns": 2890, + "added": 0, + "min_reduced_cost": -9.947598300641403e-14, + "lp_gain": 13.267166934805573 + } + ], + "seconds": 1.7929384169983678 + }, + { + "iteration": 17, + "calls": [ + 0, + 1, + 7, + 10, + 17, + 22, + 25, + 26, + 29, + 30, + 31, + 32, + 36, + 37, + 38, + 41, + 43, + 44, + 45, + 47, + 51, + 57, + 59, + 60, + 64, + 66, + 70, + 72, + 73, + 75, + 86, + 87, + 89, + 93, + 96, + 97, + 99, + 105, + 106, + 111, + 113, + 116, + 118, + 121, + 122, + 127, + 136, + 143 + ], + "cost": 108028.32484544169, + "gain": 0.0, + "accepted": false, + "solver_status": 0, + "groups": 613, + "columns": 2246, + "pricing": [ + { + "round": 0, + "columns": 2206, + "added": 331, + "min_reduced_cost": -21.658323100144003, + "lp_gain": -1.0186340659856796e-10 + }, + { + "round": 1, + "columns": 2212, + "added": 6, + "min_reduced_cost": -13.26716693440968, + "lp_gain": 1.3096723705530167e-10 + }, + { + "round": 2, + "columns": 2244, + "added": 32, + "min_reduced_cost": -13.525408212173433, + "lp_gain": 13.26716693463095 + }, + { + "round": 3, + "columns": 2246, + "added": 2, + "min_reduced_cost": -13.525408212173433, + "lp_gain": 13.267166934805573 + }, + { + "round": 4, + "columns": 2246, + "added": 0, + "min_reduced_cost": -1.4210854715202004e-14, + "lp_gain": 13.26716693463095 + } + ], + "seconds": 1.5850464579998516 + }, + { + "iteration": 18, + "calls": [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117 + ], + "cost": 108028.32484544169, + "gain": 0.0, + "accepted": false, + "solver_status": 0, + "groups": 388, + "columns": 2017, + "pricing": [ + { + "round": 0, + "columns": 2017, + "added": 237, + "min_reduced_cost": -6.403725335949359, + "lp_gain": 13.267166934514535 + }, + { + "round": 1, + "columns": 2017, + "added": 0, + "min_reduced_cost": -5.861977570020827e-14, + "lp_gain": 13.267166934514535 + } + ], + "seconds": 2.583732458006125 + }, + { + "iteration": 19, + "calls": [ + 5, + 7, + 9, + 10, + 11, + 12, + 13, + 16, + 19, + 21, + 28, + 29, + 32, + 33, + 35, + 39, + 41, + 47, + 50, + 52, + 55, + 63, + 66, + 67, + 68, + 69, + 71, + 72, + 76, + 85, + 92, + 93, + 94, + 101, + 104, + 105, + 110, + 112, + 116, + 121, + 122, + 123, + 130, + 133, + 135, + 137, + 140, + 141 + ], + "cost": 108028.32484544169, + "gain": 0.0, + "accepted": false, + "solver_status": 0, + "groups": 633, + "columns": 2935, + "pricing": [ + { + "round": 0, + "columns": 2474, + "added": 422, + "min_reduced_cost": -20.639739220785707, + "lp_gain": 13.267166934514535 + }, + { + "round": 1, + "columns": 2738, + "added": 264, + "min_reduced_cost": -16.782312331468795, + "lp_gain": 13.267166934514535 + }, + { + "round": 2, + "columns": 2935, + "added": 197, + "min_reduced_cost": -13.525408212173431, + "lp_gain": 13.267166934456327 + }, + { + "round": 3, + "columns": 2935, + "added": 0, + "min_reduced_cost": -7.105427357601002e-15, + "lp_gain": 13.267166934689158 + } + ], + "seconds": 2.493798624986084 + }, + { + "iteration": 20, + "calls": [ + 0, + 2, + 7, + 16, + 17, + 19, + 20, + 21, + 22, + 24, + 27, + 28, + 29, + 33, + 34, + 38, + 43, + 46, + 47, + 50, + 51, + 58, + 59, + 60, + 69, + 71, + 72, + 81, + 82, + 83, + 84, + 85, + 88, + 89, + 90, + 94, + 95, + 98, + 107, + 109, + 113, + 116, + 121, + 122, + 124, + 129, + 132, + 140 + ], + "cost": 108028.32484544169, + "gain": 0.0, + "accepted": false, + "solver_status": 0, + "groups": 623, + "columns": 2528, + "pricing": [ + { + "round": 0, + "columns": 2517, + "added": 543, + "min_reduced_cost": -19.560534058710466, + "lp_gain": 2.473825588822365e-10 + }, + { + "round": 1, + "columns": 2528, + "added": 11, + "min_reduced_cost": -13.525408212173446, + "lp_gain": 3.637978807091713e-10 + }, + { + "round": 2, + "columns": 2528, + "added": 0, + "min_reduced_cost": -1.4210854715202004e-14, + "lp_gain": 13.267166934805573 + } + ], + "seconds": 1.1385694159835111 + }, + { + "iteration": 21, + "calls": [ + 55, + 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 + ], + "cost": 108028.32484544169, + "gain": 0.0, + "accepted": false, + "solver_status": 0, + "groups": 342, + "columns": 1833, + "pricing": [ + { + "round": 0, + "columns": 1833, + "added": 169, + "min_reduced_cost": -15.623197253607039, + "lp_gain": 13.267166934601846 + }, + { + "round": 1, + "columns": 1833, + "added": 0, + "min_reduced_cost": -2.504663143554353e-13, + "lp_gain": 13.267166934339912 + } + ], + "seconds": 1.0332827499951236 + }, + { + "iteration": 22, + "calls": [ + 0, + 4, + 5, + 8, + 16, + 18, + 19, + 20, + 22, + 23, + 46, + 47, + 48, + 53, + 56, + 61, + 62, + 63, + 68, + 69, + 70, + 73, + 74, + 76, + 86, + 87, + 88, + 89, + 93, + 94, + 101, + 104, + 107, + 114, + 115, + 116, + 117, + 120, + 124, + 125, + 128, + 131, + 134, + 139, + 140, + 141, + 142, + 143 + ], + "cost": 108028.32484544169, + "gain": 0.0, + "accepted": false, + "solver_status": 0, + "groups": 650, + "columns": 2733, + "pricing": [ + { + "round": 0, + "columns": 2731, + "added": 689, + "min_reduced_cost": -88.25395634903867, + "lp_gain": 13.267166934572742 + }, + { + "round": 1, + "columns": 2733, + "added": 2, + "min_reduced_cost": -13.525408212173428, + "lp_gain": 13.267166934514535 + }, + { + "round": 2, + "columns": 2733, + "added": 0, + "min_reduced_cost": -2.3092638912203256e-14, + "lp_gain": 13.267166934456327 + } + ], + "seconds": 1.3281338749802671 + }, + { + "iteration": 23, + "calls": [ + 1, + 2, + 3, + 4, + 5, + 7, + 10, + 13, + 14, + 26, + 29, + 30, + 32, + 34, + 37, + 43, + 45, + 52, + 57, + 64, + 66, + 67, + 68, + 74, + 78, + 80, + 85, + 87, + 93, + 94, + 96, + 98, + 100, + 101, + 104, + 110, + 111, + 113, + 118, + 126, + 129, + 130, + 133, + 136, + 137, + 138, + 142, + 143 + ], + "cost": 108024.15161883351, + "gain": 4.1732266081817215, + "accepted": true, + "solver_status": 0, + "groups": 596, + "columns": 2148, + "pricing": [ + { + "round": 0, + "columns": 2139, + "added": 222, + "min_reduced_cost": -16.444161137918524, + "lp_gain": 18.309152313580853 + }, + { + "round": 1, + "columns": 2148, + "added": 9, + "min_reduced_cost": -11.512533970690612, + "lp_gain": 18.309152313522645 + }, + { + "round": 2, + "columns": 2148, + "added": 0, + "min_reduced_cost": -1.4210854715202004e-14, + "lp_gain": 18.309152313813684 + } + ], + "seconds": 1.3546877079934347 + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/HELPER-ALIASES.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/HELPER-ALIASES.json new file mode 100644 index 0000000000..c9ec91a92b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/HELPER-ALIASES.json @@ -0,0 +1,1226 @@ +{ + "stats": { + "helper_target_reads": 665, + "clean_aliases": 76 + }, + "candidates": [ + { + "B": 458, + "target": 114, + "helper": 349, + "source": 346, + "coefficient": "1", + "frame": [ + 390, + 96, + 19, + 13 + ], + "frame_feasible": false + }, + { + "B": 462, + "target": 117, + "helper": 345, + "source": 341, + "coefficient": "-1/2", + "frame": [ + 390, + 96, + 19, + 13 + ], + "frame_feasible": false + }, + { + "B": 467, + "target": 122, + "helper": 285, + "source": 282, + "coefficient": "1", + "frame": [ + 388, + 96, + 24, + 2 + ], + "frame_feasible": false + }, + { + "B": 471, + "target": 125, + "helper": 281, + "source": 277, + "coefficient": "-1/2", + "frame": [ + 388, + 96, + 24, + 2 + ], + "frame_feasible": false + }, + { + "B": 476, + "target": 146, + "helper": 301, + "source": 298, + "coefficient": "1", + "frame": [ + 290, + 162, + 102, + 24 + ], + "frame_feasible": false + }, + { + "B": 480, + "target": 149, + "helper": 297, + "source": 293, + "coefficient": "-1/2", + "frame": [ + 290, + 162, + 102, + 24 + ], + "frame_feasible": false + }, + { + "B": 485, + "target": 154, + "helper": 365, + "source": 362, + "coefficient": "1", + "frame": [ + 301, + 173, + 102, + 30 + ], + "frame_feasible": false + }, + { + "B": 489, + "target": 157, + "helper": 361, + "source": 357, + "coefficient": "-1/2", + "frame": [ + 301, + 173, + 102, + 30 + ], + "frame_feasible": false + }, + { + "B": 494, + "target": 178, + "helper": 317, + "source": 314, + "coefficient": "1", + "frame": [ + 390, + 74, + 44, + 30 + ], + "frame_feasible": false + }, + { + "B": 498, + "target": 181, + "helper": 313, + "source": 309, + "coefficient": "-1/2", + "frame": [ + 390, + 74, + 44, + 30 + ], + "frame_feasible": false + }, + { + "B": 503, + "target": 186, + "helper": 381, + "source": 378, + "coefficient": "1", + "frame": [ + 390, + 67, + 37, + 24 + ], + "frame_feasible": false + }, + { + "B": 507, + "target": 189, + "helper": 377, + "source": 373, + "coefficient": "-1/2", + "frame": [ + 390, + 67, + 37, + 24 + ], + "frame_feasible": false + }, + { + "B": 512, + "target": 210, + "helper": 397, + "source": 394, + "coefficient": "1", + "frame": [ + 259, + 131, + 96, + 24 + ], + "frame_feasible": false + }, + { + "B": 515, + "target": 213, + "helper": 393, + "source": 389, + "coefficient": "-1/2", + "frame": [ + 259, + 131, + 96, + 24 + ], + "frame_feasible": false + }, + { + "B": 520, + "target": 218, + "helper": 333, + "source": 330, + "coefficient": "1", + "frame": [ + 266, + 138, + 96, + 30 + ], + "frame_feasible": false + }, + { + "B": 524, + "target": 221, + "helper": 329, + "source": 325, + "coefficient": "-1/2", + "frame": [ + 266, + 138, + 96, + 30 + ], + "frame_feasible": false + }, + { + "B": 612, + "target": 130, + "helper": 269, + "source": 266, + "coefficient": "1", + "frame": [ + 400, + 96, + 8, + 6 + ], + "frame_feasible": false + }, + { + "B": 613, + "target": 194, + "helper": 445, + "source": 442, + "coefficient": "1", + "frame": [ + 289, + 161, + 24, + 6 + ], + "frame_feasible": false + }, + { + "B": 615, + "target": 162, + "helper": 429, + "source": 426, + "coefficient": "1", + "frame": [ + 408, + 73, + 49, + 6 + ], + "frame_feasible": false + }, + { + "B": 627, + "target": 130, + "helper": 445, + "source": 442, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 628, + "target": 194, + "helper": 429, + "source": 426, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 630, + "target": 162, + "helper": 269, + "source": 266, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 632, + "target": 173, + "helper": 233, + "source": 229, + "coefficient": "-1/2", + "frame": [ + 448, + 32, + 24, + 6 + ], + "frame_feasible": false + }, + { + "B": 635, + "target": 141, + "helper": 265, + "source": 261, + "coefficient": "-1/2", + "frame": [ + 400, + 96, + 8, + 6 + ], + "frame_feasible": false + }, + { + "B": 637, + "target": 133, + "helper": 249, + "source": 245, + "coefficient": "-1/2", + "frame": [ + 296, + 168, + 120, + 6 + ], + "frame_feasible": false + }, + { + "B": 654, + "target": 170, + "helper": 237, + "source": 234, + "coefficient": "1", + "frame": [ + 448, + 32, + 24, + 6 + ], + "frame_feasible": false + }, + { + "B": 656, + "target": 205, + "helper": 425, + "source": 421, + "coefficient": "-1/2", + "frame": [ + 408, + 73, + 49, + 6 + ], + "frame_feasible": false + }, + { + "B": 658, + "target": 197, + "helper": 409, + "source": 405, + "coefficient": "-1/2", + "frame": [ + 265, + 137, + 96, + 6 + ], + "frame_feasible": false + }, + { + "B": 672, + "target": 196, + "helper": 237, + "source": 234, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 675, + "target": 138, + "helper": 253, + "source": 250, + "coefficient": "1", + "frame": [ + 296, + 168, + 120, + 6 + ], + "frame_feasible": false + }, + { + "B": 677, + "target": 206, + "helper": 441, + "source": 437, + "coefficient": "-1/2", + "frame": [ + 289, + 161, + 24, + 6 + ], + "frame_feasible": false + }, + { + "B": 678, + "target": 164, + "helper": 413, + "source": 410, + "coefficient": "1", + "frame": [ + 265, + 137, + 96, + 6 + ], + "frame_feasible": false + }, + { + "B": 691, + "target": 202, + "helper": 413, + "source": 410, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 693, + "target": 164, + "helper": 253, + "source": 250, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 914, + "target": 178, + "helper": 530, + "source": 2, + "coefficient": "1", + "frame": [ + 395, + 76, + 33, + 30 + ], + "frame_feasible": false + }, + { + "B": 915, + "target": 182, + "helper": 586, + "source": 438, + "coefficient": "-1/2", + "frame": [ + 289, + 161, + 74, + 30 + ], + "frame_feasible": false + }, + { + "B": 919, + "target": 218, + "helper": 542, + "source": 42, + "coefficient": "1", + "frame": [ + 268, + 203, + 33, + 30 + ], + "frame_feasible": false + }, + { + "B": 920, + "target": 222, + "helper": 588, + "source": 440, + "coefficient": "1", + "frame": [ + 266, + 140, + 45, + 30 + ], + "frame_feasible": false + }, + { + "B": 921, + "target": 219, + "helper": 543, + "source": 367, + "coefficient": "1", + "frame": [ + 331, + 140, + 33, + 30 + ], + "frame_feasible": false + }, + { + "B": 922, + "target": 223, + "helper": 589, + "source": 54, + "coefficient": "1", + "frame": [ + 268, + 138, + 45, + 30 + ], + "frame_feasible": false + }, + { + "B": 925, + "target": 114, + "helper": 506, + "source": 66, + "coefficient": "1", + "frame": [ + 397, + 74, + 39, + 30 + ], + "frame_feasible": false + }, + { + "B": 926, + "target": 118, + "helper": 438, + "source": 586, + "coefficient": "-1/2", + "frame": [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ], + "frame_feasible": false + }, + { + "B": 930, + "target": 154, + "helper": 518, + "source": 106, + "coefficient": "1", + "frame": [ + 266, + 205, + 39, + 30 + ], + "frame_feasible": false + }, + { + "B": 931, + "target": 158, + "helper": 440, + "source": 588, + "coefficient": "1", + "frame": [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ], + "frame_feasible": false + }, + { + "B": 932, + "target": 155, + "helper": 519, + "source": 335, + "coefficient": "1", + "frame": [ + 333, + 138, + 39, + 30 + ], + "frame_feasible": false + }, + { + "B": 1167, + "target": 125, + "helper": 448, + "source": 231, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1169, + "target": 121, + "helper": 449, + "source": 226, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1170, + "target": 122, + "helper": 584, + "source": 439, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1172, + "target": 123, + "helper": 585, + "source": 434, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1175, + "target": 149, + "helper": 231, + "source": 448, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1177, + "target": 145, + "helper": 226, + "source": 449, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1178, + "target": 146, + "helper": 590, + "source": 444, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1180, + "target": 147, + "helper": 591, + "source": 446, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1183, + "target": 181, + "helper": 450, + "source": 230, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1185, + "target": 177, + "helper": 451, + "source": 228, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1186, + "target": 178, + "helper": 438, + "source": 586, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1188, + "target": 179, + "helper": 587, + "source": 436, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1191, + "target": 221, + "helper": 230, + "source": 450, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1193, + "target": 217, + "helper": 228, + "source": 451, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1194, + "target": 218, + "helper": 440, + "source": 588, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1197, + "target": 223, + "helper": 367, + "source": 543, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1199, + "target": 117, + "helper": 452, + "source": 232, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1201, + "target": 113, + "helper": 453, + "source": 62, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1202, + "target": 114, + "helper": 586, + "source": 438, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1204, + "target": 115, + "helper": 436, + "source": 587, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1207, + "target": 157, + "helper": 232, + "source": 452, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1210, + "target": 154, + "helper": 588, + "source": 440, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1212, + "target": 155, + "helper": 589, + "source": 54, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1215, + "target": 189, + "helper": 454, + "source": 236, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1217, + "target": 185, + "helper": 455, + "source": 238, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1218, + "target": 186, + "helper": 439, + "source": 584, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1220, + "target": 187, + "helper": 434, + "source": 585, + "coefficient": "-1/2", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1223, + "target": 213, + "helper": 236, + "source": 454, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1225, + "target": 209, + "helper": 238, + "source": 455, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1226, + "target": 210, + "helper": 444, + "source": 590, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + }, + { + "B": 1228, + "target": 211, + "helper": 446, + "source": 591, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "frame_feasible": false + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/PROMOTION-GROUPS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/PROMOTION-GROUPS.json new file mode 100644 index 0000000000..1aa1fe4e4e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/PROMOTION-GROUPS.json @@ -0,0 +1,326 @@ +[ + { + "helpers": [ + 474, + 475 + ], + "old": [ + 120 + ], + "new": [ + 120, + 1 + ] + }, + { + "helpers": [ + 476, + 477 + ], + "old": [ + 96 + ], + "new": [ + 96, + 1 + ] + }, + { + "helpers": [ + 486, + 487 + ], + "old": [ + 126 + ], + "new": [ + 126, + 1 + ] + }, + { + "helpers": [ + 488, + 489 + ], + "old": [ + 102 + ], + "new": [ + 102, + 1 + ] + }, + { + "helpers": [ + 522, + 523 + ], + "old": [ + 126 + ], + "new": [ + 121, + 7 + ] + }, + { + "helpers": [ + 524, + 525 + ], + "old": [ + 96 + ], + "new": [ + 96, + 7 + ] + }, + { + "helpers": [ + 526, + 527 + ], + "old": [ + 96 + ], + "new": [ + 96, + 25 + ] + }, + { + "helpers": [ + 528, + 529 + ], + "old": [ + 126 + ], + "new": [ + 103, + 25 + ] + }, + { + "helpers": [ + 534, + 535 + ], + "old": [ + 120 + ], + "new": [ + 120, + 7 + ] + }, + { + "helpers": [ + 536, + 537 + ], + "old": [ + 102 + ], + "new": [ + 97, + 7 + ] + }, + { + "helpers": [ + 538, + 539 + ], + "old": [ + 102 + ], + "new": [ + 102, + 25 + ] + }, + { + "helpers": [ + 540, + 541 + ], + "old": [ + 120 + ], + "new": [ + 97, + 25 + ] + }, + { + "helpers": [ + 595, + 597, + 598, + 599 + ], + "old": [ + 320, + 192, + 24, + 6 + ], + "new": [ + 320, + 192, + 24, + 6, + 1 + ] + }, + { + "helpers": [ + 643, + 645, + 646, + 647 + ], + "old": [ + 390, + 96, + 20, + 10 + ], + "new": [ + 390, + 96, + 20, + 10, + 1 + ] + }, + { + "helpers": [ + 659, + 661, + 662, + 663 + ], + "old": [ + 390, + 75, + 45, + 30 + ], + "new": [ + 385, + 75, + 42, + 25, + 7 + ] + }, + { + "helpers": [ + 667, + 669, + 670, + 671 + ], + "old": [ + 291, + 163, + 102, + 24 + ], + "new": [ + 291, + 163, + 97, + 24, + 7 + ] + }, + { + "helpers": [ + 675, + 677, + 678, + 679 + ], + "old": [ + 389, + 96, + 24, + 3 + ], + "new": [ + 385, + 96, + 24, + 4, + 3 + ] + }, + { + "helpers": [ + 683, + 685, + 686, + 687 + ], + "old": [ + 401, + 96, + 9, + 6 + ], + "new": [ + 385, + 96, + 16, + 9, + 6 + ] + }, + { + "helpers": [ + 691, + 693, + 694, + 695 + ], + "old": [ + 297, + 169, + 120, + 6 + ], + "new": [ + 297, + 169, + 97, + 25, + 6 + ] + }, + { + "helpers": [ + 699, + 701, + 702, + 703 + ], + "old": [ + 449, + 33, + 24, + 6 + ], + "new": [ + 385, + 64, + 33, + 24, + 6 + ] + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/PROMOTION-SCREEN.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/PROMOTION-SCREEN.json new file mode 100644 index 0000000000..e80217ccb1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/PROMOTION-SCREEN.json @@ -0,0 +1,498 @@ +[ + { + "group": 0, + "helpers": [ + 474, + 475 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 1, + "helpers": [ + 476, + 477 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 2, + "helpers": [ + 486, + 487 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 3, + "helpers": [ + 488, + 489 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 4, + "helpers": [ + 522, + 523 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 5, + "helpers": [ + 524, + 525 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 6, + "helpers": [ + 526, + 527 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 7, + "helpers": [ + 528, + 529 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 8, + "helpers": [ + 534, + 535 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 9, + "helpers": [ + 536, + 537 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 10, + "helpers": [ + 538, + 539 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 11, + "helpers": [ + 540, + 541 + ], + "profile": { + "1": 2398, + "2": 480, + "3": 392, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677242582317122, + "kappa_relaxed": 0.0016744341500593567, + "widths": { + "9": 240, + "4": 56, + "8": 112, + "7": 40, + "5": 32 + } + }, + { + "group": 12, + "helpers": [ + 595, + 597, + 598, + 599 + ], + "profile": { + "1": 2396, + "2": 478, + "3": 388, + "4": 146, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016769408229999575, + "kappa_relaxed": 0.00167413340035775, + "widths": { + "9": 240, + "4": 60, + "8": 114, + "7": 38, + "5": 28 + } + }, + { + "group": 13, + "helpers": [ + 643, + 645, + 646, + 647 + ], + "profile": { + "1": 2412, + "2": 458, + "3": 396, + "4": 146, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016768322360298093, + "kappa_relaxed": 0.0016740251766496775, + "widths": { + "9": 240, + "4": 60, + "8": 114, + "7": 38, + "5": 28 + } + }, + { + "group": 14, + "helpers": [ + 659, + 661, + 662, + 663 + ], + "profile": { + "1": 2404, + "2": 462, + "3": 396, + "4": 146, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016772724307761943, + "kappa_relaxed": 0.001674463898642671, + "widths": { + "9": 240, + "4": 60, + "8": 114, + "7": 38, + "5": 28 + } + }, + { + "group": 15, + "helpers": [ + 667, + 669, + 670, + 671 + ], + "profile": { + "1": 2412, + "2": 458, + "3": 396, + "4": 146, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016768322360298093, + "kappa_relaxed": 0.0016740251766496775, + "widths": { + "9": 240, + "4": 60, + "8": 114, + "7": 38, + "5": 28 + } + }, + { + "group": 16, + "helpers": [ + 675, + 677, + 678, + 679 + ], + "profile": { + "1": 2412, + "2": 458, + "3": 396, + "4": 146, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016768322360298093, + "kappa_relaxed": 0.0016740251766496775, + "widths": { + "9": 240, + "4": 60, + "8": 114, + "7": 38, + "5": 28 + } + }, + { + "group": 17, + "helpers": [ + 683, + 685, + 686, + 687 + ], + "profile": { + "1": 2404, + "2": 462, + "3": 396, + "4": 146, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016772724307761943, + "kappa_relaxed": 0.001674463898642671, + "widths": { + "9": 240, + "4": 60, + "8": 114, + "7": 38, + "5": 28 + } + }, + { + "group": 18, + "helpers": [ + 691, + 693, + 694, + 695 + ], + "profile": { + "1": 2404, + "2": 462, + "3": 396, + "4": 146, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016772724307761943, + "kappa_relaxed": 0.001674463898642671, + "widths": { + "9": 240, + "4": 60, + "8": 114, + "7": 38, + "5": 28 + } + }, + { + "group": 19, + "helpers": [ + 699, + 701, + 702, + 703 + ], + "profile": { + "1": 2396, + "2": 476, + "3": 392, + "4": 144, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016768870389921675, + "kappa_relaxed": 0.0016740797962795475, + "widths": { + "9": 240, + "4": 60, + "8": 114, + "7": 38, + "5": 28 + } + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/RETIRABLE-HELPERS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/RETIRABLE-HELPERS.json new file mode 100644 index 0000000000..185d6309bf --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/RETIRABLE-HELPERS.json @@ -0,0 +1,1544 @@ +[ + { + "helper": 472, + "writes": [ + [ + "B", + 723, + [ + "add", + 472, + 283, + 1, + 1, + [ + 390, + 98, + 24 + ] + ] + ], + [ + "B", + 724, + [ + "add", + 472, + 231, + 1, + 1, + [ + 386, + 64, + 34, + 24, + 4, + 1 + ] + ] + ] + ], + "reads": [ + [ + "B", + 16, + [ + "add", + 148, + 472, + 1, + 2, + [ + 24 + ] + ] + ], + [ + "B", + 1174, + [ + "add", + 148, + 472, + -1, + 2, + [ + 256, + 130, + 64, + 34, + 24, + 4, + 1 + ] + ] + ] + ] + }, + { + "helper": 473, + "writes": [ + [ + "B", + 725, + [ + "add", + 473, + 9, + 1, + 1, + [ + 388, + 24, + 2 + ] + ] + ], + [ + "B", + 726, + [ + "add", + 473, + 226, + 1, + 1, + [ + 388, + 68, + 32, + 24, + 2, + 1 + ] + ] + ] + ], + "reads": [ + [ + "B", + 17, + [ + "add", + 144, + 473, + 1, + 2, + [ + 24 + ] + ] + ], + [ + "B", + 1176, + [ + "add", + 144, + 473, + -1, + 2, + [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ] + ] + ] + ] + }, + { + "helper": 484, + "writes": [ + [ + "B", + 742, + [ + "add", + 484, + 299, + 1, + 1, + [ + 290, + 162, + 24 + ] + ] + ], + [ + "B", + 743, + [ + "add", + 484, + 448, + 1, + 1, + [ + 260, + 132, + 70, + 38, + 24, + 1 + ] + ] + ] + ], + "reads": [ + [ + "B", + 18, + [ + "add", + 124, + 484, + 1, + 2, + [ + 24 + ] + ] + ], + [ + "B", + 1166, + [ + "add", + 124, + 484, + -1, + 2, + [ + 260, + 132, + 68, + 36, + 24, + 2, + 1 + ] + ] + ] + ] + }, + { + "helper": 485, + "writes": [ + [ + "B", + 744, + [ + "add", + 485, + 33, + 1, + 1, + [ + 324, + 196, + 24 + ] + ] + ], + [ + "B", + 745, + [ + "add", + 485, + 449, + 1, + 1, + [ + 260, + 132, + 64, + 32, + 24, + 1 + ] + ] + ] + ], + "reads": [ + [ + "B", + 19, + [ + "add", + 120, + 485, + 1, + 2, + [ + 24 + ] + ] + ], + [ + "B", + 1168, + [ + "add", + 120, + 485, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ] + ] + ] + ] + }, + { + "helper": 496, + "writes": [ + [ + "B", + 762, + [ + "add", + 496, + 315, + 1, + 1, + [ + 390, + 44, + 30 + ] + ] + ], + [ + "B", + 763, + [ + "add", + 496, + 230, + 1, + 1, + [ + 390, + 70, + 38, + 20, + 10, + 1 + ] + ] + ] + ], + "reads": [ + [ + "B", + 20, + [ + "add", + 220, + 496, + 1, + 2, + [ + 30 + ] + ] + ], + [ + "B", + 1190, + [ + "add", + 220, + 496, + -1, + 2, + [ + 262, + 128, + 70, + 38, + 20, + 10, + 1 + ] + ] + ] + ] + }, + { + "helper": 497, + "writes": [ + [ + "B", + 764, + [ + "add", + 497, + 65, + 1, + 1, + [ + 390, + 74, + 30 + ] + ] + ], + [ + "B", + 765, + [ + "add", + 497, + 228, + 1, + 1, + [ + 390, + 64, + 32, + 20, + 10, + 1 + ] + ] + ] + ], + "reads": [ + [ + "B", + 21, + [ + "add", + 216, + 497, + 1, + 2, + [ + 30 + ] + ] + ], + [ + "B", + 1192, + [ + "add", + 216, + 497, + -1, + 2, + [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ] + ] + ] + ] + }, + { + "helper": 508, + "writes": [ + [ + "B", + 782, + [ + "add", + 508, + 331, + 1, + 1, + [ + 362, + 234, + 30 + ] + ] + ], + [ + "B", + 783, + [ + "add", + 508, + 450, + 1, + 1, + [ + 268, + 140, + 64, + 38, + 30, + 1 + ] + ] + ] + ], + "reads": [ + [ + "B", + 22, + [ + "add", + 180, + 508, + 1, + 2, + [ + 30 + ] + ] + ], + [ + "B", + 1182, + [ + "add", + 180, + 508, + -1, + 2, + [ + 256, + 128, + 64, + 38, + 18, + 12, + 1 + ] + ] + ] + ] + }, + { + "helper": 509, + "writes": [ + [ + "B", + 784, + [ + "add", + 509, + 105, + 1, + 1, + [ + 266, + 138, + 30 + ] + ] + ], + [ + "B", + 785, + [ + "add", + 509, + 451, + 1, + 1, + [ + 266, + 138, + 70, + 32, + 30, + 1 + ] + ] + ] + ], + "reads": [ + [ + "B", + 23, + [ + "add", + 176, + 509, + 1, + 2, + [ + 30 + ] + ] + ], + [ + "B", + 1184, + [ + "add", + 176, + 509, + -1, + 2, + [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ] + ] + ] + ] + }, + { + "helper": 520, + "writes": [ + [ + "B", + 802, + [ + "add", + 520, + 347, + 1, + 1, + [ + 390, + 109, + 30 + ] + ] + ], + [ + "B", + 803, + [ + "add", + 520, + 232, + -2, + 1, + [ + 385, + 64, + 33, + 18, + 11, + 7 + ] + ] + ] + ], + "reads": [ + [ + "B", + 24, + [ + "add", + 156, + 520, + 1, + 2, + [ + 30 + ] + ] + ], + [ + "B", + 1206, + [ + "add", + 156, + 520, + -1, + 2, + [ + 256, + 129, + 64, + 33, + 18, + 11, + 7 + ] + ] + ] + ] + }, + { + "helper": 521, + "writes": [ + [ + "B", + 804, + [ + "add", + 521, + 1, + 1, + 1, + [ + 390, + 19, + 13 + ] + ] + ], + [ + "B", + 805, + [ + "add", + 521, + 62, + -2, + 1, + [ + 385, + 65, + 32, + 19, + 10, + 7 + ] + ] + ] + ], + "reads": [ + [ + "B", + 25, + [ + "add", + 152, + 521, + 1, + 2, + [ + 30 + ] + ] + ], + [ + "B", + 1208, + [ + "add", + 152, + 521, + -1, + 2, + [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ] + ] + ] + ] + }, + { + "helper": 532, + "writes": [ + [ + "B", + 820, + [ + "add", + 532, + 363, + 1, + 1, + [ + 301, + 173, + 30 + ] + ] + ], + [ + "B", + 821, + [ + "add", + 532, + 452, + -2, + 1, + [ + 267, + 139, + 65, + 33, + 25, + 7 + ] + ] + ] + ], + "reads": [ + [ + "B", + 26, + [ + "add", + 116, + 532, + 1, + 2, + [ + 30 + ] + ] + ], + [ + "B", + 1198, + [ + "add", + 116, + 532, + -1, + 2, + [ + 257, + 129, + 65, + 33, + 19, + 10, + 7 + ] + ] + ] + ] + }, + { + "helper": 533, + "writes": [ + [ + "B", + 822, + [ + "add", + 533, + 41, + 1, + 1, + [ + 331, + 203, + 30 + ] + ] + ], + [ + "B", + 823, + [ + "add", + 533, + 453, + -2, + 1, + [ + 267, + 139, + 64, + 32, + 25, + 7 + ] + ] + ] + ], + "reads": [ + [ + "B", + 27, + [ + "add", + 112, + 533, + 1, + 2, + [ + 30 + ] + ] + ], + [ + "B", + 1200, + [ + "add", + 112, + 533, + -1, + 2, + [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ] + ] + ] + ] + }, + { + "helper": 544, + "writes": [ + [ + "B", + 838, + [ + "add", + 544, + 379, + 1, + 1, + [ + 390, + 37, + 24 + ] + ] + ], + [ + "B", + 839, + [ + "add", + 544, + 236, + -2, + 1, + [ + 385, + 65, + 33, + 24, + 4, + 3 + ] + ] + ] + ], + "reads": [ + [ + "B", + 28, + [ + "add", + 212, + 544, + 1, + 2, + [ + 24 + ] + ] + ], + [ + "B", + 1222, + [ + "add", + 212, + 544, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 24, + 4, + 3 + ] + ] + ] + ] + }, + { + "helper": 545, + "writes": [ + [ + "B", + 840, + [ + "add", + 545, + 73, + 1, + 1, + [ + 390, + 67, + 24 + ] + ] + ], + [ + "B", + 841, + [ + "add", + 545, + 238, + -2, + 1, + [ + 385, + 64, + 32, + 24, + 4, + 3 + ] + ] + ] + ], + "reads": [ + [ + "B", + 29, + [ + "add", + 208, + 545, + 1, + 2, + [ + 24 + ] + ] + ], + [ + "B", + 1224, + [ + "add", + 208, + 545, + -1, + 2, + [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ] + ] + ] + ] + }, + { + "helper": 556, + "writes": [ + [ + "B", + 856, + [ + "add", + 556, + 395, + 1, + 1, + [ + 355, + 227, + 24 + ] + ] + ], + [ + "B", + 857, + [ + "add", + 556, + 454, + -2, + 1, + [ + 258, + 130, + 64, + 33, + 24, + 7 + ] + ] + ] + ], + "reads": [ + [ + "B", + 30, + [ + "add", + 188, + 556, + 1, + 2, + [ + 24 + ] + ] + ], + [ + "B", + 1214, + [ + "add", + 188, + 556, + -1, + 2, + [ + 256, + 128, + 64, + 33, + 24, + 5, + 2 + ] + ] + ] + ] + }, + { + "helper": 557, + "writes": [ + [ + "B", + 858, + [ + "add", + 557, + 97, + 1, + 1, + [ + 259, + 131, + 24 + ] + ] + ], + [ + "B", + 859, + [ + "add", + 557, + 455, + -2, + 1, + [ + 259, + 131, + 65, + 32, + 24, + 7 + ] + ] + ] + ], + "reads": [ + [ + "B", + 31, + [ + "add", + 184, + 557, + 1, + 2, + [ + 24 + ] + ] + ], + [ + "B", + 1216, + [ + "add", + 184, + 557, + -1, + 2, + [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ] + ] + ] + ] + }, + { + "helper": 586, + "writes": [ + [ + "A", + 62, + [ + "add", + 586, + 506, + 1, + 1, + [ + 30 + ] + ] + ], + [ + "B", + 37, + [ + "add", + 586, + 506, + 2, + 1, + [ + 30 + ] + ] + ], + [ + "B", + 892, + [ + "add", + 586, + 438, + 1, + 1, + [ + 289, + 161, + 30 + ] + ] + ] + ], + "reads": [ + [ + "B", + 36, + [ + "add", + 114, + 586, + 1, + 2, + [ + 30 + ] + ] + ], + [ + "B", + 38, + [ + "add", + 182, + 586, + 1, + 2, + [ + 30 + ] + ] + ], + [ + "B", + 915, + [ + "add", + 182, + 586, + -1, + 2, + [ + 262, + 134, + 64, + 39, + 20, + 10 + ] + ] + ], + [ + "B", + 1202, + [ + "add", + 114, + 586, + -1, + 2, + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ] + ] + ] + ] + }, + { + "helper": 588, + "writes": [ + [ + "A", + 61, + [ + "add", + 588, + 518, + 1, + 1, + [ + 30 + ] + ] + ], + [ + "B", + 42, + [ + "add", + 588, + 518, + -1, + 1, + [ + 30 + ] + ] + ], + [ + "B", + 896, + [ + "add", + 588, + 440, + 1, + 1, + [ + 295, + 161, + 30 + ] + ] + ] + ], + "reads": [ + [ + "B", + 41, + [ + "add", + 154, + 588, + -1, + 1, + [ + 30 + ] + ] + ], + [ + "B", + 43, + [ + "add", + 222, + 588, + -1, + 1, + [ + 30 + ] + ] + ], + [ + "B", + 920, + [ + "add", + 222, + 588, + 1, + 1, + [ + 256, + 134, + 70, + 39, + 20, + 10 + ] + ] + ], + [ + "B", + 1210, + [ + "add", + 154, + 588, + 1, + 1, + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ] + ] + ] + ] + }, + { + "helper": 589, + "writes": [ + [ + "B", + 897, + [ + "add", + 589, + 54, + 1, + 1, + [ + 289, + 167, + 30 + ] + ] + ] + ], + "reads": [ + [ + "B", + 44, + [ + "add", + 155, + 589, + -1, + 1, + [ + 30 + ] + ] + ], + [ + "B", + 45, + [ + "add", + 223, + 589, + -1, + 1, + [ + 30 + ] + ] + ], + [ + "B", + 922, + [ + "add", + 223, + 589, + 1, + 1, + [ + 262, + 128, + 70, + 39, + 20, + 10 + ] + ] + ], + [ + "B", + 1212, + [ + "add", + 155, + 589, + 1, + 1, + [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ] + ] + ] + ] + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/SWAP-SEARCH.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/SWAP-SEARCH.json new file mode 100644 index 0000000000..42b9fe0091 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/SWAP-SEARCH.json @@ -0,0 +1,15 @@ +{ + "stats": { + "commuting_shared_windows": 430, + "frame_assignments": 296 + }, + "trace": [], + "profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/bank_screen.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/bank_screen.py new file mode 100644 index 0000000000..45e1060e80 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/bank_screen.py @@ -0,0 +1,29 @@ +"""Relaxed stage-private homogeneous banks; no physical feasibility claim.""" +import json,gzip,math +from pathlib import Path +from collections import Counter +import numpy as np +from scipy.optimize import linprog,brentq +P=Path(__file__).resolve().parent;ROOT=P.parents[2];p=json.loads(gzip.decompress((ROOT/'research/k8-eight-ends/PLAN.json.gz').read_bytes()));desc=p['provider_registry']['gauge44'];H0={int(r):n for r,n in desc['actual_paid_profile'].items()};inv=Counter(desc['widths']);ws=sorted(inv);results=[] +for K in range(2,7): + L=2*K+1;m=16*K+9;V=224*K;caps={8:224*(K-1),**{16*p:448 for p in range(1,K)}};limit=int(m/math.sqrt(2));columns=[];rs=[];banks=[] + def split(r): + if not r:return [] + n=math.ceil(r/limit);return [r//n+(i=2*v: + stats['helper_target_reads']+=1;hk,hq=key(rows[e[2]]) + for s in list(range(v))+list(range(2*v,n)): + if s==e[2]:continue + sk,sq=key(rows[s]) + if hk is not None and sk==hk: + stats['clean_aliases']+=1;fr=a.basis(list(cur[s])+list(cur[e[1]]));feasible=a.contained(fr,nexts[i][s]) and a.contained(fr,nexts[i][e[1]]) + if not feasible: + result.append(dict(B=i,target=e[1],helper=e[2],source=s,coefficient=str(F(e[3],e[4])*hq/sq),frame=list(fr),frame_feasible=False));continue + stats['frame_feasible']+=1;rec=dict(B=i,target=e[1],helper=e[2],source=s,coefficient=str(F(e[3],e[4])*hq/sq),frame=list(fr));nw=copy.deepcopy(w);q=F(rec['coefficient']);nw['B'][i]=['add',e[1],s,q.numerator,q.denominator,list(fr)];np=p.chain_profile(nw);delta=Counter(np);delta.subtract(old);rec['profile_delta']={k:c for k,c in delta.items() if c};rec['entropy_delta']=sum(k*c*math.log(k) for k,c in delta.items());result.append(rec) + a.apply(e,rows) + for r in a.registers(e):cur[r]=a.basis(e[-1]) +result.sort(key=lambda r:-r.get('entropy_delta',-1e9));out=dict(stats=dict(stats),candidates=result);(P/'HELPER-ALIASES.json').write_text(json.dumps(out,indent=2)+'\n');print(json.dumps(dict(stats=dict(stats),top=[r for r in result if r.get('profile_delta')][:20]),indent=2)) +# Helpers with no non-target reads and hence candidates for complete removal. +uses=defaultdict(list);writes=defaultdict(list) +for sec in ['A','B']: + for i,e in enumerate(w[sec]): + writes[e[1]].append((sec,i,e)) + if e[0]=='add':uses[e[2]].append((sec,i,e)) +retire=[dict(helper=h,writes=writes[h],reads=uses[h]) for h in range(224,n) if uses[h] and all(112<=e[1]<224 for sec,i,e in uses[h])] +(P/'RETIRABLE-HELPERS.json').write_text(json.dumps(retire,indent=2)+'\n');print('target-only helpers',len(retire)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/make_start.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/make_start.py new file mode 100644 index 0000000000..fba416ab98 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/make_start.py @@ -0,0 +1,36 @@ +"""Make the literal doubled T8 owner map used to start the successful search.""" +import argparse +import gzip +import json +from collections import Counter +from pathlib import Path + +P = Path(__file__).resolve().parent.parent +PRE = P.parent / 'k8-eight-ends' +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--out', type=Path, required=True) +a = ap.parse_args() +assert not a.out.exists() +plan = json.loads(gzip.decompress((P / 'PLAN.json.gz').read_bytes())) +old = json.loads(gzip.decompress((PRE / 'OWNERS.json.gz').read_bytes())) +roles = [] +for g in range(2): + for z in old: + roles.append(z | dict(replica=z['replica'] + 8*g, owner_replica=z['owner_replica'] + 8*g, + time=2*z['time'] + g, copy=z['copy'] + 896*g, + family=z['family'] + 7168*g)) +oldplan = json.loads(gzip.decompress((PRE / 'PLAN.json.gz').read_bytes())) +plan['profile'] = {r: 2*n for r, n in oldplan['profile'].items()} +assert plan['order'] == [[s, r+8*g] for s, r in oldplan['order'] for g in range(2)] +used = Counter() +for z in roles: + cap, times = plan['windows'][str(z['owner_replica']) + ',' + str(z['child'])] + assert z['time'] in times + key = z['owner_replica'], z['child'], z['port'] + used[key] += z['width'] + assert used[key] <= cap +a.out.mkdir(parents=True) +(a.out / 'PLAN.json').write_text(json.dumps(plan, indent=2) + '\n') +(a.out / 'OWNERS.json.gz').write_bytes(gzip.compress(json.dumps(roles, sort_keys=True, + separators=(',', ':')).encode(), mtime=0)) +print('Doubled', len(old), 'T8 roles to', len(roles), 'T16 roles') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/promotion_groups.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/promotion_groups.py new file mode 100644 index 0000000000..ace03f012d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/promotion_groups.py @@ -0,0 +1,17 @@ +import os,json,gzip,copy,importlib.util,sys +from pathlib import Path +from collections import defaultdict +P=Path(__file__).resolve().parent;ROOT=P.parents[2];os.environ['K8_BASE_WORD']=str(ROOT/'research/k8-eight-ends/FULL-WORD.json.gz');sys.path.insert(0,str(ROOT/'research/k8-eight-ends/discovery'));import screen_end_groups as S +m=S.M.Model(S.w);groups=defaultdict(list) +for q,start in S.w['start_extra'].items(): + q=int(q);first=m.chains[q][1];hi=m.hi[first] + if len(hi)>len(start):groups[(tuple(start),hi)].append(q) +G=[dict(helpers=hs,old=list(old),new=list(new)) for (old,new),hs in groups.items()];(P/'PROMOTION-GROUPS.json').write_text(json.dumps(G,indent=2)+'\n');print('groups',len(G),[dict(helpers=g['helpers'],dim=(len(g['old']),len(g['new']))) for g in G],flush=True) +results=[] +for i,g in enumerate(G): + nw=copy.deepcopy(S.w) + for q in g['helpers']:nw['start_extra'][str(q)]=g['new'] + try: + nw=S.optimize(nw);r=dict(group=i,helpers=g['helpers'],profile=nw['report']['local_profile'],**S.screen(nw));(P/f'promotion-{i}.json.gz').write_bytes(gzip.compress(json.dumps(nw,sort_keys=True,separators=(',',':')).encode(),mtime=0)) + except AssertionError as e:r=dict(group=i,helpers=g['helpers'],status='INFEASIBLE',reason=str(e)) + results.append(r);print(json.dumps(r),flush=True);(P/'PROMOTION-SCREEN.json').write_text(json.dumps(results,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/reframe_aliases.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/reframe_aliases.py new file mode 100644 index 0000000000..5b4e5a4ece --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/reframe_aliases.py @@ -0,0 +1,12 @@ +import json,gzip,copy,importlib.util,time +from pathlib import Path +from fractions import Fraction as F +P=Path(__file__).resolve().parent;ROOT=P.parents[2];s=importlib.util.spec_from_file_location('M',ROOT/'research/k8-eight-ends/discovery/frame_model.py');M=importlib.util.module_from_spec(s);s.loader.exec_module(M);w=json.loads(gzip.decompress((ROOT/'research/k8-eight-ends/FULL-WORD.json.gz').read_bytes()));results=[] +for i,r in enumerate(json.loads((P/'HELPER-ALIASES.json').read_text())['candidates']): + nw=copy.deepcopy(w);q=F(r['coefficient']);nw['B'][r['B']]=['add',r['target'],r['source'],q.numerator,q.denominator,r['frame']] + try: + m=M.Model(nw,relax_given=True);out=dict(status='FRAME_FEASIBLE',free=len(m.domain),profile=m.profile(m.baseline()));(P/f'alias-{i}.json.gz').write_bytes(gzip.compress(json.dumps(nw).encode())) + except AssertionError as e:out=dict(status='FRAME_INFEASIBLE',reason=str(e)) + r.update(out);results.append(r) + if i%10==0 or out['status']=='FRAME_FEASIBLE':print(i,out,flush=True) +(P/'ALIASES-REFRAMED.json').write_text(json.dumps(results,indent=2)+'\n');print('feasible',sum(r['status']=='FRAME_FEASIBLE' for r in results),'of',len(results),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/search_calls.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/search_calls.py new file mode 100644 index 0000000000..c1da48c35f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/search_calls.py @@ -0,0 +1,111 @@ +"""Discovery only: coordinated complete-call reassignment. + +Prepared with OpenAI Codex assistance; Apache-2.0. See ../NOTICE.md. +SciPy/HiGHS nominates integer feasible maps; only the separate unchanged +physical verifier and rational engines may certify a kappa value. A timed-out +solve may supply a checked feasible incumbent; no optimality is claimed. +Run from the repository root. The frozen map, not a new search, is verified. +""" +import argparse, gzip, json, math, random, time +from collections import Counter, defaultdict +from pathlib import Path +import numpy as np +from scipy.optimize import linprog, milp, Bounds, LinearConstraint +from scipy.sparse import coo_matrix + +ap=argparse.ArgumentParser();ap.add_argument('--passes',type=int,default=10);ap.add_argument('--seed',type=int,default=13);ap.add_argument('--out',type=Path,required=True);ap.add_argument('--input',type=Path,default=Path('research/gauge44-slots/data'));ap.add_argument('--block',type=int,default=1);ap.add_argument('--limit',type=float,default=3);ap.add_argument('--target48',action='store_true');a=ap.parse_args() +p=a.input;plan=json.loads((p/'PLAN.json').read_text());roles=json.loads(gzip.decompress((p/'OWNERS.json.gz').read_bytes())) +N=len(plan['order']);rng=random.Random(a.seed);V=112;bins=[];eligible=defaultdict(list);lookup={} +for key,(cap,times) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(V): + fam=rep*896+(2*plan['pairs'][str(ch)]+plan['sides'][str(ch)])*V+port + idx=len(bins);bins.append((rep,ch,port,cap,fam));lookup[rep,ch,port]=idx + for t in times:eligible[t].append(idx) +for t,ids in eligible.items():assert len({bins[i][4] for i in ids})==len(ids) +bycall=defaultdict(list);assignment=[];used=np.zeros(len(bins),dtype=int) +for j,z in enumerate(roles): + i=lookup[z['owner_replica'],z['child'],z['port']];assignment.append(i);used[i]+=z['width'];bycall[z['time']].append(j) +cap=np.array([b[3] for b in bins]);phi=np.array([r*math.expm1(.0016769*math.log(73/r))/.0016769 if r else 0 for r in range(49)]) +def cost():return float(phi[cap-used].sum()) +def save(): + offsets=Counter();out=[] + for j,z in enumerate(roles): + i=assignment[j];rep,ch,port,cp,fam=bins[i];new=z|dict(owner_replica=rep,child=ch,port=port,copy=rep*V+port,family=fam,offset=offsets[i]);offsets[i]+=z['width'];out.append(new) + assert all(offsets[i]==used[i]<=cap[i] for i in range(len(bins))) + a.out.mkdir(exist_ok=True,parents=True);(a.out/'OWNERS.json.gz').write_bytes(gzip.compress(json.dumps(out,sort_keys=True,separators=(',',':')).encode(),mtime=0)) + idle=Counter(int(x) for x in cap-used if x);H=Counter({int(r):n*N for r,n in plan['provider_registry']['gauge44']['actual_paid_profile'].items()});H.update(idle) + np=plan|dict(profile=dict(sorted(H.items())));(a.out/'PLAN.json').write_text(json.dumps(np,indent=2)+'\n');(a.out/'SEARCH.json').write_text(json.dumps(dict(seed=a.seed,cost=cost(),idle=dict(sorted(idle.items())),trace=trace),indent=2)+'\n') +trace=[];initial=cost();print('initial',initial,Counter(cap-used),flush=True) +if a.block>1: + import itertools + for it in range(a.passes): + # Nearby calls share narrow windows; random distant calls provide escape paths. + t=rng.randrange(N);ts=sorted({t,*rng.sample([k for k in range(N) if k!=t],a.block-1)}) + if it%2:ts=sorted(rng.sample(list(range(max(0,t-6),min(N,t+7))),a.block)) + if a.target48: + occupants=defaultdict(list) + for j,i in enumerate(assignment): + if cap[i]==48:occupants[i].append(roles[j]['time']) + target=rng.choice([x for x in occupants.values() if len(x)==a.block]);ts=sorted(target);assert len(set(ts))==len(ts) + ws=[4,8,9] if a.target48 else [4,5,7,8,9] + oldcost=cost();js=[j for t in ts for j in bycall[t] if roles[j]['width'] in ws];oldassign={j:assignment[j] for j in js} + for j in js:used[assignment[j]]-=roles[j]['width'] + es=[set(eligible[t])-{assignment[j] for j in bycall[t] if roles[j]['width'] not in ws} for t in ts] + allids=set().union(*es);groups=defaultdict(list) + for i in allids: + v=int(cap[i]-used[i]);mask=sum(1<>k&1 else [0]) for k in range(len(ts))] + for pat in itertools.product(*opts): + if sum(pat)>v:continue + col=len(patterns);patterns.append((g,pat));costs.append(phi[v-sum(pat)]-phi[v]);rows.append(g);cols.append(col);vals.append(1) + for k,w in enumerate(pat): + if w:rows.append(len(keys)+k*len(ws)+ws.index(w));cols.append(col);vals.append(1) + A=coo_matrix((vals,(rows,cols)),shape=(len(keys)+len(ws)*len(ts),len(patterns))).tocsc();b=np.array([len(groups[k]) for k in keys]+[dem[k,w] for k in range(len(ts)) for w in ws]) + res=milp(np.array(costs),integrality=np.ones(len(patterns)),bounds=Bounds(0,np.inf),constraints=LinearConstraint(A,b,b),options=dict(time_limit=a.limit,mip_rel_gap=0)) + accept=False + if res.x is not None: + xx=np.rint(res.x).astype(int) + if np.max(abs(xx-res.x))<1e-5 and np.array_equal(A@xx,b): + after=float(phi[cap-used].sum()+np.dot(costs,xx)) + if after=min(dem):groups[int(v)].append(i) + ws=sorted(dem);vs=sorted(groups);edges=[(w,v) for w in ws for v in vs if w<=v];rr=[];cc=[];dd=[] + for k,(w,v) in enumerate(edges):rr.extend([ws.index(w),len(ws)+vs.index(v)]);cc.extend([k,k]);dd.extend([1,1]) + A=coo_matrix((dd,(rr,cc)),shape=(len(ws)+len(vs),len(edges))).tocsr();c=np.array([phi[v-w]-phi[v] for w,v in edges]) + b=np.array([dem[w] for w in ws]+[len(groups[v]) for v in vs]);res=linprog(c,A_eq=A[:len(ws)],b_eq=b[:len(ws)],A_ub=A[len(ws):],b_ub=b[len(ws):],bounds=(0,None),method='highs') + assert res.success;xx=np.rint(res.x).astype(int);assert np.max(abs(xx-res.x))<1e-5;assert np.array_equal(A[:len(ws)]@xx,b[:len(ws)]);assert np.all(A[len(ws):]@xx<=b[len(ws):]) + helpers=defaultdict(list) + for j in js:helpers[roles[j]['width']].append(j) + for g in groups.values():rng.shuffle(g) + for (w,v),n in zip(edges,xx): + for _ in range(n): + i=groups[v].pop();j=helpers[w].pop();assignment[j]=i;used[i]+=w + newcost=cost();assert newcost<=oldcost+1e-6 + if oldcost-newcost>1e-6:changed+=1 + trace.append(dict(pass_number=it,cost=cost(),changed=changed));save();print(trace[-1],flush=True) + if changed==0 and it>=2:break +print('gain',initial-cost(),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/search_columns.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/search_columns.py new file mode 100644 index 0000000000..c795771863 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/search_columns.py @@ -0,0 +1,101 @@ +"""Large-call-block nomination via knapsack column generation and integer patterns. +Baseline columns guarantee a literal feasible point. All final integer equations and +owner assignments are checked; separate unchanged physical admission is mandatory. +""" +import argparse,gzip,json,math,random,time +from pathlib import Path +from collections import Counter,defaultdict +import numpy as np +from scipy.optimize import linprog,milp,Bounds,LinearConstraint +from scipy.sparse import coo_matrix +ap=argparse.ArgumentParser();ap.add_argument('--input',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);ap.add_argument('--passes',type=int,default=12);ap.add_argument('--block',type=int,default=12);ap.add_argument('--seed',type=int,default=263);ap.add_argument('--limit',type=float,default=5);ap.add_argument('--rounds',type=int,default=30);a=ap.parse_args();rng=random.Random(a.seed);plan=json.loads((a.input/'PLAN.json').read_text());roles=json.loads(gzip.decompress((a.input/'OWNERS.json.gz').read_bytes()));N=len(plan['order']);bins=[];eligible=defaultdict(set);lookup={} +for key,(cap,times) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(112): + fam=rep*896+(2*plan['pairs'][str(ch)]+plan['sides'][str(ch)])*112+port;i=len(bins);bins.append((rep,ch,port,cap,fam));lookup[rep,ch,port]=i + for t in times:eligible[t].add(i) +bycall=defaultdict(list);assignment=[];used=np.zeros(len(bins),dtype=int) +for j,z in enumerate(roles): + i=lookup[z['owner_replica'],z['child'],z['port']];assignment.append(i);used[i]+=z['width'];bycall[z['time']].append(j) +cap=np.array([z[3] for z in bins]);phi=np.array([r*math.expm1(.0016775*math.log(73/r))/.0016775 if r else 0 for r in range(49)]) +def cost():return float(phi[cap-used].sum()) +trace=[] +def save(): + offsets=Counter();out=[] + for j,z in enumerate(roles): + i=assignment[j];rep,ch,port,cp,fam=bins[i];out.append(z|dict(owner_replica=rep,child=ch,port=port,copy=rep*112+port,family=fam,offset=offsets[i]));offsets[i]+=z['width'] + assert all(offsets[i]==used[i]<=cap[i] for i in range(len(bins))) + a.out.mkdir(exist_ok=True,parents=True);(a.out/'OWNERS.json.gz').write_bytes(gzip.compress(json.dumps(out,sort_keys=True,separators=(',',':')).encode(),mtime=0));idle=Counter(int(x) for x in cap-used if x);H=Counter({int(r):n*N for r,n in plan['provider_registry']['gauge44']['actual_paid_profile'].items()});H.update(idle);(a.out/'PLAN.json').write_text(json.dumps(plan|dict(profile={str(r):n for r,n in sorted(H.items())}),indent=2)+'\n');(a.out/'SEARCH.json').write_text(json.dumps(dict(seed=a.seed,cost=cost(),idle=dict(sorted(idle.items())),trace=trace),indent=2)+'\n') +initial=cost();print('initial',initial,flush=True) +for iteration in range(a.passes): + begin=time.monotonic();B=a.block;ws=[4,5,7,8,9];occupants=defaultdict(list) + for j,i in enumerate(assignment):occupants[i].append(roles[j]['time']) + if iteration%3==0: + t=rng.randrange(N-B+1);ts=list(range(t,t+B)) + else: + choices=[i for i in occupants if cap[i]==48 and 0>k&1 for k,w in enumerate(p));known.add((g,p));patterns.append((g,p));costs.append(phi[v-sum(p)]-phi[v]) + baseline=defaultdict(lambda:[0]*B) + for j,i in old.items(): + k=ts.index(roles[j]['time']);assert baseline[i][k]==0;baseline[i][k]=roles[j]['width'] + for g,key in enumerate(keys): + add(g,[0]*B) + for i in groups[key]: + if i in baseline:add(g,baseline[i]) + def matrix(): + rr=[];cc=[];vals=[] + for col,(g,p) in enumerate(patterns): + rr.append(g);cc.append(col);vals.append(1) + for k,w in enumerate(p): + if w:rr.append(len(keys)+k*len(ws)+ws.index(w));cc.append(col);vals.append(1) + return coo_matrix((vals,(rr,cc)),shape=(len(rhs),len(patterns))).tocsc() + lp=None;pricing=[] + for rnd in range(a.rounds): + A=matrix();lp=linprog(np.array(costs),A_eq=A,b_eq=rhs,bounds=(0,None),method='highs');assert lp.success,lp.message;dual=lp.eqlin.marginals;before=len(patterns);best_rc=0 + beta=dual[len(keys):].reshape(B,len(ws)) + for g,(v,mask) in enumerate(keys): + dp=np.full(v+1,-np.inf);dp[0]=0;parents=[] + for k in range(B): + new=dp.copy();pick=np.zeros(v+1,dtype=int) + if mask>>k&1: + for wi,w in enumerate(ws): + if w>v:continue + cand=dp[:-w]+beta[k,wi];where=np.flatnonzero(cand>new[w:]+1e-10)+w;new[where]=cand[where-w];pick[where]=w + dp=new;parents.append(pick) + reduced=phi[v-np.arange(v+1)]-phi[v]-dp-dual[g] + for fill in np.argsort(reduced)[:2]: + rc=float(reduced[fill]);best_rc=min(best_rc,rc) + if rc>=-1e-7:continue + rem=int(fill);pat=[0]*B + for k in range(B-1,-1,-1):pat[k]=int(parents[k][rem]);rem-=pat[k] + assert rem==0;add(g,pat) + pricing.append(dict(round=rnd,columns=len(patterns),added=len(patterns)-before,min_reduced_cost=best_rc,lp_gain=oldcost-float(phi[cap-used].sum()+lp.fun))) + if rnd%10==0:print('pricing',iteration,pricing[-1],flush=True) + if len(patterns)==before:break + A=matrix();sol=milp(np.array(costs),integrality=np.ones(len(patterns)),bounds=Bounds(0,np.inf),constraints=LinearConstraint(A,rhs,rhs),options=dict(time_limit=a.limit,mip_rel_gap=0));accept=False + if sol.x is not None: + xx=np.rint(sol.x).astype(int) + if max(abs(xx-sol.x))<1e-5 and np.array_equal(A@xx,rhs) and float(phi[cap-used].sum()+np.dot(costs,xx))=0) and len(set(matching))==size + helpers=defaultdict(list) + for j in bycall[t]: + if roles[j]['width'] in width_demand:helpers[roles[j]['width']].append(j) + for i,j in enumerate(matching): + assert adj[i][int(j)]>0;adj[i][int(j)]-=1 + if i=min(ws):groups[rem].append(i) + vals=sorted(groups);patterns=[];c=[];rr=[];cc=[];aa=[];ws=sorted(dem) + def enum(rem,k=0,pat=(),left=B): + if k==len(ws):yield pat,rem;return + for n in range(min(left,rem//ws[k])+1):yield from enum(rem-n*ws[k],k+1,pat+(n,),left-n) + for g,v in enumerate(vals): + for pat,rem in enum(v): + col=len(patterns);patterns.append((v,pat));c.append(phi[rem]-phi[v]);rr.append(g);cc.append(col);aa.append(1) + for k,n in enumerate(pat): + if n:rr.append(len(vals)+k);cc.append(col);aa.append(n) + accept=False;status=-1 + if patterns: + A=coo_matrix((aa,(rr,cc)),shape=(len(vals)+len(ws),len(patterns))).tocsc();rhs=np.array([len(groups[v]) for v in vals]+[B*dem[w] for w in ws]);res=milp(np.array(c),integrality=np.ones(len(patterns)),bounds=Bounds(0,np.inf),constraints=LinearConstraint(A,rhs,rhs),options=dict(time_limit=a.limit,mip_rel_gap=0));status=int(res.status) + if res.x is not None: + xx=np.rint(res.x).astype(int) + if max(abs(xx-res.x))<1e-5 and np.array_equal(A@xx,rhs) and float(phi[cap-used].sum()+np.dot(c,xx))3:continue + for G in interval(lo2,hi2): + nb=b[:-1]+[list(F)];na=a[:-1]+[list(G)];value=score(prev,after,[nb,na]);stats['frame_assignments']+=1 + if value is not None and value>best[0]+1e-9:best=(value,[nb,na]) + if best[1]: + w['B'][i:i+2]=best[1];changed+=1;r=dict(sweep=sweep,B=i,entropy_gain=best[0]-old,before=[a,b],after=best[1]);trace.append(r);print('improve',sweep,i,best[0]-old,flush=True) + # Consume the complete window so all successor frames used here remain unchanged. + for e in best[1]: + for q in M.registers(e):cur[q]=tuple(e[-1]) + i+=2;continue + for q in ra:cur[q]=tuple(a[-1]) + i+=1 + print('sweep',sweep,'changed',changed,flush=True) + if not changed:break +lp=Counter({int(k):v for k,v in original['report']['local_profile'].items()});lp.subtract(promo.chain_profile(original));lp.update(promo.chain_profile(w));w['report']['local_profile']={str(k):v for k,v in sorted(lp.items()) if v};(P/'SWAPPED.json.gz').write_bytes(gzip.compress(json.dumps(w,sort_keys=True,separators=(',',':')).encode(),mtime=0));(P/'SWAP-SEARCH.json').write_text(json.dumps(dict(stats=dict(stats),trace=trace,profile=w['report']['local_profile']),indent=2)+'\n');print('profile',w['report']['local_profile'],'stats',dict(stats),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-calls-SEARCH.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-calls-SEARCH.json.gz new file mode 100644 index 0000000000..1558e0af06 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-calls-SEARCH.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-pairs-SEARCH.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-pairs-SEARCH.json.gz new file mode 100644 index 0000000000..b4174193a3 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-pairs-SEARCH.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-triples-SEARCH.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-triples-SEARCH.json.gz new file mode 100644 index 0000000000..620bfc974d Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/t16-triples-SEARCH.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/uniform-blocks-SEARCH.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/uniform-blocks-SEARCH.json.gz new file mode 100644 index 0000000000..91898cdf72 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/discovery/uniform-blocks-SEARCH.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ADMISSION-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..5e425431ee --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ADMISSION-CONTROLS.json @@ -0,0 +1,102 @@ +{ + "status": "PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS", + "valid_receipt_kappa": "418655624469341/250000000000000000", + "input_sha256": { + "owner_audit": "f20ff5901bfe41cddf5c62d59f8c5361323f7e49b78c17d97173e9db5b3baf0f", + "fresh_invoice": "ef4775a3cd6bb1d52b9f43924b9bb1b378d52662c67e373fed20c1d5728caeb5", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "assembler_sha256": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a", + "rejected_controls": [ + "empty_certification_maps", + "failed_invoice_status", + "nonboolean_precision_check", + "wrong_owner_role_count", + "understated_physical_stock", + "changed_profile_same_rank_mass", + "insufficient_finite_C0", + "missing_finite_check", + "wrong_reflected_orientation_selfconsistent_totals", + "missing_selected_call", + "wrong_selected_primitive_sum", + "wrong_selected_coefficient_work_sum", + "unpaid_wrapper_factors", + "wrong_global_compiler", + "wrong_global_adapter_maximum", + "understated_exact_prefix_and_global_sum", + "wrong_global_prefix_sum", + "wrong_row_prefix_reserve", + "wrong_parent_geometry_charge", + "wrong_rebased_geometry_charge", + "wrong_complete_pervertex_envelope", + "wrong_prior_added_complete_invoice", + "wrong_finite_router_bits", + "wrong_finite_literal_bits", + "wrong_finite_physical_stock_bits", + "wrong_finite_row_coefficient", + "reordered_complete_calls", + "understated_explicit_idle_remainders", + "understated_actual_chart_types", + "wrong_cross_replica_role_count", + "old_no_cold_wrapper_counts_selfconsistent", + "gauge44:missing_provider", + "gauge44:missing_backward_orientation", + "gauge44:unpaid_scalar_primitive", + "gauge44:wrong_local_artifact_binding", + "gauge44:false_dirty_restoration", + "gauge44:wrong_declared_provider_count", + "gauge44:wrong_local_compiler", + "gauge44:wrong_local_adapter_charge", + "gauge44:wrong_local_primitive_bound", + "gauge44:forged_provider_and_call_program_hash", + "gauge44:provider_at_wrong_call", + "gauge44:synchronized_forged_source_recipe_hash", + "gauge44:synchronized_forged_phase_review_semantics", + "gauge44:width_order_swap_4_5", + "gauge44:width_inventory_shift_4_5", + "gauge44:width_order_swap_4_7", + "gauge44:width_inventory_shift_4_7", + "gauge44:width_order_swap_4_8", + "gauge44:width_inventory_shift_4_8", + "gauge44:width_order_swap_4_9", + "gauge44:width_inventory_shift_4_9", + "gauge44:width_order_swap_5_7", + "gauge44:width_inventory_shift_5_7", + "gauge44:width_order_swap_5_8", + "gauge44:width_inventory_shift_5_8", + "gauge44:width_order_swap_5_9", + "gauge44:width_inventory_shift_5_9", + "gauge44:width_order_swap_7_8", + "gauge44:width_inventory_shift_7_8", + "gauge44:width_order_swap_7_9", + "gauge44:width_inventory_shift_7_9", + "gauge44:width_order_swap_8_9", + "gauge44:width_inventory_shift_8_9", + "gauge44:cold_helper_width_swap_258", + "gauge44:cold_helper_width_swap_270", + "gauge44:cold_helper_width_swap_282", + "gauge44:cold_helper_width_swap_294", + "wrong_owner_receipt_hash" + ], + "discovery_accepted_controls": [], + "exact_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "conservative_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "recurrence_model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "scope": "Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ALL-T-BOUND.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ALL-T-BOUND.json new file mode 100644 index 0000000000..9f090c044c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ALL-T-BOUND.json @@ -0,0 +1,320 @@ +{ + "status": "PASS_ALL_T_K8_EIGHT_ENDS_SIGNED_DUAL_UPPER_RELAXATION", + "scope": "All positive integer replica counts, fixed k8-eight-ends local word and widths, nine calls and 896 live wires per replica, whole helpers and fixed 8/16/32/48 bin inventory. Geometry, time windows, finite invoice and physical realization are relaxed. This does not construct a supplier at the upper bound and does not cover different circuits, split helpers, banks or recursion geometries.", + "dual_bin_vectors": 1163, + "upper": { + "8": 2, + "0": 0, + "1": 19, + "3": 7, + "4": 1, + "16": 4, + "7": 8, + "9": -4, + "2": 13, + "11": 9, + "6": 14, + "12": 3, + "5": 20, + "32": 8, + "23": 12, + "14": 16, + "24": 6, + "15": 10, + "25": 0, + "17": -2, + "18": -8, + "10": 15, + "27": -12, + "19": 11, + "20": 5, + "13": -3, + "22": -7, + "28": 7, + "21": -1, + "48": -13, + "39": -9, + "30": -5, + "40": -15, + "31": -11, + "41": -21, + "33": -23, + "34": -29, + "26": -6, + "43": -33, + "35": -10, + "36": -16, + "29": -24, + "38": -53, + "44": -14, + "37": -22 + }, + "mass_per_replica": 14886, + "signed_price_per_replica": -1516, + "credit_per_replica": 120750, + "normalized_idle": { + "1": "4830/37", + "48": "11374/37" + }, + "equality_requires_replica_count_multiple_of": 37, + "formal_profile": { + "replicas": 37, + "idle": { + "1": 4830, + "48": 11374 + }, + "profile": { + "1": 802698, + "2": 156510, + "3": 133200, + "4": 47286, + "5": 27306, + "8": 2664, + "48": 11374 + }, + "live": 33152, + "deficit": 11840 + }, + "root": { + "lower": "0.001677439307436958060407", + "upper": "0.001677439307436958060408", + "lower_endpoint_residual_upper": "-7.165557323887778785768752731151789163461434423745050014105092712391722E-25", + "upper_endpoint_residual_lower": "2.208949712543933086598241758261259374146103439385099009575538615409054E-24", + "strict_rational_signs": true, + "moment_minus_one_at_current_k_required_rate": [ + "-0.002868210397509756783047247734855166954785062699089510653289217732617588", + "-0.002868210397509756783047247734855166954785062699089510653289217732543403" + ], + "nominal_k_ceiling_interval": [ + "0.001674630216885732254823811454999806731188804931657462201207578344343768", + "0.001674630216885732254824808108543759323031049934251622148676467909962791" + ] + }, + "two_engine_signs": { + "lower": { + "endpoint": "1677439307436958060407/1000000000000000000000000", + "mercator": [ + "-19318304329242517924136477334430575903388627/26959946667150639794667015087019630673637144422540572481103610249216", + "-19318304329242517924136477334430575903388625/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "atanh": [ + "-179139/250000000000000000000000000000", + "-143311/200000000000000000000000000000" + ] + }, + "upper": { + "endpoint": "209679913429619757551/125000000000000000000000", + "mercator": [ + "14888291610150543160058167584886320592106685/6739986666787659948666753771754907668409286105635143120275902562304", + "29776583220301086320116335169772641184213371/13479973333575319897333507543509815336818572211270286240551805124608" + ], + "atanh": [ + "2208949/1000000000000000000000000000000", + "44179/20000000000000000000000000000" + ] + } + }, + "supporting_inequalities": { + "mercator": { + "credit": { + "8": 200, + "1": 925, + "3": 375, + "4": 100, + "16": 400, + "7": 475, + "9": -75, + "2": 650, + "11": 575, + "6": 750, + "12": 300, + "5": 1025, + "32": 800, + "23": 875, + "14": 950, + "24": 600, + "15": 675, + "25": 325, + "17": 125, + "18": -150, + "10": 850, + "27": -225, + "19": 775, + "20": 500, + "13": 25, + "22": -50, + "28": 700, + "21": 225, + "39": 75, + "30": 150, + "40": -200, + "31": -125, + "41": -475, + "33": -675, + "34": -950, + "26": 50, + "43": -1025, + "35": -25, + "36": -300, + "29": -775, + "38": -2050, + "44": -100, + "37": -575 + }, + "multiplier_interval": [ + "527289478560402204778844752935969138086672393831043079332227806743/1558621916694646363129186809718322398319647411928126846563802467532800", + "527289478560402204778844752935969138086672393831043079332227806749/1558621916694646363129186809718322398319647411928126846563802467532800" + ], + "strict_margin_by_rank": { + "8": "8486901947971658789180094374908643044319825097428584470421428167919/7793109583473231815645934048591611991598237059640634232819012337664", + "3": "33971101278237518525730497912140735362623464860858962088302903641671/62344876667785854525167472388732895932785896477125073862552098701312", + "4": "5990670703673619500744242184297763241089403947690285107201502921327/7793109583473231815645934048591611991598237059640634232819012337664", + "16": "2498261577639333990469334033209016540469679269674148270468879208695/1948277395868307953911483512147902997899559264910158558204753084416", + "7": "14447733579801614840865383455738443451656118148657836476422918253669/15586219166946463631291868097183223983196474119281268465638024675328", + "9": "77369091434931962927456233910667070493886869610824652391782051143457/62344876667785854525167472388732895932785896477125073862552098701312", + "2": "2288093128703414881190620219072160641122285654990031618261074859983/7793109583473231815645934048591611991598237059640634232819012337664", + "11": "69383409999608465688916192175171572903180391749655864234198650740693/62344876667785854525167472388732895932785896477125073862552098701312", + "6": "23482722752538503243698522970974272785871539400484522125041392640913/31172438333892927262583736194366447966392948238562536931276049350656", + "12": "9667002924844478752572179203684015641474030512994175319805782887383/7793109583473231815645934048591611991598237059640634232819012337664", + "5": "17648638583207562649119045395209951647763986221954370125332870906803/31172438333892927262583736194366447966392948238562536931276049350656", + "32": "1510200310624804933262049372374874528788527479718158491515931697405/1948277395868307953911483512147902997899559264910158558204753084416", + "23": "66598892558305484542731254209837216067867948157744025112126113263975/62344876667785854525167472388732895932785896477125073862552098701312", + "14": "33352809468061869871604332648329132965469901207566014240009730182757/31172438333892927262583736194366447966392948238562536931276049350656", + "24": "2217497230368994674862009327176703530546490115447397966486198389205/1948277395868307953911483512147902997899559264910158558204753084416", + "15": "36746305111161376263288997490559168229097386657350604413711560737161/31172438333892927262583736194366447966392948238562536931276049350656", + "25": "75111670818360597223496727570920686716613437460393783662955586328213/62344876667785854525167472388732895932785896477125073862552098701312", + "17": "86081914015555576930256093590818308084135898597500682240083061225627/62344876667785854525167472388732895932785896477125073862552098701312", + "18": "45961888157176147842054490738068221232940779287450575629255004103247/31172438333892927262583736194366447966392948238562536931276049350656", + "10": "3810820768149230633405272224739326304904942217426389755498685070849/3896554791736615907822967024295805995799118529820317116409506168832", + "27": "82820320121603479136819769122308637050198934168018889250396206321237/62344876667785854525167472388732895932785896477125073862552098701312", + "19": "36088266696741050176919583069083479246854902378918105332654195576293/31172438333892927262583736194366447966392948238562536931276049350656", + "20": "4842169279086723464705929825088331995547345168790949002760576070405/3896554791736615907822967024295805995799118529820317116409506168832", + "13": "42434632681061338464795105929532179370972994615929011153233230803379/31172438333892927262583736194366447966392948238562536931276049350656", + "22": "21832347472856089253124965917994930109519248893572757342838503438851/15586219166946463631291868097183223983196474119281268465638024675328", + "28": "15270556356093799620234406651303414009807850953743048705834124238781/15586219166946463631291868097183223983196474119281268465638024675328", + "21": "82521663381394085600090221708880367115700607674984683929013278845223/62344876667785854525167472388732895932785896477125073862552098701312", + "39": "4888006995019388295949688463921848543495092617328513604550220222593/7793109583473231815645934048591611991598237059640634232819012337664", + "30": "33847053320482453565222098666767184515273113058795248319198677670453/31172438333892927262583736194366447966392948238562536931276049350656", + "40": "1276830841712223925061310206813957402304777579761773990253439317457/1948277395868307953911483512147902997899559264910158558204753084416", + "31": "35373082608015323283329855016403299999583292101970658892660565707689/31172438333892927262583736194366447966392948238562536931276049350656", + "41": "42487693134034990914168745569484284752355084030919163583914751133977/62344876667785854525167472388732895932785896477125073862552098701312", + "33": "76369595722974135337790537721176477506276396726375506242404154418087/62344876667785854525167472388732895932785896477125073862552098701312", + "34": "39475399990725441021393309000181200144571225628068058620376265725799/31172438333892927262583736194366447966392948238562536931276049350656", + "26": "39531279800738276871677603697052591987718018525046201442668753902691/31172438333892927262583736194366447966392948238562536931276049350656", + "43": "45381744400918680122651098936723919836867530654023962724727518984829/62344876667785854525167472388732895932785896477125073862552098701312", + "35": "28037252277238896749217473634817594692891686868281007384348425038929/31172438333892927262583736194366447966392948238562536931276049350656", + "36": "14591181200339878688163324097288704605917581392948106188549301648585/15586219166946463631291868097183223983196474119281268465638024675328", + "29": "22446153921070135810916652844372148172062446560597518507573017799601/15586219166946463631291868097183223983196474119281268465638024675328", + "38": "21960166992652332988097817050329970712334466641501467974307218582499/15586219166946463631291868097183223983196474119281268465638024675328", + "44": "5335624008187920861027116474182438184920321041488581399320265093635/15586219166946463631291868097183223983196474119281268465638024675328", + "37": "15128889034639945236095521739431954779589723643758075314718341812097/15586219166946463631291868097183223983196474119281268465638024675328" + }, + "minimum_strict_margin": "2288093128703414881190620219072160641122285654990031618261074859983/7793109583473231815645934048591611991598237059640634232819012337664" + }, + "atanh": { + "credit": { + "8": 200, + "1": 925, + "3": 375, + "4": 100, + "16": 400, + "7": 475, + "9": -75, + "2": 650, + "11": 575, + "6": 750, + "12": 300, + "5": 1025, + "32": 800, + "23": 875, + "14": 950, + "24": 600, + "15": 675, + "25": 325, + "17": 125, + "18": -150, + "10": 850, + "27": -225, + "19": 775, + "20": 500, + "13": 25, + "22": -50, + "28": 700, + "21": 225, + "39": 75, + "30": 150, + "40": -200, + "31": -125, + "41": -475, + "33": -675, + "34": -950, + "26": 50, + "43": -1025, + "35": -25, + "36": -300, + "29": -775, + "38": -2050, + "44": -100, + "37": -575 + }, + "multiplier_interval": [ + "1287684615238881573701234209628369916488365798955309524318668635785891169093658098917527809471865709623456897720289369435897315952228871570389237514040230238118166701143788119975047062454815572349326143531456902093155009738630709294073872493284254107165295290089472155886859357016663085088393011281709950424422151765238396555513355312267602962109528456159968386365313898895042216072992979625125810002431263261661845800567176032870172011450924858366916199704507119021450336820506756778899471396342074258952903041727707521023249441978556248771469641959437461157593539617295338522644776116864512408755130096604580338969927556537819011523798479187909482920394321873030166392146931262648921567948459/3806283919378311452857285912558435389411746540694330002478835695001180283725261688232421875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "958529022647713183068647178883437847126024431230223489337896357746295597126105878603801274492126878654073018453218014138255524960071231695126621205701347811047995278517476240218693602102074998054927235483951438449874379714231487716366814703879154586267704060056789806947824298874118582186591584964409101532366675443166007917406406915817577479657739114507748363818239694318181692703150173948957076717419671357677749125443429778314200127345259784934811644631200670338290178346794599861373565722710719829983180350142408957081551151194483116297898405237960581821769437668121571780669945736936778006914902878717108443236130862039577496840346882625007384776048291814826852886614534641554069774177236557/2833328566626207622426159699688600062373628113633404404085886199027299880981445312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "strict_margin_by_rank": { + "8": "10606112554885537063094138500611711954661939719273321746574954159914013148422466122081497530794799108699113661623158767379494033922331088975208098653146956843193858153341068045738463610082727176355269261610211466310446477115353971119804735073394600670609726584285133334524842266680368141380491735301736532235307322979826186392155413676090211984076596127826980072679703349739747440593595850728977039837045527992008860758463533999567949074957551709262740314398074015078982191994464708978569042114881930499986575740936909233451318191938307882076911075812903823811246954962716029857798063645074229417560652689985258260303617590951794523421836761556786233055598767835665471098786170012441098144903510939608211432222088104529331201714488395038384323468085073/9739077687191663017162780968545239868123691306180634100927889627886251082164784309188396496086746336866928534074395429342985153198242187500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "3": "14151270038592189073175848052970812257686534873739533279599764680546578933028912891004512302967072599800554690211490143429857060900694762185715403209943239054792845634407690953985994320320788777543138551993801094865669784554638078347934665152143754976305662550918604649139575955656062888386216315885930570444586357118587946536812237244198210030010587384094352971076424305353358439908038883256821233411231913846759141078891792742811611596056072396946959254176317301576181848822859546540103649962672646054406142216354495027727279394072784991387437434139558012745996456765157119956733055369540294939539371888394442536969999581106433487753733859223399532791357993056134898742887133115806253057393526176968965109636885946325068101390729846829086139467916437/25970873832511101379100749249453972981663176816481690935807705674363336219106091491169057322897990231645142757531721144914627075195312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "4": "14973126389801888851086131654300779421408805382102717268883196276070948742981417940289304510492315584108650140828931844345517359602419157011925940254139208377035428195794235761386346567110082073227074742636167054968714839337341898158630503017095958062257022374532444294398146228112354773681425753510372860606338796666383034076136783051646302026887229027383382149613825913644289485978393695036067215472211486480798357546235962786062855051570721622079129389118361194600664939323485798598115988997950868106879830758906891501802421312775271420690123377672464436403709866617298369819139085794444145325217227557235372016582543686553191185493902892730906217294607272377488415074835251747625422531593855964336551406528178290321978146645019381574689829684297553/19478155374383326034325561937090479736247382612361268201855779255772502164329568618376792992173492673733857068148790858685970306396484375000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "16": "12488346700091826185181810340873910370633308481412942622271991713309364850037538325262750968267014945871164816181465417561574403485534099523142224797272660569432229260900811051814725876939304250102198940459469103109122567703023017835741909737275374899474505144515176877531367698383675427325186650331447496126636944331018572331257886989220153484325561691747765725581099111208751909126650272157364465520588849584682718904092354102606665386488958985181742235730176799269393270454460524433173396372491283860034949715604005611602798424876487862897260457258937759889705110878921504315419034689908211830577785583383625924847861977966843101696827512079673747610369533407749309355972720664378490569416150837867268542305528332530570632126623962090015015337743313/9739077687191663017162780968545239868123691306180634100927889627886251082164784309188396496086746336866928534074395429342985153198242187500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "7": "28888617203265369088688795481275578789294038715464281700320948599378817814813774772166611152941537792375258417801798877087620515172951219371564800124371202601238498180295832419148777720139191983167394056204575754275165208255269548821574170432427786251525325255180975300395777296210325451327117691979991536879976005891012023782741786288380238068257231754390182284144233981963081539582191202987781239354694647083877911601215505232419202185998366170863877159034714402052956742564030067043373396825501858480923587780242979986198430691132328855394927530606630009759644407438540480936896354008783253385054103425908636880528172073828141379388055420017342376689880181082028482623178440336499729270721729662031371221926787114240336525927211387381816457424159427/31165048599013321654920899099344767577995812179778029122969246809236003462927309789402868787477588277974171309038065373897552490234375000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "9": "23451677123600827564008291626304824966533122683022365950294680064267290754241584462421172131706779980134921235627338011107869281679998422627526675650630731164658920268615048241387493417368063114682005803364820465902114909226828000259246821978331757890883039684288208418660154026620323825758406338647000949961484866910262532842513353780000340189137161491100858356692907676911212420936647491630090591208057937697878430868992902419285197235528537901893283932785792386510766632700494625544200700830194564234691522452778931465459191602029741920626354044659961565466023113895421706442055189939668609701079423403084104050117639906596973066474478056612073911597817937214766321043894907526421400999768003823/18897622950028562073822355270108304672764259188707849321397952735424041748046875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "2": "11437753567961762213415919274766468816187345424305009924914334506014414674699389661127132693789016009628916721808346351364032014289088326216403265405039489124320398541325212139413510261484486214620567736690043752410499614040244671076441907067761142977637665429386854240073108908104252223134357911497741556245149565108880796506744364162039819710428626084265393645957158307435173336053745290664732054103595953858181004183381765194454430379000604847425455613671953928986140054322618540529305588045161738500808455466003419350645828457051606197793730458509384927677788982093486823985280655961444811392304884802333386868196370711844700418057216612397209415586370048744348915369964096016546676637318691939038644263668619500275038934968856565808004503919238941/38956310748766652068651123874180959472494765224722536403711558511545004328659137236753585984346985347467714136297581717371940612792968750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "11": "630608745235403939084793539048585947142050417209716375149579947631829665363007069142235663499996787217099390844618115629866131300614774363442727925316002880048220487975053133175454018565709657753005519560338250651983904203266233016331367786239656628665598852432500265252201237037000020149949414478400045292509383333031417569328571737374517948407135233913499513604349273932804028771765966188212391390870951531786487444066283574901370120689927651277296027757292093989979564530595311741587879415343423659431402939673409302047211389119236645014226551720252029036872642092413881888025920268851396046934571401604788762576404308791847042963037954273854612438164280055102987718330731041434236820337105170546390365738739686661951223311514398948086711185777873/566637247254787666453107256351723046872651130541418711326713578349745517507769268898233977954137968690439478346146643161773681640625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "6": "19564296617339811857225451026319639302129564914663409772899614686237458886430670548264174723909545400001914169793508420328805710452793493114014628283548600348733563745068301274974212076806533012310845786473182280025253979634031987310401721562435667237492010734694665680422288615731588019854427450480560310373639840977898021517321245629005831444353623343532939552427657882156752565487698107346599990437625843465469313449779077492859527243282437657718551769241242530841625476759566139259599843687235214768329566385595324258908937291657935343851563039527394743422908060244450481851662349705579896009902912644939218062934740889149079184751748500101321918844344542669479053805756959662725680898699591057246006216112694504586937182839640313507109608291424809/25970873832511101379100749249453972981663176816481690935807705674363336219106091491169057322897990231645142757531721144914627075195312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "12": "16107852110284271504443425270682678370490594090937766996856213841025710001371991342829302608390951605457873790835338509183918519936757838049429952634698879874676554840290494473067117428308993841854561708574200617293645164403605377078168902487998856666897166563886267556071085134118881234962274173643566657651723061145802168452748984788298400236258738011041226399901066405988409603841307616446956847291347755261737453936377624344796938805269875495530018328354161112166761065400501670055349516021456194819468708388684513149838175762880715747407814924515428900419336767469749570977180199572887237108790622768117969051643872892782073046845213849780562501853601676833558381573202285396555555461263066068238773371242246905855345689610941413486861192918286561/12985436916255550689550374624726986490831588408240845467903852837181668109553045745584528661448995115822571378765860572457313537597656250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "5": "3393164384392827565265459186945936806405760824219794734049128091243611310590082033375187754195233162535342651193403592030566078242126343073676697940016436821427463538506385545635326584022867317621647439684419576446413979564610780097595763453841373280965332645995444139568570302537494520981488893907408884404124077630966980206364282266375653519931582914550541292091481342027693148191312804942820027023135645982439258199041738404780182460516715688322062072266214549379178243698559948954796599349777187552411855572182573057610375226830537502630842990417759065478305522529938597391371952124698820394549281018938413201993523981156678783731316202809495034313627902331987333297239894802086678942596490807134915581767455735134134852424319385835830157513979037/5993278576733331087484788288335532226537656188418851754417162847930000665947559574885167074514920822687340636353474110364913940429687500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "32": "3774605756753882549506131060233376497423603531683851294587076545512914754048554764680434951200859485569151811912842570518230015760055029921513854702463270591793859457604758577515267584494836628224340714005454611010111406089510677075620533805811307758697895534699541773376541690904198887604859224747628872270124995905063259695359381432652465572298430867871456514038315546408189628962018969564118972872066486271906818011383361465197343239764733271907151817829170348171065724134101304037149196700675072149807177748724945343749019963382992005168233041042562182314942213170972379111504916770203189433479035177685322422063075346156731964246627487478256212590330063868871857573171386576656079673553073829503244437570504027436801307325957200495031026444314481/4869538843595831508581390484272619934061845653090317050463944813943125541082392154594198248043373168433464267037197714671492576599121093750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "23": "83228880789995851564407974412338087638308023161144056796837308778146630281875776264162081438628000330155396842592942730886010095414510650816283710826072050528897186193662865749851316279561012550776416757187445931595554114728651749220101711948527422102013972466354959858940305236059566891101231953996516592630925230541040780801661703769197791948247682253377854083629063897706466901738046726739117114601855585921603572907432829927169931879022039742779844692711958711847014236764322921731502726243170630556793611866105536218664101961596222498851558136977833217409656470323235615553968298068522711942192517619622495526264220198655509745792171993173565859992972662091763509427681055985119885972609600541792983262664095966883776111776719114877295827969359891/77912621497533304137302247748361918944989530449445072807423117023090008657318274473507171968693970694935428272595163434743881225585937500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "14": "83362257136589108308191942768366666514005474852764512215829621244772496944730251008227086670346327877561165393727862578194803235400519676988420182554311162882402054697711392332390992903063757585337075229972663806114591371887325208424633081783755481070581418530605619388092431714258950757327162393712436048076173178940867613816536308751733203582963149272393809034610568356888558639496297726642862148271075832163963807218881678555287249748258545545303970237574048611641282341729823633513292129204582094640211361712781553807111895461814558555353970040397052275439508016165860809557386496917906457057037961914733249665297725021840559479075502782860667392652994010946567602878134288105850653363423330683162372603201084157820345306053168969133525822704045151/77912621497533304137302247748361918944989530449445072807423117023090008657318274473507171968693970694935428272595163434743881225585937500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "24": "7389905169046668486647349017855829834266546368341013612293705057393394143270423339937291280568922211326922612148510787249923007290046187868329009041546257549964916805550736789272390470164610951592623089211046907994619469003796544934844339382663096132045719483231159853048316780946401986486530799670016705122281538746565240546046882815136151397565177511798682173701118045209152546045174583935576430124413548960239220057826188391102846910064610204970541614328396226776997402129631189725335737449399391522957452196721765307778708943040699589439062826250082400255763554493936637382140184275577969920236814136103333203066514881734400901171908582793600241816408535034805587367624601526830715195697213094432029767285664937515556549369490566545227662736247601/6492718458127775344775187312363493245415794204120422733951926418590834054776522872792264330724497557911285689382930286228656768798828125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "15": "61229323393371472201464048533780306941380174145797466054970918431801804396724601436448283551124562299985525705354778872789066045425124673240791993563164294635588978893740345402210255666304410880052574462780525800064880206749544928622084779228599708670941970944729476793179724215435936028361590577441122515587043459833012852714007870526074680949882187733439490356276876433005731073574407985349858386092657079243965173015766019236178397897865096885907999469755088275024589505749298187570079230094045951599493484878282208248596387469555026053824320324612768358187690697943328450899865877717785881856635995261372510378588209391068749920053271067300628718882937949641459912213519940077970390885380136527196627806910598001951650729160696646982625224304114253/51941747665022202758201498498907945963326353632963381871615411348726672438212182982338114645795980463290285515063442289829254150390625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "25": "93867331067191005811597727326149089768440601388657646846247403323135322348048548456095164259885886440713999546744563919277453325129869878280153934927137088501739386284245776363947723799088801112012131603245049384515798054029705583195680662690807980275131922408349482682776752589591154406351717870880578945504857707591482850584118382753855003922635553155843485459601921860794219294911964439181965845600476837307844075061105998403924103358723209118168553346046821114675113956036356903964540811845461196112639791519075641529080469264215721517060523783159926709934759534524579083881380020826411289309848777312250202440855098256178959037590895110341881243789557457781051160849357953363468409648021636524217319523090945285503090693426855827313266136444589853/77912621497533304137302247748361918944989530449445072807423117023090008657318274473507171968693970694935428272595163434743881225585937500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "17": "215153768615687591126409554018407685395329785167352470060370928130084021725553584758063627665147254201645716859731155283492952186621705277016478737399031283840070585208224149449815350430461661383562958132883067155808043897742762146061274010614796767205103312858395710864479211806911561695852049244302307435398868203553498899322080697101051053676230989021157870557567463005284980302295631453533990121791346259817662441759938361839458546935460069657369485913380385702763650848008623166366666368199309934157438939603800594402009668217356541119285811121136808374795047080061021427923584126217904126940441096277210629857914896118803211943247485459167483966469821092501621930353391937083273288612698734255878183829081810056868245677282332840944481010672542377/155825242995066608274604495496723837889979060898890145614846234046180017314636548947014343937387941389870856545190326869487762451171875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "18": "6129950217423049359810806771177358649744094033812357842915067806779614033069248322703824734729475122575390505279626201810860352221384739572108037490156369925254205080886028112584518086483950562826007780511458363404569155734850976482055787399689054297861322516981777861710333684591603907107015335808728062459778475548151686117661658204784719186890180343224819869973346325854044345838015469318754885215394552845078704307777118419969889816016530090279168862483323140410639301088871635591441196060590904560474473759974424250104351178085976753254120380243402449058044871379461974680346149632117693992695237481585431411827146982089866193898705004507961797783303927168593343904004885987308834365619837581/4157477049006283656240918159423827028008137021515726850707549601793289184570312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "10": "38099173753876929779119821887924966615577511770100922569011432570344152594189570933178475518959651182064327455473075319616704817457778570817249642836133897679681051170773733659325015240589944018005210891987611652895441187749859214969825620005126258225005412219457308144118340690740837137113202135982399649086327232919424175589105850673858641287647567968787446652761962015542888105635508412917876691588929964749830497575744520510145966654798374252381947235529084982079621630728347388488303543082968267368577915303855704332108513677774795883195504036885589566118471364034841288906738930910674926837009713042023629306825164594135428942485968199736479005735411632642613451162948721685030492308970045661317792361052035407524602591741806100845614459855344737/38956310748766652068651123874180959472494765224722536403711558511545004328659137236753585984346985347467714136297581717371940612792968750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "27": "56181690822169191306586521567620631217452987710088519903994423814000884633306388283159692943792353629985325667864922417815971565116997785892845029822614306490221927008989698483103793402251245907234343547556142101783457621473635914689617196377761113416125541313973032635842835449139291112805663564276524859278614742105679531595042404667084744494734442039924318625699045649591561144572156945265211962681426141785293020235251789913403826975282894266881088641734723819978975813237497221649382588676930405931392888947087660165044752245163294114458801568811799905135296658743197843568905900295540860219758677684312836985711842451353355590398067328050724142272818761154165192479003668702518516122471/42292043548647905031747621250649282104574961563270333360875952166679780930280685424804687500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "19": "6938406080022754598531208190218523017683862474481525844512789178733404965492071433036988660720165941315905065461592449286826120683582811810887798528807093942914511753464350764578003314365786553363723866417488403351909791470170049269707231967970290024851235796343809747453203960827638966251101935607521219315375216485657097337696944163657401302716162294021662344790661619818101018468534682149099785281042796542683845820952238931072933331369310481130455273099165429693046448455869915643693794133454486691674886865770521365918621674332233036861379245425177280821974827160061132697779191040477494206468624461233417018587396399678559471542497470121333945004505932801129713343388197726410958417870540305010874713707202853615168446286925526206209455800476491/5993278576733331087484788288335532226537656188418851754417162847930000665947559574885167074514920822687340636353474110364913940429687500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "20": "4841021394958079067094110170072694611468142564475206087870248416837519430342312574078817799136765419816060727460631621042857064269534323253860676248544502425302815792369476716520392030379414817001073573695783778076432392489041154460199637238299274677913543776583142802007764663195012080868425328817799345098020803497564530531840812806901778694257607746111849761614700686467204210395564710961090165564372804952253726715766814944862935641394621846772155089685521694075222846657985085551343943778392007794146897128429368475128994704981711582688830224176551415580858462717063267184316894486127920076848641265848521136728743509760793454171542154384623091264096964312664890764824312028406022101236309869497277831338267253800090853631258896742973656838063953/3895631074876665206865112387418095947249476522472253640371155851154500432865913723675358598434698534746771413629758171737194061279296875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "13": "212122865658003821984161359812237561767503748484911343577591777168329388222183844376903415005501364459248005551790450088682377907016344864152259957412719259808706040520341563716625495818809373225908367849553187146224884957996164056700545128200236791917952598930778600174871079845367161980730630250545391845344190172203704057343845488895668131649074909187561860305479008153520702335258246570153521610418803294625092674783363509788062381479857813580893426213704417574797042153536625203557422828653260339114642276189913219251603747832007237678505852449390590300270592438055790850391898656877835736025900235525417659503537911482958071903078393869665006072751591062023864587139720017639582314683688873330681707602127167539391812609952174623640531867460777429/155825242995066608274604495496723837889979060898890145614846234046180017314636548947014343937387941389870856545190326869487762451171875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "22": "145589322484344386644915870371724290485108299546469760706382456812933774211759112066636523012316526904233885359913751514822855980720768412049367649019931840330019373021197544233492756147960249105556499077881570945628929467131318981011051733967377778425611695828844696172253433929315692114306313023649296077205294461916839263957271899035082074887896239838715923654106135463423915434253854433843678938322758974486161073232725671510383290406327274476417990208471265638822603078670983491730901771312731335213243640827441925669779567518803447765727902428181356604253824806153569484242259141271272087684752336552023241508826627995566397589307103662946869117104936754335252342153541707608874691663789747807/103936926225157091406022953985595675700203425537893171267688740044832229614257812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "28": "38167340799114989494192011166546642192253901631695538614353666341249554478494277914373170171851121225474346184025612096383069258798664776285848027554709259677947878478149043506557478681591390048781895610382521975449487500398927773609874536197788121722055606246506421005383097909121639491113821395662562493863381896661762092197099511779546814249006843598075115653586084211338949886317293752486475851919329645304570658376276522271505708760611463012603798430211577231949557138018354177195184695231450747019698708830884264161535792538335604231564396872441847811465270556178926158036012044785878974268745788893001496771490108551133017433503980182049335319745931280451380516247910799579356346556238085846925673733931735517618294769418021159022927626176064967/38956310748766652068651123874180959472494765224722536403711558511545004328659137236753585984346985347467714136297581717371940612792968750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "21": "34375875335310859283923820590673108329152641955360040286004095251883401406045323262954360129314030409456482057588448091611707298800011075102375173310718924983555094109071860301205134598281748149393322449508967765651221318075043787814984957795783560003316705982690718836094046486561763379144239747490940268279658184682457848250869594398776801683742458829556336158625055727305042296381056411614216190507191736064371906366317007444115126912250431971032998287494325471928556081777462945600434362492248065222738088781693600591755858789029876217213949189981730818555507736415302340322410216558453858114701209091750801186016833284596317700714119164126376256492767010034350427736675121164733609448135235418141274777728441852179446493486771542900133574073832947/25970873832511101379100749249453972981663176816481690935807705674363336219106091491169057322897990231645142757531721144914627075195312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "39": "130315953189512896448844801998915186676284783499507042373129653186585868507339927482955371322977070929892222365920660740939394057762801539372604623801733098619937075346927127500924880146322100707488306993779019943827774905075484329273633889180389394894691864069852556518345740617096373908071343312754663466481947883210277982742199971694455477774463389244769135778227361257332729193555492743280276884885361338884080549074879250467605696600137591622387522068293847681714709245540984421749607210957886133866308651518746027545768134840349077790155203380512200580879814337676227584557724851567608323016344891569368351821199239599213389914217454154539296016590251763925055634632513048990283311885439057299999550265079480637016079021459789403521646591231589/207766990660088811032805993995631783853305414531853527486461645394906689752848731929352458583183921853161142060253769159317016601562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "30": "28199191284718096609919064769827700137028937352187346051845398022410703726877559740666399781792847270649140460632963892774010835127041698275130098108560889805753088047173930254288437025273072685681973275186467882694332584745708794523661502905499296880905646855570719576748034974103257756442165663169443137097658051110564636751380512204572430696376217375428473896290790021449857982452267618414956393941558593147539403131454686248398344207531595278856557880027521262233050468627345434316933589597002092340276783279251289973457139668747519312686054418238600609415514457907072564622514800984827764193689331423315796294704379298276431379050499126704827939371529240275805157860918536943570444018058426953859726995578129366143397575805217784963492582170762557/25970873832511101379100749249453972981663176816481690935807705674363336219106091491169057322897990231645142757531721144914627075195312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "40": "5676376529615560521487218475239041443539994229472512523788274141838117915250791476273138859530648421884116719829360126329049412768751734824934923879205034809248116122360191715779710570704194557529871648825748130889851266937169364243799125838279426163532022007193650830928951823764707674645886347576070435664136921517264612019232528123529996902002420016554746863805012365659122266556901165479573755615703070424031368316547634975617874980901812875856780124735828930944096673413607709721185143179450270363650683493548760844913754563944294159570076490578119246187880896546113042222097854868588154921500390772421611397602468211067676826721036164941559931655838071983601856346193871191203060835569651531/8661410518763090950501912832132972975016952128157764272307395003736019134521484375000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "31": "57589333272586942726375296567336247137374845292751271608349528483273610865359410843968015447269616977889146743548070666558294524373268266298641317688126883382380018707627357275244364321053370030281236651210833112446837872235670939953230482028159290338232840427759185367928946712730873978375387400422146756085141636238394011737484875237313968875786465704484832136158813758082844427792811155124357361846312934049305477049887596871822752249237058907614595835255941563065316885180455691579203796071838708591545573557654378410314576603187858913143865662890520019299883175902630358800095481187732954212057364023005169020697373041788244374436602134374418654081327892238141504246898124544778880413487901/50750452258377486038097145500779138525489953875924400033051142600015737116336822509765625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "41": "4292875628695589710768547513461315059375451564970521534387420881202215003668362379691482281348518831488454770172037424738704892347247999451485188910281423718526944973702584182936281192028406551714791574193616736726237803955720101051558341482886738953682577454100003054637312020945242052243835059036976289507701008405483790121922071030169772378853528199453580151946306462775511583899452650212978378464969393469176418096167961412435831369580806522591727196970753194398129204490794708624204682046617912711234472935295121416099673241138813112963985529801885199016177864491408236138197866667109296503096022502216666668780874615859658533336180023208726927029828582673022100611618182381897659857513614501/6299207650009520691274118423369434890921419729569283107132650911808013916015625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "33": "298879620606746713571043644543568957811870182859260179550089051231130702855770273010044260615920787819170768426949945106863763180707378961854645707379116310282148354301985342187313292542496995875643470616604214693891913592514673773496469799976458744951102778876566800345205815962161778804872907269877949799923437081975901645593685294676918414905512666577565483346699689297131619163772880126077973600250718188804147338837659459255429977781272161427521891517416050881117479380743659155292779985679879845202103708973896604871377951019531600081664551228524973457271958737469957898559584302451013622254809365545526306495693141465144084190837535003154808395521703983809011957628649240957711690596631/243992558934507144413928584138361242911009393634251923235822800961614120751619338989257812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "34": "131621135716020376715839570095606789077444726578319686344213676835615604993664762989875188506892853053356291071795231103541154274976795422671893736346187984248424528015342147539650343135763018060990751357352370594411034991029881987346046323783288055980616846911758642653885614621955032437525831026428146581162429531512450002661427585428893325191200106633963232875241453531008968641907294504245587907899177462326190832352891889349985676381150291787941905386847481959133979570070037641974126908298644440709226250369507368549829530320329995281191288725947582495583228197081045500415695715341540255591925781991229312055927357633599849997106068491007960148834827152031865586616313868931411633813685521629/103936926225157091406022953985595675700203425537893171267688740044832229614257812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "26": "790438170395986563626233925211669535105170852961642666469448151025399708064749056911817314013410010060866376557220657735972172649936741383273996757897520929283765660687102421076949219131989946129542133773401583455442254579497063150279605415274698620604088154836180661405899969531481550608772008917692123444169089034868493072945441070928055415958920391744642443280311462535187220342626440579123834098171541073392087776107732749170925513569788114654026271005262430959220883881604189134495520133098009364803180151471879330094497744310818431605548454433304990967849278413192708940482852699293819469015500184675539810502183890477938859549283114313356726803911259350527343066829910580171621785999651627284034996144236114466812287171455785737337671188322553/623300971980266433098417981986895351559916243595560582459384936184720069258546195788057375749551765559483426180761307477951049804687500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "43": "12313997961657518881802508943861193219330707395593653866292685182370663777114964720053252616698441261124960745508494801669957832285794844500017891273506420497335713786228248073423684842000124249952133275452788159587418218405887440236937374683808913115352329259965651087257879598957651434048904755222679879695508993658149946150401002289964333069291510837517966187008766509520921978116194081667292567424712628596338186618371197210487347180186791194970927748873318328396529659735388615646285393687295958967662588507490299217813750393332454827713732055927114795773312654950958566056187023039623402890325293347818213179550713316564078299827378252890762500970423553695821394289921317164158883798323467/16916817419459162012699048500259712841829984625308133344350380866671912372112274169921875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "35": "186966819231915551959442499236163046025766945871649148972586154737306199863247179512077418594397282539738807970781273777014556695880073782713546651677790398984969124992472594604199352498160466339216184128166827888671086754154433766852964845367967842259128123640104800709830099913922768056471383285813746725779573176915571420963700303873467503043476964736993500650657779494231056298977361825106716183011838492568940519836099807084964318726030204562358526286404810049478903965820587418019072011835663270174660504168639013901158873877184273189232513010771922514014636217719193475791326407176262215266004488311009940670040028533901649481242202966694581164456615455542275780711458262093502153222546953623/207873852450314182812045907971191351400406851075786342535377480089664459228515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "36": "48650750631486812915892304816385646811715788833773388155390929695869632473789500392717330983213106075095212114948390348622294699191393709271888022755870225543860480997333363601493616678015830293518648564875789703717496258303092591326683913574493687776257391989781394545151715019768692905526809913316680677865459458091323731212897437458417256333367875477102195180565277483985093841437763572365745080585236023239718833054310819495279343838742602963847480857233995128141070192329836440090142314281043974678322542853317993307078804391461154558890264211865478266239172568080441974219327644196831046805642715750890680151099754324859461551526881285562214778425836653690558262118377449698948919663344045813/51968463112578545703011476992797837850101712768946585633844370022416114807128906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "29": "24362386001672801929627653148566068125192751205289158370032509495450320682173932271509438818229485869169615243720408943509265550195126358801564706929773329736057115827694916380462513537518243488311297918378405052883301058534779297801559195712639006579758711877411758509535644902472981906375435420012588303480820877120942153468386225360259903127104613836096422554307875039870617222670599358428766246417171438871738011658117693534689699782075882176261110662450269076533544940327837355628992768307391122924872394173154151890407689398525408915741825514456321875761602204350957609087004615466801504156405253995440901366066135961721987182242654432910493349620820002862189560578778527648000136739382349/16916817419459162012699048500259712841829984625308133344350380866671912372112274169921875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "38": "35752365426442980486227773956671797176289627874231063898172324053440722734611060173474017405935176537080757679802715868074623704753455885787224077221627349826112706529782199283870639658983142829527362535796943340712095427280006135513126911276754340203445905008807978270699097666492553335422306422862669243463664923628392356140776438740725733582182538789597390552394401934357384327935791261470301403049318625584064360784654584022950377800388510146692632184296620677769618922596465612895985504309547833686395465125024305160834571532750681271861163897045099604760594418272413590728899706561562973026878132268168893833423759569794310585433575520953221648125492672539778045253824114822286517937976097/25375226129188743019048572750389569262744976937962200016525571300007868558168411254882812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "44": "17790342640640918938012154634620165928589599435739826559277616565120279676849439726827524145144214898478061786183441257808556612777569413127255625536548298799952006888987362956290552890925027133847914145981468454248823034688609261025858826807600293979797485201815907762444610517165620949443220808402991874794008293898468161611768849610091929223497487414707182531019428214702205628888133401446103734080660021376062984862151205889035310711232472408538168047193114812302443435835937753441834310755025068507734871206881556468584136803067733836173094497791491882295919859055383035185455147251204251704961824831580768244459639917304759025777058091470890503452591771605686653917819412845952846027756191919/51968463112578545703011476992797837850101712768946585633844370022416114807128906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "37": "201774427347542919477964300267738785980867168919458734758234696962941634143281467902658960380812160351841053959759989779343144497225089093822933322852749192178555941203338645860607893722858117664115153368301189247765320137361896113528402423917725854257002656563865994800067882218273596077841581176741182855153986886403005879808758718792721781889603926258050698957863286428024807937092570473765508340123012805295853963018057941651845164631400839087799086937803627898693444042926270695205399710588081277244226272011170443665235455124470205879252238016835384924536106458768562907975280173484693674525692302623918302701659555637251399145724800572219135723678912186226573949214926625744230051450716366001/207873852450314182812045907971191351400406851075786342535377480089664459228515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + }, + "minimum_strict_margin": "11437753567961762213415919274766468816187345424305009924914334506014414674699389661127132693789016009628916721808346351364032014289088326216403265405039489124320398541325212139413510261484486214620567736690043752410499614040244671076441907067761142977637665429386854240073108908104252223134357911497741556245149565108880796506744364162039819710428626084265393645957158307435173336053745290664732054103595953858181004183381765194454430379000604847425455613671953928986140054322618540529305588045161738500808455466003419350645828457051606197793730458509384927677788982093486823985280655961444811392304884802333386868196370711844700418057216612397209415586370048744348915369964096016546676637318691939038644263668619500275038934968856565808004503919238941/38956310748766652068651123874180959472494765224722536403711558511545004328659137236753585984346985347467714136297581717371940612792968750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + } + }, + "kappa_strict_rational_upper": "209679913429619757551/125209679913429619757551", + "kappa_strict_upper_decimal": "0.001674630216885732254824808108543759323031049934251622148676467909962791", + "all_T_grid_upper": "418657554221433/250000000000000000", + "all_T_grid_upper_decimal": "0.001674630216885732", + "source_sha256": { + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/k8-eight-ends/PLAN.json.gz": "a3e9e390da3136655606ac919ec60696e2f704457ff01ef9e4d07e90534ab2d4" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ASSEMBLY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..ef1b6046d0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ASSEMBLY.json @@ -0,0 +1,345 @@ +{ + "status": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY", + "kappa": "418655624469341/250000000000000000", + "kappa_decimal": "0.001674622497877364", + "complex_lower": "1677431562510593854067/1000000000000000000000000", + "complex_decimal": "0.001677431562510593854067", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "gain_over_pr635_percent": "2.345680406223590805998995952928008956963701150685827899165660527306050", + "complex_profile": { + "1": 347112, + "2": 67680, + "3": 57600, + "4": 20448, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "provider_counts": { + "gauge44": 144 + }, + "surcharge_model": { + "complex": false, + "bit": true + }, + "conservative_complex_lower": "1677431559645429414343/1000000000000000000000000", + "conservative_complex_decimal": "0.001677431559645429414343", + "conservative_kappa": "1674622495021787/1000000000000000000", + "conservative_kappa_decimal": "0.001674622495021787", + "conservative_moments": [ + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "1677431559645429414343/1000000000000000000000000", + "accept": true, + "mercator": [ + "-36544005432906980847694743028739186647280391/26959946667150639794667015087019630673637144422540572481103610249216", + "-36544005432906980847694743028739186647280389/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-13554933269914660014271/10000000000000000000000000000000000000000000000", + "-13554923269914660014129/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "209678944955678676793/125000000000000000000000", + "accept": false, + "mercator": [ + "10581956890568868917392722321602114679632155/6739986666787659948666753771754907668409286105635143120275902562304", + "21163913781137737834785444643204229359264311/13479973333575319897333507543509815336818572211270286240551805124608" + ], + "base_two": [ + "1962532091305621283977/1250000000000000000000000000000000000000000000", + "15700266730444970271957/10000000000000000000000000000000000000000000000" + ] + } + ], + "conservative_bootstrap": [ + { + "exponent": "1674682296858175723774861771763209850435511223689802546406539362886650445749969626852025878351/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "2749262787253690568135550805230504135074433310197453593460637113349554250030373147974121649/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4762883878920" + }, + { + "exponent": "1677426947945264316244428459209782018941538134637405331048093863352345236481458953651149223975145780162902916774157693549196411403833907411607/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4611700165098098568863358658335629047522362594668951906136647654763518541046348850776024854219837097083225842306450803588596166092588393/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1692701480206849501" + }, + { + "exponent": "1677431551909618013785409515579537961409704700213730786461716518595969929700587794458250946213067594379657329282449613524840815257513218295886626330450569866292573032225609969168206949520799/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "7735811400557587806988902393160880956786269213538283481404030070299412205541749053786932405620342670717550386475159184742486781704113373669549430133707426967774390030831793050479201/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "601576350365328084034559" + }, + { + "exponent": "1677431559632453120160237114362353803163722907842722391354298782132899976675973597841654642424124708306940151943462317062464035601718613923083607331547045658802340567805210942915251530489875626362788904507162045720714732219727136932579943/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "12976294182760208206086551406862749157277608645701217867100023324026402158345357575875291693059848056537682937535964398281386076916392668452954341197659432194789057084748469510124373637211095492837954279285267780272863067420057/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "213796767800217328421977078037" + }, + { + "exponent": "1677431559645407647497607917199511332849123789962025159032942392535589888560329828626024831927686117503284188511698739424237539981629224461653954006596458597153002980600819661770359669043932646685726030635500306144893791528841893524061237986221604075236260570494446939719624913481677551/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "21766845389405368929021721461867037974840967057607464410111439670171373975168072313882496715811488301260575762460018370775538346045993403541402846997019399180338229640330956067353314273969364499693855106208471158106475938762013778395924763739429505553060280375086518322449/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "75982139081866559043941639269558094" + }, + { + "exponent": "1677431559645429377830603912457267997213040314717076136633084103377205416715765442495877437320888337291962297472595694467514550776531515127594690319942252744848742865397300072108400806282068927586759101728916481889989214057061158115689537847055672892671570459447346128102969112440624682341903103167934791278578824158656804196899486007/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "36512393410111172357357545342282923863366915896622794583284234557504122562679111662708037702527404305532485449223468484872405309680057747255151257134602699927891599193717931072413240898271083518110010785942938841884310462152944327107328429540552653871897030887559375317658096896832065208721421175841343195803100513993/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "27003614314931869102243524175252189385902" + }, + { + "exponent": "1677431559645429414281750281544130071664916515766385189628927659281547910700114039941130690152022390264301013698391798103743042053471350411655718443161842114718523528211174027401000338157854632697927655981778202657934235054463863823427327612268707380594709872700813956337769852176558599114429988730952585471454454522092288994181625699545992771376510488652626367642445377064266401599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "61247041024310282905669141233614810371072340718452089299885960058869309847977609735698986301608201896256957946528649588344281556838157885281476471788825972598999661842145367302072344018221797342065764945536136176572672387731292619405290127299186043662230147823441400885570011269047414528545545477907711005818374300454007228623489511347373632357554622935733598401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9596928895143710184551547660174616814311727832" + } + ], + "conservative_outer": { + "bit_positive": "1677431559645429414281750281544130071664916515766385189628927659281547910700114039941130690152022390264301013698391798103743042053471350411655718443161842114718523528211174027401000338157854632697927655981778202657934235054463863823427327612268707380594709872700813956337769852176558599114429988730952585471454454522092288994181625699545992771376510488652626367642445377064266401599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "61249718455869928335083484233614810371072340718452089299885960058869309847977609735698986301608201896256957946528649588344281556838157885281476471788825972598999661842145367302072344018221797342065764945536136176572672387731292619405290127299186043662230147823441400885570011269047414528545545477907711005818374300454007228623489511347373632357554622935733598401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "29572568440354570585657/1000000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "61248041024310282905669141233614810371072340718452089299885960058869309847977609735698986301608201896256957946528649588344281556838157885281476471788825972598999661842145367302072344018221797342065764945536136176572672387731292619405290127299186043662230147823441400885570011269047414528545545477907711005818374300454007228623489511347373632357554622935733598401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "1677431559645429414281750281544130071664916515766385189628927659281547910700114039941130690152022390264301013698391798103743042053471350411655718443161842114718523528211174027401000338157854632697927655981778202657934235054463863823427327612268707380594709872700813956337769852176558599114429988730952585471454454522092288994181625699545992771376510488652626367642445377064266401599/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "30625697943714786882248852367088949315607835275741811035132608957093936471899504981889434281494252970518743274278023185970244521461132413991149891612856148141614549444600894825063573009449056525665580400424049866488994128100700773566468490977205290538495668621593401256741343404375883822871887168942586455494658604681525706600738937299386362171548687978355451826867642445377064266401599/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "838715779822714707140998463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "499161284220177285292859001536659494609596956023867088949315607835275741811035132608957093936471899504981889434281494252970518743274278023185970244521461132413991149891612856148141614549444600894825063573009449056525665580400424049866488994128100700773566468490977205290538495668621593401256741343404375883822871887168942586455494658604681525706600738937299386362171548687978355451826867642445377064266401599/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "1677431559645429414281750281544130071664916515766385189628927659281547910700114039941130690152022390264301013698391798103743042053471350411655718443161842114718523528211174027401000338157854632697927655981778202657934235054463863823427327612268707380594709872700813956337769852176558599114429988730952585471454454522092288994181625699545992771376510488652626367642445377064266401599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "61251395887429573764497765983896354501144005634967855685075588986528591395888309849738927432298353918647222247542347980142385299880211356631888127507269134441114380365673578476099745018559955196698462873192117954775330321966347083269113554626798312369610742533314101699526349038899591087144659907896441958403845754908529320912483692973073178350325999446222251027367642445377064266401599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "1677431559645429414281750281544130071664916515766385189628927659281547910700114039941130690152022390264301013698391798103743042053471350411655718443161842114718523528211174027401000338157854632697927655981778202657934235054463863823427327612268707380594709872700813956337769852176558599114429988730952585471454454522092288994181625699545992771376510488652626367642445377064266401599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "1677431559645429414281750281544130071664916515766385189628927659281547910700114039941130690152022390264301013698391798103743042053471350411655718443161842114718523528211174027401000338157854632697927655981778202657934235054463863823427327612268707380594709872700813956337769852176558599114429988730952585471454454522092288994181625699545992771376510488652626367642445377064266401599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "30625697943714786882248852367088949315607835275741811035132608957093936471899504981889434281494252970518743274278023185970244521461132413991149891612856148141614549444600894825063573009449056525665580400424049866488994128100700773566468490977205290538495668621593401256741343404375883822871887168942586455494658604681525706600738937299386362171548687978355451826867642445377064266401599/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "499999999999999999999999500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401", + "epsilon_below_one": "838715779822714707141373463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401", + "guard_width": "838715779822714707141373463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401", + "K_geometry": "375838715779822714707140998463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401000000000000000000000000", + "K_dominates_log": "838715779822714707140997624624725567688336835134447710179001761680282056053816706650741339269911530150719522812442218928986238615156258308282725997282141864032036078631665312990799441705290718031084568605100388075229244663148959582567531537479699650483397998016922810162277897846897575948549195091292737770529369572400817920389164267205643235985716557359218319354157912760581847559494529103310914089050227867642445377064266401599/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401000000000000000000000000", + "record_suffix": "838715779822714707141373463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401", + "phase_local": "6709726238581717657130486868008263300509644668189825064969746914750089378807888443951083783966614995277493482841982448135355035695210096006491014347054214966093986837341672275999497595593084454255639557538956992395570181860180610517144572640774794235518118561176485776392808217495743767151359791260661551010426159389802712731926554034434963289780543996263513784153317096912093684771421031985671464224239034867642445377064266401599/4006709726238581717657126987706724043123224351809063288405475137317794065511718939128343248508224803960144884525748045976235850053805775814512238043828310940688070800867097150814867083604443192841399491415924407547794675356796607601068088046975194393811468252072182357675692034651027252789946069252764992929417024902648459308356042731162547794347194088501604909102627610496173156385385058860436983485868787208000000000000000000000000", + "phase_boundary": "1341945247716343531425696702629028801930163220939194340589637060514836969432737141276484977386771827161585862243545667146674992650589444396700579284405462415637346143663951624105830712038530181136046424799430954159829896422894529662674135060619279186343516903430599635839180496673941535194504389048667207476806237271035266047092369104396727812025273194979586502051228699973568576463373943636084675529209268467642445377064266401599/801341945247716343531425397541344808624644870361812657681095027463558813102343787825668649701644960792028976905149609195247170010761155162902447608765662188137614160173419430162973416720888638568279898283184881509558935071359321520213617609395038878762293650414436471535138406930205450557989213850552998585883404980529691861671208546232509558869438817700320981820525522099234631277077011772087396697173757441600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "999999999999999999999998499161284220177285292859126536659494609596956023867088949315607835275741811035132608957093936471899504981889434281494252970518743274278023185970244521461132413991149891612856148141614549444600894825063573009449056525665580400424049866488994128100700773566468490977205290538495668621593401256741343404375883822871887168942586455494658604681525706600738937299386362171548687978355451826867642445377064266401599/2003354863119290858828563493853362021561612175904531644202737568658897032755859469564171624254112401980072442262874022988117925026902887907256119021914155470344035400433548575407433541802221596420699745707962203773897337678398303800534044023487597196905734126036091178837846017325513626394973034626382496464708512451324229654178021365581273897173597044250802454551313805248086578192692529430218491742934393604000000000000000000000000", + "prime_interval_packing": "838715779822714707141373463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401", + "alpha_positive": "1677431559645429414282246087965230958091380811392358760863393926404540245018684097693647402798012025168830088530947965958467495340878235122312481475821009450040886187018809164849184892260689823206020995595651331549563664262724909716078537409378998876916929507039717519623782229225304174691807851686916853947657482403458231464894505662524117529384977620059831957182609224782226395732626886657933849822648628867642445377064266401599/1001677431559645429414281746926681010780806087952265822101368784329448516377929734782085812127056200990036221131437011494058962513451443953628059510957077735172017700216774287703716770901110798210349872853981101886948668839199151900267022011743798598452867063018045589418923008662756813197486517313191248232354256225662114827089010682790636948586798522125401227275656902624043289096346264715109245871467196802000000000000000000000000", + "alpha_below_one": "999999999999999999999999500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401/1001677431559645429414281746926681010780806087952265822101368784329448516377929734782085812127056200990036221131437011494058962513451443953628059510957077735172017700216774287703716770901110798210349872853981101886948668839199151900267022011743798598452867063018045589418923008662756813197486517313191248232354256225662114827089010682790636948586798522125401227275656902624043289096346264715109245871467196802000000000000000000000000", + "alpha_below_one_fourth": "248741926330265927939288190643705021737110141176674096764478802155957588849463749597827805628966038222340225194328304907556273133021982753284702396263448424342963538867174762761080007833017009729381447217899624140187603545537063065350676965526570650736299836247471679835106969936463899124679821476610895204140906574012070475307358165035135119617314652911290474861731616431228595878353939292119377618044150571632357554622935733598401/1001677431559645429414281746926681010780806087952265822101368784329448516377929734782085812127056200990036221131437011494058962513451443953628059510957077735172017700216774287703716770901110798210349872853981101886948668839199151900267022011743798598452867063018045589418923008662756813197486517313191248232354256225662114827089010682790636948586798522125401227275656902624043289096346264715109245871467196802000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "499159877331858638043949293479237282300811476843645056595103333509842209214745237213999998761734767044151236088163462579712295822592588000512380005307130978119266650427707518276736311258074514697559400294563636651701370411237202064252586614231825625451459353719499106034159344921251673893973033955927459086321001492063676418172517258102300533665752039350247660158729105247402022474904177569528517167616677872161616985593695953214878908046895999948661293763919249579178603601105748399637251270636080995416252984383954576090565145149474938822196831363540336115578339080947673713675767553282891871143034223023225555686771012277226667914262411253773584993042464253030433830272018913365486471229940909620689995630808247717959115747148966258790371312329088342607375551805755377536086020483949756801/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "28053677809908653741257021404169939684453938935895126697265317269751484452492484665079922482238572998575761249334702558394188285484777903671615145439070257702670496849026043642135539426862095867892627486902551612048554718379182141780197534798804813949219596417110476477103433956508812549387952682406632937570555995450963644253720690380684720847949793341528863458776443764167168439184921384368849803951883942183397072663868807200795203/4006709726238581717657126987706724043123224351809063288405475137317794065511718939128343248508224803960144884525748045976235850053805775814512238043828310940688070800867097150814867083604443192841399491415924407547794675356796607601068088046975194393811468252072182357675692034651027252789946069252764992929417024902648459308356042731162547794347194088501604909102627610496173156385385058860436983485868787208000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "348880133022019522344021460481983063923609973988726747939877346015932010673958095787070126515607271401892823598900317681438400829513706309642334882414418459177777951020022417884945896357059413195372013982591956256030956614126910580767289278748503247534622286027260205346900879015575118784537262151826194475574952944819101325150785475626509207295079466946234193469817132503384278532939501935220488541596637413/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401000000000000000000", + "coordinate_movement_above_kappa": "2809064623642414281750281544130071664916515766385189628927659281547910700114039941130690152022390264301013698391798103743042053471350411655718443161842114718523528211174027401000338157854632697927655981778202657934235054463863823427327612268707380594709872700813956337769852176558599114429988730952585471454454522092288994181625699545992771376510488652626367642445377064266401599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "348879632183303742521306753341109600583104583585682771806966295331539845949699906822202735472701207873792328580789751962932653800032449583920358068384662980638910365011172309497802044498673962639972908807655529265480013139792490981191339145237497375635323059593728696324106169554070787406130663408567537879950836767690988494093371931121167811976605173546973130769203494674932966511294953762088130986973701679401599/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401000000000000000000000000", + "bulk_exposure_above_kappa": "2809064623642414281750281544130071664916515766385189628927659281547910700114039941130690152022390264301013698391798103743042053471350411655718443161842114718523528211174027401000338157854632697927655981778202657934235054463863823427327612268707380594709872700813956337769852176558599114429988730952585471454454522092288994181625699545992771376510488652626367642445377064266401599/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "558207711996515455927719629630299438937270567978918820570892702941099052354074764294444811382065570714928022740129942571795694297740673369705758997833314056145577135623185760228769582312909610557196117197210703019098587108268637329651712712486599324156096431210084819532246696963415858676853020699663254565295808534582449289183843216497073336353652853714713646851093774176963533631058654923220424111931684127201599/801341945247716343531425397541344808624644870361812657681095027463558813102343787825668649701644960792028976905149609195247170010761155162902447608765662188137614160173419430162973416720888638568279898283184881509558935071359321520213617609395038878762293650414436471535138406930205450557989213850552998585883404980529691861671208546232509558869438817700320981820525522099234631277077011772087396697173757441600000000000000000000000", + "scalar_work_above_kappa": "2791040563337440398929456976714991048048374401506770007386107717443063920667406577331693621081952107687042093773091975733001459606628393751416702245285592194883356022151329234692423318998089855007577006685799223057696709438680865046562364096477020108377679061784550133752412322663096618897891498471350899208975507381424697770148870260506732263042161442170612485057923422198622916241871467308631550778150163570401599/4006709726238581717657126987706724043123224351809063288405475137317794065511718939128343248508224803960144884525748045976235850053805775814512238043828310940688070800867097150814867083604443192841399491415924407547794675356796607601068088046975194393811468252072182357675692034651027252789946069252764992929417024902648459308356042731162547794347194088501604909102627610496173156385385058860436983485868787208000000000000000000000000", + "dimension_above_kappa": "499161284220177285641738259558679016953618416505850152872925581824002489750912478624889104610429995292052015949888765654863342342174595704624371074035167442056326032306031315325919565569467018779770959930068862251897679562992380305897445608255011281540855747239480452825160781695881798748157620358979494668360134038995137062030447603423782850857386214563808593657251015634212548921644000145829655597205903534220488541596637413/500838715779822714707140873463340505390403043976132911050684392164724258188964867391042906063528100495018110565718505747029481256725721976814029755478538867586008850108387143851858385450555399105174936426990550943474334419599575950133511005871899299226433531509022794709461504331378406598743258656595624116177128112831057413544505341395318474293399261062700613637828451312021644548173132357554622935733598401000000000000000000" + }, + "conservative_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "native_correction_gain": "2.855577E-12", + "template_sha256": "45ee78ba5c995afcc8a43fbaeacf87fc7742c58efc8234b09c9eb8590eabc7b4", + "input_sha256": { + "owner_audit": "f20ff5901bfe41cddf5c62d59f8c5361323f7e49b78c17d97173e9db5b3baf0f", + "fresh_invoice": "ef4775a3cd6bb1d52b9f43924b9bb1b378d52662c67e373fed20c1d5728caeb5", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "moments": [ + { + "side": "bit", + "surcharge": true, + "endpoint": "1733427039589844234749/1000000000000000000000000", + "accept": true, + "mercator": [ + "-43100600330766044577088869872467188970742291/26959946667150639794667015087019630673637144422540572481103610249216", + "-43100600330766044577088869872467188970742289/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-799345163337715793503/500000000000000000000000000000000000000000000", + "-3197378653350863173989/2000000000000000000000000000000000000000000000" + ] + }, + { + "side": "bit", + "surcharge": true, + "endpoint": "6933708158359376939/4000000000000000000000", + "accept": false, + "mercator": [ + "22502934905675809315035333485365686073718547/13479973333575319897333507543509815336818572211270286240551805124608", + "5625733726418952328758833371341421518429637/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "8346798366759439729359/5000000000000000000000000000000000000000000000", + "16693606733518879458833/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "1677431562510593854067/1000000000000000000000000", + "accept": true, + "mercator": [ + "-34300859215146127395497590540224774237313381/26959946667150639794667015087019630673637144422540572481103610249216", + "-34300859215146127395497590540224774237313379/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-127229/100000000000000000000000000000", + "-1272289/1000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "419357890627648463517/250000000000000000000000", + "accept": false, + "mercator": [ + "22285486889945771898856683337123240162644789/13479973333575319897333507543509815336818572211270286240551805124608", + "11142743444972885949428341668561620081322395/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two": [ + "1653229/1000000000000000000000000000000", + "165323/100000000000000000000000000000" + ] + } + ], + "bootstrap": [ + { + "exponent": "1674682299713838122918954241052061165197356636788205036298213856960933254878190881007107559511/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "2749262796755731148043081516376324208789296211794963701786143039066745121809118992892440489/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4762883845997" + }, + { + "exponent": "1677426950810404939855677970088256294130182105986168420708599848536830324925625249452246759644729716365286035321462800278542074587267948118763/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4611700188914211319352480181195275963827013831579291400151463169675074374750547753240355270283634713964678537199721457925412732051881237/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1692701462723679499" + }, + { + "exponent": "1677431554774782400346230971889719032425493982382536268805246916207526291545858656772586651303988125296572761598985966344201565616696530767502245442244857879106152493514499444215797593440879/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "7735811453720766350678718456980651950617463731194753083792473708454141343227413348696011874703427238401014033655798434383303469232497754557755142120893847506485500555784202406559121/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "601576342096845584540343" + }, + { + "exponent": "1677431562497617559772895148972490539558574542299411189155076561699332829017983006344861936006230385580024508062358012415334940299654742545165639607545169843064536088442742561362786794559829972853101288718292896042272820695640031481795107/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "12976294294102173595946949847571390700588810844923438300667170982016993655138063993769614419975491937641987584665059700345257454834360392454830156935463911557257438637213205440170027146898711281707103957727179304359968518204893/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "213796764131288175116826572698" + }, + { + "exponent": "1677431562510572087221383969455879711741933289130112740555871585656300543379848444126439973301341443715825356278605068913149112349771545388239551720980490435196476579541837434084384224412923860201997916587102431308602671095671689778550609160392733330186286096867068443453889369247349831/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "21766845613353112557777664212643869887259444128414343699456620151555873560026698658556284174643721394931086850887650228454611760448279019509564803523420458162565915615775587076139798002083412897568691397328904328310221449390839607266669813713903132931556546110630752650169/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "75982137518385215151179502958408998" + }, + { + "exponent": "1677431562510593817554603474434660241448063423446600885356619914769715943874978485574969316698535292100110243374522561589788864349160880601682975384153426976242442216203180779458098202035931748532331027807173055855794625648965008824798918295883330441461851474242865646920342407184696359107357951853125451518554347580189960763888887323/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "36512393848133777247958082509553399114643380085230284056125021514425030683301464707899889756625477438410211135650839119398317024615846573023757557783796819220541901797964068251467668972192826944144205374351034991175201081704116669558538148525757134353079657592815303640892642048146874548481445652419810039236111112677/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "27003613667031681459882329822648620540745" + }, + { + "exponent": "1677431562510593854005750280704760252756012796684473279557112182561103026987876192359427974620209711366215688913754645372389405446314530266596813041058860198592701225398607702418818177581791260608679028196375808549828184353951107896007296780933163099249483066576449889831227268372034091715391088542704465290282696351993165367229032061158089592876053872346996813922573096797131707359/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "61247041863677236650133136315526720442887817438896973012123807640572025379790288633784311086245354627610594553685469733403186958941139801407298774601392297581181822418208739391320971803624191450171815646048892103992703219066836900750516933423550110168772731627965908284608911457295534709717303648006834632770967938841910407123946127653003186077426903202868292641/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9596928632099335412924885245356685813298537790" + } + ], + "outer": { + "bit_positive": "1677431562510593854005750280704760252756012796684473279557112182561103026987876192359427974620209711366215688913754645372389405446314530266596813041058860198592701225398607702418818177581791260608679028196375808549828184353951107896007296780933163099249483066576449889831227268372034091715391088542704465290282696351993165367229032061158089592876053872346996813922573096797131707359/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "61249719295239747243987203315526720442887817438896973012123807640572025379790288633784311086245354627610594553685469733403186958941139801407298774601392297581181822418208739391320971803624191450171815646048892103992703219066836900750516933423550110168772731627965908284608911457295534709717303648006834632770967938841910407123946127653003186077426903202868292641/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "29572568437489406145933/1000000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "61248041863677236650133136315526720442887817438896973012123807640572025379790288633784311086245354627610594553685469733403186958941139801407298774601392297581181822418208739391320971803624191450171815646048892103992703219066836900750516933423550110168772731627965908284608911457295534709717303648006834632770967938841910407123946127653003186077426903202868292641/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "1677431562510593854005750280704760252756012796684473279557112182561103026987876192359427974620209711366215688913754645372389405446314530266596813041058860198592701225398607702418818177581791260608679028196375808549828184353951107896007296780933163099249483066576449889831227268372034091715391088542704465290282696351993165367229032061158089592876053872346996813922573096797131707359/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "30625698363401128918920573908044064981696664732245170979341460932468573792922132193084514971097297523516663492531648621346965868876016215233915984113737207650789503910329768303362904719989677516346516502052642427804901437717772401483154474008555988247485615297049530592194286955916139388950367215091960020850774252117307196727340292858562751128306327655306493317313922573096797131707359/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "838715781255296927002998462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "499161284218744703072997001537079182384215847607408044064981696664732245170979341460932468573792922132193084514971097297523516663492531648621346965868876016215233915984113737207650789503910329768303362904719989677516346516502052642427804901437717772401483154474008555988247485615297049530592194286955916139388950367215091960020850774252117307196727340292858562751128306327655306493317313922573096797131707359/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "1677431562510593854005750280704760252756012796684473279557112182561103026987876192359427974620209711366215688913754645372389405446314530266596813041058860198592701225398607702418818177581791260608679028196375808549828184353951107896007296780933163099249483066576449889831227268372034091715391088542704465290282696351993165367229032061158089592876053872346996813922573096797131707359/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "61251396726802257837841209065807425203140573451693657485403364752754586482817276509976670514219974837321960769374383488048559348346586115937565371414433356441380415119434137999023390621801773241432424325077088479801253047251190851858412940720331043331871981111032484734498742684563906743809019039095377337236258221538262400289313356685064344167019779256740639637813922573096797131707359/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "1677431562510593854005750280704760252756012796684473279557112182561103026987876192359427974620209711366215688913754645372389405446314530266596813041058860198592701225398607702418818177581791260608679028196375808549828184353951107896007296780933163099249483066576449889831227268372034091715391088542704465290282696351993165367229032061158089592876053872346996813922573096797131707359/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "1677431562510593854005750280704760252756012796684473279557112182561103026987876192359427974620209711366215688913754645372389405446314530266596813041058860198592701225398607702418818177581791260608679028196375808549828184353951107896007296780933163099249483066576449889831227268372034091715391088542704465290282696351993165367229032061158089592876053872346996813922573096797131707359/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "30625698363401128918920573908044064981696664732245170979341460932468573792922132193084514971097297523516663492531648621346965868876016215233915984113737207650789503910329768303362904719989677516346516502052642427804901437717772401483154474008555988247485615297049530592194286955916139388950367215091960020850774252117307196727340292858562751128306327655306493317313922573096797131707359/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "499999999999999999999999500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/500838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641", + "epsilon_below_one": "838715781255296927003373462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641/500838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641", + "guard_width": "838715781255296927003373462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641/500838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641", + "K_geometry": "375838715781255296927002998462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641/500838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641000000000000000000000000", + "K_dominates_log": "838715781255296927002997624205036360487225389593493014200687551115362237064723520764196158452248847148376417497476495398615529591983322475950557647787476316414705362852131668365425730005654345433844746069514232813421786860852077561872614908798729651159273330892881729524915867857424477963793960529699157660580224979194995895288614698249907895232680557915689366178890399684986365245437205733230858174785958313922573096797131707359/500838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641000000000000000000000000", + "record_suffix": "838715781255296927003373462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641/500838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641", + "phase_local": "6709726250042375416026486864650759670976292137862184559328810897989646040209333294236916141901793921796784812699795412733998885144261782126521796565655362809777293474055971214809899202633345967310304413029586490198996171346483580567238304844774322840777192012832989811792516560778077763818433951838286181937927654473551275749333194933428757518141298507905750108280746106097840912024239747721553278252834445313922573096797131707359/4006709726250042375416022987703366540926273219140735647480146426682142038632165268312540251409656622942455323880231221619811866692059746811029224273048991870278128672127090102338793683968717361853573096762240082579869227867983578860577560788498257820788134764207931552094020115077623603755262445704352670884888397062279264319833193805983061542426181277657131497990973549378757548053461488619415225622946341128000000000000000000000000", + "phase_boundary": "1341945250008475083204896701957526929957716825273666575211669552276015134477118644204715014176495567832525708514818116884505531496464333303142378126461866587274355772383889343774952027659456484451827003237520426303613876959620492105189674046168066210269380646487748136576424498679194759608477388356149474027210004650139819882778150146979523577196276382200551715501906603091802469255048852189372779895761542913922573096797131707359/801341945250008475083204597540673308185254643828147129496029285336428407726433053662508050281931324588491064776046244323962373338411949362205844854609798374055625734425418020467758736793743472370714619352448016515973845573596715772115512157699651564157626952841586310418804023015524720751052489140870534176977679412455852863966638761196612308485236255531426299598194709875751509610692297723883045124589268225600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "999999999999999999999998499161284218744703072997126537079182384215847607408044064981696664732245170979341460932468573792922132193084514971097297523516663492531648621346965868876016215233915984113737207650789503910329768303362904719989677516346516502052642427804901437717772401483154474008555988247485615297049530592194286955916139388950367215091960020850774252117307196727340292858562751128306327655306493317313922573096797131707359/2003354863125021187708011493851683270463136609570367823740073213341071019316082634156270125704828311471227661940115610809905933346029873405514612136524495935139064336063545051169396841984358680926786548381120041289934613933991789430288780394249128910394067382103965776047010057538811801877631222852176335442444198531139632159916596902991530771213090638828565748995486774689378774026730744309707612811473170564000000000000000000000000", + "prime_interval_packing": "838715781255296927003373462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641/500838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641", + "alpha_positive": "1677431562510593854006246087125853976271377782310448949218990886383117066085382059831727584659326714955291902526379197875098866099451673854603591778911460101180789378738394460714636226095324577130481841349524555297075270358799435134067713471080957249676118856884325741277430252560374947371599673573783018271629857764103035874437840446132600698505340265057126615050584072029679871928123283160134061043078599313922573096797131707359/1001677431562510593854005746925841635231568304785183911870036606670535509658041317078135062852414155735613830970057805404952966673014936702757306068262247967569532168031772525584698420992179340463393274190560020644967306966995894715144390197124564455197033691051982888023505028769405900938815611426088167721222099265569816079958298451495765385606545319414282874497743387344689387013365372154853806405736585282000000000000000000000000", + "alpha_below_one": "999999999999999999999999500838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641/1001677431562510593854005746925841635231568304785183911870036606670535509658041317078135062852414155735613830970057805404952966673014936702757306068262247967569532168031772525584698420992179340463393274190560020644967306966995894715144390197124564455197033691051982888023505028769405900938815611426088167721222099265569816079958298451495765385606545319414282874497743387344689387013365372154853806405736585282000000000000000000000000", + "alpha_below_one_fourth": "248741926328117054609495190644334554831620698413985529018290160781250760348424947209702038128444212218948165839988072153363142802154282501834722925286650531791202252629204736935459969021949510538717836706290480605944751471390174243652029835810060156549582303906111396264598826939791100287332303182948258912033894958628350984115136772427808745703130989588513592009385262764142666881413219755553317540391067721186077426903202868292641/1001677431562510593854005746925841635231568304785183911870036606670535509658041317078135062852414155735613830970057805404952966673014936702757306068262247967569532168031772525584698420992179340463393274190560020644967306966995894715144390197124564455197033691051982888023505028769405900938815611426088167721222099265569816079958298451495765385606545319414282874497743387344689387013365372154853806405736585282000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "499159877330421249706828422043769177773361123262806501521759896489582230336456697951903937390722209944843243952596771948557052017775446981026080118468016373699663433059350892073781644949069277679241599159263601323026364636544818014440581747356392542885750131677864185768487261583887689829971281414602337890382471094714115263184033357882254540514318753504841779089559175993949118602326207884422484847392208588521485294525463736874326160322083553521437824069909153985064586585146825604973958323136866843819501959723456789413751598834343259228648452731688216349929287819419961321561629267220183430853976524849255265097018764611386009212075426501768809917855389364423837815010909330661596951242215977836666036259364204036328779539554470405395772225665626962174689812115604225336185805074414754881/500838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "28053677810000339003328189404143079671176076534134505568603624260809593486833189951555232017080517470601618208244444051579728536957224429574941901613841944484630083512975823212082300826047990942487373151145552148907964518033779916724651453758946513060147150830248748103598843716171525408016431600892364521187958584721651253690917132281013390694133570158704729227575866804848039505852003655570402822017651249072058232280709608604877923/4006709726250042375416022987703366540926273219140735647480146426682142038632165268312540251409656622942455323880231221619811866692059746811029224273048991870278128672127090102338793683968717361853573096762240082579869227867983578860577560788498257820788134764207931552094020115077623603755262445704352670884888397062279264319833193805983061542426181277657131497990973549378757548053461488619415225622946341128000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "4209073552975775792550551072118147555597128741392193478644464074338111225905006638546658121409771272179521305427012936535716825582992928543246608015700332510186843608411045816669908871721961849093691720370788432129746826065781931511015524187076349951930712933608520890714709542973493400343424136827695422815826317246484222628622073491270545563170630726576018367887670600451864569676023116428430129679580419/125209678945313824231750718365730204403946038098147988983754575833816938707255164634766882856551769466951728871257225675619120834126867087844663258532780995946191521003971565698087302624022417557924159273820002580620913370874486839393048774640570556899629211381497861002938128596175737617351951428261020965152762408196227009994787306436970673200818164926785359312217923418086173376670671519356725800717073160250000000000000000", + "coordinate_movement_above_kappa": "2809064633229854005750280704760252756012796684473279557112182561103026987876192359427974620209711366215688913754645372389405446314530266596813041058860198592701225398607702418818177581791260608679028196375808549828184353951107896007296780933163099249483066576449889831227268372034091715391088542704465290282696351993165367229032061158089592876053872346996813922573096797131707359/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "16835793373187321914905277285599127301570899181416381322621921279049109635865197533528093418107658881640217414792566717240164825848635206704635053409767198916763589667560167380416843137677351306704535184846058448508664820609644228096704524553206837525495253217588557571414826419379588898423227139505068647179444657936304105606448314815856434369989719633644366330113433530113785934010585783027643091815118807707359/500838715781255296927002873462920817615784152392591955935018303335267754829020658539067531426207077867806915485028902702476483336507468351378653034131123983784766084015886262792349210496089670231696637095280010322483653483497947357572195098562282227598516845525991444011752514384702950469407805713044083860611049632784908039979149225747882692803272659707141437248871693672344693506682686077426903202868292641000000000000000000000000", + "bulk_exposure_above_kappa": "2809064633229854005750280704760252756012796684473279557112182561103026987876192359427974620209711366215688913754645372389405446314530266596813041058860198592701225398607702418818177581791260608679028196375808549828184353951107896007296780933163099249483066576449889831227268372034091715391088542704465290282696351993165367229032061158089592876053872346996813922573096797131707359/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "26937569900329183817026599858682681435004008160757645671368635057460576578037213466040072909491109934871068547817397764925885207247818235208426912647447996941212014327746677340424624429810059744529395313735950685620057203167520863723141782602190077410128964258249007709130129322515973059247445067891537661937427819327866239915141291194905743721599233377426810413043842971198260901233041262455875403046111813307359/801341945250008475083204597540673308185254643828147129496029285336428407726433053662508050281931324588491064776046244323962373338411949362205844854609798374055625734425418020467758736793743472370714619352448016515973845573596715772115512157699651564157626952841586310418804023015524720751052489140870534176977679412455852863966638761196612308485236255531426299598194709875751509610692297723883045124589268225600000000000000000000000", + "scalar_work_above_kappa": "134689852856509044106320707304907258858290503940397798724666915360516223961205383412834520817581254502666813966748928940240235942172437205915540077849376509201995210703069450247174291545892283081327903355228134548141575950451538310405139201791344636179555215358627142511426693622637404108039102970680540486022581540837862339207866372571431710138767379977772880630968210342765993884939233043023686722843370539707359/4006709726250042375416022987703366540926273219140735647480146426682142038632165268312540251409656622942455323880231221619811866692059746811029224273048991870278128672127090102338793683968717361853573096762240082579869227867983578860577560788498257820788134764207931552094020115077623603755262445704352670884888397062279264319833193805983061542426181277657131497990973549378757548053461488619415225622946341128000000000000000000000000", + "dimension_above_kappa": "124790321054686175772458105187245571388604512973970158571842552907575254771389299439571228369353237171594929250152545596560400471300145848691053567050211932597055087011728766812099540984388628258745749597901959268472778349496301592736698051425211374611386312805578488948992584337432783273362758114712472435190661728631468412821039010809513549427803908564485186250952707308489844991216999081095138768958949956178430129679580419/125209678945313824231750718365730204403946038098147988983754575833816938707255164634766882856551769466951728871257225675619120834126867087844663258532780995946191521003971565698087302624022417557924159273820002580620913370874486839393048774640570556899629211381497861002938128596175737617351951428261020965152762408196227009994787306436970673200818164926785359312217923418086173376670671519356725800717073160250000000000000000" + }, + "controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, the gauge44-barch U8 local word and all 72 cold helper ends, and explicit all144 whole-owner dispatch with a two-copy remainder trade are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; This is a new T16 composition of the accepted PR799 and PR589 suppliers. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ASYNC-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ASYNC-AUDIT.json new file mode 100644 index 0000000000..6c3980a676 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/ASYNC-AUDIT.json @@ -0,0 +1,75 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS", + "template_sha256": "45ee78ba5c995afcc8a43fbaeacf87fc7742c58efc8234b09c9eb8590eabc7b4", + "complex_template_sha256": "45ee78ba5c995afcc8a43fbaeacf87fc7742c58efc8234b09c9eb8590eabc7b4", + "complex_live": 14336, + "complex_profile": { + "1": 347112, + "2": 67680, + "3": 57600, + "4": 20448, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "complex_hosted_residuals": 69120, + "physical": 14826, + "rank_mass": 1041408, + "deficit": 5120, + "entering_helper_roles": 34560, + "cross_replica_helper_roles": 58308, + "one_owner_per_complete_invocation": true, + "helper_busy_family_window_checks": 69120, + "complete_invocations": 144, + "actual_orthogonal_73column_maps": 11079, + "actual_sigma_stream_sha256": "9685fdc79f61e56bade7b3c01b19db986e56c704543f1196137d264a084c3013", + "all_actual_residual_and_spectator_charts": true, + "idle_remainders": 7007, + "mutations_rejected": [ + "alias two whole owners", + "helper on active data family", + "owner in private namespace", + "wrong residual width", + "wrong spectator coordinate", + "omit idle remainder", + "understate physical reserve", + "gauge44: wrong provider at its invocation", + "gauge44: stale per-call local program hash", + "gauge44: stale serialized provider program", + "gauge44: unbound residual adapter hash", + "gauge44: wrong provider width registry", + "gauge44: wrong per-call residual width", + "gauge44: wrong sweep provider", + "gauge44: entering helper width silently restored to nine" + ], + "mutation_controls_run": true, + "provider_phase_semantic_sha256": { + "gauge44": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + } + }, + "widths_by_provider": { + "gauge44": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + } + }, + "provider_counts": { + "gauge44": 144 + }, + "all_provider_program_phase_and_wrapper_bindings": true, + "scope": "Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/AUDIT-LOCAL.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/AUDIT-LOCAL.json new file mode 100644 index 0000000000..a22e133f16 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/AUDIT-LOCAL.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "f43271fcabcc9ebb3b9540610574ba463bba4440e7a868bd92e8ea348081d3ec", + "compressed_sha256": "d28c607df2bc4a82684d3fe47cfb3dba04e3bd14b247c7d4a62a03dff7b2836c", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 480, + "entering": 192, + "lowends": 78, + "coldends": 48, + "compensation_gates": 7208, + "local_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + }, + "checked_columns": 704, + "elapsed_seconds": 0.9856537920131814, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/BIT-SUPPLIER-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/BIT-SUPPLIER-CONTROLS.json new file mode 100644 index 0000000000..0d68c7e136 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/BIT-SUPPLIER-CONTROLS.json @@ -0,0 +1,49 @@ +{ + "status": "PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS", + "kappa": "0.001674622497877364", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "derived_deficit": 10272, + "rejected_controls": [ + "revert_hardcoded_9984", + "ports_112", + "decoder_constant_64_copy_ranks_unchanged", + "decoder_constant_64_with_one_copy_rank_8", + "eight_retained_totals", + "live_minus_one", + "profile_rank_mass_plus_one", + "profile_rank_mass_receipt_mismatch", + "bit_lower_next_grid", + "not_nine_stage_record", + "tampered_bytes_next_grid", + "pr543_file_under_pr589_pin" + ], + "assembler_sha256": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/END-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/END-CONTROLS.json new file mode 100644 index 0000000000..0ca420e48a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/END-CONTROLS.json @@ -0,0 +1,197 @@ +{ + "status": "PASS_EIGHT_ENDS_32_NEGATIVE_CONTROLS", + "rejected": [ + { + "helper": 572, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 572, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (572, (256, 128, 67, 35, 17, 9, 6), (256, 128, 67, 35, 17, 9))" + }, + { + "helper": 572, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (312, (264, 136, 74, 43, 24, 7), (271, 143, 74, 44, 24))" + }, + { + "helper": 572, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [572])" + }, + { + "helper": 573, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 573, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (573, (256, 128, 67, 35, 17, 9, 6), (256, 128, 67, 35, 17, 9))" + }, + { + "helper": 573, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (70, (265, 137, 75, 42, 24, 7), (265, 137, 76, 42, 24))" + }, + { + "helper": 573, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [573])" + }, + { + "helper": 574, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 574, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (574, (256, 128, 96, 17, 9, 5, 3), (256, 128, 96, 17, 9, 5))" + }, + { + "helper": 574, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (328, (264, 137, 96, 24, 4, 3), (268, 137, 96, 24, 3))" + }, + { + "helper": 574, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [574])" + }, + { + "helper": 575, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 575, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (575, (256, 128, 96, 17, 9, 5, 3), (256, 128, 96, 17, 9, 5))" + }, + { + "helper": 575, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (110, (265, 136, 96, 24, 4, 3), (265, 140, 96, 24, 3))" + }, + { + "helper": 575, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [575])" + }, + { + "helper": 580, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 580, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (580, (256, 128, 67, 35, 18, 10, 6), (256, 128, 67, 35, 18, 10))" + }, + { + "helper": 580, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (332, (266, 138, 72, 41, 24, 7), (266, 138, 79, 41, 24))" + }, + { + "helper": 580, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [580])" + }, + { + "helper": 581, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 581, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (581, (256, 128, 67, 35, 18, 10, 6), (256, 128, 67, 35, 18, 10))" + }, + { + "helper": 581, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (334, (267, 139, 73, 40, 24, 7), (268, 140, 73, 47, 24))" + }, + { + "helper": 581, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [581])" + }, + { + "helper": 582, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 582, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (582, (256, 128, 73, 41, 24, 5, 3), (256, 128, 73, 41, 24, 5))" + }, + { + "helper": 582, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (316, (385, 72, 40, 24, 4, 3), (389, 76, 44, 24, 3))" + }, + { + "helper": 582, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [582])" + }, + { + "helper": 583, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 583, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (583, (256, 128, 73, 41, 24, 5, 3), (256, 128, 73, 41, 24, 5))" + }, + { + "helper": 583, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (318, (385, 73, 41, 24, 4, 3), (389, 73, 41, 24, 3))" + }, + { + "helper": 583, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [583])" + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/GLOBAL-PREFIX.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/GLOBAL-PREFIX.json new file mode 100644 index 0000000000..1d734d8530 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/GLOBAL-PREFIX.json @@ -0,0 +1,13 @@ +{ + "status": "PASS_MIXED_ASYNC_GLOBAL_PREFIX", + "template_sha256": "45ee78ba5c995afcc8a43fbaeacf87fc7742c58efc8234b09c9eb8590eabc7b4", + "global_prefix_bits": 397, + "retained_payload_bits": 512, + "complete_invocation_cover_sweeps": 144, + "bridge_factor_two_sweeps": 144, + "local_scalar_coefficient_work_prefix_bits": 68, + "stream_input_sup_to_l2_bits": 37, + "primitive_arithmetic_margin_bits": 4, + "controller_audit_sha256": "644c15a99e207161a50eca01ddf1c7852e67504517fa4710d5490c3f65a4665a", + "proof": "Each selected normalized provider restores all arbitrary dirty helper columns and gives the same data shear endpoints. Actual whole-owner charts are right-translation bijections. Sum all 144 invocation and 144 bridge sweeps and take maximum local scalar/Horner prefix over all three providers and orientations. Idle children, phases, spectator endpoints and terminal translations are unitary. Retained all-size interfaces are conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/IDLE-REMAINDER-FRAMES.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/IDLE-REMAINDER-FRAMES.json new file mode 100644 index 0000000000..5f37baa75c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/IDLE-REMAINDER-FRAMES.json @@ -0,0 +1,13 @@ +{ + "status": "PASS_LITERAL_IDLE_REMAINDER_FRAMES", + "template_sha256": "45ee78ba5c995afcc8a43fbaeacf87fc7742c58efc8234b09c9eb8590eabc7b4", + "uncompressed_frames_sha256": "e533c64bcca0b26839df69e552572690f81728ab6dabe912ff3071ffbbbc8ab1", + "children": 7007, + "rank_profile": { + "1": 2088, + "24": 1, + "48": 4918 + }, + "source_data_phase_sha256": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "scope": "Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/INDEPENDENT-T16.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/INDEPENDENT-T16.json new file mode 100644 index 0000000000..cc6d231167 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/INDEPENDENT-T16.json @@ -0,0 +1,116 @@ +{ + "status": "PASS_INDEPENDENT_T16_LITERAL_WINDOWS_CHARTS_PREFIX_ROW", + "roles": 69120, + "calls": 144, + "source_events_per_replica": 30, + "expanded_replica_events": 480, + "bridge_events": 144, + "literal_windows": 288, + "checked_whole_helper_widths": 69120, + "checked_busy_family_windows": 69120, + "orthogonal_port_bases": 112, + "actual_73_axis_charts": 11079, + "checked_slice_prefixes": 32256, + "local_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + }, + "idle": { + "1": 2088, + "24": 1, + "48": 4918 + }, + "profile": { + "1": 347112, + "2": 67680, + "3": 57600, + "4": 20448, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "live": 14336, + "physical": 14850, + "rank_mass": 1041408, + "deficit": 5120, + "namespace": { + "data": [ + 0, + 14336 + ], + "centres": [ + 14336, + 14344 + ], + "tableau": [ + 14344, + 14848 + ], + "coefficient": [ + 14848, + 14850 + ] + }, + "local_prefix_bits": 68, + "local_prefix_from_native_receipt": true, + "local_profile_recounted": true, + "prefix_formula": { + "local_scalar": 68, + "input_l2": 37, + "invocations": 144, + "bridges": 144, + "margin": 4 + }, + "prefix_bits": 397, + "charged_prefix_bits": 512, + "physical_stock_bits": 2642, + "physical_row_coefficient": 16469, + "row_limit": 20161, + "scope": "Finite role/window/chart and inherited prefix/row obligations. Requires separately admitted local supplier and emitted controller, complete finite invoice, exact moments and outer assembly; no all-size theorem is asserted.", + "controls_rejected": [ + { + "name": "private_namespace_collision", + "reason": "private-namespace collision" + }, + { + "name": "copy_replica_alias", + "reason": "role invocation time" + }, + { + "name": "missing_whole_helper", + "reason": "complete helper role count" + }, + { + "name": "split_whole_helper", + "reason": "complete helper role count" + }, + { + "name": "truncated_helper_width", + "reason": "whole-helper residual width" + }, + { + "name": "cross_idle_boundary", + "reason": "strict bridge-aware idle window" + } + ], + "input_sha256": { + "/Users/thomasdifiore/integer-mult-runs/k8-eight-ends-t16-portable-20261013/t16/global8/base/split-centres/GLOBAL-TEMPLATE.json.gz": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "/Users/thomasdifiore/integer-mult-runs/k8-eight-ends-t16-portable-20261013/t16/global8/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "/Users/thomasdifiore/integer-mult-runs/k8-eight-ends-t16-portable-20261013/t16/global8/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "/Users/thomasdifiore/integer-mult-runs/k8-eight-ends-t16-portable-20261013/native/local/CANONICAL-WORD.json.gz": "3dd6e2a42d90736dbdf7f47e1bbd18525fccfceae52ad0ce9a8082e88b8a851d", + "/Users/thomasdifiore/integer-mult-runs/k8-eight-ends-t16-portable-20261013/native/local/INDEPENDENT-LOCAL-REPLAY.json": "00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99", + "/Users/thomasdifiore/integer-mult-runs/k8-eight-ends-t16-portable-20261013/runtime/data/OWNERS.json.gz": "a4c79743dcc93c4260fae00b3324b97983fcd56af8bff5414243d7258a4bc97b" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/NATIVE-STEPS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/NATIVE-STEPS.json new file mode 100644 index 0000000000..5998487e22 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/NATIVE-STEPS.json @@ -0,0 +1,27 @@ +[ + { + "step": "native", + "exit_code": 0, + "seconds": 1.3950134580081794 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.881123375002062 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 6.493391583993798 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.9514304579934105 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 125.81771416700212 + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/OWNERS-AND-PROFILE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/OWNERS-AND-PROFILE.json new file mode 100644 index 0000000000..1edbefdee5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/OWNERS-AND-PROFILE.json @@ -0,0 +1,52 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE", + "template_sha256": "45ee78ba5c995afcc8a43fbaeacf87fc7742c58efc8234b09c9eb8590eabc7b4", + "paid_profile": { + "1": 347112, + "2": 67680, + "3": 57600, + "4": 20448, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "live": 14336, + "physical": 14826, + "rank_mass": 1041408, + "deficit": 5120, + "hosted_residuals": 69120, + "banked_residuals": 0, + "all_live_owners_per_call_distinct": true, + "owners_per_call": 704, + "actual_helper_owner_charts": 69120, + "actual_73column_sigmas": 11079, + "cross_replica_helper_roles": 58308, + "explicit_idle_remainder_children": 7007, + "source_idle_children_charged": 32256, + "source_artifacts": { + "work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "providers/gauge44/CANONICAL-WORD.json.gz": "3dd6e2a42d90736dbdf7f47e1bbd18525fccfceae52ad0ce9a8082e88b8a851d", + "providers/gauge44/LOCAL-PROGRAMS.json.gz": "b1bb600466e05411099dedbb6b8776a8c429d7f75774041af5bf38dfff435401", + "providers/gauge44/LOCAL-CHECKS.json": "3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba", + "providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99", + "providers/gauge44/RESIDUAL-ADAPTERS.json": "8ecf500ad8646d642906275de20704e4248abccabf2e21af51fcdcbd7581c312", + "providers/gauge44/CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "providers/gauge44/CLIFFORD-REVIEW.json": "6d76c50a72625465bd8808fb59ceb363dc5f9923d043e9b5b11d079a1a952bec" + }, + "provider_phase_semantic_sha256": { + "gauge44": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + } + }, + "controller_audit_sha256": "644c15a99e207161a50eca01ddf1c7852e67504517fa4710d5490c3f65a4665a" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/PARENT-LIFT-RECEIPT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/PARENT-LIFT-RECEIPT.json new file mode 100644 index 0000000000..7a05310317 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/PARENT-LIFT-RECEIPT.json @@ -0,0 +1,31 @@ +{ + "status": "PASS_T16_DIRECT_SUM_PARENT_AND_LITERAL_SOURCE_WINDOWS", + "T8_identity_control": true, + "T8_source_window_identity": true, + "idle8": { + "1": 1004, + "2": 1, + "3": 150, + "32": 1, + "48": 2450 + }, + "idle16": { + "1": 2088, + "24": 1, + "48": 4918 + }, + "profile": { + "1": 347112, + "2": 67680, + "3": 57600, + "4": 20448, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "parent_live": 23408, + "parent_physical": 23922, + "actual_window_membership_checked": 69120, + "events": 482 +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/PREFIX-AND-INVOICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/PREFIX-AND-INVOICE.json new file mode 100644 index 0000000000..e6c38b8c65 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/PREFIX-AND-INVOICE.json @@ -0,0 +1,2814 @@ +{ + "status": "PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE", + "template_sha256": "45ee78ba5c995afcc8a43fbaeacf87fc7742c58efc8234b09c9eb8590eabc7b4", + "parent_template_sha256": "8904bbbf46dfbf1c6df0e43479a23913fc59a410e879188112e88f16c850ede8", + "owner_audit_sha256": "f20ff5901bfe41cddf5c62d59f8c5361323f7e49b78c17d97173e9db5b3baf0f", + "controller_audit_sha256": "644c15a99e207161a50eca01ddf1c7852e67504517fa4710d5490c3f65a4665a", + "providers": { + "gauge44": { + "local": { + "backward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387120, + "local_primitive_bound": 10039700351134, + "compiler": 25934336, + "children": 3498, + "artifacts": { + "CANONICAL-WORD.json.gz": "3dd6e2a42d90736dbdf7f47e1bbd18525fccfceae52ad0ce9a8082e88b8a851d", + "RESIDUAL-ADAPTERS.json": "8ecf500ad8646d642906275de20704e4248abccabf2e21af51fcdcbd7581c312", + "LOCAL-PROGRAMS.json.gz": "b1bb600466e05411099dedbb6b8776a8c429d7f75774041af5bf38dfff435401", + "LOCAL-CHECKS.json": "3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba", + "CLIFFORD-REVIEW.json": "6d76c50a72625465bd8808fb59ceb363dc5f9923d043e9b5b11d079a1a952bec", + "INDEPENDENT-LOCAL-REPLAY.json": "00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "FULL-WORD.json.gz": "9fd27ad780b143a867e794ce3c1ab44f393c689f2e81538aa7cff1604d14cf68", + "SCALAR-FRAME-AUDIT.json": "56dff9b4239e3e0d29c132f911cce066ddb147cc6208f63fc743b3affa8eb6c1", + "WRAPPER-CHECKS.json": "b6c7fdef5893b117434f39b6561b80504482fa748e23b840f77a07b137e1d1ea" + }, + "paid_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "forward": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + } + } + }, + "provider_phase_semantic_sha256": { + "gauge44": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1" + }, + "provider_counts": { + "gauge44": 144 + }, + "selected_calls": [ + { + "stage": 0, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + } + ], + "selected_local_paid_profile": { + "1": 345024, + "2": 67680, + "3": 57600, + "4": 20448, + "5": 11808, + "8": 1152 + }, + "selected_real_component_primitives": 28625376, + "selected_coefficient_work_primitive_count": 14162000, + "selected_scalar_macros": 2835792, + "global_prefix_bits": 397, + "charged_prefix_bits": 512, + "complete_invocation_sweeps": 144, + "bridge_sweeps": 144, + "row_prefix_extra": 1024, + "helpers": 480, + "centres": 8, + "live": 14336, + "physical": 14826, + "physical_stock_identity": { + "data_and_owner_families": 14336, + "local_helpers": 480, + "private_centres": 8, + "coefficient_work": 2 + }, + "local_adapters": 387120, + "local_primitive_bound": 10039700351134, + "wrapper_elementary_factors_charged": 9953280, + "factors_per_wrapper": 144, + "compiler": 25934336, + "unhosted_pervertex": 3589198021555152, + "hosted_rebased_pervertex": 3589198020954840, + "conservative_pervertex_used": 6467145011279720, + "retained_prior_overcharge": { + "sha256": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "previous_pervertex_allowance": 2877946989724568, + "added_complete_new_pervertex": 3589198021555152, + "policy": "Retain old allowance and add entire fresh mixed recount." + }, + "finite": { + "physical_stock_bits": 2642, + "router_bits": 7988, + "literal_bits": 35284, + "physical_row_coefficient": 16469, + "retained_row_coefficient": 20161, + "required_C0_bits": 200012, + "halving_integer_inequality": [ + 5329, + 4608 + ], + "G_exponent": 30000, + "E_exponent": 100000, + "C0_exponent": 210000 + }, + "strict_checks": { + "local_primitive_bound": true, + "logical": true, + "router": true, + "literal": true, + "mass": true, + "precision": true, + "tape": true, + "row": true, + "halving": true + }, + "scope": "Actual call-specific mixed scalar, Horner, wrappers and paid children recounted. All three providers use fresh hash-bound independent all-column/frame/phase/normalization admission. Shared compiler uses conservative maxima; parent is geometry/overcharge only. All-size compiler, hosting, precision/tape and analytic transfer remain conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/REPLAY-LOGS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/REPLAY-LOGS.json.gz new file mode 100644 index 0000000000..d52a58630d Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/REPLAY-LOGS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/REPLAY.json new file mode 100644 index 0000000000..03023f7735 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/REPLAY.json @@ -0,0 +1,107 @@ +{ + "status": "PASS_GAUGE44_T16_STRICT_GLOBAL_REPLAY", + "kappa": "418655624469341/250000000000000000", + "kappa_decimal": "0.001674622497877364", + "conservative_kappa_decimal": "0.001674622495021787", + "complex_lower": "1677431562510593854067/1000000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "complex_profile": { + "1": 347112, + "2": 67680, + "3": 57600, + "4": 20448, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "idle_remainder_profile": { + "1": 2088, + "24": 1, + "48": 4918 + }, + "complete_invocations": 144, + "roles": 69120, + "prefix_bits": 397, + "charged_prefix_bits": 512, + "physical_row_coefficient": 16469, + "retained_row_coefficient": 20161, + "actual_73_axis_charts": 11079, + "controls": { + "admission": 69, + "bit_supplier": 12, + "independent_t16": 6, + "controller_mutations": 15 + }, + "t8_kappa": "1673414377866467/1000000000000000000", + "spec_sha256": "30d4dcc96f1361fcee1562681291763f6ee8c08fb1f93da1ea4fd2a42a1d0b5d", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.252, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind8", + "seconds": 0.273, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "lift16", + "seconds": 2.274, + "exit_code": 0, + "log_sha256": "43a5f510e5d2e3d5511ca1b1b56a4f0102be0f3687c1438e9ce873a308284372" + }, + { + "name": "bind", + "seconds": 0.306, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 4.507, + "exit_code": 0, + "log_sha256": "bcc2c836b5e0c353c08d2e68592728f2d625bfae1e1dc285c76e213c69ed1880" + }, + { + "name": "audit", + "seconds": 18.236, + "exit_code": 0, + "log_sha256": "644c15a99e207161a50eca01ddf1c7852e67504517fa4710d5490c3f65a4665a" + }, + { + "name": "invoice", + "seconds": 0.967, + "exit_code": 0, + "log_sha256": "8f7074e3f78a103318ded6362c8e9bc8fc0e8c1ea3b510e63b9b84b181452cb3" + }, + { + "name": "assembly", + "seconds": 0.306, + "exit_code": 0, + "log_sha256": "0df6147c0cba7a2430fbc4ebdcb082e69eb6546ee680b6f6003c4eed0107d71d" + }, + { + "name": "admission-controls", + "seconds": 0.407, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.612, + "exit_code": 0, + "log_sha256": "d54d260bf95bd8ae4ab8846314082b93b2e3d8f427eb35376691f2ce543a6b67" + }, + { + "name": "independent-t16", + "seconds": 0.851, + "exit_code": 0, + "log_sha256": "9a822ed55b91969189acb1bb1bbdcebafc800855952fbd5e91c5d977c29cbbf9" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, the gauge44-barch U8 local word and all 72 cold helper ends, and explicit all144 whole-owner dispatch with a two-copy remainder trade are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; This is a new T16 composition of the accepted PR799 and PR589 suppliers. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/RESULT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/RESULT.json new file mode 100644 index 0000000000..968b41d03c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/RESULT.json @@ -0,0 +1,100 @@ +{ + "status": "PASS_K8_EIGHT_ENDS_T16_COMPLETE_ADMISSION", + "kappa_decimal": "0.001674622497877364", + "complex_lower": "1677431562510593854067/1000000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "previous_kappa": "0.001673414377866467", + "end_controls": 32, + "controls": { + "admission": 69, + "bit_supplier": 12, + "independent_t16": 6, + "controller_mutations": 15 + }, + "outer_strict_inequalities": 47, + "native_steps": [ + { + "step": "native", + "exit_code": 0, + "seconds": 1.3950134580081794 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.881123375002062 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 6.493391583993798 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.9514304579934105 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 125.81771416700212 + } + ], + "native_log_sha256": { + "native": "34b384775131f5ffff5c4e0bdac290d7ab320efc44195557d329b5fae2e4ca98", + "ledgers": "2d642de9161c9ced52d9eba7911138c64cb9f0ce4cc484ef397d3816eb11f0a8", + "local-replay": "dd643a58258431c3b07d3b06d9060c49677fa23b4fafc9f10988ed1f6867bd9a", + "wrappers": "74b13cf8570ca2f32ce0018575b1b73e95af77a28e59d09556fec59260bdbba5", + "phases": "9d0d92686353e3f9def6a1144e837f241bbbb41d324a6eb840d37a054994570e" + }, + "native_reuse": false, + "native_semantic_artifacts": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + }, + "fixed_family_all_replica_grid_upper": "0.001674630216885732", + "replay_sha256": "fa8db7880863b26de2999eab873f9d9b4661da651e17ac2f3b24a888efb1a341", + "scope": "Conditional native exact-complex witness using the unchanged eight-endpoint R480 k8 word, the cited PR1074/PR858 sixteen-replica controller, and the unchanged PR589 bit supplier. PR559 exact-cover recurrence correction, bit bad-residue surcharge, and H1-H5 retained. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification. The all-replica upper bound applies only to this fixed local profile, whole-helper widths, nine calls per replica, and fixed bin inventory.", + "steps": [ + { + "step": "build", + "exit_code": 0, + "seconds": 0.07599145799758844, + "log_sha256": "0f11f6146db3f337141160a7c5909f17721a066be0990b57d8db4da46e3542e2" + }, + { + "step": "independent-local", + "exit_code": 0, + "seconds": 1.025326499977382, + "log_sha256": "b1fb45d0d63c382aaa51ab746733323fab80fd0cba7074d2ecfa8a0cef587605" + }, + { + "step": "end-controls", + "exit_code": 0, + "seconds": 23.74799425000674, + "log_sha256": "09021b38ca12b4865afd51d4f8c4a62d2f3d925a4d52a2d4b5e0a3744958ed86" + }, + { + "step": "native", + "exit_code": 0, + "seconds": 136.5742441250186, + "log_sha256": "5ca9f310247cb601c905ff30597baa4634847395d7826e9ab926a9876ced2514" + }, + { + "step": "strict-t16", + "exit_code": 0, + "seconds": 30.395557624986395, + "log_sha256": "ff439e55ae01aae3abde86aadd1041c7dec7f29fe6ddf1130fdcc897af0cf5ea" + }, + { + "step": "all-replica-bound", + "exit_code": 0, + "seconds": 0.4476553749991581, + "log_sha256": "84085fa792deb1f888c6c48cf8fc2f2087af03e561ceabd62436dd65bcd7e76b" + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/STAGES.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/STAGES.json new file mode 100644 index 0000000000..3d45be4961 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/evidence/STAGES.json @@ -0,0 +1,68 @@ +[ + { + "name": "restore-parent", + "seconds": 1.252, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind8", + "seconds": 0.273, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "lift16", + "seconds": 2.274, + "exit_code": 0, + "log_sha256": "43a5f510e5d2e3d5511ca1b1b56a4f0102be0f3687c1438e9ce873a308284372" + }, + { + "name": "bind", + "seconds": 0.306, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 4.507, + "exit_code": 0, + "log_sha256": "bcc2c836b5e0c353c08d2e68592728f2d625bfae1e1dc285c76e213c69ed1880" + }, + { + "name": "audit", + "seconds": 18.236, + "exit_code": 0, + "log_sha256": "644c15a99e207161a50eca01ddf1c7852e67504517fa4710d5490c3f65a4665a" + }, + { + "name": "invoice", + "seconds": 0.967, + "exit_code": 0, + "log_sha256": "8f7074e3f78a103318ded6362c8e9bc8fc0e8c1ea3b510e63b9b84b181452cb3" + }, + { + "name": "assembly", + "seconds": 0.306, + "exit_code": 0, + "log_sha256": "0df6147c0cba7a2430fbc4ebdcb082e69eb6546ee680b6f6003c4eed0107d71d" + }, + { + "name": "admission-controls", + "seconds": 0.407, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.612, + "exit_code": 0, + "log_sha256": "d54d260bf95bd8ae4ab8846314082b93b2e3d8f427eb35376691f2ce543a6b67" + }, + { + "name": "independent-t16", + "seconds": 0.851, + "exit_code": 0, + "log_sha256": "9a822ed55b91969189acb1bb1bbdcebafc800855952fbd5e91c5d977c29cbbf9" + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/independent/all_t_bound.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/independent/all_t_bound.py new file mode 100644 index 0000000000..a107fb0903 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/independent/all_t_bound.py @@ -0,0 +1,172 @@ +"""All-replica signed-dual bound for the eight-endpoint k8 whole-owner family. + +Adapted from jon314159's PR942 all_t_bound.py, with the eight-endpoint k8 inventory. +Dual prices: chafreaky's PR795/890. See ../NOTICE.md. Apache-2.0. +Two exact rational engines certify the inequalities and endpoint signs. +This is an upper relaxation only: it does not establish physical feasibility. +""" +import argparse +import gzip +from collections import Counter +from fractions import Fraction as Q +import hashlib +import importlib.util +import itertools +import json +from pathlib import Path +import sys + +if sys.flags.optimize: + raise RuntimeError('Retained arithmetic assertions must stay enabled; do not use Python -O') + +HERE = Path(__file__).resolve().parent +ROOT = HERE.parents[2] +ENGINE = 'research/complex-k492-owner-repair/vendor/multicold/engines/' +PINS = {'research/complex-k492-owner-repair/vendor/multicold/engines/moment.py': '81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482', 'research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py': 'aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098', 'research/k8-eight-ends/PLAN.json.gz': 'a3e9e390da3136655606ac919ec60696e2f704457ff01ef9e4d07e90534ab2d4'} +WIDTHS = (4, 5, 7, 8, 9) +PRICES = (-1, -20, -8, -2, 4) +CAPACITIES = {8: (672, 2), 16: (448, 4), 32: (448, 8), 48: (448, -13)} +INVENTORY = {4: 56, 5: 32, 7: 38, 8: 114, 9: 240} + + +def need(ok, message): + if not ok: + raise ValueError(message) + + +def load(relative, name): + spec = importlib.util.spec_from_file_location(name, ROOT/relative) + obj = importlib.util.module_from_spec(spec) + spec.loader.exec_module(obj) + return obj + + +def dual_tables(): + """Cartesian product enumeration and independently programmed recurrence.""" + upper, count = {}, 0 + for cap, (_, bonus) in CAPACITIES.items(): + for vector in itertools.product(*(range(cap//w+1) for w in WIDTHS)): + used = sum(w*n for w, n in zip(WIDTHS, vector)) + if used > cap: + continue + count += 1 + r = cap-used + value = bonus+sum(p*n for p, n in zip(PRICES, vector)) + upper[r] = max(upper.get(r, -10**6), value) + alt = {} + for cap, (_, bonus) in CAPACITIES.items(): + scores = [None]*(cap+1) + scores[0] = 0 + for fill in range(cap+1): + if scores[fill] is None: + continue + for width, price in zip(WIDTHS, PRICES): + nxt = fill+width + if nxt <= cap: + proposal = scores[fill]+price + if scores[nxt] is None or proposal > scores[nxt]: + scores[nxt] = proposal + for fill, value in enumerate(scores): + if value is not None: + alt[cap-fill] = max(alt.get(cap-fill, -10**6), value+bonus) + need(upper == alt and count == 1163, 'two independently structured dual enumerations') + return upper, count + + +def phi_pair(engine, kind, r, z): + if kind == 'mercator': + a, b = engine.logarithm(Q(73, r)) + a, b = engine.exponential(z*a, z*b) + else: + a, b = engine.log_bounds(Q(73, r)) + a, b = engine.exp_bounds(z*a)[0], engine.exp_bounds(z*b)[1] + return r*a, r*b + + +def ratio_certificate(engine, kind, upper, z): + phi = {r: phi_pair(engine, kind, r, z) for r in upper if r} + cost = {r: (48*lo-r*phi[48][1], 48*hi-r*phi[48][0]) + for r, (lo, hi) in phi.items() if r < 48} + credit = {r: 48*upper[r]+13*r for r in cost} + need(credit[1] == 925, 'rank-one credit') + need(all(a > 0 for a, b in cost.values()), 'positive non48 costs') + # c(r)-v(r)*c(1)/925 > 0 at every r != 1, so a single + # multiplier gives a supporting inequality for every count vector. + margins = {} + for r, (lo, hi) in cost.items(): + if r == 1: + continue + c = credit[r] + rhs = c*cost[1][1 if c >= 0 else 0]/925 + margins[r] = lo-rhs + need(margins[r] > 0, 'rank-one strictly optimal cost/credit ratio: '+str(r)) + return dict(credit=credit, multiplier_interval=[str(cost[1][0]/925), str(cost[1][1]/925)], + strict_margin_by_rank={r: str(x) for r, x in margins.items()}, + minimum_strict_margin=str(min(margins.values()))) + + +def main(out): + for relative, expected in PINS.items(): + need(hashlib.sha256((ROOT/relative).read_bytes()).hexdigest() == expected, 'source drift: '+relative) + M = load(ENGINE+'moment.py', 'retained_mercator') + B = load(ENGINE+'base_two_moment.py', 'retained_atanh') + plan = json.loads(gzip.decompress((ROOT/'research/k8-eight-ends/PLAN.json.gz').read_bytes())) + provider = plan['provider_registry']['gauge44'] + local = {int(r): n for r, n in provider['actual_paid_profile'].items()} + need(Counter(provider['widths']) == INVENTORY, 'fixed helper inventory') + actual_caps = Counter(v[0] for v in plan['windows'].values()) + need({c: n*112//plan['T'] for c, n in actual_caps.items()} == + {c: n for c, (n, _) in CAPACITIES.items()}, 'fixed bin inventory per replica') + upper, vectors = dual_tables() + mass = sum(c*n for c, (n, _) in CAPACITIES.items())-9*sum(r*n for r, n in INVENTORY.items()) + signed = sum(n*p for n, p in CAPACITIES.values())+9*sum(INVENTORY[r]*p for r, p in zip(WIDTHS, PRICES)) + need((mass, signed, upper[0], upper[48]) == (14886, -1516, 0, -13), 'fixed-family coefficients') + credit = 48*signed+13*mass + need(credit == 120750 and Q(credit, 925) == Q(4830, 37), 'dual credit demand') + T = 37 + idle = {1: 4830, 48: 11374} + need(sum(r*n for r, n in idle.items()) == mass*T, 'formal relaxed idle mass') + need(sum(upper[r]*n for r, n in idle.items()) == signed*T, 'dual equality') + profile = Counter({r: 9*T*n for r, n in local.items()}) + profile.update(idle) + live = 896*T + need(73*live-sum(r*n for r, n in profile.items()) == 320*T, 'rank deficit') + root = M.certify(profile, 73, live, False) + lo, hi = Q(root['lower']), Q(root['upper']) + signs = {} + for name, z in [('lower', lo), ('upper', hi)]: + first = M.moment(profile, 73, live, z) + second = B.moment(73, live, list(profile.items()), z) + need(first[1] < 1 and second[1] < 1 if name == 'lower' else first[0] > 1 and second[0] > 1, + 'two exact moment signs at '+name) + signs[name] = dict(endpoint=str(z), mercator=[str(x-1) for x in first], + atanh=[str(x-1) for x in second]) + certs = {kind: ratio_certificate(engine, kind, upper, hi) + for kind, engine in [('mercator', M), ('atanh', B)]} + # The retained outer recipe always has a < b and kappa < a/(1+a). + # Therefore b < hi implies kappa < hi/(1+hi), without assuming that + # this formal relaxed profile can pass any finite or physical admission. + ceiling = hi/(1+hi) + ticks = ceiling*10**18 + grid = Q((ticks.numerator-1)//ticks.denominator, 10**18) + result = dict(status='PASS_ALL_T_K8_EIGHT_ENDS_SIGNED_DUAL_UPPER_RELAXATION', + scope='All positive integer replica counts, fixed k8-eight-ends local word and widths, nine calls and 896 live wires per replica, whole helpers and fixed 8/16/32/48 bin inventory. Geometry, time windows, finite invoice and physical realization are relaxed. This does not construct a supplier at the upper bound and does not cover different circuits, split helpers, banks or recursion geometries.', + dual_bin_vectors=vectors, upper=upper, mass_per_replica=mass, + signed_price_per_replica=signed, credit_per_replica=credit, + normalized_idle={'1': '4830/37', '48': '11374/37'}, + equality_requires_replica_count_multiple_of=37, + formal_profile=dict(replicas=T, idle=idle, profile=dict(sorted(profile.items())), + live=live, deficit=320*T), + root=root, two_engine_signs=signs, supporting_inequalities=certs, + kappa_strict_rational_upper=str(ceiling), kappa_strict_upper_decimal=M.decimal(ceiling), + all_T_grid_upper=str(grid), all_T_grid_upper_decimal=M.decimal(grid), + source_sha256=PINS) + need(not out.exists(), 'output preservation: choose a new file') + out.write_text(json.dumps(result, indent=2)+'\n') + print(result['status'], result['all_T_grid_upper_decimal']) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--out', type=Path, required=True) + main(parser.parse_args().out) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/UPSTREAM-NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..ebc24a0168 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/UPSTREAM-NOTICE.md @@ -0,0 +1,34 @@ +# Attribution and scope + +Four verified provider types are offered to every call: PR571's prefix word with twelve multi-cut cold kernels (PR568's unchanged constructor), the same word with forty width-five entrance promotions (PR569's unchanged frame constructor) before those kernels, PR575's plain joint-prefix provider, and PR568's eight-cold provider. A window MILP with an exact per-pattern model chooses the dispatch and a literal owner map. PR583's six source-bound kernel frame coalescences (its unchanged constructor and negative controls) are applied to every PR571-prefix provider word (ck and atm3), followed by two further coalescences that each first move one addition past two commuting additions (package code/build_gate_moves.py, extending PR583's constructor); a final hyperplane_end step (package code/build_hpe.py) then runs 46 single-gate cleanups h -= p right after part B at the dim-8 join U of their registers, so 46 width-8 entering helpers per call end at U with width 7; each such gate commutes with every earlier cleanup gate on its registers (for 8 of them the partner's one earlier gate x -= p only reads p), and the reordered program is replayed exactly. A window MILP (exact windows, RINS around an LP vertex) gives the dispatch ck 45 / atm3 21 / jp8 6 and the literal owner map. + +Pinned external sources (unchanged; `verify.py` checks their manifests and every file it uses): +- PR568 (`research/complex-multicold`, commit `71c99ac935a33bb7b59a1b4a7af8725a939b0b90`). +- PR571 (`research/structural-gain`, commit `b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3`). +- PR569 (`research/larger-gain`, commit `897213a855b7fb8a1b8b0e552a2f5c42e6c1b326`). +- PR575 (`research/complex-joint-prefix`, commit `eac6f7e378ab622dac50a2fd4b7ef6eab014de44`). +- PR583 (`research/kernel-frame-coalescing`, commit `89be768f0157f5a3d8e4db69cf1748768605eac9`). + +Provider construction is described as typed steps in `data/SPEC.json` (`build`); `verify.py` runs only allowlisted step types with their paired omission audits and checks every input and output content hash. `code/` holds the spec-driven global admission scripts adapted from PR571's `frontier-composition/global-code/` (OpenAI Codex assisted, Apache-2.0): every expected value is read from `data/SPEC.json` and compared only after independent recomputation. `code/generated_identity.py` and `code/generated_identity_controls.py`, and the decompressed-content artifact identities in the bind, audit, invoice, assembly and phase-timing scripts, are taken unchanged from PR586 by chafreaky (`research/promoted-kernel-coalescing`, commit `4846fee5b06af770e9b3a10c36200f673d656725`, OpenAI Codex assisted, Apache-2.0), including its proof-content and reference/metadata mutation controls; the normalization of descriptive width metadata after frame changes follows the same PR. + +In PR601, the owner map was nominated by a HiGHS window MILP (adapted from PR569's `global/nominate_width7.py`) with lazy cross-time Hall cuts; this package's re-solved map is described below. Neither is an admission dependency. + +DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. (The PR601 package this one starts from states: "Prepared by Claude Code (Anthropic) research agents.") Apache-2.0 applies; LICENSE is included. All notices, licenses, source pins and AI disclosures of the pinned sources and their ancestry are retained in those packages and are not replaced by this notice. All inherited conditional assumptions remain conditional. + +**This package (complex-571-cold14, DreamingOfClouds).** It starts from PR601 (jeremykothe2, `research/complex-571-hpem46`, commit `529ab7dcb59d5ea7a5798e9e06cf5b3aee8a1550`). Everything above is kept unchanged except the following: +- every provider chain (ck, atm3, jp8) gains the typed step `cold_end` (`code/build_cold_end.py`, `code/cold_end_controls.py`; recipes `data/recipes/*-cold_end.json.gz`); +- the generalised native chain and the global admission scripts accept cold helpers that end below FULL (with `0:U` wrappers), a refactored exact cleanup, and check the wrapper order; +- `data/PLAN.json` / `data/OWNERS.json.gz` (dispatch and literal owner map) come from a relocate/swap/ejection-chain/provider-flip annealing search started from PR601's map, refined by an exact pattern-restricted owner model (CP-SAT) with a literal edge-colouring expansion (not an admission dependency); +- `data/SPEC.json` holds the expected values, recorded by a discovery run and then checked by a strict run. + +The cold-end construction (a row-plus-column cone condition for low-frame ends, a rank-0 dirt-spread premix and multi-gate lower-frame cleanup) builds on PR591 / PR592 / PR593 / PR601 (jeremykothe2) and our PR599 (Lean: multi-gate and cold hyperplane-end tails). DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. Build on this at your own risk. + +**This package (complex-571-cold14-b3, jeremykothe2).** It is PR604's `complex-571-cold14` (DreamingOfClouds) with ColdBeyond's second cold end per block (two new `cold_end` A-gate primitives, `PROOF-NOTE.md`), ColdSupply's E1 entering pair and reviewed controls, a free dispatch (jp8 ×60, atm3 ×12) and a literal owner map from an exact per-time-Hall window MIP. All other construction, code, controls and proofs are PR604's and earlier contributors', unchanged. + +**This package (complex-571-cold14-k492).** It is complex-571-cold14-b3 with these changes: +- **K-triangle base words.** The leaver-read K-triangle skeleton atom and its read schedule (`data/TRI-SCHEDULE.json`) are by AtomScout, a Claude Code research agent. `code/construct_k_triangle.py` is PR531's `code/construct_504.py` (icekylinx, OpenAI Codex / GPT assisted, Apache-2.0; pinned source `direct_delivery`) extended with that atom. +- **Ported chains.** The PR604/B3 chains are ported stage by stage onto the K-triangle words by `code/build_port_stage.py` (Port480, a Claude Code research agent). `code/build_frame_regroup.py` extends PR583's `build_frames.py` (chafreaky). +- **Helper count R.** The generalisation of the global scripts to the provider helper count R is by GlobalR (a Claude Code research agent), with AtomReviewer's fixes (PROOF-NOTE-R.md). +- **Owner map.** The owner map, the cold_end recipes on the K-triangle words and the package assembly are by Stack492, Port480 and ColdBeyond (Claude Code research agents). + +Build on this at your own risk. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/assemble.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/assemble.py new file mode 100644 index 0000000000..581dd9cb29 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/assemble.py @@ -0,0 +1,241 @@ +"""Gauge44 complete global admission with the retained native exact-complex moment. + +Prepared with OpenAI Codex assistance. The rational engines and outer +constraints are retained from PR547/PR548 and their preserved ancestry. +The bit operator is the cited unchanged PR589 supplier (PR555's punctured +R439 word, v = 111, decoder constant 63, two A-section transports), shipped +as inputs/PR589-EXPECTED.json and pinned by git blob id. Its rank-mass +deficit is derived from the word's parameters, T(2Kv - L*cst) at nine +stages (PR545/PR555 rank-mass identity), not hard-coded. The complex owner +and invoice inputs must be freshly emitted by the packaged physical replay. +All conservative admission guards and conservative moment/outer witnesses run +before the PR559 native-complex correction. The bit surcharge is retained. +""" +from pathlib import Path +from fractions import Fraction as Q +from decimal import Decimal, localcontext +import argparse,json,hashlib,importlib.util,os,sys +from collections import Counter +assert __debug__, 'Assertions required' +P=Path(sys.argv[1] if __name__=='__main__' else os.environ['GAIN_PR564_SOURCE']).resolve() +read=lambda p:json.loads(p.read_text()) +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +hash_ok=lambda x:isinstance(x,str) and len(x)==64 and all(t in '0123456789abcdef'for t in x) +digest=lambda x:hashlib.sha256(json.dumps(x,separators=(',',':')).encode()).hexdigest() +def load(n): + s=importlib.util.spec_from_file_location(n,P/'engines'/(n+'.py'));m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m +M,B,A=[load(n)for n in ('moment','base_two_moment','outer')] +def dec(x): + with localcontext()as ctx:ctx.prec=70;return str(Decimal(x.numerator)/Decimal(x.denominator)) +from witness import DISPATCH,CALL_ORDER,COUNTS,PIDS,X,DISCOVER,pin,SPOT,spot_widths +# Cited bit supplier: PR589's tune/EXPECTED.json (merged on main as research/e8-bit-p111-tuned/tune/EXPECTED.json). +BIT_PATH=Path(__file__).resolve().parents[1]/'inputs/PR589-EXPECTED.json' +BIT_BLOB='e293ddc557742637f9f679f083a1a282d87b1b13' +# Nine-stage bit template (PR463/PR510 chain, 32 replicas): L stages, T replicas, K=(L-1)//2 pairs, moment width M=1+7L. +BIT_L,BIT_T=9,32;BIT_K=(BIT_L-1)//2;BIT_M=1+7*BIT_L +def git_blob(data):return hashlib.sha1(b'blob '+str(len(data)).encode()+b'\0'+data).hexdigest() +def load_bit(data): + """The pinned supplier record: its full record (word parameters) and its nine-stage price.""" + assert git_blob(data)==BIT_BLOB,'bit supplier blob pin' + return json.loads(data) +def bit_deficit(word,live): + """Rank-mass deficit M*live - mass = T(2Kv - L*cst) of a v-port bit word with decoder constant cst (PR545/PR555). + cst is the sum of the retained totals' COPY ranks and live = 2KvT data wires; both are cross-checked here, and the + caller checks the result against the priced profile, so neither v nor cst is free.""" + v,cst,ranks=word['v'],word['decoder_constant'],word['copy_ranks'] + assert type(v)is int and type(cst)is int and all(type(r)is int and 00;return d + + +def assemble(owner,invoice,owner_sha,invoice_sha): + # These are admission receipts, not optional collections of successful rows. + # Require both orientations and every finite check before pricing anything. + assert owner['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert invoice['status']=='PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE' + assert all(hash_ok(x)for x in (owner_sha,invoice_sha,owner['template_sha256'],owner['controller_audit_sha256'],invoice['parent_template_sha256'])) + checks={'local_primitive_bound','logical','router','literal','mass','precision','tape','row','halving'} + assert set(invoice['strict_checks'])==checks + assert all(invoice['strict_checks'][name] is True for name in checks) + assert set(invoice['providers'])==set(PIDS) + assert invoice['provider_counts']==COUNTS + assert owner['all_live_owners_per_call_distinct'] is True + # R (helpers per provider word) is read from the invoice and must be shared by every provider; n=2v+R. + R=invoice['helpers'];assert type(R) is int and R>0 and all(p['helpers']==R for p in invoice['providers'].values()) + assert owner['owners_per_call']==2*112+R and owner['actual_helper_owner_charts']==owner['hosted_residuals']==144*R==pin('expected.hosted_residuals',owner['hosted_residuals']) + pin('expected.rank_mass',owner['rank_mass']) + pin('expected.actual_73column_sigmas',owner['actual_73column_sigmas']);pin('expected.cross_replica_helper_roles',owner['cross_replica_helper_roles']) + pin('expected.idle_remainders',owner['explicit_idle_remainder_children']) + assert invoice['complete_invocation_sweeps']==invoice['bridge_sweeps']==144 + assert invoice['live']==owner['live'] and invoice['physical']==owner['physical'] + assert invoice['centres']==8 + assert invoice['physical_stock_identity']==dict(data_and_owner_families=14336,local_helpers=R,private_centres=8,coefficient_work=2) + assert sum(invoice['physical_stock_identity'].values())==invoice['physical'] + assert invoice['controller_audit_sha256']==owner['controller_audit_sha256'] + for pid,p in invoice['providers'].items(): + assert set(p['local'])=={'forward','backward'} + assert p['helpers']==R and p['centres']==8 and p['n']==2*112+R and p['v']==112 and p['h']==9 + K='providers.'+pid+'.';pin(K+'entering',p['entering_helpers']);pin(K+'entrance',p['entrance_rank']) + pin(K+'inventory',p['width_inventory']) + assert all(type(w) is int and 0=0 for n in idle.values()) + idle=+idle;assert sum(idle.values())==owner['explicit_idle_remainder_children'] + pin('expected.idle_remainder_profile',{str(r):n for r,n in sorted(idle.items())}) + paid.update(idle) + assert dict(paid)=={int(r):n for r,n in owner['paid_profile'].items()} + assert invoice['compiler']==64*74**3 + assert invoice['local_adapters']==max(p['local_adapters']for p in invoice['providers'].values()) + assert invoice['local_primitive_bound']==max(p['local_primitive_bound']for p in invoice['providers'].values()) + # Recount the retained dedicated-bank envelope independently. Its geometry + # stays fixed, while every local primitive and wrapper comes from the actual + # selected provider/orientation sums above. + parent_live,parent_physical,parent_idle=23408,23922,32256 + parent_banks,rem=divmod(parent_live-2*112*4*16,9);assert rem==0 and parent_physical==parent_live+504+8+2 # two independent bank groups, each with R0=504 helpers; restored private workspace is shared + assert owner['source_idle_children_charged']==parent_idle + bridges,shifts=2*112*144,4*112*16;moves=2*shifts + nonlocal_items=(4*112*16*9+2*112*16*9+2*144*R+parent_idle+9*parent_banks+bridges+shifts+moves+parent_live+parent_physical+invoice['wrapper_elementary_factors_charged']) + outside=8*nonlocal_items+64*73 + pervertex=(invoice['selected_real_component_primitives']+bridges+shifts+moves+parent_live+(144*invoice['local_adapters']+outside)*invoice['compiler']+64*parent_physical) + rebased=pervertex+65*(invoice['physical']-parent_physical)+(invoice['live']-parent_live) + assert invoice['unhosted_pervertex']==pervertex and invoice['hosted_rebased_pervertex']==rebased + used=max(pervertex,rebased) + prior=invoice['retained_prior_overcharge'] + if prior is not None: + assert hash_ok(prior['sha256']) and type(prior['previous_pervertex_allowance']) is int and prior['previous_pervertex_allowance']>0 + assert prior['added_complete_new_pervertex']==pervertex + assert prior['policy']=='Retain old allowance and add entire fresh mixed recount.' + used=max(used,prior['previous_pervertex_allowance']+pervertex) + assert invoice['conservative_pervertex_used']==used + finite=invoice['finite'] + assert 02*48*48) + assert actual_checks==invoice['strict_checks'] and all(actual_checks.values()) + bit_record=load_bit(BIT_PATH.read_bytes()) + bit=bit_record['nine'] + assert 'nine-stage' in bit['pipeline'] and '32 replicas' in bit['pipeline'] + c=Q(bit['bit_lower']) + bit_D=bit_deficit(bit_record['word'],bit['bit']['live']) + H={int(r):n for r,n in owner['paid_profile'].items()};pin('expected.global_profile',owner['paid_profile']) + # Claimed lower endpoints come from the spec; discovery derives them with the same certified moment engine. + # Either way they are verified below (accepted at b, rejected at b+1e-24). + if DISCOVER:b=Q(M.certify(H,73,owner['live'],False)['lower']);conservative_b=Q(M.certify(H,73,owner['live'],True)['lower']) + else:b=Q(X['complex_lower']);conservative_b=Q(X['conservative_complex_lower']) + assert owner['template_sha256']==invoice['template_sha256'] and owner_sha==invoice['owner_audit_sha256'] + pin('expected.live',owner['live']);pin('expected.physical',owner['physical']);assert owner['deficit']==5120 + assert owner['banked_residuals']==0 + def check_moment(side,h,m,W,lower,deficit,bad): + assert m*W-sum(r*n for r,n in h.items())==deficit and m*m>2*max(h)**2 + rows=[] + for z,accept in [(lower,True),(lower+Q(1,10**24),False)]: + l,u=M.moment(h,m,W,z,bad);ll,uu=B.moment(m,W,list(h.items()),z) + if bad: + fl,fu=B.moment(m,W,[(1,32*m*m*sum(h.values()))],z);ll+=fl/10**16;uu+=fu/10**16 + assert (u<1 and uu<1)if accept else(l>1 and ll>1) + rows.append(dict(side=side,surcharge=bad,endpoint=str(z),accept=accept,mercator=[str(l-1),str(u-1)],base_two=[str(ll-1),str(uu-1)])) + return rows + bitH={int(r):n for r,n in bit['profile'].items()} + assert BIT_M==64 and sum(r*n for r,n in bitH.items())==bit['bit']['rank_mass'] + bit_moments=check_moment('bit',bitH,BIT_M,bit['bit']['live'],c,bit_D,True) + conservative_moments=check_moment('conservative_complex',H,73,owner['live'],conservative_b,5120,True) + assert bit['bit']['two_level_coefficient_bits']0 + ceil=lambda x:-(-x.numerator//x.denominator);cut=max(ceil(36/gap**2),ceil(2*(4+512)/gap));assert cut*gap**2>=36 and cut*gap>=2*(4+512) + cuts.append(dict(exponent=str(a),gap=str(gap),cutoff_log2=str(cut)));chain.append(a) + q=chain[-1]*(1-2*eta);margin=(1-eta)*q/(1+q);ticks=margin*10**18;k=Q((ticks.numerator-1)//ticks.denominator,10**18) + bridge={'semantic':{'C0':{'base':2,'exponent':210000},'strict_literal_gap':1},'rows':{'degree_gap':Q(10**6)-Q(51*20161,25)}} + outer=A.assembly(chain[-1],bb,bridge,k,eta=eta,beta=beta);assert len(outer['strict_constraints'])==47 and all(v>0 for v in outer['strict_constraints'].values()) + controls=[] + for name,kk,ee,be in [('next_grid',k+Q(1,10**18),eta,beta),('zero_eta',k,Q(0),beta),('zero_beta',k,eta,Q(0)),('unit_beta',k,eta,Q(1))]: + try:A.assembly(chain[-1],bb,bridge,kk,eta=ee,beta=be) + except AssertionError:controls.append(name) + else:raise AssertionError(name) + return k,cuts,outer,controls + conservative_k,conservative_cuts,conservative_outer,conservative_controls=outer_witness(conservative_b) + pin('expected.conservative_kappa_decimal',dec(conservative_k)) + # Only after every conservative supplier/admission/outer check succeeds is + # the reviewed native exact-complex recurrence selected. Bit charge stays. + native_moments=check_moment('complex',H,73,owner['live'],b,5120,False) + k,cuts,outer,controls=outer_witness(b) + pin('expected.kappa_decimal',dec(k)) + assert M.moment(H,73,owner['live'],b,True)[0]>1 + assert M.moment(bitH,64,bit['bit']['live'],c+Q(1,10**24),False)[1]<1 + model_controls=['native_complex_endpoint_rejected_with_old_surcharge','omitting_bit_surcharge_would_fail_next_endpoint_rejection'] + moments=bit_moments+native_moments + input_hashes={'owner_audit':owner_sha,'fresh_invoice':invoice_sha,'package:inputs/PR589-EXPECTED.json':sha(BIT_PATH)} + input_hashes.update({'engines/'+name+'.py':sha(P/'engines'/(name+'.py'))for name in ('moment','base_two_moment','outer')}) + return dict(status='PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY',kappa=str(k),kappa_decimal=dec(k),complex_lower=str(b),complex_decimal=dec(b),bit_lower=str(c),bit_decimal=dec(c),binding='complex',gain_over_pr635_percent=dec(100*(k/Q(X['gain_baseline_kappa'])-1)),complex_profile=H,provider_counts=invoice['provider_counts'],surcharge_model={'complex':False,'bit':True},conservative_complex_lower=str(conservative_b),conservative_complex_decimal=dec(conservative_b),conservative_kappa=str(conservative_k),conservative_kappa_decimal=dec(conservative_k),conservative_moments=conservative_moments,conservative_bootstrap=conservative_cuts,conservative_outer={n:str(v)for n,v in conservative_outer['strict_constraints'].items()},conservative_controls=conservative_controls,model_controls=model_controls,native_correction_gain=dec(k-conservative_k),template_sha256=owner['template_sha256'],input_sha256=input_hashes,bit_supplier=dict(pr=589,repository='CrocSwap/integer-mult-bounds',commit='a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46',merged_as='b3eb785ac5b4b1ca2beea0f80db078a505626a90',path='research/e8-bit-p111-tuned/tune/EXPECTED.json',git_blob_sha1=BIT_BLOB,word=dict(v=bit_record['word']['v'],decoder_constant=bit_record['word']['decoder_constant'],copy_ranks=bit_record['word']['copy_ranks']),derived_deficit=bit_D,deficit_formula='T(2Kv-L*cst), L=%d T=%d K=%d M=%d'%(BIT_L,BIT_T,BIT_K,BIT_M),replay_scope='Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit.'),moments=moments,bootstrap=cuts,outer={n:str(v)for n,v in outer['strict_constraints'].items()},controls=controls,scope='Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, the gauge44-barch U8 local word and all 72 cold helper ends, and explicit all144 whole-owner dispatch with a two-copy remainder trade are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; This is a new T16 composition of the accepted PR799 and PR589 suppliers. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification.') +if __name__=='__main__': + import sys + package,C,out=map(Path,sys.argv[1:4]);assert package.resolve()==P and not out.exists() + owner_path=C/'audit/OWNERS-AND-PROFILE.json';invoice_path=C/'audit/PREFIX-AND-INVOICE.json' + owner,invoice=read(owner_path),read(invoice_path) + assert owner['template_sha256']==read(C/'hosted/HOSTED.json')['template_sha256'] + r=assemble(owner,invoice,sha(owner_path),sha(invoice_path));out.write_text(json.dumps(r,indent=2)+'\n');print(r['status'],r['kappa_decimal']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/assembly_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/assembly_controls.py new file mode 100644 index 0000000000..096ba9cdfe --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/assembly_controls.py @@ -0,0 +1,260 @@ +"""Independent admission controls for the N-provider native-complex assembly (per-provider controls). + +Prepared with OpenAI Codex assistance; Apache-2.0. Mutation receipts are +rebound to their new owner digest, so unrelated stale hashes cannot conceal +an incomplete width, provider, orientation, paid-profile or finite check. +The fresh physical replay remains a separate prerequisite. +""" +import argparse +import copy +import itertools +import math +import hashlib +import json +import os +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * + +assert __debug__, 'Assertions required' +P = Path(__file__).resolve().parent +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() +digest = lambda x: hashlib.sha256(json.dumps(x, sort_keys=True, separators=(',', ':')).encode()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + from assemble import assemble + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + baseline = assemble(owner, invoice, sha(owner_path), sha(invoice_path)) + + def empty_maps(o, i): + i['strict_checks'] = {} + i['providers'] = {} + + def understated_stock(o, i): + o['physical'] -= 1 + i['physical'] -= 1 + i['physical_stock_identity']['coefficient_work'] -= 1 + + def changed_profile(o, i): + o['paid_profile']['1'] += 2 + o['paid_profile']['2'] -= 1 + + def wrong_orientation(o, i): + c = next(c for c in i['selected_calls'] if c['stage'] == 0) + c['orientation'] = 'backward' + p = i['providers'][c['provider_id']] + z = p['local']['backward'] + c['program_sha256'] = p['program_hashes']['backward'] + for name in ('events', 'macros', 'real_component_primitives', + 'coefficient_work_primitive_count', 'pre_wrappers', 'post_wrappers'): + c[name] = z[name] + i['selected_real_component_primitives'] = sum(c['real_component_primitives'] for c in i['selected_calls']) + i['selected_coefficient_work_primitive_count'] = sum(c['coefficient_work_primitive_count'] for c in i['selected_calls']) + + def understated_prefix(o, i): + for p in i['providers'].values(): + for z in p['local'].values(): + z['prefix_bits'], z['prefix_l1'] = 1, '1' + i['global_prefix_bits'] = 1 + 37 + 144 + 144 + 4 + + def reordered_calls(o, i): + i['selected_calls'][0], i['selected_calls'][1] = i['selected_calls'][1], i['selected_calls'][0] + + def no_cold_wrappers(o, i): + for p in i['providers'].values(): + p['entering_helpers'] -= 4 + for z in p['local'].values():z['pre_wrappers'] = z['post_wrappers'] = p['entering_helpers'] + for c in i['selected_calls']: + c['entering_helpers'] = c['pre_wrappers'] = c['post_wrappers'] = i['providers'][c['provider_id']]['entering_helpers'] + i['wrapper_elementary_factors_charged'] = sum(2*c['pre_wrappers'] for c in i['selected_calls'])*i['factors_per_wrapper'] + + controls = [ + ('empty_certification_maps', empty_maps), + ('failed_invoice_status', lambda o, i: i.__setitem__('status', 'FAIL')), + ('nonboolean_precision_check', lambda o, i: i['strict_checks'].__setitem__('precision', 'true')), + ('wrong_owner_role_count', lambda o, i: o.__setitem__('actual_helper_owner_charts', o['actual_helper_owner_charts'] - 1)), + ('understated_physical_stock', understated_stock), + ('changed_profile_same_rank_mass', changed_profile), + ('insufficient_finite_C0', lambda o, i: i['finite'].__setitem__('required_C0_bits', 210001)), + ('missing_finite_check', lambda o, i: i['strict_checks'].pop('halving')), + ('wrong_reflected_orientation_selfconsistent_totals', wrong_orientation), + ('missing_selected_call', lambda o, i: i['selected_calls'].pop()), + ('wrong_selected_primitive_sum', lambda o, i: i.__setitem__('selected_real_component_primitives', i['selected_real_component_primitives'] - 1)), + ('wrong_selected_coefficient_work_sum', lambda o, i: i.__setitem__('selected_coefficient_work_primitive_count', i['selected_coefficient_work_primitive_count'] - 1)), + ('unpaid_wrapper_factors', lambda o, i: i.__setitem__('wrapper_elementary_factors_charged', i['wrapper_elementary_factors_charged'] - 144)), + ('wrong_global_compiler', lambda o, i: i.__setitem__('compiler', 1)), + ('wrong_global_adapter_maximum', lambda o, i: i.__setitem__('local_adapters', 1)), + ('understated_exact_prefix_and_global_sum', understated_prefix), + ('wrong_global_prefix_sum', lambda o, i: i.__setitem__('global_prefix_bits', 224)), + ('wrong_row_prefix_reserve', lambda o, i: i.__setitem__('row_prefix_extra', 0)), + ('wrong_parent_geometry_charge', lambda o, i: i.__setitem__('unhosted_pervertex', 1)), + ('wrong_rebased_geometry_charge', lambda o, i: i.__setitem__('hosted_rebased_pervertex', 1)), + ('wrong_complete_pervertex_envelope', lambda o, i: i.__setitem__('conservative_pervertex_used', 1)), + ('wrong_prior_added_complete_invoice', lambda o, i: i['retained_prior_overcharge'].__setitem__('added_complete_new_pervertex', 1)), + ('wrong_finite_router_bits', lambda o, i: i['finite'].__setitem__('router_bits', 1)), + ('wrong_finite_literal_bits', lambda o, i: i['finite'].__setitem__('literal_bits', 1)), + ('wrong_finite_physical_stock_bits', lambda o, i: i['finite'].__setitem__('physical_stock_bits', 1)), + ('wrong_finite_row_coefficient', lambda o, i: i['finite'].__setitem__('physical_row_coefficient', 1)), + ('reordered_complete_calls', reordered_calls), + ('understated_explicit_idle_remainders', lambda o, i: o.__setitem__('explicit_idle_remainder_children', o['explicit_idle_remainder_children']-1)), + ('understated_actual_chart_types', lambda o, i: o.__setitem__('actual_73column_sigmas', o['actual_73column_sigmas']-1)), + ('wrong_cross_replica_role_count', lambda o, i: o.__setitem__('cross_replica_helper_roles', o['cross_replica_helper_roles']-1)), + ('old_no_cold_wrapper_counts_selfconsistent', no_cold_wrappers), + ] + + def resync(i, c): + p = i['providers'][c['provider_id']] + c['program_sha256'] = p['program_hashes'][c['orientation']] + c['entering_helpers'], c['entrance_rank'] = p['entering_helpers'], p['entrance_rank'] + for name in ('events','macros','real_component_primitives','coefficient_work_primitive_count','pre_wrappers','post_wrappers'): + c[name] = p['local'][c['orientation']][name] + + # Every provider gets the full per-provider control set, substituting a partner provider where needed. + for P in PIDS: + Qp = partner(P) if len(PIDS)>1 else '__unregistered__' + widths = invoice['providers'][P]['widths'] + + def forged_program_hash(o, i, P=P): + i['providers'][P]['program_hashes']['forward'] = '0' * 64 + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = '0' * 64 + + def wrong_selected_call(o, i, P=P): + c = next(c for c in i['selected_calls'] if c['provider_id'] == P) + d = next(d for d in i['selected_calls'] if d is not c and (d['provider_id'] != P or len(PIDS)==1) and (d['stage'] - c['stage']) % 2 == 0) + c['stage'], d['stage'], c['replica'], d['replica'] = d['stage'], c['stage'], d['replica'], c['replica'] + + def stale_program(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['program_hashes'] = copy.deepcopy(i['providers'][Qp]['program_hashes']) + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = p['program_hashes'][c['orientation']] + + def stale_profile(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['paid_profile'] = copy.deepcopy(i['providers'][Qp]['paid_profile']) + p['children'] = sum(p['paid_profile'].values()) + + def moved(o, i, P=P): + a = next(c for c in i['selected_calls'] if c['provider_id'] == P) + b = next(c for c in i['selected_calls'] if c['provider_id'] != P and c['orientation'] == a['orientation']) + a['provider_id'], b['provider_id'] = b['provider_id'], a['provider_id'] + resync(i, a); resync(i, b) + + def compensating(o, i, P=P, Qp=Qp): + # Two dishonest profiles that cancel exactly in the dispatch-weighted aggregate. + g = math.gcd(COUNTS[P], COUNTS[Qp]); dp, dq = COUNTS[Qp] // g, COUNTS[P] // g + p, q = i['providers'][P], i['providers'][Qp] + p['paid_profile']['1'] += dp; q['paid_profile']['1'] -= dq + p['children'] += dp; q['children'] -= dq + + def forged_recipe(o, i, P=P): + name = 'CLIFFORD-RECIPES.json' + i['providers'][P]['artifacts'][name] = '0'*64 + o['source_artifacts']['providers/'+P+'/'+name] = '0'*64 + + def forged_phase(o, i, P=P): + i['providers'][P]['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] = '0'*64 + o['provider_phase_semantic_sha256'][P] = i['provider_phase_semantic_sha256'][P] = '0'*64 + + controls += [ + (P + ':missing_provider', lambda o, i, P=P: i['providers'].pop(P)), + (P + ':missing_backward_orientation', lambda o, i, P=P: i['providers'][P]['local'].pop('backward')), + (P + ':unpaid_scalar_primitive', lambda o, i, P=P: i['providers'][P]['local']['forward'].__setitem__('real_component_primitives', i['providers'][P]['local']['forward']['real_component_primitives'] - 1)), + (P + ':wrong_local_artifact_binding', lambda o, i, P=P: i['providers'][P]['artifacts'].__setitem__('LOCAL-PROGRAMS.json.gz', '0' * 64)), + (P + ':false_dirty_restoration', lambda o, i, P=P: i['providers'][P]['local']['backward'].__setitem__('all_dirty_helper_columns_restored', False)), + (P + ':wrong_declared_provider_count', lambda o, i, P=P: i['provider_counts'].__setitem__(P, i['provider_counts'][P] + 1)), + (P + ':wrong_local_compiler', lambda o, i, P=P: i['providers'][P].__setitem__('compiler', 1)), + (P + ':wrong_local_adapter_charge', lambda o, i, P=P: i['providers'][P].__setitem__('local_adapters', 1)), + (P + ':wrong_local_primitive_bound', lambda o, i, P=P: i['providers'][P].__setitem__('local_primitive_bound', 1)), + (P + ':forged_provider_and_call_program_hash', forged_program_hash), + (P + ':provider_at_wrong_call', wrong_selected_call), + (P + ':stale_partner_program_consistent_call_hashes', stale_program), + (P + ':stale_partner_profile_consistent_child_total', stale_profile), + (P + ':relocated_against_partner_same_counts', moved), + (P + ':compensating_false_profiles_with_' + Qp, compensating), + (P + ':synchronized_forged_source_recipe_hash', forged_recipe), + (P + ':synchronized_forged_phase_review_semantics', forged_phase), + ] + if len(PIDS)==1: + # Cross-provider substitutions require a second actual supplier. + # All single-provider program, phase, profile and dispatch bindings + # retain their direct mutations above and in the controller audit. + partner_only = {P+':stale_partner_program_consistent_call_hashes', + P+':stale_partner_profile_consistent_child_total', + P+':relocated_against_partner_same_counts', + P+':compensating_false_profiles_with_'+Qp} + controls = [(name, fn) for name, fn in controls if name not in partner_only] + # Width order and inventory: swap the first helper of every pair of distinct widths (same inventory), + # and shift one unit between them (same total). + first = {} + for h, w in enumerate(widths): + first.setdefault(w, h) + for wa, wb in itertools.combinations(sorted(first), 2): + def swap(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a], w[b] = w[b], w[a] + def shift(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a] += 1; w[b] -= 1 + controls.append((P + ':width_order_swap_%d_%d' % (wa, wb), swap)) + controls.append((P + ':width_inventory_shift_%d_%d' % (wa, wb), shift)) + for h in SPOT: + def cold_swap(o, i, P=P, h=h): + w = i['providers'][P]['widths']; j = w.index(9 if w[h] != 9 else 8); w[h], w[j] = w[j], w[h] # never the identity + controls.append((P + ':cold_helper_width_swap_%d' % h, cold_swap)) + rejected = [] + accepted = [] + for name, mutate in controls: + o, i = copy.deepcopy(owner), copy.deepcopy(invoice) + mutate(o, i) + oh = digest(o) + i['owner_audit_sha256'] = oh + try: + assemble(o, i, oh, digest(i)) + except (AssertionError, KeyError): + rejected.append(name) + else: + # Discovery has no pinned values to reject spec-only mutations; the strict run must reject every control. + if not DISCOVER: + raise AssertionError('Invalid admission receipt accepted: ' + name) + accepted.append(name) + try: + assemble(owner, invoice, '0' * 64, sha(invoice_path)) + except AssertionError: + rejected.append('wrong_owner_receipt_hash') + else: + raise AssertionError('Wrong owner digest accepted') + pin('expected.assembly_controls_rejected', len(rejected)) + assert baseline['controls'] == ['next_grid', 'zero_eta', 'zero_beta', 'unit_beta'] + assert baseline['conservative_controls'] == baseline['controls'] + assert baseline['surcharge_model'] == {'complex': False, 'bit': True} + assert len(baseline['model_controls']) == 2 + return dict( + status='PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS', + valid_receipt_kappa=baseline['kappa'], + input_sha256=baseline['input_sha256'], + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + rejected_controls=rejected, + discovery_accepted_controls=accepted, + exact_outer_controls=baseline['controls'], + conservative_outer_controls=baseline['conservative_controls'], + recurrence_model_controls=baseline['model_controls'], + scope='Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay.', + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/audit_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/audit_allcold.py new file mode 100644 index 0000000000..923bf7b675 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/audit_allcold.py @@ -0,0 +1,254 @@ +"""OpenAI Codex independent serialized ASYNCHRONOUS controller/spectator audit. +Imports no emitter, optimizer, expander, edge-coloring, or source hosting code. +CLI: BASE HOSTED REPORT [--mutation-controls] +Each provider is independently read from BASE/providers, never from a baseline width histogram. +OpenAI Codex two-provider width-seven extension; retains all inherited independent controller checks. +The exact 63 width-seven and 9 plain calls are frozen below. +""" +import sys,json,gzip,hashlib,copy +assert __debug__, 'Assertions must remain enabled' +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +BASE,OUT,REPORT=map(lambda p:Path(p).resolve(),sys.argv[1:4]);read=lambda p:json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +parent=read(BASE/'split-centres/GLOBAL-TEMPLATE.json.gz') +ph=read(BASE/'work/complex-nine-native/DATA-PHASES.json') +ct=read(OUT/'GLOBAL-TEMPLATE.json.gz');summary=read(OUT/'HOSTED.json') +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +provider_ids=PIDS +providers={};registry={};phase_semantic_hashes={};artifact_semantic_hashes={} +required_artifacts={'work/complex-nine-native/DATA-PHASES.json'} +provider_files=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json') +for pid in provider_ids: + p=BASE/'providers'/pid + c=read(p/'CANONICAL-WORD.json.gz');checks=read(p/'LOCAL-CHECKS.json') + programs=read(p/'LOCAL-PROGRAMS.json.gz');replay=read(p/'INDEPENDENT-LOCAL-REPLAY.json') + phase=read(p/'CLIFFORD-REVIEW.json');adapters=read(p/'RESIDUAL-ADAPTERS.json')['recipes'] + widths=[len(c['frames'][c['final'][2*c['v']+h]])-len(c['frames'][c['start'][2*c['v']+h]])for h in range(c['R'])] # HPE: residual width |final|-|start| + assert tuple(widths[h]for h in SPOT)==spot_widths();pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + canonical_sha=sha(p/'CANONICAL-WORD.json.gz');programs_sha=sha(p/'LOCAL-PROGRAMS.json.gz') + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==canonical_sha and replay['local_programs_sha256']==programs_sha + assert replay['v']==c['v'] and replay['helpers']==c['R'] + assert set(programs)==set(checks)==set(replay['local'])==set(replay['paid_profiles'])=={'forward','backward'} + for orientation,events in programs.items(): + ck=checks[orientation];rr=replay['local'][orientation] + assert hashlib.sha256(json.dumps(events,sort_keys=True,separators=(',',':')).encode()).hexdigest()==ck['sha256'] + assert ck['events']==len(events) and ck['all_columns']==2*c['v']+c['R'] + assert ck['private_centers_cleared'] and ck['private_coefficient_stream_cleared_after_each_macro'] + assert rr['all_exact_columns']==2*c['v']+c['R'] and rr['private_work_erased'] + literal=Counter(e[-1]for e in events if e[0]in('climb','center')) + assert dict(literal)=={int(r):n for r,n in ck['paid_profile'].items()}=={int(r):n for r,n in c['local_profile'].items()} + assert ck['paid_profile']==replay['paid_profiles'][orientation] + assert phase['canonical_word_sha256']==canonical_sha and phase['recipe_sha256']==sha(p/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] + artifact_semantic_hashes[pid]=artifact_identities(p) + pin('providers.%s.artifact_semantic_sha256'%pid,artifact_semantic_hashes[pid]) + phase_semantic_hashes[pid]=artifact_semantic_hashes[pid]['CLIFFORD-REVIEW.json'] + for h,w in enumerate(widths): + assert 0>i)&1==0);a=q^(1<>i&1 else 0)for i in order]+[1<2*max(paid)**2 + return dict(profile=dict(sorted(paid.items())),mass=mass,hosted=HOSTED,entering=entering,cross_replica=cross,sigma_digest=digest.hexdigest(),sigmas=sigmas,idle_remainders=len(wanted),busy_family_checks=len(roles),invocations=144) + +r=audit(ct);raw=gzip.decompress((OUT/'GLOBAL-TEMPLATE.json.gz').read_bytes());assert hashlib.sha256(raw).hexdigest()==summary['template_sha256'];assert r['profile']=={int(k):v for k,v in summary['global_profile'].items()};assert r['sigmas']==read(OUT/'ACTUAL-SIGMAS.json.gz');assert r['sigma_digest']==summary['sigma_stream_sha256'] +assert all(hashlib.sha256((BASE/name).read_bytes()).hexdigest()==value for name,value in summary['source_artifacts'].items()) +controls=[] +def reject(name,mut): + if '--mutation-controls' not in sys.argv[4:]:return + q=copy.deepcopy(ct);mut(q) + try:audit(q) + except(AssertionError,KeyError,IndexError,ValueError,TypeError):controls.append(name) + else:raise AssertionError('ACCEPTED '+name) +enter=lambda q:next(o for c in q['calls']for o in c['owners'][(2*V):]if o[1][0]==4) +reject('alias two whole owners',lambda q:q['calls'][0]['owners'].__setitem__((2*V+1),q['calls'][0]['owners'][(2*V)])) +reject('helper on active data family',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,q['calls'][0]['owners'][0][0])) +reject('owner in private namespace',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,DATA)) +reject('wrong residual width',lambda q:enter(q)[1].__setitem__(3,enter(q)[1][3]-1)) +reject('wrong spectator coordinate',lambda q:enter(q)[1][4].__setitem__(0,72)) +reject('omit idle remainder',lambda q:q['idle_children'].pop()) +reject('understate physical reserve',lambda q:q.__setitem__('physical',PHYSICAL-1)) +# Single-provider dispatch still has all source/program/width binding controls. +if len(provider_ids)==1: + P=provider_ids[0] + at_p=lambda q:next(c for c in q['calls']if c['provider_id']==P) + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q:at_p(q).__setitem__('provider_id','__unregistered__')) + reject(P+': stale per-call local program hash',lambda q:at_p(q).__setitem__('local_program_sha256','0'*64)) + reject(P+': stale serialized provider program',lambda q:q['local_providers'][P]['local_programs']['forward'].pop()) + reject(P+': unbound residual adapter hash',lambda q:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + reject(P+': wrong provider width registry',lambda q:q['local_providers'][P]['widths'].__setitem__(narrow,providers[P]['widths'][narrow]-1)) + reject(P+': wrong per-call residual width',lambda q:at_p(q)['owners'][2*V+narrow][1].__setitem__(3,at_p(q)['owners'][2*V+narrow][1][3]-1)) + reject(P+': wrong sweep provider',lambda q:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep').__setitem__('provider_id','__unregistered__')) + reject(P+': entering helper width silently restored to nine',lambda q:q['local_providers'][P]['widths'].__setitem__(narrow,9)) +else: + # Per-provider substitution controls: every provider is swapped against a partner provider. + for P in provider_ids: + Qp=partner(P) + at_p=lambda q,P=P:next(c for c in q['calls']if c['provider_id']==P) + diff=[h for h in range(R)if providers[P]['widths'][h]!=providers[Qp]['widths'][h]] + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q,P=P,Qp=Qp,at_p=at_p:at_p(q).__setitem__('provider_id',Qp)) + reject(P+': stale per-call local program hash',lambda q,Qp=Qp,at_p=at_p:at_p(q).__setitem__('local_program_sha256',registry[Qp]['local_program_checks'][at_p(q)['orientation']]['sha256'])) + reject(P+': stale serialized provider program',lambda q,P=P,Qp=Qp:q['local_providers'][P].__setitem__('local_programs',registry[Qp]['local_programs'])) + reject(P+': unbound residual adapter hash',lambda q,P=P:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + if diff:reject(P+': partner width in provider width registry',lambda q,P=P,Qp=Qp,h=diff[0]:q['local_providers'][P]['widths'].__setitem__(h,providers[Qp]['widths'][h])) + reject(P+': wrong per-call residual width',lambda q,at_p=at_p,h=narrow:at_p(q)['owners'][2*V+h][1].__setitem__(3,at_p(q)['owners'][2*V+h][1][3]-1)) + reject(P+': wrong sweep provider',lambda q,P=P,Qp=Qp:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep'and DISPATCH[e['stage'],e['replica']]==P).__setitem__('provider_id',Qp)) + reject(P+': entering helper width silently restored to nine',lambda q,P=P,h=narrow:q['local_providers'][P]['widths'].__setitem__(h,9)) + +report=dict(status='PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS',template_sha256=summary['template_sha256'],complex_template_sha256=summary['template_sha256'],complex_live=DATA,complex_profile=r['profile'],complex_hosted_residuals=HOSTED,physical=PHYSICAL,rank_mass=r['mass'],deficit=5120,entering_helper_roles=r['entering'],cross_replica_helper_roles=r['cross_replica'],one_owner_per_complete_invocation=True,helper_busy_family_window_checks=r['busy_family_checks'],complete_invocations=r['invocations'],actual_orthogonal_73column_maps=len(r['sigmas']),actual_sigma_stream_sha256=r['sigma_digest'],all_actual_residual_and_spectator_charts=True,idle_remainders=r['idle_remainders'],mutations_rejected=controls,mutation_controls_run='--mutation-controls' in sys.argv[4:],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,widths_by_provider={pid:dict(sorted(Counter(providers[pid]['widths']).items()))for pid in provider_ids},provider_counts=dict(Counter(c['provider_id']for c in ct['calls'])),all_provider_program_phase_and_wrapper_bindings=True,scope='Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations.') +REPORT.parent.mkdir(parents=True,exist_ok=True) +REPORT.write_text(json.dumps(report,indent=2)+'\n');print(json.dumps(report,indent=2)) + +owners=dict(status='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE',template_sha256=summary['template_sha256'],paid_profile=r['profile'],live=DATA,physical=PHYSICAL,rank_mass=r['mass'],deficit=5120,hosted_residuals=HOSTED,banked_residuals=0,all_live_owners_per_call_distinct=True,owners_per_call=N,actual_helper_owner_charts=HOSTED,actual_73column_sigmas=len(r['sigmas']),cross_replica_helper_roles=r['cross_replica'],explicit_idle_remainder_children=r['idle_remainders'],source_idle_children_charged=sum(x['replicas']for x in parent['idle_children']),source_artifacts=summary['source_artifacts'],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,controller_audit_sha256=hashlib.sha256(REPORT.read_bytes()).hexdigest()) +(REPORT.parent/'OWNERS-AND-PROFILE.json').write_text(json.dumps(owners,indent=2)+'\n') + +# Literal residual frames are a compact export of the already checked offsets, +# not another global replay. Every row names its actual inherited axes. +frames=[] +for z in ct['idle_children']: + axes=list(map(int,ph['recipes'][z['port']]['idle_children'][z['child']]['orthogonal_axes'])) + tail=axes[z['pending_offset']:] + assert len(tail)==z['rank'] + frames.append(dict(z,orthogonal_axes=tail)) +frame_raw=json.dumps(frames,sort_keys=True,separators=(',',':')).encode() +portable=bytearray(gzip.compress(frame_raw,mtime=0));portable[9]=255 +(OUT/'IDLE-REMAINDER-FRAMES.json.gz').write_bytes(bytes(portable)) +frame_receipt=dict(status='PASS_LITERAL_IDLE_REMAINDER_FRAMES',template_sha256=summary['template_sha256'], + uncompressed_frames_sha256=hashlib.sha256(frame_raw).hexdigest(),children=len(frames), + rank_profile=dict(sorted(Counter(z['rank']for z in frames).items())), + source_data_phase_sha256=hashlib.sha256((BASE/'work/complex-nine-native/DATA-PHASES.json').read_bytes()).hexdigest(), + scope='Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child.') +(REPORT.parent/'IDLE-REMAINDER-FRAMES.json').write_text(json.dumps(frame_receipt,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/bind_providers_portable.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/bind_providers_portable.py new file mode 100644 index 0000000000..97e28da17e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/bind_providers_portable.py @@ -0,0 +1,67 @@ +"""Bind freshly verified plain and width-seven four-cold providers to the frozen literal owner plan. +Prepared with OpenAI Codex assistance; Apache-2.0. All byte-stable native +files are pinned to the plan. Only validated phase-receipt timing/serialization +and directory fields are rebound; no dispatch, width or owner choice changes. +""" +import argparse,copy,gzip,hashlib,json,shutil +from collections import Counter +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +assert __debug__, 'Assertions required' +ap=argparse.ArgumentParser(description=__doc__) +for name in ('baseline','plan','out'):ap.add_argument('--'+name,type=Path,required=True) +ap.add_argument('--provider',action='append',required=True,help='PID=DIR');a=ap.parse_args();assert not a.out.exists();a.out.mkdir(parents=True) +def read(p):return json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +base=a.out/'base';shutil.copytree(a.baseline/'complex-global/base',base) +ap2=dict(x.split('=',1)for x in a.provider);dirs={k:Path(v)for k,v in ap2.items()};assert set(dirs)==set(PIDS) +for pid,src in dirs.items():shutil.copytree(src,base/'providers'/pid) +pin('data.plan_sha256',sha(a.plan)) +plan=read(a.plan);original=copy.deepcopy(plan);sources={};helpers=set() # R: helper count per provider word; all providers must agree +assert set(plan['provider_registry'])==set(dirs) +assert {(c['stage'],c['replica']):c['provider']for c in plan['provider_calls']}==DISPATCH,'PLAN dispatch differs from spec dispatch' +stable=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json') +for pid,desc in plan['provider_registry'].items(): + d=base/'providers'/pid + word,program,checks,native,phase=[read(d/name)for name in('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-REVIEW.json')] + assert (word['v'],word['h'],len(word['centers']))==(112,9,8) and type(word['R']) is int and word['R']>0;helpers.add(word['R']) + assert word['ports']==desc['ports'] and word['centers']==desc['centers'] + widths=[len(word['frames'][word['final'][r]])-len(word['frames'][word['start'][r]])for r in range(2*112,2*112+word['R'])] # HPE: residual width |final|-|start| + assert tuple(widths[h]for h in SPOT)==spot_widths() + assert widths==desc['widths'];pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + assert native['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + pin('providers.%s.native_negative_controls'%pid,len(native['negative_controls_rejected'])) + assert native['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and native['local_programs_sha256']==sha(d/'LOCAL-PROGRAMS.json.gz') + assert phase['status']=='PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES' + assert phase['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and phase['recipe_sha256']==sha(d/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] is True and phase['endpoint_adapters']==224 + pin('providers.%s.phase_edges'%pid,phase['directed_edges']) + assert set(program)==set(checks)=={'forward','backward'} + expected={int(r):n for r,n in checks['forward']['paid_profile'].items()};pin('providers.%s.expected_profile'%pid,checks['forward']['paid_profile']) + for orientation,events in program.items(): + profile=Counter() + for e in events: + if e[0]=='climb':profile[e[5]]+=1 + elif e[0]=='center':profile[e[4]]+=1 + assert dict(profile)==expected=={int(r):n for r,n in checks[orientation]['paid_profile'].items()}=={int(r):n for r,n in native['paid_profiles'][orientation].items()} + assert hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest()==checks[orientation]['sha256'] + identities=artifact_identities(d) + pin('providers.%s.artifact_semantic_sha256'%pid,identities) + assert identities==desc['artifact_semantic_sha256'] + for name in ('LOCAL-CHECKS.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json'): + assert sha(d/name)==desc['artifact_sha256'][name],(pid,name,'changed non-reference artifact') + for c in plan['provider_calls']: + if c['provider']==pid: + assert c['orientation']==('forward'if c['stage']%2==0 else'backward') + assert c['local_program_sha256']==checks[c['orientation']]['sha256'] + desc['directory']='providers/'+pid + desc['artifact_sha256']={name:sha(d/name)for name in desc['artifact_sha256']} + sources[pid]=dict(artifact_sha256=desc['artifact_sha256'],canonical_content_sha256=hashlib.sha256(json.dumps(word,sort_keys=True,separators=(',',':')).encode()).hexdigest(),all_phase_edges=phase['directed_edges']) +assert len(helpers)==1,'providers disagree on helper count R: %s'%sorted(helpers) +plan['runtime_source_plan_sha256']=sha(a.plan) +(a.out/'PLAN.json').write_text(json.dumps(plan,indent=2)+'\n') +receipt=dict(status='PASS_FROZEN_048_ALLCOLD_DISPATCH_FRESH_PROVIDER_BINDING',source_plan_sha256=sha(a.plan),runtime_plan_sha256=sha(a.out/'PLAN.json'),providers=sources,only_rebound_fields=['provider_registry.directory','provider_registry.artifact_sha256','runtime_source_plan_sha256']) +(a.out/'BINDING.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(receipt['status']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/bit_supplier_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/bit_supplier_controls.py new file mode 100644 index 0000000000..e86b8527b4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/bit_supplier_controls.py @@ -0,0 +1,111 @@ +"""Negative controls for the cited PR589 bit supplier and its derived rank-mass deficit. + +Apache-2.0. Each control mutates one input of the changed bit-supplier sites in assemble.py (the pinned record, the +deficit derivation from the word's parameters, the profile/live binding, the claimed endpoint) and runs the unchanged +assemble() on the fresh owner/invoice receipts. Every control must be rejected; the unmutated run must pass. +`revert_hardcoded_9984` restores the PR543 constant the parent package hard-coded: with PR589's word it must fail. +""" +import argparse +import copy +import hashlib +import json +import os +import tempfile +from fractions import Fraction as Q +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) + +assert __debug__, 'Assertions required' +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + import assemble as A + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + args = (owner, invoice, sha(owner_path), sha(invoice_path)) + baseline = A.assemble(*args) + data = A.BIT_PATH.read_bytes() + record = A.load_bit(data) + word = record['word'] + assert A.bit_deficit(word, record['nine']['bit']['live']) == 10272 == 32 * (8 * 111 - 9 * 63) + + real_load, real_deficit = A.load_bit, A.bit_deficit + + def with_record(mutate): + def load(d): + r = copy.deepcopy(real_load(d)); mutate(r); return r + return load + + def shift_profile(r): # one rank-1 child becomes rank 2: rank mass +1, totals unchanged + p = r['nine']['profile']; p['1'] -= 1; p['2'] += 1; r['nine']['bit']['rank_mass'] += 1 + + bumped = data.replace(record['nine']['bit_lower'].encode(), + str(Q(record['nine']['bit_lower']) + Q(1, 10**24)).encode(), 1) + assert bumped != data + pr543 = (source_package / 'inputs/PR543-EXPECTED.json').read_bytes() + controls = [ + # deficit site: the parent's hard-coded constant, restored + ('revert_hardcoded_9984', dict(bit_deficit=lambda w, live: 9984)), + # deficit site: each word parameter perturbed alone + ('ports_112', dict(load_bit=with_record(lambda r: r['word'].__setitem__('v', 112)))), + ('decoder_constant_64_copy_ranks_unchanged', dict(load_bit=with_record(lambda r: r['word'].__setitem__('decoder_constant', 64)))), + # v=111, cst=64 derives 32*(888-576)=9984: consistent word, wrong for the priced profile + ('decoder_constant_64_with_one_copy_rank_8', dict(load_bit=with_record(lambda r: (r['word'].__setitem__('decoder_constant', 64), r['word']['copy_ranks'].__setitem__(0, 8))))), + ('eight_retained_totals', dict(load_bit=with_record(lambda r: (r['word'].__setitem__('copy_ranks', [7] * 8), r['word'].__setitem__('decoder_constant', 56))))), + ('live_minus_one', dict(load_bit=with_record(lambda r: r['nine']['bit'].__setitem__('live', r['nine']['bit']['live'] - 1)))), + # profile binding: same totals, rank mass +1 + ('profile_rank_mass_plus_one', dict(load_bit=with_record(shift_profile))), + ('profile_rank_mass_receipt_mismatch', dict(load_bit=with_record(lambda r: r['nine']['bit'].__setitem__('rank_mass', r['nine']['bit']['rank_mass'] + 1)))), + # endpoint: the next 1e-24 grid point + ('bit_lower_next_grid', dict(load_bit=with_record(lambda r: r['nine'].__setitem__('bit_lower', str(Q(r['nine']['bit_lower']) + Q(1, 10**24)))))), + ('not_nine_stage_record', dict(load_bit=with_record(lambda r: r['nine'].__setitem__('pipeline', r['nine']['pipeline'].replace('nine-stage', 'eleven-stage'))))), + # pinned-input site: tampered bytes and the parent's PR543 file under the PR589 pin + ('tampered_bytes_next_grid', dict(read=bumped)), + ('pr543_file_under_pr589_pin', dict(read=pr543)), + ] + rejected = [] + scratch = Path(tempfile.mkdtemp(prefix='bitctl-')) + for name, patch in controls: + saved_path = A.BIT_PATH + try: + if 'read' in patch: + tmp = scratch / (name + '.json'); tmp.write_bytes(patch['read']); A.BIT_PATH = tmp + A.load_bit = patch.get('load_bit', real_load) + A.bit_deficit = patch.get('bit_deficit', real_deficit) + try: + A.assemble(*args) + except (AssertionError, KeyError): + rejected.append(name) + else: + raise AssertionError('Invalid bit supplier accepted: ' + name) + finally: + A.load_bit, A.bit_deficit, A.BIT_PATH = real_load, real_deficit, saved_path + if 'read' in patch: + tmp.unlink() + scratch.rmdir() + assert rejected == [n for n, _ in controls] + again = A.assemble(*args) + assert again['kappa'] == baseline['kappa'] and again['bit_lower'] == baseline['bit_lower'] + return dict( + status='PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS', + kappa=baseline['kappa_decimal'], bit_lower=baseline['bit_lower'], bit_decimal=baseline['bit_decimal'], + binding=baseline['binding'], bit_supplier=baseline['bit_supplier'], + derived_deficit=baseline['bit_supplier']['derived_deficit'], + rejected_controls=rejected, + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n', newline='\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/emit_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/emit_allcold.py new file mode 100644 index 0000000000..28a08a79da --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/emit_allcold.py @@ -0,0 +1,150 @@ +"""Two-provider width-seven whole-owner derivative, adapted with OpenAI Codex assistance. +Based on PR514 and its credited PR484/507 lineage. +CLI: --base VERIFIED_VARIANT --owners ASYNC-OWNERS.json.gz --plan ASYNC-PLAN.json --out OUT +No optimizer or unpublished word builder runs. The frozen map explicitly names +one whole helper per family per complete invocation, plus borrowed spectators. +""" +import sys,json,gzip,hashlib,copy,argparse +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +parser=argparse.ArgumentParser(description=__doc__) +parser.add_argument('--base',type=Path,required=True);parser.add_argument('--owners',type=Path,required=True);parser.add_argument('--plan',type=Path,required=True);parser.add_argument('--out',type=Path,required=True) +a=parser.parse_args();BASE,MAP,PLAN,OUT=(p.resolve()for p in(a.base,a.owners,a.plan,a.out));assert not OUT.exists();OUT.mkdir(parents=True) +class OH: + @staticmethod + def idle_basis(q): + z=next(i for i in range(9)if not(q>>i)&1);u=q^(1<>i&1 else 0)for i in order]+[1<0 and all(x['R']==R for x in registry.values()),'providers disagree on helper count R' + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz')and replay['local_programs_sha256']==sha(directory/'LOCAL-PROGRAMS.json.gz') + widths=[len(pc['frames'][pc['final'][2*V+h]])-len(pc['frames'][pc['start'][2*V+h]])for h in range(R)] # HPE: residual width |final|-|start| + assert widths==plan['provider_registry'][provider_id]['widths'] + for name in provider_files: + value=sha(directory/name);assert value==plan['provider_registry'][provider_id]['artifact_sha256'][name] + source_artifacts[f'providers/{provider_id}/{name}']=value + registry[provider_id]=dict(local_programs=programs,canonical_word_sha256=sha(directory/'CANONICAL-WORD.json.gz'),local_programs_sha256=sha(directory/'LOCAL-PROGRAMS.json.gz'),local_program_checks=checks,exact_local_clifford_recipe_sha256=sha(directory/'CLIFFORD-RECIPES.json'),residual_adapter_sha256=sha(directory/'RESIDUAL-ADAPTERS.json'),v=V,h=9,R=R,ports=pc['ports'],centers=pc['centers'],widths=widths) +assert len(roles)==144*R # one whole-owner role per (call, provider helper) +selected={(c['stage'],c['replica']):c for c in plan['provider_calls']} +assert len(selected)==144 and set(selected)==set(call_order) +assert Counter(c['provider']for c in selected.values())==COUNTS +per_call_widths={(c['stage'],c['replica']):c['widths']for c in plan['per_call_widths']} +for key,c in selected.items(): + assert c['time']==at[key] and c['provider']in registry + assert per_call_widths[key]==registry[c['provider']]['widths'] +for key in('local_programs','exact_local_clifford_recipe_sha256','residual_adapter_sha256'):t.pop(key) +t['local_providers']=registry +rank={z['child']:z['rank']for z in parent['idle_children']};side={};pairs={} +for e in parent['execution_schedule']: + if e['kind']=='idle_cover_sweep': + for sd,ch in enumerate(e['child_indices']):side[ch]=sd;pairs[ch]=e['pair'] +bycall=defaultdict(dict);used=defaultdict(set);sigmas={};digest=hashlib.sha256();entering=0 +for z in roles: + s,rep,h=z['stage'],z['replica'],z['helper'];i,cp,off,w,f=z['child'],z['copy'],z['offset'],z['width'],z['family'];orp,port=divmod(cp,V) + assert 0<=s<9 and 0<=rep=0 and off+w<=rank[i] + assert z['time']==at[s,rep] and z['time'] in plan['windows'][f'{orp},{i}'][1] + B=OH.idle_basis(canon['ports'][port]);pending=list(map(int,ph['recipes'][port]['idle_children'][i]['orthogonal_axes']));assert len(pending)==rank[i] + occ=[B.index(v)for v in pending[off:off+w]];sp=OH.spectators(canon['ports'][port],pending,off,w)if w<9 else[] + order=occ+sp+[j for j in range(M)if j not in occ and j not in sp];assert len(order)==len(set(order))==M + sigma=[B[j]for j in order];sigmahash=hashlib.sha256(json.dumps(sigma,separators=(',',':')).encode()).hexdigest();sigmas[sigmahash]=sigma + route=[4,i,off,w,sp]if w<9 else[3,i,off];bycall[s,rep][h]=[f,route];entering+=w<9 + cells=set(range(off,off+w));assert not used[i,orp,port]&cells;used[i,orp,port]|=cells + digest.update(json.dumps([s,rep,h,f,sigmahash],separators=(',',':')).encode()+b'\n') +for c in t['calls']: + k=(c['stage'],c['replica']);assert set(bycall[k])==set(range(R)) + c['owners']=c['owners'][:(2*V)]+[bycall[k][h]for h in range(R)];assert len({f for f,r in c['owners']})==2*V+R and all(f2*max(paid)**2 + +assert all(c['local_program_sha256']==registry[c['provider_id']]['local_program_checks'][c['orientation']]['sha256']for c in t['calls']) +t['provider_dispatch']='For each indivisible local_cover_sweep, execute local_providers[call.provider_id].local_programs[call.orientation] with that provider residual adapters and Clifford recipes. The sweep provider_id must equal its call provider_id.' +raw=json.dumps(t,sort_keys=True,separators=(',',':')).encode();(OUT/'GLOBAL-TEMPLATE.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +res=dict(status='EMITTED_MIXED_PROVIDER_ASYNCHRONOUS_WHOLE_OWNER_COMPLEX_TEMPLATE', + template_sha256=hashlib.sha256(raw).hexdigest(), + parent_template_sha256=hashlib.sha256(gzip.decompress((BASE/'split-centres/GLOBAL-TEMPLATE.json.gz').read_bytes())).hexdigest(), + live=DATA,physical=physical,global_profile=dict(sorted(paid.items())), + rank_mass=sum(r*n for r,n in paid.items()),deficit=5120,maxchild=max(paid), + hosted_residuals=len(roles),banks_per_stage=[0]*9,entering_helper_roles=entering, + unique_actual_73column_sigmas=len(sigmas),sigma_stream_sha256=digest.hexdigest(), + cross_replica_helper_roles=sum(z['replica']!=z['owner_replica']for z in roles), + asynchronous_order_sha256=hashlib.sha256(json.dumps(call_order,separators=(',',':')).encode()).hexdigest(), + source_artifacts=source_artifacts,provider_counts=dict(Counter(c['provider_id']for c in t['calls'])), + scope='Two actual verified plain/width-seven providers dispatched per complete invocation; independent controller/spectator/normalization and complete finite invoice admission required.') +(OUT/'HOSTED.json').write_text(json.dumps(res,indent=2)+'\n');(OUT/'ACTUAL-SIGMAS.json.gz').write_bytes(gzip.compress(json.dumps(sigmas,separators=(',',':')).encode(),mtime=0));print(json.dumps(res,indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/freeze_spec.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/freeze_spec.py new file mode 100644 index 0000000000..4fe3b88915 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/freeze_spec.py @@ -0,0 +1,29 @@ +"""Freeze independently recomputed discovery values before strict replay.""" +import argparse +import json +from pathlib import Path + +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--spec', type=Path, required=True) +ap.add_argument('--discovery', type=Path, required=True) +a = ap.parse_args() +spec = json.loads(a.spec.read_text()) +for line in (a.discovery/'WITNESS-RECORD.jsonl').read_text().splitlines(): + key, value = json.loads(line) + parts = key.split('.') + if len(parts)>3 and parts[0]=='providers' and parts[2]=='artifacts': + parts = parts[:3] + ['.'.join(parts[3:])] + target = spec + for part in parts[:-1]: + target = target.setdefault(part, {}) + if parts[-1] in target: + assert target[parts[-1]]==value, 'Conflicting independent recomputations: '+key + target[parts[-1]] = value +assembly = json.loads((a.discovery/'ASSEMBLY.json').read_text()) +for key in ('complex_lower','conservative_complex_lower','kappa','kappa_decimal','conservative_kappa_decimal'): + spec['expected'][key] = assembly[key] +spec['expected']['assembly_controls_rejected'] = 69 +spec['expected']['provider_counts'] = {'gauge44':144} +spec['expected']['mutations_rejected'] = 15 +a.spec.write_text(json.dumps(spec, indent=2)+'\n') +print('Frozen exact witness for strict replay:', assembly['kappa_decimal']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/generated_identity.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/generated_identity.py new file mode 100644 index 0000000000..74a9b60479 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/generated_identity.py @@ -0,0 +1,62 @@ +"""Proof-relevant identities for generated artifacts, independent of gzip streams. + +Immutable source archives retain their exact byte hashes. For freshly emitted +artifacts, gzip identity is the exact decompressed payload and JSON identity +retains every field. Only CLIFFORD-REVIEW's root timing field is excluded. +Literal receipt references are checked against actual files before replacing +the three gzip references (and the phase recipe reference) with content hashes. +Prepared with OpenAI Codex assistance; Apache-2.0. +""" +from pathlib import Path +import copy +import gzip +import hashlib +import json +import math + +if not __debug__: + raise RuntimeError('Assertions must remain enabled') + +FILES=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json') + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + +def json_identity(value): + return hashlib.sha256(json.dumps(value,sort_keys=True,separators=(',',':'),allow_nan=False).encode('utf-8')).hexdigest() + +def payload_identity(path): + return hashlib.sha256(gzip.decompress(Path(path).read_bytes())).hexdigest() + +def phase_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'CLIFFORD-REVIEW.json').read_bytes())if value is None else value) + assert value['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz'),'stale phase canonical word reference' + assert value['recipe_sha256']==sha(directory/'CLIFFORD-RECIPES.json'),'stale phase recipe reference' + seconds=value.pop('seconds') + assert type(seconds)in(int,float) and math.isfinite(seconds) and seconds>=0,'invalid phase timing metadata' + value['canonical_word_sha256']=payload_identity(directory/'CANONICAL-WORD.json.gz') + value['recipe_sha256']=json_identity(json.loads((directory/'CLIFFORD-RECIPES.json').read_bytes())) + return value + +def native_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'INDEPENDENT-LOCAL-REPLAY.json').read_bytes())if value is None else value) + for field,name in [('canonical_word_sha256','CANONICAL-WORD.json.gz'),('local_programs_sha256','LOCAL-PROGRAMS.json.gz')]: + assert value[field]==sha(directory/name),'stale native artifact reference: '+field + value[field]=payload_identity(directory/name) + return value + +def artifact_identities(directory): + directory=Path(directory) + result={} + for name in FILES: + path=directory/name + if name.endswith('.gz'): + result[name]=payload_identity(path) + else: + value=phase_value(directory)if name=='CLIFFORD-REVIEW.json'else native_value(directory)if name=='INDEPENDENT-LOCAL-REPLAY.json'else json.loads(path.read_bytes()) + result[name]=json_identity(value) + return result diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/invoice_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/invoice_allcold.py new file mode 100644 index 0000000000..d1dd221291 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/code/invoice_allcold.py @@ -0,0 +1,329 @@ +"""Fresh call-specific mixed-provider finite invoice. + +Prepared with OpenAI Codex assistance, Apache-2.0. The scalar/Horner recount +and finite inequalities are adapted from the retained PR558 -> PR552 -> +PR531 invoice_final.py, whose notices and sources are preserved in the package. +Every call selects a hash-bound provider. Shared compiler reserves use maxima; +primitive work, coefficient work, local children and wrappers are also summed +from actual selected provider/orientation records. +""" +import argparse, gzip, hashlib, json +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path +assert __debug__, 'Assertions required' + +def read(path): + data=path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix=='.gz' else data) +def filehash(path): return hashlib.sha256(path.read_bytes()).hexdigest() +def contenthash(path): + data=path.read_bytes() + return hashlib.sha256(gzip.decompress(data) if path.suffix=='.gz' else data).hexdigest() +def programhash(events): + return hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest() + +def recount_provider(local_dir, registry): + cp=local_dir/'CANONICAL-WORD.json.gz'; pp=local_dir/'LOCAL-PROGRAMS.json.gz' + rp=local_dir/'INDEPENDENT-LOCAL-REPLAY.json' + w,programs,replay=read(cp),read(pp),read(rp) + checks=read(local_dir/'LOCAL-CHECKS.json') + assert set(programs)=={'forward','backward'} + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==filehash(cp)==registry['canonical_word_sha256'] + assert replay['local_programs_sha256']==filehash(pp)==registry['local_programs_sha256'] + assert programs==registry['local_programs'] + assert checks==registry['local_program_checks'] + assert filehash(local_dir/'CLIFFORD-RECIPES.json')==registry['exact_local_clifford_recipe_sha256'] + assert filehash(local_dir/'RESIDUAL-ADAPTERS.json')==registry['residual_adapter_sha256'] + v,helpers,h,m=w['v'],w['R'],w['h'],73 + assert (v,h)==(112,9) and type(helpers) is int and helpers>0 + assert registry['v']==v and registry['R']==helpers and registry['h']==h + assert registry['ports']==w['ports'] and registry['centers']==w['centers'] + assert replay['v']==v and replay['helpers']==helpers + n=2*v+helpers + widths = [len(w['frames'][w['final'][r]])-len(w['frames'][w['start'][r]]) for r in range(2*v, 2*v+helpers)] # HPE: |final|-|start| + terminal_codim = sum(h-len(w['frames'][w['final'][r]]) for r in range(2*v, 2*v+helpers)) # HPE: 0 for FULL-ended helpers + ends = {r: f for r, f in enumerate(w['final']) if r >= 2*v and f != 1} + assert len(widths) == helpers + entrances = {r: f for r, f in enumerate(w['start']) if r >= 2*v and f != 0} + entering = len(entrances) + wrapped = {**entrances, **{r: 0 for r in ends if r not in entrances}} # COLD-HPE: cold hyperplane-ended helpers carry wrappers too + cold_ends = len(wrapped) - len(entrances) + assert entering == replay['entering_helpers'] + local = {} + for orientation, events in programs.items(): + # Endpoint equality and native frames were already independently + # replayed on all n columns in the hash-bound receipt above. + env = {('L', r): Q(1) for r in range(n)} + peak = Q(1) + real = macros = workops = 0 + paid = Counter() + wrappers = {'pre': set(), 'post': set()} + for event in events: + tag = event[0] + if tag == 'climb': + paid[event[5]] += 1 + elif tag == 'center': + paid[event[4]] += 1 + elif tag == 'residual_adapter': + _, kind, register, frame, *end = event + assert kind in wrappers and wrapped.get(register) == frame + assert end == ([ends[register]] if register in ends else []) # HPE: R_{E,U}^-1 and L_{E,U}^-1 name U + assert register not in wrappers[kind] + wrappers[kind].add(register) + elif tag == 'scalar': + macros += 1 + scalar = event[1] + op, target = scalar[0], tuple(scalar[1]) + if op == 'clear': + env[target] = Q(0) + count = 1 + elif op == 'copy': + env[target] = env[tuple(scalar[2])] + count = 1 + elif op == 'scale': + q = Q(scalar[2], scalar[3]) + numerator, denominator = abs(q.numerator), q.denominator + assert numerator and numerator & (numerator-1) == 0 + assert denominator & (denominator-1) == 0 + env[target] *= abs(q) + count = abs(numerator.bit_length()-denominator.bit_length()) + int(q < 0) + elif op == 'add': + source = tuple(scalar[2]) + q = Q(scalar[3], scalar[4]) + numerator, denominator = abs(q.numerator), q.denominator + assert source != target and numerator > 0 + assert denominator & (denominator-1) == 0 + acc, count = 0, 1 # clear coefficient work + for i, bit in enumerate(bin(numerator)[2:]): + if i: + acc *= 2 + count += 1 + peak = max(peak, acc*env[source]) + if bit == '1': + acc += 1 + count += 1 + peak = max(peak, acc*env[source]) + value = Q(acc) + for _ in range(denominator.bit_length()-1): + value /= 2 + count += 1 + peak = max(peak, value*env[source]) + assert value == abs(q) + count += 2 # signed accumulation and work clear + env[target] = env.get(target, Q(0)) + abs(q)*env[source] + workops += count + else: + raise AssertionError(op) + real += 2*count + peak = max(peak, env[target]) + else: + assert tag in ('adapter', 'phase') + assert wrappers['pre'] == wrappers['post'] == set(wrapped) + assert all(value == 0 for register, value in env.items() if register[0] == 'C') + prior = replay['local'][orientation] + assert prior['all_exact_columns'] == n and prior['private_work_erased'] + assert peak == Q(prior['prefix_l1_upper']) and peak < 2**prior['charged_payload_bits'] + bits = peak.numerator.bit_length()-peak.denominator.bit_length()+1 + assert bits == prior['prefix_bits_upper'] + assert real == checks[orientation]['real_component_primitive_bound'] + assert macros == checks[orientation]['scalar_macros'] + assert dict(paid) == {int(r): count for r, count in checks[orientation]['paid_profile'].items()} + assert dict(paid) == {int(r): count for r, count in replay['paid_profiles'][orientation].items()} + local[orientation] = dict( + events=len(events), macros=macros, real_component_primitives=real, + prefix_l1=str(peak), prefix_bits=bits, + coefficient_work_primitive_count=workops, all_exact_columns=n, + dirty_helper_columns=helpers, all_dirty_helper_columns_restored=True, + private_centres_and_coefficient_work_cleared=True, + pre_wrappers=len(wrappers['pre']), post_wrappers=len(wrappers['post']), + endpoint_evidence='Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json') + + centres = len(w['centers']) + children = sum(checks['forward']['paid_profile'].values()) + assert checks['forward']['paid_profile'] == checks['backward']['paid_profile'] + macro_bound = max(row['macros'] for row in local.values()) + compiler = 64*(m+1)**3 + adapters = 16*(macro_bound+children+n+centres)+64*m + primitive_bound = max(row['real_component_primitives'] for row in local.values())+adapters*compiler + + assert widths==registry['widths'] + artifacts={f.name:filehash(f) for f in local_dir.iterdir() if f.is_file()} + phase_review=read(local_dir/'CLIFFORD-REVIEW.json') + return dict(local=local,helpers=helpers,centres=centres,v=v,h=h,n=n, + entering_helpers=entering,entrance_rank=sum(len(w['frames'][f]) for f in w['start'][2*v:]), + terminal_codimension=terminal_codim, hyperplane_ended_helpers=len(ends), # HPE: always reported (0 for FULL-ended words) + **({'cold_hyperplane_ended_helpers': cold_ends} if cold_ends else {}), # COLD-HPE: absent without cold ends + width_inventory=dict(sorted(Counter(widths).items())),widths=widths, + local_adapters=adapters,local_primitive_bound=primitive_bound, + compiler=compiler,children=children,artifacts=artifacts, + paid_profile=checks['forward']['paid_profile'], + program_hashes={o:programhash(events) for o,events in programs.items()},semantic_artifact_sha256=artifact_identities(local_dir)) + + +def run(base, hosted, audit, out, retained_invoice=None): + local_dir=base/'split-centres' + parent=read(local_dir/'GLOBAL-TEMPLATE.json.gz') + template_path=hosted/'GLOBAL-TEMPLATE.json.gz' + template=read(template_path); summary=read(hosted/'HOSTED.json') + owners=read(audit/'OWNERS-AND-PROFILE.json'); control=read(audit/'ASYNC-AUDIT.json') + template_hash=contenthash(template_path) + assert template_hash==control['complex_template_sha256']==owners['template_sha256']==summary['template_sha256'] + assert owners['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert template['recipe']==parent['recipe'] + assert 'local_programs' not in template + assert set(template['local_providers'])==set(PIDS) + providers={pid:recount_provider(base/'providers'/pid,registry) + for pid,registry in template['local_providers'].items()} + for pid,p in providers.items(): + assert owners['provider_phase_semantic_sha256'][pid]==control['provider_phase_semantic_sha256'][pid]==p['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] + # The fresh controller admission must cite precisely these provider bytes. + for name in ('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json'): + path='providers/'+pid+'/'+name + assert summary['source_artifacts'][path]==p['artifacts'][name] + assert owners['source_artifacts'][path]==p['artifacts'][name] + # R is read from the provider words (all must agree); the parent dedicated-bank + # envelope keeps its own helper count R0 from the parent split-centres word. + assert len({p['helpers'] for p in providers.values()})==1,'providers disagree on helper count R' + v,h,m,centres=112,9,73,8 + helpers=next(iter(providers.values()))['helpers']; n=2*v+helpers + assert all((p['v'],p['h'],p['centres'],p['n'])==(v,h,centres,n) for p in providers.values()) + parent_helpers=read(local_dir/'CANONICAL-WORD.json.gz')['R'] + stages,replicas,blocks_per_stream=9,16,4 + call_count=len(template['calls']) + assert call_count==stages*replicas==control['complete_invocations'] + assert control['one_owner_per_complete_invocation'] + assert len({(c['stage'],c['replica']) for c in template['calls']})==call_count + parent_calls={(c['stage'],c['replica']):c for c in parent['calls']} + sweeps=[e for e in template['execution_schedule'] if e['kind']=='local_cover_sweep'] + assert len(sweeps)==call_count + selected=[]; selected_paid=Counter(); provider_counts=Counter(); orientation_counts=Counter() + scalar=coefficient_work=macros=0; wrapper_factors=0 + factors_per_wrapper=2*(m-1) + for c in template['calls']: + pid,orientation=c['provider_id'],c['orientation']; p=providers[pid] + old=parent_calls[(c['stage'],c['replica'])] + assert orientation==old['orientation'] and c['owners'][:2*v]==old['owners'][:2*v] + assert c['local_program_sha256']==p['program_hashes'][orientation] + r=p['local'][orientation] + scalar+=r['real_component_primitives']; coefficient_work+=r['coefficient_work_primitive_count']; macros+=r['macros'] + wrapper_factors+=(r['pre_wrappers']+r['post_wrappers'])*factors_per_wrapper + provider_counts[pid]+=1; orientation_counts[(pid,orientation)]+=1 + selected_paid.update({int(k):v for k,v in p['paid_profile'].items()}) + selected.append(dict(stage=c['stage'],replica=c['replica'],provider_id=pid,orientation=orientation, + program_sha256=c['local_program_sha256'],events=r['events'],macros=r['macros'], + real_component_primitives=r['real_component_primitives'], + coefficient_work_primitive_count=r['coefficient_work_primitive_count'], + entering_helpers=p['entering_helpers'],entrance_rank=p['entrance_rank'], + pre_wrappers=r['pre_wrappers'],post_wrappers=r['post_wrappers'])) + assert provider_counts==COUNTS + # The sweep registry is executable: no hidden use of the historical supplier. + by_call={(c['stage'],c['replica']):c for c in template['calls']} + for e in sweeps: + c=by_call[(e['stage'],e['replica'])] + assert e['provider_id']==c['provider_id'] + assert set(p['compiler'] for p in providers.values())=={64*(m+1)**3} + compiler=64*(m+1)**3 + adapters=max(p['local_adapters'] for p in providers.values()) + primitive_bound=max(p['local_primitive_bound'] for p in providers.values()) + bridge_steps=sum(event['kind']=='bridge' for event in parent['recipe']) + bridge_sweeps=sum(event['kind']=='bridge' for event in template['execution_schedule']) + assert bridge_sweeps==replicas*bridge_steps + bridge_additions=2*v*bridge_sweeps + shifts=blocks_per_stream*v*replicas; moves=2*shifts + parent_live,parent_physical=parent['live'],parent['physical'] + data_stock=2*v*blocks_per_stream*replicas + assert (parent_live-data_stock)%stages==0 + parent_banks=(parent_live-data_stock)//stages + assert parent_banks>=0 and parent_physical==parent_live+parent_helpers+centres+2 + nonlocal_items=(4*v*replicas*stages+2*v*replicas*stages+2*call_count*helpers + +sum(child['replicas'] for child in parent['idle_children'])+stages*parent_banks + +bridge_additions+shifts+moves+parent_live+parent_physical+wrapper_factors) + outside=8*nonlocal_items+64*m + parent_pervertex=(scalar+bridge_additions+shifts+moves+parent_live + +(call_count*adapters+outside)*compiler+64*parent_physical) + live,physical=template['live'],template['physical'] + mass,profile=owners['rank_mass'],owners['paid_profile'] + assert m*live-mass==owners['deficit']==5120 + assert mass==sum(int(r)*count for r,count in profile.items()) + assert physical==live+helpers+centres+2 + assert live==owners['live'] and physical==owners['physical'] + assert live<=parent_live and physical<=parent_physical + assert not template['bank_padding']['families'] + assert owners['explicit_idle_remainder_children']<=owners['source_idle_children_charged'] + # The old dedicated-bank geometry is only a conservative reserve envelope. + # Its singular program is never used as evidence for a mixed invocation. + rebased=parent_pervertex+65*(physical-parent_physical)+(live-parent_live) + used=max(rebased,parent_pervertex); retained=None; payload=512 + if retained_invoice is not None: + previous=read(retained_invoice) + assert previous['compiler']==compiler and previous['charged_prefix_bits']==payload + previous_bound=previous['conservative_pervertex_used'] + used=max(used,previous_bound+parent_pervertex) + retained=dict(sha256=filehash(retained_invoice),previous_pervertex_allowance=previous_bound, + added_complete_new_pervertex=parent_pervertex,policy='Retain old allowance and add entire fresh mixed recount.') + half=m//2; group=2**(half*half) + for i in range(1,half+1): group*=2**(2*i)-1 + stock,streamed_mass=group*physical,group*mass + logical=group*used+64; router=compiler*(logical+1)*(stock+1)**2 + g_bound,e_bound,c0=2**30000,2**100000,2**210000 + total_mass=streamed_mass+e_bound + literal=2*g_bound*stock**2+8*streamed_mass+4*stock+4+32*m + row=2*stock.bit_length()+9909+252+2*payload + maxchild=max(map(int,profile)) + inequalities=dict(local_primitive_bound=primitive_bound<2**48, + logical=logical<2**6050,router=router2*maxchild*maxchild) + assert all(inequalities.values()) + localbits=max(r['prefix_bits'] for p in providers.values() for r in p['local'].values()) + input_l2_bits=(m+1)//2 + required_prefix=localbits+input_l2_bits+call_count+bridge_sweeps+4 + assert required_prefix R helper map +# (verify.py checks the spec value against the constructor's HELPER-MAP.json) +SPOT=tuple(SPEC.get('width_spot_helpers',(270,282,294,306))) +# A pivot swap moves a kernel family's pivot role p -> x; the old pivot p becomes an ordinary cold helper and its width +# goes 8 -> 9 (construction/layers, PR641 PROOF-NOTE-PIVOT). Expected spot widths are derived from the package's pinned +# pivot-swap recipe (path and sha256 in the spec), not from free data: 9 at a swapped-out pivot, 8 otherwise. +_PKG=Path(os.environ['WITNESS_SPEC']).resolve().parents[1] +def _old_pivots(): + ps=SPEC.get('pivot_swap') + if not ps:return frozenset() + raw=(_PKG/ps['recipe']).read_bytes();import hashlib + assert hashlib.sha256(raw).hexdigest()==ps['sha256'],'pivot-swap recipe pin' + return frozenset(s['pivot']for s in json.loads(raw)['swaps']) +OLD_PIVOTS=_old_pivots() +def spot_widths(v=112): + """Expected residual widths at the spot helpers (helper indices) of the gauge44 provider.""" + return tuple(9 if 2*v+h in OLD_PIVOTS else 8 for h in SPOT) +PIDS=tuple(sorted(set(DISPATCH.values()))) +COUNTS=dict(Counter(DISPATCH.values())) +assert DISCOVER or set(PROVIDERS)==set(PIDS),'spec providers differ from dispatch providers' +def lookup(key): + """Dotted spec path; a segment may itself contain dots when it names a file (split at most once per known file suffix).""" + v=SPEC;parts=key.split('.') + while parts: + for n in range(len(parts),0,-1): + k='.'.join(parts[:n]) + if isinstance(v,dict) and k in v:v=v[k];parts=parts[n:];break + else:raise KeyError('spec has no key %s'%key) + return v +def pin(key,got): + """Strict mode: got must equal the spec value at dotted key; the failure names the key.""" + if DISCOVER: + if os.environ.get('WITNESS_RECORD'): # discovery bookkeeping only: append (key, value) for the spec writer + with open(os.environ['WITNESS_RECORD'],'a')as f:f.write(json.dumps([key,got],default=str)+chr(10)) + return got + want=lookup(key) + assert got==want,'SPEC MISMATCH %s: expected %s got %s'%(key,json.dumps(want)[:400],json.dumps(got,default=str)[:400]) + return got +def partner(pid): + """A different provider for substitution controls (next in sorted order).""" + assert len(PIDS)>1 + return PIDS[(PIDS.index(pid)+1)%len(PIDS)] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/construction/leaver/PIVOT-SWAP-k8.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/construction/leaver/PIVOT-SWAP-k8.json new file mode 100644 index 0000000000..7a8edeb1e4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/construction/leaver/PIVOT-SWAP-k8.json @@ -0,0 +1 @@ +{"input_content_sha256": "00aeefe0c778ff64125628d7c869ae1aa27db60911f0289a2d4283af5cff85d2", "output_content_sha256": "377ab10c2bf6173498c8af15f8654060331ec9ee232e58cc75956dc015b23685", "swaps": [{"pivot": 482, "new_pivot": 554, "entrance": [24], "gates": [{"part": "B", "index": 331, "before": ["add", 554, 482, -1, 1, [24]], "after": ["add", 482, 554, -1, 1, [24]]}, {"part": "B", "index": 332, "before": ["add", 616, 482, 2, 1, [24]], "after": ["add", 616, 554, -2, 1, [24]]}, {"part": "B", "index": 333, "before": ["add", 618, 482, -2, 1, [24]], "after": ["add", 618, 554, 2, 1, [24]]}, {"part": "B", "index": 334, "before": ["add", 664, 482, 1, 1, [24]], "after": ["add", 664, 554, -1, 1, [24]]}, {"part": "B", "index": 335, "before": ["add", 666, 482, -1, 1, [24]], "after": ["add", 666, 554, 1, 1, [24]]}]}, {"pivot": 483, "new_pivot": 555, "entrance": [24], "gates": [{"part": "B", "index": 468, "before": ["add", 123, 483, 1, 1, [24]], "after": ["add", 123, 555, -1, 1, [24]]}, {"part": "B", "index": 504, "before": ["add", 187, 483, -1, 1, [24]], "after": ["add", 187, 555, 1, 1, [24]]}, {"part": "B", "index": 734, "before": ["add", 555, 483, -1, 1, [24]], "after": ["add", 483, 555, -1, 1, [24]]}]}, {"pivot": 494, "new_pivot": 566, "entrance": [24], "gates": [{"part": "B", "index": 128, "before": ["add", 628, 494, 2, 1, [24]], "after": ["add", 628, 566, -2, 1, [24]]}, {"part": "B", "index": 130, "before": ["add", 628, 494, -2, 1, [24]], "after": ["add", 628, 566, 2, 1, [24]]}, {"part": "B", "index": 230, "before": ["add", 676, 494, -2, 1, [24]], "after": ["add", 676, 566, 2, 1, [24]]}, {"part": "B", "index": 232, "before": ["add", 676, 494, 2, 1, [24]], "after": ["add", 676, 566, -2, 1, [24]]}, {"part": "B", "index": 750, "before": ["add", 566, 494, -1, 1, [24]], "after": ["add", 494, 566, -1, 1, [24]]}]}, {"pivot": 495, "new_pivot": 567, "entrance": [24], "gates": [{"part": "B", "index": 49, "before": ["add", 211, 495, -1, 1, [24]], "after": ["add", 211, 567, 1, 1, [24]]}, {"part": "B", "index": 477, "before": ["add", 147, 495, 1, 1, [24]], "after": ["add", 147, 567, -1, 1, [24]]}, {"part": "B", "index": 752, "before": ["add", 567, 495, -1, 1, [24]], "after": ["add", 495, 567, -1, 1, [24]]}]}, {"pivot": 507, "new_pivot": 531, "entrance": [30], "gates": [{"part": "B", "index": 459, "before": ["add", 115, 507, -1, 1, [30]], "after": ["add", 115, 531, 1, 1, [30]]}, {"part": "B", "index": 495, "before": ["add", 179, 507, 1, 1, [30]], "after": ["add", 179, 531, -1, 1, [30]]}, {"part": "B", "index": 770, "before": ["add", 531, 507, -1, 1, [30]], "after": ["add", 507, 531, -1, 1, [30]]}]}, {"pivot": 519, "new_pivot": 543, "entrance": [30], "gates": [{"part": "B", "index": 486, "before": ["add", 155, 519, -1, 1, [30]], "after": ["add", 155, 543, 1, 1, [30]]}, {"part": "B", "index": 521, "before": ["add", 219, 519, 1, 1, [30]], "after": ["add", 219, 543, -1, 1, [30]]}, {"part": "B", "index": 788, "before": ["add", 543, 519, -1, 1, [30]], "after": ["add", 519, 543, -1, 1, [30]]}]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/data/UPSTREAM-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/data/UPSTREAM-PINS.json new file mode 100644 index 0000000000..68486b84e3 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/data/UPSTREAM-PINS.json @@ -0,0 +1,23 @@ +{ + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/inputs/PR589-EXPECTED.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/inputs/PR589-EXPECTED.json new file mode 100644 index 0000000000..e293ddc557 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/inputs/PR589-EXPECTED.json @@ -0,0 +1,222 @@ +{ + "word": { + "file": "tune/bitE8mut-p111-tuned.json.gz", + "file_sha256": "e3e301e62bc2b41dbf1ceac0acf3d35824ebeab1848c5a2142d4577b109da52f", + "content_sha256": "5642fd0e35a1acc11acff8d0c08350c1617e95f310d4d35ad63a651f9eeeba0b", + "v": 111, + "R": 439, + "punctured": [ + 10, + 15, + 51, + 53, + 56, + 66, + 72, + 89, + 111 + ], + "retained_totals": 9, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ], + "decoder_constant": 63, + "gates": { + "D": 111, + "A": 2075, + "B": 712, + "C": 2574 + }, + "local_histogram": { + "1": 1323, + "2": 1342, + "3": 79, + "4": 44, + "5": 102, + "6": 11, + "7": 19 + }, + "legality": { + "records": 27234, + "common_frame_ADDs": 24305, + "rank_mass": 5129 + }, + "five_stage_columns": 883, + "five_stage_payload_bits": 93, + "nine_stage_columns": 1327, + "nine_stage_payload_bits": 93, + "eleven_stage_columns": 1549, + "eleven_stage_payload_bits": 93, + "base_content_sha256": "d0df3c89ae84989f4045ba1681a5e2e9fcdfa38ed0301c8abf5185537155cbe3" + }, + "interface": { + "hypotheses": { + "H1_no_target_feeds_z": true, + "H2_D_frame0_targets_from_helpers": true, + "H3_A_z_only_scatter_targets_B_split": true, + "H4_C_literal_reverse_at_full": true, + "H5_V_identity": true + }, + "conclusion": { + "U_block_form": true, + "J_identity": true, + "K_equals_D": true, + "C_is_U_inverse": true + }, + "interleaving": { + "z_gates_A": 2075, + "source_writes_A": 0, + "z_gates_B": 499, + "source_writes_B": 483, + "helper_writes_B": 16, + "sources_rewritten_B": 108, + "B_z_write_frame_dims": { + "4": 388, + "6": 111 + }, + "B_z_operand_kinds": { + "helper<-helper": 3, + "helper<-source": 13, + "source<-helper": 108, + "source<-source": 375 + }, + "B_z_operand_kinds_by_dim": { + "dim4:helper<-source": 13, + "dim4:source<-source": 375, + "dim6:helper<-helper": 3, + "dim6:source<-helper": 108 + }, + "B_z_writes_after_a_target_read_of_the_same_register": 454, + "B_target_reads_of_registers_rewritten_earlier_in_B": 111, + "target_reads_of_targets": 0, + "cleanup_gates": 2574 + } + }, + "nine": { + "pipeline": "PR #510 (PR #463 nine-stage template, 32 replicas, PR #442 hosting, PR #493 outer assembly), parameterised for v <= 120 by code/adapt9p.py", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_lower_decimal": "0.001733427039589844234749", + "profile": { + "1": 381024, + "2": 400416, + "3": 22752, + "4": 26880, + "5": 29376, + "6": 17376, + "7": 26784, + "42": 288 + }, + "bit": { + "live": 28416, + "physical": 28425, + "maxchild": 42, + "rank_mass": 1808352, + "hosted_residuals": 126432, + "bank_assignments": 0, + "prefix_bits": 177, + "charged_prefix_bits": 192, + "coefficient_bits": 177, + "two_level_coefficient_bits": 393, + "charged_two_level_coefficient_bits": 512, + "row_coefficient": 18355, + "halving_depth": 2 + }, + "kappa": { + "pr548": { + "kappa": "49718254847979/31250000000000000", + "kappa_decimal": "0.001590984155135328", + "complex_lower": "796759709641153381751/500000000000000000000000", + "binding_component": "complex" + }, + "pr544": { + "kappa": "397677800014309/250000000000000000", + "kappa_decimal": "0.001590711200057236", + "complex_lower": "31864911873350496687/20000000000000000000000", + "binding_component": "complex" + }, + "pr535": { + "kappa": "793733736881443/500000000000000000", + "kappa_decimal": "0.001587467473762886", + "complex_lower": "1589991533606044174031/1000000000000000000000000", + "binding_component": "complex" + }, + "pr531": { + "kappa": "1517760977820331/1000000000000000000", + "kappa_decimal": "0.001517760977820331", + "complex_lower": "304013615566499291631/200000000000000000000000", + "binding_component": "complex" + } + } + }, + "eleven": { + "pipeline": "PR #493 (PR #445 geometry, PR #472 emitter, audit and invoice, PR #442 hosting), parameterised by PR #545's code/adapt.py", + "bit_lower": "855475950388791987811/500000000000000000000000", + "bit_lower_decimal": "0.001710951900777583975622", + "profile": { + "1": 116424, + "2": 121648, + "3": 6952, + "4": 7424, + "5": 8976, + "6": 4520, + "7": 8776, + "56": 2600 + }, + "bit": { + "live": 8880, + "physical": 8889, + "maxchild": 56, + "rank_mass": 689304, + "hosted_residuals": 38632, + "prefix_bits": 4304, + "charged_prefix_bits": 4352, + "coefficient_bits": 4304, + "three_level_coefficient_bits": 12966, + "charged_three_level_coefficient_bits": 12992, + "row_coefficient": 19431, + "halving_depth": 3 + }, + "emitted_program_sha256": "793b6f40c9aa4b8db57fec0ac0973e16884dae28707e482ee8f7a2349a5d5a4b", + "kappa": { + "pr548": { + "kappa": "49718254847979/31250000000000000", + "kappa_decimal": "0.001590984155135328", + "complex_lower": "796759709641153381751/500000000000000000000000", + "binding_component": "complex" + }, + "pr544": { + "kappa": "397677800014309/250000000000000000", + "kappa_decimal": "0.001590711200057236", + "complex_lower": "31864911873350496687/20000000000000000000000", + "binding_component": "complex" + }, + "pr535": { + "kappa": "793733736881443/500000000000000000", + "kappa_decimal": "0.001587467473762886", + "complex_lower": "1589991533606044174031/1000000000000000000000000", + "binding_component": "complex" + }, + "pr531": { + "kappa": "1517760977820331/1000000000000000000", + "kappa_decimal": "0.001517760977820331", + "complex_lower": "304013615566499291631/200000000000000000000000", + "binding_component": "complex" + } + } + }, + "base": { + "nine_bit_lower": "1733052823330162099157/1000000000000000000000000", + "nine_bit_lower_decimal": "0.001733052823330162099157", + "eleven_bit_lower": "427652201524503168379/250000000000000000000000", + "eleven_bit_lower_decimal": "0.001710608806098012673516", + "note": "PR #555's EXPECTED.json (untuned word); the tune/ pipeline is the same, with the same frozen hosting selections" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/build_parent.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/build_parent.py new file mode 100644 index 0000000000..bd9e28bd2d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/build_parent.py @@ -0,0 +1,281 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: Apache-2.0 +# Copyright (c) 2026 Hao Yan (@FanPUYen) +"""Lift the PR741 controller and PR799 provider plan to sixteen replicas. + +Authored with OpenAI Codex assistance. Precursor credit: the PR514/PR484/PR507 +controller lineage, PR558/PR589 admission, Chafik Boukhalfa's PR741 frames +and owner map, and Jeremy Kothe's PR799 paired-read-exchange provider. +This script changes only the global replica namespace and the nominated owner +map; it reuses the exact local programs and exact data-phase recipes. +""" +import argparse +import copy +import gzip +import hashlib +import json +from collections import Counter +from pathlib import Path + +SOURCE_PLAN_SHA256 = '5f40e7ccfca61f298539b4f41286d2a9d62caf947057f9cec82aa53f73f707fd' +SOURCE_OWNERS_SHA256 = '99d1c4caf85855c353d30f122d9efbd9e51562914facded13027f347b18a6082' + + +def require(condition, reason): + if not condition: + raise ValueError(reason) + + +def read(path): + raw = Path(path).read_bytes() + return json.loads(gzip.decompress(raw) if str(path).endswith('.gz') else raw) + + +def canonical(value): + return json.dumps(value, sort_keys=True, separators=(',', ':')).encode() + + +def portable_gzip(raw): + compressed = bytearray(gzip.compress(raw, mtime=0)) + compressed[9] = 255 # RFC1952 OS=unknown, independent of zlib/Python platform. + return bytes(compressed) + + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def content_sha(value): + return hashlib.sha256(canonical(value)).hexdigest() + + +def lift_parent(source, copies=2): + """A direct sum of bank/data stocks; erased private streams are shared. + + copies=1 is deliberately the identity, byte-for-byte after canonicalization. + The helper routes retain replica lanes 0..7 in each *separate* bank group. + No axis index is inferred from the new global replica label 8..15. + """ + require(type(copies) is int and copies in (1, 2), 'only identity or T16 lift') + t = copy.deepcopy(source) + if copies == 1: + return t + require(source['m'] == 73, 'source dimension') + require(len(source['calls']) == 72, 'source calls') + data = 8*8*112 + bank_stock = source['live'] - data + private_stock = source['physical'] - source['live'] + require((bank_stock, private_stock) == (9*504, 504+8+2), 'source namespace') + require({(c['stage'], c['replica']) for c in source['calls']} == + {(s, r) for s in range(9) for r in range(8)}, 'source coverage') + new_data = copies*data + new_live = copies*source['live'] + new_physical = new_live + private_stock + t['calls'] = [] + for c in source['calls']: + for group in range(copies): + new = copy.deepcopy(c) + new['replica'] = c['replica'] + 8*group + owners = [] + for family, route in c['owners']: + require(0 <= family < source['live'], 'owner outside live stock') + mapped = (family + data*group if family < data else + new_data + group*bank_stock + family - data) + owners.append([mapped, copy.deepcopy(route)]) + new['owners'] = owners + t['calls'].append(new) + # Every data/idle recipe is a portwise direct sum, hence only multiplicity + # changes. Its local axis labels and exact phase words stay unchanged. + for child in t['idle_children']: + require(child['replicas'] == 8, 'source idle multiplicity') + child['replicas'] *= copies + for event in t['execution_schedule']: + if 'replicas' in event: + require(event['replicas'] == list(range(8)), 'source sweep replicas') + event['replicas'] = list(range(8*copies)) + if event['kind'] == 'bank_padding_cover_sweep': + event['families'] = [new_data, new_live] + elif event['kind'] == 'translate_every_live_family': + event['families'] = [0, new_live] + event['charged_calls_per_cover'] = new_live + t['bank_padding']['families'] = [] + t['bank_padding']['children'] = [] + for group in range(copies): + for family in source['bank_padding']['families']: + t['bank_padding']['families'].append(new_data + group*bank_stock + family - data) + for child in source['bank_padding']['children']: + new = copy.deepcopy(child) + new['family'] = new_data + group*bank_stock + child['family'] - data + t['bank_padding']['children'].append(new) + t['cover_final_correction'].update(families=[0, new_live], charged_calls_per_cover=new_live) + t['private_namespace'] = { + key: [new_live + x - source['live'] for x in interval] + for key, interval in source['private_namespace'].items() + } + t.update(live=new_live, physical=new_physical, + version='t16-direct-sum-two-bank-groups-parent-v1') + t['route_semantics']['helper'] = ( + 'Two independent groups of nine dedicated banks. Group floor(replica/8) ' + 'selects the bank namespace; the stored original helper route retains ' + 'lane replica%8. All original residual/spectator axes are unchanged.') + t['loop_order'] = ( + 'For each recipe phase: the explicit calls order, then every cover class d; ' + 'each local invocation completes before the next. Each original replica ' + 'has a disjoint data and bank namespace in its group; private erased ' + 'streams are reused between completed calls.') + t['replica_lift'] = dict( + source_template_content_sha256=content_sha(source), groups=copies, + source_replicas=8, replicas=8*copies, data_stock=new_data, + bank_stock=copies*bank_stock, banks_per_stage=copies*504, + private_helpers=504, local_programs_content_sha256=content_sha(source['local_programs']), + construction='direct sum of data and dedicated banks; share only restored private streams', + phase_recipe_unchanged=True) + # Source data and helper owner routes are preserved literally in each copy. + for c in t['calls']: + group, replica = divmod(c['replica'], 8) + old = next(z for z in source['calls'] if (z['stage'], z['replica']) == (c['stage'], replica)) + require([r for f, r in c['owners']] == [r for f, r in old['owners']], 'route changed') + require(c['window'] == old['window'], 'local window changed') + require(len({f for f, r in c['owners']}) == len(c['owners']), 'per-call owner alias') + require(t['local_programs'] == source['local_programs'], 'program changed') + require(t['recipe'] == source['recipe'], 'data recipe changed') + require(len(t['bank_padding']['children']) == copies*bank_stock, 'bank padding count') + require(t['physical'] == t['live']+514, 'private namespace size') + return t + + +def expanded_schedule(parent, order): + blocks = {} + globals_ = [] + stage = None + for index, event in enumerate(parent['execution_schedule']): + if event['kind'] in ('bank_padding_cover_sweep', 'translate_every_live_family'): + globals_.append((index, event)) + continue + if event['kind'] == 'local_cover_sweep': + stage = event['stage'] + blocks[stage] = [] + require(stage is not None, 'event precedes first stage') + blocks[stage].append((index, event)) + schedule = [] + for time, (stage, replica) in enumerate(order): + for index, event in blocks[stage]: + new = copy.deepcopy(event) + new.update(source_event=index, replica=replica, replicas=[replica], time=time) + schedule.append(new) + for index, event in globals_: + schedule.append(dict(event, source_event=index)) + return schedule + + +def actual_windows(parent, order): + ranks = {c['child']: c['rank'] for c in parent['idle_children']} + stage_pair = {e['stage']: e['pair'] for e in parent['recipe'] if e['kind'] == 'local'} + last, intervals, callpos, perrep = {}, {}, {}, {} + schedule = expanded_schedule(parent, order) + for pos, event in enumerate(schedule): + if 'replica' not in event: + continue + replica = event['replica'] + perrep.setdefault(replica, []).append(event['source_event']) + if event['kind'] == 'local_cover_sweep': + last[replica, stage_pair[event['stage']]] = pos + callpos[event['time']] = pos + elif event['kind'] == 'bridge': + last[replica, event['src']] = last[replica, event['dst']] = pos + elif event['kind'] == 'idle_cover_sweep': + for child in event['child_indices']: + if child in ranks: + intervals[replica, child] = (last.get((replica, event['pair']), -1), pos) + require(all(events == list(range(30)) for events in perrep.values()), 'per-replica projection') + require([e['source_event'] for e in schedule if 'replica' not in e] == [30, 31], 'global tail') + require(set(callpos) == set(range(len(order))), 'complete schedule') + windows = {f'{replica},{child}': [ranks[child], [time for time, pos in sorted(callpos.items()) if start < pos < stop]] + for (replica, child), (start, stop) in intervals.items()} + return windows, schedule + + +def lift_plan(source, parent, owners, source_plan_sha, source_owners_sha, owners_sha): + p = copy.deepcopy(source) + require(source['T'] == 8 and len(source['order']) == 72, 'source plan dimensions') + order = [[stage, replica + 8*group] for stage, replica in source['order'] for group in range(2)] + windows, schedule = actual_windows(parent, order) + # These windows are recomputed from actual source-event touches, not copied + # from the old nomination. Their T8 restriction must recover the old plan. + rank = Counter({int(k): 2*v for k, v in source['profile'].items()}) + rank.update({48: 1, 44: -1, 3: -2, 2: 1}) + rank = +rank + p.update(status='FROZEN_EXPLICIT_T16_TWO_BANK_DIRECT_SUM_OWNER_NOMINATION', + mode='gauge44-all144-t16-idle-concentration', T=16, live=14336, + deficit=5120, profile=dict(sorted(rank.items())), order=order, windows=windows, + solver_status='explicit two-role augmenting path and two-bin recombination', gap=None, + source_plan_sha256=source_plan_sha, source_owners_sha256=source_owners_sha, + assignment_sha256=owners_sha, assignment_content_sha256=content_sha(owners)) + for field in ('provider_calls', 'per_call_widths'): + p[field] = [] + for old in source[field]: + for group in range(2): + new = copy.deepcopy(old) + new['replica'] += 8*group + if 'time' in new: + new['time'] = 2*old['time']+group + p[field].append(new) + at = {tuple(x): i for i, x in enumerate(order)} + for field in ('provider_calls', 'per_call_widths'): + p[field].sort(key=lambda c: at[c['stage'], c['replica']]) + p['replica_lift'] = dict(groups=2, source_replicas=8, replicas=16, + parent_template_content_sha256=content_sha(parent), owners_file_sha256=owners_sha, + window_semantics='strict physical source-event touch intervals, including bridges', + schedule_content_sha256=content_sha(schedule)) + require(len(owners) == 144*504, 'owner role count') + for role in owners: + require(role['time'] == at[role['stage'], role['replica']], 'role call time') + require(role['time'] in windows[f"{role['owner_replica']},{role['child']}"][1], + 'owner outside actual source-event window') + require(sum(int(k)*v for k,v in p['profile'].items()) == 73*p['live']-p['deficit'], 'rank mass') + return p, schedule + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--base', type=Path, required=True) + parser.add_argument('--source-plan', type=Path, required=True) + parser.add_argument('--source-owners', type=Path, required=True) + parser.add_argument('--owners', type=Path, required=True) + parser.add_argument('--out', type=Path, required=True) + args = parser.parse_args() + require(not args.out.exists(), 'output directory already exists') + require(sha(args.source_plan) == SOURCE_PLAN_SHA256, 'source plan byte pin') + require(sha(args.source_owners) == SOURCE_OWNERS_SHA256, 'source owners byte pin') + source_path = args.base/'split-centres/GLOBAL-TEMPLATE.json.gz' + source = read(source_path) + original_plan = read(args.source_plan) + require(lift_parent(source, 1) == source, 'T8 identity control') + require(actual_windows(source, original_plan['order'])[0] == original_plan['windows'], 'T8 source-window replay') + require(source['exact_data_phase_recipe_sha256'] == sha(args.base/'work/complex-nine-native/DATA-PHASES.json'), 'source exact data-phase binding') + parent = lift_parent(source) + owners = read(args.owners) + plan, schedule = lift_plan(original_plan, parent, owners, sha(args.source_plan), sha(args.source_owners), sha(args.owners)) + args.out.mkdir(parents=True) + (args.out/'GLOBAL-TEMPLATE.json.gz').write_bytes(portable_gzip(canonical(parent))) + (args.out/'PLAN.json').write_bytes((json.dumps(plan, indent=2)+'\n').encode('utf-8')) + receipt = dict(status='PASS_T16_DIRECT_SUM_PARENT_AND_LITERAL_SOURCE_WINDOWS', + source_template_file_sha256=sha(source_path), source_template_content_sha256=content_sha(source), + source_plan_sha256=sha(args.source_plan), source_owners_sha256=sha(args.source_owners), + owners_sha256=sha(args.owners), + parent_template_file_sha256=sha(args.out/'GLOBAL-TEMPLATE.json.gz'), + parent_template_content_sha256=content_sha(parent), plan_sha256=sha(args.out/'PLAN.json'), + T8_identity_control=True, T8_source_window_identity=True, + local_programs_identical=True, exact_data_phases_identical=True, + parent_live=parent['live'], parent_physical=parent['physical'], + bank_stock=9072, banks_per_stage=1008, private_helpers=504, + source_idle_children_charged=sum(c['replicas'] for c in parent['idle_children']), + events=len(schedule), replica_source_events=30, global_source_events=[30,31], + calls=len(plan['order']), roles=len(owners), actual_window_membership_checked=len(owners), + scope='Legal direct-sum parent namespace and actual source-event windows; full global emitter, geometry, finite invoice, and recurrence admission remain separate checks.') + (args.out/'PARENT-LIFT-RECEIPT.json').write_bytes((json.dumps(receipt, indent=2)+'\n').encode('utf-8')) + print(json.dumps(receipt, indent=2)) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/indep16.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/indep16.py new file mode 100644 index 0000000000..81e1e9fe15 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/indep16.py @@ -0,0 +1,306 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: Apache-2.0 +# Prepared for haoyan with substantial OpenAI Codex assistance. +"""Independent T16 event-window, whole-helper, chart and finite-reserve audit. + +Inputs are read-only. No owner constructor or controller auditor is imported. +--word is the canonical local supplier JSON.gz, with frame IDs and a native +INDEPENDENT-LOCAL-REPLAY.json alongside it (override with --local-replay). +--baseline-parent is the original eight-replica GLOBAL-TEMPLATE.json.gz. +Its sibling CANONICAL-WORD.json.gz supplies ports; DATA-PHASES.json defaults +to ../work/complex-nine-native/DATA-PHASES.json (override with --phases). +The PR741 and PR799/X4 suppliers share this width/owner interface. Their +local paid profiles and prefix exponents are read and recounted from the +provided canonical word and hash-bound native replay, never fixed to PR741. +--out names a JSON receipt. Checks remain enabled under python -O. +""" +import argparse +from collections import Counter, defaultdict +import gzip +import hashlib +import json +from pathlib import Path + +V, H, M, T, R = 112, 9, 73, 16, 504 +import os +EXPECTED_IDLE = {int(k): v for k, v in json.loads(os.environ['T16_EXPECTED_IDLE']).items()} +EXPECTED_WIDTHS = {int(k): v for k, v in json.loads(os.environ['T16_EXPECTED_WIDTHS']).items()} + + +def require(condition, message): + if not condition: + raise ValueError(message) + + +def read(path): + data = path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix == '.gz' else data) + + +def filehash(path): + return hashlib.sha256(path.read_bytes()).hexdigest() + + +def basis(vectors): + pivots = {} + for x in vectors: + require(type(x) is int and 0 <= x < 1 << H, 'invalid local frame vector') + while x: + bit = x.bit_length() - 1 + if bit in pivots: + x ^= pivots[bit] + else: + pivots[bit] = x + break + for bit in sorted(pivots): + for upper in pivots: + if upper > bit and pivots[upper] >> bit & 1: + pivots[upper] ^= pivots[bit] + return tuple(pivots[bit] for bit in sorted(pivots, reverse=True)) + + +def local_inventory(word, replay): + global RH + require((word['v'], word['h']) == (V, H) and 0 < word['R'] <= R, 'local supplier dimensions') + RH = word['R'] + frames = [basis(frame) for frame in word['frames']] + n = 2 * V + RH + require(len(word['start']) == len(word['final']) == n, 'local frame vector lengths') + current = [frames[f] for f in word['start']] + paid = Counter() + + def climb(register, frame): + require(basis(current[register] + frame) == frame, 'nonmonotone local frame') + jump = len(frame) - len(current[register]) + if jump: + paid[jump] += 1 + current[register] = frame + + require(not word['target_levels'], 'this audit requires the current zero-level centre interface') + for section in ('A', 'B', 'tail'): + if section == 'B': + require(all(current[t] == () for t in range(V, 2 * V)), 'target centre level') + for q, frame_id in zip(word['centers'], word['center_frames']): + require(current[q] == frames[frame_id], 'centre carrier frame') + paid[len(frames[frame_id])] += 1 + for gate in word[section]: + registers = gate[1:3] if gate[0] == 'add' else gate[1:2] + require(gate[0] in ('add', 'scale'), 'unknown scalar gate') + for register in registers: + climb(register, frames[gate[-1]]) + for register, frame_id in enumerate(word['final']): + climb(register, frames[frame_id]) + require(dict(paid) == {int(r): count for r, count in word['local_profile'].items()}, 'local paid-profile recount') + for orientation in ('forward', 'backward'): + require(dict(paid) == {int(r): count for r, count in replay['paid_profiles'][orientation].items()}, 'local replay profile binding') + widths = [len(frames[word['final'][q]]) - len(frames[word['start'][q]]) for q in range(2 * V, n)] + require(Counter(widths) == EXPECTED_WIDTHS, 'current supplier width inventory') + return widths, paid + + +def make_context(parent, phases, ports, word, replay, roles): + widths, paid = local_inventory(word, replay) + require(len(parent['calls']) == 72 and {(c['stage'], c['replica']) for c in parent['calls']} == {(s, r) for s in range(9) for r in range(8)}, 'original eight-replica baseline calls') + require(len(roles) == 9 * T * RH, 'complete helper role count') + address = {} + for role in roles: + key = (role['stage'], role['replica']) + time = role['time'] + require(time not in address or address[time] == key, 'inconsistent invocation time address') + address[time] = key + require(set(address) == set(range(9 * T)), 'contiguous invocation times') + order = [address[t] for t in range(9 * T)] + require(set(order) == {(s, r) for s in range(9) for r in range(T)}, 'stage/replica inventory') + require(all(order[2*t+1] == (order[2*t][0], order[2*t][1]+8) and order[2*t][1] < 8 for t in range(72)), 'two-copy interleaving') + rank = {child['child']: child['rank'] for child in parent['idle_children']} + source = parent['execution_schedule'] + blocks, stage = {}, None + for index, event in enumerate(source): + if event['kind'] in ('bank_padding_cover_sweep', 'translate_every_live_family'): + continue + if event['kind'] == 'local_cover_sweep': + stage = event['stage'] + blocks[stage] = [] + require(stage is not None, 'source event before first invocation') + blocks[stage].append((index, event)) + require(set(blocks) == set(range(9)), 'source stage inventory') + events = [(index, event, replica, time) for time, (stage, replica) in enumerate(order) for index, event in blocks[stage]] + projections = defaultdict(list) + for index, event, replica, time in events: + projections[replica].append(index) + require(set(projections) == set(range(T)) and all(p == list(range(30)) for p in projections.values()), 'per-replica source-event projection') + stage_pair = {e['stage']: e['pair'] for e in parent['recipe'] if e['kind'] == 'local'} + last, windows, callpos, child_pair, side = {}, {}, {}, {}, {} + bridges = 0 + for position, (_, event, replica, _) in enumerate(events): + kind = event['kind'] + if kind == 'local_cover_sweep': + stage = event['stage'] + callpos[stage, replica] = position + last[replica, stage_pair[stage]] = position + elif kind == 'bridge': + last[replica, event['src']] = last[replica, event['dst']] = position + bridges += 1 + elif kind == 'idle_cover_sweep': + for sd, child in enumerate(event['child_indices']): + if child in rank: + windows[replica, child] = (last.get((replica, event['pair']), -1), position) + child_pair[child], side[child] = event['pair'], sd + require(len(windows) == T * len(rank), 'actual window inventory') + require(len(ports) == V, 'port count') + bases = [] + for q in ports: + zero = next(i for i in range(H) if not (q >> i & 1)) + correction = q ^ (1 << zero) + axes = list(range(H)) + axes[0], axes[zero] = axes[zero], axes[0] + frame = [(1 << i) ^ (correction if correction >> i & 1 else 0) for i in axes] + [1 << i for i in range(H, M)] + require(all((x & y).bit_count() % 2 == int(i == j) for i, x in enumerate(frame) for j, y in enumerate(frame)), 'nonorthogonal owner basis') + bases.append(frame) + return dict(widths=widths, paid=paid, order=order, at={key:t for t,key in enumerate(order)}, rank=rank, + windows=windows, callpos=callpos, child_pair=child_pair, side=side, stage_pair=stage_pair, + bases=bases, phases=phases, bridges=bridges, event_count=len(events), replay=replay) + + +def check_roles(context, roles): + c = context + live, physical = T * 8 * V, T * 8 * V + 8 + R + 2 + require(len(roles) == 9 * T * RH, 'complete helper role count') + helpers, families, used = defaultdict(set), defaultdict(set), defaultdict(set) + charts, chart_cache = set(), {} + for z in roles: + s, r, helper = z['stage'], z['replica'], z['helper'] + owner, child, port = z['owner_replica'], z['child'], z['port'] + offset, width, family = z['offset'], z['width'], z['family'] + call = (s, r) + require(call in c['at'] and 0 <= helper < RH and 0 <= owner < T and 0 <= port < V, 'role coordinates') + require(z['time'] == c['at'][call], 'role invocation time') + require(width == c['widths'][helper], 'whole-helper residual width') + require(0 <= family < live, 'private-namespace collision') + require(child in c['rank'], 'unknown idle child') + require(z['copy'] == V * owner + port and family == owner * 896 + (2 * c['child_pair'][child] + c['side'][child]) * V + port, 'physical family identity') + lo, hi = c['windows'][owner, child] + require(lo < c['callpos'][call] < hi, 'strict bridge-aware idle window') + require(family // 224 != r * 4 + c['stage_pair'][s], 'helper aliases active data pair') + require(helper not in helpers[call] and family not in families[call], 'duplicate helper or family within whole invocation') + helpers[call].add(helper) + families[call].add(family) + cells = set(range(offset, offset + width)) + bin_key = (owner, child, port) + require(offset >= 0 and offset + width <= c['rank'][child] and not used[bin_key] & cells, 'overlapping or out-of-capacity slice') + used[bin_key].update(cells) + chart_key = (port, child, offset, width) + if chart_key not in chart_cache: + frame = c['bases'][port] + pending = list(map(int, c['phases']['recipes'][port]['idle_children'][child]['orthogonal_axes'])) + require(len(pending) == c['rank'][child], 'phase child rank') + occupied = [frame.index(x) for x in pending[offset:offset + width]] + spectators = [i for i in range(M) if i not in occupied][:H - width] + permutation = occupied + spectators + [i for i in range(M) if i not in occupied and i not in spectators] + require(len(occupied) == width and len(set(occupied + spectators)) == H and sorted(permutation) == list(range(M)), 'residual/spectator permutation') + require([frame[i] for i in permutation[:width]] == pending[offset:offset + width], 'pending-axis binding') + chart_cache[chart_key] = tuple(frame[i] for i in permutation) + charts.add(chart_cache[chart_key]) + require(set(helpers) == set(c['order']) and all(h == set(range(RH)) for h in helpers.values()), 'complete per-call helper inventory') + idle = Counter() + for owner, child in c['windows']: + for port in range(V): + cells = used[owner, child, port] + require(cells == set(range(len(cells))), 'gap in pending prefix') + left = c['rank'][child] - len(cells) + if left: + idle[left] += 1 + require(idle == EXPECTED_IDLE, 'nominated idle profile') + profile = Counter({rank: 9 * T * count for rank, count in c['paid'].items()}) + profile.update(idle) + mass = sum(rank * count for rank, count in profile.items()) + require(M * live - mass == 5120, 'doubled rank deficit') + require(c['bridges'] == 144, 'actual bridge count') + localbits = max(x['prefix_bits_upper'] for x in c['replay']['local'].values()) + prefix = localbits + (M + 1) // 2 + len(c['order']) + c['bridges'] + 4 + group = 2 ** (36 * 36) + for i in range(1, 37): + group *= 2 ** (2 * i) - 1 + stock = group * physical + row = 2 * stock.bit_length() + 9909 + 252 + 2 * 512 + require(prefix < 512, 'prefix reserve') + require(row < 20161 and M * M > 2 * max(profile) ** 2, 'row or halving reserve') + return dict(status='PASS_INDEPENDENT_T16_LITERAL_WINDOWS_CHARTS_PREFIX_ROW', roles=len(roles), calls=len(c['order']), + source_events_per_replica=30, expanded_replica_events=c['event_count'], bridge_events=c['bridges'], + literal_windows=len(c['windows']), checked_whole_helper_widths=len(roles), checked_busy_family_windows=len(roles), + orthogonal_port_bases=len(c['bases']), actual_73_axis_charts=len(charts), checked_slice_prefixes=len(c['windows']) * V, + local_profile=dict(sorted(c['paid'].items())), width_inventory=dict(sorted(Counter(c['widths']).items())), + idle=dict(sorted(idle.items())), profile=dict(sorted(profile.items())), live=live, physical=physical, + rank_mass=mass, deficit=5120, namespace={'data':[0,live], 'centres':[live,live+8], 'tableau':[live+8,live+8+R], 'coefficient':[live+8+R,physical]}, + local_prefix_bits=localbits, local_prefix_from_native_receipt=True, local_profile_recounted=True, + prefix_formula=dict(local_scalar=localbits, input_l2=(M + 1) // 2, invocations=len(c['order']), bridges=c['bridges'], margin=4), + prefix_bits=prefix, charged_prefix_bits=512, physical_stock_bits=stock.bit_length(), + physical_row_coefficient=row, row_limit=20161, + scope='Finite role/window/chart and inherited prefix/row obligations. Requires separately admitted local supplier and emitted controller, complete finite invoice, exact moments and outer assembly; no all-size theorem is asserted.') + + +def controls(context, roles): + candidates = [] + first = roles[0] + bad = dict(first, family=14336) + candidates.append(('private_namespace_collision', [bad] + roles[1:], 'private-namespace collision')) + index = next(i for i, z in enumerate(roles) if z['replica'] >= 8) + bad = dict(roles[index], replica=roles[index]['replica'] - 8) + candidates.append(('copy_replica_alias', [bad] + roles[:index] + roles[index+1:], 'role invocation time')) + candidates.append(('missing_whole_helper', roles[1:], 'complete helper role count')) + split = dict(first, width=first['width'] - 1) + fragment = dict(first, offset=first['offset'] + first['width'] - 1, width=1) + candidates.append(('split_whole_helper', [split, fragment] + roles[1:], 'complete helper role count')) + candidates.append(('truncated_helper_width', [split] + roles[1:], 'whole-helper residual width')) + # Keep the family and chart valid, but move one complete role past its + # actual idle event. Freeze the original invocation order for controls. + crossing = None + for index, z in enumerate(roles): + lo, hi = context['windows'][z['owner_replica'], z['child']] + later = next((key for key in context['order'] if context['callpos'][key] >= hi), None) + if later is not None: + crossing = [dict(z, stage=later[0], replica=later[1], time=context['at'][later])] + roles[:index] + roles[index+1:] + break + require(crossing is not None, 'no idle-boundary control could be constructed') + candidates.append(('cross_idle_boundary', crossing, 'strict bridge-aware idle window')) + rejected = [] + for name, bad, expected in candidates: + try: + check_roles(context, bad) + except ValueError as exc: + require(str(exc) == expected, 'control rejected at unexpected predicate: ' + name) + rejected.append(dict(name=name, reason=str(exc))) + else: + raise ValueError('accepted negative control: ' + name) + return rejected + + +def main(): + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--baseline-parent', type=Path, required=True) + parser.add_argument('--owners', type=Path, required=True) + parser.add_argument('--word', type=Path, required=True) + parser.add_argument('--phases', type=Path) + parser.add_argument('--local-replay', type=Path) + parser.add_argument('--out', type=Path, required=True) + args = parser.parse_args() + phases_path = args.phases or args.baseline_parent.parent.parent / 'work/complex-nine-native/DATA-PHASES.json' + canonical_path = args.baseline_parent.parent / 'CANONICAL-WORD.json.gz' + replay_path = args.local_replay or args.word.parent / 'INDEPENDENT-LOCAL-REPLAY.json' + parent, phases, canonical, word, replay, roles = map(read, (args.baseline_parent, phases_path, canonical_path, args.word, replay_path, args.owners)) + require(replay['status'] == 'PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY', 'local replay status') + require(replay['canonical_word_sha256'] == filehash(args.word), 'local word/replay hash binding') + require(set(replay['local']) == {'forward', 'backward'}, 'both native prefix orientations') + require(word['ports'] == canonical['ports'], 'local/controller port interface') + require(len(word['center_frames']) == len(canonical['center_frames']) == 8, 'eight centre interfaces') + require([basis(word['frames'][f]) for f in word['center_frames']] == [basis(canonical['frames'][f]) for f in canonical['center_frames']], 'ordered centre-frame interface') + context = make_context(parent, phases, canonical['ports'], word, replay, roles) + receipt = check_roles(context, roles) + receipt['controls_rejected'] = controls(context, roles) + receipt['input_sha256'] = {str(path): filehash(path) for path in (args.baseline_parent, phases_path, canonical_path, args.word, replay_path, args.owners)} + args.out.write_text(json.dumps(receipt, indent=2) + '\n', encoding='utf-8') + print(receipt['status'], 'roles=' + str(receipt['roles']), 'controls=' + str(len(receipt['controls_rejected']))) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/lift16.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/lift16.py new file mode 100644 index 0000000000..613c4bdb3c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/t16/lift16.py @@ -0,0 +1,102 @@ +"""lift16.py BASE8 PLAN8 OWNERS8 OWNERS16 OUT +Generic T16 lift (after #858 build_parent.py): direct-sum two-bank parent, actual +source-event windows, T16 PLAN with profile recomputed from the T16 owner map. +BASE8 = bound T8 global base (has split-centres/GLOBAL-TEMPLATE.json.gz).""" +import copy, gzip, hashlib, json, sys +from collections import Counter +from pathlib import Path +sys.path.insert(0, str(Path(__file__).resolve().parent)) +from build_parent import lift_parent, actual_windows, read, canonical, portable_gzip, sha, content_sha, require + + +def idle_profile(owners, windows): + used = {} + for r in owners: + key = (r['owner_replica'], r['child'], r['port']) + cells = used.setdefault(key, set()) + new = set(range(r['offset'], r['offset'] + r['width'])) + require(not cells & new, 'overlap') + cells |= new + idle = Counter() + for key, (cap, _) in windows.items(): + rep, ch = map(int, key.split(',')) + for port in range(112): + c = used.get((rep, ch, port), set()) + require(c == set(range(len(c))), 'non-prefix') + if len(c) < cap: + idle[cap - len(c)] += 1 + return idle + + +def interleave(order8): + return [[s, r + 8 * g] for s, r in order8 for g in range(2)] + + +def lift_plan(source, parent, owners8, owners, plan_sha, owners8_sha, owners_sha): + p = copy.deepcopy(source) + require(source['T'] == 8 and len(source['order']) == 72, 'source plan dimensions') + order = interleave(source['order']) + windows, schedule = actual_windows(parent, order) + idle8 = idle_profile(owners8, source['windows']) + paid = Counter({int(k): v for k, v in source['profile'].items()}) + paid.subtract(idle8) + require(all(v >= 0 for v in paid.values()), 'T8 idle not within profile') + idle16 = idle_profile(owners, windows) + prof = Counter({k: 2 * v for k, v in paid.items()}) + prof.update(idle16) + prof = +prof + p.update(status='FROZEN_EXPLICIT_T16_TWO_BANK_DIRECT_SUM_OWNER_NOMINATION', + mode='gauge44-all144-t16-idle-concentration', T=16, live=14336, deficit=5120, + profile={str(k): prof[k] for k in sorted(prof)}, order=order, windows=windows, + solver_status='exact pattern-flow LNS on the T16 actual-window geometry', gap=None, + source_plan_sha256=plan_sha, source_owners_sha256=owners8_sha, + assignment_sha256=owners_sha, assignment_content_sha256=content_sha(owners)) + for field in ('provider_calls', 'per_call_widths'): + p[field] = [] + for old in source[field]: + for group in range(2): + new = copy.deepcopy(old) + new['replica'] += 8 * group + if 'time' in new: + new['time'] = 2 * old['time'] + group + p[field].append(new) + at = {tuple(x): i for i, x in enumerate(order)} + for field in ('provider_calls', 'per_call_widths'): + p[field].sort(key=lambda c: at[c['stage'], c['replica']]) + p['replica_lift'] = dict(groups=2, source_replicas=8, replicas=16, + parent_template_content_sha256=content_sha(parent), owners_file_sha256=owners_sha, + window_semantics='strict physical source-event touch intervals, including bridges', + schedule_content_sha256=content_sha(schedule)) + require(len(owners) == 144 * len(source['provider_registry']['gauge44']['widths']), 'owner role count') + for role in owners: + require(role['time'] == at[role['stage'], role['replica']], 'role call time') + require(role['time'] in windows[f"{role['owner_replica']},{role['child']}"][1], 'owner outside actual window') + require(sum(int(k) * v for k, v in p['profile'].items()) == 73 * p['live'] - p['deficit'], 'rank mass') + return p, schedule, idle8, idle16 + + +def main(base, plan8p, own8p, own16p, out): + base, out = Path(base), Path(out) + require(not out.exists(), 'out exists') + src_path = base / 'split-centres/GLOBAL-TEMPLATE.json.gz' + source = read(src_path) + plan8 = read(plan8p) + require(lift_parent(source, 1) == source, 'T8 identity control') + require(actual_windows(source, plan8['order'])[0] == plan8['windows'], 'T8 source-window replay') + require(source['exact_data_phase_recipe_sha256'] == sha(base / 'work/complex-nine-native/DATA-PHASES.json'), 'data-phase binding') + parent = lift_parent(source) + owners8, owners = read(own8p), read(own16p) + plan, schedule, idle8, idle16 = lift_plan(plan8, parent, owners8, owners, sha(plan8p), sha(own8p), sha(own16p)) + out.mkdir(parents=True) + (out / 'GLOBAL-TEMPLATE.json.gz').write_bytes(portable_gzip(canonical(parent))) + (out / 'PLAN.json').write_bytes((json.dumps(plan, indent=2) + '\n').encode()) + rec = dict(status='PASS_T16_DIRECT_SUM_PARENT_AND_LITERAL_SOURCE_WINDOWS', T8_identity_control=True, + T8_source_window_identity=True, idle8=dict(sorted(idle8.items())), idle16=dict(sorted(idle16.items())), + profile=plan['profile'], parent_live=parent['live'], parent_physical=parent['physical'], + actual_window_membership_checked=len(owners), events=len(schedule)) + (out / 'PARENT-LIFT-RECEIPT.json').write_text(json.dumps(rec, indent=2) + '\n') + print(json.dumps(rec)) + + +if __name__ == '__main__': + main(*sys.argv[1:6]) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/verify_t16.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/verify_t16.py new file mode 100644 index 0000000000..4794150c4c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/vendor/pr1074/verify_t16.py @@ -0,0 +1,122 @@ +"""Strict T16 replay: the T8 package's frozen admission, then the sixteen-replica two-bank controller. + +Credit: the T16 controller, source adapters, direct-sum parent lift, actual-window reconstruction and the +independent T16 checker are Hao Yan's (@FanPUYen) PR #858 (research/complex-double-replica-owners, Apache-2.0), +vendored in t16/ with only the documented generalisations (word-derived R/widths/idle profile, owner-derived PLAN profile). +The adapted controller code/ is byte-identical to the signed research/gauge44-barch-t16 code (#870's T16 code). + +Stages (strict only, no discovery, no optimizer): + restore-parent, bind8 (T8 SPEC data/SPEC-T8.json, T8 PLAN/OWNERS data/T8/: replays the gauge44-slots admission), + lift16 (direct-sum parent and actual source-event windows; every one of the frozen data/OWNERS.json.gz roles is checked + inside its owner's actual window; the lifted PLAN must equal data/PLAN.json). data/OWNERS.json.gz is frozen data (an exact + pattern-flow LNS repack on the T16 geometry); it is checked by lift16, the controller audit and independent-t16. No + owner constructor or optimizer runs. bind, emit, audit, invoice, assembly, admission-controls, + bit-supplier-controls (code/ = pinned gauge44 code + #858's exact multiplicity-checked T16 edits), independent-t16. +""" +import argparse, gzip, hashlib, json, os, shutil, subprocess, sys, time +from fractions import Fraction +from pathlib import Path + +assert __debug__, 'Assertions required' +PKG = Path(__file__).resolve().parent +sha = lambda p: hashlib.sha256(Path(p).read_bytes()).hexdigest() +rd = lambda p: json.loads(gzip.decompress(Path(p).read_bytes()) if str(p).endswith('.gz') else Path(p).read_bytes()) +ap = argparse.ArgumentParser(description=__doc__) +ap.add_argument('--main', type=Path, required=True) +ap.add_argument('--local', type=Path, required=True) +ap.add_argument('--work', type=Path, required=True) +a = ap.parse_args() +main, local, work = a.main.resolve(), a.local.resolve(), a.work.resolve() +assert not work.exists(), 'Output directory must be new' +source = main / 'research/complex-k492-owner-repair/vendor/multicold' +baseline = main / 'research/community-k492-audit/pr622/replay/baseline558' +vendor = source / 'vendor/pr558/vendor/pr552/complex-global/vendor531' +for rel, expected in rd(PKG / 'data/UPSTREAM-PINS.json').items(): + assert sha(main / rel) == expected, 'Upstream dependency changed: ' + rel +work.mkdir(parents=True) +env0 = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0', + MULTICOLD_SOURCE=str(source), GAIN_PR564_SOURCE=str(source)) +for k in ('PYTHONOPTIMIZE', 'WITNESS_DISCOVER', 'WITNESS_RECORD', 'WITNESS_SPEC'): + env0.pop(k, None) +stages = [] +SPEC8, SPEC16 = PKG / 'data/SPEC-T8.json', PKG / 'data/SPEC.json' +PLAN8, OWN8 = PKG / 'data/T8/PLAN.json', PKG / 'data/T8/OWNERS.json.gz' + + +def run(name, script, *args, spec=SPEC16, extra=None): + t0 = time.monotonic() + log = work / (name + '.log') + with log.open('w') as s: + rc = subprocess.run([sys.executable, '-B', str(source / 'code/run_portable.py'), str(script), *map(str, args)], + env=dict(env0, WITNESS_SPEC=str(spec), **(extra or {})), stdout=s, stderr=subprocess.STDOUT).returncode + stages.append(dict(name=name, seconds=round(time.monotonic() - t0, 3), exit_code=rc, log_sha256=sha(log))) + (work / 'STAGES.json').write_text(json.dumps(stages, indent=2) + '\n') + if rc: + raise RuntimeError(name + ' failed:\n' + log.read_text()[-6000:]) + print('PASS', name, stages[-1]['seconds'], flush=True) + + +code, t16 = PKG / 'code', PKG / 't16' +R16 = len(rd(PLAN8)['provider_registry']['gauge44']['widths']) +run('restore-parent', code / 'restore_parent.py', '--source', source, '--baseline', baseline, '--out', work / 'parent558', spec=SPEC8) +run('bind8', code / 'bind_providers_portable.py', '--baseline', work / 'parent558', '--provider', 'gauge44=' + str(local), + '--plan', PLAN8, '--out', work / 'global8', spec=SPEC8) + +run('lift16', t16 / 'lift16.py', work / 'global8/base', PLAN8, OWN8, PKG / 'data/OWNERS.json.gz', work / 'lift', spec=SPEC8) +assert rd(work / 'lift/PLAN.json') == rd(PKG / 'data/PLAN.json'), 'lifted PLAN differs from data/PLAN.json' +parent16 = work / 'parent16' +shutil.copytree(work / 'parent558', parent16) +shutil.copyfile(work / 'lift/GLOBAL-TEMPLATE.json.gz', parent16 / 'complex-global/base/split-centres/GLOBAL-TEMPLATE.json.gz') +g = work / 'global' +run('bind', code / 'bind_providers_portable.py', '--baseline', parent16, '--provider', 'gauge44=' + str(local), + '--plan', PKG / 'data/PLAN.json', '--out', g) +run('emit', code / 'emit_allcold.py', '--base', g / 'base', '--owners', PKG / 'data/OWNERS.json.gz', '--plan', g / 'PLAN.json', '--out', g / 'hosted') +run('audit', code / 'audit_allcold.py', g / 'base', g / 'hosted', g / 'audit/ASYNC-AUDIT.json', '--mutation-controls') +run('invoice', code / 'invoice_allcold.py', '--base', g / 'base', '--hosted', g / 'hosted', '--audit', g / 'audit', + '--out', g / 'audit', '--retained-invoice', vendor / 'evidence/audit/PREFIX-AND-INVOICE.json') +run('assembly', code / 'assemble.py', source, g, work / 'ASSEMBLY.json') +for nm, sc, out in (('admission-controls', 'assembly_controls.py', 'ADMISSION-CONTROLS.json'), + ('bit-supplier-controls', 'bit_supplier_controls.py', 'BIT-SUPPLIER-CONTROLS.json')): + run(nm, code / sc, '--source-package', source, '--owner', g / 'audit/OWNERS-AND-PROFILE.json', + '--invoice', g / 'audit/PREFIX-AND-INVOICE.json', '--out', work / out) +lift = rd(work / 'lift/PARENT-LIFT-RECEIPT.json') +run('independent-t16', t16 / 'indep16.py', '--baseline-parent', work / 'global8/base/split-centres/GLOBAL-TEMPLATE.json.gz', + '--owners', PKG / 'data/OWNERS.json.gz', '--word', local / 'CANONICAL-WORD.json.gz', '--out', work / 'INDEPENDENT-T16.json', + extra={'T16_EXPECTED_IDLE': json.dumps(rd(SPEC16)['expected']['idle_remainder_profile']), + 'T16_EXPECTED_WIDTHS': json.dumps(rd(SPEC16)['providers']['gauge44']['inventory'])}) +asm, ind = rd(work / 'ASSEMBLY.json'), rd(work / 'INDEPENDENT-T16.json') +inv = rd(g / 'audit/PREFIX-AND-INVOICE.json') +bc, ac = rd(work / 'BIT-SUPPLIER-CONTROLS.json'), rd(work / 'ADMISSION-CONTROLS.json') +assert asm['status'] == 'PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY' and asm['kappa'] == rd(SPEC16)['expected']['kappa'] +assert bc['status'] == 'PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS' and len(bc['rejected_controls']) == 12 and bc['derived_deficit'] == 10272 +assert not ac['discovery_accepted_controls'] and len(ac['rejected_controls']) == 69 +assert ind['status'] == 'PASS_INDEPENDENT_T16_LITERAL_WINDOWS_CHARTS_PREFIX_ROW' and len(ind['controls_rejected']) == 6 +assert ind['profile'] == asm['complex_profile'] and {str(k): v for k, v in lift['idle16'].items()} == {str(k): v for k, v in ind['idle'].items()} +assert ind['prefix_bits'] == inv['global_prefix_bits'] < 512 and ind['physical_row_coefficient'] < 20161 +# Final binding (as #858 verify.py final_binding). +owner, audit = rd(g / 'audit/OWNERS-AND-PROFILE.json'), rd(g / 'audit/ASYNC-AUDIT.json') +assert ind['physical_row_coefficient'] == inv['finite']['physical_row_coefficient'] < inv['finite']['retained_row_coefficient'] == 20161 +assert inv['charged_prefix_bits'] == 512 +assert ind['rank_mass'] == owner['rank_mass'] == 1041408 and ind['deficit'] == owner['deficit'] == 5120 +assert inv['strict_checks'] and all(inv['strict_checks'].values()), 'every finite invoice inequality' +assert len(asm['outer']) == 47 and all(Fraction(v) > 0 for v in asm['outer'].values()), 'all 47 strict outer margins' +assert audit['mutation_controls_run'] and len(audit['mutations_rejected']) == 15 +assert ind['roles'] == owner['hosted_residuals'] == audit['complex_hosted_residuals'] == 144 * R16 +assert ind['calls'] == audit['complete_invocations'] == inv['complete_invocation_sweeps'] == 144 +assert ind['actual_73_axis_charts'] == owner['actual_73column_sigmas'] == audit['actual_orthogonal_73column_maps'] +assert lift['actual_window_membership_checked'] == 144 * R16 and lift['T8_identity_control'] and lift['T8_source_window_identity'] +for name in ('CANONICAL-WORD.json.gz', 'LOCAL-PROGRAMS.json.gz', 'LOCAL-CHECKS.json', 'INDEPENDENT-LOCAL-REPLAY.json', + 'RESIDUAL-ADAPTERS.json', 'CLIFFORD-RECIPES.json', 'CLIFFORD-REVIEW.json'): + assert rd(g / 'base/providers/gauge44' / name) == rd(local / name), 'provider content binding: ' + name +assert asm['template_sha256'] == owner['template_sha256'] == inv['template_sha256'] +assert inv['owner_audit_sha256'] == sha(g / 'audit/OWNERS-AND-PROFILE.json') and inv['controller_audit_sha256'] == sha(g / 'audit/ASYNC-AUDIT.json') +assert Fraction(asm['kappa']) > Fraction(rd(SPEC8)['expected']['kappa']), 'T16 must strictly improve the T8 package' +res = dict(status='PASS_GAUGE44_T16_STRICT_GLOBAL_REPLAY', kappa=asm['kappa'], kappa_decimal=asm['kappa_decimal'], + conservative_kappa_decimal=asm['conservative_kappa_decimal'], complex_lower=asm['complex_lower'], bit_lower=asm['bit_lower'], + complex_profile=asm['complex_profile'], idle_remainder_profile=ind['idle'], complete_invocations=144, roles=ind['roles'], + prefix_bits=ind['prefix_bits'], charged_prefix_bits=512, physical_row_coefficient=ind['physical_row_coefficient'], + retained_row_coefficient=20161, actual_73_axis_charts=ind['actual_73_axis_charts'], + controls=dict(admission=69, bit_supplier=12, independent_t16=6, controller_mutations=15), + t8_kappa=rd(SPEC8)['expected']['kappa'], spec_sha256=sha(SPEC16), stages=stages, scope=asm['scope']) +(work / 'REPLAY.json').write_text(json.dumps(res, indent=2) + '\n') +print(res['status'], res['kappa_decimal'], flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/verify.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/verify.py new file mode 100644 index 0000000000..00a5c8197e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends-t16/verify.py @@ -0,0 +1,134 @@ +"""Rebuild the endpoint word, then replay the frozen T16 witness without optimization.""" +import argparse +import gzip +import hashlib +import importlib.util +import json +import os +import shutil +import subprocess +import sys +import time +from fractions import Fraction +from pathlib import Path + +P = Path(__file__).resolve().parent +ROOT = P.parents[1] +PRE = ROOT / 'research/k8-eight-ends' +UP = ROOT / 'research/gauge44-slots' + + +def read(path): + path = Path(path) + b = path.read_bytes() + return json.loads(gzip.decompress(b) if path.suffix == '.gz' else b) + + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + + +def payload(path): + return hashlib.sha256(gzip.decompress(Path(path).read_bytes())).hexdigest() + + +def dump(path, value): + Path(path).write_text(json.dumps(value, indent=2) + '\n') + + +def main(): + assert __debug__, 'Assertions required' + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--base', type=Path, required=True) + ap.add_argument('--work', type=Path, required=True) + ap.add_argument('--native-from', type=Path) + a = ap.parse_args() + work = a.work.resolve() + assert not work.exists() and not work.is_relative_to(ROOT) + for name, h in read(P / 'MANIFEST.json').items(): + assert sha(P / name) == h, ('package drift', name) + for name, h in read(P / 'SOURCE-PINS.json').items(): + assert sha(ROOT / name) == h, ('source drift', name) + for name, pins in read(P / 'UPSTREAM.json')['files'].items(): + b = (P / 'vendor/pr1074' / name).read_bytes() + assert hashlib.sha256(b).hexdigest() == pins['sha256'], name + assert hashlib.sha1(b'blob ' + str(len(b)).encode() + b'\0' + b).hexdigest() == pins['git_blob'], name + work.mkdir(parents=True) + env = dict(os.environ, PYTHONDONTWRITEBYTECODE='1', PYTHONUTF8='1', PYTHONINTMAXSTRDIGITS='0') + for name in ('PYTHONOPTIMIZE', 'WITNESS_DISCOVER', 'WITNESS_RECORD', 'WITNESS_SPEC'): + env.pop(name, None) + steps = [] + + def run(name, script, *args): + t = time.monotonic() + log = work / (name + '.log') + with log.open('w') as f: + result = subprocess.run([sys.executable, '-B', str(script), *map(str, args)], + cwd=ROOT, env=env, stdout=f, stderr=subprocess.STDOUT) + steps.append(dict(step=name, exit_code=result.returncode, seconds=time.monotonic()-t, + log_sha256=sha(log))) + dump(work / 'STEPS.json', steps) + assert result.returncode == 0, (name, log.read_text()[-6000:]) + print('PASS', name, flush=True) + + raw = work / 'FULL-WORD.json.gz' + run('build', PRE / 'build_word.py', '--base', a.base.resolve(), '--out', raw) + assert payload(raw) == read(PRE / 'RECIPE.json')['output_content_sha256'] == payload(PRE / 'FULL-WORD.json.gz') + run('independent-local', UP / 'independent/audit_local.py', '--word', raw, '--main', ROOT, + '--output', work / 'AUDIT-LOCAL.json') + run('end-controls', PRE / 'end_controls.py', work / 'END-CONTROLS.json') + assert len(read(work / 'END-CONTROLS.json')['rejected']) == 32 + if a.native_from: + native = a.native_from.resolve() + else: + native = work / 'native' + run('native', PRE / 'replay_native.py', raw, native) + ns = read(native / 'STEPS.json') + assert [s['step'] for s in ns] == ['native', 'ledgers', 'local-replay', 'wrappers', 'phases'] + assert all(s['exit_code'] == 0 for s in ns) + for s in ns: + if 'log_sha256' in s: + assert sha(native / (s['step'] + '.log')) == s['log_sha256'], s['step'] + native_logs = {s['step']: sha(native / (s['step'] + '.log')) for s in ns} + local = native / 'local' + assert payload(local / 'FULL-WORD.json.gz') == payload(raw) + spec = importlib.util.spec_from_file_location('native_identity', UP / 'code/generated_identity.py') + ident = importlib.util.module_from_spec(spec) + spec.loader.exec_module(ident) + identities = ident.artifact_identities(local) + assert identities == read(PRE / 'PLAN.json.gz')['provider_registry']['gauge44']['artifact_semantic_sha256'] + assert identities == read(P / 'PLAN.json.gz')['provider_registry']['gauge44']['artifact_semantic_sha256'] + + runtime = work / 'runtime' + shutil.copytree(P / 'vendor/pr1074', runtime, ignore=shutil.ignore_patterns('__pycache__')) + data = runtime / 'data' + (data / 'T8').mkdir() + (data / 'T8/PLAN.json').write_bytes(gzip.decompress((PRE / 'PLAN.json.gz').read_bytes())) + shutil.copy2(PRE / 'OWNERS.json.gz', data / 'T8/OWNERS.json.gz') + shutil.copy2(PRE / 'SPEC.json', data / 'SPEC-T8.json') + (data / 'PLAN.json').write_bytes(gzip.decompress((P / 'PLAN.json.gz').read_bytes())) + for name in ('OWNERS.json.gz', 'SPEC.json'): + shutil.copy2(P / name, data / name) + run('strict-t16', runtime / 'verify_t16.py', '--main', ROOT, '--local', local, '--work', work / 't16') + result = read(work / 't16/REPLAY.json') + claim = read(P / 'CLAIM.json') + assert result['kappa_decimal'] == claim['kappa_decimal'] + assert result['complex_profile'] == read(P / 'PLAN.json.gz')['profile'] == claim['global_profile'] + assert Fraction(result['kappa']) > Fraction(claim['previous_kappa']) + run('all-replica-bound', P / 'independent/all_t_bound.py', '--out', work / 'ALL-T-BOUND.json') + bound = read(work / 'ALL-T-BOUND.json') + assert bound == read(P / 'evidence/ALL-T-BOUND.json') + assert Fraction(result['kappa']) < Fraction(bound['kappa_strict_rational_upper']) + receipt = dict(status='PASS_K8_EIGHT_ENDS_T16_COMPLETE_ADMISSION', + kappa_decimal=result['kappa_decimal'], complex_lower=result['complex_lower'], + bit_lower=result['bit_lower'], previous_kappa=claim['previous_kappa'], + end_controls=32, controls=result['controls'], outer_strict_inequalities=47, + native_steps=ns, native_log_sha256=native_logs, native_reuse=bool(a.native_from), native_semantic_artifacts=identities, + fixed_family_all_replica_grid_upper=bound['all_T_grid_upper_decimal'], + replay_sha256=sha(work / 't16/REPLAY.json'), scope=claim['scope'], steps=steps) + dump(work / 'RESULT.json', receipt) + print(receipt['status'], receipt['kappa_decimal']) + + +if __name__ == '__main__': + main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/CLAIM.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/CLAIM.json new file mode 100644 index 0000000000..b3bb920f38 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/CLAIM.json @@ -0,0 +1,34 @@ +{ + "status": "PASS_K8_EIGHT_RANK7_ENDS_COMPLETE_ADMISSION", + "kappa": "1673414377866467/1000000000000000000", + "kappa_decimal": "0.001673414377866467", + "previous_kappa": "0.001672196274581061", + "gain_percent": "0.07284451615652439", + "pr1050_reported_kappa": "0.001672241870811633", + "gain_over_pr1050_percent": "0.07011587709288229", + "complex_lower": "838109693744975872657/500000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "local_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "global_profile": { + "1": 173516, + "2": 33841, + "3": 28950, + "4": 10224, + "5": 5904, + "8": 576, + "32": 1, + "48": 2450 + }, + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification.", + "comparison_sources": { + "previous": "../k8-coordinated-owners/CLAIM.json", + "PR1050": "https://github.com/CrocSwap/integer-mult-bounds/pull/1050" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/FULL-WORD.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/FULL-WORD.json.gz new file mode 100644 index 0000000000..b2dc6cdce2 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/FULL-WORD.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/MANIFEST.json new file mode 100644 index 0000000000..3427028b2a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/MANIFEST.json @@ -0,0 +1,53 @@ +{ + "CLAIM.json": "65f620750f2a438316684b74cdf7cd990d59626b5c073e7dde0fd735ff3e158d", + "FULL-WORD.json.gz": "d28c607df2bc4a82684d3fe47cfb3dba04e3bd14b247c7d4a62a03dff7b2836c", + "NOTICE.md": "820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5", + "OWNERS.json.gz": "c41fdf51541ecc91af914f264967f3633570500994f8866daf642440a5d843dd", + "PLAN.json.gz": "a3e9e390da3136655606ac919ec60696e2f704457ff01ef9e4d07e90534ab2d4", + "PROOF.md": "1ee3b7d22a39ccb0877ca32f176786b2545dd2b86bbe986eec833b96cd17ba6b", + "README.md": "0f2bc8afeff4054cb8fb62819563a6214d53af916ebf6f28bb2fcd972814362c", + "RECIPE.json": "6a5d91b95bdba641ab4cc0e3c9b7f0f2adcc5ef22bef7f732d5d76cb0b6fab6c", + "SEARCH.json": "f1816698aa4d7deb48ef7e98a711fdc0c74d67bd336d4b8f48b46fe191d7d1b1", + "SOURCE-PINS.json": "6b85ed22262e23db1ff0518d874d4e3ee1b4317d642fabdc9747cecbd04ef420", + "SPEC.json": "555cf868f29c8173b2faf8243aea30ee29f3e12f694c6cb3865a06981592af24", + "build_word.py": "18691b1fad3bc798b7ad58b39b433f405e9bb4ec266af0303b563f11b07d956f", + "discovery/END-COMBINATIONS.json": "db6353685f6f344a6e3a4b8476dde4858fa2fad65fe4e74abcecab93eb07a79f", + "discovery/END-GROUP-SCREEN.json": "b197a014997ec869cc2768b68070e9ad3cd6d19633b366085a8061a3523fe3ef", + "discovery/END-GROUPS.json": "19b456b91852df5ee2aec79a16ab454c5772bd5160d1cee42e4df6f0cb211bd4", + "discovery/RETIME-CENSUS.json": "40ea9706b94cd23a6c37ab01afb6e945ab59ac43d1a61433583cf1d297cf57dd", + "discovery/SEARCH-TRACES.json.gz": "eaa157000003e807fb466d6c7bfc032dc74857ae4afc5de2ca6d1bf1a631c37f", + "discovery/SOURCE-CENSUS.json": "aeadcc466b01fd5a2498037f3a83dcecdde91d30327a15c684d77645489e6f69", + "discovery/SOURCE-REFRAME.json": "d69170ce6443ffaf890a5e3e2b8cecdb74ba4e7b75273738ed367be5643b01a1", + "discovery/combine_ends.py": "ea0e79e0bf4ea7d44cadd179fb5bb6ff13cf6cd960362a1e2e07c63c1969b7f8", + "discovery/end_groups.py": "190a44e768daf0d9076158da9f00e4aa7e682e7df90749d18fbd55f1a04b9b09", + "discovery/frame_model.py": "dee9899272846ee954f8daf6e9f60c9e073c86489b2a594d4d9a4a9899cbd0e9", + "discovery/minimize_recipe.py": "8fa2216d1228c12a08b5e93b084ce1426ebe99b5abb7f6e614173b56bedb459d", + "discovery/prepare_new.py": "b2995d74b63010aa3bd5e4cdc59666a0ca0d9d4244340c694e8eed6171231c0d", + "discovery/resize_owners.py": "af9b632d51f6b4beddd87bf75d6e36eb3f58b7e467e711208f304a774f8b26f0", + "discovery/retime_sources.py": "35600042b16447b24289c73a41462d4eeb6600117529df5baf4fed5aa389d898", + "discovery/screen_end_groups.py": "a29814cfc5f3f86dc62272fd3cceb2fb0456a3aa25c8b183980291b744e9ab54", + "discovery/search_calls.py": "5df48ab7775bfee767d71dd8c47585977922568b532c29f4528f2c8ca5ab364d", + "discovery/source_census.py": "9808b026a8a7556fbf171f57ca46b32c2e33b36eeb2924e7eee24abb2a7b3853", + "discovery/test_structures.py": "7c550f1c00d58fa1df668179e09c0fd9fe61c35029f548f973727f0b36706e31", + "end_controls.py": "9f4a2ad05a3602be3bd89bb1a1e3fc40bb78eb3ad8de3f66aa19e44e53e30e2a", + "evidence/ADMISSION-CONTROLS.json": "b7df5cb7695f8de70c674a03c10a36682d85b958340d392c8d61e9b969111179", + "evidence/ASSEMBLY.json": "1cf819f87c1e550c78de98206a52e9aff04ec47022e5a63987bcd1dd5d2e51f6", + "evidence/ASYNC-AUDIT.json": "2b056ae65d212cfdf4d83778b9be47dc7a9ded6626feb3a20ae2de6ead8dbb79", + "evidence/AUDIT-LOCAL.json": "4ebd818fe459c8b729aaf385d6b2946e58316414a9c29c5ba6a2335d63af7ecf", + "evidence/BIT-SUPPLIER-CONTROLS.json": "4fbf09922859926ed79eb4874a0c3414a13991de2ffc64d30a382e7eecb2c2a4", + "evidence/CLIFFORD-REVIEW.json": "2bfc112221995431c25a7257fdda5a2e9b2631c1712a48ab428f946849cbac91", + "evidence/END-CONTROLS.json": "e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135", + "evidence/ENDS-8-AUDIT.json": "5381c41fa10fdccbc5c5bdc7059ad839e508d7b8bc3a139bc8ad6b45c20b01c3", + "evidence/INDEPENDENT-LOCAL-REPLAY.json": "00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99", + "evidence/LOCAL-CHECKS.json": "3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba", + "evidence/NATIVE-STEPS.json": "02f6ea9122362ba1e408e72c331ffc850a2fbd1593afb06554aa0ab5c7aee0f6", + "evidence/OWNERS-AND-PROFILE.json": "a04d3db0d157b197d9395967163e155f0d8775a06db2ca4318258830e2abdaa9", + "evidence/PREFIX-AND-INVOICE.json": "66650384488db73bf3d5c7742abaa9c116877845bbb4ef46d6fffe235ae7d1c0", + "evidence/PREPARATION.json": "cd980d9b80de65d1bd9358d590a479fb85d75fc4e468a12539cd5a0388190e8d", + "evidence/REPLAY.json": "fa6b65403a28ce8c717412b0d90dd4c702bcba7e3c530bca932f921f0dba75e2", + "evidence/RESULT.json": "904b0cb2082f6f109845d30f6ee4bb6f766ea493c4cee6a637634362a30785b0", + "evidence/STEPS.json": "5577123fa4422fb80f412dc3713bbd7eea5c4c50b63db635f01585457c9d2960", + "evidence/WRAPPER-CHECKS.json": "b6c7fdef5893b117434f39b6561b80504482fa748e23b840f77a07b137e1d1ea", + "replay_native.py": "1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6", + "verify.py": "d57061431e087fb755382e3b362ea7421e5ee3dfae5b3ed81ce5228278ba58b6" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/NOTICE.md new file mode 100644 index 0000000000..a756f9da58 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/NOTICE.md @@ -0,0 +1,9 @@ +Apache-2.0. Prepared for Thomas DiFiore with OpenAI Codex assistance. + +This package composes earlier community constructions and retains their mathematical assumptions. It claims the displayed finite composition and its checks, not original authorship of E8, the mutable-source k8 circuit, the endpoint technique, or the admission machinery. + +* CrocSwap/integer-mult-bounds PR1018 (`research/gauge44-slots`) supplies the R480 k8 + seven-slot circuit, all native scalar/phase checkers, and strict global admission. +* PR1030, commit d71857cd0ae7824e935aac17327e4ec27f66322b, supplies the rank-seven endpoint-pair lead. Its U8 helpers 588/589 correspond to k8 helpers 574/575. The new composition also uses 572/573, 580/581, and 582/583, with all four reductions refitted together. +* `discovery/frame_model.py` adapts the complete frame model from PR864 (navinor / Claude), retained in the earlier local research run. The adaptation permits a new initial frame assignment after changing the scalar graph or endpoint constraints. It is nomination code; unchanged independent native checks decide admission. +* `research/k8-coordinated-owners` supplies the initial whole-owner map and coordinated complete-call search. Earlier owner machinery and dual prices originate with chafreaky, G44Pack, and jon314159; see that package's NOTICE.md. +* All analytic, compiler, boundary, common-label, hosting, and bit-supplier assumptions remain those of the upstream source chain. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/OWNERS.json.gz new file mode 100644 index 0000000000..7a6a9951c3 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/PLAN.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/PLAN.json.gz new file mode 100644 index 0000000000..034f1848ff Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/PLAN.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/PROOF.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/PROOF.md new file mode 100644 index 0000000000..2845bae67a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/PROOF.md @@ -0,0 +1,17 @@ +The scalar instructions and their order are identical to the admitted PR1018 k8 + seven-slot supplier. The frozen recipe changes 42 B frames, eight early-cleanup frames, and eight helper endpoints. No A frame, scalar coefficient, entrance, center, or output interface changes. + +Helpers 572, 573, 574, 575, 580, 581, 582, and 583 terminate in seven-dimensional subspaces of their old eight-dimensional ends. They start at dimension zero, so each helper's occupied width decreases from eight to seven. The paid local profile changes from + +`{1:2412, 2:418, 3:432, 4:142, 5:82, 8:8}` + +to + +`{1:2396, 2:470, 3:400, 4:142, 5:82, 8:8}`. + +Thus local rank mass decreases from 5586 to 5578, and helper width sum decreases from 3730 to 3722. The width inventory is `{4:56, 5:32, 7:38, 8:114, 9:240}`. The early restorations still cancel arbitrary helper dirt; independent exact forward/dual replay checks all 704 columns, entrance-zero response, wrapper exclusion, monotone chains, center interfaces, and endpoint row/column cones. Thirty-two deliberately corrupted variants must fail. The native backend independently transports the word and reconstructs both orientations, residual adapters, and all 2904 directed phase equalities. + +The owner payload contains 72 calls × 480 whole helpers. Each call retains the source geometry and interfaces. The unchanged physical verifier checks every role, chart, legal time window, occupancy, alias exclusion, residual interval, and prefix invoice. Repacking the eight units freed per call compensates for the changed local profile. The global rank mass remains 520704, so the deficit remains 73 × 7168 − 520704 = 2560. + +`PLAN.json.gz` (expanded verbatim for admission), `OWNERS.json.gz`, and `SPEC.json` are nominated and frozen before strict verification. No search or floating-point optimizer executes during admission. Unchanged exact rational engines certify the complex root, bit root, and outer inequalities; unchanged mutation suites must reject 69 assembly and 12 bit-supplier controls. This is a finite conditional witness, subject to the inherited all-size/compiler, common-label/mutable-source, whole-call hosting, precision/tape, analytic-transfer, and bit H1–H5 assumptions. + +The previous all-replica bound in `research/k8-coordinated-owners` fixes both the old local profile and helper inventory. This composition changes both; that bound cannot be applied to the new family. Floating-point relaxed bounds in the discovery files are search diagnostics, not achieved κ values or exact impossibility certificates. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/README.md new file mode 100644 index 0000000000..66e86d3d09 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/README.md @@ -0,0 +1,35 @@ +# Eight smaller endpoints on the k8 circuit + +The frozen conditional value is **κ = 0.001673414377866467**, a **0.072845%** increase over 0.001672196274581061. + +This package composes four rank-seven helper endpoint pairs with the R480 k8 + seven-slot supplier, then repacks its whole helpers. See `CLAIM.json` for the frozen conditional κ and comparison, `PROOF.md` for the argument, and `evidence/RESULT.json` for strict verification. This is an incremental construction improvement, not a large new-geometry breakthrough. + +The change is 42 B-frame annotations, eight early-cleanup frames, and eight helper endpoints. Scalar instructions and their order are unchanged. The local helper-width sum falls from 3730 to 3722. All 704 exact scalar columns, both orientations, 2904 directed phase edges, 32 endpoint mutation controls, and the inherited global admission checks are verified. + +PR1030 supplied the first endpoint-pair lead. We transported that pair to the current k8 circuit, screened all 16 groups with smaller forced endpoint spaces, and combined four favorable groups. The discovery also checked seven immediate source aliases and 6497 algebraically permissible source-read placements; none fitted the tested frame constraints. These negative results are limited to those searches. + +The new construction changes the old fixed-profile/fixed-width packing family. The previous packing ceiling therefore does not cover it. Discovery LP values are relaxed search estimates; only the frozen, strictly admitted value in `CLAIM.json` is an achieved result. + +## Reproduce + +Use Python 3.11+ and the upstream native phase backend dependencies, including a C++ compiler and Boost headers. Set `CPLUS_INCLUDE_PATH` to your Boost include directory if needed. No optimization solver is required for verification. + +`BASE` is the final raw k8 + seven-slot `FULL-WORD.json.gz` produced by the documented `research/k8-coordinated-owners/verify.py` rebuild. Its decompressed hash is pinned in `RECIPE.json`. + +```sh +python -B research/k8-eight-ends/verify.py \ + --base "$BASE" \ + --work /tmp/k8-eight-ends-fresh +``` + +The output directory must not exist. To reuse an explicitly supplied completed native replay, add `--native-from /path/to/completed/native`. The verifier checks all five native step receipts and the complete proof-relevant artifact identities, then reruns exact local and global admission. It does not trust a saved status string alone. + +The verifier copies upstream admission code without edits. Frozen `PLAN.json.gz` (expanded verbatim for admission), `OWNERS.json.gz`, and `SPEC.json` remain fixed during verification. `SOURCE-PINS.json` authenticates the source dependencies and `MANIFEST.json` authenticates this package. + +## Research record + +`discovery/END-GROUP-SCREEN.json` and `END-COMBINATIONS.json` record finite endpoint refits and floating-point packing relaxations. `SEARCH.json` records the completed owner searches, and their full traces are retained in compressed form. A feasible optimizer incumbent is a nomination, never an admission result or an optimality proof. + +The exploratory scripts require NumPy/SciPy and `K8_BASE_WORD` set to the pinned baseline raw word. They retain their source census and relaxed endpoint search separately from the verifier. They are not needed to reproduce the frozen witness. + +See `NOTICE.md` for upstream credit. All inherited conditional assumptions remain in force. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/RECIPE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/RECIPE.json new file mode 100644 index 0000000000..f0a78535f7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/RECIPE.json @@ -0,0 +1,1165 @@ +{ + "A": [], + "B": [ + [ + 986, + [ + 270, + 142, + 66, + 36, + 30, + 1 + ], + [ + 271, + 143, + 67, + 37, + 30 + ] + ], + [ + 987, + [ + 264, + 136, + 68, + 34, + 30, + 1 + ], + [ + 265, + 137, + 69, + 35, + 30 + ] + ], + [ + 988, + [ + 258, + 130, + 78, + 40, + 30, + 1 + ], + [ + 259, + 131, + 79, + 41, + 30 + ] + ], + [ + 989, + [ + 260, + 132, + 72, + 46, + 30, + 1 + ], + [ + 261, + 133, + 73, + 47, + 30 + ] + ], + [ + 994, + [ + 260, + 130, + 96, + 20, + 10, + 1 + ], + [ + 261, + 131, + 96, + 20, + 10 + ] + ], + [ + 995, + [ + 258, + 132, + 96, + 20, + 10, + 1 + ], + [ + 259, + 133, + 96, + 20, + 10 + ] + ], + [ + 996, + [ + 390, + 68, + 36, + 20, + 10, + 1 + ], + [ + 390, + 69, + 37, + 20, + 10 + ] + ], + [ + 997, + [ + 390, + 66, + 34, + 20, + 10, + 1 + ], + [ + 390, + 67, + 35, + 20, + 10 + ] + ], + [ + 1018, + [ + 264, + 136, + 74, + 43, + 24, + 7 + ], + [ + 271, + 143, + 74, + 44, + 24 + ] + ], + [ + 1019, + [ + 265, + 137, + 75, + 42, + 24, + 7 + ], + [ + 265, + 137, + 76, + 42, + 24 + ] + ], + [ + 1020, + [ + 266, + 138, + 72, + 41, + 24, + 7 + ], + [ + 266, + 138, + 79, + 41, + 24 + ] + ], + [ + 1021, + [ + 267, + 139, + 73, + 40, + 24, + 7 + ], + [ + 268, + 140, + 73, + 47, + 24 + ] + ], + [ + 1026, + [ + 264, + 137, + 96, + 24, + 4, + 3 + ], + [ + 268, + 137, + 96, + 24, + 3 + ] + ], + [ + 1027, + [ + 265, + 136, + 96, + 24, + 4, + 3 + ], + [ + 265, + 140, + 96, + 24, + 3 + ] + ], + [ + 1028, + [ + 385, + 72, + 40, + 24, + 4, + 3 + ], + [ + 389, + 76, + 44, + 24, + 3 + ] + ], + [ + 1029, + [ + 385, + 73, + 41, + 24, + 4, + 3 + ], + [ + 389, + 73, + 41, + 24, + 3 + ] + ], + [ + 1106, + [ + 260, + 130, + 96, + 20, + 10, + 1 + ], + [ + 261, + 131, + 96, + 20, + 10 + ] + ], + [ + 1107, + [ + 258, + 132, + 96, + 20, + 10, + 1 + ], + [ + 259, + 133, + 96, + 20, + 10 + ] + ], + [ + 1108, + [ + 390, + 68, + 36, + 20, + 10, + 1 + ], + [ + 390, + 69, + 37, + 20, + 10 + ] + ], + [ + 1109, + [ + 390, + 66, + 34, + 20, + 10, + 1 + ], + [ + 390, + 67, + 35, + 20, + 10 + ] + ], + [ + 1130, + [ + 264, + 136, + 74, + 43, + 24, + 7 + ], + [ + 271, + 143, + 74, + 44, + 24 + ] + ], + [ + 1131, + [ + 265, + 137, + 75, + 42, + 24, + 7 + ], + [ + 265, + 137, + 76, + 42, + 24 + ] + ], + [ + 1132, + [ + 266, + 138, + 72, + 41, + 24, + 7 + ], + [ + 266, + 138, + 79, + 41, + 24 + ] + ], + [ + 1133, + [ + 267, + 139, + 73, + 40, + 24, + 7 + ], + [ + 268, + 140, + 73, + 47, + 24 + ] + ], + [ + 1138, + [ + 264, + 137, + 96, + 24, + 4, + 3 + ], + [ + 268, + 137, + 96, + 24, + 3 + ] + ], + [ + 1139, + [ + 265, + 136, + 96, + 24, + 4, + 3 + ], + [ + 265, + 140, + 96, + 24, + 3 + ] + ], + [ + 1140, + [ + 385, + 72, + 40, + 24, + 4, + 3 + ], + [ + 389, + 76, + 44, + 24, + 3 + ] + ], + [ + 1141, + [ + 385, + 73, + 41, + 24, + 4, + 3 + ], + [ + 389, + 73, + 41, + 24, + 3 + ] + ], + [ + 1406, + [ + 257, + 129, + 65, + 42, + 24, + 6 + ], + [ + 256, + 128, + 64, + 42, + 24, + 6, + 1 + ] + ], + [ + 1407, + [ + 257, + 129, + 65, + 42, + 24, + 6 + ], + [ + 256, + 128, + 64, + 42, + 24, + 6, + 1 + ] + ], + [ + 1414, + [ + 259, + 131, + 67, + 33, + 24, + 6 + ], + [ + 258, + 130, + 66, + 32, + 24, + 6, + 1 + ] + ], + [ + 1415, + [ + 259, + 131, + 67, + 33, + 24, + 6 + ], + [ + 258, + 130, + 66, + 32, + 24, + 6, + 1 + ] + ], + [ + 1426, + [ + 266, + 138, + 74, + 33, + 24, + 6 + ], + [ + 266, + 138, + 74, + 32, + 24, + 6, + 1 + ] + ], + [ + 1427, + [ + 266, + 138, + 74, + 33, + 24, + 6 + ], + [ + 266, + 138, + 74, + 32, + 24, + 6, + 1 + ] + ], + [ + 1818, + [ + 320, + 129, + 33, + 24, + 4, + 2 + ], + [ + 256, + 129, + 64, + 33, + 24, + 4, + 2 + ] + ], + [ + 1819, + [ + 320, + 129, + 33, + 24, + 4, + 2 + ], + [ + 256, + 129, + 64, + 33, + 24, + 4, + 2 + ] + ], + [ + 1822, + [ + 266, + 129, + 74, + 33, + 24, + 6 + ], + [ + 256, + 129, + 64, + 33, + 18, + 10, + 6 + ] + ], + [ + 1823, + [ + 266, + 129, + 74, + 33, + 24, + 6 + ], + [ + 256, + 129, + 64, + 33, + 18, + 10, + 6 + ] + ], + [ + 1826, + [ + 320, + 129, + 33, + 19, + 11, + 6 + ], + [ + 256, + 129, + 64, + 33, + 19, + 11, + 6 + ] + ], + [ + 1827, + [ + 320, + 129, + 33, + 19, + 11, + 6 + ], + [ + 256, + 129, + 64, + 33, + 19, + 11, + 6 + ] + ], + [ + 1842, + [ + 257, + 192, + 33, + 19, + 11, + 6 + ], + [ + 257, + 128, + 64, + 33, + 19, + 11, + 6 + ] + ], + [ + 1843, + [ + 257, + 192, + 33, + 19, + 11, + 6 + ], + [ + 257, + 128, + 64, + 33, + 19, + 11, + 6 + ] + ] + ], + "early_cleanup": [ + [ + 93, + [ + 256, + 128, + 96, + 16, + 8, + 4, + 2, + 1 + ], + [ + 256, + 128, + 96, + 17, + 9, + 5, + 3 + ] + ], + [ + 94, + [ + 256, + 128, + 96, + 16, + 8, + 4, + 2, + 1 + ], + [ + 256, + 128, + 96, + 17, + 9, + 5, + 3 + ] + ], + [ + 95, + [ + 256, + 128, + 66, + 34, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 67, + 35, + 17, + 9, + 6 + ] + ], + [ + 96, + [ + 256, + 128, + 66, + 34, + 18, + 10, + 6, + 1 + ], + [ + 256, + 128, + 67, + 35, + 18, + 10, + 6 + ] + ], + [ + 97, + [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ], + [ + 256, + 128, + 73, + 41, + 24, + 5, + 3 + ] + ], + [ + 98, + [ + 256, + 128, + 66, + 34, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 67, + 35, + 17, + 9, + 6 + ] + ], + [ + 99, + [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ], + [ + 256, + 128, + 73, + 41, + 24, + 5, + 3 + ] + ], + [ + 100, + [ + 256, + 128, + 66, + 34, + 18, + 10, + 6, + 1 + ], + [ + 256, + 128, + 67, + 35, + 18, + 10, + 6 + ] + ] + ], + "ends": [ + [ + 572, + [ + 256, + 128, + 66, + 34, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 67, + 35, + 17, + 9, + 6 + ] + ], + [ + 573, + [ + 256, + 128, + 66, + 34, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 67, + 35, + 17, + 9, + 6 + ] + ], + [ + 574, + [ + 256, + 128, + 96, + 16, + 8, + 4, + 2, + 1 + ], + [ + 256, + 128, + 96, + 17, + 9, + 5, + 3 + ] + ], + [ + 575, + [ + 256, + 128, + 96, + 16, + 8, + 4, + 2, + 1 + ], + [ + 256, + 128, + 96, + 17, + 9, + 5, + 3 + ] + ], + [ + 580, + [ + 256, + 128, + 66, + 34, + 18, + 10, + 6, + 1 + ], + [ + 256, + 128, + 67, + 35, + 18, + 10, + 6 + ] + ], + [ + 581, + [ + 256, + 128, + 66, + 34, + 18, + 10, + 6, + 1 + ], + [ + 256, + 128, + 67, + 35, + 18, + 10, + 6 + ] + ], + [ + 582, + [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ], + [ + 256, + 128, + 73, + 41, + 24, + 5, + 3 + ] + ], + [ + 583, + [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ], + [ + 256, + 128, + 73, + 41, + 24, + 5, + 3 + ] + ] + ], + "input_content_sha256": "c2b294300760e1fd6eeab8c22c4d13e4633dca40e52cac8da0d68163a76e3ca8", + "output_content_sha256": "f43271fcabcc9ebb3b9540610574ba463bba4440e7a868bd92e8ea348081d3ec", + "report": { + "local_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "local_rank_mass": 5578, + "width_inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/SEARCH.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/SEARCH.json new file mode 100644 index 0000000000..5bc5198e43 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/SEARCH.json @@ -0,0 +1,178 @@ +{ + "scope": "Finite nomination searches, no optimality claim; exact admission is separate", + "stages": [ + { + "name": "endcalls", + "block": 1, + "iterations": 4, + "seed": 131, + "actual_trace_length": 4, + "final_cost": 56399.6628361662, + "idle": { + "1": 1158, + "2": 7, + "3": 210, + "5": 1, + "7": 6, + "8": 4, + "16": 6, + "23": 1, + "32": 5, + "48": 2427 + }, + "target48": false, + "accepted": 0 + }, + { + "name": "endpairs", + "block": 2, + "iterations": 150, + "seed": 149, + "actual_trace_length": 150, + "final_cost": 56208.608217769564, + "idle": { + "1": 1120, + "2": 2, + "3": 189, + "7": 18, + "16": 10, + "23": 1, + "32": 5, + "48": 2427 + }, + "target48": false, + "accepted": 37 + }, + { + "name": "endtriples", + "block": 3, + "iterations": 100, + "seed": 157, + "actual_trace_length": 100, + "final_cost": 56037.80155597952, + "idle": { + "1": 1090, + "2": 3, + "3": 221, + "17": 1, + "32": 12, + "48": 2427 + }, + "target48": false, + "accepted": 39 + }, + { + "name": "eight-calls", + "block": 1, + "iterations": 8, + "seed": 167, + "actual_trace_length": 8, + "final_cost": 56627.27173046324, + "idle": { + "1": 1212, + "2": 15, + "3": 155, + "7": 6, + "8": 1, + "16": 14, + "23": 1, + "28": 1, + "32": 16, + "48": 2428 + }, + "target48": false, + "accepted": 0 + }, + { + "name": "eight-pairs", + "block": 2, + "iterations": 250, + "seed": 173, + "actual_trace_length": 250, + "final_cost": 55939.54108668389, + "idle": { + "1": 1057, + "2": 5, + "3": 143, + "7": 7, + "8": 2, + "16": 17, + "23": 1, + "32": 17, + "48": 2431 + }, + "target48": false, + "accepted": 104 + }, + { + "name": "eight-triples", + "block": 3, + "iterations": 180, + "seed": 179, + "actual_trace_length": 180, + "final_cost": 55373.07310356652, + "idle": { + "1": 1010, + "3": 153, + "7": 1, + "12": 1, + "32": 15, + "48": 2440 + }, + "target48": false, + "accepted": 76 + }, + { + "name": "eight-quads", + "block": 4, + "iterations": 100, + "seed": 181, + "actual_trace_length": 100, + "final_cost": 55312.47637490227, + "idle": { + "1": 989, + "2": 1, + "3": 153, + "7": 1, + "8": 1, + "23": 1, + "32": 15, + "48": 2440 + }, + "target48": false, + "accepted": 18 + }, + { + "name": "eight-six", + "block": 6, + "iterations": 80, + "seed": 191, + "actual_trace_length": 80, + "final_cost": 55119.08968490834, + "idle": { + "1": 1004, + "2": 1, + "3": 150, + "32": 1, + "48": 2450 + }, + "target48": true, + "accepted": 4 + } + ], + "endpoint_groups": 16, + "endpoint_combinations": 11, + "source_aliases": 7, + "source_retime_placements": 6497, + "selected_helpers": [ + 572, + 573, + 574, + 575, + 580, + 581, + 582, + 583 + ], + "search_program": "research/k8-coordinated-owners/discovery/search_calls.py" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/SOURCE-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/SOURCE-PINS.json new file mode 100644 index 0000000000..7cfe1eabaf --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/SOURCE-PINS.json @@ -0,0 +1,64 @@ +{ + "research/gauge44-slots/MANIFEST.json": "9a6f239b1618a43262e56735a99cc59b6f5a6e8816a794a34413e89cc33f4976", + "research/gauge44-leaver8/MANIFEST.json": "7c9637f06798b144274458efa145f701c61282f8b3aab1c0c900b53bdfbe1f0d", + "research/gauge44-slots/verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "research/gauge44-slots/verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "research/gauge44-slots/hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "research/gauge44-slots/data/PLAN.json": "1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08", + "research/gauge44-slots/data/OWNERS.json.gz": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a", + "research/gauge44-slots/data/SPEC.json": "8e95ae8087124189cbd366d0e9d1c5ebededff536ff3501927b4b2a2e8dac70e", + "research/gauge44-slots/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "research/gauge44-slots/construction/slots/verify_slots.py": "bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be", + "research/gauge44-slots/construction/slots/SLOT-PINS-k8.json": "55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2", + "research/gauge44-slots/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/gauge44-slots/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/gauge44-slots/code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "research/gauge44-slots/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/gauge44-slots/code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "research/gauge44-slots/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/gauge44-slots/code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "research/gauge44-slots/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/gauge44-slots/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/gauge44-slots/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/gauge44-slots/code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "research/gauge44-slots/code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "research/gauge44-slots/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/gauge44-slots/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/phase_timing_controls.py": "1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/witness.py": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py": "08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py": "8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py": "a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_controls_atc.py": "63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py": "cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/emit_allcold.py": "fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py": "0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py": "66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py": "e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9", + "research/complex-k492-owner-repair/vendor/multicold/code/build_multicut_kernels.py": "6ab3d73f81d5b2fb884a93a336ef1940e118d419d425b3356bab3b97f774c9aa", + "research/complex-k492-owner-repair/vendor/multicold/code/build_four_portable.py": "417b1dc4dca485dfbbaa820e552cae9bf3932bbace6ea16ce93aa0590c3c184e", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_kernel_controls.py": "5100459211f43ba048bf82c3942bbedb8b224272b24722a14f0dcd808a38aafa", + "research/complex-k492-owner-repair/vendor/multicold/code/phase_timing_controls.py": "dcc4adfd139d6f65a88bdc6d183ea3777d4e4f688d2169dd41b54964f05591bb", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-k492-owner-repair/vendor/multicold/code/assemble.py": "3fedbccb09d469f8ee366b4302e51448de6d25793a78a12c5f9a8d9667a755eb", + "research/complex-k492-owner-repair/vendor/multicold/code/assembly_controls.py": "a0f2349ba8fe8404b8b76c869f12dd7e250a775b2e05b3c9c00e6889ad4c8a45", + "research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_allcold.py": "7950e5c01488a9146bdbaf19ab4fd0c33cd25a4d63fb56ef995ef2e45ac7ec1a", + "research/complex-k492-owner-repair/vendor/multicold/code/bind_providers_portable.py": "01e62fee1f1dcf1b7b34338d555dacd5cd1d7d10d6b9a605d0913d959f8c7ecf", + "research/complex-k492-owner-repair/vendor/multicold/code/invoice_allcold.py": "ff8fee775ad97926454f3ad1183f8e05de654e276150e579ce612f3eb2f98d44", + "research/complex-k492-owner-repair/vendor/multicold/code/emit_allcold.py": "9d6c75af63fa8f53973734ccb1eef983511f4337ce644436a693fd8fb9ef8fe2", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/SPEC.json new file mode 100644 index 0000000000..d7bbe22542 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/SPEC.json @@ -0,0 +1,1325 @@ +{ + "schema": "witness-spec/1", + "name": "k8-eight-rank7-ends", + "data": { + "plan_sha256": "c5da66a8061a86ca7d3eab975829488f6c086a59966150b193d614ff0d0c4847", + "owners_sha256": "c41fdf51541ecc91af914f264967f3633570500994f8866daf642440a5d843dd" + }, + "dispatch": [ + [ + 0, + 0, + "gauge44" + ], + [ + 0, + 1, + "gauge44" + ], + [ + 0, + 2, + "gauge44" + ], + [ + 0, + 3, + "gauge44" + ], + [ + 0, + 4, + "gauge44" + ], + [ + 0, + 5, + "gauge44" + ], + [ + 0, + 6, + "gauge44" + ], + [ + 0, + 7, + "gauge44" + ], + [ + 1, + 0, + "gauge44" + ], + [ + 1, + 1, + "gauge44" + ], + [ + 1, + 2, + "gauge44" + ], + [ + 1, + 3, + "gauge44" + ], + [ + 1, + 4, + "gauge44" + ], + [ + 1, + 5, + "gauge44" + ], + [ + 1, + 6, + "gauge44" + ], + [ + 1, + 7, + "gauge44" + ], + [ + 2, + 0, + "gauge44" + ], + [ + 2, + 1, + "gauge44" + ], + [ + 2, + 2, + "gauge44" + ], + [ + 2, + 3, + "gauge44" + ], + [ + 2, + 4, + "gauge44" + ], + [ + 2, + 5, + "gauge44" + ], + [ + 2, + 6, + "gauge44" + ], + [ + 2, + 7, + "gauge44" + ], + [ + 3, + 0, + "gauge44" + ], + [ + 3, + 1, + "gauge44" + ], + [ + 3, + 2, + "gauge44" + ], + [ + 3, + 3, + "gauge44" + ], + [ + 3, + 4, + "gauge44" + ], + [ + 3, + 5, + "gauge44" + ], + [ + 3, + 6, + "gauge44" + ], + [ + 3, + 7, + "gauge44" + ], + [ + 4, + 0, + "gauge44" + ], + [ + 4, + 1, + "gauge44" + ], + [ + 4, + 2, + "gauge44" + ], + [ + 4, + 3, + "gauge44" + ], + [ + 4, + 4, + "gauge44" + ], + [ + 4, + 5, + "gauge44" + ], + [ + 4, + 6, + "gauge44" + ], + [ + 4, + 7, + "gauge44" + ], + [ + 5, + 0, + "gauge44" + ], + [ + 5, + 1, + "gauge44" + ], + [ + 5, + 2, + "gauge44" + ], + [ + 5, + 3, + "gauge44" + ], + [ + 5, + 4, + "gauge44" + ], + [ + 5, + 5, + "gauge44" + ], + [ + 5, + 6, + "gauge44" + ], + [ + 5, + 7, + "gauge44" + ], + [ + 6, + 0, + "gauge44" + ], + [ + 6, + 1, + "gauge44" + ], + [ + 6, + 2, + "gauge44" + ], + [ + 6, + 3, + "gauge44" + ], + [ + 6, + 4, + "gauge44" + ], + [ + 6, + 5, + "gauge44" + ], + [ + 6, + 6, + "gauge44" + ], + [ + 6, + 7, + "gauge44" + ], + [ + 7, + 0, + "gauge44" + ], + [ + 7, + 1, + "gauge44" + ], + [ + 7, + 2, + "gauge44" + ], + [ + 7, + 3, + "gauge44" + ], + [ + 7, + 4, + "gauge44" + ], + [ + 7, + 5, + "gauge44" + ], + [ + 7, + 6, + "gauge44" + ], + [ + 7, + 7, + "gauge44" + ], + [ + 8, + 0, + "gauge44" + ], + [ + 8, + 1, + "gauge44" + ], + [ + 8, + 2, + "gauge44" + ], + [ + 8, + 3, + "gauge44" + ], + [ + 8, + 4, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2904, + "expected_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + }, + "entering": 192, + "entrance": 384, + "width_digest": "2f46ced8ca41be7698df26f2e95964def00331860bfb4032c16e1c1da380a991", + "program_hashes": { + "backward": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "forward": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19" + }, + "artifacts": { + "LOCAL-CHECKS.json": "3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "RESIDUAL-ADAPTERS.json": "8ecf500ad8646d642906275de20704e4248abccabf2e21af51fcdcbd7581c312" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387120, + "local_primitive_bound": 10039700351134, + "compiler": 25934336, + "children": 3498, + "paid_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "forward": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + } + }, + "semantic_phase_sha256": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "expected_local": { + "forward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "coefficient_work_primitive_count": 98333 + }, + "backward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98365 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "0.001636241501576388", + "hosted_residuals": 34560, + "rank_mass": 520704, + "actual_73column_sigmas": 9035, + "cross_replica_helper_roles": 26491, + "idle_remainders": 3606, + "idle_remainder_profile": { + "1": 1004, + "2": 1, + "3": 150, + "32": 1, + "48": 2450 + }, + "global_profile": { + "1": 173516, + "2": 33841, + "3": 28950, + "4": 10224, + "5": 5904, + "8": 576, + "32": 1, + "48": 2450 + }, + "live": 7168, + "physical": 7658, + "conservative_kappa_decimal": "0.00167341437501181", + "kappa_decimal": "0.001673414377866467", + "complex_lower": "838109693744975872657/500000000000000000000000", + "conservative_complex_lower": "1676219384625716761609/1000000000000000000000000", + "kappa": "1673414377866467/1000000000000000000", + "assembly_controls_rejected": 69, + "provider_counts": { + "gauge44": 72 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/build_word.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/build_word.py new file mode 100644 index 0000000000..064d2c5753 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/build_word.py @@ -0,0 +1,23 @@ +"""Apply a frozen frame/end recipe without changing scalar gates. Apache-2.0.""" +import argparse,gzip,json,hashlib +from pathlib import Path +P=Path(__file__).resolve().parent + +def build(source, output): + recipe=json.loads((P/'RECIPE.json').read_text());raw=gzip.decompress(source.read_bytes()) + assert hashlib.sha256(raw).hexdigest()==recipe['input_content_sha256'],'baseline word pin' + w=json.loads(raw) + for sec in ['A','B','early_cleanup']: + for i,old,new in recipe[sec]: + assert w[sec][i][-1]==old,('original annotation',sec,i) + w[sec][i][-1]=new + for q,old,new in recipe['ends']: + assert w['helper_final'][str(q)]==old + w['helper_final'][str(q)]=new + for key,value in recipe['report'].items():w['report'][key]=value + raw=json.dumps(w,sort_keys=True,separators=(',',':')).encode() + assert hashlib.sha256(raw).hexdigest()==recipe['output_content_sha256'],'new word pin' + output.parent.mkdir(parents=True,exist_ok=True);output.write_bytes(gzip.compress(raw,mtime=0)) + return w +if __name__=='__main__': + p=argparse.ArgumentParser();p.add_argument('--base',type=Path,required=True);p.add_argument('--out',type=Path,required=True);a=p.parse_args();build(a.base,a.out);print('PASS_PINNED_EIGHT_END_CONSTRUCTION') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/END-COMBINATIONS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/END-COMBINATIONS.json new file mode 100644 index 0000000000..d24314134c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/END-COMBINATIONS.json @@ -0,0 +1,261 @@ +[ + { + "groups": [ + 12, + 13 + ], + "profile": { + "1": 2404, + "2": 444, + "3": 416, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016771722483138992, + "kappa_relaxed": 0.0016743640513933278, + "widths": { + "9": 240, + "4": 56, + "8": 118, + "7": 34, + "5": 32 + } + }, + { + "groups": [ + 12, + 14 + ], + "profile": { + "1": 2404, + "2": 444, + "3": 416, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016771722483138992, + "kappa_relaxed": 0.0016743640513933278, + "widths": { + "9": 240, + "4": 56, + "8": 118, + "7": 34, + "5": 32 + } + }, + { + "groups": [ + 12, + 15 + ], + "profile": { + "1": 2408, + "2": 442, + "3": 416, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016769521478829294, + "kappa_relaxed": 0.0016741446873536048, + "widths": { + "9": 240, + "4": 56, + "8": 118, + "7": 34, + "5": 32 + } + }, + { + "groups": [ + 13, + 14 + ], + "profile": { + "1": 2400, + "2": 446, + "3": 416, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.001677392406734574, + "kappa_relaxed": 0.0016745834731322986, + "widths": { + "9": 240, + "4": 56, + "8": 118, + "7": 34, + "5": 32 + } + }, + { + "groups": [ + 13, + 15 + ], + "profile": { + "1": 2404, + "2": 444, + "3": 416, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016771722483138992, + "kappa_relaxed": 0.0016743640513933278, + "widths": { + "9": 240, + "4": 56, + "8": 118, + "7": 34, + "5": 32 + } + }, + { + "groups": [ + 14, + 15 + ], + "profile": { + "1": 2404, + "2": 444, + "3": 416, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016771722483138992, + "kappa_relaxed": 0.0016743640513933278, + "widths": { + "9": 240, + "4": 56, + "8": 118, + "7": 34, + "5": 32 + } + }, + { + "groups": [ + 12, + 13, + 14 + ], + "profile": { + "1": 2398, + "2": 458, + "3": 408, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016774158567763769, + "kappa_relaxed": 0.001674606844701209, + "widths": { + "9": 240, + "4": 56, + "8": 116, + "7": 36, + "5": 32 + } + }, + { + "groups": [ + 12, + 13, + 15 + ], + "profile": { + "1": 2402, + "2": 456, + "3": 408, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016771956923631393, + "kappa_relaxed": 0.001674387417, + "widths": { + "9": 240, + "4": 56, + "8": 116, + "7": 36, + "5": 32 + } + }, + { + "groups": [ + 12, + 14, + 15 + ], + "profile": { + "1": 2402, + "2": 456, + "3": 408, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016771956923631393, + "kappa_relaxed": 0.001674387417, + "widths": { + "9": 240, + "4": 56, + "8": 116, + "7": 36, + "5": 32 + } + }, + { + "groups": [ + 13, + 14, + 15 + ], + "profile": { + "1": 2398, + "2": 458, + "3": 408, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016774158567763769, + "kappa_relaxed": 0.001674606844701209, + "widths": { + "9": 240, + "4": 56, + "8": 116, + "7": 36, + "5": 32 + } + }, + { + "groups": [ + 12, + 13, + 14, + 15 + ], + "profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016774393074369762, + "kappa_relaxed": 0.0016746302168857503, + "widths": { + "9": 240, + "4": 56, + "8": 114, + "7": 38, + "5": 32 + } + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/END-GROUP-SCREEN.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/END-GROUP-SCREEN.json new file mode 100644 index 0000000000..968f7525aa --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/END-GROUP-SCREEN.json @@ -0,0 +1,446 @@ +[ + { + "group": -1, + "helpers": [], + "profile": { + "1": 2412, + "2": 418, + "3": 432, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016769052736196792, + "kappa_relaxed": 0.001674097969905389, + "widths": { + "9": 240, + "4": 56, + "8": 122, + "7": 30, + "5": 32 + }, + "seconds": 1.256144332990516 + }, + { + "group": 0, + "helpers": [ + 311, + 498 + ], + "profile": { + "1": 2414, + "2": 428, + "3": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016767086739656039, + "kappa_relaxed": 0.0016739020279160285, + "widths": { + "9": 240, + "4": 56, + "7": 32, + "8": 120, + "5": 32 + }, + "seconds": 1.1917443330166861 + }, + { + "group": 1, + "helpers": [ + 327, + 510 + ], + "profile": { + "1": 2414, + "2": 428, + "3": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016767086739656039, + "kappa_relaxed": 0.0016739020279160285, + "widths": { + "9": 240, + "4": 56, + "8": 120, + "7": 32, + "5": 32 + }, + "seconds": 1.1926496250089258 + }, + { + "group": 2, + "helpers": [ + 448, + 449, + 484, + 485 + ], + "profile": { + "1": 2412, + "2": 438, + "3": 418, + "4": 144, + "5": 80, + "8": 8 + }, + "complex_relaxed": 0.0016755555240885408, + "kappa_relaxed": 0.001672752734004645, + "widths": { + "9": 240, + "4": 56, + "8": 122, + "6": 4, + "7": 26, + "5": 32 + }, + "seconds": 1.3436857089982368 + }, + { + "group": 3, + "helpers": [ + 450, + 451, + 508, + 509 + ], + "profile": { + "1": 2412, + "2": 438, + "3": 418, + "4": 144, + "5": 80, + "8": 8 + }, + "complex_relaxed": 0.0016755555240885408, + "kappa_relaxed": 0.001672752734004645, + "widths": { + "9": 240, + "4": 56, + "8": 122, + "7": 26, + "6": 4, + "5": 32 + }, + "seconds": 1.3266670419834554 + }, + { + "group": 4, + "helpers": [ + 452, + 453, + 532, + 533 + ], + "profile": { + "1": 2412, + "2": 438, + "3": 418, + "4": 144, + "5": 80, + "8": 8 + }, + "complex_relaxed": 0.0016755555240885408, + "kappa_relaxed": 0.001672752734004645, + "widths": { + "9": 240, + "4": 56, + "8": 122, + "7": 26, + "6": 4, + "5": 32 + }, + "seconds": 1.316817250015447 + }, + { + "group": 5, + "helpers": [ + 454, + 455, + 556, + 557 + ], + "profile": { + "1": 2412, + "2": 438, + "3": 418, + "4": 144, + "5": 80, + "8": 8 + }, + "complex_relaxed": 0.0016755555240885408, + "kappa_relaxed": 0.001672752734004645, + "widths": { + "9": 240, + "4": 56, + "8": 122, + "7": 26, + "6": 4, + "5": 32 + }, + "seconds": 1.3143256249895785 + }, + { + "group": 6, + "helpers": [ + 500, + 501 + ], + "profile": { + "1": 2414, + "2": 428, + "3": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016767086739656039, + "kappa_relaxed": 0.0016739020279160285, + "widths": { + "9": 240, + "4": 56, + "8": 120, + "7": 32, + "5": 32 + }, + "seconds": 1.195962416997645 + }, + { + "group": 7, + "helpers": [ + 512, + 513 + ], + "profile": { + "1": 2414, + "2": 428, + "3": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016767086739656039, + "kappa_relaxed": 0.0016739020279160285, + "widths": { + "9": 240, + "4": 56, + "8": 120, + "7": 32, + "5": 32 + }, + "seconds": 1.1860521660128143 + }, + { + "group": 8, + "helpers": [ + 531, + 586, + 587 + ], + "profile": { + "1": 2411, + "2": 435, + "3": 423, + "4": 141, + "5": 81, + "8": 8 + }, + "complex_relaxed": 0.0016758511349499498, + "kappa_relaxed": 0.0016730473566385021, + "widths": { + "9": 240, + "4": 56, + "8": 122, + "7": 27, + "6": 3, + "5": 32 + }, + "seconds": 1.3513786669936962 + }, + { + "group": 9, + "helpers": [ + 543, + 588, + 589 + ], + "profile": { + "1": 2411, + "2": 433, + "3": 428, + "4": 137, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016758173810610484, + "kappa_relaxed": 0.001673013715597696, + "widths": { + "9": 240, + "4": 56, + "8": 122, + "7": 27, + "6": 3, + "5": 32 + }, + "seconds": 1.319105499977013 + }, + { + "group": 10, + "helpers": [ + 554, + 555, + 584, + 585 + ], + "profile": { + "1": 2412, + "2": 438, + "3": 418, + "4": 144, + "5": 80, + "8": 8 + }, + "complex_relaxed": 0.0016755555240885408, + "kappa_relaxed": 0.001672752734004645, + "widths": { + "9": 240, + "4": 56, + "8": 122, + "7": 26, + "6": 4, + "5": 32 + }, + "seconds": 1.3284051659866236 + }, + { + "group": 11, + "helpers": [ + 566, + 567, + 590, + 591 + ], + "profile": { + "1": 2412, + "2": 438, + "3": 418, + "4": 144, + "5": 80, + "8": 8 + }, + "complex_relaxed": 0.0016755555240885408, + "kappa_relaxed": 0.001672752734004645, + "widths": { + "9": 240, + "4": 56, + "8": 122, + "7": 26, + "6": 4, + "5": 32 + }, + "seconds": 1.3238845000159927 + }, + { + "group": 12, + "helpers": [ + 572, + 573 + ], + "profile": { + "1": 2410, + "2": 430, + "3": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016769287104422674, + "kappa_relaxed": 0.0016741213283220403, + "widths": { + "9": 240, + "4": 56, + "8": 120, + "7": 32, + "5": 32 + }, + "seconds": 1.187774416001048 + }, + { + "group": 13, + "helpers": [ + 574, + 575 + ], + "profile": { + "1": 2406, + "2": 432, + "3": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016771488048832016, + "kappa_relaxed": 0.0016743406864020351, + "widths": { + "9": 240, + "4": 56, + "8": 120, + "7": 32, + "5": 32 + }, + "seconds": 1.1915177079790737 + }, + { + "group": 14, + "helpers": [ + 580, + 581 + ], + "profile": { + "1": 2406, + "2": 432, + "3": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016771488048832016, + "kappa_relaxed": 0.0016743406864020351, + "widths": { + "9": 240, + "4": 56, + "8": 120, + "7": 32, + "5": 32 + }, + "seconds": 1.1854986250109505 + }, + { + "group": 15, + "helpers": [ + 582, + 583 + ], + "profile": { + "1": 2410, + "2": 430, + "3": 424, + "4": 142, + "5": 82, + "8": 8 + }, + "complex_relaxed": 0.0016769287104422674, + "kappa_relaxed": 0.0016741213283220403, + "widths": { + "9": 240, + "4": 56, + "8": 120, + "7": 32, + "5": 32 + }, + "seconds": 1.2192852910084184 + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/END-GROUPS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/END-GROUPS.json new file mode 100644 index 0000000000..a4ba0353c1 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/END-GROUPS.json @@ -0,0 +1,416 @@ +[ + { + "helpers": [ + 311, + 498 + ], + "old": [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ], + "new": [ + 256, + 128, + 72, + 40, + 24, + 4, + 2 + ] + }, + { + "helpers": [ + 327, + 510 + ], + "old": [ + 256, + 128, + 66, + 34, + 18, + 10, + 6, + 1 + ], + "new": [ + 256, + 128, + 66, + 34, + 18, + 10, + 6 + ] + }, + { + "helpers": [ + 448, + 449, + 484, + 485 + ], + "old": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "new": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2 + ] + }, + { + "helpers": [ + 450, + 451, + 508, + 509 + ], + "old": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "new": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6 + ] + }, + { + "helpers": [ + 452, + 453, + 532, + 533 + ], + "old": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "new": [ + 256, + 128, + 64, + 32, + 19, + 11, + 6 + ] + }, + { + "helpers": [ + 454, + 455, + 556, + 557 + ], + "old": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "new": [ + 256, + 128, + 64, + 32, + 24, + 5, + 3 + ] + }, + { + "helpers": [ + 500, + 501 + ], + "old": [ + 256, + 128, + 66, + 34, + 16, + 8, + 6, + 1 + ], + "new": [ + 256, + 128, + 66, + 34, + 16, + 8, + 6 + ] + }, + { + "helpers": [ + 512, + 513 + ], + "old": [ + 256, + 128, + 96, + 16, + 8, + 4, + 2, + 1 + ], + "new": [ + 256, + 128, + 96, + 16, + 8, + 4, + 2 + ] + }, + { + "helpers": [ + 531, + 586, + 587 + ], + "old": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "new": [ + 256, + 128, + 65, + 33, + 19, + 11, + 6 + ] + }, + { + "helpers": [ + 543, + 588, + 589 + ], + "old": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "new": [ + 256, + 128, + 65, + 33, + 18, + 10, + 6 + ] + }, + { + "helpers": [ + 554, + 555, + 584, + 585 + ], + "old": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "new": [ + 256, + 128, + 65, + 33, + 24, + 4, + 2 + ] + }, + { + "helpers": [ + 566, + 567, + 590, + 591 + ], + "old": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ], + "new": [ + 256, + 128, + 65, + 33, + 24, + 5, + 3 + ] + }, + { + "helpers": [ + 572, + 573 + ], + "old": [ + 256, + 128, + 66, + 34, + 16, + 8, + 6, + 1 + ], + "new": [ + 256, + 128, + 67, + 35, + 17, + 9, + 6 + ] + }, + { + "helpers": [ + 574, + 575 + ], + "old": [ + 256, + 128, + 96, + 16, + 8, + 4, + 2, + 1 + ], + "new": [ + 256, + 128, + 96, + 17, + 9, + 5, + 3 + ] + }, + { + "helpers": [ + 580, + 581 + ], + "old": [ + 256, + 128, + 66, + 34, + 18, + 10, + 6, + 1 + ], + "new": [ + 256, + 128, + 67, + 35, + 18, + 10, + 6 + ] + }, + { + "helpers": [ + 582, + 583 + ], + "old": [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ], + "new": [ + 256, + 128, + 73, + 41, + 24, + 5, + 3 + ] + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/RETIME-CENSUS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/RETIME-CENSUS.json new file mode 100644 index 0000000000..32ca372098 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/RETIME-CENSUS.json @@ -0,0 +1,6 @@ +{ + "stats": { + "algebraic_slots": 6497 + }, + "candidates": [] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/SEARCH-TRACES.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/SEARCH-TRACES.json.gz new file mode 100644 index 0000000000..bfad65c588 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/SEARCH-TRACES.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/SOURCE-CENSUS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/SOURCE-CENSUS.json new file mode 100644 index 0000000000..06eec4c8b5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/SOURCE-CENSUS.json @@ -0,0 +1,114 @@ +{ + "stats": { + "helper_target_reads": 665, + "clean_source_aliases": 7 + }, + "candidates": [ + { + "B": 914, + "target": 178, + "helper": 530, + "source": 2, + "coefficient": "1", + "frame": [ + 395, + 76, + 33, + 30 + ], + "frame_feasible": false + }, + { + "B": 919, + "target": 218, + "helper": 542, + "source": 42, + "coefficient": "1", + "frame": [ + 268, + 203, + 33, + 30 + ], + "frame_feasible": false + }, + { + "B": 922, + "target": 223, + "helper": 589, + "source": 54, + "coefficient": "1", + "frame": [ + 268, + 138, + 45, + 30 + ], + "frame_feasible": false + }, + { + "B": 925, + "target": 114, + "helper": 506, + "source": 66, + "coefficient": "1", + "frame": [ + 397, + 74, + 39, + 30 + ], + "frame_feasible": false + }, + { + "B": 930, + "target": 154, + "helper": 518, + "source": 106, + "coefficient": "1", + "frame": [ + 266, + 205, + 39, + 30 + ], + "frame_feasible": false + }, + { + "B": 1201, + "target": 113, + "helper": 453, + "source": 62, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + }, + { + "B": 1212, + "target": 155, + "helper": 589, + "source": 54, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/SOURCE-REFRAME.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/SOURCE-REFRAME.json new file mode 100644 index 0000000000..b6d8856318 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/SOURCE-REFRAME.json @@ -0,0 +1,129 @@ +[ + { + "B": 914, + "target": 178, + "helper": 530, + "source": 2, + "coefficient": "1", + "frame": [ + 395, + 76, + 33, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 181))", + "seconds": 0.43287762501859106 + }, + { + "B": 919, + "target": 218, + "helper": 542, + "source": 42, + "coefficient": "1", + "frame": [ + 268, + 203, + 33, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 221))", + "seconds": 0.4146279999986291 + }, + { + "B": 922, + "target": 223, + "helper": 589, + "source": 54, + "coefficient": "1", + "frame": [ + 268, + 138, + 45, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 216))", + "seconds": 0.4182685830164701 + }, + { + "B": 925, + "target": 114, + "helper": 506, + "source": 66, + "coefficient": "1", + "frame": [ + 397, + 74, + 39, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 117))", + "seconds": 0.42488904201309197 + }, + { + "B": 930, + "target": 154, + "helper": 518, + "source": 106, + "coefficient": "1", + "frame": [ + 266, + 205, + 39, + 30 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 157))", + "seconds": 0.4243918329884764 + }, + { + "B": 1201, + "target": 113, + "helper": 453, + "source": 62, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 113))", + "seconds": 0.4220976250071544 + }, + { + "B": 1212, + "target": 155, + "helper": 589, + "source": 54, + "coefficient": "1", + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ], + "frame_feasible": false, + "status": "FRAME_INFEASIBLE", + "reason": "('fixed frame below forward join', ('E', 152))", + "seconds": 0.4104119580006227 + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/combine_ends.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/combine_ends.py new file mode 100644 index 0000000000..c8287b4985 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/combine_ends.py @@ -0,0 +1,10 @@ +import screen_end_groups as S +from pathlib import Path +import json,gzip,copy,itertools +P=Path(__file__).resolve().parent;groups=json.loads((P/'END-GROUPS.json').read_text());results=[] +for count in [2,3,4]: + for ids in itertools.combinations([12,13,14,15],count): + nw=copy.deepcopy(S.w) + for i in ids: + for q in groups[i]['helpers']:nw['helper_final'][str(q)]=groups[i]['new'] + nw=S.optimize(nw);r=dict(groups=ids,profile=nw['report']['local_profile'],**S.screen(nw));results.append(r);name='end-combo-'+'-'.join(map(str,ids));(P/(name+'.json.gz')).write_bytes(gzip.compress(json.dumps(nw,sort_keys=True,separators=(',',':')).encode(),mtime=0));print(json.dumps(r),flush=True);(P/'END-COMBINATIONS.json').write_text(json.dumps(results,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/end_groups.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/end_groups.py new file mode 100644 index 0000000000..1d8daeee51 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/end_groups.py @@ -0,0 +1,11 @@ +import os +import json,gzip,importlib.util +from pathlib import Path +from collections import defaultdict +P=Path(__file__).resolve().parent +s=importlib.util.spec_from_file_location('M',P/'frame_model.py');M=importlib.util.module_from_spec(s);s.loader.exec_module(M) +w=json.loads(gzip.decompress(Path(os.environ['K8_BASE_WORD']).read_bytes()));m=M.Model(w);gs=defaultdict(list) +for q,E in w['helper_final'].items(): + q=int(q);prev=m.chains[q][-2];lo=m.lo[prev];old=M.basis(E) + if len(lo) k and piv[j] >> k & 1: + piv[j] ^= piv[k] + return tuple(piv[k] for k in sorted(piv, reverse=True)) + + +def contained(a, b): + return basis(list(a) + list(b)) == tuple(b) + + +def join(frames): + return basis([x for f in frames for x in f]) + + +def meet(a, b): + """Zassenhaus intersection of two subspaces of F_2^H.""" + rows = [(u << H) | u for u in a] + [x << H for x in b] + return basis([r for r in basis(rows) if r >> H == 0]) + + +def interval(lo, hi): + """Every subspace F with lo <= F <= hi, by closure over the quotient hi/lo.""" + assert contained(lo, hi), (lo, hi) + comp, cur = [], list(lo) + for x in hi: + if len(basis(cur + [x])) > len(basis(cur)): + comp.append(x) + cur.append(x) + k = len(comp) + assert k <= 4, 'quotient dimension above 4 is not enumerated' + vectors = list(range(1, 1 << k)) + out = [] + for mask in range(1 << len(vectors)): + chosen = {vectors[i] for i in range(len(vectors)) if mask >> i & 1} + if all((a ^ b) in chosen for a in chosen for b in chosen if a != b): + lifted = [] + for a in chosen: + x = 0 + for i in range(k): + if a >> i & 1: + x ^= comp[i] + lifted.append(x) + out.append(basis(list(lo) + lifted)) + assert len(set(out)) == len(out) + return sorted(out, key=lambda f: (len(f), f)) + + +def registers(e): + return tuple(e[1:3]) if e[0] == 'add' else tuple(e[1:2]) + + +def apply(e, rows, dual=False): + if e[0] == 'add': + t, s = e[1:3] + q = F(e[3], e[4]) + if dual: + t, s, q = s, t, -q + dst = rows[t] + for k, x in list(rows[s].items()): + a = dst.get(k, F(0)) + q * x + if a: + dst[k] = a + else: + dst.pop(k, None) + elif e[0] == 'scale': + t = e[1] + q = F(e[2], e[3]) + if dual: + q = 1 / q + rows[t] = {k: q * x for k, x in rows[t].items()} + else: + raise RuntimeError('unknown scalar primitive') + + +def invert(e): + r = list(e) + if r[0] == 'add': + r[3] = -r[3] + else: + r[2], r[3] = r[3], r[2] + return r + + +def cone_ceilings(w, n, v, low_ends): + """End-of-B ceilings implied by the low-end cone conditions of audit_local.py.""" + ident = lambda: [{k: F(1)} for k in range(n)] + main = w['A'] + w['cut'] + w['B'] + raw = ident() + for e in main: + apply(e, raw) + dirt = [{} for _ in range(n)] + for y in range(v, 2 * v): + dirt[y] = {k: a for k, a in raw[y].items() if k >= 2 * v} + for e in w['precondition']: + apply(e, dirt) + compensation = [['add', y, k, -a.numerator, a.denominator, []] + for y in range(v, 2 * v) for k, a in sorted(dirt[y].items())] + prefix = w['precondition'] + compensation + main + p, pinv = ident(), ident() + for e in prefix: + apply(e, p) + for e in reversed(prefix): + apply(invert(e), pinv) + holders = defaultdict(set) + for k in range(n): + for j in p[k]: + holders[j].add(k) + ceil = {} + for q, U in low_ends.items(): + for k in set(pinv[q]) | holders[q]: + if k != q: + ceil[k] = meet(ceil.get(k, FULL), U) + return ceil + + +class Model: + """Event graph, complete domains and components of a native complex word.""" + + def __init__(self, w, relax_given=False): + rep = w['report'] + self.v, self.R = v, R = rep['v'], rep['R'] + assert rep['h'] == H + self.n = n = 2 * v + R + end = [FULL] * v + [basis([x for x in range(1, 1 << H) if (x & p).bit_count() % 2 == 0]) + for p in w['ports']] + [FULL] * R + low = {int(q): basis(U) for q, U in w.get('helper_final', {}).items()} + for q, U in low.items(): + assert 2 * v <= q < n + end[q] = U + start = [(p,) for p in w['ports']] + [()] * (v + R) + for q, U in w.get('start_extra', {}).items(): + assert 2 * v <= int(q) < n + start[int(q)] = basis(U) + early = w.get('early_cleanup', []) + assert len({i for i, _ in early}) == len(early) + tail = [w['cleanup'][i][:-1] + [U] for i, U in early] + lev = {int(t): basis(U) for t, U in w.get('target_levels', {}).items()} + pins = {q: basis(U) for q, U in zip(w['centers'], w['center_frames'])} + assert len(pins) == 8 + for t in range(v): + assert v + t not in pins + pins[v + t] = lev.get(t, ()) + self.ceil = cone_ceilings(w, n, v, low) + # centre descents: fixed children, recorded separately (audit_local.py rule) + self.centre_children = [] + for q, U in zip(w['centers'], w['center_frames']): + U = basis(U) + served = {lev.get(e[1] - v, ()) for e in w['cut'] if e[2] == q} + for T in sorted(served, key=lambda x: -len(x)): + assert contained(T, U) + if T != U: + self.centre_children.append(len(U) - len(T)) + U = T + # nodes: ('S',q) start, ('G',i) gate, ('P',q) start-of-B pin, ('E',q) end + gates = [('A', e) for e in w['A']] + [('B', e) for e in w['B']] + [('T', e) for e in tail] + self.gates = gates + self.given = [basis(e[-1]) for _, e in gates] + self.regs = [registers(e) for _, e in gates] + for rs in self.regs: + assert len(set(rs)) == len(rs) and all(0 <= q < n for q in rs) + nA, nB = len(w['A']), len(w['B']) + self.nA, self.nB = nA, nB + fixed = {} + for q in range(n): + fixed[('S', q)] = start[q] + fixed[('E', q)] = end[q] + for q, U in pins.items(): + fixed[('P', q)] = U + chains = defaultdict(list) + for q in range(n): + chains[q].append(('S', q)) + boundary = {} # register -> index in its chain of the last pre-tail node + for i, rs in enumerate(self.regs): + if i == nA: + for q in pins: + chains[q].append(('P', q)) + if i == nA + nB: + for q in range(n): + boundary[q] = len(chains[q]) - 1 + for q in rs: + chains[q].append(('G', i)) + if len(gates) == nA: + for q in pins: + chains[q].append(('P', q)) + if len(gates) <= nA + nB: + for q in range(n): + boundary[q] = len(chains[q]) - 1 + for q in range(n): + chains[q].append(('E', q)) + self.chains = chains + self.fixed_frames = fixed + # forward joins and backward meets + order = [('S', q) for q in range(n)] + for i in range(len(gates)): + if i == nA: + order += [('P', q) for q in pins] + order.append(('G', i)) + if len(gates) == nA: + order += [('P', q) for q in pins] + order += [('E', q) for q in range(n)] + position = {node: k for k, node in enumerate(order)} + pred = defaultdict(list) + succ = defaultdict(list) + for q, ch in chains.items(): + for a, b in zip(ch, ch[1:]): + assert position[a] < position[b] + succ[a].append((q, b)) + pred[b].append((q, a)) + lo, hi = {}, {} + for node in order: + if node in fixed: + lo[node] = fixed[node] + for q, a in pred[node]: + assert contained(lo[a], fixed[node]), ('fixed frame below forward join', node) + else: + lo[node] = join(lo[a] for q, a in pred[node]) + ceil_at = defaultdict(list) # node -> ceilings applying to that node + for q, k in boundary.items(): + if q in self.ceil: + ceil_at[chains[q][k]].append(self.ceil[q]) + for node in reversed(order): + if node in fixed: + hi[node] = fixed[node] + else: + U = FULL + for q, b in succ[node]: + U = meet(U, hi[b]) + for C in ceil_at[node]: + U = meet(U, C) + hi[node] = U + assert contained(lo[node], hi[node]), ('empty domain', node) + for node, Cs in ceil_at.items(): + if node in fixed: + assert all(contained(fixed[node], C) for C in Cs), ('fixed frame above a cone ceiling', node) + self.lo, self.hi = lo, hi + self.domain = {} + for i in range(len(gates)): + node = ('G', i) + if lo[node] != hi[node]: + self.domain[node] = interval(lo[node], hi[node]) + if relax_given: self.given[i] = lo[node] + else: assert self.given[i] in self.domain[node] + else: + if relax_given: self.given[i] = lo[node] + else: assert self.given[i] == lo[node], ('given frame differs from forced frame', i) + # edges, merged by endpoint pair, with integer multiplicity + mult = defaultdict(int) + for q, ch in chains.items(): + for a, b in zip(ch, ch[1:]): + mult[(a, b)] += 1 + self.edges = dict(mult) + + def frame_of(self, node, assignment): + if node in self.fixed_frames: + return self.fixed_frames[node] + if node in self.domain: + return assignment[node] + return self.lo[node] + + def baseline(self): + return {('G', i): self.given[i] for i in range(len(self.gates)) if ('G', i) in self.domain} + + def profile(self, assignment): + """Paid children of an assignment (graph climbs plus fixed centre descents).""" + count = defaultdict(int) + for (a, b), m in self.edges.items(): + A, B = self.frame_of(a, assignment), self.frame_of(b, assignment) + if not contained(A, B): + raise ValueError(('non-monotone', a, b)) + d = len(B) - len(A) + if d: + count[d] += m + for d in self.centre_children: + count[d] += 1 + return dict(sorted(count.items())) + + def components(self): + parent = {node: node for node in self.domain} + + def find(x): + while parent[x] != x: + parent[x] = parent[parent[x]] + x = parent[x] + return x + for (a, b) in self.edges: + if a in self.domain and b in self.domain: + parent[find(a)] = find(b) + groups = defaultdict(list) + for node in self.domain: + groups[find(node)].append(node) + comps = [sorted(g, key=lambda x: x[1]) for g in groups.values()] + return sorted(comps, key=lambda c: c[0][1]) + + def component_problem(self, comp): + """Unary and pairwise rank-count potentials of one component. + + Costs are integer vectors c[0..H]; c[d] counts children of rank d. + Returns (labels, unary, pairs): unary[node][F] collects the edges from the node + to fixed or forced neighbours, and pairs[(a,b)][(F,G)] the merged edges between + two members (only nested pairs F <= G appear). Edges with no free endpoint + belong to no component; fixed_profile() counts them. + """ + members = set(comp) + labels = {node: self.domain[node] for node in comp} + zero = lambda: [0] * (H + 1) + unary = {node: {Fr: zero() for Fr in labels[node]} for node in comp} + pairs = {} + for (a, b), m in self.edges.items(): + ina, inb = a in members, b in members + if not (ina or inb): + continue + if ina and inb: + table = {} + for Fa in labels[a]: + for Fb in labels[b]: + if contained(Fa, Fb): + c = zero() + d = len(Fb) - len(Fa) + if d: + c[d] += m + table[(Fa, Fb)] = c + pairs[(a, b)] = table + elif ina: + Fb = self.frame_of(b, None) + for Fa in labels[a]: + assert contained(Fa, Fb) + d = len(Fb) - len(Fa) + if d: + unary[a][Fa][d] += m + else: + Fa = self.frame_of(a, None) + for Fb in labels[b]: + assert contained(Fa, Fb) + d = len(Fb) - len(Fa) + if d: + unary[b][Fb][d] += m + return labels, unary, pairs + + def fixed_profile(self): + """Children on edges between two fixed or forced nodes, plus centre descents.""" + count = defaultdict(int) + for (a, b), m in self.edges.items(): + if a in self.domain or b in self.domain: + continue + A, B = self.frame_of(a, None), self.frame_of(b, None) + assert contained(A, B) + d = len(B) - len(A) + if d: + count[d] += m + for d in self.centre_children: + count[d] += 1 + return count + + +def lp(labels, unary, pairs): + """Local-polytope LP of one component: min c.z, A z = rhs, z >= 0. + + Rows: ('N', node) normalisation (rhs 1); ('M', a, b, side, frame) marginal of the + merged edge (a, b) at endpoint side 0 (a) or 1 (b) (rhs 0). + Columns: ('x', node, frame) and ('y', a, b, frame_a, frame_b) with F_a <= F_b. + Every literal legal assignment gives a 0/1 feasible point. + """ + rows = [('N', node) for node in sorted(labels)] + for (a, b) in sorted(pairs): + rows += [('M', a, b, 0, Fa) for Fa in labels[a]] + rows += [('M', a, b, 1, Fb) for Fb in labels[b]] + index = {r: i for i, r in enumerate(rows)} + rhs = [1 if r[0] == 'N' else 0 for r in rows] + touching = defaultdict(list) + for (a, b) in sorted(pairs): + touching[a].append((a, b, 0)) + touching[b].append((a, b, 1)) + cols = [] + for node in sorted(labels): + for Fr in labels[node]: + entries = [(index[('N', node)], 1)] + entries += [(index[('M', a, b, side, Fr)], -1) for a, b, side in touching[node]] + cols.append((('x', node, Fr), unary[node][Fr], entries)) + for (a, b) in sorted(pairs): + for (Fa, Fb), c in sorted(pairs[(a, b)].items()): + cols.append((('y', a, b, Fa, Fb), c, + [(index[('M', a, b, 0, Fa)], 1), (index[('M', a, b, 1, Fb)], 1)])) + return rows, rhs, cols + + +def assignment_cost(labels, unary, pairs, assignment): + c = [0] * (H + 1) + for node in labels: + for d, x in enumerate(unary[node][assignment[node]]): + c[d] += x + for (a, b), table in pairs.items(): + for d, x in enumerate(table[(assignment[a], assignment[b])]): + c[d] += x + return c + + +def load_word(raw_gz): + return json.loads(gzip.decompress(raw_gz)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/minimize_recipe.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/minimize_recipe.py new file mode 100644 index 0000000000..96d2a8587e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/minimize_recipe.py @@ -0,0 +1,25 @@ +import os +import json,gzip,copy,importlib.util,math +from pathlib import Path +from collections import Counter +P=Path(__file__).resolve().parent;ROOT=P.parents[2] +def mod(name,path): + s=importlib.util.spec_from_file_location(name,path);m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m +promo=mod('p',ROOT/'research/gauge44-slots/construction/promo/build_promotion.py');a=mod('a',ROOT/'research/gauge44-slots/independent/audit_local.py');M=mod('M',P/'frame_model.py') +w=json.loads(gzip.decompress(Path(os.environ['K8_BASE_WORD']).read_bytes()));nw=json.loads(gzip.decompress((P/'end-combo-12-13-14-15.json.gz').read_bytes()));target=promo.chain_profile(nw) +# Revert annotations whose original frame has an exactly unchanged paid profile. +# A full independent cone/algebra audit validates the resulting literal word. +for iteration in range(3): + changes=0 + for sec in ['A','B','early_cleanup']: + for i,(old,new) in enumerate(zip(w[sec],nw[sec])): + if old[-1]==new[-1]:continue + saved=new[-1];new[-1]=old[-1] + try:valid=promo.chain_profile(nw)==target + except AssertionError:valid=False + if valid:changes+=1 + else:new[-1]=saved + print('reverted',changes,flush=True) + if not changes:break +out=P/'ENDS-8.json.gz';out.write_bytes(gzip.compress(json.dumps(nw,sort_keys=True,separators=(',',':')).encode(),mtime=0)) +recipe={sec:[[i,old[-1],new[-1]] for i,(old,new) in enumerate(zip(w[sec],nw[sec])) if old!=new] for sec in ['A','B','early_cleanup']};recipe['ends']=[[int(q),w['helper_final'][q],f] for q,f in nw['helper_final'].items() if f!=w['helper_final'][q]];(P/'ENDS-8-RECIPE.json').write_text(json.dumps(recipe,indent=2)+'\n');print('changes',{k:len(v) for k,v in recipe.items()});a.run(out,P/'ENDS-8-AUDIT.json',ROOT) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/prepare_new.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/prepare_new.py new file mode 100644 index 0000000000..6bb5f63fdf --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/prepare_new.py @@ -0,0 +1,32 @@ +"""Nominate new checked endpoints and whole owners; unchanged admission guards.""" +import argparse,json,gzip,hashlib,importlib.util,shutil +from pathlib import Path +from collections import Counter +ROOT=Path(__file__).resolve().parents[3];UP=ROOT/'research/gauge44-slots' +def read(p): + p=Path(p);raw=p.read_bytes();return json.loads(gzip.decompress(raw) if str(p).endswith('.gz') else raw) +def sha(p):return hashlib.sha256(Path(p).read_bytes()).hexdigest() +def dump(p,x):Path(p).write_text(json.dumps(x,indent=2)+'\n') +def module(name,path): + s=importlib.util.spec_from_file_location(name,path);m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m +def prepare(local,candidate,out): + assert not out.exists() and not out.resolve().is_relative_to(ROOT) + word=read(local/'CANONICAL-WORD.json.gz');checks=read(local/'LOCAL-CHECKS.json');plan=read(candidate/'PLAN.json');owners=read(candidate/'OWNERS.json.gz');widths=[len(word['frames'][word['final'][224+h]])-len(word['frames'][word['start'][224+h]]) for h in range(480)];desc=plan['provider_registry']['gauge44'] + assert (word['v'],word['h'],word['R'])==(112,9,480);assert word['ports']==desc['ports'] and word['centers']==desc['centers'];assert widths==desc['widths'] and word['local_profile']==desc['actual_paid_profile'];assert all(c['paid_profile']==word['local_profile'] for c in checks.values()) + ident=module('identity',UP/'code/generated_identity.py');desc.update(artifact_sha256={name:sha(local/name) for name in ident.FILES},artifact_semantic_sha256=ident.artifact_identities(local),orientation_program_sha256={o:c['sha256'] for o,c in checks.items()}) + for c in plan['provider_calls']: + assert c['provider']=='gauge44';c['local_program_sha256']=checks[c['orientation']]['sha256'] + for c in plan.get('per_call_widths',[]):c['widths']=widths + audit=module('roles',UP/'hosting/reuse_owners.py');used,_=audit.audit_roles(owners,plan,{tuple(c):widths for c in plan['order']},112,480);idle=Counter() + for key,(cap,_) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(112): + rem=cap-len(used[rep,ch,port]);assert rem>=0 + if rem:idle[rem]+=1 + H=Counter({int(r):72*c for r,c in word['local_profile'].items()});H.update(idle);assert {str(r):c for r,c in H.items()}==plan['profile'];assert 73*7168-sum(r*c for r,c in H.items())==2560 + plan.update(status='NOMINATED_EIGHT_SMALLER_ENDPOINTS_REQUIRES_STRICT_ADMISSION',assignment_sha256=hashlib.sha256(gzip.decompress((candidate/'OWNERS.json.gz').read_bytes())).hexdigest(),solver_status='Frozen feasible whole owners; exact admission required',gap=None) + out.mkdir(parents=True);shutil.copytree(UP/'code',out/'code',ignore=shutil.ignore_patterns('__pycache__'));shutil.copytree(UP/'inputs',out/'inputs');shutil.copy2(UP/'verify_global.py',out/'verify_global.py');(out/'data').mkdir();shutil.copy2(UP/'data/UPSTREAM-PINS.json',out/'data/UPSTREAM-PINS.json');shutil.copy2(candidate/'OWNERS.json.gz',out/'data/OWNERS.json.gz');dump(out/'data/PLAN.json',plan) + spec=read(UP/'data/SPEC.json');recipe=Path(spec['pivot_swap']['recipe']);assert not recipe.is_absolute() and '..' not in recipe.parts;(out/recipe).parent.mkdir(parents=True);shutil.copy2(UP/recipe,out/recipe);spec.update(name='k8-eight-rank7-ends',providers={},expected={'gain_baseline_kappa':spec['expected']['gain_baseline_kappa']},data={'plan_sha256':sha(out/'data/PLAN.json'),'owners_sha256':sha(out/'data/OWNERS.json.gz')});dump(out/'data/SPEC.json',spec) + dump(out/'PREPARATION.json',dict(status='PASS_CHECKED_LOCAL_AND_LITERAL_OWNER_NOMINATION',width_inventory=dict(Counter(widths)),local_profile=word['local_profile'],idle=dict(idle),global_profile=dict(H),local_artifacts=desc['artifact_semantic_sha256'])) +if __name__=='__main__': + ap=argparse.ArgumentParser();ap.add_argument('--local',type=Path,required=True);ap.add_argument('--candidate',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();prepare(a.local.resolve(),a.candidate.resolve(),a.out.resolve());print('PASS_NOMINATION') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/resize_owners.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/resize_owners.py new file mode 100644 index 0000000000..c0b5bf16ea --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/resize_owners.py @@ -0,0 +1,14 @@ +import json,gzip,sys +from pathlib import Path +from collections import Counter +base,word,out=map(Path,sys.argv[1:]);p=json.loads((base/'PLAN.json').read_text());rs=json.loads(gzip.decompress((base/'OWNERS.json.gz').read_bytes()));w=json.loads(gzip.decompress(word.read_bytes()));d=p['provider_registry']['gauge44'];widths=[len(w['helper_final'].get(str(224+h),list(range(9))))-len(w['start_extra'].get(str(224+h),[])) for h in range(480)];assert all(a>=b for a,b in zip(d['widths'],widths));d.update(widths=widths,actual_paid_profile=w['report']['local_profile']);used=Counter() +for r in rs: + r['width']=widths[r['helper']];key=(r['owner_replica'],r['child'],r['port']);r['offset']=used[key];used[key]+=r['width'] +H=Counter({int(r):72*c for r,c in w['report']['local_profile'].items()});idle=Counter() +for key,(cap,times) in p['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(112): + rem=cap-used[rep,ch,port];assert rem>=0 + if rem:idle[rem]+=1 +H.update(idle);p['profile']={str(r):c for r,c in sorted(H.items())};assert sum(r*c for r,c in H.items())==520704 +out.mkdir(exist_ok=False);(out/'PLAN.json').write_text(json.dumps(p,indent=2)+'\n');(out/'OWNERS.json.gz').write_bytes(gzip.compress(json.dumps(rs,sort_keys=True,separators=(',',':')).encode(),mtime=0));print('idle',dict(idle)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/retime_sources.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/retime_sources.py new file mode 100644 index 0000000000..ff28bf94a5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/retime_sources.py @@ -0,0 +1,52 @@ +import os +import sys,json,gzip,copy,importlib.util,math +from pathlib import Path +from collections import defaultdict,Counter +from fractions import Fraction as F +P=Path(__file__).resolve().parent;ROOT=P.parents[2] +def mod(name,path): + s=importlib.util.spec_from_file_location(name,path);m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m +a=mod('a',ROOT/'research/gauge44-slots/independent/audit_local.py');p=mod('p',ROOT/'research/gauge44-slots/construction/promo/build_promotion.py') +w=json.loads(gzip.decompress(Path(os.environ['K8_BASE_WORD']).read_bytes()));v=112;n=704;FULL=a.basis([1<=2*v:reads[j]=key(rows[e[2]]) + if e[0]=='scale' and v<=e[1]<2*v:barriers[e[1]].append(j) + if e[0]=='add' and v<=e[2]<2*v:barriers[e[2]].append(j) + a.apply(e,rows) + for r in a.registers(e):cur[r]=a.basis(e[-1]) +ends=[FULL]*v+[a.basis([x for x in range(1,512) if (x&port).bit_count()%2==0]) for port in w['ports']]+[FULL]*(n-2*v) +for r,fr in w['helper_final'].items():ends[int(r)]=a.basis(fr) +for ci,fr in reversed(w['early_cleanup']): + for r in a.registers(w['cleanup'][ci]):ends[r]=a.basis(fr) +nexts=[None]*(len(w['B'])+1);nxt=ends.copy();nexts[-1]=nxt.copy() +for j in range(len(w['B'])-1,-1,-1): + for r in a.registers(w['B'][j]):nxt[r]=a.basis(w['B'][j][-1]) + nexts[j]=nxt.copy() +old=p.chain_profile(w);records=[];stats=Counter() +for i,(k,q) in reads.items(): + if k is None:continue + e=w['B'][i];t=e[1];lo=max([-1]+[j for j in barriers[t] if ji]);seen=set() + for j,s,sq in aliases.get(k,[]): + if not lo<=j<=hi:continue + stats['algebraic_slots']+=1;fr=a.basis(list(slots[j][s])+list(slots[j][t]));sig=(s,fr,q/sq) + if sig in seen:continue + if not a.contained(fr,nexts[j][s]) or not a.contained(fr,nexts[j][t]):continue + seen.add(sig);stats['frame_feasible_distinct']+=1 + c=F(e[3],e[4])*q/sq;gate=['add',t,s,c.numerator,c.denominator,list(fr)];nw=copy.deepcopy(w);nw['B']=[x for z in range(len(w['B'])+1) for x in (([gate] if z==j else [])+([w['B'][z]] if z.9};assert len(choose)==len(comp);M.assignment_cost(labels,unary,pairs,choose);new.update(choose) + for i in range(len(m.gates)): + fr=m.frame_of(('G',i),new) + if icap:continue + cols.append([int(i==j) for j in range(4)]+list(ns));idle.append(cap-used) + A=np.array(cols).T;rhs=np.array(list(caps.values())+[9*inv[r] for r in ws]);c=np.array([r*math.expm1(b*math.log(73/r))/b if r else 0 for r in idle]);sol=linprog(c,A_eq=A,b_eq=rhs,bounds=(0,None),method='highs');assert sol.success + H=Counter({int(r):9*c for r,c in nw['report']['local_profile'].items()}) + for r,x in zip(idle,sol.x): + if r and x>1e-8:H[r]+=x + root=brentq(lambda z:sum(c*(r/73)**(1-z) for r,c in H.items())/896-1,0,.005,xtol=1e-15) + return dict(complex_relaxed=root,kappa_relaxed=root/(1+root),widths=dict(inv)) +if __name__=='__main__': + results=[] + for i,g in enumerate([None]+json.loads((P/'END-GROUPS.json').read_text())): + nw=copy.deepcopy(w);t=time.monotonic() + if g: + for q in g['helpers']:nw['helper_final'][str(q)]=g['new'] + try: + nw=optimize(nw);r=dict(group=i-1,helpers=g['helpers'] if g else [],profile=nw['report']['local_profile'],**screen(nw));(P/f'end-group-{i-1}.json.gz').write_bytes(gzip.compress(json.dumps(nw,sort_keys=True,separators=(',',':')).encode(),mtime=0)) + except AssertionError as e:r=dict(group=i-1,status='INFEASIBLE',reason=str(e)) + r['seconds']=time.monotonic()-t;results.append(r);print(json.dumps(r),flush=True);(P/'END-GROUP-SCREEN.json').write_text(json.dumps(results,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/search_calls.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/search_calls.py new file mode 100644 index 0000000000..27682bb609 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/search_calls.py @@ -0,0 +1,111 @@ +"""Discovery only: coordinated complete-call reassignment. + +Prepared with OpenAI Codex assistance; Apache-2.0. See ../NOTICE.md. +SciPy/HiGHS nominates integer feasible maps; only the separate unchanged +physical verifier and rational engines may certify a kappa value. A timed-out +solve may supply a checked feasible incumbent; no optimality is claimed. +Run from the repository root. The frozen map, not a new search, is verified. +""" +import argparse, gzip, json, math, random, time +from collections import Counter, defaultdict +from pathlib import Path +import numpy as np +from scipy.optimize import linprog, milp, Bounds, LinearConstraint +from scipy.sparse import coo_matrix + +ap=argparse.ArgumentParser();ap.add_argument('--passes',type=int,default=10);ap.add_argument('--seed',type=int,default=13);ap.add_argument('--out',type=Path,required=True);ap.add_argument('--input',type=Path,default=Path('research/gauge44-slots/data'));ap.add_argument('--block',type=int,default=1);ap.add_argument('--limit',type=float,default=3);ap.add_argument('--target48',action='store_true');a=ap.parse_args() +p=a.input;plan=json.loads((p/'PLAN.json').read_text());roles=json.loads(gzip.decompress((p/'OWNERS.json.gz').read_bytes())) +rng=random.Random(a.seed);V=112;bins=[];eligible=defaultdict(list);lookup={} +for key,(cap,times) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(V): + fam=rep*896+(2*plan['pairs'][str(ch)]+plan['sides'][str(ch)])*V+port + idx=len(bins);bins.append((rep,ch,port,cap,fam));lookup[rep,ch,port]=idx + for t in times:eligible[t].append(idx) +for t,ids in eligible.items():assert len({bins[i][4] for i in ids})==len(ids) +bycall=defaultdict(list);assignment=[];used=np.zeros(len(bins),dtype=int) +for j,z in enumerate(roles): + i=lookup[z['owner_replica'],z['child'],z['port']];assignment.append(i);used[i]+=z['width'];bycall[z['time']].append(j) +cap=np.array([b[3] for b in bins]);phi=np.array([r*math.expm1(.0016769*math.log(73/r))/.0016769 if r else 0 for r in range(49)]) +def cost():return float(phi[cap-used].sum()) +def save(): + offsets=Counter();out=[] + for j,z in enumerate(roles): + i=assignment[j];rep,ch,port,cp,fam=bins[i];new=z|dict(owner_replica=rep,child=ch,port=port,copy=rep*V+port,family=fam,offset=offsets[i]);offsets[i]+=z['width'];out.append(new) + assert all(offsets[i]==used[i]<=cap[i] for i in range(len(bins))) + a.out.mkdir(exist_ok=True,parents=True);(a.out/'OWNERS.json.gz').write_bytes(gzip.compress(json.dumps(out,sort_keys=True,separators=(',',':')).encode(),mtime=0)) + idle=Counter(int(x) for x in cap-used if x);H=Counter({int(r):n*72 for r,n in plan['provider_registry']['gauge44']['actual_paid_profile'].items()});H.update(idle) + np=plan|dict(profile=dict(sorted(H.items())));(a.out/'PLAN.json').write_text(json.dumps(np,indent=2)+'\n');(a.out/'SEARCH.json').write_text(json.dumps(dict(seed=a.seed,cost=cost(),idle=dict(sorted(idle.items())),trace=trace),indent=2)+'\n') +trace=[];initial=cost();print('initial',initial,Counter(cap-used),flush=True) +if a.block>1: + import itertools + for it in range(a.passes): + # Nearby calls share narrow windows; random distant calls provide escape paths. + t=rng.randrange(72);ts=sorted({t,*rng.sample([k for k in range(72) if k!=t],a.block-1)}) + if it%2:ts=sorted(rng.sample(list(range(max(0,t-6),min(72,t+7))),a.block)) + if a.target48: + occupants=defaultdict(list) + for j,i in enumerate(assignment): + if cap[i]==48:occupants[i].append(roles[j]['time']) + target=rng.choice([x for x in occupants.values() if len(x)==a.block]);ts=sorted(target);assert len(set(ts))==len(ts) + ws=[4,8,9] if a.target48 else [4,5,7,8,9] + oldcost=cost();js=[j for t in ts for j in bycall[t] if roles[j]['width'] in ws];oldassign={j:assignment[j] for j in js} + for j in js:used[assignment[j]]-=roles[j]['width'] + es=[set(eligible[t])-{assignment[j] for j in bycall[t] if roles[j]['width'] not in ws} for t in ts] + allids=set().union(*es);groups=defaultdict(list) + for i in allids: + v=int(cap[i]-used[i]);mask=sum(1<>k&1 else [0]) for k in range(len(ts))] + for pat in itertools.product(*opts): + if sum(pat)>v:continue + col=len(patterns);patterns.append((g,pat));costs.append(phi[v-sum(pat)]-phi[v]);rows.append(g);cols.append(col);vals.append(1) + for k,w in enumerate(pat): + if w:rows.append(len(keys)+k*len(ws)+ws.index(w));cols.append(col);vals.append(1) + A=coo_matrix((vals,(rows,cols)),shape=(len(keys)+len(ws)*len(ts),len(patterns))).tocsc();b=np.array([len(groups[k]) for k in keys]+[dem[k,w] for k in range(len(ts)) for w in ws]) + res=milp(np.array(costs),integrality=np.ones(len(patterns)),bounds=Bounds(0,np.inf),constraints=LinearConstraint(A,b,b),options=dict(time_limit=a.limit,mip_rel_gap=0)) + accept=False + if res.x is not None: + xx=np.rint(res.x).astype(int) + if np.max(abs(xx-res.x))<1e-5 and np.array_equal(A@xx,b): + after=float(phi[cap-used].sum()+np.dot(costs,xx)) + if after=min(dem):groups[int(v)].append(i) + ws=sorted(dem);vs=sorted(groups);edges=[(w,v) for w in ws for v in vs if w<=v];rr=[];cc=[];dd=[] + for k,(w,v) in enumerate(edges):rr.extend([ws.index(w),len(ws)+vs.index(v)]);cc.extend([k,k]);dd.extend([1,1]) + A=coo_matrix((dd,(rr,cc)),shape=(len(ws)+len(vs),len(edges))).tocsr();c=np.array([phi[v-w]-phi[v] for w,v in edges]) + b=np.array([dem[w] for w in ws]+[len(groups[v]) for v in vs]);res=linprog(c,A_eq=A[:len(ws)],b_eq=b[:len(ws)],A_ub=A[len(ws):],b_ub=b[len(ws):],bounds=(0,None),method='highs') + assert res.success;xx=np.rint(res.x).astype(int);assert np.max(abs(xx-res.x))<1e-5;assert np.array_equal(A[:len(ws)]@xx,b[:len(ws)]);assert np.all(A[len(ws):]@xx<=b[len(ws):]) + helpers=defaultdict(list) + for j in js:helpers[roles[j]['width']].append(j) + for g in groups.values():rng.shuffle(g) + for (w,v),n in zip(edges,xx): + for _ in range(n): + i=groups[v].pop();j=helpers[w].pop();assignment[j]=i;used[i]+=w + newcost=cost();assert newcost<=oldcost+1e-6 + if oldcost-newcost>1e-6:changed+=1 + trace.append(dict(pass_number=it,cost=cost(),changed=changed));save();print(trace[-1],flush=True) + if changed==0 and it>=2:break +print('gain',initial-cost(),flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/source_census.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/source_census.py new file mode 100644 index 0000000000..d32ef2ce91 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/source_census.py @@ -0,0 +1,51 @@ +import os +import sys,json,gzip,copy,importlib.util +from pathlib import Path +from fractions import Fraction as F +from collections import Counter,defaultdict +ROOT=Path(__file__).resolve().parents[3] +def module(name,path): + s=importlib.util.spec_from_file_location(name,path);m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m +a=module('audit',ROOT/'research/gauge44-slots/independent/audit_local.py') +p=module('promo',ROOT/'research/gauge44-slots/construction/promo/build_promotion.py') +IN=Path(os.environ['K8_BASE_WORD']) +w=json.loads(gzip.decompress(IN.read_bytes()));v=w['report']['v'];n=2*v+w['report']['R'];FULL=a.basis([1<=2*v: + stats['helper_target_reads']+=1;hk,hq=key(rows[e[2]]) + for s in range(v): + sk,sq=key(rows[s]) + if hk is not None and sk==hk: + stats['clean_source_aliases']+=1 + frame=a.basis(list(cur[s])+list(cur[e[1]])) + feasible=a.contained(frame,nexts[i][s]) and a.contained(frame,nexts[i][e[1]]) + rec=dict(B=i,target=e[1],helper=e[2],source=s,coefficient=str(F(e[3],e[4])*hq/sq),frame=list(frame),frame_feasible=feasible) + if feasible: + nw=copy.deepcopy(w);q=F(rec['coefficient']);nw['B'][i]=['add',e[1],s,q.numerator,q.denominator,list(frame)] + np=p.chain_profile(nw);delta=Counter(np);delta.subtract(old) + rec['profile_delta']={k:c for k,c in delta.items() if c};rec['entropy_delta']=sum(k*c*__import__('math').log2(k) for k,c in delta.items());stats['frame_feasible']+=1 + result.append(rec) + a.apply(e,rows) + for r in a.registers(e):cur[r]=a.basis(e[-1]) +result.sort(key=lambda r:(not r['frame_feasible'],-r.get('entropy_delta',0))) +out={'stats':dict(stats),'candidates':result} +(Path(__file__).resolve().parent/'SOURCE-CENSUS.json').write_text(json.dumps(out,indent=2)+'\n') +print(json.dumps(out,indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/test_structures.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/test_structures.py new file mode 100644 index 0000000000..ae086293f6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/discovery/test_structures.py @@ -0,0 +1,16 @@ +import os +import sys,json,gzip,copy,importlib.util,time +from pathlib import Path +from fractions import Fraction as F +HERE=Path(__file__).resolve().parent +spec=importlib.util.spec_from_file_location('M',HERE/'frame_model.py');M=importlib.util.module_from_spec(spec);spec.loader.exec_module(M) +w=json.loads(gzip.decompress(Path(os.environ['K8_BASE_WORD']).read_bytes())) +results=[] +for r in json.loads((HERE/'SOURCE-CENSUS.json').read_text())['candidates']: + nw=copy.deepcopy(w);q=F(r['coefficient']);nw['B'][r['B']]=['add',r['target'],r['source'],q.numerator,q.denominator,r['frame']] + t=time.monotonic() + try: + m=M.Model(nw,relax_given=True);out=dict(status='FRAME_FEASIBLE',free=len(m.domain),profile=m.profile(m.baseline())) + except AssertionError as e:out=dict(status='FRAME_INFEASIBLE',reason=str(e)) + r.update(out,seconds=time.monotonic()-t);results.append(r);print(json.dumps(r),flush=True) +(HERE/'SOURCE-REFRAME.json').write_text(json.dumps(results,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/end_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/end_controls.py new file mode 100644 index 0000000000..b31ca4e608 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/end_controls.py @@ -0,0 +1,25 @@ +import gzip,json,copy,contextlib,io,importlib.util,tempfile +from pathlib import Path +P=Path(__file__).resolve().parent;ROOT=P.parents[1] +s=importlib.util.spec_from_file_location('a',ROOT/'research/gauge44-slots/independent/audit_local.py');a=importlib.util.module_from_spec(s);s.loader.exec_module(a) +w=json.loads(gzip.decompress((P/'FULL-WORD.json.gz').read_bytes()));recipe=json.loads((P/'RECIPE.json').read_text());results=[] +with tempfile.TemporaryDirectory(prefix='k8-eight-controls-') as d: + d=Path(d) + for q,old,new in recipe['ends']: + touching=[(ti,ci,fr) for ti,(ci,fr) in enumerate(w['early_cleanup']) if q in a.registers(w['cleanup'][ci])];assert touching + bchanged=[(i,o,n) for i,o,n in recipe['B'] if q in a.registers(w['B'][i])];assert bchanged + for label in ['missing-tail','rank6-end','rank8-read','bad-restore']: + z=copy.deepcopy(w) + if label=='missing-tail':z['early_cleanup'].pop(touching[0][0]) + elif label=='rank6-end':z['helper_final'][str(q)]=new[:-1] + elif label=='rank8-read':i,o,n=bchanged[0];z['B'][i][-1]=o + else: + e=z['cleanup'][touching[0][1]] + if e[0]=='add':e[3]=-e[3] + else:e[2]*=2 + raw=d/'WORD.json.gz';raw.write_bytes(gzip.compress(json.dumps(z).encode())) + try: + with contextlib.redirect_stdout(io.StringIO()):a.run(raw,d/'AUDIT.json',ROOT) + except RuntimeError as e:results.append(dict(helper=q,mutation=label,status='REJECTED',reason=str(e))) + else:raise AssertionError(('escaped',q,label)) +(Path(__import__('sys').argv[1])).write_text(json.dumps(dict(status='PASS_EIGHT_ENDS_32_NEGATIVE_CONTROLS',rejected=results),indent=2)+'\n');print('PASS',len(results),'negative controls') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ADMISSION-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..ebb2de19b0 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ADMISSION-CONTROLS.json @@ -0,0 +1,102 @@ +{ + "status": "PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS", + "valid_receipt_kappa": "1673414377866467/1000000000000000000", + "input_sha256": { + "owner_audit": "a04d3db0d157b197d9395967163e155f0d8775a06db2ca4318258830e2abdaa9", + "fresh_invoice": "66650384488db73bf3d5c7742abaa9c116877845bbb4ef46d6fffe235ae7d1c0", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "assembler_sha256": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "rejected_controls": [ + "empty_certification_maps", + "failed_invoice_status", + "nonboolean_precision_check", + "wrong_owner_role_count", + "understated_physical_stock", + "changed_profile_same_rank_mass", + "insufficient_finite_C0", + "missing_finite_check", + "wrong_reflected_orientation_selfconsistent_totals", + "missing_selected_call", + "wrong_selected_primitive_sum", + "wrong_selected_coefficient_work_sum", + "unpaid_wrapper_factors", + "wrong_global_compiler", + "wrong_global_adapter_maximum", + "understated_exact_prefix_and_global_sum", + "wrong_global_prefix_sum", + "wrong_row_prefix_reserve", + "wrong_parent_geometry_charge", + "wrong_rebased_geometry_charge", + "wrong_complete_pervertex_envelope", + "wrong_prior_added_complete_invoice", + "wrong_finite_router_bits", + "wrong_finite_literal_bits", + "wrong_finite_physical_stock_bits", + "wrong_finite_row_coefficient", + "reordered_complete_calls", + "understated_explicit_idle_remainders", + "understated_actual_chart_types", + "wrong_cross_replica_role_count", + "old_no_cold_wrapper_counts_selfconsistent", + "gauge44:missing_provider", + "gauge44:missing_backward_orientation", + "gauge44:unpaid_scalar_primitive", + "gauge44:wrong_local_artifact_binding", + "gauge44:false_dirty_restoration", + "gauge44:wrong_declared_provider_count", + "gauge44:wrong_local_compiler", + "gauge44:wrong_local_adapter_charge", + "gauge44:wrong_local_primitive_bound", + "gauge44:forged_provider_and_call_program_hash", + "gauge44:provider_at_wrong_call", + "gauge44:synchronized_forged_source_recipe_hash", + "gauge44:synchronized_forged_phase_review_semantics", + "gauge44:width_order_swap_4_5", + "gauge44:width_inventory_shift_4_5", + "gauge44:width_order_swap_4_7", + "gauge44:width_inventory_shift_4_7", + "gauge44:width_order_swap_4_8", + "gauge44:width_inventory_shift_4_8", + "gauge44:width_order_swap_4_9", + "gauge44:width_inventory_shift_4_9", + "gauge44:width_order_swap_5_7", + "gauge44:width_inventory_shift_5_7", + "gauge44:width_order_swap_5_8", + "gauge44:width_inventory_shift_5_8", + "gauge44:width_order_swap_5_9", + "gauge44:width_inventory_shift_5_9", + "gauge44:width_order_swap_7_8", + "gauge44:width_inventory_shift_7_8", + "gauge44:width_order_swap_7_9", + "gauge44:width_inventory_shift_7_9", + "gauge44:width_order_swap_8_9", + "gauge44:width_inventory_shift_8_9", + "gauge44:cold_helper_width_swap_258", + "gauge44:cold_helper_width_swap_270", + "gauge44:cold_helper_width_swap_282", + "gauge44:cold_helper_width_swap_294", + "wrong_owner_receipt_hash" + ], + "discovery_accepted_controls": [], + "exact_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "conservative_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "recurrence_model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "scope": "Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ASSEMBLY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..57ce5ba7e5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ASSEMBLY.json @@ -0,0 +1,345 @@ +{ + "status": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY", + "kappa": "1673414377866467/1000000000000000000", + "kappa_decimal": "0.001673414377866467", + "complex_lower": "838109693744975872657/500000000000000000000000", + "complex_decimal": "0.001676219387489951745314", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "gain_over_pr635_percent": "2.271845339105865649769659711045652898685289010422541310337154355808867", + "complex_profile": { + "1": 173516, + "2": 33841, + "3": 28950, + "4": 10224, + "5": 5904, + "8": 576, + "32": 1, + "48": 2450 + }, + "provider_counts": { + "gauge44": 72 + }, + "surcharge_model": { + "complex": false, + "bit": true + }, + "conservative_complex_lower": "1676219384625716761609/1000000000000000000000000", + "conservative_complex_decimal": "0.001676219384625716761609", + "conservative_kappa": "167341437501181/100000000000000000", + "conservative_kappa_decimal": "0.00167341437501181", + "conservative_moments": [ + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "1676219384625716761609/1000000000000000000000000", + "accept": true, + "mercator": [ + "-26365176391338805087180119246083053631100005/13479973333575319897333507543509815336818572211270286240551805124608", + "-6591294097834701271795029811520763407775001/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "-4889693772580378482399/2500000000000000000000000000000000000000000000", + "-9779382545160756964727/5000000000000000000000000000000000000000000000" + ] + }, + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "167621938462571676161/100000000000000000000000", + "accept": false, + "mercator": [ + "3274791622318300170398160609060323429518545/3369993333393829974333376885877453834204643052817571560137951281152", + "13099166489273200681592642436241293718074181/13479973333575319897333507543509815336818572211270286240551805124608" + ], + "base_two": [ + "4858747455019129419573/5000000000000000000000000000000000000000000000", + "9717504910038258839287/10000000000000000000000000000000000000000000000" + ] + } + ], + "conservative_bootstrap": [ + { + "exponent": "1673474140430232511627280191505179410277669600732081105690713626087652985052876529545863731119/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "2745244195484249981717132275435964005568790267918894309286373912347014947123470454136268881/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4776838262268" + }, + { + "exponent": "1676214782994180759678603443575797147963343250600588610645068420349699546684523559608851484589187399348226227081873253059207728027413402189529/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4601631536001930393880204818226319895140399411389354931579650300453315476440391148515410812600651773772918126746940792271972586597810471/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1700117036608548330" + }, + { + "exponent": "1676219376912372780057549753314897017826250446408568067025523375174232617030906357800303842521716307120682985379645626941640550666161447849356309115045845716763549919454908775146844071007839/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "7713343981551447570465718356456987944591431932974476624825767382969093642199696157478283692879317014620354373058359449333838552150643690884954154283236450080545091224853155928992161/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "605085996107066164306501" + }, + { + "exponent": "1676219384612787504906834680352428409895843289837158390074746876041276033957495117074290985051348469006491012383107939508450669558704523039798691557959164132896523886820608705259279205268290973604501205092113398410948836701316936066747049/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "12929256702162643428186964387395101162841609925253123958723966042504882925709014948651530993508987616892060491549330441295476960201308442040835867103476113179391294740720794731709026395498794907886601589051163298683063933252951/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "215355210730225537033671205430" + }, + { + "exponent": "1676219384625695089338284356790346678447884948927987168576565554062551795000247862379642626649725951318296221665869807964208600731719141900913821775783720831596729627731395164862748813647031412372673548221113824991832747243481821842624729571108618061557721942790030420171126628762758159/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "21672270712966990268695835353442072012831423434445937448204999752137620357373350274048681703778334130192035791399268280858099086178224216279168403270372268604835137251186352968587627326451778886175008167252756518178157375270428891381938442278057209969579828873371237241841/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "76646736310277417526572933088285739" + }, + { + "exponent": "1676219384625716725281517045849143086524690056195123804249800538067703780971045772654062526389248633363785232552687408606355858434381729829553907418330531132254224385900991259198173647469872560171027407084761637996570892055994863775372907284364591787144752276920690219834793311166266102463211212164100840944290731825547354407677282169/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "36327480277931472287758548334804876195750199461932296219028954227345937473610751366636214767447312591393644141565618270170446092581669468867745775614099008740801826352530127439828972592915238362003429107944005136224627092715635408212855247723079309780165206688833733897536788787835899159055709268174452645592322717831/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "27279220071328739089564454805103212913611" + }, + { + "exponent": "1676219384625716761548104497144138219693916687480688253634229207684284803029934636750962742527908491972777591941133821353601771795539988057623463524398103332402368960607011888282747725889490976609231991212967300487625054048791162131645497925599607818715414190470963689893619828968687634366758546850874621255445661634712225894829383462009637081211618628431976709035394737654800550079/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "60892826636477154589321703519311746365770792315715196970065363249037257472091508027222408058866178646398228204460011942376536475601896667597631039392988111717252274110509023390768008787032699512374945951208837868354502074400392181284585809529036310106380171031312365633241453149125378744554338365287774105170616537990362918788381371568023290964605262345199449921/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9708904560365504709545233930368123970764403424" + } + ], + "conservative_outer": { + "bit_positive": "1676219384625716761548104497144138219693916687480688253634229207684284803029934636750962742527908491972777591941133821353601771795539988057623463524398103332402368960607011888282747725889490976609231991212967300487625054048791162131645497925599607818715414190470963689893619828968687634366758546850874621255445661634712225894829383462009637081211618628431976709035394737654800550079/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "60895502855861780306083312519311746365770792315715196970065363249037257472091508027222408058866178646398228204460011942376536475601896667597631039392988111717252274110509023390768008787032699512374945951208837868354502074400392181284585809529036310106380171031312365633241453149125378744554338365287774105170616537990362918788381371568023290964605262345199449921/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "29573780615374283238391/1000000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "60893826636477154589321703519311746365770792315715196970065363249037257472091508027222408058866178646398228204460011942376536475601896667597631039392988111717252274110509023390768008787032699512374945951208837868354502074400392181284585809529036310106380171031312365633241453149125378744554338365287774105170616537990362918788381371568023290964605262345199449921/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "1676219384625716761548104497144138219693916687480688253634229207684284803029934636750962742527908491972777591941133821353601771795539988057623463524398103332402368960607011888282747725889490976609231991212967300487625054048791162131645497925599607818715414190470963689893619828968687634366758546850874621255445661634712225894829383462009637081211618628431976709035394737654800550079/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "30448589537623203011422399864153017321105090074545079173286315853726313020848783948247954992175617231691086879821947105009621839572743873786873143160018453961958539424215118707272287141242239247164082207595631901477738662254244881804424550262443754661008800929846653780310620194391658059911535941190737927206563714656816171620085515167473655119383842791228156937209035394737654800550079/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "838109692312858380774175572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "499161890307687141619225824427647315515869803204364153017321105090074545079173286315853726313020848783948247954992175617231691086879821947105009621839572743873786873143160018453961958539424215118707272287141242239247164082207595631901477738662254244881804424550262443754661008800929846653780310620194391658059911535941190737927206563714656816171620085515167473655119383842791228156937209035394737654800550079/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "1676219384625716761548104497144138219693916687480688253634229207684284803029934636750962742527908491972777591941133821353601771795539988057623463524398103332402368960607011888282747725889490976609231991212967300487625054048791162131645497925599607818715414190470963689893619828968687634366758546850874621255445661634712225894829383462009637081211618628431976709035394737654800550079/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "60897179075246406022844860623808890503990486232402677658318997478244941756894537961859159021608706554890200982051953076197890077373692207585688662856512509820584676479469630402656291534758589003351555183200050835654989699454440972446717455026961909714198886445502836596931346768954347432188705123834624979791871983651997631014276200951485300601686473963827881897709035394737654800550079/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "1676219384625716761548104497144138219693916687480688253634229207684284803029934636750962742527908491972777591941133821353601771795539988057623463524398103332402368960607011888282747725889490976609231991212967300487625054048791162131645497925599607818715414190470963689893619828968687634366758546850874621255445661634712225894829383462009637081211618628431976709035394737654800550079/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "1676219384625716761548104497144138219693916687480688253634229207684284803029934636750962742527908491972777591941133821353601771795539988057623463524398103332402368960607011888282747725889490976609231991212967300487625054048791162131645497925599607818715414190470963689893619828968687634366758546850874621255445661634712225894829383462009637081211618628431976709035394737654800550079/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "30448589537623203011422399864153017321105090074545079173286315853726313020848783948247954992175617231691086879821947105009621839572743873786873143160018453961958539424215118707272287141242239247164082207595631901477738662254244881804424550262443754661008800929846653780310620194391658059911535941190737927206563714656816171620085515167473655119383842791228156937209035394737654800550079/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "499999999999999999999999500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/500838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921", + "epsilon_below_one": "838109692312858380774550572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921/500838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921", + "guard_width": "838109692312858380774550572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921/500838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921", + "K_geometry": "375838109692312858380774175572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921/500838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921000000000000000000000000", + "K_dominates_log": "838109692312858380774174734242992171271816021460274629994410779728659284979731005251363761524230389338067898734137403617092861368133045070607609851514135948160231866461821118781915247448928041311181674817297184967954625064691509340761508501827962713827476927476218499583873003494703608663444040814409271786742244369429456464451496196879125019117841691396241001696787777294287010536446083989105136427606858209035394737654800550079/500838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921000000000000000000000000", + "record_suffix": "838109692312858380774550572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921/500838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921", + "phase_local": "6704877538502867046195903740711783560183193591036203508746675149206843730766726794275279570378288901700332213788908082995255253209379415335540256974504928831652119864341691941048205471479422210360275664828601510237806049611522086030417337866048248541196505075639112216956811396985777032201269699453667665367361492781094290974005550194281411817777243085223925415861100877755689911975982836225941552823756305209035394737654800550079/4006704877538502867046192404578821475873041574365086775861431159279403639366613709473170189495833209728414016360062595062146471304961424423159923025283418049009705014854719852368304331684606279050341821702870062086022687342339234944788178090701966040945564603597900449962711929592561226769757515038444866735520707712470474096582347490282745470627039315878660210759044929257670174744502327716842098761595599368000000000000000000000000", + "phase_boundary": "1340975507700573409238780077654602861749934098966782819601747725683932237475759215739127973711721118969119125738832033278078209240239876807601836747770489623888107980565810046404740123794398970086818302532551841419656175740134130199874865304475415784744822197318752246787267722936795616395257668697774276950795322804715013708127557968085035316145790382295756808625157471619550116374120662752262543547276810809035394737654800550079/801340975507700573409238480915764295174608314873017355172286231855880727873322741894634037899166641945682803272012519012429294260992284884631984605056683609801941002970943970473660866336921255810068364340574012417204537468467846988957635618140393208189112920719580089992542385918512245353951503007688973347104141542494094819316469498056549094125407863175732042151808985851534034948900465543368419752319119873600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "999999999999999999999998499161890307687141619225949427647315515869803204364153017321105090074545079173286315853726313020848783948247954992175617231691086879821947105009621839572743873786873143160018453961958539424215118707272287141242239247164082207595631901477738662254244881804424550262443754661008800929846653780310620194391658059911535941190737927206563714656816171620085515167473655119383842791228156937209035394737654800550079/2003352438769251433523096202289410737936520787182543387930715579639701819683306854736585094747916604864207008180031297531073235652480712211579961512641709024504852507427359926184152165842303139525170910851435031043011343671169617472394089045350983020472782301798950224981355964796280613384878757519222433367760353856235237048291173745141372735313519657939330105379522464628835087372251163858421049380797799684000000000000000000000000", + "prime_interval_packing": "838109692312858380774550572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921/500838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921", + "alpha_positive": "1676219384625716761548600306595676655402012817221121612673305689654114205806444689397637448503381605389819943741961786385401774488311097965597988011941392074373358723301802664819956708024712922603909387676054945720790542857095877439283769839573717832023052377213774744922864202564856954883133420620017613726830708428238718537244932482222308847497756176228767346577403934503058853599237048594367481627056779209035394737654800550079/1001676219384625716761548101144705368968260393591271693965357789819850909841653427368292547373958302432103504090015648765536617826240356105789980756320854512252426253713679963092076082921151569762585455425717515521505671835584808736197044522675491510236391150899475112490677982398140306692439378759611216683880176928117618524145586872570686367656759828969665052689761232314417543686125581929210524690398899842000000000000000000000000", + "alpha_below_one": "999999999999999999999999500838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921/1001676219384625716761548101144705368968260393591271693965357789819850909841653427368292547373958302432103504090015648765536617826240356105789980756320854512252426253713679963092076082921151569762585455425717515521505671835584808736197044522675491510236391150899475112490677982398140306692439378759611216683880176928117618524145586872570686367656759828969665052689761232314417543686125581929210524690398899842000000000000000000000000", + "alpha_below_one_fourth": "248742835461530712428838424979580665586663085580596801878666141765308613254606912152675499394986194002636056078761950404998752682071777928481897201068272235988733204705118188108199064022263179518042454468753323934655627416039106306609977360829299159727074735347655003377746631396970219718226711269282786557243213523601165912499151785660449283066692201066187495825862904144101327067932158433708263690972668181290964605262345199449921/1001676219384625716761548101144705368968260393591271693965357789819850909841653427368292547373958302432103504090015648765536617826240356105789980756320854512252426253713679963092076082921151569762585455425717515521505671835584808736197044522675491510236391150899475112490677982398140306692439378759611216683880176928117618524145586872570686367656759828969665052689761232314417543686125581929210524690398899842000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "499160485451974444110932651354898230614690939274967160353957875843834717478027168969270907727549931170221117697146331453828136353142609933323065554698615865372949157905721615907535577924229122055055069623773780970808060162478840785016472329653135448796873580660469620669808551198117584641225980376537341407584705918332482789271335269723751067181763826633098986000142771058311539225087727376325145980782677377839684158278102952144921979420302448675292586587646838593016584725976686953543683327586462483609539534996107853107308181613262474317337855454913147007491164404521335485596004637294276787900576854264400953624047809617196023714962228443842679354373300877741521932451552695883909894423927528837842722717051105637633003838252627837198323478836621003642689533231255465766828829760986906241/500838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "28053639020308022936369544739144900883922907737242845923949502726625819501840450623822046245743030440307453183319321821434625418594947530408752532507194083752611798803808893300228203032116230802922679211737084878415536142616897018134578706984123481704777621124349987612938960791327216163370728856324532531094625700358831932189483805742527355941444100745409590542101910919201104852453597656376585261719080324132372893815787035598349763/4006704877538502867046192404578821475873041574365086775861431159279403639366613709473170189495833209728414016360062595062146471304961424423159923025283418049009705014854719852368304331684606279050341821702870062086022687342339234944788178090701966040945564603597900449962711929592561226769757515038444866735520707712470474096582347490282745470627039315878660210759044929257670174744502327716842098761595599368000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "31848735783764045558280735437974269344144862321182120589663490155496059913950006628658926908861591107126705738028456162711045244159332222126330364035014919637681598739751675265782581539370165097605706044941639974937094427447377842109357915837235062243899460850391037341149060998117838794770349050039976326736349714691527256425227070609997132370903746085433630838430769781058200521142905496111180918012143299/50083810969231285838077405057235268448413019679563584698267889490992545492082671368414627368697915121605175204500782438276830891312017805289499037816042725612621312685683998154603804146057578488129272771285875776075283591779240436809852226133774575511819557544973755624533899119907015334621968937980560834194008846405880926207279343628534318382837991448483252634488061615720877184306279096460526234519944992100000000000000000", + "coordinate_movement_above_kappa": "2805009613906761548104497144138219693916687480688253634229207684284803029934636750962742527908491972777591941133821353601771795539988057623463524398103332402368960607011888282747725889490976609231991212967300487625054048791162131645497925599607818715414190470963689893619828968687634366758546850874621255445661634712225894829383462009637081211618628431976709035394737654800550079/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "318486856999530763269948973605692121088764139081624410260787918876065689214045145459875584942342224092115841328532516619286069673284409101085250745359771035949559861184389895817844269355660190400272179156688686890613183521637860628689211059850089284693239490308334923673934364642187188877550144280710383461755155206826808505443008633306535038365853632474421823551781352929965848002657211898320844574859087790550079/500838109692312858380774050572352684484130196795635846982678894909925454920826713684146273686979151216051752045007824382768308913120178052894990378160427256126213126856839981546038041460575784881292727712858757760752835917792404368098522261337745755118195575449737556245338991199070153346219689379805608341940088464058809262072793436285343183828379914484832526344880616157208771843062790964605262345199449921000000000000000000000000", + "bulk_exposure_above_kappa": "2805009613906761548104497144138219693916687480688253634229207684284803029934636750962742527908491972777591941133821353601771795539988057623463524398103332402368960607011888282747725889490976609231991212967300487625054048791162131645497925599607818715414190470963689893619828968687634366758546850874621255445661634712225894829383462009637081211618628431976709035394737654800550079/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "509579271702115036619633386233537737153633313008717133798768859809042048697745185231829146395511770734876075756703253595552341138240402433843232929569860553775649453622899947412539758591881180985906415426338526740235750086322127681345358554873499658156636255410681147720828730630894221646172238580950241422173253494975972043994371056966517832591276108987023608582365971616315051129514644874987930082931947584550079/801340975507700573409238480915764295174608314873017355172286231855880727873322741894634037899166641945682803272012519012429294260992284884631984605056683609801941002970943970473660866336921255810068364340574012417204537468467846988957635618140393208189112920719580089992542385918512245353951503007688973347104141542494094819316469498056549094125407863175732042151808985851534034948900465543368419752319119873600000000000000000000000", + "scalar_work_above_kappa": "2547898361863013952349600454263890975178904501564372851537232229760789883190545609466000468562653601590985242990524448009059236764437664649928376227810815410587271772967007164422624977111571747232671602302603485136209793442954309576344265168456543641766201749835707537554368634510435904511474577783508726333299635235233716455208903576006334304329115858454775982241935237604039884482660596626103508835709118720550079/4006704877538502867046192404578821475873041574365086775861431159279403639366613709473170189495833209728414016360062595062146471304961424423159923025283418049009705014854719852368304331684606279050341821702870062086022687342339234944788178090701966040945564603597900449962711929592561226769757515038444866735520707712470474096582347490282745470627039315878660210759044929257670174744502327716842098761595599368000000000000000000000000", + "dimension_above_kappa": "49916189030768714193771230726528777109867715758410684645876972830189575097580818787081432545252091507053751704360808668849874846716438357421546206343289496513709051349330921483077794593694096777653308768084289321530422453162399538127242201313603266597538358292261306619365561730484022006527092060137277960576340203634095400529070371062992938042389079161513879736415684469712753654124490684597674286622960504011180918012143299/50083810969231285838077405057235268448413019679563584698267889490992545492082671368414627368697915121605175204500782438276830891312017805289499037816042725612621312685683998154603804146057578488129272771285875776075283591779240436809852226133774575511819557544973755624533899119907015334621968937980560834194008846405880926207279343628534318382837991448483252634488061615720877184306279096460526234519944992100000000000000000" + }, + "conservative_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "native_correction_gain": "2.854657E-12", + "template_sha256": "72e6d2b042b7c089e288859fb13c6f2a4b44884993eab94edbe70d503e664d04", + "input_sha256": { + "owner_audit": "a04d3db0d157b197d9395967163e155f0d8775a06db2ca4318258830e2abdaa9", + "fresh_invoice": "66650384488db73bf3d5c7742abaa9c116877845bbb4ef46d6fffe235ae7d1c0", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "moments": [ + { + "side": "bit", + "surcharge": true, + "endpoint": "1733427039589844234749/1000000000000000000000000", + "accept": true, + "mercator": [ + "-43100600330766044577088869872467188970742291/26959946667150639794667015087019630673637144422540572481103610249216", + "-43100600330766044577088869872467188970742289/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-799345163337715793503/500000000000000000000000000000000000000000000", + "-3197378653350863173989/2000000000000000000000000000000000000000000000" + ] + }, + { + "side": "bit", + "surcharge": true, + "endpoint": "6933708158359376939/4000000000000000000000", + "accept": false, + "mercator": [ + "22502934905675809315035333485365686073718547/13479973333575319897333507543509815336818572211270286240551805124608", + "5625733726418952328758833371341421518429637/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "8346798366759439729359/5000000000000000000000000000000000000000000000", + "16693606733518879458833/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "838109693744975872657/500000000000000000000000", + "accept": true, + "mercator": [ + "-9348917577469991827365744093963976090499917/13479973333575319897333507543509815336818572211270286240551805124608", + "-2337229394367497956841436023490994022624979/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "-346771/500000000000000000000000000000", + "-693541/1000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "335243877497990349063/200000000000000000000000", + "accept": false, + "mercator": [ + "60230850606139151424179019143028314384478955/26959946667150639794667015087019630673637144422540572481103610249216", + "60230850606139151424179019143028314384478957/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "1117043/500000000000000000000000000000", + "2234087/1000000000000000000000000000000" + ] + } + ], + "bootstrap": [ + { + "exponent": "418368535821243870277876813860093697570163195184437291198564866206175938080220556941319760351/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "686311051244066050622517085059429941900476315562708801435133793824061919779443058680239649/250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4776838229235" + }, + { + "exponent": "209526848232298996207609591822090321355706928158625845651983536402804783193682016577471620369664754552974457158396296783499570548235666377393/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "575203944971956640073650486242400324907591374154348016463597195216806317983422528379630335245447025542841603703216500429451764333622607/125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1700117019041687358" + }, + { + "exponent": "104763711236037981920776298653617939818438277570407904652032899214384485307237986310451262462410544801877033827751094634992050794864917832105582652928899781215419205539629158460735928356799/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "482084002161348534082670342059577640304592095347967100785615514692762013689548737537589455198122966172248905365007949205135082167894417347071100218784580794460370841539264071643201/62500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "605085987786994309538110" + }, + { + "exponent": "52381855858656952765651616261573985008791312780092340960698676541181660815514820518106808846499817334975221340221149108205935598294549003610128228198498926747794264477117572087809652925309604610660375054377558374964412549253632915855057/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "404039275410800106570155930216646157407659039301323458818339184485179481893191153500182665024778659778850891794064401705450996389871771801501073252205735522882427912190347074690395389339624945622441625035587450746367084144943/31250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "215355207033066608684566012380" + }, + { + "exponent": "26190927929530157391297832696434081726603437646583107418914361342582753372384114917136108779875866687050678565462435430443685191500856880696363772814268868534038786511571873748963697499163328248217381726936356784959228262802971853714084989431239820986703296079907669715838460098523551/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "338629233375487637988742900541822166892581085638657417246627615885082863891220124133312949321434537564569556314808499143119303636227185731131465961213488428126251036302500836671751782618273063643215040771737197028146285915010568760179013296703920092330284161539901476449/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "76646734732487595416838080353387711" + }, + { + "exponent": "13095463964765247726457161014610128593637180164819208541232410918783798373104838761826494588137491260132690756917876523295186430333570853177356043329404544231767941351642911080485721108483235718823290046781364919211071130962872577044149590049483756831038389456399372713920581188786298074517114317130028914434813391779500396508554993/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "283808443077425906641114809569555791458767589081216201626895161238173505411862508739867309243082123476704813569666429146822643956670595455768232058648357088919514278891516764281176709953218635080788928869037127422955850409950516243168961610543600627286079418811213701925482885682869971085565186608220499603491445007/7812500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "27279219416553457336643381136197964617069" + }, + { + "exponent": "6547731982382624004894939438708157772981733977311011065072511788293622473574009000887326883293726381544650409422295513269607192062776519836116207583133057483385125720064058483076596633700172312698591283946022952385510640731056428915728323047847530463983472971584280786089034380436777894438138124308527397658055714647289490402819362574205934963802759779076868430714579123750473599/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "237862607309859844394260889876488934927488211706377526425990999112673116706273618455349590577704486730392807937223480163883792416866942516614874279935941516923403366299827687301408716053977047614489359268943571084271676952152469536016527028415719213910965619563222105561861875691472602341944285352710509597180637425794065036197240220923131569285420876249526401/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9708904294145334212844038346066410639399571733" + } + ], + "outer": { + "bit_positive": "6547731982382624004894939438708157772981733977311011065072511788293622473574009000887326883293726381544650409422295513269607192062776519836116207583133057483385125720064058483076596633700172312698591283946022952385510640731056428915728323047847530463983472971584280786089034380436777894438138124308527397658055714647289490402819362574205934963802759779076868430714579123750473599/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "237873061291842227018266022688988934927488211706377526425990999112673116706273618455349590577704486730392807937223480163883792416866942516614874279935941516923403366299827687301408716053977047614489359268943571084271676952152469536016527028415719213910965619563222105561861875691472602341944285352710509597180637425794065036197240220923131569285420876249526401/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "14786890306255024127343/500000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "237866513559859844394260889876488934927488211706377526425990999112673116706273618455349590577704486730392807937223480163883792416866942516614874279935941516923403366299827687301408716053977047614489359268943571084271676952152469536016527028415719213910965619563222105561861875691472602341944285352710509597180637425794065036197240220923131569285420876249526401/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "3273865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "6547731982382624004894939438708157772981733977311011065072511788293622473574009000887326883293726381544650409422295513269607192062776519836116207583133057483385125720064058483076596633700172312698591283946022952385510640731056428915728323047847530463983472971584280786089034380436777894438138124308527397658055714647289490402819362574205934963802759779076868430714579123750473599/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "118939804511912304821135339877683175621517087587166074224060572068124851975610383236675682615735537091577948619021162377455165815625534034827273256175553891519185068275633907709187434623622223979557378225755731565088223986716965824437179242530907454485946793254582637061717026880116737948866580814479563325987976768611679807589022929824139990577674240884542277368430714579123750473599/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "3273865991191312002447951452872096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "1949851134008808687997552048547127903496133137906283933175621517087587166074224060572068124851975610383236675682615735537091577948619021162377455165815625534034827273256175553891519185068275633907709187434623622223979557378225755731565088223986716965824437179242530907454485946793254582637061717026880116737948866580814479563325987976768611679807589022929824139990577674240884542277368430714579123750473599/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "6547731982382624004894939438708157772981733977311011065072511788293622473574009000887326883293726381544650409422295513269607192062776519836116207583133057483385125720064058483076596633700172312698591283946022952385510640731056428915728323047847530463983472971584280786089034380436777894438138124308527397658055714647289490402819362574205934963802759779076868430714579123750473599/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "237879609023824609642270917628427643085261193440354837437056071624461410328747192464350477904587780456774352587632902459397062024059005293134710396143524649980886751425547751359891792650610747786802057860227517107224062462793200592445442756738767061441429603036193689842647964725853039119838723490834818124578295481508712325687643040285705775220384679009305477868430714579123750473599/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "6547731982382624004894939438708157772981733977311011065072511788293622473574009000887326883293726381544650409422295513269607192062776519836116207583133057483385125720064058483076596633700172312698591283946022952385510640731056428915728323047847530463983472971584280786089034380436777894438138124308527397658055714647289490402819362574205934963802759779076868430714579123750473599/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "6547731982382624004894939438708157772981733977311011065072511788293622473574009000887326883293726381544650409422295513269607192062776519836116207583133057483385125720064058483076596633700172312698591283946022952385510640731056428915728323047847530463983472971584280786089034380436777894438138124308527397658055714647289490402819362574205934963802759779076868430714579123750473599/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "118939804511912304821135339877683175621517087587166074224060572068124851975610383236675682615735537091577948619021162377455165815625534034827273256175553891519185068275633907709187434623622223979557378225755731565088223986716965824437179242530907454485946793254582637061717026880116737948866580814479563325987976768611679807589022929824139990577674240884542277368430714579123750473599/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "3273865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401/1953125000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "1953124999999999999999998046875000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/1956398865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401", + "epsilon_below_one": "3273865991191312002449416296622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401/1956398865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401", + "guard_width": "3273865991191312002449416296622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401/1956398865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401", + "K_geometry": "1468117615991191312002447951452872096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401/1956398865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401000000000000000000000000", + "K_dominates_log": "3273865991191312002447948179006105312554859645764613952281979045550740209709115049448962735190463840823896385509116438518805288056661453358081925762323084986335104198990261734014849758997622267844704084561446051654350330961678892057135755570661259931294385845693079262479877643924659893845737459066676516633770480902547316790749972097969134671974303058152628621102133348138387546771559863095117134068678368430714579123750473599/1956398865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401000000000000000000000000", + "record_suffix": "3273865991191312002449416296622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401/1956398865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401", + "phase_local": "26190927929530496019593373974110780839622894302265362972931359432440577690140691044972088771361191158167166607198967678877759647723513316715895765052944346742544191405761384493380554281068184913880392042196090483797448683381388771101518187663642499160234131147976727081078250091142581434413718270905859350991704415201190373508834134717687376018851142549383648687058413661946591605192544861041250880753485368430714579123750473599/15651190927929530496019579705372976772030934896749728534595027863299302671406207515423455001184195116934106594539074115703267376411047830700980358673474995727721381813950595568867846519453794928738326500523011022208163540974193954147479294208106264273404502566059752740364112425653963338903506263784959066096409067353484163493392096185851106561539287816561406880075378606072923661781052554283367009996211208000000000000000000000000", + "phase_boundary": "5238185585906099203917109675729363214874976902482535296909068792998440565174678706208087824005097610881890975939675116263858518885248755931608826272947764565438740245284929399103338718032241923219191623787272717266615904026225453118082821178631080436632078300174534789788309567971910311608707242938606473864450532413859578795157186036802126787420889300258144626755528803607662180350501434347642883784518968430714579123750473599/3130238185585906099203915941074595354406186979349945706919005572659860534281241503084691000236839023386821318907814823140653475282209566140196071734694999145544276362790119113773569303890758985747665300104602204441632708194838790829495858841621252854680900513211950548072822485130792667780701252756991813219281813470696832698678419237170221312307857563312281376015075721214584732356210510856673401999242241600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "3906249999999999999999994137351134008808687997552536828377903496133137906283933175621517087587166074224060572068124851975610383236675682615735537091577948619021162377455165815625534034827273256175553891519185068275633907709187434623622223979557378225755731565088223986716965824437179242530907454485946793254582637061717026880116737948866580814479563325987976768611679807589022929824139990577674240884542277368430714579123750473599/7825595463964765248009789852686488386015467448374864267297513931649651335703103757711727500592097558467053297269537057851633688205523915350490179336737497863860690906975297784433923259726897464369163250261505511104081770487096977073739647104053132136702251283029876370182056212826981669451753131892479533048204533676742081746696048092925553280769643908280703440037689303036461830890526277141683504998105604000000000000000000000000", + "prime_interval_packing": "3273865991191312002449416296622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401/1956398865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401", + "alpha_positive": "6547731982382624004896876194378201816421721739968962026660461957963574135485054477380837883214853457587220702893380901427227339437640290980626759946697550951507830942814707842495664690721988360135516649937823827674792952735923160492047531583944294106857206603162171807993930850670077256784020432186559778684903900088067753464761995329357454864385280128328488630524459107253845269403129148515993383595079368430714579123750473599/3912797731982382624004894926343244193007733724187432133648756965824825667851551878855863750296048779233526648634768528925816844102761957675245089668368748931930345453487648892216961629863448732184581625130752755552040885243548488536869823552026566068351125641514938185091028106413490834725876565946239766524102266838371040873348024046462776640384821954140351720018844651518230915445263138570841752499052802000000000000000000000000", + "alpha_below_one": "3906249999999999999999998050148865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401/3912797731982382624004894926343244193007733724187432133648756965824825667851551878855863750296048779233526648634768528925816844102761957675245089668368748931930345453487648892216961629863448732184581625130752755552040885243548488536869823552026566068351125641514938185091028106413490834725876565946239766524102266838371040873348024046462776640384821954140351720018844651518230915445263138570841752499052802000000000000000000000000", + "alpha_below_one_fourth": "971651701013213031996326855391432846435511709306889071385528779498242842827402915236585099690797341350794441455798751330026983686252849127830645657145489682031078532429097515211744742775140194686009889632750365060335428358151198973725408356422697222980924203775572374464763095752702631424685121054373381852340662809504692464872244016286336705231820208406759441374186703772303883591912655494194444741168121131569285420876249526401/3912797731982382624004894926343244193007733724187432133648756965824825667851551878855863750296048779233526648634768528925816844102761957675245089668368748931930345453487648892216961629863448732184581625130752755552040885243548488536869823552026566068351125641514938185091028106413490834725876565946239766524102266838371040873348024046462776640384821954140351720018844651518230915445263138570841752499052802000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "7616584555824852379346835937337037330008027107136294776668390748780852855204870795788149496373956098391115378576015957430044050072444062643180316869072092753225867691149744192745559316439621186599897056239388796739694424577825280792986411278169698447895928918700691868959588685403129262054753791008572754938046347856477968407423572344619433691927399371524909457361818832508502076558162099529214456027426305607290041843305932367074776883201445121273760775340268923755948637277685252965324936531495378995137587567955043756075393975978893041703025695330557161121903878449319893179915601015459034474650385001112071032669057549953505529609931978193116897787334652819461889998857331835859984797034274463245420793583332731085616891129103839422191933344503721186323794322653801979357976796012801/7642183070278091062509560403014148814468229930053578386032728448876612632522562263390358887296970271940481735614782283058236023638206948584463065758532712757676455963843064242611253183327048305048010986583501475687579853991305641673573874125051886852248292268583863642755914270338849286573977667863749543992387239918693439205757859465747610625751605379180374453161805959996544756729029567521175297849712503906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "109584527423436243968156659137180412149821415181340217791626512417995007652397860596523088746712062712800671040108218369699307861578355597760636258113066119964707567379239267104066170051148539661379950329626532972838406604665989329308967681726177979509968825833213349962762001931920168983635327746821832149007524627642722227306786555640209110048875612554527324734767989425816320504776000462533913357316062831894707856262628748579203/15651190927929530496019579705372976772030934896749728534595027863299302671406207515423455001184195116934106594539074115703267376411047830700980358673474995727721381813950595568867846519453794928738326500523011022208163540974193954147479294208106264273404502566059752740364112425653963338903506263784959066096409067353484163493392096185851106561539287816561406880075378606072923661781052554283367009996211208000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "1049368238490026701423094483967503150028400919345744634706771563009039327491866814751968099801467171856391309923209431203201740596569024959110233677131201592567375280098042665218399315394449575749542782753322608569970642083250037809901376350280373872345301984491043072703004387541882757099622985128122290559724732993113238435803997885791221852625295155016830592342542058445798025930770474910744234430904733/1956398865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401000000000000000000", + "coordinate_movement_above_kappa": "10957068841737286144939438708157772981733977311011065072511788293622473574009000887326883293726381544650409422295513269607192062776519836116207583133057483385125720064058483076596633700172312698591283946022952385510640731056428915728323047847530463983472971584280786089034380436777894438138124308527397658055714647289490402819362574205934963802759779076868430714579123750473599/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "1049366282091160710231782481520039978406304415478882540990704738630556415079032888976028671869592023832001693159885113818937277688146973578131396054586367408192909314925315921393953206913634644025176690462510043193592866062807416035657107915368597859062267808928222315233911842027829550354205622189839317439841470941979819250283561211779198621236974962605853522166682049023472266815312752279174949010028483473599/1956398865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401000000000000000000000000", + "bulk_exposure_above_kappa": "10957068841737286144939438708157772981733977311011065072511788293622473574009000887326883293726381544650409422295513269607192062776519836116207583133057483385125720064058483076596633700172312698591283946022952385510640731056428915728323047847530463983472971584280786089034380436777894438138124308527397658055714647289490402819362574205934963802759779076868430714579123750473599/3906250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "1678987225185176731085639171900541868423344967086329321814767676435980011574152977827209531750472326945836479113810772540858322046088388553597536260865088363733334482984141520524992796150304389474902360114503608335575251312757438721597933725536822182469448999622848158855714474552959204613979413266712691775676310737847762311765959943253931732812152055615951877572207284090951082373775037225621489668571323273599/3130238185585906099203915941074595354406186979349945706919005572659860534281241503084691000236839023386821318907814823140653475282209566140196071734694999145544276362790119113773569303890758985747665300104602204441632708194838790829495858841621252854680900513211950548072822485130792667780701252756991813219281813470696832698678419237170221312307857563312281376015075721214584732356210510856673401999242241600000000000000000000000", + "scalar_work_above_kappa": "8394943951521347620193443869292562028605110850899094983938105679693831707522100592239805370479862226826740862622351132241349461864130148291903031794504778556164536275611614577922748414674781674271976169735768303183387360645557680704966742367331214965479381700365523824154942554821008850051566518086695351357914601893772488300911546412317751589614041047723667668564476458144058448330706076654384590026361614473599/15651190927929530496019579705372976772030934896749728534595027863299302671406207515423455001184195116934106594539074115703267376411047830700980358673474995727721381813950595568867846519453794928738326500523011022208163540974193954147479294208106264273404502566059752740364112425653963338903506263784959066096409067353484163493392096185851106561539287816561406880075378606072923661781052554283367009996211208000000000000000000000000", + "dimension_above_kappa": "1949851134008808689046916869068404604919227621873787083204022436433331800780995623581107452343842425135204775484082907393482887871828452365579195762384650493145060950387377146458894465166318299126108502829073197973522340131548364301535730307236754775725813529522904779799787931284297655340066104568762873837571851708936770123050720969881850115611586908721045992615872829257715134619910489160377149681244073910744234430904733/1956398865991191312002447463171622096503866862093716066824378482912412833925775939427931875148024389616763324317384264462908422051380978837622544834184374465965172726743824446108480814931724366092290812565376377776020442621774244268434911776013283034175562820757469092545514053206745417362938282973119883262051133419185520436674012023231388320192410977070175860009422325759115457722631569285420876249526401000000000000000000" + }, + "controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ASYNC-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ASYNC-AUDIT.json new file mode 100644 index 0000000000..f5980d5df7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ASYNC-AUDIT.json @@ -0,0 +1,75 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS", + "template_sha256": "72e6d2b042b7c089e288859fb13c6f2a4b44884993eab94edbe70d503e664d04", + "complex_template_sha256": "72e6d2b042b7c089e288859fb13c6f2a4b44884993eab94edbe70d503e664d04", + "complex_live": 7168, + "complex_profile": { + "1": 173516, + "2": 33841, + "3": 28950, + "4": 10224, + "5": 5904, + "8": 576, + "32": 1, + "48": 2450 + }, + "complex_hosted_residuals": 34560, + "physical": 7658, + "rank_mass": 520704, + "deficit": 2560, + "entering_helper_roles": 17280, + "cross_replica_helper_roles": 26491, + "one_owner_per_complete_invocation": true, + "helper_busy_family_window_checks": 34560, + "complete_invocations": 72, + "actual_orthogonal_73column_maps": 9035, + "actual_sigma_stream_sha256": "5bc015b7e224381a6557cbf5510399d48deb2d9eb94eabb256abb8f86588914f", + "all_actual_residual_and_spectator_charts": true, + "idle_remainders": 3606, + "mutations_rejected": [ + "alias two whole owners", + "helper on active data family", + "owner in private namespace", + "wrong residual width", + "wrong spectator coordinate", + "omit idle remainder", + "understate physical reserve", + "gauge44: wrong provider at its invocation", + "gauge44: stale per-call local program hash", + "gauge44: stale serialized provider program", + "gauge44: unbound residual adapter hash", + "gauge44: wrong provider width registry", + "gauge44: wrong per-call residual width", + "gauge44: wrong sweep provider", + "gauge44: entering helper width silently restored to nine" + ], + "mutation_controls_run": true, + "provider_phase_semantic_sha256": { + "gauge44": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + } + }, + "widths_by_provider": { + "gauge44": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + } + }, + "provider_counts": { + "gauge44": 72 + }, + "all_provider_program_phase_and_wrapper_bindings": true, + "scope": "Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/AUDIT-LOCAL.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/AUDIT-LOCAL.json new file mode 100644 index 0000000000..44b1c12632 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/AUDIT-LOCAL.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "f43271fcabcc9ebb3b9540610574ba463bba4440e7a868bd92e8ea348081d3ec", + "compressed_sha256": "d28c607df2bc4a82684d3fe47cfb3dba04e3bd14b247c7d4a62a03dff7b2836c", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 480, + "entering": 192, + "lowends": 78, + "coldends": 48, + "compensation_gates": 7208, + "local_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + }, + "checked_columns": 704, + "elapsed_seconds": 1.0070099160075188, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/BIT-SUPPLIER-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/BIT-SUPPLIER-CONTROLS.json new file mode 100644 index 0000000000..ab2a5b51a4 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/BIT-SUPPLIER-CONTROLS.json @@ -0,0 +1,49 @@ +{ + "status": "PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS", + "kappa": "0.001673414377866467", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "derived_deficit": 10272, + "rejected_controls": [ + "revert_hardcoded_9984", + "ports_112", + "decoder_constant_64_copy_ranks_unchanged", + "decoder_constant_64_with_one_copy_rank_8", + "eight_retained_totals", + "live_minus_one", + "profile_rank_mass_plus_one", + "profile_rank_mass_receipt_mismatch", + "bit_lower_next_grid", + "not_nine_stage_record", + "tampered_bytes_next_grid", + "pr543_file_under_pr589_pin" + ], + "assembler_sha256": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/CLIFFORD-REVIEW.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/CLIFFORD-REVIEW.json new file mode 100644 index 0000000000..cf3b265150 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/CLIFFORD-REVIEW.json @@ -0,0 +1,19 @@ +{ + "status": "PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES", + "canonical_word_sha256": "3dd6e2a42d90736dbdf7f47e1bbd18525fccfceae52ad0ce9a8082e88b8a851d", + "frames": 1012, + "directed_edges": 2904, + "ranks": { + "1": 1920, + "2": 428, + "3": 376, + "8": 16, + "4": 124, + "5": 40 + }, + "endpoint_adapters": 224, + "all_child_equalities_include_global_phase": true, + "recipe_sha256": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "seconds": 127.51856795800268, + "scope": "Every local frame and center transition. Expanded scalar-interface integration and global emitted program are separate obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/END-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/END-CONTROLS.json new file mode 100644 index 0000000000..0ca420e48a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/END-CONTROLS.json @@ -0,0 +1,197 @@ +{ + "status": "PASS_EIGHT_ENDS_32_NEGATIVE_CONTROLS", + "rejected": [ + { + "helper": 572, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 572, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (572, (256, 128, 67, 35, 17, 9, 6), (256, 128, 67, 35, 17, 9))" + }, + { + "helper": 572, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (312, (264, 136, 74, 43, 24, 7), (271, 143, 74, 44, 24))" + }, + { + "helper": 572, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [572])" + }, + { + "helper": 573, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 573, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (573, (256, 128, 67, 35, 17, 9, 6), (256, 128, 67, 35, 17, 9))" + }, + { + "helper": 573, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (70, (265, 137, 75, 42, 24, 7), (265, 137, 76, 42, 24))" + }, + { + "helper": 573, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [573])" + }, + { + "helper": 574, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 574, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (574, (256, 128, 96, 17, 9, 5, 3), (256, 128, 96, 17, 9, 5))" + }, + { + "helper": 574, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (328, (264, 137, 96, 24, 4, 3), (268, 137, 96, 24, 3))" + }, + { + "helper": 574, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [574])" + }, + { + "helper": 575, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 575, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (575, (256, 128, 96, 17, 9, 5, 3), (256, 128, 96, 17, 9, 5))" + }, + { + "helper": 575, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (110, (265, 136, 96, 24, 4, 3), (265, 140, 96, 24, 3))" + }, + { + "helper": 575, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [575])" + }, + { + "helper": 580, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 580, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (580, (256, 128, 67, 35, 18, 10, 6), (256, 128, 67, 35, 18, 10))" + }, + { + "helper": 580, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (332, (266, 138, 72, 41, 24, 7), (266, 138, 79, 41, 24))" + }, + { + "helper": 580, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [580])" + }, + { + "helper": 581, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 581, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (581, (256, 128, 67, 35, 18, 10, 6), (256, 128, 67, 35, 18, 10))" + }, + { + "helper": 581, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (334, (267, 139, 73, 40, 24, 7), (268, 140, 73, 47, 24))" + }, + { + "helper": 581, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [581])" + }, + { + "helper": 582, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 582, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (582, (256, 128, 73, 41, 24, 5, 3), (256, 128, 73, 41, 24, 5))" + }, + { + "helper": 582, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (316, (385, 72, 40, 24, 4, 3), (389, 76, 44, 24, 3))" + }, + { + "helper": 582, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [582])" + }, + { + "helper": 583, + "mutation": "missing-tail", + "status": "REJECTED", + "reason": "full cleanup reads a low end" + }, + { + "helper": 583, + "mutation": "rank6-end", + "status": "REJECTED", + "reason": "frame not monotone (583, (256, 128, 73, 41, 24, 5, 3), (256, 128, 73, 41, 24, 5))" + }, + { + "helper": 583, + "mutation": "rank8-read", + "status": "REJECTED", + "reason": "frame not monotone (318, (385, 73, 41, 24, 4, 3), (389, 73, 41, 24, 3))" + }, + { + "helper": 583, + "mutation": "bad-restore", + "status": "REJECTED", + "reason": "all-column endpoint failure (False, [583])" + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ENDS-8-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ENDS-8-AUDIT.json new file mode 100644 index 0000000000..2fd5548b28 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/ENDS-8-AUDIT.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "ENDS-8.json.gz", + "content_sha256": "f43271fcabcc9ebb3b9540610574ba463bba4440e7a868bd92e8ea348081d3ec", + "compressed_sha256": "d28c607df2bc4a82684d3fe47cfb3dba04e3bd14b247c7d4a62a03dff7b2836c", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 480, + "entering": 192, + "lowends": 78, + "coldends": 48, + "compensation_gates": 7208, + "local_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "width_inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + }, + "checked_columns": 704, + "elapsed_seconds": 1.0812152919825166, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/INDEPENDENT-LOCAL-REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/INDEPENDENT-LOCAL-REPLAY.json new file mode 100644 index 0000000000..bea87a94e5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/INDEPENDENT-LOCAL-REPLAY.json @@ -0,0 +1,71 @@ +{ + "status": "PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY", + "canonical_word_sha256": "3dd6e2a42d90736dbdf7f47e1bbd18525fccfceae52ad0ce9a8082e88b8a851d", + "local_programs_sha256": "b1bb600466e05411099dedbb6b8776a8c429d7f75774041af5bf38dfff435401", + "v": 112, + "helpers": 480, + "local": { + "forward": { + "all_exact_columns": 704, + "prefix_l1_upper": "2765345294379392599/1024", + "prefix_bits_upper": 52, + "charged_payload_bits": 192, + "private_work_erased": true + }, + "backward": { + "all_exact_columns": 704, + "prefix_l1_upper": "14824960514781440791821/64", + "prefix_bits_upper": 68, + "charged_payload_bits": 192, + "private_work_erased": true + } + }, + "paid_profiles": { + "forward": { + "1": 2396, + "4": 142, + "8": 8, + "3": 400, + "2": 470, + "5": 82 + }, + "backward": { + "1": 2396, + "4": 142, + "8": 8, + "3": 400, + "2": 470, + "5": 82 + } + }, + "entering_helpers": 192, + "cold_hyperplane_ended_helpers": 48, + "negative_controls_rejected": [ + "wrong_scale", + "missing_center", + "wrong_common_frame", + "wrong_child_rank", + "missing_pre_wrapper", + "missing_post_wrapper", + "wrapper_with_wrong_frame", + "wrapper_in_wrong_phase", + "wrapper_on_a_data_register", + "wrapper_on_a_target_register", + "wrapper_on_a_centre_register", + "hpe_pre_wrapper_resolved_to_full_recipe", + "hpe_post_wrapper_without_terminal_frame", + "hpe_post_wrapper_wrong_terminal_frame", + "hpe_tail_gate_at_full_frame", + "hpe_tail_climb_dropped", + "hpe_helper_exit_adapter_to_full", + "hpe_tail_gate_moved_into_full_cleanup", + "cold_hpe_pre_wrapper_replaced_by_identity_entry_adapter", + "cold_hpe_pre_wrapper_dropped", + "cold_hpe_post_wrapper_replaced_by_exit_adapter", + "cold_hpe_pre_wrapper_resolved_to_cold_full_convention", + "cold_hpe_wrapper_with_nonzero_entrance", + "cold_hpe_post_wrapper_wrong_terminal_frame", + "cold_hpe_premix_gate_before_pre_wrapper" + ], + "scope": "Literal forward and inverse-transpose replay on every arbitrary data/helper column, physical frame incidence, ordered paid wrappers, cleared private work and prefix coefficients. Global hosting and outer exponent are separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/LOCAL-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/LOCAL-CHECKS.json new file mode 100644 index 0000000000..1e00dcd2fd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/LOCAL-CHECKS.json @@ -0,0 +1,36 @@ +{ + "forward": { + "sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "scalar_macros": 19693, + "real_component_primitive_bound": 198766, + "paid_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "all_columns": 704, + "private_centers_cleared": true, + "private_coefficient_stream_cleared_after_each_macro": true + }, + "backward": { + "sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "scalar_macros": 19693, + "real_component_primitive_bound": 198814, + "paid_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "all_columns": 704, + "private_centers_cleared": true, + "private_coefficient_stream_cleared_after_each_macro": true + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/NATIVE-STEPS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/NATIVE-STEPS.json new file mode 100644 index 0000000000..150075a56b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/NATIVE-STEPS.json @@ -0,0 +1,27 @@ +[ + { + "step": "native", + "exit_code": 0, + "seconds": 1.4084420419821981 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.8777561250026338 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 6.732248542015441 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.9483850830001757 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 127.56919429099071 + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/OWNERS-AND-PROFILE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/OWNERS-AND-PROFILE.json new file mode 100644 index 0000000000..a3f72feddc --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/OWNERS-AND-PROFILE.json @@ -0,0 +1,52 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE", + "template_sha256": "72e6d2b042b7c089e288859fb13c6f2a4b44884993eab94edbe70d503e664d04", + "paid_profile": { + "1": 173516, + "2": 33841, + "3": 28950, + "4": 10224, + "5": 5904, + "8": 576, + "32": 1, + "48": 2450 + }, + "live": 7168, + "physical": 7658, + "rank_mass": 520704, + "deficit": 2560, + "hosted_residuals": 34560, + "banked_residuals": 0, + "all_live_owners_per_call_distinct": true, + "owners_per_call": 704, + "actual_helper_owner_charts": 34560, + "actual_73column_sigmas": 9035, + "cross_replica_helper_roles": 26491, + "explicit_idle_remainder_children": 3606, + "source_idle_children_charged": 16128, + "source_artifacts": { + "work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "providers/gauge44/CANONICAL-WORD.json.gz": "3dd6e2a42d90736dbdf7f47e1bbd18525fccfceae52ad0ce9a8082e88b8a851d", + "providers/gauge44/LOCAL-PROGRAMS.json.gz": "b1bb600466e05411099dedbb6b8776a8c429d7f75774041af5bf38dfff435401", + "providers/gauge44/LOCAL-CHECKS.json": "3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba", + "providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99", + "providers/gauge44/RESIDUAL-ADAPTERS.json": "8ecf500ad8646d642906275de20704e4248abccabf2e21af51fcdcbd7581c312", + "providers/gauge44/CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "providers/gauge44/CLIFFORD-REVIEW.json": "2bfc112221995431c25a7257fdda5a2e9b2631c1712a48ab428f946849cbac91" + }, + "provider_phase_semantic_sha256": { + "gauge44": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + } + }, + "controller_audit_sha256": "2b056ae65d212cfdf4d83778b9be47dc7a9ded6626feb3a20ae2de6ead8dbb79" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/PREFIX-AND-INVOICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/PREFIX-AND-INVOICE.json new file mode 100644 index 0000000000..511218976e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/PREFIX-AND-INVOICE.json @@ -0,0 +1,1734 @@ +{ + "status": "PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE", + "template_sha256": "72e6d2b042b7c089e288859fb13c6f2a4b44884993eab94edbe70d503e664d04", + "parent_template_sha256": "7db047a427a7979d69e163c78a1e32bd445628fb86723e131a3138361355a9c3", + "owner_audit_sha256": "a04d3db0d157b197d9395967163e155f0d8775a06db2ca4318258830e2abdaa9", + "controller_audit_sha256": "2b056ae65d212cfdf4d83778b9be47dc7a9ded6626feb3a20ae2de6ead8dbb79", + "providers": { + "gauge44": { + "local": { + "backward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 384, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 56, + "5": 32, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387120, + "local_primitive_bound": 10039700351134, + "compiler": 25934336, + "children": 3498, + "artifacts": { + "CANONICAL-WORD.json.gz": "3dd6e2a42d90736dbdf7f47e1bbd18525fccfceae52ad0ce9a8082e88b8a851d", + "RESIDUAL-ADAPTERS.json": "8ecf500ad8646d642906275de20704e4248abccabf2e21af51fcdcbd7581c312", + "LOCAL-PROGRAMS.json.gz": "b1bb600466e05411099dedbb6b8776a8c429d7f75774041af5bf38dfff435401", + "LOCAL-CHECKS.json": "3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba", + "CLIFFORD-REVIEW.json": "2bfc112221995431c25a7257fdda5a2e9b2631c1712a48ab428f946849cbac91", + "INDEPENDENT-LOCAL-REPLAY.json": "00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "FULL-WORD.json.gz": "9fd27ad780b143a867e794ce3c1ab44f393c689f2e81538aa7cff1604d14cf68", + "SCALAR-FRAME-AUDIT.json": "62f470aab7a219033217f94e7e123405565e4ef69acd28bc4a789c19b5c5d905", + "WRAPPER-CHECKS.json": "b6c7fdef5893b117434f39b6561b80504482fa748e23b840f77a07b137e1d1ea" + }, + "paid_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "forward": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + } + } + }, + "provider_phase_semantic_sha256": { + "gauge44": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1" + }, + "provider_counts": { + "gauge44": 72 + }, + "selected_calls": [ + { + "stage": 0, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "c114b8a3b24f3b4c28c7641140ad65e2a09d703d3b3544928a889ce3f066b66d", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "7821a166c18432646b3e3bdbd47b06c7e08439a94f1798fe209b181019482c19", + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 384, + "pre_wrappers": 240, + "post_wrappers": 240 + } + ], + "selected_local_paid_profile": { + "1": 172512, + "2": 33840, + "3": 28800, + "4": 10224, + "5": 5904, + "8": 576 + }, + "selected_real_component_primitives": 14312688, + "selected_coefficient_work_primitive_count": 7081000, + "selected_scalar_macros": 1417896, + "global_prefix_bits": 253, + "charged_prefix_bits": 512, + "complete_invocation_sweeps": 72, + "bridge_sweeps": 72, + "row_prefix_extra": 1024, + "helpers": 480, + "centres": 8, + "live": 7168, + "physical": 7658, + "physical_stock_identity": { + "data_and_owner_families": 7168, + "local_helpers": 480, + "private_centres": 8, + "coefficient_work": 2 + }, + "local_adapters": 387120, + "local_primitive_bound": 10039700351134, + "wrapper_elementary_factors_charged": 4976640, + "factors_per_wrapper": 144, + "compiler": 25934336, + "unhosted_pervertex": 1794712914397736, + "hosted_rebased_pervertex": 1794712914096800, + "conservative_pervertex_used": 4672659904122304, + "retained_prior_overcharge": { + "sha256": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "previous_pervertex_allowance": 2877946989724568, + "added_complete_new_pervertex": 1794712914397736, + "policy": "Retain old allowance and add entire fresh mixed recount." + }, + "finite": { + "physical_stock_bits": 2641, + "router_bits": 7985, + "literal_bits": 35282, + "physical_row_coefficient": 16467, + "retained_row_coefficient": 20161, + "required_C0_bits": 200012, + "halving_integer_inequality": [ + 5329, + 4608 + ], + "G_exponent": 30000, + "E_exponent": 100000, + "C0_exponent": 210000 + }, + "strict_checks": { + "local_primitive_bound": true, + "logical": true, + "router": true, + "literal": true, + "mass": true, + "precision": true, + "tape": true, + "row": true, + "halving": true + }, + "scope": "Actual call-specific mixed scalar, Horner, wrappers and paid children recounted. All three providers use fresh hash-bound independent all-column/frame/phase/normalization admission. Shared compiler uses conservative maxima; parent is geometry/overcharge only. All-size compiler, hosting, precision/tape and analytic transfer remain conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/PREPARATION.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/PREPARATION.json new file mode 100644 index 0000000000..4dda6ee924 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/PREPARATION.json @@ -0,0 +1,44 @@ +{ + "status": "PASS_CHECKED_LOCAL_AND_LITERAL_OWNER_NOMINATION", + "width_inventory": { + "9": 240, + "4": 56, + "8": 114, + "7": 38, + "5": 32 + }, + "local_profile": { + "1": 2396, + "2": 470, + "3": 400, + "4": 142, + "5": 82, + "8": 8 + }, + "idle": { + "3": 150, + "1": 1004, + "32": 1, + "48": 2450, + "2": 1 + }, + "global_profile": { + "1": 173516, + "2": 33841, + "3": 28950, + "4": 10224, + "5": 5904, + "8": 576, + "32": 1, + "48": 2450 + }, + "local_artifacts": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/REPLAY.json new file mode 100644 index 0000000000..89fe036ffe --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/REPLAY.json @@ -0,0 +1,86 @@ +{ + "status": "PASS_GAUGE44_STRICT_GLOBAL_REPLAY", + "kappa": "1673414377866467/1000000000000000000", + "kappa_decimal": "0.001673414377866467", + "complex_lower": "838109693744975872657/500000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "gain_over_pr635_percent": "2.271845339105865649769659711045652898685289010422541310337154355808867", + "spec_sha256": "555cf868f29c8173b2faf8243aea30ee29f3e12f694c6cb3865a06981592af24", + "stages": [ + { + "name": "restore-parent", + "seconds": 1.253, + "exit_code": 0, + "log_sha256": "fc3a01967636bd3173ee7e5049fae45b890e1fad4564b6acdd6aaca30a4e4ea5" + }, + { + "name": "bind", + "seconds": 0.288, + "exit_code": 0, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "name": "emit", + "seconds": 2.645, + "exit_code": 0, + "log_sha256": "f5f815f5353e8808403849208a6b0a5d658ca01819eafb0a2484bf6386c331b6" + }, + { + "name": "audit", + "seconds": 11.946, + "exit_code": 0, + "log_sha256": "2b056ae65d212cfdf4d83778b9be47dc7a9ded6626feb3a20ae2de6ead8dbb79" + }, + { + "name": "invoice", + "seconds": 0.861, + "exit_code": 0, + "log_sha256": "afa9dce4acbf44b7183fe01e3af311a1ce7eb57a3921f656ebd6154bcda5ce0c" + }, + { + "name": "assembly", + "seconds": 0.321, + "exit_code": 0, + "log_sha256": "f6b978d4cfcde87e6bda222287646ad24e9d730edbc9f3eff23ee7c14ffad9c1" + }, + { + "name": "admission-controls", + "seconds": 0.384, + "exit_code": 0, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + }, + { + "name": "bit-supplier-controls", + "seconds": 0.62, + "exit_code": 0, + "log_sha256": "d54d260bf95bd8ae4ab8846314082b93b2e3d8f427eb35376691f2ce543a6b67" + } + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/RESULT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/RESULT.json new file mode 100644 index 0000000000..41e69636ea --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/RESULT.json @@ -0,0 +1,76 @@ +{ + "status": "PASS_K8_EIGHT_RANK7_ENDS_COMPLETE_ADMISSION", + "kappa_decimal": "0.001673414377866467", + "complex_lower": "838109693744975872657/500000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "previous_kappa": "0.001672196274581061", + "end_controls": 32, + "admission_controls": 69, + "bit_supplier_controls": 12, + "outer_strict_inequalities": 47, + "native_steps": [ + { + "step": "native", + "exit_code": 0, + "seconds": 1.4084420419821981 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.8777561250026338 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 6.732248542015441 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.9483850830001757 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 127.56919429099071 + } + ], + "native_reuse": true, + "native_semantic_artifacts": { + "CANONICAL-WORD.json.gz": "dcd0b852171019f2cd7f049a25e50a5ecd6c6a61e7c2d8df0afe4cc46ff468f9", + "LOCAL-PROGRAMS.json.gz": "387105bbe9b89232990a28fb67847ee3ee71b24725a5a19c2201960eb2c7e457", + "LOCAL-CHECKS.json": "c12a321cd7e4915964b58c9ea4723cce747beadebb16f309b574c7e041b51bfc", + "INDEPENDENT-LOCAL-REPLAY.json": "a95d9f6681b457cde7797655b4e83c1b9df5060d04c21d0a3901bcf7bf0e18c8", + "CLIFFORD-RECIPES.json": "451fbdbda03d23fb3c10cc60e0bad0e0b135ddd37990ac80e9db4521cefe233d", + "CLIFFORD-REVIEW.json": "ce1a32c2bb19ecac43e4b2f12e563c7ea7b4744c00ec71ad0a9bba609ef21eb1", + "RESIDUAL-ADAPTERS.json": "a8de0681f2d9b16ff727e74071950b810c56975373da021be3e7727f11d00b1c" + }, + "assembly_sha256": "1cf819f87c1e550c78de98206a52e9aff04ec47022e5a63987bcd1dd5d2e51f6", + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, 44 cold dimension-four ends, and explicit all72 whole-owner dispatch are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; this bit composition is unreviewed. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification.", + "steps": [ + { + "step": "build", + "exit_code": 0, + "seconds": 0.0768766250112094, + "log_sha256": "0f11f6146db3f337141160a7c5909f17721a066be0990b57d8db4da46e3542e2" + }, + { + "step": "independent-local", + "exit_code": 0, + "seconds": 1.0472448329965118, + "log_sha256": "a0d731f8e00d133a7714af7a119c0f5c650c9e5dbdfd19b171946b23845f0cfa" + }, + { + "step": "end-controls", + "exit_code": 0, + "seconds": 24.368299041991122, + "log_sha256": "09021b38ca12b4865afd51d4f8c4a62d2f3d925a4d52a2d4b5e0a3744958ed86" + }, + { + "step": "strict-global", + "exit_code": 0, + "seconds": 18.440567874989938, + "log_sha256": "b3454fec7d0dedf2c032c36d1a0b92c22094d2cd4ad39f5a6a1b12856fd4ce01" + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/STEPS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/STEPS.json new file mode 100644 index 0000000000..c033f7bfec --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/STEPS.json @@ -0,0 +1,26 @@ +[ + { + "step": "build", + "exit_code": 0, + "seconds": 0.0768766250112094, + "log_sha256": "0f11f6146db3f337141160a7c5909f17721a066be0990b57d8db4da46e3542e2" + }, + { + "step": "independent-local", + "exit_code": 0, + "seconds": 1.0472448329965118, + "log_sha256": "a0d731f8e00d133a7714af7a119c0f5c650c9e5dbdfd19b171946b23845f0cfa" + }, + { + "step": "end-controls", + "exit_code": 0, + "seconds": 24.368299041991122, + "log_sha256": "09021b38ca12b4865afd51d4f8c4a62d2f3d925a4d52a2d4b5e0a3744958ed86" + }, + { + "step": "strict-global", + "exit_code": 0, + "seconds": 18.440567874989938, + "log_sha256": "b3454fec7d0dedf2c032c36d1a0b92c22094d2cd4ad39f5a6a1b12856fd4ce01" + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/WRAPPER-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/WRAPPER-CHECKS.json new file mode 100644 index 0000000000..c46655af00 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/evidence/WRAPPER-CHECKS.json @@ -0,0 +1,424 @@ +{ + "status": "PASS_RESIDUAL_WRAPPERS_ARE_EXACT", + "frames": 22, + "hyperplane_end_pairs": [ + { + "frame": 0, + "terminal": 124, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 153, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 182, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 211, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 240, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 269, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 298, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 327, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 1004, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1005, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1006, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1007, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1008, + "entrance_rank": 0, + "terminal_rank": 7, + "residual_width": 7 + }, + { + "frame": 0, + "terminal": 1009, + "entrance_rank": 0, + "terminal_rank": 7, + "residual_width": 7 + }, + { + "frame": 0, + "terminal": 1010, + "entrance_rank": 0, + "terminal_rank": 7, + "residual_width": 7 + }, + { + "frame": 0, + "terminal": 1011, + "entrance_rank": 0, + "terminal_rank": 7, + "residual_width": 7 + }, + { + "frame": 2, + "terminal": 1003, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + }, + { + "frame": 3, + "terminal": 1002, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + } + ], + "cold_hyperplane_end_pairs": 16, + "wrappers_reject": [ + "wrong global phase", + "wrong translation", + "wrong quadratic form", + "sides swapped", + "wrong width", + "hpe: U-wrapper decoded against a FULL ending", + "hpe: width misreported as 9 - dim E", + "hpe: wrong terminal hyperplane", + "hpe: pre wrapper resolved to the FULL recipe R_{E,FULL}", + "hpe: wrong global phase", + "cold hpe: identity pre wrapper instead of R_{0,U}", + "cold hpe: identity post wrapper instead of L_{0,U}", + "cold hpe: no wrappers (cold FULL convention L = R = I)", + "cold hpe: U-wrapper decoded against a FULL ending", + "cold hpe: width misreported as 9", + "cold hpe: wrong terminal hyperplane", + "cold hpe: wrong global phase" + ], + "all_even_weight": false, + "all_totally_isotropic": false, + "detail": [ + { + "frame": 2, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 30 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 3, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 51 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 4, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 459 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 5, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 75 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 6, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 102 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 7, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 120 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 8, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 85 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 423, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 45 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 424, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 413, + 72, + 48, + 3 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 425, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 407, + 66, + 36, + 9 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 426, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 455, + 33, + 18, + 12 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 427, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 258, + 130, + 85, + 45 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 428, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 264, + 136, + 85, + 51 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 429, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 427, + 96, + 24, + 6 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 430, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 423, + 65, + 20, + 10 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 431, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 257, + 129, + 76, + 42, + 30 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 432, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 391, + 68, + 34, + 17, + 8 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 433, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 409, + 80, + 40, + 5, + 2 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 434, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 272, + 144, + 75, + 42, + 7 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 435, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 320, + 192, + 45, + 30 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 436, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 288, + 160, + 75, + 25, + 7 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 437, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 260, + 132, + 75, + 42, + 25 + ], + "all_even_weight": false, + "totally_isotropic": false + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/replay_native.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/replay_native.py new file mode 100644 index 0000000000..fb9f676e5d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/replay_native.py @@ -0,0 +1,10 @@ +import os,sys,time,json,subprocess +from pathlib import Path +ROOT=Path(__file__).resolve().parents[2];work=Path(sys.argv[2]);work.mkdir(parents=True,exist_ok=False);raw=Path(sys.argv[1]).resolve() +src=ROOT/'research/complex-k492-owner-repair/vendor/multicold';up=ROOT/'research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code';base=src/'vendor/pr558';par=base/'vendor/pr552';local=work/'local' +env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0',MULTICOLD_SOURCE=str(src),GAIN_PR564_SOURCE=str(src),CPLUS_INCLUDE_PATH=os.environ.get('CPLUS_INCLUDE_PATH','/opt/homebrew/include'));env.pop('PYTHONOPTIMIZE',None) +steps=[] +for label,script,args in [('native',up/'hpe_audit_and_transport.py',['--raw',raw,'--routing',par/'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz','--out',local]),('ledgers',up/'hpe_emit_local.py',[local]),('local-replay',up/'hpe_audit_local.py',[local]),('wrappers',up/'hpe_adapters_local.py',[local/'CANONICAL-WORD.json.gz',local/'RESIDUAL-ADAPTERS.json',local/'WRAPPER-CHECKS.json']),('phases',base/'code/phases_full.py',[local,par/'complex-global/vendor531/vendor/clifford'])]: + t=time.monotonic() + with (work/(label+'.log')).open('w') as f:p=subprocess.run([sys.executable,'-B',str(src/'code/run_portable.py'),str(script),*map(str,args)],stdout=f,stderr=subprocess.STDOUT,cwd=ROOT,env=env) + steps.append(dict(step=label,exit_code=p.returncode,seconds=time.monotonic()-t));(work/'STEPS.json').write_text(json.dumps(steps,indent=2)+'\n');assert p.returncode==0,(label,(work/(label+'.log')).read_text()[-4000:]);print('PASS',label,flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/verify.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/verify.py new file mode 100644 index 0000000000..257c8fbb8c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-eight-ends/verify.py @@ -0,0 +1,42 @@ +"""Rebuild the frozen endpoint recipe and run unchanged strict admission.""" +import argparse,gzip,hashlib,importlib.util,json,os,shutil,subprocess,sys,time +from pathlib import Path +P=Path(__file__).resolve().parent;ROOT=P.parents[1];UP=ROOT/'research/gauge44-slots' +def read(p): + p=Path(p);b=p.read_bytes();return json.loads(gzip.decompress(b) if str(p).endswith('.gz') else b) +def sha(p):return hashlib.sha256(Path(p).read_bytes()).hexdigest() +def dump(p,x):Path(p).write_text(json.dumps(x,indent=2)+'\n') +def payload(p):return hashlib.sha256(gzip.decompress(Path(p).read_bytes())).hexdigest() +def module(name,p): + s=importlib.util.spec_from_file_location(name,p);m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m + +def main(): + assert __debug__,'Assertions required' + ap=argparse.ArgumentParser(description=__doc__);ap.add_argument('--base',type=Path,required=True);ap.add_argument('--work',type=Path,required=True);ap.add_argument('--native-from',type=Path);a=ap.parse_args();work=a.work.resolve();assert not work.exists() and not work.is_relative_to(ROOT) + for name,h in read(P/'MANIFEST.json').items():assert sha(P/name)==h,('package drift',name) + for name,h in read(P/'SOURCE-PINS.json').items():assert sha(ROOT/name)==h,('source drift',name) + work.mkdir(parents=True);env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0');env.pop('PYTHONOPTIMIZE',None);steps=[] + def run(name,script,*args): + t=time.monotonic();log=work/(name+'.log') + with log.open('w') as f:p=subprocess.run([sys.executable,'-B',str(script),*map(str,args)],cwd=ROOT,env=env,stdout=f,stderr=subprocess.STDOUT) + steps.append(dict(step=name,exit_code=p.returncode,seconds=time.monotonic()-t,log_sha256=sha(log)));dump(work/'STEPS.json',steps);assert p.returncode==0,(name,log.read_text()[-5000:]);print('PASS',name,flush=True) + raw=work/'FULL-WORD.json.gz';run('build',P/'build_word.py','--base',a.base.resolve(),'--out',raw) + assert payload(raw)==read(P/'RECIPE.json')['output_content_sha256']==payload(P/'FULL-WORD.json.gz') + run('independent-local',UP/'independent/audit_local.py','--word',raw,'--main',ROOT,'--output',work/'AUDIT-LOCAL.json') + run('end-controls',P/'end_controls.py',work/'END-CONTROLS.json');assert len(read(work/'END-CONTROLS.json')['rejected'])==32 + if a.native_from:native=a.native_from.resolve() + else: + native=work/'native';run('native',P/'replay_native.py',raw,native) + ns=read(native/'STEPS.json');assert [s['step'] for s in ns]==['native','ledgers','local-replay','wrappers','phases'] and all(s['exit_code']==0 for s in ns) + local=native/'local';assert payload(local/'FULL-WORD.json.gz')==payload(raw) + ident=module('native_identity',UP/'code/generated_identity.py');plan=read(P/'PLAN.json.gz');assert ident.artifact_identities(local)==plan['provider_registry']['gauge44']['artifact_semantic_sha256'] + runtime=work/'runtime';runtime.mkdir();shutil.copytree(UP/'code',runtime/'code',ignore=shutil.ignore_patterns('__pycache__'));shutil.copytree(UP/'inputs',runtime/'inputs');shutil.copy2(UP/'verify_global.py',runtime/'verify_global.py');(runtime/'data').mkdir() + for name in ['OWNERS.json.gz','SPEC.json']:shutil.copy2(P/name,runtime/'data'/name) + (runtime/'data/PLAN.json').write_bytes(gzip.decompress((P/'PLAN.json.gz').read_bytes())) + shutil.copy2(UP/'data/UPSTREAM-PINS.json',runtime/'data/UPSTREAM-PINS.json');recipe=Path(read(P/'SPEC.json')['pivot_swap']['recipe']);assert not recipe.is_absolute() and '..' not in recipe.parts;(runtime/recipe).parent.mkdir(parents=True,exist_ok=True);shutil.copy2(UP/recipe,runtime/recipe) + run('strict-global',runtime/'verify_global.py','--main',ROOT,'--local',local,'--work',work/'global') + result=read(work/'global/ASSEMBLY.json');claim=read(P/'CLAIM.json');assert result['kappa_decimal']==claim['kappa_decimal'];assert result['complex_profile']==plan['profile'];assert len(result['outer'])==47 + from fractions import Fraction as F + assert F(result['kappa'])>F(claim['previous_kappa']);assert all(F(v)>0 for v in result['outer'].values());controls=read(work/'global/ADMISSION-CONTROLS.json');bit=read(work/'global/BIT-SUPPLIER-CONTROLS.json');assert len(controls['rejected_controls'])==69 and len(bit['rejected_controls'])==12 + receipt=dict(status='PASS_K8_EIGHT_RANK7_ENDS_COMPLETE_ADMISSION',kappa_decimal=result['kappa_decimal'],complex_lower=result['complex_lower'],bit_lower=result['bit_lower'],previous_kappa=claim['previous_kappa'],end_controls=32,admission_controls=69,bit_supplier_controls=12,outer_strict_inequalities=47,native_steps=ns,native_reuse=bool(a.native_from),native_semantic_artifacts=ident.artifact_identities(local),assembly_sha256=sha(work/'global/ASSEMBLY.json'),scope=result['scope'],steps=steps);dump(work/'RESULT.json',receipt);print(receipt['status'],receipt['kappa_decimal']) +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/CLAIM.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/CLAIM.json new file mode 100644 index 0000000000..567f50d670 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/CLAIM.json @@ -0,0 +1,29 @@ +{ + "status": "PASS_JOINT_ENTRANCES_COMPLETE_ADMISSION", + "kappa": "1675560947524449/1000000000000000000", + "kappa_decimal": "0.001675560947524449", + "previous_kappa": "0.001675121647789207", + "gain_percent": "0.026224945264230765219675000", + "complex_lower": "41959329101337756331/25000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "global_profile": { + "1": 340776, + "2": 71712, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "local_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "scope": "Conditional native exact-complex witness replacing the third demoted entrance group 619 with group 635 and its different four-dimensional subspace, jointly refitting local recursive frames. Groups 603 and 611 remain demoted. Whole-helper T16 hosting and the unchanged PR589 bit supplier are retained. Scalar operations and their order are unchanged. PR559 exact-cover recurrence correction, bit bad-residue surcharge, and H1-H5 retained. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification.", + "fixed_family_grid_upper": "0.001675568675201533" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/FULL-WORD.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/FULL-WORD.json.gz new file mode 100644 index 0000000000..3dab3a16bb Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/FULL-WORD.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/MANIFEST.json new file mode 100644 index 0000000000..740e035cdb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/MANIFEST.json @@ -0,0 +1,65 @@ +{ + "CLAIM.json": "bb8356c6f8c9e3f3b1a4b02c1be6bbd73e9c4fabbef02a0ed0c9cd897607c825", + "FULL-WORD.json.gz": "a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718", + "NOTICE.md": "afbd38d6c8a232ea566c296424a86420f204e6cfaac565c0a147340bda3d3da6", + "OWNERS.json.gz": "7755af4108f066cf1eb13dbaac0a0fbb97a2852ffa7403588d2b5218c81101bf", + "PARENT-PINS.json": "ae43954e4cee8951e9bff82efd728fe18e12f44e62ccc4d0177e31108ec6c5f0", + "PLAN.json.gz": "e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310", + "PROOF.md": "7b856d7f73d506b7ee2d6f5f4e87a63ce984596b869d05d39172aff6ab460ad0", + "README.md": "4eab75d721c9ee7e52785a2fa2c056bfde3d8a1936a5e99378f0951debdd6ca1", + "RECIPE.json": "2257aa6b16f2650a4213c5a14b44dfff967954d376e72ca04e089069aeb11aa1", + "SEARCH.json": "bd5ccaa57dae85b61c8489977188cbc7e88cf005d561a7475fb3b06b6f172517", + "SOURCE-PINS.json": "e222854342bd87dd68488b8a90d83764029852e8e99a168c677a3206393ccb94", + "SPEC.json": "55bdb68d5d126c6be0e0acc419bd62301a978afd514f9834ed1e08b1aa4f563e", + "build_word.py": "317ef4a9fb9fe9fcf59b98f28aeacd6211fc960768f316c54bec9bb55985de9e", + "controls.py": "1af761754245287b5158fe23465d3e290ae0b421e3ca51e4bc1d4d6219004673", + "discovery/COMPOSITIONS.json.gz": "17e1ea1bc3a363be6a060a073a829d958b2a2e2aaeb3ba6ac5da43e94fc40ba2", + "discovery/INTERFACE-CENSUS.json.gz": "cbd8b16e6fca3aa3aa553d39541950db42282c9d38e87d5fa89f5acdd3be568b", + "discovery/JOINT-FRAME-SOLVES.json.gz": "0bbc11d747ce59399c6b479d0e9586ce745e88c641afcbf8f94d0a5b94713afd", + "discovery/JOINT-FRAMES.json.gz": "e39a93b938bc04d04be0195b5389bfc22100f31351747cf4cc16e27b5f23cd5e", + "discovery/JOINT-GLOBAL-RESTRICTED.json.gz": "f01db57b9d6565222ae7cf416f272efc7d983b90ac24077cff5c4dfde623f6fe", + "discovery/JOINT-ROTATIONS.json.gz": "bb50f051f7fd4ef31044aef3c2d00044ce12fc00775641ce08c6dcb095f98276", + "discovery/ROTATION-WINNERS.json.gz": "c5a41d7ea306751f1e447839dbb90f15ee27cb51d30061c3f65660a34ff6f1ee", + "discovery/ROTATIONS.json.gz": "3b2f6222964d7921dc3d82871d7396850811c7dde66703671e46c33474c0e03b", + "discovery/compositions.log.gz": "55af64fbcc020d7f3e9c0cf9f68b88b1ee09639f0f42cc91f737f7312fa40a51", + "discovery/interface_census.py": "8e0911c2f344bdd7df14ecb40d295f2aee58206b3e98eec329d3442e09561e0b", + "discovery/joint-frames-rerun.log.gz": "97d74a5bfd9035f73474a2015db242731ff841c8f2785ca4dada61cdce6f8dcc", + "discovery/joint-frames.log.gz": "93c850e3f8645416e034ebc6485a6a85e08e2628fcb08546e92d84105d8948ac", + "discovery/joint-global-ipm.log.gz": "a3a1753c93a5aeb4d08ce043a90ad15c7affb40132dcc39e73350bcdf701bbc5", + "discovery/joint-global-restricted.log.gz": "c0da6470ea6a6483ac52345541fc54573154f49727b6515627a211db705aa20c", + "discovery/joint-global.log.gz": "03571dbffc0be03d6565e151de624a854bb843f43633496e49a089d92a86fe34", + "discovery/prepare_equal_inventory.py": "4d24b34fb9a3b92dda936b4c40f412f7f814c8e8bc4c563d58f39e32a5ccdcd8", + "discovery/rotations.log.gz": "e7d8d01b7a7c7d2b5c7f4e3dda3e137c62926bb18203f37509645d5b0b3c6372", + "discovery/search_compositions.py": "42447958e16ce97c7a6e06787345a67b6d1a0c5d977fbce9a29ba95dea4cdb8a", + "discovery/search_global_interfaces.py": "c5be35e81982219d58d5452a4084434c01a5ca1767f3dcc06733e4b5ff9caf09", + "discovery/search_global_ipm.py": "d8f2b9fbd185ae14bd29ec67a837375c081da656c2984f563f1938fdb3760760", + "discovery/search_joint_frames.py": "9361a5cf23234c7ca08755e76f5e7f6812571ac54e8c7f4ecbc68689446478fc", + "discovery/search_restricted_global.py": "4daf6ccdf45a73dbc8d4b8c5ebf6bd8792b012c87ccf2247f24ba9af5ec77c8e", + "discovery/search_rotations.py": "1e92811a3f84819f9fae940b303fa08decf3e2377208fb854a2604fd9e2f7aeb", + "evidence/ADMISSION-CONTROLS.json": "f278fa3de05390c2a282d8f5858167a41940d8cf027200e373bca0b180b4324c", + "evidence/ALL-T-BOUND.json": "12c0e54abcd1044d28b94b2dacf309c1fbc14afc9ac299cc2dacec30c38ffddb", + "evidence/ASSEMBLY.json": "ebac2870cf0f52d6ac0e8213bb766f4b980a253d6d9d207a0e29bafca8121b4b", + "evidence/ASYNC-AUDIT.json": "e9914607d9f7409a23c6e7ad94b5c3d46f384622d4968efd67c9dd3d7cdd3855", + "evidence/AUDIT-LOCAL.json": "ad7562a9b58a4ea4ab5398f82d4274d99a3969865bdd30e135e80bac3ceb5b84", + "evidence/BIT-SUPPLIER-CONTROLS.json": "549c240835fe910d23d17ebceadbeb5cb4c898c07bb51e1b122ff24ce227519c", + "evidence/CLIFFORD-REVIEW.json": "570f97a375f2acf7d133f563c61c0a8080e8b0dc67cb0299597609029b81906e", + "evidence/ENTRANCE-CONTROLS.json": "8ab757a8c7224d99f0626b551f8d55167e2f22c43e6f58c0b02a9ab43d5f2c65", + "evidence/GLOBAL-PREFIX.json": "ac3b569ec9013ba8ae24a3a5d97e902249f3d579c045a3b9c4867cabd44c70fc", + "evidence/IDLE-REMAINDER-FRAMES.json": "dca4eac71c7b5d5fa89f743b37d364c6c2d2097b4187d8c719f29922e10aac9c", + "evidence/INDEPENDENT-LOCAL-REPLAY.json": "2bcb926b433bfc223997efd5d7212899c850a1ddb204269589b1f3a7151d82c6", + "evidence/INDEPENDENT-T16.json": "c9bf9894254223863056f6588176774d9dfc68e7654e454d31340a74c0270341", + "evidence/LOCAL-CHECKS.json": "654ca95a7f9af260d088f29c1791686f54f66cbbe735b9ea2fd5114b377727aa", + "evidence/NATIVE-STEPS.json": "b31c5847a9fb317c09bf9ea2e4b40d0613a0dc7aa3441441105ad8aad6c7e437", + "evidence/OWNERS-AND-PROFILE.json": "2e2889604e2d944dcd6b42d3006cd6ff35feef779405d58568bab081ae9ebadc", + "evidence/PORTABLE-STEPS.json": "a9ce78fde0db630557305bbd1f629649d8bbe0df65c390ae0a9a08279cb69623", + "evidence/PREFIX-AND-INVOICE.json": "8215609ea123187eae656d92cca1afeebceceb286b6d3474d1688ba1952a0681", + "evidence/PREPARATION.json": "4a6f3ee54f0296e2dcfef6349c5d1c7a748bd82a28a9df21d063ee1d1bd52a45", + "evidence/REPLAY-LOGS.json.gz": "24ba73b37f9cf8a9ff99479ad8b64d0a11298aaf892399769f5790a881a0c1b2", + "evidence/REPLAY.json": "247ecc5482230bb60433b595a822431d3400de41f6a34a7d3d29e940ffdc64ef", + "evidence/RESULT.json": "ca2230332afe446ee95d7803167ff9f373d1041b182e4de9f4f02e31fd3177f0", + "evidence/STAGES.json": "b9b423babdd1d44abf014af323770f810ffdfee62760aa147bb77a4987f63979", + "evidence/UPSTREAM-COMPATIBILITY.json": "849a7a5955f230c97c1538f7d81a7b18da53f3ee82997137d18f7fc8cc869333", + "evidence/WRAPPER-CHECKS.json": "f2a005b54bea64d66633d8a82d0454348172da3b88361081a72126bf1d51744d", + "independent/all_t_bound.py": "a536866350b343ee0ece96f97021ea38d9164c6d6d557e54cf060935b9e129af", + "verify.py": "4359c9c828714887c026aefc42ab93ee89d8aa8b1553e4d66b90c11ddc677647" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/NOTICE.md new file mode 100644 index 0000000000..af0170afc2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/NOTICE.md @@ -0,0 +1,8 @@ +Apache-2.0. Prepared for Thomas DiFiore with substantial OpenAI Codex assistance. + +* The preceding `k8-coordinated-owners`, `k8-eight-ends`, `k8-eight-ends-t16`, and `k8-three-demotions` packages supply the frozen constructions, owner slots, drivers, searches, and all retained source notices. +* PR1111 by seslly / shipstuff, commit `381831ea554ea983e16224dabed8921b7d0ffdbc`, introduced the group-635 entrance-demotion lead. Its public PR description was consulted; no code or payload from that PR is consumed. The group-635 idea is not original to this package. This package composes it with two other groups, the eight-endpoint word, a joint frame refit, and its preceding T16 assignment. Credit also PR664's promotion mechanism and descendants. +* The frame model derives from PR864 (navinor / Claude), as adapted and pinned in `../k8-eight-ends`. The new joint searches treat entrance labels as variables in the same frame graph and retain the scalar/cone constraints. Floating solver output is nomination data only. +* Retain PR1018 and Rohan Arun's PR987 scalar-word lineage, PR1030's endpoint lead, Hao Yan / FanPUYen's PR858 T16 controller and independent checker, PR870/1074 admission work, PR942 by jon314159 and chafreaky's PR795/890 signed prices, and PR589's bit supplier. Their full dependency notices and source hashes remain in the preceding packages. +* All global admission engines are unchanged. The exact bound adapts the preceding signed-dual proof with the new pinned local profile, using the same two rational arithmetic engines. +* No claim of unconditional theorem certification, full Lean proof, or exact optimality of the floating discovery searches is made. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/OWNERS.json.gz new file mode 100644 index 0000000000..e1ae9826d4 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/PARENT-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/PARENT-PINS.json new file mode 100644 index 0000000000..bd7ca6bbf5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/PARENT-PINS.json @@ -0,0 +1,18 @@ +{ + "t16/parent16/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "t16/parent16/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "t16/parent16/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "t16/parent16/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "t16/parent16/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "t16/parent16/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "t16/parent16/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "t16/parent16/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "t16/parent16/complex-global/base/split-centres/GLOBAL-TEMPLATE.json.gz": "a179dad87651aba340a5a8ddbcd86a8e757cad87b8a1f8bad48106fbecd38518", + "t16/parent16/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "t16/parent16/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "t16/parent16/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "t16/parent16/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "t16/global8/base/split-centres/GLOBAL-TEMPLATE.json.gz": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "t16/global8/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "t16/global8/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/PLAN.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/PLAN.json.gz new file mode 100644 index 0000000000..c7d39df72e Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/PLAN.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/PROOF.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/PROOF.md new file mode 100644 index 0000000000..bffbec574e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/PROOF.md @@ -0,0 +1,19 @@ +# Equal-inventory interface substitution and exact admission + +Start with the frozen eight-endpoint R480 k8 word. Helpers 603, 605, 606, 607; 611, 613, 614, 615; and 635, 637, 638, 639 enter dimension-four subspaces of their former dimension-five entrances. All twelve end at dimension nine. The literal recipe changes twelve starts, 61 A-frame annotations, 114 B-frame annotations, and two early-cleanup frames. The scalar instructions and coefficients, target interfaces, centre carriers, cleanup instructions, and helper endpoints are unchanged. + +The local profile is `{1:2364,2:498,3:412,4:130,5:82,8:8}`, of rank mass 5,590. Relative to `../k8-three-demotions`, the change is `−8 H1 + 4 H2`. The width inventory remains `{4:44,5:44,7:38,8:114,9:240}`, of total width 3,734. Thus the added rank-two children conserve rank mass while reducing the moment at every exponent parameter strictly between zero and one: `4·2^(1−b) − 8 < 0`. + +The independent audit reconstructs exact rational scalar maps on all 704 arbitrary columns in the forward and dual orientations. It checks entrance-zero response, exclusion from pre-wrappers, monotone frame chains, ordered centre/port compatibility, and every low-end inverse-row and dirt-column cone. Fresh native replay separately reconstructs programs, ledgers, adapters, and every directed phase check. The 27 semantic mutants cover twelve restored old starts, twelve undersized first-use frames, a false profile, a false inventory, and a wrong scalar target contribution. + +For hosting, restore the four width-four roles from group 619 and widen the four group-635 roles to width five. Within each call, exchange the corresponding helper identities between slots of equal new width. Every slot retains its owner, copy, family, time, offset, and occupied width. This preserves literal occupancy and complete-call family distinctness. The frozen preparation receipt records the eight-entry permutation in helper-local indices. Native identities and orientation program hashes are rebound to the new word before admission. + +The global profile is `{1:340776,2:71712,3:59328,4:18720,5:11808,8:1152,24:1,48:4918}`: 144 copies of the local profile plus idle `{1:360,24:1,48:4918}`. Rank mass is 1,041,408 and deficit is `73·14336 − 1041408 = 5120`. Full global admission independently rechecks actual event windows, charts, occupancies, finite invoice, bit supply, and the exact outer construction. All 69 assembly, twelve bit, fifteen controller, and six independent T16 rejection controls pass, and all 47 outer inequalities are strict. + +## Fixed-family ceiling + +Only the local profile changes in the preceding signed-dual argument. The helper inventory and bin capacities, all 1,163 enumerated patterns, signed prices, idle rank mass 14,778 per replica, signed price −3,568, and credit 20,850 are unchanged. The formal equality idle profile is `I1/T = 834/37`, `I48/T = 11374/37`. Two exact arithmetic engines certify both moment endpoint signs and the strict supporting inequalities for the new profile. The resulting 18-decimal-grid upper bound is 0.001675568675201533. + +This is a relaxation over all positive integer replica counts for the fixed local word and inventory. It is not a physical T37 construction, nor a bound on other words, mixed suppliers, banks, split helpers, or different recursion geometries. + +The unchanged upstream formatter retains historical U8/PR799 prose labels in some receipts. The raw-word hash, canonical semantic identities, frozen PLAN, and this package's CLAIM identify the actual admitted supplier. All inherited conditional hypotheses remain explicit in CLAIM; these finite checks are not a proof of the full multiplication theorem. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/README.md new file mode 100644 index 0000000000..9f122d8223 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/README.md @@ -0,0 +1,36 @@ +# Joint entrance choices on the eight-endpoint k8 word + +The admitted conditional value is **κ = 0.001675560947524449**, **0.0262249453%** above the preceding three-demotion result, 0.001675121647789207. + +The search now tests all 64 subsets of the six individually selected dimension-five entrance reductions. The best tested composition uses groups 603, 611, and 635. Relative to the preceding package, group 619 is restored and group 635 enters the four-dimensional space `[298,170,102,30]`. Joint frame refitting replaces eight local rank-one children with four rank-two children. The occupied-width inventory is unchanged, so an exact permutation transfers the existing whole-helper slots; there is no new packing optimization in the admitted witness. + +The paid local profile is `{1:2364,2:498,3:412,4:130,5:82,8:8}`. The achieved value is distinct from the new exact fixed-family all-replica grid upper bound, **0.001675568675201533**. That bound does not cover different local words or recursion geometries. + +Fresh native replay checks all 704 columns in both orientations and 2,904 directed phase checks. The independent local audit, 27 local semantic controls, unchanged global admission engines, all 102 global negative controls, and 47 strict outer inequalities pass. See `CLAIM.json`, `PROOF.md`, and `evidence/`. + +The inherited all-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape, analytic-transfer, and bit H1–H5 assumptions remain. Scalar operations, coefficients, and order are unchanged. This is an incremental conditional result, not a new scalar circuit topology or an unconditional multiplication theorem. + +## Reproduce + +Use Python 3.11+, a C++ compiler, and Boost headers. Choose a new output directory outside the repository. No optimization solver runs during verification. + +```sh +CPLUS_INCLUDE_PATH=/path/to/boost python -B research/k8-joint-entrances/verify.py \ + --base "$BASE" --work /absolute/new/output-directory +``` + +`BASE` is the original R480 k8 + seven-slot raw word pinned in `../k8-eight-ends/RECIPE.json`. The command rebuilds the preceding T16 witness, applies the literal new recipe, replays the new local word, and runs full strict global admission. As in the predecessor, explicitly completed replays can be supplied with `--parent-from /path/to/completed-t16-wrapper` and `--native-from /path/to/completed-new-native-replay`; the verifier checks every consumed parent file and the native semantic identities and reruns local controls and complete global admission. + +The global driver is the unmodified `../k8-three-demotions/run_global.py`. All global admission, controller, invoice, arithmetic, mutation, and independent-window engines remain byte-identical to the credited PR1074 files pinned in `../k8-eight-ends-t16`. + +## Search scope + +`discovery/` records nominations separately from the admitted claim. The 64-subset search is exhaustive only over the one selected entrance space for each of the six groups. The subsequent same-dimension rotation and joint entrance/frame searches examine broader choices; their floating optimization results are not exact optimality certificates. The fixed-family bound in `evidence/ALL-T-BOUND.json` is a separate exact proof about the final frozen word and inventory. + +There were 354 additional same-dimension rotation trials, with no improving nomination. A joint search over 68 independent helper entrances and their gate frames also retained the same profile. A further joint dimension/packing model allowed 56 helpers to choose dimension four or five individually, with fractional aggregate packing. Its floating mixed-integer solver found a different local inventory and profile but the same relaxed exponent to numerical precision. These results narrow this tested family; they do not rule out a different scalar word or geometry. + +A broader formulation over 192 entrances produced a 1,806,543-column LP. The first solve was stopped after more than ten minutes without a returned solution; a second method reached its 180-second solver limit with no primal solution. This attempt is inconclusive and supplies neither a better witness nor an impossibility proof. Its scripts and traces are retained separately. + +To rerun discovery, give each script an external `--work` directory. Run `search_compositions.py`, copy its `best-composition.json.gz` to `candidate.json.gz` in that directory, and then run `interface_census.py`. The rotation and joint search scripts consume that candidate and census. SciPy is needed for discovery, but not for the frozen verification command above. `prepare_equal_inventory.py` accepts `--native` and `--out` and binds a completed native word to slots only when the old and new width inventories agree. + +PR1111 by seslly/shipstuff supplied the group-635 entrance-demotion lead. This contribution composes that lead with two further entrance groups, the eight rank-seven endpoints, refitted frames, and the existing T16 owner construction. It does not claim to originate the group-635 demotion. See `NOTICE.md` for the retained sources and AI-assistance disclosure. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/RECIPE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/RECIPE.json new file mode 100644 index 0000000000..592f32405d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/RECIPE.json @@ -0,0 +1,3073 @@ +{ + "input_content_sha256": "f43271fcabcc9ebb3b9540610574ba463bba4440e7a868bd92e8ea348081d3ec", + "output_content_sha256": "1f66640293bde6c7e1df2d4ee0004c2de2327887a98575c5d975d6a14a8b7e74", + "A": [ + [ + 616, + [], + [ + 148 + ] + ], + [ + 758, + [], + [ + 13 + ] + ], + [ + 900, + [], + [ + 341 + ] + ], + [ + 1042, + [], + [ + 453 + ] + ], + [ + 1184, + [], + [ + 155 + ] + ], + [ + 1266, + [ + 472 + ], + [ + 472, + 6 + ] + ], + [ + 1270, + [ + 56 + ], + [ + 56, + 6 + ] + ], + [ + 1274, + [ + 62 + ], + [ + 56, + 6 + ] + ], + [ + 1278, + [ + 478 + ], + [ + 472, + 6 + ] + ], + [ + 1420, + [ + 296 + ], + [ + 296, + 6 + ] + ], + [ + 1424, + [ + 168 + ], + [ + 168, + 6 + ] + ], + [ + 1428, + [ + 174 + ], + [ + 168, + 6 + ] + ], + [ + 1432, + [ + 302 + ], + [ + 296, + 6 + ] + ], + [ + 1574, + [ + 104 + ], + [ + 104, + 6 + ] + ], + [ + 1578, + [ + 496 + ], + [ + 496, + 6 + ] + ], + [ + 1582, + [ + 502 + ], + [ + 496, + 6 + ] + ], + [ + 1586, + [ + 110 + ], + [ + 104, + 6 + ] + ], + [ + 1728, + [ + 484 + ], + [ + 484, + 24 + ] + ], + [ + 1732, + [ + 122 + ], + [ + 98, + 24 + ] + ], + [ + 1736, + [ + 98 + ], + [ + 98, + 24 + ] + ], + [ + 1740, + [ + 508 + ], + [ + 484, + 24 + ] + ], + [ + 1882, + [ + 186 + ], + [ + 162, + 24 + ] + ], + [ + 1886, + [ + 290 + ], + [ + 290, + 24 + ] + ], + [ + 1890, + [ + 314 + ], + [ + 290, + 24 + ] + ], + [ + 1894, + [ + 162 + ], + [ + 162, + 24 + ] + ], + [ + 2036, + [ + 44 + ], + [ + 44, + 30 + ] + ], + [ + 2040, + [ + 436 + ], + [ + 426, + 30 + ] + ], + [ + 2044, + [ + 426 + ], + [ + 426, + 30 + ] + ], + [ + 2048, + [ + 50 + ], + [ + 44, + 30 + ] + ], + [ + 2190, + [ + 372 + ], + [ + 362, + 30 + ] + ], + [ + 2194, + [ + 234 + ], + [ + 234, + 30 + ] + ], + [ + 2198, + [ + 244 + ], + [ + 234, + 30 + ] + ], + [ + 2202, + [ + 362 + ], + [ + 362, + 30 + ] + ], + [ + 2344, + [ + 491 + ], + [ + 491, + 30 + ] + ], + [ + 2348, + [ + 115 + ], + [ + 109, + 30 + ] + ], + [ + 2352, + [ + 109 + ], + [ + 109, + 30 + ] + ], + [ + 2356, + [ + 501 + ], + [ + 491, + 30 + ] + ], + [ + 2498, + [ + 179 + ], + [ + 173, + 30 + ] + ], + [ + 2502, + [ + 301 + ], + [ + 301, + 30 + ] + ], + [ + 2506, + [ + 307 + ], + [ + 301, + 30 + ] + ], + [ + 2510, + [ + 173 + ], + [ + 173, + 30 + ] + ], + [ + 2652, + [ + 37 + ], + [ + 37, + 24 + ] + ], + [ + 2656, + [ + 443 + ], + [ + 419, + 24 + ] + ], + [ + 2660, + [ + 419 + ], + [ + 419, + 24 + ] + ], + [ + 2664, + [ + 61 + ], + [ + 37, + 24 + ] + ], + [ + 2806, + [ + 379 + ], + [ + 355, + 24 + ] + ], + [ + 2810, + [ + 227 + ], + [ + 227, + 24 + ] + ], + [ + 2814, + [ + 251 + ], + [ + 227, + 24 + ] + ], + [ + 2818, + [ + 355 + ], + [ + 355, + 24 + ] + ], + [ + 2960, + [ + 233 + ], + [ + 233, + 6 + ] + ], + [ + 2964, + [ + 361 + ], + [ + 361, + 6 + ] + ], + [ + 2968, + [ + 367 + ], + [ + 361, + 6 + ] + ], + [ + 2972, + [ + 239 + ], + [ + 233, + 6 + ] + ], + [ + 3114, + [ + 425 + ], + [ + 425, + 6 + ] + ], + [ + 3118, + [ + 49 + ], + [ + 49, + 6 + ] + ], + [ + 3122, + [ + 55 + ], + [ + 49, + 6 + ] + ], + [ + 3126, + [ + 431 + ], + [ + 425, + 6 + ] + ], + [ + 3268, + [ + 313 + ], + [ + 313, + 6 + ] + ], + [ + 3272, + [ + 161 + ], + [ + 161, + 6 + ] + ], + [ + 3276, + [ + 167 + ], + [ + 161, + 6 + ] + ], + [ + 3280, + [ + 319 + ], + [ + 313, + 6 + ] + ] + ], + "B": [ + [ + 372, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 373, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 374, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 375, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 376, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 377, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 378, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 379, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 380, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 381, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 382, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 383, + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + 396, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 397, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 398, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 399, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 400, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 401, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 402, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 403, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 404, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 405, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 406, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 407, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 408, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 409, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 410, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 411, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 412, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 413, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 414, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 415, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 416, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 417, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 418, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 419, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 536, + [ + 256, + 144, + 80, + 6 + ], + [ + 256, + 144, + 80, + 6, + 1 + ] + ], + [ + 537, + [ + 448, + 32, + 8, + 6 + ], + [ + 448, + 32, + 8, + 6, + 1 + ] + ], + [ + 558, + [ + 465, + 32, + 9, + 6 + ], + [ + 449, + 32, + 16, + 9, + 6 + ] + ], + [ + 579, + [ + 289, + 208, + 9, + 6 + ], + [ + 289, + 160, + 112, + 9, + 6 + ] + ], + [ + 580, + [ + 265, + 144, + 81, + 40, + 6 + ], + [ + 265, + 193, + 40, + 6 + ] + ], + [ + 599, + [ + 272, + 185, + 104, + 6 + ], + [ + 272, + 176, + 97, + 9, + 6 + ] + ], + [ + 600, + [ + 313, + 169, + 104, + 6 + ], + [ + 304, + 160, + 97, + 9, + 6 + ] + ], + [ + 601, + [ + 313, + 144, + 73, + 6 + ], + [ + 273, + 144, + 73, + 40, + 6 + ] + ], + [ + 621, + [ + 289, + 209, + 8, + 6 + ], + [ + 289, + 176, + 97, + 8, + 6 + ] + ], + [ + 642, + [ + 392, + 80, + 56, + 6 + ], + [ + 392, + 80, + 56, + 6, + 1 + ] + ], + [ + 662, + [ + 280, + 216, + 49, + 6 + ], + [ + 257, + 193, + 40, + 25, + 6 + ] + ], + [ + 663, + [ + 401, + 81, + 56, + 6 + ], + [ + 392, + 72, + 33, + 25, + 6 + ] + ], + [ + 683, + [ + 336, + 137, + 40, + 6 + ], + [ + 257, + 137, + 81, + 40, + 6 + ] + ], + [ + 684, + [ + 313, + 168, + 105, + 6 + ], + [ + 297, + 168, + 105, + 16, + 6 + ] + ], + [ + 1098, + [ + 270, + 142, + 66, + 36, + 30, + 1 + ], + [ + 271, + 143, + 67, + 37, + 30 + ] + ], + [ + 1099, + [ + 264, + 136, + 68, + 34, + 30, + 1 + ], + [ + 265, + 137, + 69, + 35, + 30 + ] + ], + [ + 1100, + [ + 258, + 130, + 78, + 40, + 30, + 1 + ], + [ + 259, + 131, + 79, + 41, + 30 + ] + ], + [ + 1101, + [ + 260, + 132, + 72, + 46, + 30, + 1 + ], + [ + 261, + 133, + 73, + 47, + 30 + ] + ], + [ + 1232, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ], + [ + 256, + 128, + 64, + 34, + 18, + 10, + 6, + 1 + ] + ], + [ + 1235, + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 64, + 34, + 16, + 8, + 6, + 1 + ] + ], + [ + 1238, + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ], + [ + 258, + 130, + 66, + 32, + 18, + 10, + 6, + 1 + ] + ], + [ + 1241, + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ], + [ + 258, + 130, + 66, + 32, + 16, + 8, + 6, + 1 + ] + ], + [ + 1244, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ], + [ + 256, + 130, + 64, + 34, + 16, + 10, + 6, + 1 + ] + ], + [ + 1247, + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ], + [ + 256, + 130, + 66, + 32, + 18, + 8, + 6, + 1 + ] + ], + [ + 1250, + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ], + [ + 258, + 128, + 64, + 34, + 16, + 10, + 6, + 1 + ] + ], + [ + 1253, + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ], + [ + 258, + 128, + 66, + 32, + 18, + 8, + 6, + 1 + ] + ], + [ + 1256, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ], + [ + 258, + 130, + 66, + 34, + 18, + 8, + 6, + 1 + ] + ], + [ + 1259, + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ], + [ + 258, + 130, + 64, + 32, + 18, + 8, + 6, + 1 + ] + ], + [ + 1262, + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ], + [ + 256, + 128, + 66, + 34, + 16, + 10, + 6, + 1 + ] + ], + [ + 1265, + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 10, + 6, + 1 + ] + ], + [ + 1268, + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ], + [ + 256, + 128, + 66, + 34, + 16, + 8, + 4, + 1 + ] + ], + [ + 1271, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 18, + 10, + 4, + 1 + ] + ], + [ + 1274, + [ + 260, + 132, + 68, + 36, + 24, + 2, + 1 + ], + [ + 260, + 132, + 68, + 36, + 20, + 12, + 2, + 1 + ] + ], + [ + 1277, + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ], + [ + 260, + 132, + 64, + 32, + 16, + 8, + 2, + 1 + ] + ], + [ + 1280, + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ], + [ + 258, + 128, + 64, + 34, + 18, + 10, + 4, + 1 + ] + ], + [ + 1283, + [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ], + [ + 260, + 128, + 68, + 32, + 16, + 8, + 2, + 1 + ] + ], + [ + 1286, + [ + 256, + 130, + 64, + 34, + 24, + 4, + 1 + ], + [ + 256, + 130, + 64, + 34, + 16, + 8, + 4, + 1 + ] + ], + [ + 1289, + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ], + [ + 256, + 132, + 68, + 32, + 20, + 12, + 2, + 1 + ] + ], + [ + 1292, + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ], + [ + 258, + 130, + 64, + 34, + 16, + 10, + 4, + 1 + ] + ], + [ + 1295, + [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ], + [ + 258, + 130, + 66, + 32, + 18, + 8, + 4, + 1 + ] + ], + [ + 1298, + [ + 256, + 128, + 64, + 38, + 18, + 12, + 1 + ], + [ + 256, + 128, + 64, + 34, + 18, + 8, + 4, + 1 + ] + ], + [ + 1301, + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ], + [ + 256, + 128, + 66, + 32, + 16, + 10, + 4, + 1 + ] + ], + [ + 1304, + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ], + [ + 256, + 132, + 68, + 36, + 20, + 8, + 2, + 1 + ] + ], + [ + 1307, + [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ], + [ + 256, + 130, + 64, + 32, + 16, + 10, + 4, + 1 + ] + ], + [ + 1310, + [ + 262, + 128, + 70, + 38, + 20, + 10, + 1 + ], + [ + 258, + 128, + 66, + 34, + 16, + 10, + 4, + 1 + ] + ], + [ + 1313, + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ], + [ + 260, + 128, + 64, + 32, + 20, + 8, + 2, + 1 + ] + ], + [ + 1316, + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ], + [ + 256, + 128, + 65, + 33, + 16, + 9, + 5, + 2 + ] + ], + [ + 1319, + [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ], + [ + 256, + 128, + 64, + 32, + 17, + 8, + 4, + 3 + ] + ], + [ + 1322, + [ + 257, + 129, + 65, + 33, + 19, + 10, + 7 + ], + [ + 257, + 129, + 65, + 33, + 17, + 8, + 5, + 2 + ] + ], + [ + 1325, + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ], + [ + 257, + 129, + 64, + 32, + 16, + 9, + 4, + 3 + ] + ], + [ + 1328, + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ], + [ + 257, + 128, + 64, + 33, + 17, + 8, + 4, + 3 + ] + ], + [ + 1331, + [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ], + [ + 257, + 128, + 65, + 32, + 16, + 9, + 4, + 3 + ] + ], + [ + 1334, + [ + 256, + 129, + 64, + 33, + 18, + 11, + 7 + ], + [ + 256, + 129, + 64, + 33, + 16, + 9, + 5, + 2 + ] + ], + [ + 1337, + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ], + [ + 256, + 129, + 65, + 32, + 17, + 8, + 5, + 2 + ] + ], + [ + 1340, + [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ], + [ + 257, + 129, + 64, + 33, + 16, + 8, + 4, + 3 + ] + ], + [ + 1343, + [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ], + [ + 257, + 129, + 65, + 32, + 17, + 9, + 5, + 2 + ] + ], + [ + 1346, + [ + 256, + 128, + 64, + 33, + 24, + 5, + 2 + ], + [ + 256, + 128, + 64, + 33, + 17, + 9, + 5, + 2 + ] + ], + [ + 1349, + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ], + [ + 256, + 128, + 65, + 32, + 16, + 8, + 4, + 3 + ] + ], + [ + 1352, + [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ], + [ + 256, + 129, + 65, + 33, + 17, + 9, + 4, + 3 + ] + ], + [ + 1355, + [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ], + [ + 256, + 129, + 64, + 32, + 16, + 8, + 4, + 3 + ] + ], + [ + 1358, + [ + 257, + 128, + 65, + 33, + 24, + 4, + 3 + ], + [ + 257, + 128, + 65, + 33, + 16, + 8, + 4, + 3 + ] + ], + [ + 1361, + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ], + [ + 257, + 128, + 64, + 32, + 17, + 9, + 4, + 3 + ] + ], + [ + 1364, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ], + [ + 257, + 128, + 65, + 33, + 16, + 9, + 5, + 3 + ] + ], + [ + 1367, + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 5, + 3 + ] + ], + [ + 1370, + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 5, + 3 + ] + ], + [ + 1373, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ], + [ + 256, + 129, + 64, + 32, + 16, + 9, + 5, + 3 + ] + ], + [ + 1376, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 5, + 3 + ] + ], + [ + 1379, + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ], + [ + 256, + 128, + 65, + 32, + 16, + 9, + 5, + 3 + ] + ], + [ + 1382, + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 5, + 3 + ] + ], + [ + 1385, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ], + [ + 257, + 129, + 65, + 32, + 17, + 8, + 5, + 3 + ] + ], + [ + 1388, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ], + [ + 256, + 129, + 64, + 33, + 16, + 8, + 5, + 3 + ] + ], + [ + 1391, + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 5, + 3 + ] + ], + [ + 1394, + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 5, + 3 + ] + ], + [ + 1397, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ], + [ + 257, + 128, + 64, + 33, + 16, + 8, + 5, + 3 + ] + ], + [ + 1834, + [ + 257, + 192, + 33, + 24, + 4, + 2 + ], + [ + 257, + 128, + 64, + 33, + 24, + 4, + 2 + ] + ], + [ + 1835, + [ + 257, + 192, + 33, + 24, + 4, + 2 + ], + [ + 257, + 128, + 64, + 33, + 24, + 4, + 2 + ] + ], + [ + 1838, + [ + 257, + 138, + 74, + 33, + 24, + 6 + ], + [ + 257, + 128, + 64, + 33, + 18, + 10, + 6 + ] + ], + [ + 1839, + [ + 257, + 138, + 74, + 33, + 24, + 6 + ], + [ + 257, + 128, + 64, + 33, + 18, + 10, + 6 + ] + ] + ], + "start_extra": [ + [ + "603", + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + "605", + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + "606", + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + "607", + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + "611", + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + "613", + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + "614", + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + "615", + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + "635", + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + "637", + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + "638", + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ], + [ + "639", + [ + 298, + 170, + 102, + 30, + 1 + ], + [ + 298, + 170, + 102, + 30 + ] + ] + ], + "early_cleanup": [ + [ + 83, + [ + 386, + 67, + 33, + 24, + 6 + ], + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ], + [ + 104, + [ + 386, + 74, + 40, + 26, + 6, + 1 + ], + [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ] + ] + ], + "report": { + "R": 480, + "borrowed_output_pairs": 56, + "centre_ranks": [ + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8 + ], + "cst": 64, + "first_load_join_counts": { + "4": 64 + }, + "h": 9, + "local_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "local_rank_mass": 5590, + "m": 73, + "scope": "Clean scalar identity and all literal monotone local frames only; arbitrary-dirt compensation, entrance kernels, exact phase recipes, and global hosting/pricing are not yet certified.", + "selected_load_join_counts": { + "6": 64 + }, + "selected_partitions": [ + 0, + 0 + ], + "source_and_helper_cleanup_exact_on_clean_columns": true, + "source_columns_exact": 112, + "status": "EXACT_CLEAN_OWN_Y_EARLY_CENTER_WORD_NOT_ADMITTED", + "tri_join_counts": {}, + "v": 112, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/SEARCH.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/SEARCH.json new file mode 100644 index 0000000000..d97c030823 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/SEARCH.json @@ -0,0 +1,85 @@ +{ + "status": "COMPLETE_COMPOSITION_ROTATION_AND_FIXED_DIMENSION_JOINT_SEARCH", + "composition_subsets": 64, + "composition_scope": "One individually selected dimension-four subspace for each of six former dimension-five groups; all subsets, not all possible spaces or scalar circuits.", + "chosen_groups": [ + 603, + 611, + 635 + ], + "same_dimension_rotation_trials": 354, + "rotation_improvements": 0, + "joint_fixed_dimensions": { + "source_variables": 68, + "scope": "Source nodes become variables over all subspaces of their fixed old dimensions inside backward frame ceilings; exact rational endpoint replay remains separate.", + "new_profile_improvement": false, + "initial_trace_failure": "First run stopped on numpy int64 JSON serialization after one solved component; converted the trace field to a Python int and reran completely.", + "components": 138, + "fractional_components": 0 + }, + "global_variable_dimension_search": { + "status": "INCONCLUSIVE_NO_NEW_NOMINATION", + "source_variables": 192, + "source_domains": { + "2": 112, + "5": 24, + "374": 56 + }, + "local_frame_variables": 2395, + "lp_columns": 1806543, + "lp_rows": 293554, + "lp_nonzero_coefficients": 3840348, + "widths": [ + 4, + 5, + 6, + 7, + 8, + 9 + ], + "attempts": [ + { + "method": "highs", + "outcome": "Stopped by the researcher after more than ten minutes without a returned LP solution; no bound or primal candidate retained." + }, + { + "method": "highs-ipm", + "solver_time_limit_seconds": 180, + "outcome": "HiGHS time limit reached; primal_status None. No integer local solve or physical admission attempted." + } + ], + "scope": "This is an unfinished optimization attempt, not a mathematical infeasibility result. The unchanged scalar word, endpoints, current eligibility census and backward frame ceilings still limit the family. The admitted kappa is unchanged." + }, + "admission": "Fresh native five-stage replay and unchanged strict T16 engines. Exact slot permutation preserves inventory and occupied widths; no owner optimizer is used.", + "numeric_scope": "All discovery relaxed exponents and LP results are floating nominations. CLAIM.json is the admitted value. No exact optimality claim for discovery solvers.", + "restricted_joint_dimension_packing_search": { + "status": "COMPLETED_FLOATING_MILP_NOMINATION_NO_IMPROVEMENT", + "source_variables": 56, + "source_dimensions": [ + 4, + 5 + ], + "local_x_integer": true, + "aggregate_packing_fractional": true, + "variables": 40339, + "equality_constraints": 29568, + "lp_fractional_x": 32, + "local_profile": { + "1": 2366, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "width_inventory": { + "4": 42, + "5": 46, + "7": 38, + "8": 114, + "9": 240 + }, + "floating_kappa_relaxed": "0.0016755686752014923", + "scope": "The solver reported an optimal integer local assignment within its floating tolerances, with fractional packing allowed. The resulting relaxed exponent agrees with the admitted word ceiling to numerical precision. It is not an exact optimality proof or admitted physical supplier." + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/SOURCE-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/SOURCE-PINS.json new file mode 100644 index 0000000000..140e9a1846 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/SOURCE-PINS.json @@ -0,0 +1,267 @@ +{ + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-k492-owner-repair/vendor/multicold/code/assemble.py": "3fedbccb09d469f8ee366b4302e51448de6d25793a78a12c5f9a8d9667a755eb", + "research/complex-k492-owner-repair/vendor/multicold/code/assembly_controls.py": "a0f2349ba8fe8404b8b76c869f12dd7e250a775b2e05b3c9c00e6889ad4c8a45", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_allcold.py": "7950e5c01488a9146bdbaf19ab4fd0c33cd25a4d63fb56ef995ef2e45ac7ec1a", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_kernel_controls.py": "5100459211f43ba048bf82c3942bbedb8b224272b24722a14f0dcd808a38aafa", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-k492-owner-repair/vendor/multicold/code/bind_providers_portable.py": "01e62fee1f1dcf1b7b34338d555dacd5cd1d7d10d6b9a605d0913d959f8c7ecf", + "research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-k492-owner-repair/vendor/multicold/code/build_four_portable.py": "417b1dc4dca485dfbbaa820e552cae9bf3932bbace6ea16ce93aa0590c3c184e", + "research/complex-k492-owner-repair/vendor/multicold/code/build_multicut_kernels.py": "6ab3d73f81d5b2fb884a93a336ef1940e118d419d425b3356bab3b97f774c9aa", + "research/complex-k492-owner-repair/vendor/multicold/code/emit_allcold.py": "9d6c75af63fa8f53973734ccb1eef983511f4337ce644436a693fd8fb9ef8fe2", + "research/complex-k492-owner-repair/vendor/multicold/code/invoice_allcold.py": "ff8fee775ad97926454f3ad1183f8e05de654e276150e579ce612f3eb2f98d44", + "research/complex-k492-owner-repair/vendor/multicold/code/phase_timing_controls.py": "dcc4adfd139d6f65a88bdc6d183ea3777d4e4f688d2169dd41b54964f05591bb", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py": "8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py": "cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py": "e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py": "08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py": "0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py": "66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/emit_allcold.py": "fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py": "a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_controls_atc.py": "63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/phase_timing_controls.py": "1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/witness.py": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "research/gauge44-leaver8/MANIFEST.json": "7c9637f06798b144274458efa145f701c61282f8b3aab1c0c900b53bdfbe1f0d", + "research/gauge44-slots/MANIFEST.json": "9a6f239b1618a43262e56735a99cc59b6f5a6e8816a794a34413e89cc33f4976", + "research/gauge44-slots/code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "research/gauge44-slots/code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "research/gauge44-slots/code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "research/gauge44-slots/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/gauge44-slots/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/gauge44-slots/code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "research/gauge44-slots/code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "research/gauge44-slots/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/gauge44-slots/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/gauge44-slots/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/gauge44-slots/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/gauge44-slots/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "research/gauge44-slots/construction/slots/SLOT-PINS-k8.json": "55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2", + "research/gauge44-slots/construction/slots/verify_slots.py": "bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be", + "research/gauge44-slots/data/OWNERS.json.gz": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a", + "research/gauge44-slots/data/PLAN.json": "1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08", + "research/gauge44-slots/data/SPEC.json": "8e95ae8087124189cbd366d0e9d1c5ebededff536ff3501927b4b2a2e8dac70e", + "research/gauge44-slots/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/gauge44-slots/hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "research/gauge44-slots/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/gauge44-slots/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/gauge44-slots/verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "research/gauge44-slots/verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "research/k8-eight-ends-t16/CLAIM.json": "4ba568cb88f86a87a6c35df444b44b6f8c006ece6351279934ede873f5d61eab", + "research/k8-eight-ends-t16/MANIFEST.json": "f1f5c145121485f644a134873069fc465f312e9144ab43975fa95f599ce06f59", + "research/k8-eight-ends-t16/NOTICE.md": "a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0", + "research/k8-eight-ends-t16/OWNERS.json.gz": "a4c79743dcc93c4260fae00b3324b97983fcd56af8bff5414243d7258a4bc97b", + "research/k8-eight-ends-t16/PLAN.json.gz": "6561ecb8db5e24dd534d0f940f91830691ab375f925b20665ca0f019718e2b7a", + "research/k8-eight-ends-t16/PROOF.md": "7084e8a9fedd0d5902e95500da70982343fa725d8b68c2c3210a7b0a7bb2e664", + "research/k8-eight-ends-t16/README.md": "7aa1a4f5348ed9408cdebb2525eaabe50776259b939d7d49f6845503f3c585c3", + "research/k8-eight-ends-t16/SEARCH.json": "bf8efc27b2ca95f4bd15ebc719d2794a0e5d2edf26fc5b4cffc8c18dcb7f6d4a", + "research/k8-eight-ends-t16/SOURCE-PINS.json": "07515a4634303b85a54b570079f0efb373b36d586c72f7b023df3d2f495ad5a3", + "research/k8-eight-ends-t16/SPEC.json": "30d4dcc96f1361fcee1562681291763f6ee8c08fb1f93da1ea4fd2a42a1d0b5d", + "research/k8-eight-ends-t16/UPSTREAM.json": "23493f74fc09ac50442d9d83b7626d4760cfa24c785ca1d96fde8175bdd39fa6", + "research/k8-eight-ends-t16/discovery/ALIASES-REFRAMED.json": "a65d322ee757815e0de08e1f3c5796b5add8c744e1c3df292af917966b09adf0", + "research/k8-eight-ends-t16/discovery/BANK-STAGES.json": "ad8a80986982b67481ed4785663d83f56516542a79dc02c9ff50c991173c2771", + "research/k8-eight-ends-t16/discovery/FINAL-SEARCH.json": "ed936c49a0c15d69388b03f7c71bee50b2726be353f8dd52c6dcc56b1c12e1bd", + "research/k8-eight-ends-t16/discovery/HELPER-ALIASES.json": "ad1e0ffa923ce6632b2b86ad00ab004b5fc28ecd1d186e3c55727d1d6e834d73", + "research/k8-eight-ends-t16/discovery/PROMOTION-GROUPS.json": "221e05ae8c2b32594490b98ca12a96fc301789d1d80752c1d5f168469f8f8c07", + "research/k8-eight-ends-t16/discovery/PROMOTION-SCREEN.json": "6b5799744b7abbf4182ad594ede3984123ec559dfed1c1f50ad4f005ce713390", + "research/k8-eight-ends-t16/discovery/RETIRABLE-HELPERS.json": "3670ce299d538c4215fab08e88e7553903dfc595b756bcbc157178b0dc913159", + "research/k8-eight-ends-t16/discovery/SWAP-SEARCH.json": "70901cb74e475b35e0cffe99fbdae6ed74e5d315b92fdf900ef3a6ef7e542258", + "research/k8-eight-ends-t16/discovery/bank_screen.py": "b6c208ab449a9371bc812a19ed13edd8121f3f042769739fab9f964959a30b78", + "research/k8-eight-ends-t16/discovery/columns12-SEARCH.json.gz": "ee6f2925af9fc0dae9c2c511a35e34fe3d9983fb2df6b14de144d1166bba495a", + "research/k8-eight-ends-t16/discovery/columns12.log.gz": "7056db81c9131f484f1b09931bd3a722fa78e03e8e5898645da2eea3df75638b", + "research/k8-eight-ends-t16/discovery/columns144-SEARCH.json.gz": "b07b6a6dd29ec3cb03fa3827767e674b4ea06b3f2a555ba332f2dcb88ff918f9", + "research/k8-eight-ends-t16/discovery/columns144.log.gz": "bcf0b3ca6bd12a9032bfd27231e5a4efe2dd3b0edf874c9a01d0ba9dc8a3889d", + "research/k8-eight-ends-t16/discovery/columns24-SEARCH.json.gz": "9049ac77892a20aeeb30ccbf2a703c2b89cdbacf4f8f68a391cae10552c948b1", + "research/k8-eight-ends-t16/discovery/columns24.log.gz": "6aedcc3e39ee3ee8d2f9d4f33fd0107a1dec002323a6bf5e7e29308beafd3f91", + "research/k8-eight-ends-t16/discovery/columns48-SEARCH.json.gz": "adafcb5f6a7169a01a71220ea7ac94b389884112d00b1e9083961d69e4bbe467", + "research/k8-eight-ends-t16/discovery/columns48.log.gz": "0d69973436734bdce8399377f617dc728f099c1da237bdb829bf1ddf20ca4c4e", + "research/k8-eight-ends-t16/discovery/columns48b-SEARCH.json.gz": "fffcdb5b4f3679ab726a3abf9a8ed97559eec7975ca39ece8a140231efaad130", + "research/k8-eight-ends-t16/discovery/columns48b.log.gz": "c811f9ea49dd8ddf80f54556c7e387172b5ecbd8998ed4bea795e7c2b12121e9", + "research/k8-eight-ends-t16/discovery/double-calls-SEARCH.json.gz": "69df67741eae2afdd3f683f4021f478000dded1322c5820023faa77067ef6a9e", + "research/k8-eight-ends-t16/discovery/double-six-SEARCH.json.gz": "0364f028731baeccbf07953a98fabbf152b3685c5dfdf309d65398946ade9883", + "research/k8-eight-ends-t16/discovery/double-triples-SEARCH.json.gz": "f0040bb71eac1612bf730791a6d32bf13c7a065f0a2772a1149ced7aa71ffc77", + "research/k8-eight-ends-t16/discovery/helper_aliases.py": "3b996c21bf97e950e785c2f7f3ce025ce59c754c3679f97023ababfc5ac0b295", + "research/k8-eight-ends-t16/discovery/make_start.py": "3ba975c7947a3b74959a7e83a580a6f7b36e90d075157bac304a097d20e2cafd", + "research/k8-eight-ends-t16/discovery/promotion_groups.py": "5244da8cffc5f56698c134ca36230bcddbbdea935bc633e4975de50b47d785d2", + "research/k8-eight-ends-t16/discovery/reframe_aliases.py": "5e6342d583a7f3b99c940b6382527a000803eb728267fb4c101371b2b2128d89", + "research/k8-eight-ends-t16/discovery/search_calls.py": "273d3b3e1de5644af5a13a2c7cb18a34a3689b80830b614d7d2ed1da998a90ee", + "research/k8-eight-ends-t16/discovery/search_columns.py": "edbb093207e21ee4301382f00198c6eccb197949068e96c76e46a2e61dc90f82", + "research/k8-eight-ends-t16/discovery/search_uniform_blocks.py": "ab6308d536b37b14996e06b857a4f11433b3cb551444e836eb12ec560b452bb8", + "research/k8-eight-ends-t16/discovery/swap_frames.py": "cd89dd461142788817ac53c041808077d162a4d3bcfebee240307199aebadcc5", + "research/k8-eight-ends-t16/discovery/t16-calls-SEARCH.json.gz": "44df70fe291f3c0ec9ecd01791c02b9b52b29807c576353476542aaf76bbff40", + "research/k8-eight-ends-t16/discovery/t16-pairs-SEARCH.json.gz": "d32f9facc6b68c8dad2c9e4ead26aec913b076d4eb10214d18fa0c4c0b4762fa", + "research/k8-eight-ends-t16/discovery/t16-triples-SEARCH.json.gz": "57dd34fea35dee80e72a007e4cd044c50f00c1c794f03df6b0cbf292f54d8e0e", + "research/k8-eight-ends-t16/discovery/uniform-blocks-SEARCH.json.gz": "9c0a86f5befe738ebcf39badda84314150b060a911e0708d83d29a22423f149c", + "research/k8-eight-ends-t16/evidence/ADMISSION-CONTROLS.json": "6bdc8957237a01c0c5f667e2be2e889b02714fc6bc7a209672d09d5222073059", + "research/k8-eight-ends-t16/evidence/ALL-T-BOUND.json": "dde30a7151248cb9f316fe3816554dc165d050f5216e13797ceb30fe681a3a04", + "research/k8-eight-ends-t16/evidence/ASSEMBLY.json": "52c6af2fc860f7459f0fe3397639caecd5a8edf35ad76d4b22e99d19a79a2831", + "research/k8-eight-ends-t16/evidence/ASYNC-AUDIT.json": "644c15a99e207161a50eca01ddf1c7852e67504517fa4710d5490c3f65a4665a", + "research/k8-eight-ends-t16/evidence/AUDIT-LOCAL.json": "9fd252469f82b5ce5fc2f42b674445dfcac08d769768d00bede6cb5c99e9aa63", + "research/k8-eight-ends-t16/evidence/BIT-SUPPLIER-CONTROLS.json": "17939b88da6b6ad8a8220ed04ddf325679fc2f096c7d197938f10893a87383b4", + "research/k8-eight-ends-t16/evidence/END-CONTROLS.json": "e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135", + "research/k8-eight-ends-t16/evidence/GLOBAL-PREFIX.json": "a6820bfad6fd665c08755fdff98d64069cb94dce337b0881e035a61bcb981cd2", + "research/k8-eight-ends-t16/evidence/IDLE-REMAINDER-FRAMES.json": "2d8b44b6bfe85df299bef25602529867b3316a20e41991786c2063b4c203d34c", + "research/k8-eight-ends-t16/evidence/INDEPENDENT-T16.json": "8311da24ffd4314b7d0857f7669de063fa76679af7fb67009513c513e47da5b3", + "research/k8-eight-ends-t16/evidence/NATIVE-STEPS.json": "782098b0ae9b7a87c75c47edc2e072c25a2c44d3e5417f44bf5f81ecf3d04a6e", + "research/k8-eight-ends-t16/evidence/OWNERS-AND-PROFILE.json": "f20ff5901bfe41cddf5c62d59f8c5361323f7e49b78c17d97173e9db5b3baf0f", + "research/k8-eight-ends-t16/evidence/PARENT-LIFT-RECEIPT.json": "d4705df4d65289e9ced31f625e34559fb26c1a4ca6f74559dd2e31a366b20a74", + "research/k8-eight-ends-t16/evidence/PREFIX-AND-INVOICE.json": "ef4775a3cd6bb1d52b9f43924b9bb1b378d52662c67e373fed20c1d5728caeb5", + "research/k8-eight-ends-t16/evidence/REPLAY-LOGS.json.gz": "81d8a6d5968f206177a4a1bd51baa530f1f9881867ce9925d341066dc1b33f21", + "research/k8-eight-ends-t16/evidence/REPLAY.json": "fa8db7880863b26de2999eab873f9d9b4661da651e17ac2f3b24a888efb1a341", + "research/k8-eight-ends-t16/evidence/RESULT.json": "33708ffb914369d4e25f34824bad32f2962d94027c2710df70fff83def7ec19f", + "research/k8-eight-ends-t16/evidence/STAGES.json": "b46df79356639d66a30fd50ca9d62b067037fb6072865d7399273ab20ccd3b23", + "research/k8-eight-ends-t16/independent/all_t_bound.py": "0cf8498903ef9e2a210886aa8360643b43a41f5bce33e187528835c325e3a059", + "research/k8-eight-ends-t16/vendor/pr1074/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/k8-eight-ends-t16/vendor/pr1074/code/assemble.py": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a", + "research/k8-eight-ends-t16/vendor/pr1074/code/assembly_controls.py": "da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d", + "research/k8-eight-ends-t16/vendor/pr1074/code/audit_allcold.py": "1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc", + "research/k8-eight-ends-t16/vendor/pr1074/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/k8-eight-ends-t16/vendor/pr1074/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/k8-eight-ends-t16/vendor/pr1074/code/emit_allcold.py": "354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e", + "research/k8-eight-ends-t16/vendor/pr1074/code/freeze_spec.py": "5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2", + "research/k8-eight-ends-t16/vendor/pr1074/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/k8-eight-ends-t16/vendor/pr1074/code/invoice_allcold.py": "71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8", + "research/k8-eight-ends-t16/vendor/pr1074/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/k8-eight-ends-t16/vendor/pr1074/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/k8-eight-ends-t16/vendor/pr1074/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/k8-eight-ends-t16/vendor/pr1074/construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "research/k8-eight-ends-t16/vendor/pr1074/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/k8-eight-ends-t16/vendor/pr1074/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/k8-eight-ends-t16/vendor/pr1074/t16/build_parent.py": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "research/k8-eight-ends-t16/vendor/pr1074/t16/indep16.py": "1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7", + "research/k8-eight-ends-t16/vendor/pr1074/t16/lift16.py": "072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689", + "research/k8-eight-ends-t16/vendor/pr1074/verify_t16.py": "050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46", + "research/k8-eight-ends-t16/verify.py": "e910ca38941209be9b32c3fa6d784e84a824bef9767d2bf492f298d4889cfe92", + "research/k8-eight-ends/CLAIM.json": "65f620750f2a438316684b74cdf7cd990d59626b5c073e7dde0fd735ff3e158d", + "research/k8-eight-ends/FULL-WORD.json.gz": "d28c607df2bc4a82684d3fe47cfb3dba04e3bd14b247c7d4a62a03dff7b2836c", + "research/k8-eight-ends/MANIFEST.json": "bbdfe8589b21557ee0e0625cc485e7afef1f55fd31609bc5f4f9b30de4f6cbf9", + "research/k8-eight-ends/NOTICE.md": "820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5", + "research/k8-eight-ends/OWNERS.json.gz": "c41fdf51541ecc91af914f264967f3633570500994f8866daf642440a5d843dd", + "research/k8-eight-ends/PLAN.json.gz": "a3e9e390da3136655606ac919ec60696e2f704457ff01ef9e4d07e90534ab2d4", + "research/k8-eight-ends/PROOF.md": "1ee3b7d22a39ccb0877ca32f176786b2545dd2b86bbe986eec833b96cd17ba6b", + "research/k8-eight-ends/README.md": "0f2bc8afeff4054cb8fb62819563a6214d53af916ebf6f28bb2fcd972814362c", + "research/k8-eight-ends/RECIPE.json": "6a5d91b95bdba641ab4cc0e3c9b7f0f2adcc5ef22bef7f732d5d76cb0b6fab6c", + "research/k8-eight-ends/SEARCH.json": "f1816698aa4d7deb48ef7e98a711fdc0c74d67bd336d4b8f48b46fe191d7d1b1", + "research/k8-eight-ends/SOURCE-PINS.json": "6b85ed22262e23db1ff0518d874d4e3ee1b4317d642fabdc9747cecbd04ef420", + "research/k8-eight-ends/SPEC.json": "555cf868f29c8173b2faf8243aea30ee29f3e12f694c6cb3865a06981592af24", + "research/k8-eight-ends/build_word.py": "18691b1fad3bc798b7ad58b39b433f405e9bb4ec266af0303b563f11b07d956f", + "research/k8-eight-ends/discovery/END-COMBINATIONS.json": "db6353685f6f344a6e3a4b8476dde4858fa2fad65fe4e74abcecab93eb07a79f", + "research/k8-eight-ends/discovery/END-GROUP-SCREEN.json": "b197a014997ec869cc2768b68070e9ad3cd6d19633b366085a8061a3523fe3ef", + "research/k8-eight-ends/discovery/END-GROUPS.json": "19b456b91852df5ee2aec79a16ab454c5772bd5160d1cee42e4df6f0cb211bd4", + "research/k8-eight-ends/discovery/RETIME-CENSUS.json": "40ea9706b94cd23a6c37ab01afb6e945ab59ac43d1a61433583cf1d297cf57dd", + "research/k8-eight-ends/discovery/SEARCH-TRACES.json.gz": "eaa157000003e807fb466d6c7bfc032dc74857ae4afc5de2ca6d1bf1a631c37f", + "research/k8-eight-ends/discovery/SOURCE-CENSUS.json": "aeadcc466b01fd5a2498037f3a83dcecdde91d30327a15c684d77645489e6f69", + "research/k8-eight-ends/discovery/SOURCE-REFRAME.json": "d69170ce6443ffaf890a5e3e2b8cecdb74ba4e7b75273738ed367be5643b01a1", + "research/k8-eight-ends/discovery/combine_ends.py": "ea0e79e0bf4ea7d44cadd179fb5bb6ff13cf6cd960362a1e2e07c63c1969b7f8", + "research/k8-eight-ends/discovery/end_groups.py": "190a44e768daf0d9076158da9f00e4aa7e682e7df90749d18fbd55f1a04b9b09", + "research/k8-eight-ends/discovery/frame_model.py": "dee9899272846ee954f8daf6e9f60c9e073c86489b2a594d4d9a4a9899cbd0e9", + "research/k8-eight-ends/discovery/minimize_recipe.py": "8fa2216d1228c12a08b5e93b084ce1426ebe99b5abb7f6e614173b56bedb459d", + "research/k8-eight-ends/discovery/prepare_new.py": "b2995d74b63010aa3bd5e4cdc59666a0ca0d9d4244340c694e8eed6171231c0d", + "research/k8-eight-ends/discovery/resize_owners.py": "af9b632d51f6b4beddd87bf75d6e36eb3f58b7e467e711208f304a774f8b26f0", + "research/k8-eight-ends/discovery/retime_sources.py": "35600042b16447b24289c73a41462d4eeb6600117529df5baf4fed5aa389d898", + "research/k8-eight-ends/discovery/screen_end_groups.py": "a29814cfc5f3f86dc62272fd3cceb2fb0456a3aa25c8b183980291b744e9ab54", + "research/k8-eight-ends/discovery/search_calls.py": "5df48ab7775bfee767d71dd8c47585977922568b532c29f4528f2c8ca5ab364d", + "research/k8-eight-ends/discovery/source_census.py": "9808b026a8a7556fbf171f57ca46b32c2e33b36eeb2924e7eee24abb2a7b3853", + "research/k8-eight-ends/discovery/test_structures.py": "7c550f1c00d58fa1df668179e09c0fd9fe61c35029f548f973727f0b36706e31", + "research/k8-eight-ends/end_controls.py": "9f4a2ad05a3602be3bd89bb1a1e3fc40bb78eb3ad8de3f66aa19e44e53e30e2a", + "research/k8-eight-ends/evidence/ADMISSION-CONTROLS.json": "b7df5cb7695f8de70c674a03c10a36682d85b958340d392c8d61e9b969111179", + "research/k8-eight-ends/evidence/ASSEMBLY.json": "1cf819f87c1e550c78de98206a52e9aff04ec47022e5a63987bcd1dd5d2e51f6", + "research/k8-eight-ends/evidence/ASYNC-AUDIT.json": "2b056ae65d212cfdf4d83778b9be47dc7a9ded6626feb3a20ae2de6ead8dbb79", + "research/k8-eight-ends/evidence/AUDIT-LOCAL.json": "4ebd818fe459c8b729aaf385d6b2946e58316414a9c29c5ba6a2335d63af7ecf", + "research/k8-eight-ends/evidence/BIT-SUPPLIER-CONTROLS.json": "4fbf09922859926ed79eb4874a0c3414a13991de2ffc64d30a382e7eecb2c2a4", + "research/k8-eight-ends/evidence/CLIFFORD-REVIEW.json": "2bfc112221995431c25a7257fdda5a2e9b2631c1712a48ab428f946849cbac91", + "research/k8-eight-ends/evidence/END-CONTROLS.json": "e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135", + "research/k8-eight-ends/evidence/ENDS-8-AUDIT.json": "5381c41fa10fdccbc5c5bdc7059ad839e508d7b8bc3a139bc8ad6b45c20b01c3", + "research/k8-eight-ends/evidence/INDEPENDENT-LOCAL-REPLAY.json": "00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99", + "research/k8-eight-ends/evidence/LOCAL-CHECKS.json": "3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba", + "research/k8-eight-ends/evidence/NATIVE-STEPS.json": "02f6ea9122362ba1e408e72c331ffc850a2fbd1593afb06554aa0ab5c7aee0f6", + "research/k8-eight-ends/evidence/OWNERS-AND-PROFILE.json": "a04d3db0d157b197d9395967163e155f0d8775a06db2ca4318258830e2abdaa9", + "research/k8-eight-ends/evidence/PREFIX-AND-INVOICE.json": "66650384488db73bf3d5c7742abaa9c116877845bbb4ef46d6fffe235ae7d1c0", + "research/k8-eight-ends/evidence/PREPARATION.json": "cd980d9b80de65d1bd9358d590a479fb85d75fc4e468a12539cd5a0388190e8d", + "research/k8-eight-ends/evidence/REPLAY.json": "fa6b65403a28ce8c717412b0d90dd4c702bcba7e3c530bca932f921f0dba75e2", + "research/k8-eight-ends/evidence/RESULT.json": "904b0cb2082f6f109845d30f6ee4bb6f766ea493c4cee6a637634362a30785b0", + "research/k8-eight-ends/evidence/STEPS.json": "5577123fa4422fb80f412dc3713bbd7eea5c4c50b63db635f01585457c9d2960", + "research/k8-eight-ends/evidence/WRAPPER-CHECKS.json": "b6c7fdef5893b117434f39b6561b80504482fa748e23b840f77a07b137e1d1ea", + "research/k8-eight-ends/replay_native.py": "1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6", + "research/k8-eight-ends/verify.py": "d57061431e087fb755382e3b362ea7421e5ee3dfae5b3ed81ce5228278ba58b6", + "research/k8-three-demotions/CLAIM.json": "5d2d7f3a0c57373942d588303f9736db01d4dc69fc8b35b6e2945b10627905db", + "research/k8-three-demotions/FULL-WORD.json.gz": "a8a1362e1cf3bb4d5a43e077bbc842d140eb8a4420c16673757c486ca001f1a8", + "research/k8-three-demotions/MANIFEST.json": "26d4340ad73221973f4619cf3a4f43cdd6978132955b316919b533099b3a4408", + "research/k8-three-demotions/NOTICE.md": "a0fe85fb2207f0e6831a96deaeefb65afa379c1377a29f0b586f1db4bb4b2137", + "research/k8-three-demotions/OWNERS.json.gz": "93cb570c9496725ed5204d9f890ddf337ed8c3fb1a1b980de3e905f65e71b2dd", + "research/k8-three-demotions/PARENT-PINS.json": "ae43954e4cee8951e9bff82efd728fe18e12f44e62ccc4d0177e31108ec6c5f0", + "research/k8-three-demotions/PLAN.json.gz": "c56ac6b25f119107c8470e01582a8be3d78421553b684c113582c6078f998e36", + "research/k8-three-demotions/PROOF.md": "072c10a2380c9434758f59f410cebeee620efa355e434a3f3a341896a7650514", + "research/k8-three-demotions/README.md": "6d8ea5173ee09fb104c28780812f9f4a9d0e30fb85f09f567e2d9d63f4378381", + "research/k8-three-demotions/RECIPE.json": "0417fdf34130a389aad1ab50c7fd1a9bdf825fd6722ec7db408f65811fd7a363", + "research/k8-three-demotions/SEARCH.json": "728e09e77969828cdd1ff187476c6c4d668190535f8b77efc4013f6565dcf9c0", + "research/k8-three-demotions/SOURCE-PINS.json": "d23f4c3e6c68a1090b2d9fb92fbbc075a2c125b60fcae1fba7091c1778d893c0", + "research/k8-three-demotions/SPEC.json": "448141cbeeb6747f742360b72b5561c3c398decf0a308a559f4c0acd93db800c", + "research/k8-three-demotions/build_word.py": "5264e1c0c25f9414a0b24863e1e98dc67bb08a4fdb94a7ca2aa27c337ec634e6", + "research/k8-three-demotions/controls.py": "0514ba8c1854ef49abad5d0c8cf436f68d1146de89fc3dca86ed9392bc48c62c", + "research/k8-three-demotions/discovery/COMBINED-DEMOTIONS.json.gz": "d90e835aca3df28ab2b995d068e8fba8d73b861e1a740c8768b5719720e79ded", + "research/k8-three-demotions/discovery/DEMOTION-4.json.gz": "663ec933b38c01543d341ec92e2258c322a1fa121fe9b58d9e9f4e997f03605b", + "research/k8-three-demotions/discovery/DEMOTION-5.json.gz": "064d397af864a9289c557022b52b4c00fcf036c2bc028efb9ac1b13121a935c9", + "research/k8-three-demotions/discovery/OWNER-SEARCH.json.gz": "cba4ed8516f54abecd679111044c7c62759ba73289aad0695daf386815036b71", + "research/k8-three-demotions/discovery/OWNER-SEARCH.log.gz": "5aac089fd94aedf417278e06a1585394e1a1da5cbd851d5d861a55cc1313a404", + "research/k8-three-demotions/discovery/PRODUCER-ELIMINATION.json.gz": "697210c6b26c506be9f1226e1ca19f12fd6f5ced67e2591cb3d9d22fff6c698e", + "research/k8-three-demotions/discovery/SCHEDULED-ELIMINATION.json.gz": "d84ad020fdb8d4a1209e4a872485bfd03998e60d6afdd66977b6263ea1e50da4", + "research/k8-three-demotions/discovery/demote_entrances.py": "9ef34ab2969ebd796fd5295c8d336d6731420db9c5a8e33c76a851ebd0c885c0", + "research/k8-three-demotions/discovery/eliminate_helpers.py": "6fd840a849e85eb9e2de857b4e3f8591fe0b11ab5bcf5059a0868768e711b065", + "research/k8-three-demotions/discovery/pack_demotions.py": "b831d8a76eff7f342329f7025848207d48bd2031054f4664fd39415a94ec57c8", + "research/k8-three-demotions/discovery/repair_pack.py": "08d23d527a5ca8269cab478ae372ea754406ae1efe329d427d6d720da4b0a32b", + "research/k8-three-demotions/discovery/schedule_elimination.py": "9a4cde722068902eda94c8896994345542e9586491daf2a48804b3882e9e46b4", + "research/k8-three-demotions/discovery/search_columns.py": "edbb093207e21ee4301382f00198c6eccb197949068e96c76e46a2e61dc90f82", + "research/k8-three-demotions/evidence/ADMISSION-CONTROLS.json": "8d4d311c8a598045aca089f0962d9606abf1749a5acc80bd4221b79fe055534a", + "research/k8-three-demotions/evidence/ALL-T-BOUND.json": "d4fee201f6863bdb3acd26948f45087c308e36e3db2db713d67e6ea98f5de92a", + "research/k8-three-demotions/evidence/ASSEMBLY.json": "e2f32c70ce02ca072f91c5df33db8f27a0d084d83f220d64ac746d4b8d68fd03", + "research/k8-three-demotions/evidence/ASYNC-AUDIT.json": "502132cf61ec75f772c335440778d5e682a117bed6f282ecbb63e87b4c92da1a", + "research/k8-three-demotions/evidence/AUDIT-LOCAL.json": "9f171f1dd3e6077b877717bead4c48bceba7b1b2122fe3a35e1f84d2bc2844b2", + "research/k8-three-demotions/evidence/BIT-SUPPLIER-CONTROLS.json": "29a0fbffa42ab44a53d9b1b70749d385e7d22d23e163269b4db580078a313992", + "research/k8-three-demotions/evidence/DEMOTION-CONTROLS.json": "1f79ea173ae9c199e1130c4c47b1e8535aa1c59b265d774c26e9ac8adb4906f3", + "research/k8-three-demotions/evidence/INDEPENDENT-T16.json": "76bef93797c561eb2e343e91bd825ea2463b0e1bb29961e7c1ffb6436b303d59", + "research/k8-three-demotions/evidence/NATIVE-STEPS.json": "da092696ceef4cc48d0dad324528ca46e18ee2e892e9a1d669f626cd51bd13c2", + "research/k8-three-demotions/evidence/OWNERS-AND-PROFILE.json": "edf9f49f4aa302e2cdf8197fdae43efc648efd511810b9c7a1820cfa7cab2914", + "research/k8-three-demotions/evidence/PREFIX-AND-INVOICE.json": "92a64fa8f6f6109ad7fec10646690f012a3836e83c4920fd271a1278a7981068", + "research/k8-three-demotions/evidence/REPLAY-LOGS.json.gz": "87306aff46a5026c6f62425ed6f45265d96cfdbc12f61eb47bbd6d98db9772c6", + "research/k8-three-demotions/evidence/REPLAY.json": "2c9204175b51a9a2fdf4ee99ae85ba6a30c9fd848489968637d192de274e91f1", + "research/k8-three-demotions/evidence/RESULT.json": "878e1c99b02cb0b53cd12c1cc266fe9399adb56169d85bf7bc258f74ecc2dc5b", + "research/k8-three-demotions/evidence/STAGES.json": "c2c9c1d9d121f01a572e42c606c18b1e76911a07dd999deb102c14e7a518897b", + "research/k8-three-demotions/independent/all_t_bound.py": "2f7f23424c8bf470161a116cb0be7ef024ca685b1b7e1fe88dcec90186c7f2fd", + "research/k8-three-demotions/run_global.py": "04ead24a91d11234e04f79753e3c2d435d9e4dd96c7c3fe21a0652921af85c83", + "research/k8-three-demotions/verify.py": "8a15ed2a8bb102f0edbe2d43e31e187c677b569072d9517e81682892a9883ceb" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/SPEC.json new file mode 100644 index 0000000000..9aeea5c043 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/SPEC.json @@ -0,0 +1,1971 @@ +{ + "schema": "witness-spec/1", + "name": "k8-joint-entrances", + "data": { + "plan_sha256": "a986515b256f35c1d8d675998fc8d35182c9340bd7149d166337d1b3ebba4de4", + "owners_sha256": "7755af4108f066cf1eb13dbaac0a0fbb97a2852ffa7403588d2b5218c81101bf" + }, + "dispatch": [ + [ + 0, + 0, + "gauge44" + ], + [ + 0, + 8, + "gauge44" + ], + [ + 0, + 1, + "gauge44" + ], + [ + 0, + 9, + "gauge44" + ], + [ + 1, + 0, + "gauge44" + ], + [ + 1, + 8, + "gauge44" + ], + [ + 0, + 2, + "gauge44" + ], + [ + 0, + 10, + "gauge44" + ], + [ + 1, + 1, + "gauge44" + ], + [ + 1, + 9, + "gauge44" + ], + [ + 2, + 0, + "gauge44" + ], + [ + 2, + 8, + "gauge44" + ], + [ + 0, + 3, + "gauge44" + ], + [ + 0, + 11, + "gauge44" + ], + [ + 1, + 2, + "gauge44" + ], + [ + 1, + 10, + "gauge44" + ], + [ + 2, + 1, + "gauge44" + ], + [ + 2, + 9, + "gauge44" + ], + [ + 3, + 0, + "gauge44" + ], + [ + 3, + 8, + "gauge44" + ], + [ + 0, + 4, + "gauge44" + ], + [ + 0, + 12, + "gauge44" + ], + [ + 1, + 3, + "gauge44" + ], + [ + 1, + 11, + "gauge44" + ], + [ + 2, + 2, + "gauge44" + ], + [ + 2, + 10, + "gauge44" + ], + [ + 3, + 1, + "gauge44" + ], + [ + 3, + 9, + "gauge44" + ], + [ + 4, + 0, + "gauge44" + ], + [ + 4, + 8, + "gauge44" + ], + [ + 0, + 5, + "gauge44" + ], + [ + 0, + 13, + "gauge44" + ], + [ + 1, + 4, + "gauge44" + ], + [ + 1, + 12, + "gauge44" + ], + [ + 2, + 3, + "gauge44" + ], + [ + 2, + 11, + "gauge44" + ], + [ + 3, + 2, + "gauge44" + ], + [ + 3, + 10, + "gauge44" + ], + [ + 4, + 1, + "gauge44" + ], + [ + 4, + 9, + "gauge44" + ], + [ + 5, + 0, + "gauge44" + ], + [ + 5, + 8, + "gauge44" + ], + [ + 0, + 6, + "gauge44" + ], + [ + 0, + 14, + "gauge44" + ], + [ + 1, + 5, + "gauge44" + ], + [ + 1, + 13, + "gauge44" + ], + [ + 2, + 4, + "gauge44" + ], + [ + 2, + 12, + "gauge44" + ], + [ + 3, + 3, + "gauge44" + ], + [ + 3, + 11, + "gauge44" + ], + [ + 4, + 2, + "gauge44" + ], + [ + 4, + 10, + "gauge44" + ], + [ + 5, + 1, + "gauge44" + ], + [ + 5, + 9, + "gauge44" + ], + [ + 0, + 7, + "gauge44" + ], + [ + 0, + 15, + "gauge44" + ], + [ + 6, + 0, + "gauge44" + ], + [ + 6, + 8, + "gauge44" + ], + [ + 1, + 6, + "gauge44" + ], + [ + 1, + 14, + "gauge44" + ], + [ + 2, + 5, + "gauge44" + ], + [ + 2, + 13, + "gauge44" + ], + [ + 3, + 4, + "gauge44" + ], + [ + 3, + 12, + "gauge44" + ], + [ + 4, + 3, + "gauge44" + ], + [ + 4, + 11, + "gauge44" + ], + [ + 5, + 2, + "gauge44" + ], + [ + 5, + 10, + "gauge44" + ], + [ + 6, + 1, + "gauge44" + ], + [ + 6, + 9, + "gauge44" + ], + [ + 1, + 7, + "gauge44" + ], + [ + 1, + 15, + "gauge44" + ], + [ + 7, + 0, + "gauge44" + ], + [ + 7, + 8, + "gauge44" + ], + [ + 2, + 6, + "gauge44" + ], + [ + 2, + 14, + "gauge44" + ], + [ + 3, + 5, + "gauge44" + ], + [ + 3, + 13, + "gauge44" + ], + [ + 4, + 4, + "gauge44" + ], + [ + 4, + 12, + "gauge44" + ], + [ + 5, + 3, + "gauge44" + ], + [ + 5, + 11, + "gauge44" + ], + [ + 6, + 2, + "gauge44" + ], + [ + 6, + 10, + "gauge44" + ], + [ + 7, + 1, + "gauge44" + ], + [ + 7, + 9, + "gauge44" + ], + [ + 2, + 7, + "gauge44" + ], + [ + 2, + 15, + "gauge44" + ], + [ + 8, + 0, + "gauge44" + ], + [ + 8, + 8, + "gauge44" + ], + [ + 3, + 6, + "gauge44" + ], + [ + 3, + 14, + "gauge44" + ], + [ + 4, + 5, + "gauge44" + ], + [ + 4, + 13, + "gauge44" + ], + [ + 5, + 4, + "gauge44" + ], + [ + 5, + 12, + "gauge44" + ], + [ + 6, + 3, + "gauge44" + ], + [ + 6, + 11, + "gauge44" + ], + [ + 7, + 2, + "gauge44" + ], + [ + 7, + 10, + "gauge44" + ], + [ + 8, + 1, + "gauge44" + ], + [ + 8, + 9, + "gauge44" + ], + [ + 3, + 7, + "gauge44" + ], + [ + 3, + 15, + "gauge44" + ], + [ + 4, + 6, + "gauge44" + ], + [ + 4, + 14, + "gauge44" + ], + [ + 5, + 5, + "gauge44" + ], + [ + 5, + 13, + "gauge44" + ], + [ + 6, + 4, + "gauge44" + ], + [ + 6, + 12, + "gauge44" + ], + [ + 7, + 3, + "gauge44" + ], + [ + 7, + 11, + "gauge44" + ], + [ + 8, + 2, + "gauge44" + ], + [ + 8, + 10, + "gauge44" + ], + [ + 4, + 7, + "gauge44" + ], + [ + 4, + 15, + "gauge44" + ], + [ + 5, + 6, + "gauge44" + ], + [ + 5, + 14, + "gauge44" + ], + [ + 6, + 5, + "gauge44" + ], + [ + 6, + 13, + "gauge44" + ], + [ + 7, + 4, + "gauge44" + ], + [ + 7, + 12, + "gauge44" + ], + [ + 8, + 3, + "gauge44" + ], + [ + 8, + 11, + "gauge44" + ], + [ + 5, + 7, + "gauge44" + ], + [ + 5, + 15, + "gauge44" + ], + [ + 6, + 6, + "gauge44" + ], + [ + 6, + 14, + "gauge44" + ], + [ + 7, + 5, + "gauge44" + ], + [ + 7, + 13, + "gauge44" + ], + [ + 8, + 4, + "gauge44" + ], + [ + 8, + 12, + "gauge44" + ], + [ + 6, + 7, + "gauge44" + ], + [ + 6, + 15, + "gauge44" + ], + [ + 7, + 6, + "gauge44" + ], + [ + 7, + 14, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 13, + "gauge44" + ], + [ + 7, + 7, + "gauge44" + ], + [ + 7, + 15, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 14, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ], + [ + 8, + 15, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 8 + ], + [ + 0, + 1 + ], + [ + 0, + 9 + ], + [ + 1, + 0 + ], + [ + 1, + 8 + ], + [ + 0, + 2 + ], + [ + 0, + 10 + ], + [ + 1, + 1 + ], + [ + 1, + 9 + ], + [ + 2, + 0 + ], + [ + 2, + 8 + ], + [ + 0, + 3 + ], + [ + 0, + 11 + ], + [ + 1, + 2 + ], + [ + 1, + 10 + ], + [ + 2, + 1 + ], + [ + 2, + 9 + ], + [ + 3, + 0 + ], + [ + 3, + 8 + ], + [ + 0, + 4 + ], + [ + 0, + 12 + ], + [ + 1, + 3 + ], + [ + 1, + 11 + ], + [ + 2, + 2 + ], + [ + 2, + 10 + ], + [ + 3, + 1 + ], + [ + 3, + 9 + ], + [ + 4, + 0 + ], + [ + 4, + 8 + ], + [ + 0, + 5 + ], + [ + 0, + 13 + ], + [ + 1, + 4 + ], + [ + 1, + 12 + ], + [ + 2, + 3 + ], + [ + 2, + 11 + ], + [ + 3, + 2 + ], + [ + 3, + 10 + ], + [ + 4, + 1 + ], + [ + 4, + 9 + ], + [ + 5, + 0 + ], + [ + 5, + 8 + ], + [ + 0, + 6 + ], + [ + 0, + 14 + ], + [ + 1, + 5 + ], + [ + 1, + 13 + ], + [ + 2, + 4 + ], + [ + 2, + 12 + ], + [ + 3, + 3 + ], + [ + 3, + 11 + ], + [ + 4, + 2 + ], + [ + 4, + 10 + ], + [ + 5, + 1 + ], + [ + 5, + 9 + ], + [ + 0, + 7 + ], + [ + 0, + 15 + ], + [ + 6, + 0 + ], + [ + 6, + 8 + ], + [ + 1, + 6 + ], + [ + 1, + 14 + ], + [ + 2, + 5 + ], + [ + 2, + 13 + ], + [ + 3, + 4 + ], + [ + 3, + 12 + ], + [ + 4, + 3 + ], + [ + 4, + 11 + ], + [ + 5, + 2 + ], + [ + 5, + 10 + ], + [ + 6, + 1 + ], + [ + 6, + 9 + ], + [ + 1, + 7 + ], + [ + 1, + 15 + ], + [ + 7, + 0 + ], + [ + 7, + 8 + ], + [ + 2, + 6 + ], + [ + 2, + 14 + ], + [ + 3, + 5 + ], + [ + 3, + 13 + ], + [ + 4, + 4 + ], + [ + 4, + 12 + ], + [ + 5, + 3 + ], + [ + 5, + 11 + ], + [ + 6, + 2 + ], + [ + 6, + 10 + ], + [ + 7, + 1 + ], + [ + 7, + 9 + ], + [ + 2, + 7 + ], + [ + 2, + 15 + ], + [ + 8, + 0 + ], + [ + 8, + 8 + ], + [ + 3, + 6 + ], + [ + 3, + 14 + ], + [ + 4, + 5 + ], + [ + 4, + 13 + ], + [ + 5, + 4 + ], + [ + 5, + 12 + ], + [ + 6, + 3 + ], + [ + 6, + 11 + ], + [ + 7, + 2 + ], + [ + 7, + 10 + ], + [ + 8, + 1 + ], + [ + 8, + 9 + ], + [ + 3, + 7 + ], + [ + 3, + 15 + ], + [ + 4, + 6 + ], + [ + 4, + 14 + ], + [ + 5, + 5 + ], + [ + 5, + 13 + ], + [ + 6, + 4 + ], + [ + 6, + 12 + ], + [ + 7, + 3 + ], + [ + 7, + 11 + ], + [ + 8, + 2 + ], + [ + 8, + 10 + ], + [ + 4, + 7 + ], + [ + 4, + 15 + ], + [ + 5, + 6 + ], + [ + 5, + 14 + ], + [ + 6, + 5 + ], + [ + 6, + 13 + ], + [ + 7, + 4 + ], + [ + 7, + 12 + ], + [ + 8, + 3 + ], + [ + 8, + 11 + ], + [ + 5, + 7 + ], + [ + 5, + 15 + ], + [ + 6, + 6 + ], + [ + 6, + 14 + ], + [ + 7, + 5 + ], + [ + 7, + 13 + ], + [ + 8, + 4 + ], + [ + 8, + 12 + ], + [ + 6, + 7 + ], + [ + 6, + 15 + ], + [ + 7, + 6 + ], + [ + 7, + 14 + ], + [ + 8, + 5 + ], + [ + 8, + 13 + ], + [ + 7, + 7 + ], + [ + 7, + 15 + ], + [ + 8, + 6 + ], + [ + 8, + 14 + ], + [ + 8, + 7 + ], + [ + 8, + 15 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2900, + "expected_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "9885ff29b54f8d2de67d58d68e40a48b7897530d565f932fe63534caa3b405c9", + "LOCAL-PROGRAMS.json.gz": "1c81387e144fe92eadc6296d44d3fd80e6f9573e0269cadaf591f75de0661eed", + "LOCAL-CHECKS.json": "36c5685b24037dcf3767fc7d8d48c308da50f754fc50a05d760e399dd275b045", + "INDEPENDENT-LOCAL-REPLAY.json": "4ffe4b6ea3a1e027ef67a519e92253286d5cb794155eea1d1bef940521521a5f", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "CLIFFORD-REVIEW.json": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + }, + "entering": 192, + "entrance": 372, + "width_digest": "3e2624964db4f881ad1404d94ec595b3d1baba07bef90cf9037d802cc6299d11", + "program_hashes": { + "backward": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "forward": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e" + }, + "artifacts": { + "LOCAL-CHECKS.json": "654ca95a7f9af260d088f29c1791686f54f66cbbe735b9ea2fd5114b377727aa", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "RESIDUAL-ADAPTERS.json": "c099207d60ab49392bcadcaf7e9cbcfe01178e732f14e2591a8c3463162460d7" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 372, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387056, + "local_primitive_bound": 10038040553630, + "compiler": 25934336, + "children": 3494, + "paid_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "forward": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "9885ff29b54f8d2de67d58d68e40a48b7897530d565f932fe63534caa3b405c9", + "LOCAL-PROGRAMS.json.gz": "1c81387e144fe92eadc6296d44d3fd80e6f9573e0269cadaf591f75de0661eed", + "LOCAL-CHECKS.json": "36c5685b24037dcf3767fc7d8d48c308da50f754fc50a05d760e399dd275b045", + "INDEPENDENT-LOCAL-REPLAY.json": "4ffe4b6ea3a1e027ef67a519e92253286d5cb794155eea1d1bef940521521a5f", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "CLIFFORD-REVIEW.json": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + } + }, + "semantic_phase_sha256": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "expected_local": { + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "coefficient_work_primitive_count": 98333 + }, + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98365 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "0.001674622497877364", + "hosted_residuals": 69120, + "rank_mass": 1041408, + "actual_73column_sigmas": 10580, + "cross_replica_helper_roles": 59636, + "idle_remainders": 5279, + "idle_remainder_profile": { + "1": 360, + "24": 1, + "48": 4918 + }, + "global_profile": { + "1": 340776, + "2": 71712, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "live": 14336, + "physical": 14826, + "conservative_kappa_decimal": "0.001675560944680149", + "kappa_decimal": "0.001675560947524449", + "complex_lower": "41959329101337756331/25000000000000000000000", + "conservative_complex_lower": "1678373161199654598379/1000000000000000000000000", + "kappa": "1675560947524449/1000000000000000000", + "assembly_controls_rejected": 69, + "provider_counts": { + "gauge44": 144 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/build_word.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/build_word.py new file mode 100644 index 0000000000..60fb3754c9 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/build_word.py @@ -0,0 +1,14 @@ +"""Apply the frozen local-interface recipe; no optimization.""" +import argparse,gzip,hashlib,json +from pathlib import Path +P=Path(__file__).resolve().parent +def main(): + assert __debug__ + ap=argparse.ArgumentParser();ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();assert not a.out.exists() + raw=gzip.decompress((P.parent/'k8-eight-ends/FULL-WORD.json.gz').read_bytes());r=json.loads((P/'RECIPE.json').read_text());assert hashlib.sha256(raw).hexdigest()==r['input_content_sha256'];w=json.loads(raw) + for h,old,new in r['start_extra']:assert w['start_extra'][h]==old;w['start_extra'][h]=new + for sec in ['A','B']: + for i,old,new in r[sec]:assert w[sec][i][-1]==old;w[sec][i][-1]=new + for i,old,new in r['early_cleanup']:assert w['early_cleanup'][i][1]==old;w['early_cleanup'][i][1]=new + w['report']=r['report'];raw=json.dumps(w,sort_keys=True,separators=(',',':')).encode();assert hashlib.sha256(raw).hexdigest()==r['output_content_sha256'];a.out.write_bytes(gzip.compress(raw,mtime=0));print('PASS_JOINT_ENTRANCES_FROZEN_RECIPE') +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/controls.py new file mode 100644 index 0000000000..f373389828 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/controls.py @@ -0,0 +1,26 @@ +"""Semantic rejection controls for the changed local interfaces.""" +import argparse,contextlib,copy,gzip,importlib.util,io,json,tempfile +from pathlib import Path +P=Path(__file__).resolve().parent;ROOT=P.parents[1] +def main(): + assert __debug__ + ap=argparse.ArgumentParser();ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();assert not a.out.exists() + spec=importlib.util.spec_from_file_location('audit',ROOT/'research/gauge44-slots/independent/audit_local.py');A=importlib.util.module_from_spec(spec);spec.loader.exec_module(A) + word=json.loads(gzip.decompress((P/'FULL-WORD.json.gz').read_bytes()));recipe=json.loads((P/'RECIPE.json').read_text());rejected=[] + with tempfile.TemporaryDirectory(prefix='k8-demotion-controls-') as d: + d=Path(d) + def check(label,w): + f=d/'mutant.json.gz';f.write_bytes(gzip.compress(json.dumps(w).encode(),mtime=0)) + try: + with contextlib.redirect_stdout(io.StringIO()):A.run(f,d/'audit.json',ROOT) + except RuntimeError as e:rejected.append(dict(control=label,reason=str(e)));return + raise AssertionError('control admitted: '+label) + for h,old,new in recipe['start_extra']: + w=copy.deepcopy(word);w['start_extra'][h]=old;check('restore-promoted-start-'+h,w) + w=copy.deepcopy(word);gate=next(e for e in w['A']+w['B'] if int(h) in A.registers(e));gate[-1]=gate[-1][:-1];check('first-frame-too-small-'+h,w) + w=copy.deepcopy(word);w['report']['local_profile']['1']+=1;check('false-paid-profile',w) + w=copy.deepcopy(word);w['B'][next(i for i,e in enumerate(w['B']) if e[0]=='add' and 112<=e[1]<224)][3]+=1;check('wrong-target-coefficient',w) + w=copy.deepcopy(word);w['report']['width_inventory']['4']+=1;check('false-helper-inventory',w) + assert len(rejected)==27 + a.out.write_text(json.dumps(dict(status='PASS_JOINT_ENTRANCE_SEMANTIC_CONTROLS',rejected=rejected),indent=2)+'\n');print('PASS',len(rejected),'demotion controls') +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/COMPOSITIONS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/COMPOSITIONS.json.gz new file mode 100644 index 0000000000..b6478f96aa Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/COMPOSITIONS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/INTERFACE-CENSUS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/INTERFACE-CENSUS.json.gz new file mode 100644 index 0000000000..1ce49d8d89 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/INTERFACE-CENSUS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-FRAME-SOLVES.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-FRAME-SOLVES.json.gz new file mode 100644 index 0000000000..2c787d45b7 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-FRAME-SOLVES.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-FRAMES.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-FRAMES.json.gz new file mode 100644 index 0000000000..ceca6e8178 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-FRAMES.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-GLOBAL-RESTRICTED.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-GLOBAL-RESTRICTED.json.gz new file mode 100644 index 0000000000..6e731e1408 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-GLOBAL-RESTRICTED.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-ROTATIONS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-ROTATIONS.json.gz new file mode 100644 index 0000000000..d29acee442 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/JOINT-ROTATIONS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/ROTATION-WINNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/ROTATION-WINNERS.json.gz new file mode 100644 index 0000000000..29848c0631 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/ROTATION-WINNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/ROTATIONS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/ROTATIONS.json.gz new file mode 100644 index 0000000000..bb2cbe544f Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/ROTATIONS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/compositions.log.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/compositions.log.gz new file mode 100644 index 0000000000..c24837f368 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/compositions.log.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/interface_census.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/interface_census.py new file mode 100644 index 0000000000..b520e62c5b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/interface_census.py @@ -0,0 +1,20 @@ +import os,sys,json,gzip +from pathlib import Path +from fractions import Fraction as F +from collections import defaultdict +import argparse +ROOT=Path(__file__).resolve().parents[3] +ap=argparse.ArgumentParser(description=__doc__);ap.add_argument('--work',type=Path,required=True);args=ap.parse_args();OUT=args.work.resolve();assert not OUT.is_relative_to(ROOT);OUT.mkdir(parents=True,exist_ok=True) +os.environ['K8_BASE_WORD']=str(OUT/'candidate.json.gz');sys.path.insert(0,str(ROOT/'research/k8-eight-ends/discovery'));import screen_end_groups as S +w=S.w;M=S.M;m=M.Model(w);n=704;v=112 +raw=[{k:F(1)} for k in range(n)] +for e in w['A']+w['cut']+w['B']:M.apply(e,raw) +bad={k for y in range(v,2*v) for k in raw[y] if k>=2*v} +touch={q for e in w['precondition'] for q in M.registers(e)} +groups=defaultdict(list) +for q in range(224,704): + if q in bad or q in touch or q in w['centers']:continue + first=m.chains[q][1];hi=m.hi[first];old=M.basis(w['start_extra'].get(str(q),[])) + if hi:groups[(old,hi)].append(q) +d=[dict(helpers=qs,old=list(old),hi=list(hi),old_dim=len(old),hi_dim=len(hi)) for (old,hi),qs in groups.items()] +(OUT/'INTERFACE-CENSUS.json').write_text(json.dumps(d,indent=2)+'\n');print(json.dumps(d,indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-frames-rerun.log.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-frames-rerun.log.gz new file mode 100644 index 0000000000..55d872dc47 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-frames-rerun.log.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-frames.log.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-frames.log.gz new file mode 100644 index 0000000000..7364e414dd Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-frames.log.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-global-ipm.log.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-global-ipm.log.gz new file mode 100644 index 0000000000..7b68d49a3d Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-global-ipm.log.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-global-restricted.log.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-global-restricted.log.gz new file mode 100644 index 0000000000..27827eb4f2 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-global-restricted.log.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-global.log.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-global.log.gz new file mode 100644 index 0000000000..65906406dd Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/joint-global.log.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/prepare_equal_inventory.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/prepare_equal_inventory.py new file mode 100644 index 0000000000..99871c5c08 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/prepare_equal_inventory.py @@ -0,0 +1,47 @@ +"""Bind a new word to exactly the old width slots; admission remains separate.""" +import argparse,gzip,json,hashlib,importlib.util,copy +from pathlib import Path +from collections import Counter,defaultdict +ROOT=Path(__file__).resolve().parents[3];PRE=ROOT/'research/k8-three-demotions' +def rd(p):return json.loads(gzip.decompress(p.read_bytes()) if p.suffix=='.gz' else p.read_bytes()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +def dump(p,x):p.write_text(json.dumps(x,indent=2)+'\n') +ap=argparse.ArgumentParser();ap.add_argument('--native',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();local=a.native/'local';out=a.out;assert not out.exists();out.mkdir() +word=rd(local/'CANONICAL-WORD.json.gz');checks=rd(local/'LOCAL-CHECKS.json');plan=rd(PRE/'PLAN.json.gz');oldroles=rd(PRE/'OWNERS.json.gz');oldwidths=plan['provider_registry']['gauge44']['widths'] +widths=[len(word['frames'][word['final'][224+h]])-len(word['frames'][word['start'][224+h]]) for h in range(480)];assert Counter(widths)==Counter(oldwidths);assert (word['v'],word['h'],word['R'])==(112,9,480) +# Keep every unchanged helper slot. Pair moved helpers by equal occupied width. +remap={h:h for h in range(480) if oldwidths[h]==widths[h]} +moved=set(range(480))-set(remap) +for width in sorted(set(widths)): + old=[h for h in range(480) if h in moved and oldwidths[h]==width] + new=[h for h in range(480) if h in moved and widths[h]==width] + assert len(old)==len(new) + remap.update(zip(old,new)) +assert len(remap)==len(set(remap.values()))==480 +roles=copy.deepcopy(oldroles) +for r in roles:r['helper']=remap[r['helper']];assert r['width']==widths[r['helper']] +roles.sort(key=lambda z:(z['time'],z['helper'])) +raw=json.dumps(roles,sort_keys=True,separators=(',',':')).encode();(out/'OWNERS.json.gz').write_bytes(gzip.compress(raw,mtime=0));plan['assignment_sha256']=hashlib.sha256(raw).hexdigest() +used=Counter();families=defaultdict(set);intervals=defaultdict(list) +for z in roles: + key=z['owner_replica'],z['child'],z['port'];cp,times=plan['windows'][f'{key[0]},{key[1]}'];assert z['time'] in times and z['family'] not in families[z['time']];families[z['time']].add(z['family']);used[key]+=z['width'];intervals[key].append((z['offset'],z['offset']+z['width'])) +for key,vs in intervals.items(): + vs.sort();assert all(a[1]<=b[0] for a,b in zip(vs,vs[1:]));assert vs[-1][1]<=plan['windows'][f'{key[0]},{key[1]}'][0] +idle=Counter() +for key,(cap,times) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(112): + rem=cap-used[rep,ch,port];assert rem>=0 + if rem:idle[rem]+=1 +assert dict(idle)=={1:360,24:1,48:4918} +H=Counter({int(r):144*n for r,n in word['local_profile'].items()});H.update(idle);assert 73*14336-sum(r*n for r,n in H.items())==5120 +plan['profile']={str(r):n for r,n in sorted(H.items())};desc=plan['provider_registry']['gauge44'];assert word['ports']==desc['ports'] and word['centers']==desc['centers'];desc['widths']=widths;desc['actual_paid_profile']=word['local_profile'] +p=ROOT/'research/k8-eight-ends-t16/vendor/pr1074/code/generated_identity.py';s=importlib.util.spec_from_file_location('ident',p);ident=importlib.util.module_from_spec(s);s.loader.exec_module(ident) +desc.update(artifact_sha256={name:sha(local/name) for name in ident.FILES},artifact_semantic_sha256=ident.artifact_identities(local),orientation_program_sha256={o:c['sha256'] for o,c in checks.items()}) +for c in plan['provider_calls']:c['local_program_sha256']=checks[c['orientation']]['sha256'] +for c in plan['per_call_widths']:c['widths']=widths +plan.update(status='NOMINATED_EQUAL_WIDTH_INTERFACE_SUBSTITUTION_REQUIRES_STRICT_ADMISSION',solver_status='Exact equal-width permutation of frozen whole-helper slots',gap=None) +dump(out/'PLAN.json',plan) +spec=rd(PRE/'SPEC.json');spec.update(name='k8-joint-entrances',providers={},expected={'gain_baseline_kappa':spec['expected']['gain_baseline_kappa']},data={'plan_sha256':sha(out/'PLAN.json'),'owners_sha256':sha(out/'OWNERS.json.gz')});dump(out/'SPEC.json',spec) +dump(out/'PREPARATION.json',dict(status='PASS_EXACT_WIDTH_SLOT_SUBSTITUTION_NOMINATION',helper_permutation={k:v for k,v in remap.items() if k!=v},width_inventory=dict(sorted(Counter(widths).items())),idle=dict(sorted(idle.items())),local_profile=word['local_profile'],global_profile=dict(sorted(H.items())),old_owners_sha256=sha(PRE/'OWNERS.json.gz'),new_owners_sha256=sha(out/'OWNERS.json.gz'))) +print('PASS_WIDTH_SLOT_SUBSTITUTION',dict(H)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/rotations.log.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/rotations.log.gz new file mode 100644 index 0000000000..69e9a78ca0 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/rotations.log.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/search_compositions.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/search_compositions.py new file mode 100644 index 0000000000..8a8967f14b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/search_compositions.py @@ -0,0 +1,29 @@ +"""Exploratory nominations: all subsets of six best old codimension-one groups.""" +import os,sys,json,gzip,copy,itertools,time +from pathlib import Path +import argparse +ROOT=Path(__file__).resolve().parents[3] +ap=argparse.ArgumentParser(description=__doc__);ap.add_argument('--work',type=Path,required=True);args=ap.parse_args();OUT=args.work.resolve();assert not OUT.is_relative_to(ROOT);OUT.mkdir(parents=True,exist_ok=True) +os.environ['K8_BASE_WORD']=str(ROOT/'research/k8-eight-ends/FULL-WORD.json.gz') +sys.path.insert(0,str(ROOT/'research/k8-eight-ends/discovery')) +import screen_end_groups as S +rows=json.loads(gzip.decompress((ROOT/'research/k8-three-demotions/discovery/DEMOTION-5.json.gz').read_bytes())) +best={} +for r in rows: + if 'kappa_relaxed' not in r:continue + key=r['helpers'][0] + if key not in best or best[key]['kappa_relaxed']record: + record=r['kappa_relaxed'];(OUT/'best-composition.json.gz').write_bytes(gzip.compress(json.dumps(w,sort_keys=True,separators=(',',':')).encode(),mtime=0));print('BEST',json.dumps(r),flush=True) + except (AssertionError,RuntimeError,ValueError) as e:r=dict(groups=keys,status='REJECTED',reason=str(e)) + r['seconds']=time.monotonic()-t;results.append(r);(OUT/'COMPOSITIONS.json').write_text(json.dumps(results,indent=2)+'\n') +print('DONE',len(results),record,flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/search_global_interfaces.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/search_global_interfaces.py new file mode 100644 index 0000000000..5c708e1b82 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/discovery/search_global_interfaces.py @@ -0,0 +1,90 @@ +"""Joint local recursive interfaces and aggregate owner-bin relaxation. + +All existing positive entrances may choose any subspace of their backward +ceiling. Exact native/global admission remains mandatory after nomination. +""" +import os,sys,json,gzip,copy,time,functools,itertools,math +from pathlib import Path +from collections import Counter +import numpy as np +from scipy.optimize import linprog,milp,Bounds,LinearConstraint +from scipy.sparse import coo_matrix,vstack +import argparse +ROOT=Path(__file__).resolve().parents[3] +ap=argparse.ArgumentParser(description=__doc__);ap.add_argument('--work',type=Path,required=True);args=ap.parse_args();OUT=args.work.resolve();assert not OUT.is_relative_to(ROOT);OUT.mkdir(parents=True,exist_ok=True) +os.environ['K8_BASE_WORD']=str(OUT/'candidate.json.gz');sys.path.insert(0,str(ROOT/'research/k8-eight-ends/discovery'));import screen_end_groups as S +M=S.M +@functools.lru_cache(None) +def quotient_spaces(k): + assert k<=5,('unbounded enumeration',k) + seen={()};level={()} + while level: + nxt={M.basis(list(b)+[v]) for b in level for v in range(1,1<len(cur):comp.append(x);cur=new + def lift(v): + x=0 + for i,z in enumerate(comp): + if v>>i&1:x^=z + return x + return sorted([M.basis(list(lo)+[lift(x) for x in b]) for b in quotient_spaces(len(comp))],key=lambda b:(len(b),b)) +M.interval=interval +w=copy.deepcopy(S.w);census=json.loads((OUT/'INTERFACE-CENSUS.json').read_text());domains={};ends={h:len(w['helper_final'].get(str(h),range(9))) for h in range(224,704)} +for g in census: + ds=interval((),tuple(g['hi'])) + for h in g['helpers']:domains[('S',h)]=ds;w['start_extra'][str(h)]=[] +print('SOURCE_DOMAINS',len(domains),Counter(len(v) for v in domains.values()),flush=True) +m=M.Model(w,relax_given=True);new=m.baseline() +for node,ds in domains.items(): + del m.fixed_frames[node];m.domain[node]=ds;new[node]=tuple(S.w['start_extra'][str(node[1])]) +print('MODEL',len(m.domain),'components',len(m.components()),flush=True) +b=.00167838 +phi=lambda r:r*math.expm1(b*math.log(73/r))/b if r else 0 +rows=[];columns=[];rhs=[];ri=[];cj=[];val=[];cost=[];integrality=[] +# Four bin capacities and width inventory, all constraints per one replica. +caps={8:672,16:448,32:448,48:448};ws=sorted({ends[q]-len(fr) for (tag,q),ds in domains.items() for fr in ds}|{ends[q]-len(w['start_extra'].get(str(q),[])) for q in ends if ('S',q) not in domains}) +fixed_inv=Counter(ends[q]-len(w['start_extra'].get(str(q),[])) for q in ends if ('S',q) not in domains) +assert min(ws)>0 +rhs=list(caps.values())+[9*fixed_inv[r] for r in ws];rowwidth={r:4+i for i,r in enumerate(ws)} +for ci,comp in enumerate(m.components()): + t=time.monotonic();labels,unary,pairs=m.component_problem(comp);rr,bb,cols=M.lp(labels,unary,pairs);rbase=len(rhs);rhs.extend(bb) + for key,vec,es in cols: + j=len(columns);columns.append(key);cost.append(9*sum(n*phi(d) for d,n in enumerate(vec)));integrality.append(1 if key[0]=='x' else 0) + for i,a in es:ri.append(rbase+i);cj.append(j);val.append(a) + if key[0]=='x' and key[1][0]=='S': + width=ends[key[1][1]]-len(key[2]);ri.append(rowwidth[width]);cj.append(j);val.append(-9) + if ci%10==0:print('COMPONENT',ci,'columns',len(columns),'seconds',time.monotonic()-t,flush=True) +locals_n=len(columns) +for i,cap in enumerate(caps): + for ns in itertools.product(*(range(cap//r+1) for r in ws)): + used=sum(r*n for r,n in zip(ws,ns)) + if used>cap:continue + j=len(columns);columns.append(('bin',cap,ns));cost.append(phi(cap-used));integrality.append(0);ri.append(i);cj.append(j);val.append(1) + for r,n in zip(ws,ns): + if n:ri.append(rowwidth[r]);cj.append(j);val.append(n) +A=coo_matrix((np.array(val,float),(ri,cj)),shape=(len(rhs),len(columns))).tocsc();c=np.array(cost);rhs=np.array(rhs);print('SOLVING',A.shape,'nnz',A.nnz,'widths',ws,flush=True) +t=time.monotonic();sol=linprog(c,A_eq=A,b_eq=rhs,bounds=(0,None),method='highs');assert sol.success,sol.message +fractional=int(sum(integrality[j] and 1e-7.9:new[key[1]]=key[2] +for node in m.domain:assert node in new +for comp in m.components(): + labels,unary,pairs=m.component_problem(comp);M.assignment_cost(labels,unary,pairs,new) +for i in range(len(m.gates)): + fr=m.frame_of(('G',i),new) + if ilen(cur):comp.append(x);cur=new + def lift(v): + x=0 + for i,z in enumerate(comp): + if v>>i&1:x^=z + return x + return sorted([M.basis(list(lo)+[lift(x) for x in b]) for b in quotient_spaces(len(comp))],key=lambda b:(len(b),b)) +M.interval=interval +w=copy.deepcopy(S.w);census=json.loads((OUT/'INTERFACE-CENSUS.json').read_text());domains={};ends={h:len(w['helper_final'].get(str(h),range(9))) for h in range(224,704)} +for g in census: + ds=interval((),tuple(g['hi'])) + for h in g['helpers']:domains[('S',h)]=ds;w['start_extra'][str(h)]=[] +print('SOURCE_DOMAINS',len(domains),Counter(len(v) for v in domains.values()),flush=True) +m=M.Model(w,relax_given=True);new=m.baseline() +for node,ds in domains.items(): + del m.fixed_frames[node];m.domain[node]=ds;new[node]=tuple(S.w['start_extra'][str(node[1])]) +print('MODEL',len(m.domain),'components',len(m.components()),flush=True) +b=.00167838 +phi=lambda r:r*math.expm1(b*math.log(73/r))/b if r else 0 +rows=[];columns=[];rhs=[];ri=[];cj=[];val=[];cost=[];integrality=[] +# Four bin capacities and width inventory, all constraints per one replica. +caps={8:672,16:448,32:448,48:448};ws=sorted({ends[q]-len(fr) for (tag,q),ds in domains.items() for fr in ds}|{ends[q]-len(w['start_extra'].get(str(q),[])) for q in ends if ('S',q) not in domains}) +fixed_inv=Counter(ends[q]-len(w['start_extra'].get(str(q),[])) for q in ends if ('S',q) not in domains) +assert min(ws)>0 +rhs=list(caps.values())+[9*fixed_inv[r] for r in ws];rowwidth={r:4+i for i,r in enumerate(ws)} +for ci,comp in enumerate(m.components()): + t=time.monotonic();labels,unary,pairs=m.component_problem(comp);rr,bb,cols=M.lp(labels,unary,pairs);rbase=len(rhs);rhs.extend(bb) + for key,vec,es in cols: + j=len(columns);columns.append(key);cost.append(9*sum(n*phi(d) for d,n in enumerate(vec)));integrality.append(1 if key[0]=='x' else 0) + for i,a in es:ri.append(rbase+i);cj.append(j);val.append(a) + if key[0]=='x' and key[1][0]=='S': + width=ends[key[1][1]]-len(key[2]);ri.append(rowwidth[width]);cj.append(j);val.append(-9) + if ci%10==0:print('COMPONENT',ci,'columns',len(columns),'seconds',time.monotonic()-t,flush=True) +locals_n=len(columns) +for i,cap in enumerate(caps): + for ns in itertools.product(*(range(cap//r+1) for r in ws)): + used=sum(r*n for r,n in zip(ws,ns)) + if used>cap:continue + j=len(columns);columns.append(('bin',cap,ns));cost.append(phi(cap-used));integrality.append(0);ri.append(i);cj.append(j);val.append(1) + for r,n in zip(ws,ns): + if n:ri.append(rowwidth[r]);cj.append(j);val.append(n) +A=coo_matrix((np.array(val,float),(ri,cj)),shape=(len(rhs),len(columns))).tocsc();c=np.array(cost);rhs=np.array(rhs);print('SOLVING',A.shape,'nnz',A.nnz,'widths',ws,flush=True) +t=time.monotonic();sol=linprog(c,A_eq=A,b_eq=rhs,bounds=(0,None),method='highs-ipm',options={'time_limit':180});assert sol.success,sol.message +fractional=int(sum(integrality[j] and 1e-7.9:new[key[1]]=key[2] +for node in m.domain:assert node in new +for comp in m.components(): + labels,unary,pairs=m.component_problem(comp);M.assignment_cost(labels,unary,pairs,new) +for i in range(len(m.gates)): + fr=m.frame_of(('G',i),new) + if ilen(cur):comp.append(x);cur=new + def lift(v): + x=0 + for i,z in enumerate(comp): + if v>>i&1:x^=z + return x + return sorted([M.basis(list(lo)+[lift(x) for x in b]) for b in quotient_spaces(len(comp))],key=lambda b:(len(b),b)) +M.interval=interval +w=copy.deepcopy(S.w);census=json.loads((OUT/'INTERFACE-CENSUS.json').read_text());domains={} +for g in census: + if g['old_dim']>=g['hi_dim']:continue + ds=[b for b in interval((),tuple(g['hi'])) if len(b)==g['old_dim']] + for h in g['helpers']:domains[('S',h)]=ds;w['start_extra'][str(h)]=[] +print('SOURCE_DOMAINS',len(domains),Counter(len(v) for v in domains.values()),flush=True) +m=M.Model(w,relax_given=True);new=m.baseline() +for node,ds in domains.items(): + del m.fixed_frames[node];m.domain[node]=ds;new[node]=tuple(S.w['start_extra'][str(node[1])]) +print('MODEL',len(m.domain),'components',len(m.components()),flush=True) +results=[] +for ci,comp in enumerate(m.components()): + t=time.monotonic();labels,unary,pairs=m.component_problem(comp);rr,rhs,cols=M.lp(labels,unary,pairs);ri=[];cj=[];val=[] + for j,(_,_,es) in enumerate(cols): + for i,a in es:ri.append(i);cj.append(j);val.append(a) + A=csc_matrix((np.array(val,float),(ri,cj)),shape=(len(rr),len(cols)));c=np.array([sum(n*S.cost_rank[d] for d,n in enumerate(vec)) for _,vec,_ in cols]);sol=linprog(c,A_eq=A,b_eq=rhs,bounds=(0,None),method='highs');assert sol.success,(ci,sol.message) + fractional=int(sum(1e-7.9};assert len(choose)==len(comp);M.assignment_cost(labels,unary,pairs,choose);new.update(choose) + r=dict(component=ci,nodes=len(comp),variables=len(cols),lp=lp,integer=float(sol.fun),fractional=fractional,seconds=time.monotonic()-t);results.append(r);print('COMPONENT',r,flush=True) + (OUT/'JOINT-FRAME-SOLVES.json').write_text(json.dumps(results,indent=2)+'\n') +for i in range(len(m.gates)): + fr=m.frame_of(('G',i),new) + if ilen(cur):comp.append(x);cur=new + def lift(v): + x=0 + for i,z in enumerate(comp): + if v>>i&1:x^=z + return x + return sorted([M.basis(list(lo)+[lift(x) for x in b]) for b in quotient_spaces(len(comp))],key=lambda b:(len(b),b)) +M.interval=interval +w=copy.deepcopy(S.w);census=json.loads((OUT/'INTERFACE-CENSUS.json').read_text());domains={};ends={h:len(w['helper_final'].get(str(h),range(9))) for h in range(224,704)} +for g in census: + if g['old_dim']<4:continue + ds=[fr for fr in interval((),tuple(g['hi'])) if len(fr)>=4] + for h in g['helpers']:domains[('S',h)]=ds;w['start_extra'][str(h)]=[] +print('SOURCE_DOMAINS',len(domains),Counter(len(v) for v in domains.values()),flush=True) +m=M.Model(w,relax_given=True);new=m.baseline() +for node,ds in domains.items(): + del m.fixed_frames[node];m.domain[node]=ds;new[node]=tuple(S.w['start_extra'][str(node[1])]) +# Propagate minimum dimensions before constructing pairwise tables. +pred={} +for (u,v),mult in m.edges.items():pred.setdefault(v,[]).append(u) +mindim={node:len(fr) for node,fr in m.fixed_frames.items()} +mindim.update({node:min(map(len,ds)) for node,ds in domains.items()}) +for i in range(len(m.gates)): + node=('G',i);lower=max(mindim[u] for u in pred[node]) + if node in m.domain: + m.domain[node]=[fr for fr in m.domain[node] if len(fr)>=lower];assert m.domain[node] + mindim[node]=min(map(len,m.domain[node])) + else:mindim[node]=len(m.lo[node]);assert mindim[node]>=lower +print('MODEL',len(m.domain),'components',len(m.components()),'maxdomain',max(map(len,m.domain.values())),flush=True) +b=.00167838 +phi=lambda r:r*math.expm1(b*math.log(73/r))/b if r else 0 +rows=[];columns=[];rhs=[];ri=[];cj=[];val=[];cost=[];integrality=[] +# Four bin capacities and width inventory, all constraints per one replica. +caps={8:672,16:448,32:448,48:448};ws=sorted({ends[q]-len(fr) for (tag,q),ds in domains.items() for fr in ds}|{ends[q]-len(w['start_extra'].get(str(q),[])) for q in ends if ('S',q) not in domains}) +fixed_inv=Counter(ends[q]-len(w['start_extra'].get(str(q),[])) for q in ends if ('S',q) not in domains) +assert min(ws)>0 +rhs=list(caps.values())+[9*fixed_inv[r] for r in ws];rowwidth={r:4+i for i,r in enumerate(ws)} +for ci,comp in enumerate(m.components()): + t=time.monotonic();labels,unary,pairs=m.component_problem(comp);rr,bb,cols=M.lp(labels,unary,pairs);rbase=len(rhs);rhs.extend(bb) + for key,vec,es in cols: + j=len(columns);columns.append(key);cost.append(9*sum(n*phi(d) for d,n in enumerate(vec)));integrality.append(1 if key[0]=='x' else 0) + for i,a in es:ri.append(rbase+i);cj.append(j);val.append(a) + if key[0]=='x' and key[1][0]=='S': + width=ends[key[1][1]]-len(key[2]);ri.append(rowwidth[width]);cj.append(j);val.append(-9) + if ci%10==0:print('COMPONENT',ci,'columns',len(columns),'seconds',time.monotonic()-t,flush=True) +locals_n=len(columns) +for i,cap in enumerate(caps): + for ns in itertools.product(*(range(cap//r+1) for r in ws)): + used=sum(r*n for r,n in zip(ws,ns)) + if used>cap:continue + j=len(columns);columns.append(('bin',cap,ns));cost.append(phi(cap-used));integrality.append(0);ri.append(i);cj.append(j);val.append(1) + for r,n in zip(ws,ns): + if n:ri.append(rowwidth[r]);cj.append(j);val.append(n) +A=coo_matrix((np.array(val,float),(ri,cj)),shape=(len(rhs),len(columns))).tocsc();c=np.array(cost);rhs=np.array(rhs);print('SOLVING',A.shape,'nnz',A.nnz,'widths',ws,flush=True) +t=time.monotonic();sol=linprog(c,A_eq=A,b_eq=rhs,bounds=(0,None),method='highs',options={'time_limit':120});assert sol.success,sol.message +fractional=int(sum(integrality[j] and 1e-7.9:new[key[1]]=key[2] +for node in m.domain:assert node in new +for comp in m.components(): + labels,unary,pairs=m.component_problem(comp);M.assignment_cost(labels,unary,pairs,new) +for i in range(len(m.gates)): + fr=m.frame_of(('G',i),new) + if i>i&1:x^=v + vec.append(x) + options.add(S.M.basis(vec)) + best=None + for start in sorted(options): + if list(start)==g['old']:continue + t=time.monotonic();w=copy.deepcopy(S.w) + for h in g['helpers']:w['start_extra'][str(h)]=list(start) + try: + w=S.optimize(w);r=dict(helpers=g['helpers'],start=list(start),profile=w['report']['local_profile'],**S.screen(w)) + if best is None or r['kappa_relaxed']>best['kappa_relaxed']: + best=r + if r['kappa_relaxed']>baseline['kappa_relaxed']+1e-14: + (OUT/f"rotate-{g['helpers'][0]}.json.gz").write_bytes(gzip.compress(json.dumps(w,sort_keys=True,separators=(',',':')).encode(),mtime=0));print('IMPROVING',json.dumps(r),flush=True) + except (AssertionError,RuntimeError,ValueError) as e:r=dict(helpers=g['helpers'],start=list(start),status='REJECTED',reason=str(e)) + r['seconds']=time.monotonic()-t;results.append(r);(OUT/'ROTATIONS.json').write_text(json.dumps(results,indent=2)+'\n') + if best and best['kappa_relaxed']>baseline['kappa_relaxed']+1e-14:winners.append(best) + print('GROUP_DONE',g['helpers'][0],best and best.get('kappa_relaxed'),len(results),flush=True) +(OUT/'ROTATION-WINNERS.json').write_text(json.dumps(winners,indent=2)+'\n') +w=copy.deepcopy(S.w) +for r in winners: + for h in r['helpers']:w['start_extra'][str(h)]=r['start'] +w=S.optimize(w);(OUT/'joint-rotations.json.gz').write_bytes(gzip.compress(json.dumps(w,sort_keys=True,separators=(',',':')).encode(),mtime=0));joint=dict(profile=w['report']['local_profile'],**S.screen(w));(OUT/'JOINT-ROTATIONS.json').write_text(json.dumps(joint,indent=2)+'\n');print('JOINT',joint,flush=True) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ADMISSION-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ADMISSION-CONTROLS.json new file mode 100644 index 0000000000..d4b713501b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ADMISSION-CONTROLS.json @@ -0,0 +1,102 @@ +{ + "status": "PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS", + "valid_receipt_kappa": "1675560947524449/1000000000000000000", + "input_sha256": { + "owner_audit": "2e2889604e2d944dcd6b42d3006cd6ff35feef779405d58568bab081ae9ebadc", + "fresh_invoice": "8215609ea123187eae656d92cca1afeebceceb286b6d3474d1688ba1952a0681", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "assembler_sha256": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a", + "rejected_controls": [ + "empty_certification_maps", + "failed_invoice_status", + "nonboolean_precision_check", + "wrong_owner_role_count", + "understated_physical_stock", + "changed_profile_same_rank_mass", + "insufficient_finite_C0", + "missing_finite_check", + "wrong_reflected_orientation_selfconsistent_totals", + "missing_selected_call", + "wrong_selected_primitive_sum", + "wrong_selected_coefficient_work_sum", + "unpaid_wrapper_factors", + "wrong_global_compiler", + "wrong_global_adapter_maximum", + "understated_exact_prefix_and_global_sum", + "wrong_global_prefix_sum", + "wrong_row_prefix_reserve", + "wrong_parent_geometry_charge", + "wrong_rebased_geometry_charge", + "wrong_complete_pervertex_envelope", + "wrong_prior_added_complete_invoice", + "wrong_finite_router_bits", + "wrong_finite_literal_bits", + "wrong_finite_physical_stock_bits", + "wrong_finite_row_coefficient", + "reordered_complete_calls", + "understated_explicit_idle_remainders", + "understated_actual_chart_types", + "wrong_cross_replica_role_count", + "old_no_cold_wrapper_counts_selfconsistent", + "gauge44:missing_provider", + "gauge44:missing_backward_orientation", + "gauge44:unpaid_scalar_primitive", + "gauge44:wrong_local_artifact_binding", + "gauge44:false_dirty_restoration", + "gauge44:wrong_declared_provider_count", + "gauge44:wrong_local_compiler", + "gauge44:wrong_local_adapter_charge", + "gauge44:wrong_local_primitive_bound", + "gauge44:forged_provider_and_call_program_hash", + "gauge44:provider_at_wrong_call", + "gauge44:synchronized_forged_source_recipe_hash", + "gauge44:synchronized_forged_phase_review_semantics", + "gauge44:width_order_swap_4_5", + "gauge44:width_inventory_shift_4_5", + "gauge44:width_order_swap_4_7", + "gauge44:width_inventory_shift_4_7", + "gauge44:width_order_swap_4_8", + "gauge44:width_inventory_shift_4_8", + "gauge44:width_order_swap_4_9", + "gauge44:width_inventory_shift_4_9", + "gauge44:width_order_swap_5_7", + "gauge44:width_inventory_shift_5_7", + "gauge44:width_order_swap_5_8", + "gauge44:width_inventory_shift_5_8", + "gauge44:width_order_swap_5_9", + "gauge44:width_inventory_shift_5_9", + "gauge44:width_order_swap_7_8", + "gauge44:width_inventory_shift_7_8", + "gauge44:width_order_swap_7_9", + "gauge44:width_inventory_shift_7_9", + "gauge44:width_order_swap_8_9", + "gauge44:width_inventory_shift_8_9", + "gauge44:cold_helper_width_swap_258", + "gauge44:cold_helper_width_swap_270", + "gauge44:cold_helper_width_swap_282", + "gauge44:cold_helper_width_swap_294", + "wrong_owner_receipt_hash" + ], + "discovery_accepted_controls": [], + "exact_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "conservative_outer_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "recurrence_model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "scope": "Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ALL-T-BOUND.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ALL-T-BOUND.json new file mode 100644 index 0000000000..aa877e99db --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ALL-T-BOUND.json @@ -0,0 +1,320 @@ +{ + "status": "PASS_ALL_T_K8_JOINT_ENTRANCES_SIGNED_DUAL_UPPER_RELAXATION", + "scope": "All positive integer replica counts, fixed k8-joint-entrances local word and widths, nine calls and 896 live wires per replica, whole helpers and fixed 8/16/32/48 bin inventory. Geometry, time windows, finite invoice and physical realization are relaxed. This does not construct a supplier at the upper bound and does not cover different circuits, split helpers, banks or recursion geometries.", + "dual_bin_vectors": 1163, + "upper": { + "8": 2, + "0": 0, + "1": 19, + "3": 7, + "4": 1, + "16": 4, + "7": 8, + "9": -4, + "2": 13, + "11": 9, + "6": 14, + "12": 3, + "5": 20, + "32": 8, + "23": 12, + "14": 16, + "24": 6, + "15": 10, + "25": 0, + "17": -2, + "18": -8, + "10": 15, + "27": -12, + "19": 11, + "20": 5, + "13": -3, + "22": -7, + "28": 7, + "21": -1, + "48": -13, + "39": -9, + "30": -5, + "40": -15, + "31": -11, + "41": -21, + "33": -23, + "34": -29, + "26": -6, + "43": -33, + "35": -10, + "36": -16, + "29": -24, + "38": -53, + "44": -14, + "37": -22 + }, + "mass_per_replica": 14778, + "signed_price_per_replica": -3568, + "credit_per_replica": 20850, + "normalized_idle": { + "1": "834/37", + "48": "11374/37" + }, + "equality_requires_replica_count_multiple_of": 37, + "formal_profile": { + "replicas": 37, + "idle": { + "1": 834, + "48": 11374 + }, + "profile": { + "1": 788046, + "2": 165834, + "3": 137196, + "4": 43290, + "5": 27306, + "8": 2664, + "48": 11374 + }, + "live": 33152, + "deficit": 11840 + }, + "root": { + "lower": "0.001678380917692274545892", + "upper": "0.001678380917692274545893", + "lower_endpoint_residual_upper": "-1.534334422354850240664730941044058203873225225405768361473560303822043E-24", + "upper_endpoint_residual_lower": "1.389525441003924130455182677306087316466016408739421603687419397760959E-24", + "strict_rational_signs": true, + "moment_minus_one_at_current_k_required_rate": [ + "-0.002869345688952279215229895880902239583388581975470010794259231304743912", + "-0.002869345688952279215229895880902239583388581975470010794259231304669728" + ], + "nominal_k_ceiling_interval": [ + "0.001675568675201533367614920370292378992889334964348445868456321219843351", + "0.001675568675201533367615917021962558975139221354038979340261826357853211" + ] + }, + "two_engine_signs": { + "lower": { + "endpoint": "419595229423068636473/250000000000000000000000", + "mercator": [ + "-41365574196260146859427328641851351162134711/26959946667150639794667015087019630673637144422540572481103610249216", + "-41365574196260146859427328641851351162134709/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "atanh": [ + "-306867/200000000000000000000000000000", + "-767167/500000000000000000000000000000" + ] + }, + "upper": { + "endpoint": "1678380917692274545893/1000000000000000000000000", + "mercator": [ + "37461531782114767321903500131065006272770531/26959946667150639794667015087019630673637144422540572481103610249216", + "37461531782114767321903500131065006272770533/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "atanh": [ + "55581/40000000000000000000000000000", + "694763/500000000000000000000000000000" + ] + } + }, + "supporting_inequalities": { + "mercator": { + "credit": { + "8": 200, + "1": 925, + "3": 375, + "4": 100, + "16": 400, + "7": 475, + "9": -75, + "2": 650, + "11": 575, + "6": 750, + "12": 300, + "5": 1025, + "32": 800, + "23": 875, + "14": 950, + "24": 600, + "15": 675, + "25": 325, + "17": 125, + "18": -150, + "10": 850, + "27": -225, + "19": 775, + "20": 500, + "13": 25, + "22": -50, + "28": 700, + "21": 225, + "39": 75, + "30": 150, + "40": -200, + "31": -125, + "41": -475, + "33": -675, + "34": -950, + "26": 50, + "43": -1025, + "35": -25, + "36": -300, + "29": -775, + "38": -2050, + "44": -100, + "37": -575 + }, + "multiplier_interval": [ + "263793318508455341718808609431267478034345543749560031545508895007/779310958347323181564593404859161199159823705964063423281901233766400", + "26379331850845534171880860943126747803434554374956003154550889501/77931095834732318156459340485916119915982370596406342328190123376640" + ], + "strict_margin_by_rank": { + "8": "530729748098287146015557943680609659452510112557545364256247035953/487069348967076988477870878036975749474889816227539639551188271104", + "3": "33990224266012927431353260277066624196299534000658525417569001581505/62344876667785854525167472388732895932785896477125073862552098701312", + "4": "749255338169019388227303570237432777302001020794607588316272374407/974138697934153976955741756073951498949779632455079279102376542208", + "16": "1249832940919793912500885322350469520483646703945658698961039576309/974138697934153976955741756073951498949779632455079279102376542208", + "7": "7227930078908795831357607678520158292750365585103644309172091415987/7793109583473231815645934048591611991598237059640634232819012337664", + "9": "38706307438717499347485471374476160773777226277086355507647003976993/31172438333892927262583736194366447966392948238562536931276049350656", + "2": "9157525174975840795051823043538029565576221119714753869009774484025/31172438333892927262583736194366447966392948238562536931276049350656", + "11": "34711209698987425925675237907400606129763913262268431423518462152145/31172438333892927262583736194366447966392948238562536931276049350656", + "6": "23495930099659518506086775693551678942750463360468413440509496535023/31172438333892927262583736194366447966392948238562536931276049350656", + "12": "2418109646652694340525681838860963005896966571992058697018778936927/1948277395868307953911483512147902997899559264910158558204753084416", + "5": "35317126020785944664102987079544072095884325020052379510104059264205/62344876667785854525167472388732895932785896477125073862552098701312", + "32": "755524033210786054741930058695206879951548221971206150758034114613/974138697934153976955741756073951498949779632455079279102376542208", + "23": "66636299139054611648039110587664390597823628240848113454761912854837/62344876667785854525167472388732895932785896477125073862552098701312", + "14": "33371551731289674404538805215022296089869109772831224568975129563157/31172438333892927262583736194366447966392948238562536931276049350656", + "24": "138671437681835948893251478090863383920634117506078234226040235863/121767337241769247119467719509243937368722454056884909887797067776", + "15": "73533915533576800176465821442885840561116848114960123900800409334925/62344876667785854525167472388732895932785896477125073862552098701312", + "25": "75153876193067299133037868753403087087437445707595152295744008985115/62344876667785854525167472388732895932785896477125073862552098701312", + "17": "86130307638257766598633413134099831475874196707203750389309934194097/62344876667785854525167472388732895932785896477125073862552098701312", + "18": "22993864930279336877344708190763981707543894436404048667075591869115/15586219166946463631291868097183223983196474119281268465638024675328", + "10": "15251852125909789174837723392750472907276282972024103552115494914445/15586219166946463631291868097183223983196474119281268465638024675328", + "27": "82866872848034142297589303551124921890538719665706180799381224077073/62344876667785854525167472388732895932785896477125073862552098701312", + "19": "72217086142097055627057700833934407490609009362833129057155303237545/62344876667785854525167472388732895932785896477125073862552098701312", + "20": "19379561403710082581709165806400259729820844594338683730594566428285/15586219166946463631291868097183223983196474119281268465638024675328", + "13": "5307311926539578189457217792494519267185478457866786243488905495083/3896554791736615907822967024295805995799118529820317116409506168832", + "22": "21844619830399485532497346690886331629913195218352265303732683301911/15586219166946463631291868097183223983196474119281268465638024675328", + "28": "15279132406866561661085996335833980855444791679740635352724915219193/15586219166946463631291868097183223983196474119281268465638024675328", + "21": "5160502740173912358947931046297750034073892114340883185162536768893/3896554791736615907822967024295805995799118529820317116409506168832", + "39": "4890752885853863657315444822251876911744385235815318227212705031045/7793109583473231815645934048591611991598237059640634232819012337664", + "30": "16933035640577731834247982832461819647846692561358162012885083708935/15586219166946463631291868097183223983196474119281268465638024675328", + "40": "5110193674395886941605185731066445350641420019220329419253169000479/7793109583473231815645934048591611991598237059640634232819012337664", + "31": "35392962253477089112325989353889926852863840250491988053961294071937/31172438333892927262583736194366447966392948238562536931276049350656", + "41": "21255790284845832269966672499759305035655945593817111015552811071217/31172438333892927262583736194366447966392948238562536931276049350656", + "33": "19103132998939936463672444154187923979877566194798670290923957812869/15586219166946463631291868097183223983196474119281268465638024675328", + "34": "39497597696699307665412306641230445721288374994781550479063422365967/31172438333892927262583736194366447966392948238562536931276049350656", + "26": "39553496429988463350083081085076593517549542440458156880465056612641/31172438333892927262583736194366447966392948238562536931276049350656", + "43": "1418977422440514295609256243434174643628396732383731917834186704217/1948277395868307953911483512147902997899559264910158558204753084416", + "35": "28053006338281994131013542964038311419076875779639824768796328968257/31172438333892927262583736194366447966392948238562536931276049350656", + "36": "14599382197811187081059981465333064619375508771162358365907290669091/15586219166946463631291868097183223983196474119281268465638024675328", + "29": "89835097932455521832384679659343247126296620072181084464177909997729/62344876667785854525167472388732895932785896477125073862552098701312", + "38": "10986261850800311533938393373832533061638888571148447112670432053359/7793109583473231815645934048591611991598237059640634232819012337664", + "44": "5338622363425078242057786797075614092730713305337286217242231173141/15586219166946463631291868097183223983196474119281268465638024675328", + "37": "15137394447661863586176564484955315501746990151049411999455595883431/15586219166946463631291868097183223983196474119281268465638024675328" + }, + "minimum_strict_margin": "9157525174975840795051823043538029565576221119714753869009774484025/31172438333892927262583736194366447966392948238562536931276049350656" + }, + "atanh": { + "credit": { + "8": 200, + "1": 925, + "3": 375, + "4": 100, + "16": 400, + "7": 475, + "9": -75, + "2": 650, + "11": 575, + "6": 750, + "12": 300, + "5": 1025, + "32": 800, + "23": 875, + "14": 950, + "24": 600, + "15": 675, + "25": 325, + "17": 125, + "18": -150, + "10": 850, + "27": -225, + "19": 775, + "20": 500, + "13": 25, + "22": -50, + "28": 700, + "21": 225, + "39": 75, + "30": 150, + "40": -200, + "31": -125, + "41": -475, + "33": -675, + "34": -950, + "26": 50, + "43": -1025, + "35": -25, + "36": -300, + "29": -775, + "38": -2050, + "44": -100, + "37": -575 + }, + "multiplier_interval": [ + "2996394772098395462075306899110105593224859192332295763696885524054703192733458286949781205134566691031077011716524592900334954898072677953840784555046488129542609846026394793612663002681550868345981298237108577917062356332529189072288287553596428986254015648672688074696785646044980253391167932194410991359405534286872067462691232380727555092137914629766598481274145256850490046131395370416704926970934147403642763607754281438843037517971540467051938874485011572138410806657052508236027323950401949374904045672093335920383794252395739497170134755863847687928669148155058127669682705096800776531001113208372366016655182971014516826815035365682337420243760192743870431835513570149003903718777570647189511/8852094111534754898052543837928820283433581521224219535380859375000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "3505010496198319511676196276072396960805640738649008253960576004059013166712527324136547650389535519434184156568641618928996790060667842703721796786044649082703948669106332814847890752685474729747248386567391438361470840640618908516421628145992846156693890814975220719387654668177202664197149219611983480634522384767089451598163218090193060460834864285721774651683651078589920606941013571198771847274212088452460250737157688295530661595079495469050348207438258287951490194911271700149950551105616570799318012740027512536254719918956852867590926881722951688555725600850547323652386441273626216857114372881925969981131679588215264457320896834556641711770279511298144603705871273386885937376427050137657023469/10354671241311924471127765924108990260583759932968038460020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "strict_margin_by_rank": { + "8": "197440010150252917709917982483211720945753232507136993494151733334685145525934225005336679226280075007214058976298910206021694649537339776219837231238552730154048181727724229320444456000521942571422949877351787783352775239947285990196829060399110601203603877533127010019369255683321403916449686645428575240535752754136857724514190126190610690389276431637674500430798786956034288212663922036914278371115859340674195475660648127078881671623931701659540827918582607182102986698484514472414858332262555832376695750342957895782254995041858483595931144486332803459350798547183039051810607284692181276470044173042584426539757199020533848730841662793973739311621929075459979700770354926472657715122686468293834949826407957904988627847388026117138404201217645239197744631/181197638814335619833006459531649498682057204491996112196651360067188230455011412903666889021856542615243711779700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "3": "790306913280482494976343992060893266671335226348380156985802564116672064990014522414802653777906246454583097578696243091543036044391128664763840545307800045004576256516774306537855962797987026502093123386295182085590679582770331853876647228383666112091000067257504423583997318616605887311015895951527591688591304475859333355161946472663784345934192074518334056788536559415085926495939233061177425290322704422336110253156172479475121115480978782324885316415450043172768144177199647113339294066454723567268842607048773321429362924119164918522611622956108415902663991968588778283797746429499532153155048431455602516218011642960610019432817989204901586675077632990016707775969414556775017487901039860075818156409611600355498198704515935669662234220143788916642161017/1449581110514684958664051676253195989456457635935968897573210880537505843640091303229335112174852340921949694237600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "4": "278735047551595502525066647419040336075584501680839181994965219147093079812679685682540523837148378105486039566794376911640243037426303867522639669386884123544006041891093331037817660362337396935260208472959389023820036495924878448838709550834960316051909529296593115671997488960553734864681705949641504003472578852566010170170357328265300954276040216290070384230600363739570534576898003555156664617377847138546095860415617962829600343218718075090770914185179103608128443605191841666963875042580457432244220414270988253493175449391220681615823555442746380534137306206220580895181555200400028450300626814376999625298318671565486713966754268249177867317962843158302841912030932997408330275967364049531556882929724656605796049656992392482125654675896375654822643191/362395277628671239666012919063298997364114408983992224393302720134376460910022825807333778043713085230487423559400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "16": "33211283873833436948709929183417024101003069254398246400637383559267729920791667575341695843040118655168480136762420367437063595053281381490605399849077291142554430002917659483278192028930087517075518171218660922465851001773469103433573904161048537960347246129080250946327604438804849345064618130418676316501534382914903887004416385817980277982984802094967941520445556335487544257926919082383581175327054509882522900781388973563226525919941981765249610024815183037440014707656236694920665829830837135923350702108325552380718898924363985492113470316676246303289765224712297894139989676862760551902642653805587439065770156311681295764257893660969050687675138335138609772252244508905905199017585366829771605807336645651364508736380687971354418499397439748118848273/25885376973476517119000922790235642668865314927428016028093051438169747207858773271952412717408077516463387397100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "7": "537781269378096398188534689195077454304431671992733639780591707831935146436841813976714695227243319033311320790470107115973556331559722582814328718871496823690963521696355595521530971942460935578650267658611935229530855436137942714951141542546581913318186435097914271981768191505927467987924927478280878676724142930300247033564235629536468309455815111657987885717232587489034406553653266836474248225337055361369716761392952293682716352067888971232683295658851136809859684703821857632841095045157004163282146801018125548616688971998788744155983431609876572201860719482460519522147518313561296570241154984692914161288764645212502709112875700106037641722532505802106572910631341573579743948429309768872510020963303259341880921531329424763620457953568786956626046869/579832444205873983465620670501278395782583054374387559029284352215002337456036521291734044869940936368779877695040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "9": "1800847466225088755130597608351160906189209482721311683518195745202057271430833616870561776304262224064924500327348877567301954124363399392776888584155161590568169959105689516969189841781839969898721444694271415276494680405985480251060158799108220654961809948848182530700969282031772150025661330988662328625104396549914185555345207092969506669386221435466720644627891524672942897340927470455766102625292101362763177323047687336267494681075387564563151246493863672558311015522235548138009856246465778531984975411486269603365614460778703218759022938124726932534407444908139737553161874995702382059511404007897736972007128732020521092112548843681992223963912845158991531473155038927181522721132084421562793602811/1450327099233854242496928782406257915237757996437376128676800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "2": "212921674116756313574745250680710083634878955873974457535473818828883036868512821612012733380047357273906448268058871955170462740852169733384365812332901183570723068359381121891308189014053554233464033977018900238659164458199791114690466825217419292799953758600041809253933807426094306823162726283189374221798273958390072717234574946327487548855734573131319712537053032083574855298307878404406708142440115150738609949379429900148264125838294343769533412579172023987047671579091957747001518930496728196347342262364640817326245348204553809212735007062684750475131800707686913209159256248073638104821125132940481996435285733134111395487555384562064484795191289503083703218332847875865437997517547568570561665148920605495229049918009115455382440738909488986611295627/724790555257342479332025838126597994728228817967984448786605440268752921820045651614667556087426170460974847118800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "11": "129131288002089536598754944680577311895027605486314757332109776780869919769835082529472747474983423330891794027041044319212468181036088855578292308995402742834973752419667772965546413333105606274965822024836333802989414595641017334382358188082034403586542592076055425535954712857703867536695990401785410413366677626814353550804200039113421589225062777682104621809745563560141334471011753513939754256058274137584354754109556747725431013235081284124461426070900907233588024004832330179602256056897057795340040674650507300641890699878401837879629059631215327536023506737332917863665922043858107501833381011461028668068531692686269237616142531563196421914258207444704994684907696258460569076152127354425829612763998309833320954311758060265569122707529640014433888541/115966488841174796693124134100255679156516610874877511805856870443000467491207304258346808973988187273755975539008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "6": "1092608030261404760694348240217164248482869859912397518925754185155609020615188248903909417034546347854483789692105811851052453452281719241408368723141727388728254389789430881554714660161642025313782123588760734970365112292661255759205831029456094667814116900553643714855819514443047283219483435976402578446810648817121286360723595630732189878398771573554776830578300207398911455982214053424914286085478884667864704266269606393383587144583414733889122734850959615611577032541357098780483728259464221588081784522714488790223861772906927359745873209587383709290222612237537290133931858009778203177156097238983277227994510973038883740732925552209848282128493939057460965300200254532657762489111924499846076868120338104329483608090016806940153031096847840193162451869/1449581110514684958664051676253195989456457635935968897573210880537505843640091303229335112174852340921949694237600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "12": "899575716059382706989361219584082180153689203078987931958756459685870466296486551262503025810193129072596726452015322581412310840156711688947846438323314219854525867250280574094305286388452865112152937851314667442526856732041615876529166765872858758124112948098957040872455780931695891337998506378933453728576597636739831094650807009798702419046936380980498692258714251131084390694192669177369216494674064590605050250776414855554924017010799313298908208715245603443414757283652435690025563189147495425854559170274359460596883170040480514725801890583289194489949817075635960361084508776609075558952910753120086041986338470389254297189782871895455503319936956202867118072265046827035051259703840516891534409270912809777916069537303735844896330069855770410511685301/724790555257342479332025838126597994728228817967984448786605440268752921820045651614667556087426170460974847118800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "5": "821158714134579282274658139980750864620982866866423447544977640013720157108632792856993614184048186024031123027357721566726592867342295644773765587951704641491445877155781854830317199014536426288579893199966132658585879859293313554599668374859000760112840452153351878098273969857071433847878218518899898578412640016144125096963252398719415556049159058457816557259813933540150057165767180589897312111220103369721570450349575060844669012299667001836928907818988422882769543024532351346444669278024394393509066746420475498168544555349406479154585270509107027178067641980071962238382159609066357792105700609491368386542745237171095480928669767611689956372456413005757492546577332875595924026060112650839622772438187486924091581639979062111339688197105645968679333007/1449581110514684958664051676253195989456457635935968897573210880537505843640091303229335112174852340921949694237600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "32": "10038110822235566338896905941088288103580995668596903578355033615726715919320302090734453206136117567841927191315337474778268497109460673625243311555330411343234836972469123424037124121596295144767619754789030747904040244534450385543353163138653363600212180991445932500688545973097118073916276968853336060936455313304526298653434664596034240767969985737862109281050132973654816870270323791407351978251827544915336565548596792956624812621012860383223053494620565935163470828275031637190824805221889539369651636455512612527978562510050043809701958012512575853708400141277176657376520852437929661939324806631373149471050953728962775552403768836321788228835226634730055006548348574073715936038258801903217222123360301525693405128368726812565423748799752723711246001/12942688486738258559500461395117821334432657463714008014046525719084873603929386635976206358704038758231693698550000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "23": "221337285823590536952134417369132864861066305774691492914035409352139950075710497094795279476870528760329238387480062248766547004674187662559472091592671324093155791304065728811517189502086609918222785679107502753064454225428590582096316167122909722056135956442783807405623496360526615448383126900234939959080886683635724906909555206788095805236261851780209337692856956982542427701175787365267599542352829450780009789806092262007280560472080273736092074406382259209373757951562956893287058187507756252022545987290152770631634447664701813361858706083143695696941495839887706712948645871786347532135235775166351011723470857282846182117240851914093265356272357758647384789392992849779811287748066159072554012568178298663188467695908914806683406262914851025287558611/207083015787812136952007382321885141350922519419424128224744411505357977662870186175619301739264620131707099176800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "14": "1551844308747724665445977270237590188340618831257299629124477886987632900255539890722627340070458125690486990000619202463066605576631657695694135909821291652284902656751022528317584568125956170274986328949821959642885583912319767403627772012724181519872867685591326428337865710811857588773261627021718097773491360851798578846550941840827467452759199659344423269266466669659101745366087860030097139287473537745674703661941912095193412039048265754759466784275154476692217918180903360926330422525169944553260987747787426917269459606148882326507666152584523861583429263894876875797791324897113691322736641163100922569828619386195962483032559306260404335954836347149305963542414832860161714552086132332700998207428531678037379585807918843477347244516989648665181761497/1449581110514684958664051676253195989456457635935968897573210880537505843640091303229335112174852340921949694237600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "24": "412704057559350024400732766475105749721032669176815567945264247589752445533301832001901439915287682513673849142973064184522628092004298259419619758257487023026760708404552368486162485572967912651374745116105439839063555717870882044882355565192050184705740798566436659649474691251400384943401995153914066988779486478952374697982985247466380693179319699754864330755573165138023026053905707289251426833423090388066313488286636804505287123309536226628064544509093500991680257589314841657241779137411503425630259709314137390787109829819178133697884518557801962551629843907652941247401458688360780526066270327673099484581818191922038254026707316486237740626756388973811369860649810003041289436916819714751845008130393521910417470579891781814282695590577027001711919941/362395277628671239666012919063298997364114408983992224393302720134376460910022825807333778043713085230487423559400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "15": "3419475043880647655605023481094948526903745077771280668063949121951324377449333862520060604834504058685383280418753025902523456110902112402051253514266009721182114654941400257680301188109054396518807592930135916406033155145902102271974836646275090805250313756710596766112462864969038072460365412445262592826286809920345073592933630178786998790547501413455211752901297603592364528694021540612837812838986684859449739366189347029686899665423744256893343727169944226797377510074645850557409570915351408889315135564723738413336336918612705826895397198992120256016180585098678158619100400873481381876130134225816599196435065125789278219700549744819179750710670897215741873623525404316317052803220438292807642717145047197645004007055362210573104520105528406767115024273/2899162221029369917328103352506391978912915271871937795146421761075011687280182606458670224349704681843899388475200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "25": "1747403237188866579791288735123563073097340555385055216186791854279513080351387531484321031850707032172619106426499654087373442150729714781317662099347295412037486510894150793758687887251495965312440354719572948711662880806908612126705951782508487936770280282112838248539067332375921058981009271786670946463725846940708929976878511073149931130958080340639023200104983938459674866979193878034171198222858759568901874065283766054781785844646184065943856259291352603903850281949818101323876225380471750404993503997951565448727419744087249565055662183531310119713815986238610736428471126991652477130316474152264972129037655330232739479553873549969744904427722224249258615168871254078583094401803028062331042433612855712172968554016898458660474035194008364321810001291/1449581110514684958664051676253195989456457635935968897573210880537505843640091303229335112174852340921949694237600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "17": "572176089191897664253949150341134817959361644266585116854663405144285820533851230926583566083839459427880781348558008098083893406172440666439460666435539263584350084592747352517164842587973981766908548553302289621733064333701659131797988194256174146108546360455455590498722211545954993098752414675125454264045013820019506968472767717407461454344729077512158547233321884685705268974541585247141299478896640931704419770973618599468326933023773046012358284315243251548184643544415789143681198543720541973831118960408246087702303828156619330004740422275865140496514773288349082484867584201559581870033348479730747319528914141321396973242875440048155122464049763711803890049612039282004246307420774303277715266274076541871573513940582043115227560769115060844092682217/414166031575624273904014764643770282701845038838848256449488823010715955325740372351238603478529240263414198353600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "18": "42792450263023596295963109747226448687295009432941705723034034923275653677927244622525224027862793979767166378779691973771405421496129788160547029203889879286354167901458812427643812142501670548933448340993609534158896444015235390338013805501609859332049635827921489869715403784864795286563892536897931957022099173634240856806359900325395141123152958511803738908068033425701732085465949208886838146660445619427775577081749236835208585526585444531417169539485595315448809371004286581814163096140546771917684340705474845122191866848535398816840443904150382971785415319378130469950456451102401171486653814282471190348327495770587180887954925519643362016935211613677797472250661730853357780168593812069843872947/29006541984677084849938575648125158304755159928747522573536000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "10": "709241815005654837893506393163848180362392312092746503079036957821472675498362436356488790331650110579808527156949755400324472527575516595869820878805780283390824525238072832227663656010292395340880734937757922681871985245985374444878971404000985207749549093992074204298259807391131965716543208949067530408888176705851759094496820622085002647340576759135416116600255874922599397170516565624069343061998009150826420842905841603033160787917375085804004471156149954379300582432587420012531680868858540813738953157876673967541834547017391643429742848799139404642822728059305054191673392789233474169207869959115580175631444281874865821545163274156558820862849815523026701850616737647560677055207992727599697258854336357333243810271677771902525414232356991635341870439/724790555257342479332025838126597994728228817967984448786605440268752921820045651614667556087426170460974847118800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "27": "168084691932538454246786365205823888242940917471441593872622725680104674255094911524750646511945586593052170051346432163908658190041346104153307076819922823325041124745817197028611972516079521009443123067867334013647070363062710424015156895225443487743049382895995821539459535851112599005103333040256315965536960197280290196809213289509769508990876652078430997102889875664241401524625889475954618766723836559405887094302464131254750044238338722704089463279796166114565433340491512876929801269021661428835838011357883556042817623507774178683563461315862933582575030447348433246540513479092609357722024937537030982641895184506404444992036364967942823714394866273593250559317483089960533252405194656544733/126458487307639355686464911970411718334765450303203136219726562500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "19": "1679119913667054036984633950876383395857943506004634081212907064588308328881304272825506357716062262114958102513288275193147098762661776244012356960829696324839094815589923431049663151159550494641648148106456740245948804646349058047753571117701263486419883756048957932676395861015091035119584463474894309497354254319324412733845013938232178200996155072935503697845035135953930363753034975563747614768130200435587511109945476338107039362706473969659763259923394494108725047519185064325238308588981366859093135858834208697996245891973747336556602487566807320617204865239429037805524940313254556784296020512405455553169772272779655416360132042073227648080953067835053633362287315090993343226692172885938214554483306239022019331621820122104044943518790240399104596201/1449581110514684958664051676253195989456457635935968897573210880537505843640091303229335112174852340921949694237600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "20": "90118860257183245848769595122986949530750695417801517364148527747655063412973931201342862457834598838122870956743443338111562502097538446862161253029508477033098081350301586408958779063685059152296155905960078313475095527383505003471752769454698800835564165093916011644561646062925216279367224674285115529557224257983802585860140454643853561664523306114639293580008394863718460871282691088888979156721424181927096006459634427389163651439598486224641086272282402655414643915702051185313133946847605190599593963505164105555353310742992596522309335644501883089495815713043221416707012867785427025861483383958551241520541454119045646917699773224586253959462502636733189830406737856425172250242199938513946243254453219020396782234069699544525805070805484662661823991/72479055525734247933202583812659799472822881796798444878660544026875292182004565161466755608742617046097484711880000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "13": "3948810950964346569918666079706013282593843017664549569811754022912991298683109895556816647152239640744401556170586181204178236133055433762813672131897065035427570948268224581861005028471087865959442229937981440171092461027318935273227046067560274456471685754287860230111254343605530968511836677976712416995535501700756896512204893884457079095484400720770704571110075656664464926957765890267523949788883695962699961696402845099708789577761276085718668955907751758688954550987452184421443608583856220093730265804863442282136830934434639614071374089296814850261211152061678779783322853127875881784769041893950589487575408377709030714261118085877825225970228744442842213958176617642470563927231689955732031679024321534533975313062811294890104880847789075450584751763/2899162221029369917328103352506391978912915271871937795146421761075011687280182606458670224349704681843899388475200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "22": "145191649170244384284814664478349778619837688600144172131112604943477316274206685011282206517856207620895484739253914729247744886529387510618484096849597510487075181760180158625171600706170634199735354512597205804230268269476337855858023169768676498901466519428865033600530124671907739891220121859565554293483983297422446685290118497177988284298486615936411103724286570254782566291525023253052729782278932149422538714537169332583092923338907496242131019256289944210693325589244363314392238012827125371145619170645081564471593690774622333901137014655676043802765039063178099866176825104891024622098754398981704170614826268878686093105047501650004963027825087416366990906608814303523417150836137107070453331287/103594792802418160178352055886161279659839856888384009191200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "28": "101501486137997673315404513103475047753238389371871477703721998301722371674573473453147730049423924562933271173059364464226586406516598986063410892280129901247766642231785605410900811973263132755521130938786902249966616205886801394727298150077809805613653052292834664912805213827360783640584997026080265027368090233785847668174478038782934240467988296386822534662812528624680094277800584512732684168712506176733515943815359078301316854073210278290243776052928122983233587357448480429853673959505557597874792341180907670805783177955573899333000552754907669789262936380977405292494989914180725278295218897768951317015319242528933038279963172963737383568510937856287276167965654307028561765570248845147169972339126616397881523074396195916496814563620750294779497607/103541507893906068476003691160942570675461259709712064112372205752678988831435093087809650869632310065853549588400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "21": "1919790094772781724846533358456496244331615751966070184639401809988292526496956784413145819636077465493813470480410463417683819192854786471970908067647276032775129028284143357988347150021308421698065333083609629152696022931169985382925191505033171721382325640443175266094012760018349769309528409061546770529042995501752681474314145856689427172016067411293778625861546635210099693671898865959756470759711634074050797388811338260203552289581733220949582893517975799731884235759288073764744412138442537089015559711042219033757249717934602724027938802440384754344120163428042992012967938100679626053255067020864239109267840568779797454135168223012701383529277066405136832112933904863666454855092158308664645708588354396417449739010873504215736345289958826121838570927/1449581110514684958664051676253195989456457635935968897573210880537505843640091303229335112174852340921949694237600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "39": "7277755225784239569711898752522823745077455056189892078045999928188228682397568122372867557482572057789880376903161499150031219801753298142555920359520143372251763199589155460382776372856315371202771460853170492085015403020725300365209727357305827826463491644919293174113376624003349101880120427553887121985907054651349597515049393786533457592550281557615254087901470889140147932079847734578537760839795181596553219510814450360211191602921877844474829665492459538166227774033082800529757589838403704689985844392227106485749302598964505614082542940557099965214505134037749452098432118062002530901438722437645094946595322780585015097375046541742276749454608578116374558751537674372140035601032826307272086486097307561094127186581806530599801160649733512021203849/11596648884117479669312413410025567915651661087487751180585687044300046749120730425834680897398818727375597553900800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "30": "1574840462933272157418218053908030371144815376994500882068931342335691421036502431482125528447043058336025818596469186584722279602049814025012586956766823828938314274577696124772147984277469060481115285401714584314490168964376408740869444189845392449741545382819946341433744170019418715723461217878167689278050692886703517967763021357110792044715934896781444261684617118067126067828151310199298981835917158241501506633055431746289590355014822705488329112816084877971462770912623610544901060398210503316524992515372570935992961878830364082498441235083364673319428289074213283300066744026697417270586417383595467419221716181266152634585005357026498915680463034706029052520457110356064198967448736978956030645218698819024205586819942183029159365782888571540683247937/1449581110514684958664051676253195989456457635935968897573210880537505843640091303229335112174852340921949694237600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "40": "118878290638103712934345629222582529460514672445459876687730468460855258665382666635207856193838449342549479085420902451359991850353648889860347358817126687376854546010624908365757521155635633314944630781673675913801673677777237167369478775297092941452100687985968541581314318331365768017292875981944563168361474424714350268685778786190103723448013478072588340487706272778116820808928673953264734131629768536817409288653256566188800070394824366039582721216062120165137779688408440602351682989897813525931723635877351223137153976914648057753086176838927386407998948966947343374683269631380170272899654688429546094777451694943458748946935616581874678147831650223905787669304065122344562698597011231743853149791/181290887404231780312116097800782239404719749554672016084600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "31": "57432022737146524195652368752871088184327728632938693228619762743882866408631644054011639848163067375455352422618981847277819057865778564814102452966612545983452404756050754680121186885898432884100207118843131025984414896556623576033293150098392306738132389708351375512599402807980864238645978347459432511282804590146222311111646039118341185265947140325051947619256452771263392150743873849355850905196459858387286861448244147326789226274434158205539774012437517350402125662832750539676361032936323670599498478991652042647707912195345356788668428433177708647646183666020181670579404272275718862358291906759054944441587516302082194886196252920219355521335200428800398968205831586402709638373016257880385541/50583394923055742274585964788164687333906180121281254487890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "41": "988945694127024122985751055156204547431613485042188170909607892178739305507941880194984036190695106162800313610697001821935252471587184538716106935967263402528644529020163445784414560909558794343464277091047251916142615266408532318984323041280573666290335058915304494642195294858377892825130102310208789447094541139384427440139748123830579678237959533485689332426002752119741963783682787037805670966664398131740604507296114825361812660025981860900911636863460486334902148759644989607252482514867934782929752047675101577400058623208778959157423270428258426471629786669198664494677521504560982701285095239726325934323463971274748543063676114901111346984469194213799090301543179208810191879994238375713463448571/1450327099233854242496928782406257915237757996437376128676800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "33": "27123757423223573637719714425618673551113535053462447237343657257392313566670764341378905504907534170844657453623424332069654030480465354903375103797598939326820334785252563425440017660097367087961613460429278462715346233619241322091148115984417900266817677715432292338773171219797761360069428790465853757767523110915981800929391314405832074335419456588338235797593510848611229355199678391467688917570857797915480958436382931682839724255082644752705742827013986532809964927481718683887404118126496736644739654753643574995119138647962814070225424225266788466578359325325117378485119867358636249500657058261581828735240161841912076823445841419512284861431493126694870876782804945288506154211851379917043861/22130235278836887245131359594822050708583953803060548838452148437500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "34": "918831495960902927397055416218631116892880423555270341345781801694762370731769125464928482147292900704251777193556722628082070649975676459143704740421609723123905493376695007499760204876491411333443246274144018434552568097004055925004692994348823921227219581565037890054603947195327565781962826586607408449998328774566196525582279708785790546703531716667032123034971844239673281910554041910732499460986360842468912537592297980311265716250117812264914681577210168232053298101018498106515028173788661917968088419089973331950487913493796824935915534695908017899602511924529786566494316657791354589764797312901775671833343139624013647376733500726040857158334254065602903143528616294899581021448720707272525172323/725163549616927121248464391203128957618878998218688064338400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "26": "14714537416826058260296829491914118255121546063112017978621354356415119545543031843999972991903302463492914403175227061956726299900438197093215090443072283053428146048170194942405111037196512685679113157530284199514854228290199802145710099939436707783854146390862873292576532850007804488656028551095250171512593994723127405251904975500827593973864772339517147100993390413299581467194698785686149953247687592041127517647490285781938348974811164785699021396362404814134688737518398967366838554008220207520616019266995191932220018322147104676669384140716832147940782903186593654523454623265108345542686003088659406823085446407806130940110236073621355553738767506121125000507859123777134495731105981585993000634189526818837061477655379612081910801521927078846818191/11596648884117479669312413410025567915651661087487751180585687044300046749120730425834680897398818727375597553900800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "43": "257887746626312244012904379319575058527967315702217539509657052460219783479854259149233097906031084304119549806925803215448806577410103209962538793923555377361203496714137831733715138306697085005303941893008263139888570761787364415620922020733241410655241947572091877448006155303684513823404851458709302961400332728403454910838044143085058822003102594248539141824457971278191384582633850626175845005013059999203708372472133361376598882850811749840765930989989667113976080122803332201105387082137530123703301278203066391409005283643230232295756032628482268798624586900659437368770606269687068982234584313699461993639234634353632270026821524216952639499003994539631869379191462292505801847300576398802176287/354083764461390195922101753517152811337343260848968781415234375000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "35": "1305192582998958232270232706162193900424028921970730800809666462084377179692006211581623946453248306816258670050554480988965517913507765944227630930548901703758265548536540789266726714935400116424642666014398214746741264153789690927769725845023819095043831575434672614729547792584795433819349550571333556279523720363490791419303545514102948717293007302343358944202443525231453883774256674163625924789287253929241238906423886378802511186770058649210715735868379504851053546770343565772862359726525288413088671560618659375134439016440964828928272565336856590370527910941434512742663403485070585177956551051927831794306785778742774962982378138336653966055645734333198061448286803345592805041265735356452923407401/1450327099233854242496928782406257915237757996437376128676800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "36": "339625014359818281480241591346340038001309375696067717336436099725081509327389523409594450586439211514382413734122521145979825030028256317171697743430573803164447424660703925372042686128098772662982998457531609409545197806843489409622452956814994902557438499476319757493333312606737986079932506056584938403772842341375057996423442244755039953346970350510903295413578105608240231143329058368115530041612808477092312818058956711916022974550541581280347984717107044533669044942340713073494721208818806506455385542452013810429184271311193596101461373145671576523852897597915959748391389676131000907443807588191755981269462356357453559927510701757645664523115976222797881122323464644931450521546441487265665593931/362581774808463560624232195601564478809439499109344032169200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "29": "510212728885187921787172731521564820459950756261683339585809548004107232960917204335901963719722491369463915365814210486239689114689326370889464778454877002354802866777545477840222151782737510775320955204096300505366386401908817454837462898371349572528472886627648362417434084692739201635927875085113819710726949472116554223473818311448032988336116141817259438199452125484185017485320242994865822322033713587958041823147361650798777781014615873709348553454933829930184587746828205553515148021976791329178818122705573900584764141105437927512149065585261189055037646849527250236995354535376920278790925355842509617063998070627357955202989828388652132454545934686290342787398780802096974485352693868258588889/354083764461390195922101753517152811337343260848968781415234375000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "38": "249583103626538142158081349303616672358742559293860194574691505916587594109297063549508452297821271299460906448264275205789201251033672419463541598360344021971177788395202251286511146817315319660920038384535464001181752741396884933771951143689645495980532275502745981973910392241403888615511945680604209378179712139134889957229593728181112897353984491507432862090071075318305375588123230663377375852057830174542085417314155277362803360253015840228759666853758578107963475449863028320222993551365083595837643695157972629847815255631350095444235105243141349569742858556349560594857339811159372513562632181181170801594734707858134651642760112042512064334319215999982933032111511654621334870195268765413886239/177041882230695097961050876758576405668671630424484390707617187500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "44": "17741745822560733792228217258147978341862931689911840419751186822646761673940394040333823884074314341701431959459897339592024837203024529211847586374457008660987191526079575441460115861550264320800312540992831486634812857993675630275542432188747824539471827553345023419147345704843806314337457128019848112266994581669228981486103997891395611679240629873990628736692070266744297267588336088370537418508687166739474588006723058564570240535894317120488996991999834542479060774020331486841632839186086302645256227932999761760542251300333043740392304506004317348929469843229521776306585856105319207397993633858165127453745586860980636838415294044903038684797461579480273478278068233917004278636668496917630999079/51797396401209080089176027943080639829919928444192004595600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "37": "1408563112329003682996824203411848659346970144598929479125824464663835058067095866277600858356020540257512329234816374243500572995277591007159985534782774904864046807704346594195499472164457077669580092638856637400976628723476378394856614736380010116312007463278090351290869623277985535644508923532537058896450430867002042370658935170520516771569063437689649901424474210642839226020368696154666280104923878871861874529665125844943782754318256101001877888340421134994873469593034679317027387687993430719102235958780045444284687558031203580361909632448796391415200383801650711198297610766817450557090227147010195418151979183651507911726466426835751508221750434622977395588398451549014220908439796113392881433487/1450327099233854242496928782406257915237757996437376128676800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + }, + "minimum_strict_margin": "212921674116756313574745250680710083634878955873974457535473818828883036868512821612012733380047357273906448268058871955170462740852169733384365812332901183570723068359381121891308189014053554233464033977018900238659164458199791114690466825217419292799953758600041809253933807426094306823162726283189374221798273958390072717234574946327487548855734573131319712537053032083574855298307878404406708142440115150738609949379429900148264125838294343769533412579172023987047671579091957747001518930496728196347342262364640817326245348204553809212735007062684750475131800707686913209159256248073638104821125132940481996435285733134111395487555384562064484795191289503083703218332847875865437997517547568570561665148920605495229049918009115455382440738909488986611295627/724790555257342479332025838126597994728228817967984448786605440268752921820045651614667556087426170460974847118800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + } + }, + "kappa_strict_rational_upper": "1678380917692274545893/1001678380917692274545893", + "kappa_strict_upper_decimal": "0.001675568675201533367615917021962558975139221354038979340261826357853211", + "all_T_grid_upper": "1675568675201533/1000000000000000000", + "all_T_grid_upper_decimal": "0.001675568675201533", + "source_sha256": { + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/k8-joint-entrances/PLAN.json.gz": "e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ASSEMBLY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ASSEMBLY.json new file mode 100644 index 0000000000..2a7f39918b --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ASSEMBLY.json @@ -0,0 +1,345 @@ +{ + "status": "PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY", + "kappa": "1675560947524449/1000000000000000000", + "kappa_decimal": "0.001675560947524449", + "complex_lower": "41959329101337756331/25000000000000000000000", + "complex_decimal": "0.00167837316405351025324", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "gain_over_pr635_percent": "0.05603947446511163317149190136201017455543074864791396424388989483109983", + "complex_profile": { + "1": 340776, + "2": 71712, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "provider_counts": { + "gauge44": 144 + }, + "surcharge_model": { + "complex": false, + "bit": true + }, + "conservative_complex_lower": "1678373161199654598379/1000000000000000000000000", + "conservative_complex_decimal": "0.001678373161199654598379", + "conservative_kappa": "1675560944680149/1000000000000000000", + "conservative_kappa_decimal": "0.001675560944680149", + "conservative_moments": [ + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "1678373161199654598379/1000000000000000000000000", + "accept": true, + "mercator": [ + "-35411154178789807244757685835580327447995425/26959946667150639794667015087019630673637144422540572481103610249216", + "-35411154178789807244757685835580327447995423/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-2626945745657466358271/2000000000000000000000000000000000000000000000", + "-6567359364143665895607/5000000000000000000000000000000000000000000000" + ] + }, + { + "side": "conservative_complex", + "surcharge": true, + "endpoint": "83918658059982729919/50000000000000000000000", + "accept": false, + "mercator": [ + "10854078506581954587763683302340593129299785/6739986666787659948666753771754907668409286105635143120275902562304", + "21708157013163909175527366604681186258599571/13479973333575319897333507543509815336818572211270286240551805124608" + ], + "base_two": [ + "16104001272070677545607/10000000000000000000000000000000000000000000000", + "4026002818017669386437/2500000000000000000000000000000000000000000000" + ] + } + ], + "conservative_bootstrap": [ + { + "exponent": "1675620774795361699215066569645856215483504100507711065600968944224325423042629308120210572359/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "2752386404292899163930751980982584861897520492288934399031055775674576957370691879789427641/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4752079448844" + }, + { + "exponent": "1678368541668184382355255568002119233327900199679131283382881109614258496375586703319039049971949956102367604102659275616290657923754136393939/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "4619531470216023741753624719567017501421320868716617118890385741503624413296680960950028050043897632395897340724383709342076245863606061/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1686967207968459057" + }, + { + "exponent": "1678373153446356961451241500943640748856926293024098755590831317829896071272206902083870561415022529944455851831042879553666287798916371420362840600265307961310182583243653223149121625175119/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "7753297636927755820683198051488475327975901244409168682170103928727793097916129438584977470055544148168957120446333712201083628579637159399734692038689817416756346776850878374824881/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "598865905209876702826700" + }, + { + "exponent": "1678373161186641671714385072235628951970543886000356539884910263686092747061631930957743252339122014620696937370059600597412570827787266469188139404873904685949876638893830738855358256481402439566697230385064951138672601717878840511467899/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "13012926664612249391209848374857734999643460115089736313907252938368069042256747660877985379303062629940399402587429172212733530811860595126095314050123361106169261144641743518597560433302769614935048861327398282121159488532101/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "212594750347720136103049578983" + }, + { + "exponent": "1678373161199632757832134777088341796642739888048009944253264629878790912995690801545368163842598927080171179712775870842019411260689008950916456102712861079838717946440686841288244324155058215448104901288712084277034973616906342246043986672141894110688478628851741239241942681404064279/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "21840546862544538497003702661732951990055746735370121209087004309198454631836157401072919828820287224129157980588739310991049083543897287138920161282053559313158711755675844941784551895098711287915722965026383093657753956013327858105889311521371148258760758057318595935721/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "75470197054497558699752116307346637" + }, + { + "exponent": "1678373161199654561722409641608763607624108301438515643398359688871228674059149980709924145999761480504598007463512605954377104671355825782929016548636781456637113847862911772102967357971694540597723259487986958042283942677125261668010264614981743788059216871473987602617497945214521629294222327596023782775039618340117275557954796259/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "36656587680018075192721293319561484356601640311128771325940850019290075854000238519495401992536487394045622895328644174217070983451363218543362886152137088227897032642028305459402276740512013041957716057322874738331989735385018256211940783128526012397382502054785478370705777672403976217224960381659882724442045203741/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "26791586500272080476387410661006172777207" + }, + { + "exponent": "1678373161199654598317473888683534550655859789753196638847084832132834135263492294652555194215463058601336887395963933117689802122514738084015528249181767948095511650259144551808656713736535132349181762061677923901075883992661398181325554309243642739495696595215295162465249261086793053435115132347059760665923918527741503582507992043688700561548373864287177373388057315272583335839/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "61523432943304249689541831246803361152915167867165864736507705347444805784536941398663112604036066882310197877485261915984471750818232051904488349740855448191343286263464867650818237938322076098924116007338601818674445690756357260504303404784704837534750738913206946564884867652940239334076081472258496417492007956311299438451626135712822626611942684727416664161/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9510894832873440568792653965369147300615064613" + } + ], + "conservative_outer": { + "bit_positive": "1678373161199654598317473888683534550655859789753196638847084832132834135263492294652555194215463058601336887395963933117689802122514738084015528249181767948095511650259144551808656713736535132349181762061677923901075883992661398181325554309243642739495696595215295162465249261086793053435115132347059760665923918527741503582507992043688700561548373864287177373388057315272583335839/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "61526111316465449344140210246803361152915167867165864736507705347444805784536941398663112604036066882310197877485261915984471750818232051904488349740855448191343286263464867650818237938322076098924116007338601818674445690756357260504303404784704837534750738913206946564884867652940239334076081472258496417492007956311299438451626135712822626611942684727416664161/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "29571626838800345401621/1000000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "61524432943304249689541831246803361152915167867165864736507705347444805784536941398663112604036066882310197877485261915984471750818232051904488349740855448191343286263464867650818237938322076098924116007338601818674445690756357260504303404784704837534750738913206946564884867652940239334076081472258496417492007956311299438451626135712822626611942684727416664161/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "1678373161199654598317473888683534550655859789753196638847084832132834135263492294652555194215463058601336887395963933117689802122514738084015528249181767948095511650259144551808656713736535132349181762061677923901075883992661398181325554309243642739495696595215295162465249261086793053435115132347059760665923918527741503582507992043688700561548373864287177373388057315272583335839/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "30763894844813324499369233097290364111008239793372685564892699758554535726403734191626208857212248904213700275630026921925353565211238540690328190398676905863619738643382692969960927625874774584594407185431362587261123921262171291650333027946661662410114865153198688577604899075731206460091475851261595268506669902074177460729395575848455002006532890737572619257873388057315272583335839/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "839186580599827299158860265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "499160813419400172700841139734031393924326668422597290364111008239793372685564892699758554535726403734191626208857212248904213700275630026921925353565211238540690328190398676905863619738643382692969960927625874774584594407185431362587261123921262171291650333027946661662410114865153198688577604899075731206460091475851261595268506669902074177460729395575848455002006532890737572619257873388057315272583335839/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "1678373161199654598317473888683534550655859789753196638847084832132834135263492294652555194215463058601336887395963933117689802122514738084015528249181767948095511650259144551808656713736535132349181762061677923901075883992661398181325554309243642739495696595215295162465249261086793053435115132347059760665923918527741503582507992043688700561548373864287177373388057315272583335839/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "61527789689626648998738527720692044687465823726955617933146552432276938618672204890957765159230282345368799214372657879917589440620354566642572365269104629959291381775115126795370046595035812634056465189100663496598346766640349921902484730339014081177490234609802161860047332902201326127129516587390843477252673880229827179955208643704866315312504233101280951338373388057315272583335839/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "1678373161199654598317473888683534550655859789753196638847084832132834135263492294652555194215463058601336887395963933117689802122514738084015528249181767948095511650259144551808656713736535132349181762061677923901075883992661398181325554309243642739495696595215295162465249261086793053435115132347059760665923918527741503582507992043688700561548373864287177373388057315272583335839/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "1678373161199654598317473888683534550655859789753196638847084832132834135263492294652555194215463058601336887395963933117689802122514738084015528249181767948095511650259144551808656713736535132349181762061677923901075883992661398181325554309243642739495696595215295162465249261086793053435115132347059760665923918527741503582507992043688700561548373864287177373388057315272583335839/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "30763894844813324499369233097290364111008239793372685564892699758554535726403734191626208857212248904213700275630026921925353565211238540690328190398676905863619738643382692969960927625874774584594407185431362587261123921262171291650333027946661662410114865153198688577604899075731206460091475851261595268506669902074177460729395575848455002006532890737572619257873388057315272583335839/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161/500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "499999999999999999999999500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161", + "epsilon_below_one": "839186580599827299159235265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161", + "guard_width": "839186580599827299159235265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161", + "K_geometry": "375839186580599827299158860265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161000000000000000000000000", + "K_dominates_log": "839186580599827299158859426782025475846032418542443667282916086875049911725471411249685257646281830701073549697323477499520491350578830290323550648489037089336593734954888305374920951684807705706944935993863868798098562775496263287513460673145014139712254233177259599761176785179829258084057511039133946738597101753637480462699790189401673800865872930821447072170927838658003229197128618475575464989283418873388057315272583335839/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161000000000000000000000000", + "record_suffix": "839186580599827299159235265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161", + "phase_local": "6713492644798618393273381288562268005559353460486411118505858408321441112771222512939803507561455691359690087696837735170024589421168641836846075692010367304504296402164149964329582781181128854917218442612740446705937712477476725176685593224309815098159923037550627962890372729107438438040823217509015501517956770794806313583153100874882431575760103899882262058125197603494994894392014902074368556905932545873388057315272583335839/4006713492644798618393269882127748848605386652619221677087111934081653018515480858401931563714188770126466990329142302008766290397794959784624597171478310091674477374476810584753091042090852938456240312578993001803323244742516549099301911008629902629666797335776426706700719081078774410491379160807394150348319268193189907237851946640783406580314164835393212359983947736874099419045937012895541477819333313288000000000000000000000000", + "phase_boundary": "1342698528959723678654275586363189121250031365109069448816311142999026300386535791394552536210439590186097824382996128156992271185200814137168338509362293964922396820715682161856749108498778089924968379418339004047341918464237445735156786320387711364722054416409262602315107866087910044937494571593695222862542216242880523301595788248157167324428235585312374070967008104215459657642404585641186301439281915473388057315272583335839/801342698528959723678653976425549769721077330523844335417422386816330603703096171680386312742837754025293398065828460401753258079558991956924919434295662018334895474895362116950618208418170587691248062515798600360664648948503309819860382201725980525933359467155285341340143816215754882098275832161478830069663853638637981447570389328156681316062832967078642471996789547374819883809187402579108295563866662657600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "999999999999999999999998499160813419400172700841264734031393924326668422597290364111008239793372685564892699758554535726403734191626208857212248904213700275630026921925353565211238540690328190398676905863619738643382692969960927625874774584594407185431362587261123921262171291650333027946661662410114865153198688577604899075731206460091475851261595268506669902074177460729395575848455002006532890737572619257873388057315272583335839/2003356746322399309196634941063874424302693326309610838543555967040826509257740429200965781857094385063233495164571151004383145198897479892312298585739155045837238687238405292376545521045426469228120156289496500901661622371258274549650955504314951314833398667888213353350359540539387205245689580403697075174159634096594953618925973320391703290157082417696606179991973868437049709522968506447770738909666656644000000000000000000000000", + "prime_interval_packing": "839186580599827299159235265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161", + "alpha_positive": "1678373161199654598317969692750631551519363996070153303171907847081677226160578711491130721919878096509447340840111228595306791074948803368398197083277798548646265544556211399511301213041425012736984008367989094213504155590064900700252336751882842848061921205230597937351061920026630569506452611963402740278505625902375885194193120287327496340136477354972992070164394947920430609939255230418260192405947579873388057315272583335839/1001678373161199654598317470531937212151346663154805419271777983520413254628870214600482890928547192531616747582285575502191572599448739946156149292869577522918619343619202646188272760522713234614060078144748250450830811185629137274825477752157475657416699333944106676675179770269693602622844790201848537587079817048297476809462986660195851645078541208848303089995986934218524854761484253223885369454833328322000000000000000000000000", + "alpha_below_one": "999999999999999999999999500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161/1001678373161199654598317470531937212151346663154805419271777983520413254628870214600482890928547192531616747582285575502191572599448739946156149292869577522918619343619202646188272760522713234614060078144748250450830811185629137274825477752157475657416699333944106676675179770269693602622844790201848537587079817048297476809462986660195851645078541208848303089995986934218524854761484253223885369454833328322000000000000000000000000", + "alpha_below_one_fourth": "248741220129100259051261397940233671486317301792631201514772588033021636431056974938629592010216920036394739554731282646952586358787236183170639126134116582181008570360244450147556888917636883640778035527819073518494198640817219418006117101287486071506112912280796071231443880647396770086204744938498731656491448636171993317171553544761635414929498824857102780428832338606710783080431808075553082171302384500626611942684727416664161/1001678373161199654598317470531937212151346663154805419271777983520413254628870214600482890928547192531616747582285575502191572599448739946156149292869577522918619343619202646188272760522713234614060078144748250450830811185629137274825477752157475657416699333944106676675179770269693602622844790201848537587079817048297476809462986660195851645078541208848303089995986934218524854761484253223885369454833328322000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "499159404951166055039960956843563769790971283872042402406356384901491676450147495185047853409555460927525258587396118796328729342222036731202072025888767023456228903224280118585948183476316528102491669437573994078388466113447760828885845876656911217434425179682797410653815051548425104822615642797068326495715943541917045902495362651548481502702739199518014828484971998121803360932928292207860864820512354909052625867686686515005226086737986958648693106265473302784346563171740072067447056173376372005756374835925206857665552609040030010981498441386035339705660642027791687288177736847666274737120453220932298490282839921841499905123965952965774345395838435557867427207941043355009833407983205453739755466638460531271260856978295337639637744081286999077725667817289721307152899547117061833921/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "28053707941158388947146164559539550530642575118429979214602713699673218880331975774882427790333392104317057823357474808890919120607481051705360030659185379906505738230038423982391012714655838936453891783041084798496437879030249609916790964315255999481040290924428041889819238773679196200091048299228808607326958079812704560675621953745992825088728532877625689173649049512804608624822131097144733150341948648530379835828054182249992483/4006713492644798618393269882127748848605386652619221677087111934081653018515480858401931563714188770126466990329142302008766290397794959784624597171478310091674477374476810584753091042090852938456240312578993001803323244742516549099301911008629902629666797335776426706700719081078774410491379160807394150348319268193189907237851946640783406580314164835393212359983947736874099419045937012895541477819333313288000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "48530011493162818112370398953055488601864284829337547014480363449665425892688401561683880815203602383187096631051461492830207462581686941175020344936997909298977491576880001881716043640364901977786498154129388316471135557565742202799924516847921403706745226530208432414937066837541060519842196513424684722570861134789977517878641953542856900696529088448228158418115421156135626144247913307442396155303560011/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161000000000000000000", + "coordinate_movement_above_kappa": "2812216519505598317473888683534550655859789753196638847084832132834135263492294652555194215463058601336887395963933117689802122514738084015528249181767948095511650259144551808656713736535132349181762061677923901075883992661398181325554309243642739495696595215295162465249261086793053435115132347059760665923918527741503582507992043688700561548373864287177373388057315272583335839/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "48529510653976237512543099794320222633258209156005969611770727560673665686061087126576580573758138109590830822677670350042456366795387216805047266862351474510216032267208192280392949503984640621169191124090315942345910142160149388231287104109045324968916518180541460361598729247655925673040885091029583798302067594881453369140237222049526802770706549177623734266570423162668516881820532565315784212618832594335839/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161000000000000000000000000", + "bulk_exposure_above_kappa": "2812216519505598317473888683534550655859789753196638847084832132834135263492294652555194215463058601336887395963933117689802122514738084015528249181767948095511650259144551808656713736535132349181762061677923901075883992661398181325554309243642739495696595215295162465249261086793053435115132347059760665923918527741503582507992043688700561548373864287177373388057315272583335839/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "77647517549873928379965339166153515794376780053608497820458945630472921221674128063586909062880299539503088801308547245740580844344399381510059473824550220089602527213336193409422575688203581807841090016567948932228591476699594709911241814217798167192963654098666519810560969350180561984946202999084394631844584275755439879867422394175240943188624002246560629317439675856349892568369280549781221905800968600935839/801342698528959723678653976425549769721077330523844335417422386816330603703096171680386312742837754025293398065828460401753258079558991956924919434295662018334895474895362116950618208418170587691248062515798600360664648948503309819860382201725980525933359467155285341340143816215754882098275832161478830069663853638637981447570389328156681316062832967078642471996789547374819883809187402579108295563866662657600000000000000000000000", + "scalar_work_above_kappa": "388239591106115964299135892465708642846308202961368798713133271708331646934879898058363746280183354791900507240037900799853908604867195805030189681421336839603058473305368205452405254986538954465674678202996034157643859045120344807830758722044495150916133103892000487266158197110443349311936260685002376856298095538411295994290730896849525107646410168315220843193378371255617899891555925717412557299743752671335839/4006713492644798618393269882127748848605386652619221677087111934081653018515480858401931563714188770126466990329142302008766290397794959784624597171478310091674477374476810584753091042090852938456240312578993001803323244742516549099301911008629902629666797335776426706700719081078774410491379160807394150348319268193189907237851946640783406580314164835393212359983947736874099419045937012895541477819333313288000000000000000000000000", + "dimension_above_kappa": "499160813419400172749370276227194212036697067375652778965975293069130919700045256149423980428414805295875507024060814632091310331327091519752132816146898179715710673127396586204841111315523384574686004567990776752371092561314819679058396681487004374091574849875868065369155341395361631103514671736616791726302287989275946317839367804692051695339371349118705355698535621338965731037373294544192941416831249146442396155303560011/500839186580599827299158735265968606075673331577402709635888991760206627314435107300241445464273596265808373791142787751095786299724369973078074646434788761459309671809601323094136380261356617307030039072374125225415405592814568637412738876078737828708349666972053338337589885134846801311422395100924268793539908524148738404731493330097925822539270604424151544997993467109262427380742126611942684727416664161000000000000000000" + }, + "conservative_controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "model_controls": [ + "native_complex_endpoint_rejected_with_old_surcharge", + "omitting_bit_surcharge_would_fail_next_endpoint_rejection" + ], + "native_correction_gain": "2.8443E-12", + "template_sha256": "24069f0f02fbd8944d1c573404a12368b1b51d728e8bd9d4eb86632141c76c6f", + "input_sha256": { + "owner_audit": "2e2889604e2d944dcd6b42d3006cd6ff35feef779405d58568bab081ae9ebadc", + "fresh_invoice": "8215609ea123187eae656d92cca1afeebceceb286b6d3474d1688ba1952a0681", + "package:inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c" + }, + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "moments": [ + { + "side": "bit", + "surcharge": true, + "endpoint": "1733427039589844234749/1000000000000000000000000", + "accept": true, + "mercator": [ + "-43100600330766044577088869872467188970742291/26959946667150639794667015087019630673637144422540572481103610249216", + "-43100600330766044577088869872467188970742289/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two": [ + "-799345163337715793503/500000000000000000000000000000000000000000000", + "-3197378653350863173989/2000000000000000000000000000000000000000000000" + ] + }, + { + "side": "bit", + "surcharge": true, + "endpoint": "6933708158359376939/4000000000000000000000", + "accept": false, + "mercator": [ + "22502934905675809315035333485365686073718547/13479973333575319897333507543509815336818572211270286240551805124608", + "5625733726418952328758833371341421518429637/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "8346798366759439729359/5000000000000000000000000000000000000000000000", + "16693606733518879458833/10000000000000000000000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "41959329101337756331/25000000000000000000000", + "accept": true, + "mercator": [ + "-32601863562504530177308536719912258353855453/13479973333575319897333507543509815336818572211270286240551805124608", + "-8150465890626132544327134179978064588463863/3369993333393829974333376885877453834204643052817571560137951281152" + ], + "base_two": [ + "-2418541/1000000000000000000000000000000", + "-120927/50000000000000000000000000000" + ] + }, + { + "side": "complex", + "surcharge": false, + "endpoint": "1678373164053510253241/1000000000000000000000000", + "accept": false, + "mercator": [ + "212870954374430875972615221728182449060373/421249166674228746791672110734681729275580381602196445017243910144", + "6811870539981788031123687095301838369931937/13479973333575319897333507543509815336818572211270286240551805124608" + ], + "base_two": [ + "126333/250000000000000000000000000000", + "505333/1000000000000000000000000000000" + ] + } + ], + "bootstrap": [ + { + "exponent": "1047262986024842152248068332587827160777544094777859156350507461864657152135343798869418439/625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "1720241508601756026929993428945305778547630222140843649492538135342847864656201130581561/625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "4752079416144" + }, + { + "exponent": "26224508508156504504049017305487469184654274279896120986010773782423681532844705677161551381507920309387621046753916481591569940939612691/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "72180179593202825940844931842479248018845103879013989226217576318467155294322838448618492079690612378953246083518408430059060387309/15625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "1686967190623101922" + }, + { + "exponent": "655614514179770532527012964835033912518844836451852622220444474624445820836553201474728675338405742537001359903097898556750340950456293283564177677938150963383542952073128933926803279/390625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "3028631910144860988925448879078712491673147377779555525375554179163446798525271324661594257462998640096902101443249659049543706716435822322061849036616457047926871066073196721/390625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "598865897015764143752950" + }, + { + "exponent": "16390362930082981703752267421591930716936554258960548141735378839279277731202849378942350699249004861165156733441293791723526275536645656511738200469998494896753294235552864241155496415749517451126822490465766124140019322926190651/9765625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "127079363044581422420139073002378944164451858264621160720722268797150621057649300750995138834843266558706208276473724463354343488261799530001505103246705764447135758844503584250482548873177509534233875859980677073809349/9765625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "212594746715866850932907979807" + }, + { + "exponent": "409759073255246194505105245129204219686917515700627590494375898004874700201530231090475210796980370882706855569674619285644695587194276170838374592745242387812692528457412970647217932098144081365863572355925876383125318029211554794495623028632314165973382410640910910911738519/244140625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "5332164815975971097525061555814377497409505624101995125299798469768909524789203019629117293144430325380714355304412805723829161625407254757612187307471542587029352782067901855918634136427644074123616874681970788445205504376971367685834026617589359089089088261481/244140625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "75470195508551150958606428756937803" + }, + { + "exponent": "10243976831381287943013972191397697405062631692371207056228414468117485442818357807566891155173561316407219308255999656808920820303925900521346864967795666519353524391841628953633464865063289469448431359220373939157650889737171295037438677770510328958253824679673453951512274545564539537118036108950199114453241913991186211/6103515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "223734058336109846213649201559581917943771585531882514557181642192433108844826438683592780691744000343191079179696074099478653135032204333480646475608158371046366535134936710530551568640779626060842349110262828704962561322229489671041746175320326546048487725454435460462881963891049800885546758086008813789/6103515625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "26791585860356709464085343074158267638503" + }, + { + "exponent": "256099420784532204159313032202785857363767496247036091754067926332576611952620990876194859553406677848293165318269296525211709315463042017738348471419525175039799597151186265966429038976013630729422956134302849704531030250860298274918774624191096329526298869229995845351297531303636002247271864110172960300171446425272784394941346992694038641920850024352693068034848159/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "gap": "9387730984902733104028335051792033245932073667423388047379009123805140446593322151706834681730703474788290684536957982261651528580474824960200402848813734033570961023986369270577043865697150295468969749139701725081225375808903670473701130770004154648702468696363997752728135889827039699828553574727215605058653007305961358079149975647306931965151841/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "cutoff_log2": "9510894573362228388823376663677926203273762025" + } + ], + "outer": { + "bit_positive": "256099420784532204159313032202785857363767496247036091754067926332576611952620990876194859553406677848293165318269296525211709315463042017738348471419525175039799597151186265966429038976013630729422956134302849704531030250860298274918774624191096329526298869229995845351297531303636002247271864110172960300171446425272784394941346992694038641920850024352693068034848159/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_above_bit": "9388139672214142636232503752963908245932073667423388047379009123805140446593322151706834681730703474788290684536957982261651528580474824960200402848813734033570961023986369270577043865697150295468969749139701725081225375808903670473701130770004154648702468696363997752728135889827039699828553574727215605058653007305961358079149975647306931965151841/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "complex_below_one_over32": "739290670898662243669/25000000000000000000000", + "beta_positive": "1/1000000000000000000000000", + "beta_below_one": "999999999999999999999999/1000000000000000000000000", + "leaf_saving_above_bit": "9387883572793358104028335051792033245932073667423388047379009123805140446593322151706834681730703474788290684536957982261651528580474824960200402848813734033570961023986369270577043865697150295468969749139701725081225375808903670473701130770004154648702468696363997752728135889827039699828553574727215605058653007305961358079149975647306931965151841/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_positive": "128049710392266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841/76293945312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_internal": "256099420784532204159313032202785857363767496247036091754067926332576611952620990876194859553406677848293165318269296525211709315463042017738348471419525175039799597151186265966429038976013630729422956134302849704531030250860298274918774624191096329526298869229995845351297531303636002247271864110172960300171446425272784394941346992694038641920850024352693068034848159/76293945312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_leaf": "4694197885817463584218326838928219408823400601207941059781258629828902799908613696844293535724905144071993635433797260427350975999552875522117939772878286541960520311590335821554488361887551161365214297525985165390317218934702695535125484159626268420680760647051228872209419242444823485916524059227717975489626675099405951823969929170646160021217841350024352693068034848159/76293945312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_positive": "128049710392266102079675333488300269149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841/76293945312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "c_below_one": "76165895602107733897920324666511699730850320411189514156908823400601207941059781258629828902799908613696844293535724905144071993635433797260427350975999552875522117939772878286541960520311590335821554488361887551161365214297525985165390317218934702695535125484159626268420680760647051228872209419242444823485916524059227717975489626675099405951823969929170646160021217841350024352693068034848159/76293945312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "q_below_reservations": "1/4000000000000000000000000", + "lambda_above_tau": "256099420784532204159313032202785857363767496247036091754067926332576611952620990876194859553406677848293165318269296525211709315463042017738348471419525175039799597151186265966429038976013630729422956134302849704531030250860298274918774624191096329526298869229995845351297531303636002247271864110172960300171446425272784394941346992694038641920850024352693068034848159/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_sigma": "9388395771634927168436663065996111031789437434919635083470763191731473023205274772697710876590256881466138977702276251558176740289790288002218141197285153558746000823583520456843010294736126309099699172095836027930929906839154530771976049544628345745031994995233227748573487187358343335830800846591325778018953178752386630863544916994299626003793761850024352693068034848159/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_above_internal": "256099420784532204159313032202785857363767496247036091754067926332576611952620990876194859553406677848293165318269296525211709315463042017738348471419525175039799597151186265966429038976013630729422956134302849704531030250860298274918774624191096329526298869229995845351297531303636002247271864110172960300171446425272784394941346992694038641920850024352693068034848159/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "lambda_prime_above_lambda": "256099420784532204159313032202785857363767496247036091754067926332576611952620990876194859553406677848293165318269296525211709315463042017738348471419525175039799597151186265966429038976013630729422956134302849704531030250860298274918774624191096329526298869229995845351297531303636002247271864110172960300171446425272784394941346992694038641920850024352693068034848159/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_leaf": "4694197885817463584218326838928219408823400601207941059781258629828902799908613696844293535724905144071993635433797260427350975999552875522117939772878286541960520311590335821554488361887551161365214297525985165390317218934702695535125484159626268420680760647051228872209419242444823485916524059227717975489626675099405951823969929170646160021217841350024352693068034848159/76293945312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_reservations": "1/4000000000000000000000000", + "lambda_prime_below_one": "128049710392266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841/76293945312500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "epsilon_positive": "76293945312499999999999923706054687500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000/76421995022892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841", + "epsilon_below_one": "128049710392266102079732553947284644149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841/76421995022892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841", + "guard_width": "128049710392266102079732553947284644149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841/76421995022892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841", + "K_geometry": "57348508694767266102079675333488300269149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841/76421995022892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841000000000000000000000000", + "K_dominates_log": "128049710392266102079675205438589876883577509135152354790907449719203248454375650193571698408032446084414336293177894764541703208859738464477793095994082558275142487578097713010915001806349437056732053598632760428970607256962376722160844146279594830450039906157592666282014774478432930754059001438315823565312348150191524469333859241424653275894005560456028939384733982619904817953091986369682350024352693068034848159/76421995022892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841000000000000000000000000", + "record_suffix": "128049710392266102079732553947284644149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841/76421995022892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841", + "phase_local": "1024397683138128816637784009583254260931334630827626742757268645510747661035906839784769378808672150206504281543103558756037747760823157641486336263997212429620316909167949707217191359625217086305850635065419902299414107174280480564428623613736675961704161517040208787337249449949074328648593066741202059163896679735597498640906472515728811613126216056261505819236209093169734349101615742432569350024352693068034848159/611375960183138128816637250080015777153197436710483886744729412795190336471521749930961368777600731090425245651714200758847424050916529621916581192192003576995823056481816973707664315837507277313427564093104899590709078285619792118676877462248522378435718996126722989852634553914823590169022324646060441412112667807526178256196082986599204752385408240566634830719830257269199805178455455721214728000000000000000000000000", + "phase_boundary": "204879536627625763327495664320632538373385262440517346973738409358478483818506895015674356728087277866307760171742951678098507027599460108221382510394350832961871723714370741085738689619395235563799360581500229732151478678446785622926653814918773213128964615661816905229606318090202193430733349892848929473762433714654893684040083236365009704799623602953641243372003277809890206337251165460786950024352693068034848159/122275192036627625763327450016003155430639487342096777348945882559038067294304349986192273755520146218085049130342840151769484810183305924383316238438400715399164611296363394741532863167501455462685512818620979918141815657123958423735375492449704475687143799225344597970526910782964718033804464929212088282422533561505235651239216597319840950477081648113326966143966051453839961035691091144242945600000000000000000000000", + "gamma_sublinear": "1/2000000000000000000000000", + "cell_above_band": "152587890624999999999999770990114352107733897920343739998027855850320411189514156908823400601207941059781258629828902799908613696844293535724905144071993635433797260427350975999552875522117939772878286541960520311590335821554488361887551161365214297525985165390317218934702695535125484159626268420680760647051228872209419242444823485916524059227717975489626675099405951823969929170646160021217841350024352693068034848159/305687980091569064408318625040007888576598718355241943372364706397595168235760874965480684388800365545212622825857100379423712025458264810958290596096001788497911528240908486853832157918753638656713782046552449795354539142809896059338438731124261189217859498063361494926317276957411795084511162323030220706056333903763089128098041493299602376192704120283317415359915128634599902589227727860607364000000000000000000000000", + "prime_interval_packing": "128049710392266102079732553947284644149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841/76421995022892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841", + "alpha_positive": "256099420784532204159388685899546396033257097964711684210209049117995307394594391563742795608123832387570042757452989620469709573425941204050442119994529682753024547805219426468954481494759101235177565236745209267605392959436391556770526927344892134914914421997966397861334013831381701881849582195871000079395824090963806493844232566325247324070035631285382779363516141269880465260023951521523350024352693068034848159/152843990045784532204159312520003944288299359177620971686182353198797584117880437482740342194400182772606311412928550189711856012729132405479145298048000894248955764120454243426916078959376819328356891023276224897677269571404948029669219365562130594608929749031680747463158638478705897542255581161515110353028166951881544564049020746649801188096352060141658707679957564317299951294613863930303682000000000000000000000000", + "alpha_below_one": "152587890624999999999999923834104397892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841/152843990045784532204159312520003944288299359177620971686182353198797584117880437482740342194400182772606311412928550189711856012729132405479145298048000894248955764120454243426916078959376819328356891023276224897677269571404948029669219365562130594608929749031680747463158638478705897542255581161515110353028166951881544564049020746649801188096352060141658707679957564317299951294613863930303682000000000000000000000000", + "alpha_below_one_fourth": "37954898090661600846880439444101439676041582696440531237335379250581400722075514979121342752991921860764007810474684557807494293608857160165735882392005693879485916482308341430260065258349445730854045190582311015151711999891800615860534314463187756517317522835922220467928325605845092683682045708182906588177645913879422334518410954096125049700017979404129294140625874938055107358393442031054397149975647306931965151841/152843990045784532204159312520003944288299359177620971686182353198797584117880437482740342194400182772606311412928550189711856012729132405479145298048000894248955764120454243426916078959376819328356891023276224897677269571404948029669219365562130594608929749031680747463158638478705897542255581161515110353028166951881544564049020746649801188096352060141658707679957564317299951294613863930303682000000000000000000000000", + "delta_positive": "1/8000000000000000000000000", + "delta_below_one_eighth": "999999999999999999999999/8000000000000000000000000", + "short_record_fallback": "11621960554032920333039698377972129214440120141781361501874525560013579776550334439749387394914169462875625106196599812152022863697156296032888660318082348603663911119908093755544075320897843985236735225182945417190361857870825757709111666203335185082506356155682064573775183391185684416819248129802426425677095700190132128756665872994172537127955342919867371302133577622913686888843873879214949282374584607943476809005425659618513136851287954737987340187302634555030621014991499474490180686449315513571695414010412066529363499092430634323137217078056913177910429266519454091280492848372923852724861394101108479609343412862479986189019214043883625345961263787792939342510139189690829576090682158652406215721802984359285971079071517271770513702345664224938018185689281/11661071017897379471142525674438777487815808042726209387678707366851622323446688650721766830017103788193230546030315413643787842768030731619197486728515693225780926828037585710671697918653626962917853624212358466924840512955089418767488049740763137406076793596777400776913348272606345942860075467034539058916333538198970379947587642414077849433620610057194420446774106164344783881730183710502905426025390625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "small_field_exposure": "1/1000000000000000000000000", + "artificial_boundary": "4280656118965105030533098840257673785902377799922839873963751734810561458203631528721220748417182025544058189324226897671053551316799356368157934105320047709665192670572482861662655900133704399188785653118957635790901618820294871863752366213892536134907796472842832262016968344713212268873299791906441249355747655843581168322234193435044065841400111998064198620460424202681688653915705165706064299949926941920795895455523/611375960183138128816637250080015777153197436710483886744729412795190336471521749930961368777600731090425245651714200758847424050916529621916581192192003576995823056481816973707664315837507277313427564093104899590709078285619792118676877462248522378435718996126722989852634553914823590169022324646060441412112667807526178256196082986599204752385408240566634830719830257269199805178455455721214728000000000000000000000000", + "literal_scalar_guard": "1", + "row_product_gap": "23971789/25", + "balanced_prefix_above_kappa": "11142995140369871687836058756879884819517724583638635854810906691542974606460221927269679557332208056349223210196436071578656246301365928173357580462787747945596149410657558209869527616739675472052433137315074262239343635338003289727719721889262346769493842303239490182221837799083974168742831067018220275338856371564025527629351934886613202659988652840164298357545481603150392137133054655139391/76421995022892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841000000000000000000", + "coordinate_movement_above_kappa": "429110188150215633922407202785857363767496247036091754067926332576611952620990876194859553406677848293165318269296525211709315463042017738348471419525175039799597151186265966429038976013630729422956134302849704531030250860298274918774624191096329526298869229995845351297531303636002247271864110172960300171446425272784394941346992694038641920850024352693068034848159/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "compact_phase_layer_above_kappa": "11142918718374848795569956677223624817545580433959047044325063600366375207668162987050938187161110856257836907040729607303561390373359563607154840890138723945149024932775497982747814158700195783642768958869562624126894796703217587253704887279579565704196537838364974341848106219764734815794059939227639517783679857480549586857069910376239877759394604664134227528191641624368233487157407348207425848159/76421995022892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841000000000000000000000000", + "bulk_exposure_above_kappa": "429110188150215633922407202785857363767496247036091754067926332576611952620990876194859553406677848293165318269296525211709315463042017738348471419525175039799597151186265966429038976013630729422956134302849704531030250860298274918774624191096329526298869229995845351297531303636002247271864110172960300171446425272784394941346992694038641920850024352693068034848159/152587890625000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "Gaussian_arithmetic_above_kappa": "17828715802596771808271591931351555709256215184142228557211607615292159971544296143412745921560435690067370833158591250250755138154179120511169389167811372712506714579170032908669530728744001066874228841258607181470500977906019561090336720413136973765892843220308668451181208899215119317039758579438571682986993680418964903434681071308207799355387796368232806542718930586258468769437240141291060448159/122275192036627625763327450016003155430639487342096777348945882559038067294304349986192273755520146218085049130342840151769484810183305924383316238438400715399164611296363394741532863167501455462685512818620979918141815657123958423735375492449704475687143799225344597970526910782964718033804464929212088282422533561505235651239216597319840950477081648113326966143966051453839961035691091144242945600000000000000000000000", + "scalar_work_above_kappa": "89143884700963950610422367975382818554169652519429498028001410441167197452889716477938695088486567250702399378415782108354155114482921060820657904129652959564322070807378405451834507475877924088009800920075082459802300244069240615347742940504415993090653433961041405617400970813352553996993877408355181445155674458428728280262533454582532296379315174545284316031010012846420978447088789934183162848159/611375960183138128816637250080015777153197436710483886744729412795190336471521749930961368777600731090425245651714200758847424050916529621916581192192003576995823056481816973707664315837507277313427564093104899590709078285619792118676877462248522378435718996126722989852634553914823590169022324646060441412112667807526178256196082986599204752385408240566634830719830257269199805178455455721214728000000000000000000000000", + "dimension_above_kappa": "76165895602107733909063186292477274543686379168069398976426547984239843795870687950172803509260130540966523850867932961493295203831869868839083597277365481048879698402560626232138109930969148545691082105101563023213798351612600247404733952556937992423254847373421973037914523063886541411094047218326418992228747591077447993314345998239124933581175904815783848820009870681514322710238549637998551137133054655139391/76421995022892266102079656260001972144149679588810485843091176599398792058940218741370171097200091386303155706464275094855928006364566202739572649024000447124477882060227121713458039479688409664178445511638112448838634785702474014834609682781065297304464874515840373731579319239352948771127790580757555176514083475940772282024510373324900594048176030070829353839978782158649975647306931965151841000000000000000000" + }, + "controls": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ], + "scope": "Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The new source-branch gauge and retired-basis completion, the gauge44-barch U8 local word and all 72 cold helper ends, and explicit all144 whole-owner dispatch with a two-copy remainder trade are composed with the cited unchanged merged PR589 bit supplier (PR555 punctured R439 word; derived bit deficit T(2Kv-L*cst)), replacing the PR543 supplier of PR635; This is a new T16 composition of the accepted PR799 and PR589 suppliers. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ASYNC-AUDIT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ASYNC-AUDIT.json new file mode 100644 index 0000000000..49cae6a085 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ASYNC-AUDIT.json @@ -0,0 +1,75 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS", + "template_sha256": "24069f0f02fbd8944d1c573404a12368b1b51d728e8bd9d4eb86632141c76c6f", + "complex_template_sha256": "24069f0f02fbd8944d1c573404a12368b1b51d728e8bd9d4eb86632141c76c6f", + "complex_live": 14336, + "complex_profile": { + "1": 340776, + "2": 71712, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "complex_hosted_residuals": 69120, + "physical": 14826, + "rank_mass": 1041408, + "deficit": 5120, + "entering_helper_roles": 34560, + "cross_replica_helper_roles": 59636, + "one_owner_per_complete_invocation": true, + "helper_busy_family_window_checks": 69120, + "complete_invocations": 144, + "actual_orthogonal_73column_maps": 10580, + "actual_sigma_stream_sha256": "753074d15f07a5a6874df365e11f768b9150f4c8f9b300a3ef4de2411181dc93", + "all_actual_residual_and_spectator_charts": true, + "idle_remainders": 5279, + "mutations_rejected": [ + "alias two whole owners", + "helper on active data family", + "owner in private namespace", + "wrong residual width", + "wrong spectator coordinate", + "omit idle remainder", + "understate physical reserve", + "gauge44: wrong provider at its invocation", + "gauge44: stale per-call local program hash", + "gauge44: stale serialized provider program", + "gauge44: unbound residual adapter hash", + "gauge44: wrong provider width registry", + "gauge44: wrong per-call residual width", + "gauge44: wrong sweep provider", + "gauge44: entering helper width silently restored to nine" + ], + "mutation_controls_run": true, + "provider_phase_semantic_sha256": { + "gauge44": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "9885ff29b54f8d2de67d58d68e40a48b7897530d565f932fe63534caa3b405c9", + "LOCAL-PROGRAMS.json.gz": "1c81387e144fe92eadc6296d44d3fd80e6f9573e0269cadaf591f75de0661eed", + "LOCAL-CHECKS.json": "36c5685b24037dcf3767fc7d8d48c308da50f754fc50a05d760e399dd275b045", + "INDEPENDENT-LOCAL-REPLAY.json": "4ffe4b6ea3a1e027ef67a519e92253286d5cb794155eea1d1bef940521521a5f", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "CLIFFORD-REVIEW.json": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + } + }, + "widths_by_provider": { + "gauge44": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + } + }, + "provider_counts": { + "gauge44": 144 + }, + "all_provider_program_phase_and_wrapper_bindings": true, + "scope": "Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/AUDIT-LOCAL.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/AUDIT-LOCAL.json new file mode 100644 index 0000000000..7d34380be9 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/AUDIT-LOCAL.json @@ -0,0 +1,137 @@ +{ + "status": "PASS_INDEPENDENT_EXACT_FORWARD_AND_DUAL_ENDPOINT_FRAMES_ENTRANCES_CONES", + "input_file": "FULL-WORD.json.gz", + "content_sha256": "1f66640293bde6c7e1df2d4ee0004c2de2327887a98575c5d975d6a14a8b7e74", + "compressed_sha256": "a0622d86259c4163e58cf0677ce575b6039a8ae4c95aa6d8b82a8163cbd42718", + "parent_center_interface": { + "parent_path": "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz", + "parent_file_sha256": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "transport_tau": 43, + "ordered_frame_bases_match": true, + "all_ports_match": true, + "transported_centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "source_centers": [ + 92, + 57, + 81, + 11, + 9 + ], + "ordered_frame_bases": [ + [ + 256, + 128, + 64, + 34, + 16, + 10, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 8, + 5, + 3 + ], + [ + 256, + 128, + 64, + 32, + 17, + 9, + 4, + 2 + ], + [ + 256, + 128, + 64, + 36, + 20, + 8, + 2, + 1 + ], + [ + 256, + 128, + 66, + 32, + 18, + 8, + 4, + 1 + ], + [ + 256, + 128, + 65, + 33, + 17, + 9, + 5, + 3 + ], + [ + 256, + 128, + 65, + 33, + 16, + 8, + 4, + 2 + ], + [ + 256, + 128, + 68, + 32, + 16, + 12, + 2, + 1 + ] + ] + }, + "v": 112, + "h": 9, + "R": 480, + "entering": 192, + "lowends": 78, + "coldends": 48, + "compensation_gates": 7208, + "local_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "checked_columns": 704, + "elapsed_seconds": 1.0347977500059642, + "scope": "Exact rational full scalar map in both orientations; all literal native frame chains, center levels, dyadic units, entrance-zero response, wrapper exclusion and final helper row/column cones. No global owner admission or exponent repricing." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/BIT-SUPPLIER-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/BIT-SUPPLIER-CONTROLS.json new file mode 100644 index 0000000000..bc4aa46a43 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/BIT-SUPPLIER-CONTROLS.json @@ -0,0 +1,49 @@ +{ + "status": "PASS_PR589_BIT_SUPPLIER_DERIVED_DEFICIT_NEGATIVE_CONTROLS", + "kappa": "0.001675560947524449", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "bit_decimal": "0.001733427039589844234749", + "binding": "complex", + "bit_supplier": { + "pr": 589, + "repository": "CrocSwap/integer-mult-bounds", + "commit": "a5afc8c6169ea61ba7c51dfd3cade02cc7b13b46", + "merged_as": "b3eb785ac5b4b1ca2beea0f80db078a505626a90", + "path": "research/e8-bit-p111-tuned/tune/EXPECTED.json", + "git_blob_sha1": "e293ddc557742637f9f679f083a1a282d87b1b13", + "word": { + "v": 111, + "decoder_constant": 63, + "copy_ranks": [ + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7 + ] + }, + "derived_deficit": 10272, + "deficit_formula": "T(2Kv-L*cst), L=9 T=32 K=4 M=64", + "replay_scope": "Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit." + }, + "derived_deficit": 10272, + "rejected_controls": [ + "revert_hardcoded_9984", + "ports_112", + "decoder_constant_64_copy_ranks_unchanged", + "decoder_constant_64_with_one_copy_rank_8", + "eight_retained_totals", + "live_minus_one", + "profile_rank_mass_plus_one", + "profile_rank_mass_receipt_mismatch", + "bit_lower_next_grid", + "not_nine_stage_record", + "tampered_bytes_next_grid", + "pr543_file_under_pr589_pin" + ], + "assembler_sha256": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/CLIFFORD-REVIEW.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/CLIFFORD-REVIEW.json new file mode 100644 index 0000000000..20324822e2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/CLIFFORD-REVIEW.json @@ -0,0 +1,19 @@ +{ + "status": "PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES", + "canonical_word_sha256": "c35ae25e495c53273a26102338c43de2ac7d3044fdead25b619c0bebc0e5cbff", + "frames": 1008, + "directed_edges": 2900, + "ranks": { + "1": 1888, + "2": 456, + "3": 379, + "8": 16, + "4": 121, + "5": 40 + }, + "endpoint_adapters": 224, + "all_child_equalities_include_global_phase": true, + "recipe_sha256": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "seconds": 127.5320972079935, + "scope": "Every local frame and center transition. Expanded scalar-interface integration and global emitted program are separate obligations." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ENTRANCE-CONTROLS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ENTRANCE-CONTROLS.json new file mode 100644 index 0000000000..721c9b0dd5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/ENTRANCE-CONTROLS.json @@ -0,0 +1,113 @@ +{ + "status": "PASS_JOINT_ENTRANCE_SEMANTIC_CONTROLS", + "rejected": [ + { + "control": "restore-promoted-start-603", + "reason": "frame not monotone (603, (408, 80, 40, 6, 1), (80, 40, 6, 1))" + }, + { + "control": "first-frame-too-small-603", + "reason": "frame not monotone (603, (80, 40, 6, 1), (80, 40, 6))" + }, + { + "control": "restore-promoted-start-605", + "reason": "frame not monotone (605, (408, 80, 40, 6, 1), (80, 40, 6, 1))" + }, + { + "control": "first-frame-too-small-605", + "reason": "frame not monotone (600, (80, 40, 6, 1), (80, 40, 6))" + }, + { + "control": "restore-promoted-start-606", + "reason": "frame not monotone (606, (408, 80, 40, 6, 1), (80, 40, 6, 1))" + }, + { + "control": "first-frame-too-small-606", + "reason": "frame not monotone (600, (80, 40, 6, 1), (80, 40, 6))" + }, + { + "control": "restore-promoted-start-607", + "reason": "frame not monotone (607, (408, 80, 40, 6, 1), (80, 40, 6, 1))" + }, + { + "control": "first-frame-too-small-607", + "reason": "frame not monotone (601, (80, 40, 6, 1), (80, 40, 6))" + }, + { + "control": "restore-promoted-start-611", + "reason": "frame not monotone (611, (272, 144, 96, 6, 1), (144, 96, 6, 1))" + }, + { + "control": "first-frame-too-small-611", + "reason": "frame not monotone (611, (144, 96, 6, 1), (144, 96, 6))" + }, + { + "control": "restore-promoted-start-613", + "reason": "frame not monotone (613, (272, 144, 96, 6, 1), (144, 96, 6, 1))" + }, + { + "control": "first-frame-too-small-613", + "reason": "frame not monotone (608, (144, 96, 6, 1), (144, 96, 6))" + }, + { + "control": "restore-promoted-start-614", + "reason": "frame not monotone (614, (272, 144, 96, 6, 1), (144, 96, 6, 1))" + }, + { + "control": "first-frame-too-small-614", + "reason": "frame not monotone (608, (144, 96, 6, 1), (144, 96, 6))" + }, + { + "control": "restore-promoted-start-615", + "reason": "frame not monotone (615, (272, 144, 96, 6, 1), (144, 96, 6, 1))" + }, + { + "control": "first-frame-too-small-615", + "reason": "frame not monotone (609, (144, 96, 6, 1), (144, 96, 6))" + }, + { + "control": "restore-promoted-start-635", + "reason": "frame not monotone (635, (298, 170, 102, 30, 1), (298, 170, 102, 30))" + }, + { + "control": "first-frame-too-small-635", + "reason": "frame not monotone (632, (30,), (298, 170, 102))" + }, + { + "control": "restore-promoted-start-637", + "reason": "frame not monotone (637, (298, 170, 102, 30, 1), (298, 170, 102, 30))" + }, + { + "control": "first-frame-too-small-637", + "reason": "frame not monotone (632, (298, 170, 102, 30), (298, 170, 102))" + }, + { + "control": "restore-promoted-start-638", + "reason": "frame not monotone (638, (298, 170, 102, 30, 1), (298, 170, 102, 30))" + }, + { + "control": "first-frame-too-small-638", + "reason": "frame not monotone (632, (298, 170, 102, 30), (298, 170, 102))" + }, + { + "control": "restore-promoted-start-639", + "reason": "frame not monotone (639, (298, 170, 102, 30, 1), (298, 170, 102, 30))" + }, + { + "control": "first-frame-too-small-639", + "reason": "frame not monotone (633, (298, 170, 102, 30), (298, 170, 102))" + }, + { + "control": "false-paid-profile", + "reason": "paid profile mismatch" + }, + { + "control": "wrong-target-coefficient", + "reason": "nonzero entrance response" + }, + { + "control": "false-helper-inventory", + "reason": "width inventory mismatch" + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/GLOBAL-PREFIX.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/GLOBAL-PREFIX.json new file mode 100644 index 0000000000..8aafa48418 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/GLOBAL-PREFIX.json @@ -0,0 +1,13 @@ +{ + "status": "PASS_MIXED_ASYNC_GLOBAL_PREFIX", + "template_sha256": "24069f0f02fbd8944d1c573404a12368b1b51d728e8bd9d4eb86632141c76c6f", + "global_prefix_bits": 397, + "retained_payload_bits": 512, + "complete_invocation_cover_sweeps": 144, + "bridge_factor_two_sweeps": 144, + "local_scalar_coefficient_work_prefix_bits": 68, + "stream_input_sup_to_l2_bits": 37, + "primitive_arithmetic_margin_bits": 4, + "controller_audit_sha256": "e9914607d9f7409a23c6e7ad94b5c3d46f384622d4968efd67c9dd3d7cdd3855", + "proof": "Each selected normalized provider restores all arbitrary dirty helper columns and gives the same data shear endpoints. Actual whole-owner charts are right-translation bijections. Sum all 144 invocation and 144 bridge sweeps and take maximum local scalar/Horner prefix over all three providers and orientations. Idle children, phases, spectator endpoints and terminal translations are unitary. Retained all-size interfaces are conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/IDLE-REMAINDER-FRAMES.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/IDLE-REMAINDER-FRAMES.json new file mode 100644 index 0000000000..ef63299279 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/IDLE-REMAINDER-FRAMES.json @@ -0,0 +1,13 @@ +{ + "status": "PASS_LITERAL_IDLE_REMAINDER_FRAMES", + "template_sha256": "24069f0f02fbd8944d1c573404a12368b1b51d728e8bd9d4eb86632141c76c6f", + "uncompressed_frames_sha256": "de5b1fc2e84d0735f67b3b541a85e16de9ab2a77fa62e4570968be86f9deb57c", + "children": 5279, + "rank_profile": { + "1": 360, + "24": 1, + "48": 4918 + }, + "source_data_phase_sha256": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "scope": "Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/INDEPENDENT-LOCAL-REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/INDEPENDENT-LOCAL-REPLAY.json new file mode 100644 index 0000000000..6c6d8d5188 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/INDEPENDENT-LOCAL-REPLAY.json @@ -0,0 +1,71 @@ +{ + "status": "PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY", + "canonical_word_sha256": "c35ae25e495c53273a26102338c43de2ac7d3044fdead25b619c0bebc0e5cbff", + "local_programs_sha256": "9f1e1919d9daa4d130617ba777cc549f1de82f5fb3f55fc6632ad2656cc55af0", + "v": 112, + "helpers": 480, + "local": { + "forward": { + "all_exact_columns": 704, + "prefix_l1_upper": "2765345294379392599/1024", + "prefix_bits_upper": 52, + "charged_payload_bits": 192, + "private_work_erased": true + }, + "backward": { + "all_exact_columns": 704, + "prefix_l1_upper": "14824960514781440791821/64", + "prefix_bits_upper": 68, + "charged_payload_bits": 192, + "private_work_erased": true + } + }, + "paid_profiles": { + "forward": { + "1": 2364, + "4": 130, + "8": 8, + "3": 412, + "2": 498, + "5": 82 + }, + "backward": { + "1": 2364, + "4": 130, + "8": 8, + "3": 412, + "2": 498, + "5": 82 + } + }, + "entering_helpers": 192, + "cold_hyperplane_ended_helpers": 48, + "negative_controls_rejected": [ + "wrong_scale", + "missing_center", + "wrong_common_frame", + "wrong_child_rank", + "missing_pre_wrapper", + "missing_post_wrapper", + "wrapper_with_wrong_frame", + "wrapper_in_wrong_phase", + "wrapper_on_a_data_register", + "wrapper_on_a_target_register", + "wrapper_on_a_centre_register", + "hpe_pre_wrapper_resolved_to_full_recipe", + "hpe_post_wrapper_without_terminal_frame", + "hpe_post_wrapper_wrong_terminal_frame", + "hpe_tail_gate_at_full_frame", + "hpe_tail_climb_dropped", + "hpe_helper_exit_adapter_to_full", + "hpe_tail_gate_moved_into_full_cleanup", + "cold_hpe_pre_wrapper_replaced_by_identity_entry_adapter", + "cold_hpe_pre_wrapper_dropped", + "cold_hpe_post_wrapper_replaced_by_exit_adapter", + "cold_hpe_pre_wrapper_resolved_to_cold_full_convention", + "cold_hpe_wrapper_with_nonzero_entrance", + "cold_hpe_post_wrapper_wrong_terminal_frame", + "cold_hpe_premix_gate_before_pre_wrapper" + ], + "scope": "Literal forward and inverse-transpose replay on every arbitrary data/helper column, physical frame incidence, ordered paid wrappers, cleared private work and prefix coefficients. Global hosting and outer exponent are separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/INDEPENDENT-T16.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/INDEPENDENT-T16.json new file mode 100644 index 0000000000..d0d0bb88fd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/INDEPENDENT-T16.json @@ -0,0 +1,116 @@ +{ + "status": "PASS_INDEPENDENT_T16_LITERAL_WINDOWS_CHARTS_PREFIX_ROW", + "roles": 69120, + "calls": 144, + "source_events_per_replica": 30, + "expanded_replica_events": 480, + "bridge_events": 144, + "literal_windows": 288, + "checked_whole_helper_widths": 69120, + "checked_busy_family_windows": 69120, + "orthogonal_port_bases": 112, + "actual_73_axis_charts": 10580, + "checked_slice_prefixes": 32256, + "local_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "idle": { + "1": 360, + "24": 1, + "48": 4918 + }, + "profile": { + "1": 340776, + "2": 71712, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "live": 14336, + "physical": 14850, + "rank_mass": 1041408, + "deficit": 5120, + "namespace": { + "data": [ + 0, + 14336 + ], + "centres": [ + 14336, + 14344 + ], + "tableau": [ + 14344, + 14848 + ], + "coefficient": [ + 14848, + 14850 + ] + }, + "local_prefix_bits": 68, + "local_prefix_from_native_receipt": true, + "local_profile_recounted": true, + "prefix_formula": { + "local_scalar": 68, + "input_l2": 37, + "invocations": 144, + "bridges": 144, + "margin": 4 + }, + "prefix_bits": 397, + "charged_prefix_bits": 512, + "physical_stock_bits": 2642, + "physical_row_coefficient": 16469, + "row_limit": 20161, + "scope": "Finite role/window/chart and inherited prefix/row obligations. Requires separately admitted local supplier and emitted controller, complete finite invoice, exact moments and outer assembly; no all-size theorem is asserted.", + "controls_rejected": [ + { + "name": "private_namespace_collision", + "reason": "private-namespace collision" + }, + { + "name": "copy_replica_alias", + "reason": "role invocation time" + }, + { + "name": "missing_whole_helper", + "reason": "complete helper role count" + }, + { + "name": "split_whole_helper", + "reason": "complete helper role count" + }, + { + "name": "truncated_helper_width", + "reason": "whole-helper residual width" + }, + { + "name": "cross_idle_boundary", + "reason": "strict bridge-aware idle window" + } + ], + "input_sha256": { + "/Users/thomasdifiore/integer-mult-runs/k8-eight-ends-t16-portable-20261013/t16/global8/base/split-centres/GLOBAL-TEMPLATE.json.gz": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "/Users/thomasdifiore/integer-mult-runs/k8-eight-ends-t16-portable-20261013/t16/global8/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "/Users/thomasdifiore/integer-mult-runs/k8-eight-ends-t16-portable-20261013/t16/global8/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "/Users/thomasdifiore/integer-mult-runs/k8-joint-interfaces-20261013/native/local/CANONICAL-WORD.json.gz": "c35ae25e495c53273a26102338c43de2ac7d3044fdead25b619c0bebc0e5cbff", + "/Users/thomasdifiore/integer-mult-runs/k8-joint-interfaces-20261013/native/local/INDEPENDENT-LOCAL-REPLAY.json": "2bcb926b433bfc223997efd5d7212899c850a1ddb204269589b1f3a7151d82c6", + "/Users/thomasdifiore/integer-mult-runs/k8-joint-interfaces-20261013/strict/runtime/data/OWNERS.json.gz": "7755af4108f066cf1eb13dbaac0a0fbb97a2852ffa7403588d2b5218c81101bf" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/LOCAL-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/LOCAL-CHECKS.json new file mode 100644 index 0000000000..17cb61022e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/LOCAL-CHECKS.json @@ -0,0 +1,36 @@ +{ + "forward": { + "sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "scalar_macros": 19693, + "real_component_primitive_bound": 198766, + "paid_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "all_columns": 704, + "private_centers_cleared": true, + "private_coefficient_stream_cleared_after_each_macro": true + }, + "backward": { + "sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "scalar_macros": 19693, + "real_component_primitive_bound": 198814, + "paid_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "all_columns": 704, + "private_centers_cleared": true, + "private_coefficient_stream_cleared_after_each_macro": true + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/NATIVE-STEPS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/NATIVE-STEPS.json new file mode 100644 index 0000000000..f3c06ffd8d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/NATIVE-STEPS.json @@ -0,0 +1,27 @@ +[ + { + "step": "native", + "exit_code": 0, + "seconds": 1.4581067090039141 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.9179546659870539 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 6.478409166011261 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.9642078340111766 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 127.58402362497873 + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/OWNERS-AND-PROFILE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/OWNERS-AND-PROFILE.json new file mode 100644 index 0000000000..5637e44807 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/OWNERS-AND-PROFILE.json @@ -0,0 +1,52 @@ +{ + "status": "PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE", + "template_sha256": "24069f0f02fbd8944d1c573404a12368b1b51d728e8bd9d4eb86632141c76c6f", + "paid_profile": { + "1": 340776, + "2": 71712, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "live": 14336, + "physical": 14826, + "rank_mass": 1041408, + "deficit": 5120, + "hosted_residuals": 69120, + "banked_residuals": 0, + "all_live_owners_per_call_distinct": true, + "owners_per_call": 704, + "actual_helper_owner_charts": 69120, + "actual_73column_sigmas": 10580, + "cross_replica_helper_roles": 59636, + "explicit_idle_remainder_children": 5279, + "source_idle_children_charged": 32256, + "source_artifacts": { + "work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "providers/gauge44/CANONICAL-WORD.json.gz": "c35ae25e495c53273a26102338c43de2ac7d3044fdead25b619c0bebc0e5cbff", + "providers/gauge44/LOCAL-PROGRAMS.json.gz": "9f1e1919d9daa4d130617ba777cc549f1de82f5fb3f55fc6632ad2656cc55af0", + "providers/gauge44/LOCAL-CHECKS.json": "654ca95a7f9af260d088f29c1791686f54f66cbbe735b9ea2fd5114b377727aa", + "providers/gauge44/INDEPENDENT-LOCAL-REPLAY.json": "2bcb926b433bfc223997efd5d7212899c850a1ddb204269589b1f3a7151d82c6", + "providers/gauge44/RESIDUAL-ADAPTERS.json": "c099207d60ab49392bcadcaf7e9cbcfe01178e732f14e2591a8c3463162460d7", + "providers/gauge44/CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "providers/gauge44/CLIFFORD-REVIEW.json": "570f97a375f2acf7d133f563c61c0a8080e8b0dc67cb0299597609029b81906e" + }, + "provider_phase_semantic_sha256": { + "gauge44": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e" + }, + "provider_artifact_semantic_sha256": { + "gauge44": { + "CANONICAL-WORD.json.gz": "9885ff29b54f8d2de67d58d68e40a48b7897530d565f932fe63534caa3b405c9", + "LOCAL-PROGRAMS.json.gz": "1c81387e144fe92eadc6296d44d3fd80e6f9573e0269cadaf591f75de0661eed", + "LOCAL-CHECKS.json": "36c5685b24037dcf3767fc7d8d48c308da50f754fc50a05d760e399dd275b045", + "INDEPENDENT-LOCAL-REPLAY.json": "4ffe4b6ea3a1e027ef67a519e92253286d5cb794155eea1d1bef940521521a5f", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "CLIFFORD-REVIEW.json": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + } + }, + "controller_audit_sha256": "e9914607d9f7409a23c6e7ad94b5c3d46f384622d4968efd67c9dd3d7cdd3855" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/PORTABLE-STEPS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/PORTABLE-STEPS.json new file mode 100644 index 0000000000..30a88871d3 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/PORTABLE-STEPS.json @@ -0,0 +1,32 @@ +[ + { + "step": "build", + "exit_code": 0, + "seconds": 0.08052116699400358, + "log_sha256": "9a6250d812a76ece46c01f94bb2c8f9b1dba2b28a864be7c6713c4c9ffd8b4e3" + }, + { + "step": "independent-local", + "exit_code": 0, + "seconds": 1.1403743329865392, + "log_sha256": "a1eae661e1abad450f8fdaaf38fcdf502723ae0dee8f25142cb6c5fa800e2fde" + }, + { + "step": "entrance-controls", + "exit_code": 0, + "seconds": 21.99238145799609, + "log_sha256": "ffd5989ea8b71b6b5660895a458d3a6db372deb1fb9aca6722da5f870c97aa32" + }, + { + "step": "strict-global", + "exit_code": 0, + "seconds": 27.90438749999157, + "log_sha256": "7e150d52477f9263bc138fef7ead516fe8f41582664e3ce71d452549e54d4673" + }, + { + "step": "all-replica-bound", + "exit_code": 0, + "seconds": 0.45767991698812693, + "log_sha256": "da1012ae7c38da9d5e6ec2315e58abbb011583ff2a5fef5c484adf851f413e2e" + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/PREFIX-AND-INVOICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/PREFIX-AND-INVOICE.json new file mode 100644 index 0000000000..3ca8cfa35c --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/PREFIX-AND-INVOICE.json @@ -0,0 +1,2814 @@ +{ + "status": "PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE", + "template_sha256": "24069f0f02fbd8944d1c573404a12368b1b51d728e8bd9d4eb86632141c76c6f", + "parent_template_sha256": "8904bbbf46dfbf1c6df0e43479a23913fc59a410e879188112e88f16c850ede8", + "owner_audit_sha256": "2e2889604e2d944dcd6b42d3006cd6ff35feef779405d58568bab081ae9ebadc", + "controller_audit_sha256": "e9914607d9f7409a23c6e7ad94b5c3d46f384622d4968efd67c9dd3d7cdd3855", + "providers": { + "gauge44": { + "local": { + "backward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 372, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387056, + "local_primitive_bound": 10038040553630, + "compiler": 25934336, + "children": 3494, + "artifacts": { + "CANONICAL-WORD.json.gz": "c35ae25e495c53273a26102338c43de2ac7d3044fdead25b619c0bebc0e5cbff", + "RESIDUAL-ADAPTERS.json": "c099207d60ab49392bcadcaf7e9cbcfe01178e732f14e2591a8c3463162460d7", + "LOCAL-PROGRAMS.json.gz": "9f1e1919d9daa4d130617ba777cc549f1de82f5fb3f55fc6632ad2656cc55af0", + "LOCAL-CHECKS.json": "654ca95a7f9af260d088f29c1791686f54f66cbbe735b9ea2fd5114b377727aa", + "CLIFFORD-REVIEW.json": "570f97a375f2acf7d133f563c61c0a8080e8b0dc67cb0299597609029b81906e", + "INDEPENDENT-LOCAL-REPLAY.json": "2bcb926b433bfc223997efd5d7212899c850a1ddb204269589b1f3a7151d82c6", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "FULL-WORD.json.gz": "d5c6b98459c58f37d6faa4acf435f39d5ae09038aa2a5f8f7a7725918a845b22", + "SCALAR-FRAME-AUDIT.json": "6f9526bba8b67ef345c60019e5b94796f3eb0bb4f28674fdd49fa42c69a02db0", + "WRAPPER-CHECKS.json": "f2a005b54bea64d66633d8a82d0454348172da3b88361081a72126bf1d51744d" + }, + "paid_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "forward": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "9885ff29b54f8d2de67d58d68e40a48b7897530d565f932fe63534caa3b405c9", + "LOCAL-PROGRAMS.json.gz": "1c81387e144fe92eadc6296d44d3fd80e6f9573e0269cadaf591f75de0661eed", + "LOCAL-CHECKS.json": "36c5685b24037dcf3767fc7d8d48c308da50f754fc50a05d760e399dd275b045", + "INDEPENDENT-LOCAL-REPLAY.json": "4ffe4b6ea3a1e027ef67a519e92253286d5cb794155eea1d1bef940521521a5f", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "CLIFFORD-REVIEW.json": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + } + } + }, + "provider_phase_semantic_sha256": { + "gauge44": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e" + }, + "provider_counts": { + "gauge44": 144 + }, + "selected_calls": [ + { + "stage": 0, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 0, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 1, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 0, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 8, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 1, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 9, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 2, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 0, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 8, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 2, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 10, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 1, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 9, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 3, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 3, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 11, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 2, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 10, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 4, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 4, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 12, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 3, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 11, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 5, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 5, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 13, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 4, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 12, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 6, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 6, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 14, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 5, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 13, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 7, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 7, + "replica": 15, + "provider_id": "gauge44", + "orientation": "backward", + "program_sha256": "4e289cbf4c3a069540aae0134b932dde2be4aee5e7f7e19206d9a923055eea9f", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198814, + "coefficient_work_primitive_count": 98365, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 6, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 14, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 7, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + }, + { + "stage": 8, + "replica": 15, + "provider_id": "gauge44", + "orientation": "forward", + "program_sha256": "9cfd73e7007cdb03915d31b8d52381716928e0254922e67713ad7bcab138a66e", + "events": 24767, + "macros": 19693, + "real_component_primitives": 198766, + "coefficient_work_primitive_count": 98333, + "entering_helpers": 192, + "entrance_rank": 372, + "pre_wrappers": 240, + "post_wrappers": 240 + } + ], + "selected_local_paid_profile": { + "1": 340416, + "2": 71712, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152 + }, + "selected_real_component_primitives": 28625376, + "selected_coefficient_work_primitive_count": 14162000, + "selected_scalar_macros": 2835792, + "global_prefix_bits": 397, + "charged_prefix_bits": 512, + "complete_invocation_sweeps": 144, + "bridge_sweeps": 144, + "row_prefix_extra": 1024, + "helpers": 480, + "centres": 8, + "live": 14336, + "physical": 14826, + "physical_stock_identity": { + "data_and_owner_families": 14336, + "local_helpers": 480, + "private_centres": 8, + "coefficient_work": 2 + }, + "local_adapters": 387056, + "local_primitive_bound": 10038040553630, + "wrapper_elementary_factors_charged": 9953280, + "factors_per_wrapper": 144, + "compiler": 25934336, + "unhosted_pervertex": 3588959010714576, + "hosted_rebased_pervertex": 3588959010114264, + "conservative_pervertex_used": 6466906000439144, + "retained_prior_overcharge": { + "sha256": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "previous_pervertex_allowance": 2877946989724568, + "added_complete_new_pervertex": 3588959010714576, + "policy": "Retain old allowance and add entire fresh mixed recount." + }, + "finite": { + "physical_stock_bits": 2642, + "router_bits": 7988, + "literal_bits": 35284, + "physical_row_coefficient": 16469, + "retained_row_coefficient": 20161, + "required_C0_bits": 200012, + "halving_integer_inequality": [ + 5329, + 4608 + ], + "G_exponent": 30000, + "E_exponent": 100000, + "C0_exponent": 210000 + }, + "strict_checks": { + "local_primitive_bound": true, + "logical": true, + "router": true, + "literal": true, + "mass": true, + "precision": true, + "tape": true, + "row": true, + "halving": true + }, + "scope": "Actual call-specific mixed scalar, Horner, wrappers and paid children recounted. All three providers use fresh hash-bound independent all-column/frame/phase/normalization admission. Shared compiler uses conservative maxima; parent is geometry/overcharge only. All-size compiler, hosting, precision/tape and analytic transfer remain conditional." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/PREPARATION.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/PREPARATION.json new file mode 100644 index 0000000000..5e50d74454 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/PREPARATION.json @@ -0,0 +1,45 @@ +{ + "status": "PASS_EXACT_WIDTH_SLOT_SUBSTITUTION_NOMINATION", + "helper_permutation": { + "411": 395, + "413": 397, + "414": 398, + "415": 399, + "395": 411, + "397": 413, + "398": 414, + "399": 415 + }, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "idle": { + "1": 360, + "24": 1, + "48": 4918 + }, + "local_profile": { + "1": 2364, + "2": 498, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "global_profile": { + "1": 340776, + "2": 71712, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "old_owners_sha256": "93cb570c9496725ed5204d9f890ddf337ed8c3fb1a1b980de3e905f65e71b2dd", + "new_owners_sha256": "7755af4108f066cf1eb13dbaac0a0fbb97a2852ffa7403588d2b5218c81101bf" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/REPLAY-LOGS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/REPLAY-LOGS.json.gz new file mode 100644 index 0000000000..f06cf3f33e Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/REPLAY-LOGS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/REPLAY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/REPLAY.json new file mode 100644 index 0000000000..d4ddb8c4dd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/REPLAY.json @@ -0,0 +1,79 @@ +{ + "status": "PASS_CHANGED_LOCAL_INTERFACES_STRICT_T16_ADMISSION", + "kappa": "1675560947524449/1000000000000000000", + "kappa_decimal": "0.001675560947524449", + "complex_lower": "41959329101337756331/25000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "profile": { + "1": 340776, + "2": 71712, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "idle": { + "1": 360, + "24": 1, + "48": 4918 + }, + "controls": { + "admission": 69, + "bit_supplier": 12, + "independent_t16": 6, + "controller": 15 + }, + "outer_strict_inequalities": 47, + "steps": [ + { + "step": "bind", + "exit_code": 0, + "seconds": 0.43761395799811, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "step": "emit", + "exit_code": 0, + "seconds": 4.424496958003147, + "log_sha256": "e5fb1d68f50e4ad29f7739e64ffc8ce24cb3d88e663d3217b720c6ca1447cd39" + }, + { + "step": "audit", + "exit_code": 0, + "seconds": 18.39872700002161, + "log_sha256": "e9914607d9f7409a23c6e7ad94b5c3d46f384622d4968efd67c9dd3d7cdd3855" + }, + { + "step": "invoice", + "exit_code": 0, + "seconds": 0.8952893750101794, + "log_sha256": "8f7074e3f78a103318ded6362c8e9bc8fc0e8c1ea3b510e63b9b84b181452cb3" + }, + { + "step": "assembly", + "exit_code": 0, + "seconds": 0.3134612090070732, + "log_sha256": "0bea5a339ee9d067c8c6442bf1d6c6600b50352846058ea7e2f551251e1c9cc0" + }, + { + "step": "admission-controls", + "exit_code": 0, + "seconds": 0.40388570801587775, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + }, + { + "step": "bit-supplier-controls", + "exit_code": 0, + "seconds": 0.6066456669941545, + "log_sha256": "d54d260bf95bd8ae4ab8846314082b93b2e3d8f427eb35376691f2ce543a6b67" + }, + { + "step": "independent-t16", + "exit_code": 0, + "seconds": 0.8316891669819597, + "log_sha256": "9a822ed55b91969189acb1bb1bbdcebafc800855952fbd5e91c5d977c29cbbf9" + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/RESULT.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/RESULT.json new file mode 100644 index 0000000000..b014ed625e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/RESULT.json @@ -0,0 +1,87 @@ +{ + "status": "PASS_JOINT_ENTRANCES_COMPLETE_ADMISSION", + "kappa": "1675560947524449/1000000000000000000", + "kappa_decimal": "0.001675560947524449", + "complex_lower": "41959329101337756331/25000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "controls": { + "admission": 69, + "bit_supplier": 12, + "independent_t16": 6, + "controller": 15 + }, + "entrance_controls": 27, + "outer_strict_inequalities": 47, + "native_steps": [ + { + "step": "native", + "exit_code": 0, + "seconds": 1.4581067090039141 + }, + { + "step": "ledgers", + "exit_code": 0, + "seconds": 0.9179546659870539 + }, + { + "step": "local-replay", + "exit_code": 0, + "seconds": 6.478409166011261 + }, + { + "step": "wrappers", + "exit_code": 0, + "seconds": 1.9642078340111766 + }, + { + "step": "phases", + "exit_code": 0, + "seconds": 127.58402362497873 + } + ], + "native_semantic_artifacts": { + "CANONICAL-WORD.json.gz": "9885ff29b54f8d2de67d58d68e40a48b7897530d565f932fe63534caa3b405c9", + "LOCAL-PROGRAMS.json.gz": "1c81387e144fe92eadc6296d44d3fd80e6f9573e0269cadaf591f75de0661eed", + "LOCAL-CHECKS.json": "36c5685b24037dcf3767fc7d8d48c308da50f754fc50a05d760e399dd275b045", + "INDEPENDENT-LOCAL-REPLAY.json": "4ffe4b6ea3a1e027ef67a519e92253286d5cb794155eea1d1bef940521521a5f", + "CLIFFORD-RECIPES.json": "c58d2bd3492a031820aec434661c9297fa41d810ad661c651f139e9b592c6a4a", + "CLIFFORD-REVIEW.json": "3ca5c207027b17a305206541c9792b73cd6e4c92dbb7ada0cb765882af9f4f9e", + "RESIDUAL-ADAPTERS.json": "d77ab0c3689e5c10f7129487a85d1497dd721e31138372b4a35913691fe5bc69" + }, + "native_reuse": true, + "parent_reuse": true, + "previous_kappa": "0.001675121647789207", + "scope": "Conditional native exact-complex witness replacing the third demoted entrance group 619 with group 635 and its different four-dimensional subspace, jointly refitting local recursive frames. Groups 603 and 611 remain demoted. Whole-helper T16 hosting and the unchanged PR589 bit supplier are retained. Scalar operations and their order are unchanged. PR559 exact-cover recurrence correction, bit bad-residue surcharge, and H1-H5 retained. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification.", + "steps": [ + { + "step": "build", + "exit_code": 0, + "seconds": 0.08052116699400358, + "log_sha256": "9a6250d812a76ece46c01f94bb2c8f9b1dba2b28a864be7c6713c4c9ffd8b4e3" + }, + { + "step": "independent-local", + "exit_code": 0, + "seconds": 1.1403743329865392, + "log_sha256": "a1eae661e1abad450f8fdaaf38fcdf502723ae0dee8f25142cb6c5fa800e2fde" + }, + { + "step": "entrance-controls", + "exit_code": 0, + "seconds": 21.99238145799609, + "log_sha256": "ffd5989ea8b71b6b5660895a458d3a6db372deb1fb9aca6722da5f870c97aa32" + }, + { + "step": "strict-global", + "exit_code": 0, + "seconds": 27.90438749999157, + "log_sha256": "7e150d52477f9263bc138fef7ead516fe8f41582664e3ce71d452549e54d4673" + }, + { + "step": "all-replica-bound", + "exit_code": 0, + "seconds": 0.45767991698812693, + "log_sha256": "da1012ae7c38da9d5e6ec2315e58abbb011583ff2a5fef5c484adf851f413e2e" + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/STAGES.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/STAGES.json new file mode 100644 index 0000000000..8df006759f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/STAGES.json @@ -0,0 +1,50 @@ +[ + { + "step": "bind", + "exit_code": 0, + "seconds": 0.43761395799811, + "log_sha256": "71f679ce5a123fb58397fd6852ba64ce3832fd20e81a096bfda9a1cf3237237a" + }, + { + "step": "emit", + "exit_code": 0, + "seconds": 4.424496958003147, + "log_sha256": "e5fb1d68f50e4ad29f7739e64ffc8ce24cb3d88e663d3217b720c6ca1447cd39" + }, + { + "step": "audit", + "exit_code": 0, + "seconds": 18.39872700002161, + "log_sha256": "e9914607d9f7409a23c6e7ad94b5c3d46f384622d4968efd67c9dd3d7cdd3855" + }, + { + "step": "invoice", + "exit_code": 0, + "seconds": 0.8952893750101794, + "log_sha256": "8f7074e3f78a103318ded6362c8e9bc8fc0e8c1ea3b510e63b9b84b181452cb3" + }, + { + "step": "assembly", + "exit_code": 0, + "seconds": 0.3134612090070732, + "log_sha256": "0bea5a339ee9d067c8c6442bf1d6c6600b50352846058ea7e2f551251e1c9cc0" + }, + { + "step": "admission-controls", + "exit_code": 0, + "seconds": 0.40388570801587775, + "log_sha256": "051d242318154827c1672ffbb63ad2bdc8ecc4033be650b791dd69cd57d716b3" + }, + { + "step": "bit-supplier-controls", + "exit_code": 0, + "seconds": 0.6066456669941545, + "log_sha256": "d54d260bf95bd8ae4ab8846314082b93b2e3d8f427eb35376691f2ce543a6b67" + }, + { + "step": "independent-t16", + "exit_code": 0, + "seconds": 0.8316891669819597, + "log_sha256": "9a822ed55b91969189acb1bb1bbdcebafc800855952fbd5e91c5d977c29cbbf9" + } +] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/UPSTREAM-COMPATIBILITY.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/UPSTREAM-COMPATIBILITY.json new file mode 100644 index 0000000000..e13d511d33 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/UPSTREAM-COMPATIBILITY.json @@ -0,0 +1,7 @@ +{ + "status": "PASS_EXISTING_UPSTREAM_SOURCES_UNCHANGED", + "base_commit": "ce7ad1b6ab09452c3478723a2e96ed5ff212dc08", + "existing_source_files_checked": 82, + "source_drift": [], + "note": "The other 183 pinned files are predecessor packages added on this branch. No source compatibility claim is made about a future main revision." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/WRAPPER-CHECKS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/WRAPPER-CHECKS.json new file mode 100644 index 0000000000..31af707df8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/evidence/WRAPPER-CHECKS.json @@ -0,0 +1,421 @@ +{ + "status": "PASS_RESIDUAL_WRAPPERS_ARE_EXACT", + "frames": 22, + "hyperplane_end_pairs": [ + { + "frame": 0, + "terminal": 129, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 158, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 187, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 215, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 243, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 271, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 299, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 327, + "entrance_rank": 0, + "terminal_rank": 4, + "residual_width": 4 + }, + { + "frame": 0, + "terminal": 1000, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1001, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1002, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1003, + "entrance_rank": 0, + "terminal_rank": 8, + "residual_width": 8 + }, + { + "frame": 0, + "terminal": 1004, + "entrance_rank": 0, + "terminal_rank": 7, + "residual_width": 7 + }, + { + "frame": 0, + "terminal": 1005, + "entrance_rank": 0, + "terminal_rank": 7, + "residual_width": 7 + }, + { + "frame": 0, + "terminal": 1006, + "entrance_rank": 0, + "terminal_rank": 7, + "residual_width": 7 + }, + { + "frame": 0, + "terminal": 1007, + "entrance_rank": 0, + "terminal_rank": 7, + "residual_width": 7 + }, + { + "frame": 2, + "terminal": 999, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + }, + { + "frame": 3, + "terminal": 998, + "entrance_rank": 1, + "terminal_rank": 8, + "residual_width": 7 + } + ], + "cold_hyperplane_end_pairs": 16, + "wrappers_reject": [ + "wrong global phase", + "wrong translation", + "wrong quadratic form", + "sides swapped", + "wrong width", + "hpe: U-wrapper decoded against a FULL ending", + "hpe: width misreported as 9 - dim E", + "hpe: wrong terminal hyperplane", + "hpe: pre wrapper resolved to the FULL recipe R_{E,FULL}", + "hpe: wrong global phase", + "cold hpe: identity pre wrapper instead of R_{0,U}", + "cold hpe: identity post wrapper instead of L_{0,U}", + "cold hpe: no wrappers (cold FULL convention L = R = I)", + "cold hpe: U-wrapper decoded against a FULL ending", + "cold hpe: width misreported as 9", + "cold hpe: wrong terminal hyperplane", + "cold hpe: wrong global phase" + ], + "all_even_weight": false, + "all_totally_isotropic": false, + "detail": [ + { + "frame": 2, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 30 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 3, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 51 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 9, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 459 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 10, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 75 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 11, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 102 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 12, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 120 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 13, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 85 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 423, + "entrance_rank": 1, + "residual_width": 8, + "vectors": [ + 45 + ], + "all_even_weight": true, + "totally_isotropic": true + }, + { + "frame": 424, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 413, + 72, + 48, + 3 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 425, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 407, + 66, + 36, + 9 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 426, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 455, + 33, + 18, + 12 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 427, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 258, + 130, + 85, + 45 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 428, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 264, + 136, + 85, + 51 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 429, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 427, + 96, + 24, + 6 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 430, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 423, + 65, + 20, + 10 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 431, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 257, + 129, + 102, + 30 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 432, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 391, + 68, + 34, + 17, + 8 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 433, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 80, + 40, + 5, + 2 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 434, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 144, + 75, + 42, + 7 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 435, + "entrance_rank": 4, + "residual_width": 5, + "vectors": [ + 320, + 192, + 45, + 30 + ], + "all_even_weight": true, + "totally_isotropic": false + }, + { + "frame": 436, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 288, + 160, + 75, + 25, + 7 + ], + "all_even_weight": false, + "totally_isotropic": false + }, + { + "frame": 437, + "entrance_rank": 5, + "residual_width": 4, + "vectors": [ + 260, + 132, + 75, + 42, + 25 + ], + "all_even_weight": false, + "totally_isotropic": false + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/independent/all_t_bound.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/independent/all_t_bound.py new file mode 100644 index 0000000000..3350fde296 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/independent/all_t_bound.py @@ -0,0 +1,172 @@ +"""All-replica signed-dual bound for the joint-entrance k8 whole-owner family. + +Adapted from jon314159's PR942 all_t_bound.py, with the joint-entrance k8 inventory. +Dual prices: chafreaky's PR795/890. See ../NOTICE.md. Apache-2.0. +Two exact rational engines certify the inequalities and endpoint signs. +This is an upper relaxation only: it does not establish physical feasibility. +""" +import argparse +import gzip +from collections import Counter +from fractions import Fraction as Q +import hashlib +import importlib.util +import itertools +import json +from pathlib import Path +import sys + +if sys.flags.optimize: + raise RuntimeError('Retained arithmetic assertions must stay enabled; do not use Python -O') + +HERE = Path(__file__).resolve().parent +ROOT = HERE.parents[2] +ENGINE = 'research/complex-k492-owner-repair/vendor/multicold/engines/' +PINS = {'research/complex-k492-owner-repair/vendor/multicold/engines/moment.py': '81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482', 'research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py': 'aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098', 'research/k8-joint-entrances/PLAN.json.gz': 'e963ed64b9970858902b9388bcf1c5f9cc704859ad021ce8bda465a4dcef8310'} +WIDTHS = (4, 5, 7, 8, 9) +PRICES = (-1, -20, -8, -2, 4) +CAPACITIES = {8: (672, 2), 16: (448, 4), 32: (448, 8), 48: (448, -13)} +INVENTORY = {4: 44, 5: 44, 7: 38, 8: 114, 9: 240} + + +def need(ok, message): + if not ok: + raise ValueError(message) + + +def load(relative, name): + spec = importlib.util.spec_from_file_location(name, ROOT/relative) + obj = importlib.util.module_from_spec(spec) + spec.loader.exec_module(obj) + return obj + + +def dual_tables(): + """Cartesian product enumeration and independently programmed recurrence.""" + upper, count = {}, 0 + for cap, (_, bonus) in CAPACITIES.items(): + for vector in itertools.product(*(range(cap//w+1) for w in WIDTHS)): + used = sum(w*n for w, n in zip(WIDTHS, vector)) + if used > cap: + continue + count += 1 + r = cap-used + value = bonus+sum(p*n for p, n in zip(PRICES, vector)) + upper[r] = max(upper.get(r, -10**6), value) + alt = {} + for cap, (_, bonus) in CAPACITIES.items(): + scores = [None]*(cap+1) + scores[0] = 0 + for fill in range(cap+1): + if scores[fill] is None: + continue + for width, price in zip(WIDTHS, PRICES): + nxt = fill+width + if nxt <= cap: + proposal = scores[fill]+price + if scores[nxt] is None or proposal > scores[nxt]: + scores[nxt] = proposal + for fill, value in enumerate(scores): + if value is not None: + alt[cap-fill] = max(alt.get(cap-fill, -10**6), value+bonus) + need(upper == alt and count == 1163, 'two independently structured dual enumerations') + return upper, count + + +def phi_pair(engine, kind, r, z): + if kind == 'mercator': + a, b = engine.logarithm(Q(73, r)) + a, b = engine.exponential(z*a, z*b) + else: + a, b = engine.log_bounds(Q(73, r)) + a, b = engine.exp_bounds(z*a)[0], engine.exp_bounds(z*b)[1] + return r*a, r*b + + +def ratio_certificate(engine, kind, upper, z): + phi = {r: phi_pair(engine, kind, r, z) for r in upper if r} + cost = {r: (48*lo-r*phi[48][1], 48*hi-r*phi[48][0]) + for r, (lo, hi) in phi.items() if r < 48} + credit = {r: 48*upper[r]+13*r for r in cost} + need(credit[1] == 925, 'rank-one credit') + need(all(a > 0 for a, b in cost.values()), 'positive non48 costs') + # c(r)-v(r)*c(1)/925 > 0 at every r != 1, so a single + # multiplier gives a supporting inequality for every count vector. + margins = {} + for r, (lo, hi) in cost.items(): + if r == 1: + continue + c = credit[r] + rhs = c*cost[1][1 if c >= 0 else 0]/925 + margins[r] = lo-rhs + need(margins[r] > 0, 'rank-one strictly optimal cost/credit ratio: '+str(r)) + return dict(credit=credit, multiplier_interval=[str(cost[1][0]/925), str(cost[1][1]/925)], + strict_margin_by_rank={r: str(x) for r, x in margins.items()}, + minimum_strict_margin=str(min(margins.values()))) + + +def main(out): + for relative, expected in PINS.items(): + need(hashlib.sha256((ROOT/relative).read_bytes()).hexdigest() == expected, 'source drift: '+relative) + M = load(ENGINE+'moment.py', 'retained_mercator') + B = load(ENGINE+'base_two_moment.py', 'retained_atanh') + plan = json.loads(gzip.decompress((ROOT/'research/k8-joint-entrances/PLAN.json.gz').read_bytes())) + provider = plan['provider_registry']['gauge44'] + local = {int(r): n for r, n in provider['actual_paid_profile'].items()} + need(Counter(provider['widths']) == INVENTORY, 'fixed helper inventory') + actual_caps = Counter(v[0] for v in plan['windows'].values()) + need({c: n*112//plan['T'] for c, n in actual_caps.items()} == + {c: n for c, (n, _) in CAPACITIES.items()}, 'fixed bin inventory per replica') + upper, vectors = dual_tables() + mass = sum(c*n for c, (n, _) in CAPACITIES.items())-9*sum(r*n for r, n in INVENTORY.items()) + signed = sum(n*p for n, p in CAPACITIES.values())+9*sum(INVENTORY[r]*p for r, p in zip(WIDTHS, PRICES)) + need((mass, signed, upper[0], upper[48]) == (14778, -3568, 0, -13), 'fixed-family coefficients') + credit = 48*signed+13*mass + need(credit == 20850 and Q(credit, 925) == Q(834, 37), 'dual credit demand') + T = 37 + idle = {1: 834, 48: 11374} + need(sum(r*n for r, n in idle.items()) == mass*T, 'formal relaxed idle mass') + need(sum(upper[r]*n for r, n in idle.items()) == signed*T, 'dual equality') + profile = Counter({r: 9*T*n for r, n in local.items()}) + profile.update(idle) + live = 896*T + need(73*live-sum(r*n for r, n in profile.items()) == 320*T, 'rank deficit') + root = M.certify(profile, 73, live, False) + lo, hi = Q(root['lower']), Q(root['upper']) + signs = {} + for name, z in [('lower', lo), ('upper', hi)]: + first = M.moment(profile, 73, live, z) + second = B.moment(73, live, list(profile.items()), z) + need(first[1] < 1 and second[1] < 1 if name == 'lower' else first[0] > 1 and second[0] > 1, + 'two exact moment signs at '+name) + signs[name] = dict(endpoint=str(z), mercator=[str(x-1) for x in first], + atanh=[str(x-1) for x in second]) + certs = {kind: ratio_certificate(engine, kind, upper, hi) + for kind, engine in [('mercator', M), ('atanh', B)]} + # The retained outer recipe always has a < b and kappa < a/(1+a). + # Therefore b < hi implies kappa < hi/(1+hi), without assuming that + # this formal relaxed profile can pass any finite or physical admission. + ceiling = hi/(1+hi) + ticks = ceiling*10**18 + grid = Q((ticks.numerator-1)//ticks.denominator, 10**18) + result = dict(status='PASS_ALL_T_K8_JOINT_ENTRANCES_SIGNED_DUAL_UPPER_RELAXATION', + scope='All positive integer replica counts, fixed k8-joint-entrances local word and widths, nine calls and 896 live wires per replica, whole helpers and fixed 8/16/32/48 bin inventory. Geometry, time windows, finite invoice and physical realization are relaxed. This does not construct a supplier at the upper bound and does not cover different circuits, split helpers, banks or recursion geometries.', + dual_bin_vectors=vectors, upper=upper, mass_per_replica=mass, + signed_price_per_replica=signed, credit_per_replica=credit, + normalized_idle={'1': '834/37', '48': '11374/37'}, + equality_requires_replica_count_multiple_of=37, + formal_profile=dict(replicas=T, idle=idle, profile=dict(sorted(profile.items())), + live=live, deficit=320*T), + root=root, two_engine_signs=signs, supporting_inequalities=certs, + kappa_strict_rational_upper=str(ceiling), kappa_strict_upper_decimal=M.decimal(ceiling), + all_T_grid_upper=str(grid), all_T_grid_upper_decimal=M.decimal(grid), + source_sha256=PINS) + need(not out.exists(), 'output preservation: choose a new file') + out.write_text(json.dumps(result, indent=2)+'\n') + print(result['status'], result['all_T_grid_upper_decimal']) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--out', type=Path, required=True) + main(parser.parse_args().out) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/verify.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/verify.py new file mode 100644 index 0000000000..0da87fc229 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-joint-entrances/verify.py @@ -0,0 +1,50 @@ +"""Rebuild and admit the frozen joint-entrance local-interface witness.""" +import argparse,gzip,hashlib,importlib.util,json,os,shutil,subprocess,sys,time +from fractions import Fraction as Q +from pathlib import Path +P=Path(__file__).resolve().parent;ROOT=P.parents[1];PRE=ROOT/'research/k8-eight-ends-t16';WORDPRE=ROOT/'research/k8-eight-ends' +def rd(p): + p=Path(p);return json.loads(gzip.decompress(p.read_bytes()) if p.suffix=='.gz' else p.read_bytes()) +def sha(p):return hashlib.sha256(Path(p).read_bytes()).hexdigest() +def payload(p):return hashlib.sha256(gzip.decompress(Path(p).read_bytes())).hexdigest() +def dump(p,x):Path(p).write_text(json.dumps(x,indent=2)+'\n') +def main(): + assert __debug__ + ap=argparse.ArgumentParser(description=__doc__);ap.add_argument('--base',type=Path);ap.add_argument('--work',type=Path,required=True);ap.add_argument('--parent-from',type=Path);ap.add_argument('--native-from',type=Path);a=ap.parse_args() + work=a.work.resolve();assert not work.exists() and not work.is_relative_to(ROOT) + for rel,h in rd(P/'MANIFEST.json').items():assert sha(P/rel)==h,rel + for rel,h in rd(P/'SOURCE-PINS.json').items():assert sha(ROOT/rel)==h,rel + env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0') + for k in ('PYTHONOPTIMIZE','WITNESS_DISCOVER','WITNESS_RECORD','WITNESS_SPEC'):env.pop(k,None) + work.mkdir(parents=True);steps=[] + def run(name,script,*args): + t=time.monotonic();log=work/(name+'.log') + with log.open('w') as f:r=subprocess.run([sys.executable,'-B',str(script),*map(str,args)],cwd=ROOT,env=env,stdout=f,stderr=subprocess.STDOUT) + steps.append(dict(step=name,exit_code=r.returncode,seconds=time.monotonic()-t,log_sha256=sha(log)));dump(work/'STEPS.json',steps);assert r.returncode==0,(name,log.read_text()[-6000:]);print('PASS',name,flush=True) + if a.parent_from:parent=a.parent_from.resolve() + else: + assert a.base,'--base is required to rebuild the preceding geometry' + parent=work/'parent';run('parent',PRE/'verify.py','--base',a.base.resolve(),'--work',parent) + assert rd(parent/'RESULT.json')['status']=='PASS_K8_EIGHT_ENDS_T16_COMPLETE_ADMISSION' + for rel,h in rd(P/'PARENT-PINS.json').items():assert sha(parent/rel)==h,rel + raw=work/'FULL-WORD.json.gz';run('build',P/'build_word.py','--out',raw) + assert payload(raw)==payload(P/'FULL-WORD.json.gz')==rd(P/'RECIPE.json')['output_content_sha256'] + run('independent-local',ROOT/'research/gauge44-slots/independent/audit_local.py','--word',raw,'--main',ROOT,'--output',work/'AUDIT-LOCAL.json') + run('entrance-controls',P/'controls.py','--out',work/'ENTRANCE-CONTROLS.json');assert len(rd(work/'ENTRANCE-CONTROLS.json')['rejected'])==27 + if a.native_from:native=a.native_from.resolve() + else: + native=work/'native';run('native',WORDPRE/'replay_native.py',raw,native) + ns=rd(native/'STEPS.json');assert [x['step'] for x in ns]==['native','ledgers','local-replay','wrappers','phases'] and all(x['exit_code']==0 for x in ns) + local=native/'local';assert payload(local/'FULL-WORD.json.gz')==payload(raw) + spec=importlib.util.spec_from_file_location('identities',PRE/'vendor/pr1074/code/generated_identity.py');ident=importlib.util.module_from_spec(spec);spec.loader.exec_module(ident) + assert ident.artifact_identities(local)==rd(P/'PLAN.json.gz')['provider_registry']['gauge44']['artifact_semantic_sha256'] + data=work/'data';data.mkdir();(data/'PLAN.json').write_bytes(gzip.decompress((P/'PLAN.json.gz').read_bytes())) + for name in ('OWNERS.json.gz','SPEC.json'):shutil.copy2(P/name,data/name) + run('strict-global',ROOT/'research/k8-three-demotions/run_global.py','--local',local,'--parent-work',parent,'--data',data,'--work',work/'global') + run('all-replica-bound',P/'independent/all_t_bound.py','--out',work/'ALL-T-BOUND.json') + assert rd(work/'ALL-T-BOUND.json')==rd(P/'evidence/ALL-T-BOUND.json') + result=rd(work/'global/REPLAY.json');claim=rd(P/'CLAIM.json');assert result['kappa_decimal']==claim['kappa_decimal'] + assert Q(result['kappa'])>Q(rd(ROOT/'research/k8-three-demotions/evidence/ALL-T-BOUND.json')['kappa_strict_rational_upper']) + receipt=dict(status='PASS_JOINT_ENTRANCES_COMPLETE_ADMISSION',kappa=result['kappa'],kappa_decimal=result['kappa_decimal'],complex_lower=result['complex_lower'],bit_lower=result['bit_lower'],controls=result['controls'],entrance_controls=27,outer_strict_inequalities=47,native_steps=ns,native_semantic_artifacts=ident.artifact_identities(local),native_reuse=bool(a.native_from),parent_reuse=bool(a.parent_from),previous_kappa=claim['previous_kappa'],scope=claim['scope'],steps=steps) + dump(work/'RESULT.json',receipt);print(receipt['status'],receipt['kappa_decimal']) +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/CLAIM.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/CLAIM.json new file mode 100644 index 0000000000..a49532ec86 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/CLAIM.json @@ -0,0 +1,29 @@ +{ + "status": "PASS_THREE_DEMOTIONS_COMPLETE_ADMISSION", + "kappa": "1675121647789207/1000000000000000000", + "kappa_decimal": "0.001675121647789207", + "previous_kappa": "0.001674622497877364", + "gain_percent": "0.029806712406867100374241200", + "complex_lower": "13423459109255787537/8000000000000000000000", + "bit_lower": "1733427039589844234749/1000000000000000000000000", + "global_profile": { + "1": 341928, + "2": 71136, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "local_profile": { + "1": 2372, + "2": 494, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "scope": "Conditional native exact-complex witness with twelve helper entrances lowered from dimension five to four, refitted local recursive frames, whole-helper T16 hosting, and the unchanged PR589 bit supplier. Scalar operations and their order are unchanged. PR559 exact-cover recurrence correction, bit bad-residue surcharge, and H1-H5 retained. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification. The earlier fixed-local-interface ceiling does not cover this changed word.", + "fixed_family_grid_upper": "0.001675129371412064" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/FULL-WORD.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/FULL-WORD.json.gz new file mode 100644 index 0000000000..25a6773a4b Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/FULL-WORD.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/MANIFEST.json new file mode 100644 index 0000000000..642d1a4979 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/MANIFEST.json @@ -0,0 +1,47 @@ +{ + "CLAIM.json": "5d2d7f3a0c57373942d588303f9736db01d4dc69fc8b35b6e2945b10627905db", + "FULL-WORD.json.gz": "a8a1362e1cf3bb4d5a43e077bbc842d140eb8a4420c16673757c486ca001f1a8", + "NOTICE.md": "a0fe85fb2207f0e6831a96deaeefb65afa379c1377a29f0b586f1db4bb4b2137", + "OWNERS.json.gz": "93cb570c9496725ed5204d9f890ddf337ed8c3fb1a1b980de3e905f65e71b2dd", + "PARENT-PINS.json": "ae43954e4cee8951e9bff82efd728fe18e12f44e62ccc4d0177e31108ec6c5f0", + "PLAN.json.gz": "c56ac6b25f119107c8470e01582a8be3d78421553b684c113582c6078f998e36", + "PROOF.md": "072c10a2380c9434758f59f410cebeee620efa355e434a3f3a341896a7650514", + "README.md": "6d8ea5173ee09fb104c28780812f9f4a9d0e30fb85f09f567e2d9d63f4378381", + "RECIPE.json": "0417fdf34130a389aad1ab50c7fd1a9bdf825fd6722ec7db408f65811fd7a363", + "SEARCH.json": "728e09e77969828cdd1ff187476c6c4d668190535f8b77efc4013f6565dcf9c0", + "SOURCE-PINS.json": "d23f4c3e6c68a1090b2d9fb92fbbc075a2c125b60fcae1fba7091c1778d893c0", + "SPEC.json": "448141cbeeb6747f742360b72b5561c3c398decf0a308a559f4c0acd93db800c", + "build_word.py": "5264e1c0c25f9414a0b24863e1e98dc67bb08a4fdb94a7ca2aa27c337ec634e6", + "controls.py": "0514ba8c1854ef49abad5d0c8cf436f68d1146de89fc3dca86ed9392bc48c62c", + "discovery/COMBINED-DEMOTIONS.json.gz": "d90e835aca3df28ab2b995d068e8fba8d73b861e1a740c8768b5719720e79ded", + "discovery/DEMOTION-4.json.gz": "663ec933b38c01543d341ec92e2258c322a1fa121fe9b58d9e9f4e997f03605b", + "discovery/DEMOTION-5.json.gz": "064d397af864a9289c557022b52b4c00fcf036c2bc028efb9ac1b13121a935c9", + "discovery/OWNER-SEARCH.json.gz": "cba4ed8516f54abecd679111044c7c62759ba73289aad0695daf386815036b71", + "discovery/OWNER-SEARCH.log.gz": "5aac089fd94aedf417278e06a1585394e1a1da5cbd851d5d861a55cc1313a404", + "discovery/PRODUCER-ELIMINATION.json.gz": "697210c6b26c506be9f1226e1ca19f12fd6f5ced67e2591cb3d9d22fff6c698e", + "discovery/SCHEDULED-ELIMINATION.json.gz": "d84ad020fdb8d4a1209e4a872485bfd03998e60d6afdd66977b6263ea1e50da4", + "discovery/demote_entrances.py": "9ef34ab2969ebd796fd5295c8d336d6731420db9c5a8e33c76a851ebd0c885c0", + "discovery/eliminate_helpers.py": "6fd840a849e85eb9e2de857b4e3f8591fe0b11ab5bcf5059a0868768e711b065", + "discovery/pack_demotions.py": "b831d8a76eff7f342329f7025848207d48bd2031054f4664fd39415a94ec57c8", + "discovery/repair_pack.py": "08d23d527a5ca8269cab478ae372ea754406ae1efe329d427d6d720da4b0a32b", + "discovery/schedule_elimination.py": "9a4cde722068902eda94c8896994345542e9586491daf2a48804b3882e9e46b4", + "discovery/search_columns.py": "edbb093207e21ee4301382f00198c6eccb197949068e96c76e46a2e61dc90f82", + "evidence/ADMISSION-CONTROLS.json": "8d4d311c8a598045aca089f0962d9606abf1749a5acc80bd4221b79fe055534a", + "evidence/ALL-T-BOUND.json": "d4fee201f6863bdb3acd26948f45087c308e36e3db2db713d67e6ea98f5de92a", + "evidence/ASSEMBLY.json": "e2f32c70ce02ca072f91c5df33db8f27a0d084d83f220d64ac746d4b8d68fd03", + "evidence/ASYNC-AUDIT.json": "502132cf61ec75f772c335440778d5e682a117bed6f282ecbb63e87b4c92da1a", + "evidence/AUDIT-LOCAL.json": "9f171f1dd3e6077b877717bead4c48bceba7b1b2122fe3a35e1f84d2bc2844b2", + "evidence/BIT-SUPPLIER-CONTROLS.json": "29a0fbffa42ab44a53d9b1b70749d385e7d22d23e163269b4db580078a313992", + "evidence/DEMOTION-CONTROLS.json": "1f79ea173ae9c199e1130c4c47b1e8535aa1c59b265d774c26e9ac8adb4906f3", + "evidence/INDEPENDENT-T16.json": "76bef93797c561eb2e343e91bd825ea2463b0e1bb29961e7c1ffb6436b303d59", + "evidence/NATIVE-STEPS.json": "da092696ceef4cc48d0dad324528ca46e18ee2e892e9a1d669f626cd51bd13c2", + "evidence/OWNERS-AND-PROFILE.json": "edf9f49f4aa302e2cdf8197fdae43efc648efd511810b9c7a1820cfa7cab2914", + "evidence/PREFIX-AND-INVOICE.json": "92a64fa8f6f6109ad7fec10646690f012a3836e83c4920fd271a1278a7981068", + "evidence/REPLAY-LOGS.json.gz": "87306aff46a5026c6f62425ed6f45265d96cfdbc12f61eb47bbd6d98db9772c6", + "evidence/REPLAY.json": "2c9204175b51a9a2fdf4ee99ae85ba6a30c9fd848489968637d192de274e91f1", + "evidence/RESULT.json": "878e1c99b02cb0b53cd12c1cc266fe9399adb56169d85bf7bc258f74ecc2dc5b", + "evidence/STAGES.json": "c2c9c1d9d121f01a572e42c606c18b1e76911a07dd999deb102c14e7a518897b", + "independent/all_t_bound.py": "2f7f23424c8bf470161a116cb0be7ef024ca685b1b7e1fe88dcec90186c7f2fd", + "run_global.py": "04ead24a91d11234e04f79753e3c2d435d9e4dd96c7c3fe21a0652921af85c83", + "verify.py": "8a15ed2a8bb102f0edbe2d43e31e187c677b569072d9517e81682892a9883ceb" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/NOTICE.md new file mode 100644 index 0000000000..9f759cfade --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/NOTICE.md @@ -0,0 +1,7 @@ +Apache-2.0. Prepared for Thomas DiFiore with OpenAI Codex assistance. + +* `../k8-eight-ends` and `../k8-eight-ends-t16` supply the unchanged scalar word, endpoint construction, initial owner map, and pinned T16 controller. Their notices retain the PR1018, PR1030, PR864, PR858, PR870, PR1074, and earlier E8, k8, frame, owner, and bit-supplier credits. +* PR1111 by seslly / shipstuff, commit `381831ea554ea983e16224dabed8921b7d0ffdbc`, supplied the entrance-demotion lead: reversing a promotion can profitably trade wider helpers for a different recursive profile. Its README/PR claim was consulted; no PR1111 code or owner payload is consumed. This package instead screens all codimension-one subspaces of the six current dimension-five groups, composes three groups on the eight-endpoint word, and constructs its own complete T16 owner assignment. The older promotion mechanism is credited to PR664 and its descendants. +* The frame refit uses the preceding adaptation of PR864's complete frame model (navinor / Claude). Solver output is nomination data; independent native replay and unchanged global engines decide admission. +* The coordinated pattern-pricing search is retained from `../k8-eight-ends-t16`. Earlier owner algorithms and signed duals are credited in its notice. The bound adapts jon314159's PR942 certificate and chafreaky's PR795/890 prices, using the existing two rational arithmetic engines. +* The fresh native and global checks retain every inherited analytic, compiler, boundary, common-label, hosting, precision/tape, and bit H1–H5 assumption. This package does not claim original authorship of those constructions or an unconditional theorem. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/OWNERS.json.gz new file mode 100644 index 0000000000..7bd0fecafe Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/PARENT-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/PARENT-PINS.json new file mode 100644 index 0000000000..bd7ca6bbf5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/PARENT-PINS.json @@ -0,0 +1,18 @@ +{ + "t16/parent16/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "t16/parent16/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "t16/parent16/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "t16/parent16/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "t16/parent16/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "t16/parent16/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "t16/parent16/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "t16/parent16/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "t16/parent16/complex-global/base/split-centres/GLOBAL-TEMPLATE.json.gz": "a179dad87651aba340a5a8ddbcd86a8e757cad87b8a1f8bad48106fbecd38518", + "t16/parent16/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "t16/parent16/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "t16/parent16/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "t16/parent16/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "t16/global8/base/split-centres/GLOBAL-TEMPLATE.json.gz": "ab8448de2036a23d9b55a196a8846512dc24fdf09855c1e0f0caa5b7a6965f7b", + "t16/global8/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "t16/global8/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/PLAN.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/PLAN.json.gz new file mode 100644 index 0000000000..864cdd212f Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/PLAN.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/PROOF.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/PROOF.md new file mode 100644 index 0000000000..2cf325e8d5 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/PROOF.md @@ -0,0 +1,23 @@ +# Changed local interfaces and complete admission + +The input is the frozen eight-endpoint R480 k8 word. The changed helper IDs are 603, 605, 606, 607; 611, 613, 614, 615; and 619, 621, 622, 623. Their new entrance spaces have dimension four and are contained in their old dimension-five spaces. Their ends are unchanged and full, so each occupied helper width increases from four to five. The new width inventory is `{4:44, 5:44, 7:38, 8:114, 9:240}` and the total width is 3,734. + +All scalar coefficients, scalar instruction order, centre carriers, target interfaces, and cleanup instructions remain unchanged. The frozen recipe specifies every changed frame annotation. Its output paid profile is `{1:2372, 2:494, 3:412, 4:130, 5:82, 8:8}`, with local rank mass 5,590. Relative to the input, each of the three groups changes the local profile by `−8 H1 + 8 H2 + 4 H3 − 4 H4` and adds four units of occupied width. These are paid recursive-interface changes, not merely different owner labels. + +The independent exact audit reconstructs the full linear maps in both orientations on all 704 arbitrary columns. It checks zero entrance response, exclusion of residual helpers from pre-wrappers, monotone frame chains, centres, and the low-end inverse-row and dirt-column cones. The fresh native replay separately reconstructs local programs and adapters and verifies every directed phase edge. The 27 semantic mutants cover all twelve entrance reversals, all twelve first-use frames, false profile/inventory claims, and an incorrect scalar target contribution. + +The global geometry is the preceding sixteen-replica construction. Every consumed parent file is pinned. The new driver checks K, T, M, L, live wires, deficit, call order, actual windows, pair/side labels, replica lift, dispatch, ports, and centres against the preceding package. It then invokes the unchanged provider binder, emitter, controller audit, finite invoice, rational assembly, mutation suites, and independent T16 checker. In particular, the independent checker reconstructs the actual time windows from the parent events and validates every new helper width and placement. + +The frozen global profile is + +`{1:341928, 2:71136, 3:59328, 4:18720, 5:11808, 8:1152, 24:1, 48:4918}`. + +It is 144 copies of the new local profile plus idle `{1:360, 24:1, 48:4918}`. Its rank mass is 1,041,408 and its deficit is `73 × 14336 − 1041408 = 5120`. The unchanged exact engines certify the displayed κ with the unchanged PR589 bit supplier. All 69 assembly, 12 bit-supplier, 15 controller, and six independent T16 negative controls reject, and all 47 outer inequalities are strict. + +## The new fixed-family ceiling + +The previous ceiling fixes the old local profile and helper inventory, so it does not apply to this change. The adapted signed-dual proof keeps the same owner capacities and signed prices but uses the new inventory. Per replica, idle rank mass is 14,778, signed price is −3,568, and required credit is `48 × (−3568) + 13 × 14778 = 20850`. + +The formal equality profile has `I1/T = 834/37` and `I48/T = 11374/37`. Two independent enumerations check all 1,163 bin patterns. Two exact rational arithmetic engines certify the root endpoint signs and the strict supporting cost-to-credit inequalities. The resulting 18-decimal-grid ceiling is 0.001675129371412064. It is an upper relaxation over all positive integer replica counts with this fixed word and inventory, not a physical T37 construction. Different words, mixtures of providers, split helpers, banks, and different recursion geometries remain outside its scope. + +The upstream receipt formatter retains historical U8/PR799 prose labels. The actual supplier is bound by the raw-word hash, complete semantic artifact identities, frozen PLAN, and this package's claim. All inherited conditional assumptions remain explicit in `CLAIM.json`. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/README.md new file mode 100644 index 0000000000..3666a40d13 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/README.md @@ -0,0 +1,33 @@ +# Three changed local entrance groups on k8 + +The frozen conditional value is **κ = 0.001675121647789207**, **0.029807%** above the preceding T16 value 0.001674622497877364. It exceeds that word's all-replica packing ceiling, 0.001674630216885732, because it changes the local recursive interfaces. + +Twelve helpers, in groups headed by 603, 611, and 619, now enter four-dimensional subspaces of their former five-dimensional entrances. Their occupied widths increase from four to five. Refitting the local frames changes the paid profile to `{1:2372, 2:494, 3:412, 4:130, 5:82, 8:8}`. The scalar operations and their order are unchanged. The literal recipe changes 12 entrances, 61 A-frame annotations, 109 B-frame annotations, and two early-cleanup frames. + +The local word passed fresh exact forward and dual replay of all 704 columns, all 2,904 native phase checks, and 27 new semantic controls. The frozen T16 assignment hosts 69,120 whole helpers in 144 complete calls. Its idle profile is `{1:360, 24:1, 48:4918}`. Exact global admission checks the actual windows, frames, charts, occupancies, finite invoice, unchanged bit supplier, and all 47 strict outer inequalities. + +This is a conditional finite improvement. The inherited all-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape, analytic-transfer, and bit H1–H5 assumptions remain. It is not an unconditional multiplication theorem or a new scalar circuit topology. + +## Reproduce + +Python 3.11+, a C++ compiler, and Boost headers are needed for a fresh native replay. No optimization solver runs during verification. The output directory must be new and outside the repository. + +```sh +python -B research/k8-three-demotions/verify.py \ + --base "$BASE" \ + --work /tmp/k8-three-demotions-fresh +``` + +`BASE` is the original R480 k8 + seven-slot raw word identified in `../k8-eight-ends/RECIPE.json`. This command rebuilds the preceding T16 witness, the changed word, its native artifacts, and strict global admission. Set `CPLUS_INCLUDE_PATH` for Boost if needed. + +To reuse explicitly supplied completed replays, use `--parent-from /path/to/k8-eight-ends-t16-replay` and `--native-from /path/to/new-native-replay`; `--base` is then unnecessary. The former must be a completed `../k8-eight-ends-t16/verify.py` run. The latter must contain the five completed native stages for this exact new word. The verifier checks the word and semantic artifact identities, every consumed parent file, and reruns the independent local audit, semantic controls, and complete global admission. + +All admission engines are byte-identical to the PR1074 sources already pinned in `../k8-eight-ends-t16`. The new driver binds the changed local provider to the same pinned T16 geometry and checks every original geometry field. The unchanged independent T16 checker reconstructs actual source-event windows and recounts the new word's recursive profile. No admission condition is removed. + +## Search and limitations + +The search tested 306 codimension-one entrance subspaces: 186 reductions from dimension five to four and 120 from four to three. The latter performed worse in the floating packing screen. Individual favorable five-to-four reductions compose profitably through three groups; adding all six performs worse. Only the frozen three-group composition is fully admitted here. + +Producer-side elimination was also attempted on 19 target-only helpers. Two fall outside the B-only rewrite's preconditions. The other 17 failed frame feasibility, including a search of 61,674 constant-value delivery placements/orderings. These are scoped negative results, not a general lower bound on helper count. + +The new word has its own exact fixed-family all-replica grid upper bound, **0.001675129371412064**. That bound does not cover mixtures of different local words or further interface changes. Such changes remain a route to additional gains. See `SEARCH.json`, `PROOF.md`, and `NOTICE.md`. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/RECIPE.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/RECIPE.json new file mode 100644 index 0000000000..ff2ad80f71 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/RECIPE.json @@ -0,0 +1,2985 @@ +{ + "input_content_sha256": "f43271fcabcc9ebb3b9540610574ba463bba4440e7a868bd92e8ea348081d3ec", + "output_content_sha256": "b0b9ffd88347cc8c8662fab3d28f65a50bca3d7e98a1337fbaf8c898303201db", + "start_extra": [ + [ + "603", + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + "605", + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + "606", + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + "607", + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + "611", + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + "613", + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + "614", + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + "615", + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + "619", + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + "621", + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + "622", + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + "623", + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ] + ], + "A": [ + [ + 616, + [], + [ + 148 + ] + ], + [ + 758, + [], + [ + 13 + ] + ], + [ + 900, + [], + [ + 341 + ] + ], + [ + 1042, + [], + [ + 453 + ] + ], + [ + 1184, + [], + [ + 155 + ] + ], + [ + 1266, + [ + 472 + ], + [ + 472, + 6 + ] + ], + [ + 1270, + [ + 56 + ], + [ + 56, + 6 + ] + ], + [ + 1274, + [ + 62 + ], + [ + 56, + 6 + ] + ], + [ + 1278, + [ + 478 + ], + [ + 472, + 6 + ] + ], + [ + 1420, + [ + 296 + ], + [ + 296, + 6 + ] + ], + [ + 1424, + [ + 168 + ], + [ + 168, + 6 + ] + ], + [ + 1428, + [ + 174 + ], + [ + 168, + 6 + ] + ], + [ + 1432, + [ + 302 + ], + [ + 296, + 6 + ] + ], + [ + 1574, + [ + 104 + ], + [ + 104, + 6 + ] + ], + [ + 1578, + [ + 496 + ], + [ + 496, + 6 + ] + ], + [ + 1582, + [ + 502 + ], + [ + 496, + 6 + ] + ], + [ + 1586, + [ + 110 + ], + [ + 104, + 6 + ] + ], + [ + 1728, + [ + 484 + ], + [ + 484, + 24 + ] + ], + [ + 1732, + [ + 122 + ], + [ + 98, + 24 + ] + ], + [ + 1736, + [ + 98 + ], + [ + 98, + 24 + ] + ], + [ + 1740, + [ + 508 + ], + [ + 484, + 24 + ] + ], + [ + 1882, + [ + 186 + ], + [ + 162, + 24 + ] + ], + [ + 1886, + [ + 290 + ], + [ + 290, + 24 + ] + ], + [ + 1890, + [ + 314 + ], + [ + 290, + 24 + ] + ], + [ + 1894, + [ + 162 + ], + [ + 162, + 24 + ] + ], + [ + 2036, + [ + 44 + ], + [ + 44, + 30 + ] + ], + [ + 2040, + [ + 436 + ], + [ + 426, + 30 + ] + ], + [ + 2044, + [ + 426 + ], + [ + 426, + 30 + ] + ], + [ + 2048, + [ + 50 + ], + [ + 44, + 30 + ] + ], + [ + 2190, + [ + 372 + ], + [ + 362, + 30 + ] + ], + [ + 2194, + [ + 234 + ], + [ + 234, + 30 + ] + ], + [ + 2198, + [ + 244 + ], + [ + 234, + 30 + ] + ], + [ + 2202, + [ + 362 + ], + [ + 362, + 30 + ] + ], + [ + 2344, + [ + 491 + ], + [ + 491, + 30 + ] + ], + [ + 2348, + [ + 115 + ], + [ + 109, + 30 + ] + ], + [ + 2352, + [ + 109 + ], + [ + 109, + 30 + ] + ], + [ + 2356, + [ + 501 + ], + [ + 491, + 30 + ] + ], + [ + 2498, + [ + 179 + ], + [ + 173, + 30 + ] + ], + [ + 2502, + [ + 301 + ], + [ + 301, + 30 + ] + ], + [ + 2506, + [ + 307 + ], + [ + 301, + 30 + ] + ], + [ + 2510, + [ + 173 + ], + [ + 173, + 30 + ] + ], + [ + 2652, + [ + 37 + ], + [ + 37, + 24 + ] + ], + [ + 2656, + [ + 443 + ], + [ + 419, + 24 + ] + ], + [ + 2660, + [ + 419 + ], + [ + 419, + 24 + ] + ], + [ + 2664, + [ + 61 + ], + [ + 37, + 24 + ] + ], + [ + 2806, + [ + 379 + ], + [ + 355, + 24 + ] + ], + [ + 2810, + [ + 227 + ], + [ + 227, + 24 + ] + ], + [ + 2814, + [ + 251 + ], + [ + 227, + 24 + ] + ], + [ + 2818, + [ + 355 + ], + [ + 355, + 24 + ] + ], + [ + 2960, + [ + 233 + ], + [ + 233, + 6 + ] + ], + [ + 2964, + [ + 361 + ], + [ + 361, + 6 + ] + ], + [ + 2968, + [ + 367 + ], + [ + 361, + 6 + ] + ], + [ + 2972, + [ + 239 + ], + [ + 233, + 6 + ] + ], + [ + 3114, + [ + 425 + ], + [ + 425, + 6 + ] + ], + [ + 3118, + [ + 49 + ], + [ + 49, + 6 + ] + ], + [ + 3122, + [ + 55 + ], + [ + 49, + 6 + ] + ], + [ + 3126, + [ + 431 + ], + [ + 425, + 6 + ] + ], + [ + 3268, + [ + 313 + ], + [ + 313, + 6 + ] + ], + [ + 3272, + [ + 161 + ], + [ + 161, + 6 + ] + ], + [ + 3276, + [ + 167 + ], + [ + 161, + 6 + ] + ], + [ + 3280, + [ + 319 + ], + [ + 313, + 6 + ] + ] + ], + "B": [ + [ + 396, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 397, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 398, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 399, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 400, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 401, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 402, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 403, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 404, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 405, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 406, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 407, + [ + 408, + 80, + 40, + 6, + 1 + ], + [ + 80, + 40, + 6, + 1 + ] + ], + [ + 408, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 409, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 410, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 411, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 412, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 413, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 414, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 415, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 416, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 417, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 418, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 419, + [ + 272, + 144, + 96, + 6, + 1 + ], + [ + 144, + 96, + 6, + 1 + ] + ], + [ + 444, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 445, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 446, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 447, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 448, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 449, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 450, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 451, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 452, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 453, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 454, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 455, + [ + 260, + 132, + 96, + 24, + 1 + ], + [ + 132, + 96, + 24, + 1 + ] + ], + [ + 536, + [ + 256, + 144, + 80, + 6 + ], + [ + 256, + 144, + 80, + 6, + 1 + ] + ], + [ + 537, + [ + 448, + 32, + 8, + 6 + ], + [ + 448, + 32, + 8, + 6, + 1 + ] + ], + [ + 558, + [ + 465, + 32, + 9, + 6 + ], + [ + 449, + 32, + 16, + 9, + 6 + ] + ], + [ + 578, + [ + 296, + 185, + 80, + 6 + ], + [ + 257, + 144, + 80, + 41, + 6 + ] + ], + [ + 580, + [ + 265, + 144, + 81, + 40, + 6 + ], + [ + 265, + 193, + 40, + 6 + ] + ], + [ + 600, + [ + 313, + 169, + 104, + 6 + ], + [ + 304, + 160, + 97, + 9, + 6 + ] + ], + [ + 601, + [ + 313, + 144, + 73, + 6 + ], + [ + 273, + 144, + 73, + 40, + 6 + ] + ], + [ + 621, + [ + 289, + 209, + 8, + 6 + ], + [ + 289, + 176, + 97, + 8, + 6 + ] + ], + [ + 642, + [ + 392, + 80, + 56, + 6 + ], + [ + 392, + 80, + 56, + 6, + 1 + ] + ], + [ + 662, + [ + 280, + 216, + 49, + 6 + ], + [ + 257, + 193, + 40, + 25, + 6 + ] + ], + [ + 663, + [ + 401, + 81, + 56, + 6 + ], + [ + 392, + 72, + 33, + 25, + 6 + ] + ], + [ + 683, + [ + 336, + 137, + 40, + 6 + ], + [ + 257, + 137, + 81, + 40, + 6 + ] + ], + [ + 684, + [ + 313, + 168, + 105, + 6 + ], + [ + 297, + 168, + 105, + 16, + 6 + ] + ], + [ + 1232, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ], + [ + 256, + 128, + 64, + 34, + 18, + 10, + 6, + 1 + ] + ], + [ + 1235, + [ + 256, + 128, + 64, + 16, + 8, + 6, + 1 + ], + [ + 256, + 128, + 64, + 34, + 16, + 8, + 6, + 1 + ] + ], + [ + 1238, + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ], + [ + 258, + 130, + 66, + 32, + 18, + 10, + 6, + 1 + ] + ], + [ + 1241, + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ], + [ + 258, + 130, + 66, + 32, + 16, + 8, + 6, + 1 + ] + ], + [ + 1244, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ], + [ + 256, + 130, + 64, + 34, + 16, + 10, + 6, + 1 + ] + ], + [ + 1247, + [ + 256, + 144, + 80, + 32, + 8, + 6, + 1 + ], + [ + 256, + 130, + 66, + 32, + 18, + 8, + 6, + 1 + ] + ], + [ + 1250, + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ], + [ + 258, + 128, + 64, + 34, + 16, + 10, + 6, + 1 + ] + ], + [ + 1253, + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ], + [ + 258, + 128, + 66, + 32, + 18, + 8, + 6, + 1 + ] + ], + [ + 1256, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ], + [ + 258, + 130, + 66, + 34, + 18, + 8, + 6, + 1 + ] + ], + [ + 1259, + [ + 272, + 144, + 64, + 32, + 8, + 6, + 1 + ], + [ + 258, + 130, + 64, + 32, + 18, + 8, + 6, + 1 + ] + ], + [ + 1262, + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ], + [ + 256, + 128, + 66, + 34, + 16, + 10, + 6, + 1 + ] + ], + [ + 1265, + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ], + [ + 256, + 128, + 64, + 32, + 16, + 10, + 6, + 1 + ] + ], + [ + 1268, + [ + 256, + 128, + 66, + 34, + 24, + 4, + 1 + ], + [ + 256, + 128, + 66, + 34, + 16, + 8, + 4, + 1 + ] + ], + [ + 1271, + [ + 256, + 128, + 64, + 32, + 24, + 4, + 1 + ], + [ + 256, + 128, + 64, + 32, + 18, + 10, + 4, + 1 + ] + ], + [ + 1274, + [ + 260, + 132, + 68, + 36, + 24, + 2, + 1 + ], + [ + 260, + 132, + 68, + 36, + 20, + 12, + 2, + 1 + ] + ], + [ + 1277, + [ + 260, + 132, + 64, + 32, + 24, + 2, + 1 + ], + [ + 260, + 132, + 64, + 32, + 16, + 8, + 2, + 1 + ] + ], + [ + 1280, + [ + 258, + 128, + 64, + 34, + 24, + 4, + 1 + ], + [ + 258, + 128, + 64, + 34, + 18, + 10, + 4, + 1 + ] + ], + [ + 1283, + [ + 260, + 128, + 68, + 32, + 24, + 2, + 1 + ], + [ + 260, + 128, + 68, + 32, + 16, + 8, + 2, + 1 + ] + ], + [ + 1286, + [ + 256, + 130, + 64, + 34, + 24, + 4, + 1 + ], + [ + 256, + 130, + 64, + 34, + 16, + 8, + 4, + 1 + ] + ], + [ + 1289, + [ + 256, + 132, + 68, + 32, + 24, + 2, + 1 + ], + [ + 256, + 132, + 68, + 32, + 20, + 12, + 2, + 1 + ] + ], + [ + 1292, + [ + 262, + 134, + 64, + 38, + 20, + 10, + 1 + ], + [ + 258, + 130, + 64, + 34, + 16, + 10, + 4, + 1 + ] + ], + [ + 1295, + [ + 262, + 134, + 70, + 32, + 18, + 12, + 1 + ], + [ + 258, + 130, + 66, + 32, + 18, + 8, + 4, + 1 + ] + ], + [ + 1298, + [ + 256, + 128, + 64, + 38, + 18, + 12, + 1 + ], + [ + 256, + 128, + 64, + 34, + 18, + 8, + 4, + 1 + ] + ], + [ + 1301, + [ + 256, + 128, + 70, + 32, + 20, + 10, + 1 + ], + [ + 256, + 128, + 66, + 32, + 16, + 10, + 4, + 1 + ] + ], + [ + 1304, + [ + 256, + 134, + 70, + 38, + 20, + 10, + 1 + ], + [ + 256, + 132, + 68, + 36, + 20, + 8, + 2, + 1 + ] + ], + [ + 1307, + [ + 256, + 134, + 64, + 32, + 20, + 10, + 1 + ], + [ + 256, + 130, + 64, + 32, + 16, + 10, + 4, + 1 + ] + ], + [ + 1310, + [ + 262, + 128, + 70, + 38, + 20, + 10, + 1 + ], + [ + 258, + 128, + 66, + 34, + 16, + 10, + 4, + 1 + ] + ], + [ + 1313, + [ + 262, + 128, + 64, + 32, + 20, + 10, + 1 + ], + [ + 260, + 128, + 64, + 32, + 20, + 8, + 2, + 1 + ] + ], + [ + 1316, + [ + 256, + 128, + 65, + 33, + 18, + 11, + 7 + ], + [ + 256, + 128, + 65, + 33, + 16, + 9, + 5, + 2 + ] + ], + [ + 1319, + [ + 256, + 128, + 64, + 32, + 18, + 11, + 7 + ], + [ + 256, + 128, + 64, + 32, + 17, + 8, + 4, + 3 + ] + ], + [ + 1322, + [ + 257, + 129, + 65, + 33, + 19, + 10, + 7 + ], + [ + 257, + 129, + 65, + 33, + 17, + 8, + 5, + 2 + ] + ], + [ + 1325, + [ + 257, + 129, + 64, + 32, + 19, + 10, + 7 + ], + [ + 257, + 129, + 64, + 32, + 16, + 9, + 4, + 3 + ] + ], + [ + 1328, + [ + 257, + 128, + 64, + 33, + 18, + 11, + 7 + ], + [ + 257, + 128, + 64, + 33, + 17, + 8, + 4, + 3 + ] + ], + [ + 1331, + [ + 257, + 128, + 65, + 32, + 19, + 10, + 7 + ], + [ + 257, + 128, + 65, + 32, + 16, + 9, + 4, + 3 + ] + ], + [ + 1334, + [ + 256, + 129, + 64, + 33, + 18, + 11, + 7 + ], + [ + 256, + 129, + 64, + 33, + 16, + 9, + 5, + 2 + ] + ], + [ + 1337, + [ + 256, + 129, + 65, + 32, + 19, + 10, + 7 + ], + [ + 256, + 129, + 65, + 32, + 17, + 8, + 5, + 2 + ] + ], + [ + 1340, + [ + 257, + 129, + 64, + 33, + 24, + 4, + 3 + ], + [ + 257, + 129, + 64, + 33, + 16, + 8, + 4, + 3 + ] + ], + [ + 1343, + [ + 257, + 129, + 65, + 32, + 24, + 5, + 2 + ], + [ + 257, + 129, + 65, + 32, + 17, + 9, + 5, + 2 + ] + ], + [ + 1346, + [ + 256, + 128, + 64, + 33, + 24, + 5, + 2 + ], + [ + 256, + 128, + 64, + 33, + 17, + 9, + 5, + 2 + ] + ], + [ + 1349, + [ + 256, + 128, + 65, + 32, + 24, + 4, + 3 + ], + [ + 256, + 128, + 65, + 32, + 16, + 8, + 4, + 3 + ] + ], + [ + 1352, + [ + 256, + 129, + 65, + 33, + 24, + 4, + 3 + ], + [ + 256, + 129, + 65, + 33, + 17, + 9, + 4, + 3 + ] + ], + [ + 1355, + [ + 256, + 129, + 64, + 32, + 24, + 4, + 3 + ], + [ + 256, + 129, + 64, + 32, + 16, + 8, + 4, + 3 + ] + ], + [ + 1358, + [ + 257, + 128, + 65, + 33, + 24, + 4, + 3 + ], + [ + 257, + 128, + 65, + 33, + 16, + 8, + 4, + 3 + ] + ], + [ + 1361, + [ + 257, + 128, + 64, + 32, + 24, + 4, + 3 + ], + [ + 257, + 128, + 64, + 32, + 17, + 9, + 4, + 3 + ] + ], + [ + 1364, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ], + [ + 257, + 128, + 65, + 33, + 16, + 9, + 5, + 3 + ] + ], + [ + 1367, + [ + 257, + 128, + 64, + 32, + 16, + 9, + 6 + ], + [ + 257, + 128, + 64, + 32, + 16, + 9, + 5, + 3 + ] + ], + [ + 1370, + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ], + [ + 256, + 129, + 65, + 33, + 16, + 9, + 5, + 3 + ] + ], + [ + 1373, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ], + [ + 256, + 129, + 64, + 32, + 16, + 9, + 5, + 3 + ] + ], + [ + 1376, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ], + [ + 256, + 128, + 64, + 33, + 17, + 8, + 5, + 3 + ] + ], + [ + 1379, + [ + 256, + 128, + 65, + 32, + 16, + 9, + 6 + ], + [ + 256, + 128, + 65, + 32, + 16, + 9, + 5, + 3 + ] + ], + [ + 1382, + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ], + [ + 257, + 129, + 64, + 33, + 16, + 9, + 5, + 3 + ] + ], + [ + 1385, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ], + [ + 257, + 129, + 65, + 32, + 17, + 8, + 5, + 3 + ] + ], + [ + 1388, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ], + [ + 256, + 129, + 64, + 33, + 16, + 8, + 5, + 3 + ] + ], + [ + 1391, + [ + 256, + 129, + 64, + 33, + 17, + 9, + 6 + ], + [ + 256, + 129, + 64, + 33, + 17, + 9, + 5, + 3 + ] + ], + [ + 1394, + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ], + [ + 257, + 128, + 64, + 33, + 17, + 9, + 5, + 3 + ] + ], + [ + 1397, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ], + [ + 257, + 128, + 64, + 33, + 16, + 8, + 5, + 3 + ] + ], + [ + 1818, + [ + 256, + 129, + 64, + 33, + 24, + 4, + 2 + ], + [ + 320, + 129, + 33, + 24, + 4, + 2 + ] + ], + [ + 1819, + [ + 256, + 129, + 64, + 33, + 24, + 4, + 2 + ], + [ + 320, + 129, + 33, + 24, + 4, + 2 + ] + ], + [ + 1826, + [ + 256, + 129, + 64, + 33, + 19, + 11, + 6 + ], + [ + 320, + 129, + 33, + 19, + 11, + 6 + ] + ], + [ + 1827, + [ + 256, + 129, + 64, + 33, + 19, + 11, + 6 + ], + [ + 320, + 129, + 33, + 19, + 11, + 6 + ] + ] + ], + "early_cleanup": [ + [ + 83, + [ + 386, + 67, + 33, + 24, + 6 + ], + [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + ], + [ + 104, + [ + 386, + 74, + 40, + 26, + 6, + 1 + ], + [ + 256, + 128, + 72, + 40, + 24, + 4, + 2, + 1 + ] + ] + ], + "report": { + "R": 480, + "borrowed_output_pairs": 56, + "centre_ranks": [ + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8 + ], + "cst": 64, + "first_load_join_counts": { + "4": 64 + }, + "h": 9, + "local_profile": { + "1": 2372, + "2": 494, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "local_rank_mass": 5590, + "m": 73, + "scope": "Clean scalar identity and all literal monotone local frames only; arbitrary-dirt compensation, entrance kernels, exact phase recipes, and global hosting/pricing are not yet certified.", + "selected_load_join_counts": { + "6": 64 + }, + "selected_partitions": [ + 0, + 0 + ], + "source_and_helper_cleanup_exact_on_clean_columns": true, + "source_columns_exact": 112, + "status": "EXACT_CLEAN_OWN_Y_EARLY_CENTER_WORD_NOT_ADMITTED", + "tri_join_counts": {}, + "v": 112, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/SEARCH.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/SEARCH.json new file mode 100644 index 0000000000..d763543a3e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/SEARCH.json @@ -0,0 +1,45 @@ +{ + "status": "COMPLETED_LOCAL_INTERFACE_AND_OWNER_SEARCH", + "new_direction": "Local recursive-interface changes after a packing ceiling; scalar helper elimination attempted separately.", + "source_lead": { + "pr": 1111, + "commit": "381831ea554ea983e16224dabed8921b7d0ffdbc", + "url": "https://github.com/CrocSwap/integer-mult-bounds/pull/1111", + "scope": "Entrance-demotion lead only; no code or payload imported." + }, + "entrance_subspace_counts": { + "5_to_4": 186, + "4_to_3": 120 + }, + "combined_words": "First one through six dimension-five groups were jointly refitted. Three groups had the best relaxed objective among these six compositions; not an exhaustive search of mixed words.", + "selected_groups": [ + 603, + 611, + 619 + ], + "scalar_topology": "Unchanged in the admitted witness; only starts and recursive frame annotations change.", + "helper_elimination": { + "screened": 19, + "outside_B_only_preconditions": 2, + "frame_infeasible": 17, + "constant_value_placement_orderings": 61674, + "scope": "Fixed remaining scalar order; no admissible producer-side replacement in this tested family." + }, + "owner_search": { + "initial": "Complete-call transportation repair after changing widths. A gap-only flow attempt filled 704 of 1728 required unit expansions and was rejected.", + "seed": 307, + "block": 48, + "passes": 60, + "integer_seconds_per_solve": 8, + "pricing_rounds": 35, + "final_idle": { + "1": 360, + "24": 1, + "48": 4918 + }, + "final_owners_sha256": "93cb570c9496725ed5204d9f890ddf337ed8c3fb1a1b980de3e905f65e71b2dd", + "scope": "Restricted floating LP and time-limited integer search; no integer optimality claim." + }, + "verification": "Fresh five-stage native replay plus independent all-column audit, 27 local controls, and unchanged full T16 admission engines; final complete wrapper replay recorded separately.", + "numeric_scope": "All search kappa_relaxed entries are floating aggregate relaxations, not certified suppliers. CLAIM.json is the reportable admitted value." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/SOURCE-PINS.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/SOURCE-PINS.json new file mode 100644 index 0000000000..57ce7f32fc --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/SOURCE-PINS.json @@ -0,0 +1,221 @@ +{ + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CANONICAL-WORD.json.gz": "66d3c3c70983224650643a0a05a21ac6c6959f84d0f4528650601016f5a76844", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-RECIPES.json": "534ace870cabe515987e00f50f71550030965006ea18978e0924590ac6944345", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/CLIFFORD-REVIEW.json": "ee9b86428278392d2c933f76d60e51f5af90d4ab67e4d3937ed2fa416e7755ab", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-LOCAL-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INDEPENDENT-REPLAY.json": "ad3f2b941127688f98ce6872d00f110644f1c2b156f8adad1b6700e838ed0e26", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/INTEGRATION.json": "5c14538134dfffbc58fa4b4d2f26b270ec5f56d17d4bf23752c82964f45171db", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-CHECKS.json": "79177449e404403964ce1b2f4a9a8bd49e1916daba3123d7fd7f5cfd1f1ac0ea", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/LOCAL-PROGRAMS.json.gz": "99a18eede965accf65943e490b8d2b2ffb9f1c9bc6babdb825413a80cbea2cde", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/RESIDUAL-ADAPTERS.json": "baafef737acc16dafbe1150896feb16744f3d669fa123bb2bff19ecc4e71b275", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/SCALAR-FRAME-AUDIT.json": "73b3601a6239502475a272ea0c46945fd42034486aaf43e66a212eb4f012ca44", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/split-centres/WRAPPER-CHECKS.json": "9a09146e686c4f535b04fdef3753fe01dad8f5e8881a69408a91394acb5b48f5", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/base/work/complex-nine-native/DATA-PHASES.json": "c5916ff312678f12aba403847643fbbc29f643acec60bdf836fa56cd3e8251fa", + "research/community-k492-audit/pr622/replay/baseline558/complex-global/controller-input/split-centres/CANONICAL-WORD.json.gz": "de2be0f4b6d24ace368fd5b834b7a00f9625d0a1824c4ff969f2db5f115db667", + "research/complex-k492-owner-repair/vendor/multicold/code/assemble.py": "3fedbccb09d469f8ee366b4302e51448de6d25793a78a12c5f9a8d9667a755eb", + "research/complex-k492-owner-repair/vendor/multicold/code/assembly_controls.py": "a0f2349ba8fe8404b8b76c869f12dd7e250a775b2e05b3c9c00e6889ad4c8a45", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_allcold.py": "7950e5c01488a9146bdbaf19ab4fd0c33cd25a4d63fb56ef995ef2e45ac7ec1a", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_kernel_controls.py": "5100459211f43ba048bf82c3942bbedb8b224272b24722a14f0dcd808a38aafa", + "research/complex-k492-owner-repair/vendor/multicold/code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "research/complex-k492-owner-repair/vendor/multicold/code/bind_providers_portable.py": "01e62fee1f1dcf1b7b34338d555dacd5cd1d7d10d6b9a605d0913d959f8c7ecf", + "research/complex-k492-owner-repair/vendor/multicold/code/build_cold_kernel.py": "aa556a1988f7d4c52bd82fd2a648769f7094bd75ba79582c15ec441d710e213b", + "research/complex-k492-owner-repair/vendor/multicold/code/build_four_portable.py": "417b1dc4dca485dfbbaa820e552cae9bf3932bbace6ea16ce93aa0590c3c184e", + "research/complex-k492-owner-repair/vendor/multicold/code/build_multicut_kernels.py": "6ab3d73f81d5b2fb884a93a336ef1940e118d419d425b3356bab3b97f774c9aa", + "research/complex-k492-owner-repair/vendor/multicold/code/emit_allcold.py": "9d6c75af63fa8f53973734ccb1eef983511f4337ce644436a693fd8fb9ef8fe2", + "research/complex-k492-owner-repair/vendor/multicold/code/invoice_allcold.py": "ff8fee775ad97926454f3ad1183f8e05de654e276150e579ce612f3eb2f98d44", + "research/complex-k492-owner-repair/vendor/multicold/code/phase_timing_controls.py": "dcc4adfd139d6f65a88bdc6d183ea3777d4e4f688d2169dd41b54964f05591bb", + "research/complex-k492-owner-repair/vendor/multicold/code/run_portable.py": "322d29d43dbee8130cde15d4bf05396698b5e3dfe3735813899db91cc0ba7955", + "research/complex-k492-owner-repair/vendor/multicold/engines/base_two_moment.py": "aee70c242a2f1d225528fabe2002e1564d1dc884797c07d28a831c7878ee9098", + "research/complex-k492-owner-repair/vendor/multicold/engines/moment.py": "81cbc864e106418fc7854322746f72180cb8110ff39f74450a3b8d55a82c1482", + "research/complex-k492-owner-repair/vendor/multicold/engines/outer.py": "c1ebb52163a7219504c728a5c2b098bf1e50bf20148a2879c5a74c3cadc7c03c", + "research/complex-k492-owner-repair/vendor/multicold/inputs/PR543-EXPECTED.json": "06eccee9f6b77e140833df83407e7996dc948c17d49b0779ab171fbe463fd28d", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/code/phases_full.py": "a273c325ffd6793d5b63b79a289a9d2bbc9292e6940fb5a926924f3708627af4", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/code/prepare_supplier_base.py": "f5eae94aca965d0008bc07cff8245ccb7509042ccad457d3bcb7d51c1e9409f0", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor531/evidence/audit/PREFIX-AND-INVOICE.json": "ce1bfa49be88ae67a404f606a11db2232b7e1f2610d4418058e39749d86d8478", + "research/complex-k492-owner-repair/vendor/multicold/vendor/pr558/vendor/pr552/complex-global/vendor535/inputs/ROUND20-PARENT-TEMPLATE.json.gz": "025448abdf2012d327e50a009084e1501690d05e650300d2982836aa0350ae00", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py": "1b1a9024ac910dc9b9d9e30150684e1fa9cb228a4c1c275b75ab04b57fdef1dd", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py": "8a365b95c412d75d10db5bb59309d47cd56c5f8a77566f940a05977795130ce8", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py": "cea021ae79658ca7ca4d07f1e1a70bdb4947afaf95b362114c11032c0fef889a", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py": "2eb5c262bf481b3bec9ceaec654fa46ff6fc3a89b13d4906a29a55a89e35feea", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py": "864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py": "e2549ccc7a90008831be3b59aeb37b47db696640f5f5c2b72dd888b2f1e7e5c9", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py": "08bf1c2652307aeefbab089fdaf02f82e2c396ca23a1eb68e294a67e74c44252", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py": "ba2001695d8c7547a82260c3b016e01dac686e95a61757ca124eb9879078ea8e", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py": "beb0d30fde1b9a30db091880b38c4a8ec906da3f715c43de7db8bf7932526e72", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py": "0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py": "66fc460df8eb8067efe3d8a3f9e97a7244aacd7bf11650a6ce656e868ce053da", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/emit_allcold.py": "fe26f10fe5d30ed407a37540a45ef94f44576dd241d09e19aef5db1efb072746", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py": "a7b93207a673575d1fddc3e579153349c145c8f08d4575ae0a5d1e3cffec01de", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py": "eb0b5c6c7161e18dc22168da3211448d321586edd15bcfb4b4741174d36993cf", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py": "c9a05ff291016b870b4fc925b317abd9c3a604c73ffc8920dfdbbeb475e20aa3", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py": "6bd9a1e279c9c9e4f3767d9f82e537b559292906feb2ddab02f380fb6523a810", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_controls_atc.py": "63aa3909b5bfd3bf270c313bebb5c46e7789c67a8f2439f568bc4b2b4a35d17b", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py": "7e4a6fbc38c8228157b6311457d1496bf460291393043932d2c365f004f77805", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/phase_timing_controls.py": "1692ccee3da4b1781408d126ee4999f3e31a505cd83c64823a404033da3a6339", + "research/complex-sw4-frame8/vendor/pr635/research/complex-571-cold14-st2/code/witness.py": "00789c911a8f32cfe9d52207c7aa78305dc3fce4a8b6305ba402b7e74117103d", + "research/gauge44-leaver8/MANIFEST.json": "7c9637f06798b144274458efa145f701c61282f8b3aab1c0c900b53bdfbe1f0d", + "research/gauge44-slots/MANIFEST.json": "9a6f239b1618a43262e56735a99cc59b6f5a6e8816a794a34413e89cc33f4976", + "research/gauge44-slots/code/assemble.py": "4c270a996b380ab712f72b81173ab24f1c73203a33578f261bfbaa7e67d75aec", + "research/gauge44-slots/code/assembly_controls.py": "e4c0f7828af64fdaef1896e4448d0212bd3041805097140b8cfafd098f8a6162", + "research/gauge44-slots/code/audit_allcold.py": "a87d7f4844ca963516637d249b14a0654f67f8047b6b265ae25b0cf30963e503", + "research/gauge44-slots/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/gauge44-slots/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/gauge44-slots/code/emit_allcold.py": "17c110c7c8d219e79e7dce36b19c4781e7effa800086cec03384387ad9acc7aa", + "research/gauge44-slots/code/freeze_spec.py": "f96c2b9cd886596bc7ab267f77abe9d16b6cbb5a724a5ad0a1d18d540369ed93", + "research/gauge44-slots/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/gauge44-slots/code/invoice_allcold.py": "141bd2fd58bbfb5b8d0fc8f56f61c45586d5608a5af3487c6b883dd987f998ec", + "research/gauge44-slots/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/gauge44-slots/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/gauge44-slots/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/gauge44-slots/construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "research/gauge44-slots/construction/slots/SLOT-PINS-k8.json": "55dd229684febecb80638eff9c6b3986623e8539c6c956753b350209c3e0efe2", + "research/gauge44-slots/construction/slots/verify_slots.py": "bc1c0e3e3d7c81dc1649f5be82cdd2399e543d46c24879cb975877bf9b7957be", + "research/gauge44-slots/data/OWNERS.json.gz": "32ca30cd1c652ef6ad43657273a08a157e1df3545e759ab36306a0d0b516fb4a", + "research/gauge44-slots/data/PLAN.json": "1dec4ca3af6d45d82286005cae4c5e56e7253adefb117d797da55c55c891af08", + "research/gauge44-slots/data/SPEC.json": "8e95ae8087124189cbd366d0e9d1c5ebededff536ff3501927b4b2a2e8dac70e", + "research/gauge44-slots/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/gauge44-slots/hosting/reuse_owners.py": "2106fe79bd89071e62a3a25c1e444531e14fb89f88b4bdeb72d7b40c91266402", + "research/gauge44-slots/independent/audit_local.py": "03afcfc9da428b3f6edac81c1fee7f277ab81b64998efae78380b63498dec6cd", + "research/gauge44-slots/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/gauge44-slots/verify_global.py": "16bd5e54598592e92e210f99065348c5df261b8350fdc688072ce053d15b088a", + "research/gauge44-slots/verify_manifest.py": "723d726dbbe5b65a49caecae0f1aab664a1413fb639abfd3e826a5a538e14e5b", + "research/k8-eight-ends-t16/CLAIM.json": "4ba568cb88f86a87a6c35df444b44b6f8c006ece6351279934ede873f5d61eab", + "research/k8-eight-ends-t16/MANIFEST.json": "f1f5c145121485f644a134873069fc465f312e9144ab43975fa95f599ce06f59", + "research/k8-eight-ends-t16/NOTICE.md": "a9e85b59dde61fbff0b006923b441cbd1419e24fa9802426785bca667437fdc0", + "research/k8-eight-ends-t16/OWNERS.json.gz": "a4c79743dcc93c4260fae00b3324b97983fcd56af8bff5414243d7258a4bc97b", + "research/k8-eight-ends-t16/PLAN.json.gz": "6561ecb8db5e24dd534d0f940f91830691ab375f925b20665ca0f019718e2b7a", + "research/k8-eight-ends-t16/PROOF.md": "7084e8a9fedd0d5902e95500da70982343fa725d8b68c2c3210a7b0a7bb2e664", + "research/k8-eight-ends-t16/README.md": "7aa1a4f5348ed9408cdebb2525eaabe50776259b939d7d49f6845503f3c585c3", + "research/k8-eight-ends-t16/SEARCH.json": "bf8efc27b2ca95f4bd15ebc719d2794a0e5d2edf26fc5b4cffc8c18dcb7f6d4a", + "research/k8-eight-ends-t16/SOURCE-PINS.json": "07515a4634303b85a54b570079f0efb373b36d586c72f7b023df3d2f495ad5a3", + "research/k8-eight-ends-t16/SPEC.json": "30d4dcc96f1361fcee1562681291763f6ee8c08fb1f93da1ea4fd2a42a1d0b5d", + "research/k8-eight-ends-t16/UPSTREAM.json": "23493f74fc09ac50442d9d83b7626d4760cfa24c785ca1d96fde8175bdd39fa6", + "research/k8-eight-ends-t16/discovery/ALIASES-REFRAMED.json": "a65d322ee757815e0de08e1f3c5796b5add8c744e1c3df292af917966b09adf0", + "research/k8-eight-ends-t16/discovery/BANK-STAGES.json": "ad8a80986982b67481ed4785663d83f56516542a79dc02c9ff50c991173c2771", + "research/k8-eight-ends-t16/discovery/FINAL-SEARCH.json": "ed936c49a0c15d69388b03f7c71bee50b2726be353f8dd52c6dcc56b1c12e1bd", + "research/k8-eight-ends-t16/discovery/HELPER-ALIASES.json": "ad1e0ffa923ce6632b2b86ad00ab004b5fc28ecd1d186e3c55727d1d6e834d73", + "research/k8-eight-ends-t16/discovery/PROMOTION-GROUPS.json": "221e05ae8c2b32594490b98ca12a96fc301789d1d80752c1d5f168469f8f8c07", + "research/k8-eight-ends-t16/discovery/PROMOTION-SCREEN.json": "6b5799744b7abbf4182ad594ede3984123ec559dfed1c1f50ad4f005ce713390", + "research/k8-eight-ends-t16/discovery/RETIRABLE-HELPERS.json": "3670ce299d538c4215fab08e88e7553903dfc595b756bcbc157178b0dc913159", + "research/k8-eight-ends-t16/discovery/SWAP-SEARCH.json": "70901cb74e475b35e0cffe99fbdae6ed74e5d315b92fdf900ef3a6ef7e542258", + "research/k8-eight-ends-t16/discovery/bank_screen.py": "b6c208ab449a9371bc812a19ed13edd8121f3f042769739fab9f964959a30b78", + "research/k8-eight-ends-t16/discovery/columns12-SEARCH.json.gz": "ee6f2925af9fc0dae9c2c511a35e34fe3d9983fb2df6b14de144d1166bba495a", + "research/k8-eight-ends-t16/discovery/columns12.log.gz": "7056db81c9131f484f1b09931bd3a722fa78e03e8e5898645da2eea3df75638b", + "research/k8-eight-ends-t16/discovery/columns144-SEARCH.json.gz": "b07b6a6dd29ec3cb03fa3827767e674b4ea06b3f2a555ba332f2dcb88ff918f9", + "research/k8-eight-ends-t16/discovery/columns144.log.gz": "bcf0b3ca6bd12a9032bfd27231e5a4efe2dd3b0edf874c9a01d0ba9dc8a3889d", + "research/k8-eight-ends-t16/discovery/columns24-SEARCH.json.gz": "9049ac77892a20aeeb30ccbf2a703c2b89cdbacf4f8f68a391cae10552c948b1", + "research/k8-eight-ends-t16/discovery/columns24.log.gz": "6aedcc3e39ee3ee8d2f9d4f33fd0107a1dec002323a6bf5e7e29308beafd3f91", + "research/k8-eight-ends-t16/discovery/columns48-SEARCH.json.gz": "adafcb5f6a7169a01a71220ea7ac94b389884112d00b1e9083961d69e4bbe467", + "research/k8-eight-ends-t16/discovery/columns48.log.gz": "0d69973436734bdce8399377f617dc728f099c1da237bdb829bf1ddf20ca4c4e", + "research/k8-eight-ends-t16/discovery/columns48b-SEARCH.json.gz": "fffcdb5b4f3679ab726a3abf9a8ed97559eec7975ca39ece8a140231efaad130", + "research/k8-eight-ends-t16/discovery/columns48b.log.gz": "c811f9ea49dd8ddf80f54556c7e387172b5ecbd8998ed4bea795e7c2b12121e9", + "research/k8-eight-ends-t16/discovery/double-calls-SEARCH.json.gz": "69df67741eae2afdd3f683f4021f478000dded1322c5820023faa77067ef6a9e", + "research/k8-eight-ends-t16/discovery/double-six-SEARCH.json.gz": "0364f028731baeccbf07953a98fabbf152b3685c5dfdf309d65398946ade9883", + "research/k8-eight-ends-t16/discovery/double-triples-SEARCH.json.gz": "f0040bb71eac1612bf730791a6d32bf13c7a065f0a2772a1149ced7aa71ffc77", + "research/k8-eight-ends-t16/discovery/helper_aliases.py": "3b996c21bf97e950e785c2f7f3ce025ce59c754c3679f97023ababfc5ac0b295", + "research/k8-eight-ends-t16/discovery/make_start.py": "3ba975c7947a3b74959a7e83a580a6f7b36e90d075157bac304a097d20e2cafd", + "research/k8-eight-ends-t16/discovery/promotion_groups.py": "5244da8cffc5f56698c134ca36230bcddbbdea935bc633e4975de50b47d785d2", + "research/k8-eight-ends-t16/discovery/reframe_aliases.py": "5e6342d583a7f3b99c940b6382527a000803eb728267fb4c101371b2b2128d89", + "research/k8-eight-ends-t16/discovery/search_calls.py": "273d3b3e1de5644af5a13a2c7cb18a34a3689b80830b614d7d2ed1da998a90ee", + "research/k8-eight-ends-t16/discovery/search_columns.py": "edbb093207e21ee4301382f00198c6eccb197949068e96c76e46a2e61dc90f82", + "research/k8-eight-ends-t16/discovery/search_uniform_blocks.py": "ab6308d536b37b14996e06b857a4f11433b3cb551444e836eb12ec560b452bb8", + "research/k8-eight-ends-t16/discovery/swap_frames.py": "cd89dd461142788817ac53c041808077d162a4d3bcfebee240307199aebadcc5", + "research/k8-eight-ends-t16/discovery/t16-calls-SEARCH.json.gz": "44df70fe291f3c0ec9ecd01791c02b9b52b29807c576353476542aaf76bbff40", + "research/k8-eight-ends-t16/discovery/t16-pairs-SEARCH.json.gz": "d32f9facc6b68c8dad2c9e4ead26aec913b076d4eb10214d18fa0c4c0b4762fa", + "research/k8-eight-ends-t16/discovery/t16-triples-SEARCH.json.gz": "57dd34fea35dee80e72a007e4cd044c50f00c1c794f03df6b0cbf292f54d8e0e", + "research/k8-eight-ends-t16/discovery/uniform-blocks-SEARCH.json.gz": "9c0a86f5befe738ebcf39badda84314150b060a911e0708d83d29a22423f149c", + "research/k8-eight-ends-t16/evidence/ADMISSION-CONTROLS.json": "6bdc8957237a01c0c5f667e2be2e889b02714fc6bc7a209672d09d5222073059", + "research/k8-eight-ends-t16/evidence/ALL-T-BOUND.json": "dde30a7151248cb9f316fe3816554dc165d050f5216e13797ceb30fe681a3a04", + "research/k8-eight-ends-t16/evidence/ASSEMBLY.json": "52c6af2fc860f7459f0fe3397639caecd5a8edf35ad76d4b22e99d19a79a2831", + "research/k8-eight-ends-t16/evidence/ASYNC-AUDIT.json": "644c15a99e207161a50eca01ddf1c7852e67504517fa4710d5490c3f65a4665a", + "research/k8-eight-ends-t16/evidence/AUDIT-LOCAL.json": "9fd252469f82b5ce5fc2f42b674445dfcac08d769768d00bede6cb5c99e9aa63", + "research/k8-eight-ends-t16/evidence/BIT-SUPPLIER-CONTROLS.json": "17939b88da6b6ad8a8220ed04ddf325679fc2f096c7d197938f10893a87383b4", + "research/k8-eight-ends-t16/evidence/END-CONTROLS.json": "e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135", + "research/k8-eight-ends-t16/evidence/GLOBAL-PREFIX.json": "a6820bfad6fd665c08755fdff98d64069cb94dce337b0881e035a61bcb981cd2", + "research/k8-eight-ends-t16/evidence/IDLE-REMAINDER-FRAMES.json": "2d8b44b6bfe85df299bef25602529867b3316a20e41991786c2063b4c203d34c", + "research/k8-eight-ends-t16/evidence/INDEPENDENT-T16.json": "8311da24ffd4314b7d0857f7669de063fa76679af7fb67009513c513e47da5b3", + "research/k8-eight-ends-t16/evidence/NATIVE-STEPS.json": "782098b0ae9b7a87c75c47edc2e072c25a2c44d3e5417f44bf5f81ecf3d04a6e", + "research/k8-eight-ends-t16/evidence/OWNERS-AND-PROFILE.json": "f20ff5901bfe41cddf5c62d59f8c5361323f7e49b78c17d97173e9db5b3baf0f", + "research/k8-eight-ends-t16/evidence/PARENT-LIFT-RECEIPT.json": "d4705df4d65289e9ced31f625e34559fb26c1a4ca6f74559dd2e31a366b20a74", + "research/k8-eight-ends-t16/evidence/PREFIX-AND-INVOICE.json": "ef4775a3cd6bb1d52b9f43924b9bb1b378d52662c67e373fed20c1d5728caeb5", + "research/k8-eight-ends-t16/evidence/REPLAY-LOGS.json.gz": "81d8a6d5968f206177a4a1bd51baa530f1f9881867ce9925d341066dc1b33f21", + "research/k8-eight-ends-t16/evidence/REPLAY.json": "fa8db7880863b26de2999eab873f9d9b4661da651e17ac2f3b24a888efb1a341", + "research/k8-eight-ends-t16/evidence/RESULT.json": "33708ffb914369d4e25f34824bad32f2962d94027c2710df70fff83def7ec19f", + "research/k8-eight-ends-t16/evidence/STAGES.json": "b46df79356639d66a30fd50ca9d62b067037fb6072865d7399273ab20ccd3b23", + "research/k8-eight-ends-t16/independent/all_t_bound.py": "0cf8498903ef9e2a210886aa8360643b43a41f5bce33e187528835c325e3a059", + "research/k8-eight-ends-t16/vendor/pr1074/UPSTREAM-NOTICE.md": "a75967ebc34e3bf2ff2c25c08e6c7f1a61b0c0d171cfd1b62196ae2caaf2c610", + "research/k8-eight-ends-t16/vendor/pr1074/code/assemble.py": "15f6986a476bac76bcdc0bfcf51da115389b46f1950d2766b6822f757888b13a", + "research/k8-eight-ends-t16/vendor/pr1074/code/assembly_controls.py": "da7e981ae1b9f099d4e1524cb4f3ba1116011936ebe378692889b5dbfa99029d", + "research/k8-eight-ends-t16/vendor/pr1074/code/audit_allcold.py": "1467a2acb654e62552c69fb9a7c4c85f70a02120881d222313865058ab71a6cc", + "research/k8-eight-ends-t16/vendor/pr1074/code/bind_providers_portable.py": "1d39bcc7b63ac158e021454beaae897d123e174360573762aecade3cd43193f6", + "research/k8-eight-ends-t16/vendor/pr1074/code/bit_supplier_controls.py": "e6d33fb61a570c3f50669412acc467a3fd06ef0b806da6a75bc296c6ba2142a5", + "research/k8-eight-ends-t16/vendor/pr1074/code/emit_allcold.py": "354367e1fd6185a67b04f4268bcae4d502e47b18cb2131e247f5bcab5b3a769e", + "research/k8-eight-ends-t16/vendor/pr1074/code/freeze_spec.py": "5971eecac6d6fbcb53244b80f1b9d7232012dc32876fab511214a5addebbe6c2", + "research/k8-eight-ends-t16/vendor/pr1074/code/generated_identity.py": "c8af22719c0f3097a991a3f6ccac8f090afd2faba554745733d9ea88f2c25708", + "research/k8-eight-ends-t16/vendor/pr1074/code/invoice_allcold.py": "71eb57514e28ced97251e0507105f654f59885ec4d40486a780bf166098858a8", + "research/k8-eight-ends-t16/vendor/pr1074/code/prepare_global.py": "8c0dae301a8f34b77a5a462f840952d08ed120576212adf5051bc09bcad874dc", + "research/k8-eight-ends-t16/vendor/pr1074/code/restore_parent.py": "69b7b25ff85e9b8160e233c1d415cc6a0272019e5c486dcec14cb6c349e7024d", + "research/k8-eight-ends-t16/vendor/pr1074/code/witness.py": "779c5172894b992131e85be1e592ed2a1aec8c287b872ff42007d36a7291e444", + "research/k8-eight-ends-t16/vendor/pr1074/construction/leaver/PIVOT-SWAP-k8.json": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb", + "research/k8-eight-ends-t16/vendor/pr1074/data/UPSTREAM-PINS.json": "ccc37ab7fbf78947fe02c7f57ea672d2e4eae8454cb1158ed964c75bf423869b", + "research/k8-eight-ends-t16/vendor/pr1074/inputs/PR589-EXPECTED.json": "b9f0e5ca038abe837b0007c8fe006f366a6f02009244ac57705a8a200e2301f4", + "research/k8-eight-ends-t16/vendor/pr1074/t16/build_parent.py": "82e274d0c7a94f9bf0468dd37f0505d0c42017559ebb4ba8c079a1f4e403d91e", + "research/k8-eight-ends-t16/vendor/pr1074/t16/indep16.py": "1beb512a1d072f81d3e8e492c8827636029686897093bd433e4d4c92d0c830c7", + "research/k8-eight-ends-t16/vendor/pr1074/t16/lift16.py": "072fe6ac032543d5106631f9b4aa36103269b64ab72061d97ec604f648830689", + "research/k8-eight-ends-t16/vendor/pr1074/verify_t16.py": "050e2dfba59911b8f29fd94422833d421367a0ad01c5e4ae916a75a235ee5e46", + "research/k8-eight-ends-t16/verify.py": "e910ca38941209be9b32c3fa6d784e84a824bef9767d2bf492f298d4889cfe92", + "research/k8-eight-ends/CLAIM.json": "65f620750f2a438316684b74cdf7cd990d59626b5c073e7dde0fd735ff3e158d", + "research/k8-eight-ends/FULL-WORD.json.gz": "d28c607df2bc4a82684d3fe47cfb3dba04e3bd14b247c7d4a62a03dff7b2836c", + "research/k8-eight-ends/MANIFEST.json": "bbdfe8589b21557ee0e0625cc485e7afef1f55fd31609bc5f4f9b30de4f6cbf9", + "research/k8-eight-ends/NOTICE.md": "820fa13161f857c221f2c4099dd2985c7ff72249dc7a0221bc00fd0c1b9760e5", + "research/k8-eight-ends/OWNERS.json.gz": "c41fdf51541ecc91af914f264967f3633570500994f8866daf642440a5d843dd", + "research/k8-eight-ends/PLAN.json.gz": "a3e9e390da3136655606ac919ec60696e2f704457ff01ef9e4d07e90534ab2d4", + "research/k8-eight-ends/PROOF.md": "1ee3b7d22a39ccb0877ca32f176786b2545dd2b86bbe986eec833b96cd17ba6b", + "research/k8-eight-ends/README.md": "0f2bc8afeff4054cb8fb62819563a6214d53af916ebf6f28bb2fcd972814362c", + "research/k8-eight-ends/RECIPE.json": "6a5d91b95bdba641ab4cc0e3c9b7f0f2adcc5ef22bef7f732d5d76cb0b6fab6c", + "research/k8-eight-ends/SEARCH.json": "f1816698aa4d7deb48ef7e98a711fdc0c74d67bd336d4b8f48b46fe191d7d1b1", + "research/k8-eight-ends/SOURCE-PINS.json": "6b85ed22262e23db1ff0518d874d4e3ee1b4317d642fabdc9747cecbd04ef420", + "research/k8-eight-ends/SPEC.json": "555cf868f29c8173b2faf8243aea30ee29f3e12f694c6cb3865a06981592af24", + "research/k8-eight-ends/build_word.py": "18691b1fad3bc798b7ad58b39b433f405e9bb4ec266af0303b563f11b07d956f", + "research/k8-eight-ends/discovery/END-COMBINATIONS.json": "db6353685f6f344a6e3a4b8476dde4858fa2fad65fe4e74abcecab93eb07a79f", + "research/k8-eight-ends/discovery/END-GROUP-SCREEN.json": "b197a014997ec869cc2768b68070e9ad3cd6d19633b366085a8061a3523fe3ef", + "research/k8-eight-ends/discovery/END-GROUPS.json": "19b456b91852df5ee2aec79a16ab454c5772bd5160d1cee42e4df6f0cb211bd4", + "research/k8-eight-ends/discovery/RETIME-CENSUS.json": "40ea9706b94cd23a6c37ab01afb6e945ab59ac43d1a61433583cf1d297cf57dd", + "research/k8-eight-ends/discovery/SEARCH-TRACES.json.gz": "eaa157000003e807fb466d6c7bfc032dc74857ae4afc5de2ca6d1bf1a631c37f", + "research/k8-eight-ends/discovery/SOURCE-CENSUS.json": "aeadcc466b01fd5a2498037f3a83dcecdde91d30327a15c684d77645489e6f69", + "research/k8-eight-ends/discovery/SOURCE-REFRAME.json": "d69170ce6443ffaf890a5e3e2b8cecdb74ba4e7b75273738ed367be5643b01a1", + "research/k8-eight-ends/discovery/combine_ends.py": "ea0e79e0bf4ea7d44cadd179fb5bb6ff13cf6cd960362a1e2e07c63c1969b7f8", + "research/k8-eight-ends/discovery/end_groups.py": "190a44e768daf0d9076158da9f00e4aa7e682e7df90749d18fbd55f1a04b9b09", + "research/k8-eight-ends/discovery/frame_model.py": "dee9899272846ee954f8daf6e9f60c9e073c86489b2a594d4d9a4a9899cbd0e9", + "research/k8-eight-ends/discovery/minimize_recipe.py": "8fa2216d1228c12a08b5e93b084ce1426ebe99b5abb7f6e614173b56bedb459d", + "research/k8-eight-ends/discovery/prepare_new.py": "b2995d74b63010aa3bd5e4cdc59666a0ca0d9d4244340c694e8eed6171231c0d", + "research/k8-eight-ends/discovery/resize_owners.py": "af9b632d51f6b4beddd87bf75d6e36eb3f58b7e467e711208f304a774f8b26f0", + "research/k8-eight-ends/discovery/retime_sources.py": "35600042b16447b24289c73a41462d4eeb6600117529df5baf4fed5aa389d898", + "research/k8-eight-ends/discovery/screen_end_groups.py": "a29814cfc5f3f86dc62272fd3cceb2fb0456a3aa25c8b183980291b744e9ab54", + "research/k8-eight-ends/discovery/search_calls.py": "5df48ab7775bfee767d71dd8c47585977922568b532c29f4528f2c8ca5ab364d", + "research/k8-eight-ends/discovery/source_census.py": "9808b026a8a7556fbf171f57ca46b32c2e33b36eeb2924e7eee24abb2a7b3853", + "research/k8-eight-ends/discovery/test_structures.py": "7c550f1c00d58fa1df668179e09c0fd9fe61c35029f548f973727f0b36706e31", + "research/k8-eight-ends/end_controls.py": "9f4a2ad05a3602be3bd89bb1a1e3fc40bb78eb3ad8de3f66aa19e44e53e30e2a", + "research/k8-eight-ends/evidence/ADMISSION-CONTROLS.json": "b7df5cb7695f8de70c674a03c10a36682d85b958340d392c8d61e9b969111179", + "research/k8-eight-ends/evidence/ASSEMBLY.json": "1cf819f87c1e550c78de98206a52e9aff04ec47022e5a63987bcd1dd5d2e51f6", + "research/k8-eight-ends/evidence/ASYNC-AUDIT.json": "2b056ae65d212cfdf4d83778b9be47dc7a9ded6626feb3a20ae2de6ead8dbb79", + "research/k8-eight-ends/evidence/AUDIT-LOCAL.json": "4ebd818fe459c8b729aaf385d6b2946e58316414a9c29c5ba6a2335d63af7ecf", + "research/k8-eight-ends/evidence/BIT-SUPPLIER-CONTROLS.json": "4fbf09922859926ed79eb4874a0c3414a13991de2ffc64d30a382e7eecb2c2a4", + "research/k8-eight-ends/evidence/CLIFFORD-REVIEW.json": "2bfc112221995431c25a7257fdda5a2e9b2631c1712a48ab428f946849cbac91", + "research/k8-eight-ends/evidence/END-CONTROLS.json": "e54407e7951f10c0eae5f310f49765429cf886a15dafb2afe80760715737d135", + "research/k8-eight-ends/evidence/ENDS-8-AUDIT.json": "5381c41fa10fdccbc5c5bdc7059ad839e508d7b8bc3a139bc8ad6b45c20b01c3", + "research/k8-eight-ends/evidence/INDEPENDENT-LOCAL-REPLAY.json": "00b418af082ad30474fcdeecd121d96af305c2686756a0ee30178fe1ccd5dd99", + "research/k8-eight-ends/evidence/LOCAL-CHECKS.json": "3f4c8aba4736091f7efee0d31668d230626e3daa1438dfed096efd04d89b91ba", + "research/k8-eight-ends/evidence/NATIVE-STEPS.json": "02f6ea9122362ba1e408e72c331ffc850a2fbd1593afb06554aa0ab5c7aee0f6", + "research/k8-eight-ends/evidence/OWNERS-AND-PROFILE.json": "a04d3db0d157b197d9395967163e155f0d8775a06db2ca4318258830e2abdaa9", + "research/k8-eight-ends/evidence/PREFIX-AND-INVOICE.json": "66650384488db73bf3d5c7742abaa9c116877845bbb4ef46d6fffe235ae7d1c0", + "research/k8-eight-ends/evidence/PREPARATION.json": "cd980d9b80de65d1bd9358d590a479fb85d75fc4e468a12539cd5a0388190e8d", + "research/k8-eight-ends/evidence/REPLAY.json": "fa6b65403a28ce8c717412b0d90dd4c702bcba7e3c530bca932f921f0dba75e2", + "research/k8-eight-ends/evidence/RESULT.json": "904b0cb2082f6f109845d30f6ee4bb6f766ea493c4cee6a637634362a30785b0", + "research/k8-eight-ends/evidence/STEPS.json": "5577123fa4422fb80f412dc3713bbd7eea5c4c50b63db635f01585457c9d2960", + "research/k8-eight-ends/evidence/WRAPPER-CHECKS.json": "b6c7fdef5893b117434f39b6561b80504482fa748e23b840f77a07b137e1d1ea", + "research/k8-eight-ends/replay_native.py": "1fb596fbafdb19140f483cd34db2994c571e3b962e33b8ea9b3ddc486e37def6", + "research/k8-eight-ends/verify.py": "d57061431e087fb755382e3b362ea7421e5ee3dfae5b3ed81ce5228278ba58b6" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/SPEC.json new file mode 100644 index 0000000000..a30b18a06a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/SPEC.json @@ -0,0 +1,1971 @@ +{ + "schema": "witness-spec/1", + "name": "k8-three-demotions", + "data": { + "plan_sha256": "d85e8bc431071895cab4b981205138957172418101e567fa9c3245a05f34405f", + "owners_sha256": "93cb570c9496725ed5204d9f890ddf337ed8c3fb1a1b980de3e905f65e71b2dd" + }, + "dispatch": [ + [ + 0, + 0, + "gauge44" + ], + [ + 0, + 8, + "gauge44" + ], + [ + 0, + 1, + "gauge44" + ], + [ + 0, + 9, + "gauge44" + ], + [ + 1, + 0, + "gauge44" + ], + [ + 1, + 8, + "gauge44" + ], + [ + 0, + 2, + "gauge44" + ], + [ + 0, + 10, + "gauge44" + ], + [ + 1, + 1, + "gauge44" + ], + [ + 1, + 9, + "gauge44" + ], + [ + 2, + 0, + "gauge44" + ], + [ + 2, + 8, + "gauge44" + ], + [ + 0, + 3, + "gauge44" + ], + [ + 0, + 11, + "gauge44" + ], + [ + 1, + 2, + "gauge44" + ], + [ + 1, + 10, + "gauge44" + ], + [ + 2, + 1, + "gauge44" + ], + [ + 2, + 9, + "gauge44" + ], + [ + 3, + 0, + "gauge44" + ], + [ + 3, + 8, + "gauge44" + ], + [ + 0, + 4, + "gauge44" + ], + [ + 0, + 12, + "gauge44" + ], + [ + 1, + 3, + "gauge44" + ], + [ + 1, + 11, + "gauge44" + ], + [ + 2, + 2, + "gauge44" + ], + [ + 2, + 10, + "gauge44" + ], + [ + 3, + 1, + "gauge44" + ], + [ + 3, + 9, + "gauge44" + ], + [ + 4, + 0, + "gauge44" + ], + [ + 4, + 8, + "gauge44" + ], + [ + 0, + 5, + "gauge44" + ], + [ + 0, + 13, + "gauge44" + ], + [ + 1, + 4, + "gauge44" + ], + [ + 1, + 12, + "gauge44" + ], + [ + 2, + 3, + "gauge44" + ], + [ + 2, + 11, + "gauge44" + ], + [ + 3, + 2, + "gauge44" + ], + [ + 3, + 10, + "gauge44" + ], + [ + 4, + 1, + "gauge44" + ], + [ + 4, + 9, + "gauge44" + ], + [ + 5, + 0, + "gauge44" + ], + [ + 5, + 8, + "gauge44" + ], + [ + 0, + 6, + "gauge44" + ], + [ + 0, + 14, + "gauge44" + ], + [ + 1, + 5, + "gauge44" + ], + [ + 1, + 13, + "gauge44" + ], + [ + 2, + 4, + "gauge44" + ], + [ + 2, + 12, + "gauge44" + ], + [ + 3, + 3, + "gauge44" + ], + [ + 3, + 11, + "gauge44" + ], + [ + 4, + 2, + "gauge44" + ], + [ + 4, + 10, + "gauge44" + ], + [ + 5, + 1, + "gauge44" + ], + [ + 5, + 9, + "gauge44" + ], + [ + 0, + 7, + "gauge44" + ], + [ + 0, + 15, + "gauge44" + ], + [ + 6, + 0, + "gauge44" + ], + [ + 6, + 8, + "gauge44" + ], + [ + 1, + 6, + "gauge44" + ], + [ + 1, + 14, + "gauge44" + ], + [ + 2, + 5, + "gauge44" + ], + [ + 2, + 13, + "gauge44" + ], + [ + 3, + 4, + "gauge44" + ], + [ + 3, + 12, + "gauge44" + ], + [ + 4, + 3, + "gauge44" + ], + [ + 4, + 11, + "gauge44" + ], + [ + 5, + 2, + "gauge44" + ], + [ + 5, + 10, + "gauge44" + ], + [ + 6, + 1, + "gauge44" + ], + [ + 6, + 9, + "gauge44" + ], + [ + 1, + 7, + "gauge44" + ], + [ + 1, + 15, + "gauge44" + ], + [ + 7, + 0, + "gauge44" + ], + [ + 7, + 8, + "gauge44" + ], + [ + 2, + 6, + "gauge44" + ], + [ + 2, + 14, + "gauge44" + ], + [ + 3, + 5, + "gauge44" + ], + [ + 3, + 13, + "gauge44" + ], + [ + 4, + 4, + "gauge44" + ], + [ + 4, + 12, + "gauge44" + ], + [ + 5, + 3, + "gauge44" + ], + [ + 5, + 11, + "gauge44" + ], + [ + 6, + 2, + "gauge44" + ], + [ + 6, + 10, + "gauge44" + ], + [ + 7, + 1, + "gauge44" + ], + [ + 7, + 9, + "gauge44" + ], + [ + 2, + 7, + "gauge44" + ], + [ + 2, + 15, + "gauge44" + ], + [ + 8, + 0, + "gauge44" + ], + [ + 8, + 8, + "gauge44" + ], + [ + 3, + 6, + "gauge44" + ], + [ + 3, + 14, + "gauge44" + ], + [ + 4, + 5, + "gauge44" + ], + [ + 4, + 13, + "gauge44" + ], + [ + 5, + 4, + "gauge44" + ], + [ + 5, + 12, + "gauge44" + ], + [ + 6, + 3, + "gauge44" + ], + [ + 6, + 11, + "gauge44" + ], + [ + 7, + 2, + "gauge44" + ], + [ + 7, + 10, + "gauge44" + ], + [ + 8, + 1, + "gauge44" + ], + [ + 8, + 9, + "gauge44" + ], + [ + 3, + 7, + "gauge44" + ], + [ + 3, + 15, + "gauge44" + ], + [ + 4, + 6, + "gauge44" + ], + [ + 4, + 14, + "gauge44" + ], + [ + 5, + 5, + "gauge44" + ], + [ + 5, + 13, + "gauge44" + ], + [ + 6, + 4, + "gauge44" + ], + [ + 6, + 12, + "gauge44" + ], + [ + 7, + 3, + "gauge44" + ], + [ + 7, + 11, + "gauge44" + ], + [ + 8, + 2, + "gauge44" + ], + [ + 8, + 10, + "gauge44" + ], + [ + 4, + 7, + "gauge44" + ], + [ + 4, + 15, + "gauge44" + ], + [ + 5, + 6, + "gauge44" + ], + [ + 5, + 14, + "gauge44" + ], + [ + 6, + 5, + "gauge44" + ], + [ + 6, + 13, + "gauge44" + ], + [ + 7, + 4, + "gauge44" + ], + [ + 7, + 12, + "gauge44" + ], + [ + 8, + 3, + "gauge44" + ], + [ + 8, + 11, + "gauge44" + ], + [ + 5, + 7, + "gauge44" + ], + [ + 5, + 15, + "gauge44" + ], + [ + 6, + 6, + "gauge44" + ], + [ + 6, + 14, + "gauge44" + ], + [ + 7, + 5, + "gauge44" + ], + [ + 7, + 13, + "gauge44" + ], + [ + 8, + 4, + "gauge44" + ], + [ + 8, + 12, + "gauge44" + ], + [ + 6, + 7, + "gauge44" + ], + [ + 6, + 15, + "gauge44" + ], + [ + 7, + 6, + "gauge44" + ], + [ + 7, + 14, + "gauge44" + ], + [ + 8, + 5, + "gauge44" + ], + [ + 8, + 13, + "gauge44" + ], + [ + 7, + 7, + "gauge44" + ], + [ + 7, + 15, + "gauge44" + ], + [ + 8, + 6, + "gauge44" + ], + [ + 8, + 14, + "gauge44" + ], + [ + 8, + 7, + "gauge44" + ], + [ + 8, + 15, + "gauge44" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 8 + ], + [ + 0, + 1 + ], + [ + 0, + 9 + ], + [ + 1, + 0 + ], + [ + 1, + 8 + ], + [ + 0, + 2 + ], + [ + 0, + 10 + ], + [ + 1, + 1 + ], + [ + 1, + 9 + ], + [ + 2, + 0 + ], + [ + 2, + 8 + ], + [ + 0, + 3 + ], + [ + 0, + 11 + ], + [ + 1, + 2 + ], + [ + 1, + 10 + ], + [ + 2, + 1 + ], + [ + 2, + 9 + ], + [ + 3, + 0 + ], + [ + 3, + 8 + ], + [ + 0, + 4 + ], + [ + 0, + 12 + ], + [ + 1, + 3 + ], + [ + 1, + 11 + ], + [ + 2, + 2 + ], + [ + 2, + 10 + ], + [ + 3, + 1 + ], + [ + 3, + 9 + ], + [ + 4, + 0 + ], + [ + 4, + 8 + ], + [ + 0, + 5 + ], + [ + 0, + 13 + ], + [ + 1, + 4 + ], + [ + 1, + 12 + ], + [ + 2, + 3 + ], + [ + 2, + 11 + ], + [ + 3, + 2 + ], + [ + 3, + 10 + ], + [ + 4, + 1 + ], + [ + 4, + 9 + ], + [ + 5, + 0 + ], + [ + 5, + 8 + ], + [ + 0, + 6 + ], + [ + 0, + 14 + ], + [ + 1, + 5 + ], + [ + 1, + 13 + ], + [ + 2, + 4 + ], + [ + 2, + 12 + ], + [ + 3, + 3 + ], + [ + 3, + 11 + ], + [ + 4, + 2 + ], + [ + 4, + 10 + ], + [ + 5, + 1 + ], + [ + 5, + 9 + ], + [ + 0, + 7 + ], + [ + 0, + 15 + ], + [ + 6, + 0 + ], + [ + 6, + 8 + ], + [ + 1, + 6 + ], + [ + 1, + 14 + ], + [ + 2, + 5 + ], + [ + 2, + 13 + ], + [ + 3, + 4 + ], + [ + 3, + 12 + ], + [ + 4, + 3 + ], + [ + 4, + 11 + ], + [ + 5, + 2 + ], + [ + 5, + 10 + ], + [ + 6, + 1 + ], + [ + 6, + 9 + ], + [ + 1, + 7 + ], + [ + 1, + 15 + ], + [ + 7, + 0 + ], + [ + 7, + 8 + ], + [ + 2, + 6 + ], + [ + 2, + 14 + ], + [ + 3, + 5 + ], + [ + 3, + 13 + ], + [ + 4, + 4 + ], + [ + 4, + 12 + ], + [ + 5, + 3 + ], + [ + 5, + 11 + ], + [ + 6, + 2 + ], + [ + 6, + 10 + ], + [ + 7, + 1 + ], + [ + 7, + 9 + ], + [ + 2, + 7 + ], + [ + 2, + 15 + ], + [ + 8, + 0 + ], + [ + 8, + 8 + ], + [ + 3, + 6 + ], + [ + 3, + 14 + ], + [ + 4, + 5 + ], + [ + 4, + 13 + ], + [ + 5, + 4 + ], + [ + 5, + 12 + ], + [ + 6, + 3 + ], + [ + 6, + 11 + ], + [ + 7, + 2 + ], + [ + 7, + 10 + ], + [ + 8, + 1 + ], + [ + 8, + 9 + ], + [ + 3, + 7 + ], + [ + 3, + 15 + ], + [ + 4, + 6 + ], + [ + 4, + 14 + ], + [ + 5, + 5 + ], + [ + 5, + 13 + ], + [ + 6, + 4 + ], + [ + 6, + 12 + ], + [ + 7, + 3 + ], + [ + 7, + 11 + ], + [ + 8, + 2 + ], + [ + 8, + 10 + ], + [ + 4, + 7 + ], + [ + 4, + 15 + ], + [ + 5, + 6 + ], + [ + 5, + 14 + ], + [ + 6, + 5 + ], + [ + 6, + 13 + ], + [ + 7, + 4 + ], + [ + 7, + 12 + ], + [ + 8, + 3 + ], + [ + 8, + 11 + ], + [ + 5, + 7 + ], + [ + 5, + 15 + ], + [ + 6, + 6 + ], + [ + 6, + 14 + ], + [ + 7, + 5 + ], + [ + 7, + 13 + ], + [ + 8, + 4 + ], + [ + 8, + 12 + ], + [ + 6, + 7 + ], + [ + 6, + 15 + ], + [ + 7, + 6 + ], + [ + 7, + 14 + ], + [ + 8, + 5 + ], + [ + 8, + 13 + ], + [ + 7, + 7 + ], + [ + 7, + 15 + ], + [ + 8, + 6 + ], + [ + 8, + 14 + ], + [ + 8, + 7 + ], + [ + 8, + 15 + ] + ], + "width_spot_helpers": [ + 258, + 270, + 282, + 294 + ], + "providers": { + "gauge44": { + "inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "native_negative_controls": 25, + "phase_edges": 2904, + "expected_profile": { + "1": 2372, + "2": 494, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "01c5f60fb0cb2ae522ec926168281023f4315d2be76d75b0c5d5b341014a8c9e", + "LOCAL-PROGRAMS.json.gz": "0b74225d802107084e08cff09a658af6cb0399daab495db6e42b6d088730c0c4", + "LOCAL-CHECKS.json": "f5acbca2609d813e77c7de46deb406a0b381cf81d242d6536125a7106b90659d", + "INDEPENDENT-LOCAL-REPLAY.json": "ae1c832371024ab7c42ed2d02f0bea552df52f84f184959a47a236484b7c2dc2", + "CLIFFORD-RECIPES.json": "803271ac4098ce1bca6d3dcc20dd9e6eb650843ad2c07d98c93e1c78f0873463", + "CLIFFORD-REVIEW.json": "046e89ed60e9745cfc27c8d98e269d0bece9271b9f99f9aa00ee916c945ccff3", + "RESIDUAL-ADAPTERS.json": "f96536a306c4202865667b2a213b7dacb0292fe5354dc412c1d6022c8d68b4cd" + }, + "entering": 192, + "entrance": 372, + "width_digest": "1223f12ba6091bbd427fdbcbddda5217d24786c471102195cdfbbca562fcf27c", + "program_hashes": { + "backward": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22", + "forward": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + "artifacts": { + "LOCAL-CHECKS.json": "b6da3ccbc8a9422c8134b2fe351e783ea01390805afc1df433f9af38fb6f4861", + "CLIFFORD-RECIPES.json": "803271ac4098ce1bca6d3dcc20dd9e6eb650843ad2c07d98c93e1c78f0873463", + "RESIDUAL-ADAPTERS.json": "cc655002a80209e3935e7d2b9baede9437360e2d23238609712317b7fa26dc56" + }, + "complete_contract": { + "local": { + "backward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "prefix_bits": 68, + "coefficient_work_primitive_count": 98365, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "prefix_bits": 52, + "coefficient_work_primitive_count": 98333, + "all_exact_columns": 704, + "dirty_helper_columns": 480, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 240, + "post_wrappers": 240, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 480, + "centres": 8, + "v": 112, + "h": 9, + "n": 704, + "entering_helpers": 192, + "entrance_rank": 372, + "terminal_codimension": 214, + "hyperplane_ended_helpers": 78, + "cold_hyperplane_ended_helpers": 48, + "width_inventory": { + "4": 44, + "5": 44, + "7": 38, + "8": 114, + "9": 240 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 387120, + "local_primitive_bound": 10039700351134, + "compiler": 25934336, + "children": 3498, + "paid_profile": { + "1": 2372, + "2": 494, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "program_hashes": { + "backward": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22", + "forward": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "01c5f60fb0cb2ae522ec926168281023f4315d2be76d75b0c5d5b341014a8c9e", + "LOCAL-PROGRAMS.json.gz": "0b74225d802107084e08cff09a658af6cb0399daab495db6e42b6d088730c0c4", + "LOCAL-CHECKS.json": "f5acbca2609d813e77c7de46deb406a0b381cf81d242d6536125a7106b90659d", + "INDEPENDENT-LOCAL-REPLAY.json": "ae1c832371024ab7c42ed2d02f0bea552df52f84f184959a47a236484b7c2dc2", + "CLIFFORD-RECIPES.json": "803271ac4098ce1bca6d3dcc20dd9e6eb650843ad2c07d98c93e1c78f0873463", + "CLIFFORD-REVIEW.json": "046e89ed60e9745cfc27c8d98e269d0bece9271b9f99f9aa00ee916c945ccff3", + "RESIDUAL-ADAPTERS.json": "f96536a306c4202865667b2a213b7dacb0292fe5354dc412c1d6022c8d68b4cd" + } + }, + "semantic_phase_sha256": "046e89ed60e9745cfc27c8d98e269d0bece9271b9f99f9aa00ee916c945ccff3", + "expected_local": { + "forward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198766, + "prefix_l1": "2765345294379392599/1024", + "coefficient_work_primitive_count": 98333 + }, + "backward": { + "events": 24771, + "macros": 19693, + "real_component_primitives": 198814, + "prefix_l1": "14824960514781440791821/64", + "coefficient_work_primitive_count": 98365 + } + }, + "wrappers": 240 + } + }, + "expected": { + "gain_baseline_kappa": "0.001674622497877364", + "hosted_residuals": 69120, + "rank_mass": 1041408, + "actual_73column_sigmas": 10580, + "cross_replica_helper_roles": 59636, + "idle_remainders": 5279, + "idle_remainder_profile": { + "1": 360, + "24": 1, + "48": 4918 + }, + "global_profile": { + "1": 341928, + "2": 71136, + "3": 59328, + "4": 18720, + "5": 11808, + "8": 1152, + "24": 1, + "48": 4918 + }, + "live": 14336, + "physical": 14826, + "conservative_kappa_decimal": "0.001675121644942436", + "kappa_decimal": "0.001675121647789207", + "complex_lower": "13423459109255787537/8000000000000000000000", + "conservative_complex_lower": "13423459086405125339/8000000000000000000000", + "kappa": "1675121647789207/1000000000000000000", + "assembly_controls_rejected": 69, + "provider_counts": { + "gauge44": 144 + }, + "mutations_rejected": 15 + }, + "pivot_swap": { + "recipe": "construction/leaver/PIVOT-SWAP-k8.json", + "sha256": "3ef7acf0cf67442a532f25b53d5fbeda76d3a84524118df8e003ca69b5cac0bb" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/build_word.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/build_word.py new file mode 100644 index 0000000000..643da29584 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/build_word.py @@ -0,0 +1,14 @@ +"""Apply the frozen local-interface recipe; no optimization.""" +import argparse,gzip,hashlib,json +from pathlib import Path +P=Path(__file__).resolve().parent +def main(): + assert __debug__ + ap=argparse.ArgumentParser();ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();assert not a.out.exists() + raw=gzip.decompress((P.parent/'k8-eight-ends/FULL-WORD.json.gz').read_bytes());r=json.loads((P/'RECIPE.json').read_text());assert hashlib.sha256(raw).hexdigest()==r['input_content_sha256'];w=json.loads(raw) + for h,old,new in r['start_extra']:assert w['start_extra'][h]==old;w['start_extra'][h]=new + for sec in ['A','B']: + for i,old,new in r[sec]:assert w[sec][i][-1]==old;w[sec][i][-1]=new + for i,old,new in r['early_cleanup']:assert w['early_cleanup'][i][1]==old;w['early_cleanup'][i][1]=new + w['report']=r['report'];raw=json.dumps(w,sort_keys=True,separators=(',',':')).encode();assert hashlib.sha256(raw).hexdigest()==r['output_content_sha256'];a.out.write_bytes(gzip.compress(raw,mtime=0));print('PASS_THREE_DEMOTIONS_FROZEN_RECIPE') +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/controls.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/controls.py new file mode 100644 index 0000000000..cc25545569 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/controls.py @@ -0,0 +1,26 @@ +"""Semantic rejection controls for the changed local interfaces.""" +import argparse,contextlib,copy,gzip,importlib.util,io,json,tempfile +from pathlib import Path +P=Path(__file__).resolve().parent;ROOT=P.parents[1] +def main(): + assert __debug__ + ap=argparse.ArgumentParser();ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();assert not a.out.exists() + spec=importlib.util.spec_from_file_location('audit',ROOT/'research/gauge44-slots/independent/audit_local.py');A=importlib.util.module_from_spec(spec);spec.loader.exec_module(A) + word=json.loads(gzip.decompress((P/'FULL-WORD.json.gz').read_bytes()));recipe=json.loads((P/'RECIPE.json').read_text());rejected=[] + with tempfile.TemporaryDirectory(prefix='k8-demotion-controls-') as d: + d=Path(d) + def check(label,w): + f=d/'mutant.json.gz';f.write_bytes(gzip.compress(json.dumps(w).encode(),mtime=0)) + try: + with contextlib.redirect_stdout(io.StringIO()):A.run(f,d/'audit.json',ROOT) + except RuntimeError as e:rejected.append(dict(control=label,reason=str(e)));return + raise AssertionError('control admitted: '+label) + for h,old,new in recipe['start_extra']: + w=copy.deepcopy(word);w['start_extra'][h]=old;check('restore-promoted-start-'+h,w) + w=copy.deepcopy(word);gate=next(e for e in w['A']+w['B'] if int(h) in A.registers(e));gate[-1]=gate[-1][:-1];check('first-frame-too-small-'+h,w) + w=copy.deepcopy(word);w['report']['local_profile']['1']+=1;check('false-paid-profile',w) + w=copy.deepcopy(word);w['B'][next(i for i,e in enumerate(w['B']) if e[0]=='add' and 112<=e[1]<224)][3]+=1;check('wrong-target-coefficient',w) + w=copy.deepcopy(word);w['report']['width_inventory']['4']+=1;check('false-helper-inventory',w) + assert len(rejected)==27 + a.out.write_text(json.dumps(dict(status='PASS_THREE_DEMOTION_SEMANTIC_CONTROLS',rejected=rejected),indent=2)+'\n');print('PASS',len(rejected),'demotion controls') +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/COMBINED-DEMOTIONS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/COMBINED-DEMOTIONS.json.gz new file mode 100644 index 0000000000..d314387429 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/COMBINED-DEMOTIONS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/DEMOTION-4.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/DEMOTION-4.json.gz new file mode 100644 index 0000000000..9479a0c05a Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/DEMOTION-4.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/DEMOTION-5.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/DEMOTION-5.json.gz new file mode 100644 index 0000000000..5fa7da6010 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/DEMOTION-5.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/OWNER-SEARCH.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/OWNER-SEARCH.json.gz new file mode 100644 index 0000000000..b7f3d16b94 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/OWNER-SEARCH.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/OWNER-SEARCH.log.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/OWNER-SEARCH.log.gz new file mode 100644 index 0000000000..10226f7225 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/OWNER-SEARCH.log.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/PRODUCER-ELIMINATION.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/PRODUCER-ELIMINATION.json.gz new file mode 100644 index 0000000000..66e123f05e Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/PRODUCER-ELIMINATION.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/SCHEDULED-ELIMINATION.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/SCHEDULED-ELIMINATION.json.gz new file mode 100644 index 0000000000..c8945791d7 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/SCHEDULED-ELIMINATION.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/demote_entrances.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/demote_entrances.py new file mode 100644 index 0000000000..b8cdeab469 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/demote_entrances.py @@ -0,0 +1,33 @@ +"""Change local recursion interfaces: exhaustive codimension-one entrance choices.""" +import argparse,json,gzip,copy,time,sys,os +from pathlib import Path +from collections import defaultdict +P=Path(__file__).resolve().parent;ROOT=P.parents[2] +os.environ['K8_BASE_WORD']=str(ROOT/'research/k8-eight-ends/FULL-WORD.json.gz') +sys.path.insert(0,str(ROOT/'research/k8-eight-ends/discovery')) +import screen_end_groups as S +ap=argparse.ArgumentParser();ap.add_argument('--dimension',type=int,default=5);a=ap.parse_args() +groups=defaultdict(list) +for h,fr in S.w['start_extra'].items(): + if len(fr)==a.dimension:groups[tuple(fr)].append(int(h)) +results=[] +for fr,hs in groups.items(): + k=len(fr);subspaces=set() + for mask in range(1,1<>i&1:v^=x + vectors.append(v) + subspaces.add(S.M.basis(vectors)) + for j,start in enumerate(sorted(subspaces)): + t=time.monotonic();nw=copy.deepcopy(S.w) + for h in hs:nw['start_extra'][str(h)]=list(start) + try: + nw=S.optimize(nw);r=dict(helpers=hs,subspace=j,start=list(start),status='FRAME_FEASIBLE_NOMINATION',profile=nw['report']['local_profile'],**S.screen(nw)) + path=P/f'demote{a.dimension}-{hs[0]}-{j}.json.gz';path.write_bytes(gzip.compress(json.dumps(nw,sort_keys=True,separators=(',',':')).encode(),mtime=0));r['word']=path.name + except (AssertionError,RuntimeError,ValueError) as e:r=dict(helpers=hs,subspace=j,start=list(start),status='REJECTED',reason=str(e)) + r['seconds']=time.monotonic()-t;results.append(r);print(json.dumps(r),flush=True) + (P/f'DEMOTION-{a.dimension}.json').write_text(json.dumps(results,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/eliminate_helpers.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/eliminate_helpers.py new file mode 100644 index 0000000000..3da04596da --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/eliminate_helpers.py @@ -0,0 +1,74 @@ +"""Producer-side elimination of target-only helpers, with exact frame refitting.""" +import os,sys,json,gzip,copy,time,contextlib,io +from pathlib import Path +from fractions import Fraction as F +from collections import defaultdict +P=Path(__file__).resolve().parent;ROOT=P.parents[2] +os.environ['K8_BASE_WORD']=str(ROOT/'research/k8-eight-ends/FULL-WORD.json.gz') +sys.path.insert(0,str(ROOT/'research/k8-eight-ends/discovery')) +import screen_end_groups as S +A=S.mod('independent',ROOT/'research/gauge44-slots/independent/audit_local.py') +w=S.w + +def eliminate(word,h,schedule=None): + nw=copy.deepcopy(word);v=112 + assert h not in nw['centers'] + assert all(h not in A.registers(e) for e in nw['A']+nw['cut']+nw['precondition']), 'helper participates before B' + assert all(e[0]!='add' or e[2]!=h or e[1]==h for e in nw['cleanup']), 'cleanup uses helper as a source' + weight=defaultdict(F);chunks=[];recipe=[] + for i in range(len(nw['B'])-1,-1,-1): + e=nw['B'][i] + if e[0]=='add' and e[2]==h: + assert v<=e[1]<2*v + weight[e[1]]+=F(e[3],e[4]);chunks.append([]) + elif e[1]==h: + if e[0]=='scale': + q=F(e[2],e[3]);weight=defaultdict(F,{t:q*c for t,c in weight.items()});chunks.append([]) + else: + q=F(e[3],e[4]);repl=[['add',t,e[2],(q*c).numerator,(q*c).denominator,e[-1]] for t,c in sorted(weight.items()) if c] + chunks.append(repl);recipe.append(dict(B=i,old=e,new=repl)) + else: + if e[0]=='scale' and v<=e[1]<2*v:weight[e[1]]/=F(e[2],e[3]) + if e[0]=='add' and v<=e[2]<2*v: + assert v<=e[1]<2*v + weight[e[1]]-=F(e[3],e[4])*weight[e[2]] + chunks.append([e]) + assert not any(weight.values()),'nonzero helper entrance response' + if schedule is None:nw['B']=[e for chunk in reversed(chunks) for e in chunk] + else: + new=[] + for i,e in enumerate(nw['B']): + new.extend(copy.deepcopy(schedule.get(i,[]))) + if h not in A.registers(e):new.append(e) + new.extend(copy.deepcopy(schedule.get(len(nw['B']),[])));nw['B']=new + ci={};cl=[] + for i,e in enumerate(nw['cleanup']): + if h in A.registers(e):continue + ci[i]=len(cl);cl.append(e) + nw['cleanup']=cl;nw['early_cleanup']=[[ci[i],fr] for i,fr in nw['early_cleanup'] if i in ci] + for sec in ['A','B','cut','cleanup','precondition']: + for e in nw[sec]: + assert h not in A.registers(e) + for j in ([1,2] if e[0]=='add' else [1]):e[j]-=int(e[j]>h) + for sec in ['helper_final','start_extra']: + nw[sec]={str(int(k)-int(int(k)>h)):fr for k,fr in nw[sec].items() if int(k)!=h} + nw['centers']=[q-int(q>h) for q in nw['centers']] + for k in ['cold_low_frame_ended_helpers','entering_low_frame_ended_helpers']: + nw['refactored_cleanup'][k]=[q-int(q>h) for q in nw['refactored_cleanup'].get(k,[]) if q!=h] + nw['report']['R']-=1 + nw['refactored_cleanup']['producer_elimination']=dict(removed=h,recipe=recipe) + return nw,recipe + +if __name__=='__main__': + hs=[r['helper'] for r in json.loads((ROOT/'research/k8-eight-ends-t16/discovery/RETIRABLE-HELPERS.json').read_text())] + results=[] + for h in hs: + t=time.monotonic() + try: + nw,recipe=eliminate(w,h);nw=S.optimize(nw) + path=P/f'eliminate-{h}.json.gz';path.write_bytes(gzip.compress(json.dumps(nw,sort_keys=True,separators=(',',':')).encode(),mtime=0)) + with contextlib.redirect_stdout(io.StringIO()):A.run(path,P/f'eliminate-{h}-AUDIT.json',ROOT) + r=dict(helper=h,status='PASS_EXACT_LOCAL',profile=nw['report']['local_profile'],recipe=recipe,**S.screen(nw)) + except (AssertionError,RuntimeError,ValueError) as e:r=dict(helper=h,status='REJECTED',reason=str(e)) + r['seconds']=time.monotonic()-t;results.append(r);print(json.dumps(r),flush=True) + (P/'PRODUCER-ELIMINATION.json').write_text(json.dumps(results,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/pack_demotions.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/pack_demotions.py new file mode 100644 index 0000000000..3a0dcf2e91 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/pack_demotions.py @@ -0,0 +1,50 @@ +"""Assign widened local helpers to existing one-rank gaps by integral max flow.""" +import json,gzip,copy,argparse +from pathlib import Path +from collections import Counter,defaultdict +import numpy as np +from scipy.sparse import csr_matrix +from scipy.sparse.csgraph import maximum_flow +P=Path(__file__).resolve().parent;ROOT=P.parents[2];PRE=ROOT/'research/k8-eight-ends-t16' +ap=argparse.ArgumentParser();ap.add_argument('--groups',type=int,default=3);a=ap.parse_args() +rd=lambda f:json.loads(gzip.decompress(f.read_bytes()) if f.suffix=='.gz' else f.read_bytes()) +plan=rd(PRE/'PLAN.json.gz');roles=rd(PRE/'OWNERS.json.gz');word=(rd(P.parent/'FULL-WORD.json.gz') if a.groups==3 else rd(P/f'demote-first-{a.groups}.json.gz'));base=rd(ROOT/'research/k8-eight-ends/FULL-WORD.json.gz') +widths=[len(word['helper_final'].get(str(h),[0]*9))-len(word['start_extra'].get(str(h),[])) for h in range(224,704)] +oldwidth=[len(base['helper_final'].get(str(h),[0]*9))-len(base['start_extra'].get(str(h),[])) for h in range(224,704)] +changed=[h for h in range(480) if widths[h]!=oldwidth[h]];assert len(changed)==4*a.groups and all((oldwidth[h],widths[h])==(4,5) for h in changed) +used=Counter();occupants=defaultdict(list);calls=defaultdict(list) +for j,z in enumerate(roles): + key=z['owner_replica'],z['child'],z['port'];used[key]+=z['width'];occupants[key].append(j);calls[z['time']].append(j) +gaps=[key for key,n in used.items() if plan['windows'][f'{key[0]},{key[1]}'][0]-n==1] +rr=[];cc=[];vals=[];sink=145+len(gaps) +for t in range(144):rr.append(0);cc.append(1+t);vals.append(len(changed)) +edge={} +for k,key in enumerate(gaps): + node=145+k;rr.append(node);cc.append(sink);vals.append(1) + for j in occupants[key]: + z=roles[j] + if z['width']==4:rr.append(1+z['time']);cc.append(node);vals.append(1);edge[z['time'],node]=j +net=csr_matrix((np.array(vals,dtype=np.int64),(rr,cc)),shape=(sink+1,sink+1));f=maximum_flow(net,0,sink);print('flow',f.flow_value,'required',144*len(changed),flush=True);assert f.flow_value==144*len(changed) +expanded=defaultdict(list) +for (t,node),j in edge.items(): + if f.flow[1+t,node]:expanded[t].append(j) +out=copy.deepcopy(roles) +for t,js in calls.items(): + targetslots=set(expanded[t]);changedroles=[j for j in js if roles[j]['helper'] in changed] + otherroles=[j for j in js if roles[j]['width']==4 and j not in changedroles] + otherslots=[j for j in js if roles[j]['width']==4 and j not in targetslots] + for source,slot in zip(changedroles+otherroles,sorted(targetslots)+otherslots): + for field in ['owner_replica','child','port','copy','family']:out[source][field]=roles[slot][field] + for j in js:out[j]['width']=widths[out[j]['helper']] +offset=Counter();families=defaultdict(set) +for z in out: + key=z['owner_replica'],z['child'],z['port'];z['offset']=offset[key];offset[key]+=z['width'];cap,times=plan['windows'][f'{key[0]},{key[1]}'];assert offset[key]<=cap and z['time'] in times;assert z['family'] not in families[z['time']];families[z['time']].add(z['family']) +idle=Counter() +for key,(cap,times) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(112): + rem=cap-offset[rep,ch,port] + if rem:idle[rem]+=1 +H=Counter({int(r):144*n for r,n in word['report']['local_profile'].items()});H.update(idle);plan['profile']={str(r):n for r,n in sorted(H.items())};plan['provider_registry']['gauge44']['widths']=widths;plan['provider_registry']['gauge44']['actual_paid_profile']=word['report']['local_profile'] +for c in plan['per_call_widths']:c['widths']=widths +outdir=P/f'packed-{a.groups}';outdir.mkdir(exist_ok=True);(outdir/'OWNERS.json.gz').write_bytes(gzip.compress(json.dumps(out,sort_keys=True,separators=(',',':')).encode(),mtime=0));(outdir/'PLAN.json').write_text(json.dumps(plan,indent=2)+'\n');(outdir/'PACKING.json').write_text(json.dumps(dict(status='INTEGER_FEASIBLE_NOMINATION',changed_helpers=changed,unit_gaps_consumed=int(f.flow_value),idle=dict(sorted(idle.items())),profile=plan['profile']),indent=2)+'\n');print(dict(idle),plan['profile']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/repair_pack.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/repair_pack.py new file mode 100644 index 0000000000..adf5c2d7af --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/repair_pack.py @@ -0,0 +1,43 @@ +"""Repair a changed width inventory by complete-call transportation.""" +import json,gzip,math,random +from pathlib import Path +from collections import Counter,defaultdict +import numpy as np +from scipy.optimize import linprog +from scipy.sparse import coo_matrix +P=Path(__file__).resolve().parent;ROOT=P.parents[2];PRE=ROOT/'research/k8-eight-ends-t16' +rd=lambda f:json.loads(gzip.decompress(f.read_bytes()) if f.suffix=='.gz' else f.read_bytes()) +plan=rd(PRE/'PLAN.json.gz');roles=rd(PRE/'OWNERS.json.gz');w=rd(P.parent/'FULL-WORD.json.gz');widths=[len(w['helper_final'].get(str(h),[0]*9))-len(w['start_extra'].get(str(h),[])) for h in range(224,704)] +bins=[];lookup={};eligible=defaultdict(list) +for key,(cap,times) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(112): + fam=rep*896+(2*plan['pairs'][str(ch)]+plan['sides'][str(ch)])*112+port;i=len(bins);bins.append((rep,ch,port,cap,fam));lookup[rep,ch,port]=i + for t in times:eligible[t].append(i) +bycall=defaultdict(list);assignment=[];used=np.zeros(len(bins),dtype=int) +for j,z in enumerate(roles): + i=lookup[z['owner_replica'],z['child'],z['port']];assignment.append(i);bycall[z['time']].append(j) + if z['width']==widths[z['helper']]:used[i]+=z['width'] + else:assignment[-1]=-1 + z['width']=widths[z['helper']] +cap=np.array([b[3] for b in bins]);phi=np.array([r*math.expm1(.001678*math.log(73/r))/.001678 if r else 0 for r in range(49)]) +for t,js in bycall.items(): + for j in js: + if assignment[j]>=0:used[assignment[j]]-=roles[j]['width'] + dem=Counter(roles[j]['width'] for j in js);groups=defaultdict(list) + for i in eligible[t]: + if cap[i]-used[i]>=min(dem):groups[int(cap[i]-used[i])].append(i) + ws=sorted(dem);vs=sorted(groups);edges=[(w,v) for w in ws for v in vs if w<=v];rr=[];cc=[];dd=[] + for k,(ww,v) in enumerate(edges):rr.extend([ws.index(ww),len(ws)+vs.index(v)]);cc.extend([k,k]);dd.extend([1,1]) + A=coo_matrix((dd,(rr,cc)),shape=(len(ws)+len(vs),len(edges))).tocsr();c=np.array([phi[v-ww]-phi[v] for ww,v in edges]);b=np.array([dem[ww] for ww in ws]+[len(groups[v]) for v in vs]);res=linprog(c,A_eq=A[:len(ws)],b_eq=b[:len(ws)],A_ub=A[len(ws):],b_ub=b[len(ws):],bounds=(0,None),method='highs');assert res.success,(t,res.message);xx=np.rint(res.x).astype(int);assert np.max(abs(xx-res.x))<1e-5 and np.array_equal(A[:len(ws)]@xx,b[:len(ws)]) and np.all(A[len(ws):]@xx<=b[len(ws):]) + helpers=defaultdict(list) + for j in js:helpers[roles[j]['width']].append(j) + for (ww,v),n in zip(edges,xx): + for _ in range(n):i=groups[v].pop();j=helpers[ww].pop();assignment[j]=i;used[i]+=ww +assert all(i>=0 for i in assignment) and np.all(used<=cap) +offset=Counter();out=[] +for j,z in enumerate(roles): + i=assignment[j];rep,ch,port,cp,fam=bins[i];out.append(z|dict(owner_replica=rep,child=ch,port=port,copy=rep*112+port,family=fam,offset=offset[i]));offset[i]+=z['width'] +idle=Counter(int(x) for x in cap-used if x);H=Counter({int(r):144*n for r,n in w['report']['local_profile'].items()});H.update(idle);plan['profile']={str(r):n for r,n in sorted(H.items())};plan['provider_registry']['gauge44']['widths']=widths;plan['provider_registry']['gauge44']['actual_paid_profile']=w['report']['local_profile'] +for c in plan['per_call_widths']:c['widths']=widths +outdir=P/'repair3';outdir.mkdir(exist_ok=True);(outdir/'OWNERS.json.gz').write_bytes(gzip.compress(json.dumps(out,sort_keys=True,separators=(',',':')).encode(),mtime=0));(outdir/'PLAN.json').write_text(json.dumps(plan,indent=2)+'\n');print('PASS_REPAIR',dict(sorted(idle.items()))) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/schedule_elimination.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/schedule_elimination.py new file mode 100644 index 0000000000..a682791a05 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/schedule_elimination.py @@ -0,0 +1,99 @@ +"""Enumerate constant-value delivery windows and exact frame-domain candidates.""" +import json,gzip,copy,itertools,time,contextlib,io +from collections import defaultdict +from fractions import Fraction as F +from functools import lru_cache +import eliminate_helpers as E +P,ROOT,w,S,A=E.P,E.ROOT,E.w,E.S,E.A +FULL=S.M.FULL +@lru_cache(None) +def join(a,b):return A.basis(a+b) +@lru_cache(None) +def meet(a,b):return S.M.meet(a,b) +def inside(a,b):return join(a,b)==b + +def windows(h): + n=704;cur=[(p,) for p in w['ports']]+[()]*(n-112) + for q,fr in w['start_extra'].items():cur[int(q)]=A.basis(fr) + cur[h]=() + for e in w['A']: + rs=A.registers(e);U=cur[rs[0]] + for r in rs[1:]:U=join(U,cur[r]) + for r in rs:cur[r]=U + for q,fr in zip(w['centers'],w['center_frames']): + assert inside(cur[q],A.basis(fr));cur[q]=A.basis(fr) + lo=[] + for e in w['B']: + lo.append(cur.copy()) + if h in A.registers(e):continue + rs=A.registers(e);U=cur[rs[0]] + for r in rs[1:]:U=join(U,cur[r]) + for r in rs:cur[r]=U + lo.append(cur.copy()) + hi=[FULL]*112+[A.basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) for p in w['ports']]+[FULL]*480 + for q,fr in w['helper_final'].items():hi[int(q)]=A.basis(fr) + hi[h]=() + for i,fr in reversed(w['early_cleanup']): + e=w['cleanup'][i] + if h in A.registers(e):continue + rs=A.registers(e);U=hi[rs[0]] + for r in rs[1:]:U=meet(U,hi[r]) + for r in rs:hi[r]=U + after=[hi.copy()] + for e in reversed(w['B']): + if h not in A.registers(e): + rs=A.registers(e);U=hi[rs[0]] + for r in rs[1:]:U=meet(U,hi[r]) + for r in rs:hi[r]=U + after.append(hi.copy()) + return lo,list(reversed(after)) + +def move(vec,e,forward): + u=defaultdict(F,vec) + if 112<=e[1]<224: + if e[0]=='scale':u[e[1]]=u[e[1]]*F(e[2],e[3]) if forward else u[e[1]]/F(e[2],e[3]) + elif 112<=e[2]<224:u[e[1]]+=(1 if forward else -1)*F(e[3],e[4])*u[e[2]] + return {t:q for t,q in u.items() if q} + +def deliveries(h,r,lo,hi): + pos=r['B'];src=r['old'][2];v={e[1]:F(e[3],e[4]) for e in r['new']};B=w['B'] + left=max([-1]+[i for i,e in enumerate(B[:pos]) if e[1]==src])+1 + right=min([len(B)]+[i for i,e in enumerate(B) if i>=pos and e[1]==src]) + vectors={pos:v};cur=v + for i in range(pos-1,left-1,-1):cur=move(cur,B[i],False);vectors[i]=cur + cur=v + for i in range(pos,right):cur=move(cur,B[i],True);vectors[i+1]=cur + found=[];seen=set();tested=0 + for at,vec in sorted(vectors.items()): + assert len(vec)<=8 + for order in itertools.permutations(sorted(vec)): + tested+=1;f=lo[at][src];gates=[];valid=True + for t in order: + f=join(f,lo[at][t]) + if not inside(f,hi[at][src]) or not inside(f,hi[at][t]):valid=False;break + q=vec[t];gates.append(['add',t,src,q.numerator,q.denominator,list(f)]) + if valid: + key=tuple((g[1],g[3],g[4],tuple(g[-1])) for g in gates)+(tuple(hi[at][src]),) + if key not in seen:found.append(dict(position=at,gates=gates));seen.add(key) + return dict(source=src,original_position=pos,left=left,right=right,placements_tested=tested,candidates=found) + +if __name__=='__main__': + results=[] + for old in json.loads((P/'PRODUCER-ELIMINATION.json').read_text()): + h=old['helper'];t0=time.monotonic() + try: + _,recipe=E.eliminate(w,h);lo,hi=windows(h);ds=[deliveries(h,r,lo,hi) for r in recipe] + r=dict(helper=h,status='NO_ADMITTED_REPLACEMENT',deliveries=ds,combinations_tested=0,local_pass=[]) + options=[d['candidates'] for d in ds] + for combo in itertools.product(*options): + r['combinations_tested']+=1;schedule=defaultdict(list) + for c in combo:schedule[c['position']]+=c['gates'] + try: + nw,_=E.eliminate(w,h,schedule);nw=S.optimize(nw);path=P/f'scheduled-{h}-{r["combinations_tested"]}.json.gz';path.write_bytes(gzip.compress(json.dumps(nw,sort_keys=True,separators=(',',':')).encode(),mtime=0)) + with contextlib.redirect_stdout(io.StringIO()):A.run(path,path.with_suffix('.AUDIT.json'),ROOT) + rr=dict(path=path.name,schedule=dict(schedule),profile=nw['report']['local_profile'],**S.screen(nw));r['local_pass'].append(rr);r['status']='PASS_EXACT_LOCAL';print('FOUND',json.dumps(rr),flush=True) + except (AssertionError,RuntimeError,ValueError) as e:r['last_rejection']=str(e) + if r['combinations_tested']>=100:r['combination_limit']=100;break + except (AssertionError,RuntimeError,ValueError) as e:r=dict(helper=h,status='REJECTED_PRECONDITION',reason=str(e)) + r['seconds']=time.monotonic()-t0;results.append(r);print({k:v for k,v in r.items() if k not in ['deliveries','local_pass']},'candidate counts',[len(d['candidates']) for d in r.get('deliveries',[])],flush=True) + (P/'SCHEDULED-ELIMINATION.json').write_text(json.dumps(results,indent=2)+'\n') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/search_columns.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/search_columns.py new file mode 100644 index 0000000000..c795771863 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/discovery/search_columns.py @@ -0,0 +1,101 @@ +"""Large-call-block nomination via knapsack column generation and integer patterns. +Baseline columns guarantee a literal feasible point. All final integer equations and +owner assignments are checked; separate unchanged physical admission is mandatory. +""" +import argparse,gzip,json,math,random,time +from pathlib import Path +from collections import Counter,defaultdict +import numpy as np +from scipy.optimize import linprog,milp,Bounds,LinearConstraint +from scipy.sparse import coo_matrix +ap=argparse.ArgumentParser();ap.add_argument('--input',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);ap.add_argument('--passes',type=int,default=12);ap.add_argument('--block',type=int,default=12);ap.add_argument('--seed',type=int,default=263);ap.add_argument('--limit',type=float,default=5);ap.add_argument('--rounds',type=int,default=30);a=ap.parse_args();rng=random.Random(a.seed);plan=json.loads((a.input/'PLAN.json').read_text());roles=json.loads(gzip.decompress((a.input/'OWNERS.json.gz').read_bytes()));N=len(plan['order']);bins=[];eligible=defaultdict(set);lookup={} +for key,(cap,times) in plan['windows'].items(): + rep,ch=map(int,key.split(',')) + for port in range(112): + fam=rep*896+(2*plan['pairs'][str(ch)]+plan['sides'][str(ch)])*112+port;i=len(bins);bins.append((rep,ch,port,cap,fam));lookup[rep,ch,port]=i + for t in times:eligible[t].add(i) +bycall=defaultdict(list);assignment=[];used=np.zeros(len(bins),dtype=int) +for j,z in enumerate(roles): + i=lookup[z['owner_replica'],z['child'],z['port']];assignment.append(i);used[i]+=z['width'];bycall[z['time']].append(j) +cap=np.array([z[3] for z in bins]);phi=np.array([r*math.expm1(.0016775*math.log(73/r))/.0016775 if r else 0 for r in range(49)]) +def cost():return float(phi[cap-used].sum()) +trace=[] +def save(): + offsets=Counter();out=[] + for j,z in enumerate(roles): + i=assignment[j];rep,ch,port,cp,fam=bins[i];out.append(z|dict(owner_replica=rep,child=ch,port=port,copy=rep*112+port,family=fam,offset=offsets[i]));offsets[i]+=z['width'] + assert all(offsets[i]==used[i]<=cap[i] for i in range(len(bins))) + a.out.mkdir(exist_ok=True,parents=True);(a.out/'OWNERS.json.gz').write_bytes(gzip.compress(json.dumps(out,sort_keys=True,separators=(',',':')).encode(),mtime=0));idle=Counter(int(x) for x in cap-used if x);H=Counter({int(r):n*N for r,n in plan['provider_registry']['gauge44']['actual_paid_profile'].items()});H.update(idle);(a.out/'PLAN.json').write_text(json.dumps(plan|dict(profile={str(r):n for r,n in sorted(H.items())}),indent=2)+'\n');(a.out/'SEARCH.json').write_text(json.dumps(dict(seed=a.seed,cost=cost(),idle=dict(sorted(idle.items())),trace=trace),indent=2)+'\n') +initial=cost();print('initial',initial,flush=True) +for iteration in range(a.passes): + begin=time.monotonic();B=a.block;ws=[4,5,7,8,9];occupants=defaultdict(list) + for j,i in enumerate(assignment):occupants[i].append(roles[j]['time']) + if iteration%3==0: + t=rng.randrange(N-B+1);ts=list(range(t,t+B)) + else: + choices=[i for i in occupants if cap[i]==48 and 0>k&1 for k,w in enumerate(p));known.add((g,p));patterns.append((g,p));costs.append(phi[v-sum(p)]-phi[v]) + baseline=defaultdict(lambda:[0]*B) + for j,i in old.items(): + k=ts.index(roles[j]['time']);assert baseline[i][k]==0;baseline[i][k]=roles[j]['width'] + for g,key in enumerate(keys): + add(g,[0]*B) + for i in groups[key]: + if i in baseline:add(g,baseline[i]) + def matrix(): + rr=[];cc=[];vals=[] + for col,(g,p) in enumerate(patterns): + rr.append(g);cc.append(col);vals.append(1) + for k,w in enumerate(p): + if w:rr.append(len(keys)+k*len(ws)+ws.index(w));cc.append(col);vals.append(1) + return coo_matrix((vals,(rr,cc)),shape=(len(rhs),len(patterns))).tocsc() + lp=None;pricing=[] + for rnd in range(a.rounds): + A=matrix();lp=linprog(np.array(costs),A_eq=A,b_eq=rhs,bounds=(0,None),method='highs');assert lp.success,lp.message;dual=lp.eqlin.marginals;before=len(patterns);best_rc=0 + beta=dual[len(keys):].reshape(B,len(ws)) + for g,(v,mask) in enumerate(keys): + dp=np.full(v+1,-np.inf);dp[0]=0;parents=[] + for k in range(B): + new=dp.copy();pick=np.zeros(v+1,dtype=int) + if mask>>k&1: + for wi,w in enumerate(ws): + if w>v:continue + cand=dp[:-w]+beta[k,wi];where=np.flatnonzero(cand>new[w:]+1e-10)+w;new[where]=cand[where-w];pick[where]=w + dp=new;parents.append(pick) + reduced=phi[v-np.arange(v+1)]-phi[v]-dp-dual[g] + for fill in np.argsort(reduced)[:2]: + rc=float(reduced[fill]);best_rc=min(best_rc,rc) + if rc>=-1e-7:continue + rem=int(fill);pat=[0]*B + for k in range(B-1,-1,-1):pat[k]=int(parents[k][rem]);rem-=pat[k] + assert rem==0;add(g,pat) + pricing.append(dict(round=rnd,columns=len(patterns),added=len(patterns)-before,min_reduced_cost=best_rc,lp_gain=oldcost-float(phi[cap-used].sum()+lp.fun))) + if rnd%10==0:print('pricing',iteration,pricing[-1],flush=True) + if len(patterns)==before:break + A=matrix();sol=milp(np.array(costs),integrality=np.ones(len(patterns)),bounds=Bounds(0,np.inf),constraints=LinearConstraint(A,rhs,rhs),options=dict(time_limit=a.limit,mip_rel_gap=0));accept=False + if sol.x is not None: + xx=np.rint(sol.x).astype(int) + if max(abs(xx-sol.x))<1e-5 and np.array_equal(A@xx,rhs) and float(phi[cap-used].sum()+np.dot(costs,xx)) cap: + continue + count += 1 + r = cap-used + value = bonus+sum(p*n for p, n in zip(PRICES, vector)) + upper[r] = max(upper.get(r, -10**6), value) + alt = {} + for cap, (_, bonus) in CAPACITIES.items(): + scores = [None]*(cap+1) + scores[0] = 0 + for fill in range(cap+1): + if scores[fill] is None: + continue + for width, price in zip(WIDTHS, PRICES): + nxt = fill+width + if nxt <= cap: + proposal = scores[fill]+price + if scores[nxt] is None or proposal > scores[nxt]: + scores[nxt] = proposal + for fill, value in enumerate(scores): + if value is not None: + alt[cap-fill] = max(alt.get(cap-fill, -10**6), value+bonus) + need(upper == alt and count == 1163, 'two independently structured dual enumerations') + return upper, count + + +def phi_pair(engine, kind, r, z): + if kind == 'mercator': + a, b = engine.logarithm(Q(73, r)) + a, b = engine.exponential(z*a, z*b) + else: + a, b = engine.log_bounds(Q(73, r)) + a, b = engine.exp_bounds(z*a)[0], engine.exp_bounds(z*b)[1] + return r*a, r*b + + +def ratio_certificate(engine, kind, upper, z): + phi = {r: phi_pair(engine, kind, r, z) for r in upper if r} + cost = {r: (48*lo-r*phi[48][1], 48*hi-r*phi[48][0]) + for r, (lo, hi) in phi.items() if r < 48} + credit = {r: 48*upper[r]+13*r for r in cost} + need(credit[1] == 925, 'rank-one credit') + need(all(a > 0 for a, b in cost.values()), 'positive non48 costs') + # c(r)-v(r)*c(1)/925 > 0 at every r != 1, so a single + # multiplier gives a supporting inequality for every count vector. + margins = {} + for r, (lo, hi) in cost.items(): + if r == 1: + continue + c = credit[r] + rhs = c*cost[1][1 if c >= 0 else 0]/925 + margins[r] = lo-rhs + need(margins[r] > 0, 'rank-one strictly optimal cost/credit ratio: '+str(r)) + return dict(credit=credit, multiplier_interval=[str(cost[1][0]/925), str(cost[1][1]/925)], + strict_margin_by_rank={r: str(x) for r, x in margins.items()}, + minimum_strict_margin=str(min(margins.values()))) + + +def main(out): + for relative, expected in PINS.items(): + need(hashlib.sha256((ROOT/relative).read_bytes()).hexdigest() == expected, 'source drift: '+relative) + M = load(ENGINE+'moment.py', 'retained_mercator') + B = load(ENGINE+'base_two_moment.py', 'retained_atanh') + plan = json.loads(gzip.decompress((ROOT/'research/k8-three-demotions/PLAN.json.gz').read_bytes())) + provider = plan['provider_registry']['gauge44'] + local = {int(r): n for r, n in provider['actual_paid_profile'].items()} + need(Counter(provider['widths']) == INVENTORY, 'fixed helper inventory') + actual_caps = Counter(v[0] for v in plan['windows'].values()) + need({c: n*112//plan['T'] for c, n in actual_caps.items()} == + {c: n for c, (n, _) in CAPACITIES.items()}, 'fixed bin inventory per replica') + upper, vectors = dual_tables() + mass = sum(c*n for c, (n, _) in CAPACITIES.items())-9*sum(r*n for r, n in INVENTORY.items()) + signed = sum(n*p for n, p in CAPACITIES.values())+9*sum(INVENTORY[r]*p for r, p in zip(WIDTHS, PRICES)) + need((mass, signed, upper[0], upper[48]) == (14778, -3568, 0, -13), 'fixed-family coefficients') + credit = 48*signed+13*mass + need(credit == 20850 and Q(credit, 925) == Q(834, 37), 'dual credit demand') + T = 37 + idle = {1: 834, 48: 11374} + need(sum(r*n for r, n in idle.items()) == mass*T, 'formal relaxed idle mass') + need(sum(upper[r]*n for r, n in idle.items()) == signed*T, 'dual equality') + profile = Counter({r: 9*T*n for r, n in local.items()}) + profile.update(idle) + live = 896*T + need(73*live-sum(r*n for r, n in profile.items()) == 320*T, 'rank deficit') + root = M.certify(profile, 73, live, False) + lo, hi = Q(root['lower']), Q(root['upper']) + signs = {} + for name, z in [('lower', lo), ('upper', hi)]: + first = M.moment(profile, 73, live, z) + second = B.moment(73, live, list(profile.items()), z) + need(first[1] < 1 and second[1] < 1 if name == 'lower' else first[0] > 1 and second[0] > 1, + 'two exact moment signs at '+name) + signs[name] = dict(endpoint=str(z), mercator=[str(x-1) for x in first], + atanh=[str(x-1) for x in second]) + certs = {kind: ratio_certificate(engine, kind, upper, hi) + for kind, engine in [('mercator', M), ('atanh', B)]} + # The retained outer recipe always has a < b and kappa < a/(1+a). + # Therefore b < hi implies kappa < hi/(1+hi), without assuming that + # this formal relaxed profile can pass any finite or physical admission. + ceiling = hi/(1+hi) + ticks = ceiling*10**18 + grid = Q((ticks.numerator-1)//ticks.denominator, 10**18) + result = dict(status='PASS_ALL_T_K8_THREE_DEMOTIONS_SIGNED_DUAL_UPPER_RELAXATION', + scope='All positive integer replica counts, fixed k8-three-demotions local word and widths, nine calls and 896 live wires per replica, whole helpers and fixed 8/16/32/48 bin inventory. Geometry, time windows, finite invoice and physical realization are relaxed. This does not construct a supplier at the upper bound and does not cover different circuits, split helpers, banks or recursion geometries.', + dual_bin_vectors=vectors, upper=upper, mass_per_replica=mass, + signed_price_per_replica=signed, credit_per_replica=credit, + normalized_idle={'1': '834/37', '48': '11374/37'}, + equality_requires_replica_count_multiple_of=37, + formal_profile=dict(replicas=T, idle=idle, profile=dict(sorted(profile.items())), + live=live, deficit=320*T), + root=root, two_engine_signs=signs, supporting_inequalities=certs, + kappa_strict_rational_upper=str(ceiling), kappa_strict_upper_decimal=M.decimal(ceiling), + all_T_grid_upper=str(grid), all_T_grid_upper_decimal=M.decimal(grid), + source_sha256=PINS) + need(not out.exists(), 'output preservation: choose a new file') + out.write_text(json.dumps(result, indent=2)+'\n') + print(result['status'], result['all_T_grid_upper_decimal']) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--out', type=Path, required=True) + main(parser.parse_args().out) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/run_global.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/run_global.py new file mode 100644 index 0000000000..4ba10b2e84 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/run_global.py @@ -0,0 +1,76 @@ +"""Replay a changed local word on the pinned, independently checked T16 geometry. + +Only the driver is new. Every admission, invoice, arithmetic, mutation and +independent-window engine is byte-identical to the credited PR1074 source. +""" +import argparse,gzip,hashlib,json,os,shutil,subprocess,sys,time +from fractions import Fraction as Q +from pathlib import Path +P=Path(__file__).resolve().parent;ROOT=P.parents[1];PRE=ROOT/'research/k8-eight-ends-t16' +def rd(p): + p=Path(p);return json.loads(gzip.decompress(p.read_bytes()) if p.suffix=='.gz' else p.read_bytes()) +def sha(p):return hashlib.sha256(Path(p).read_bytes()).hexdigest() +def dump(p,x):Path(p).write_text(json.dumps(x,indent=2)+'\n') + +def main(): + assert __debug__ + ap=argparse.ArgumentParser();ap.add_argument('--local',type=Path,required=True);ap.add_argument('--parent-work',type=Path,required=True);ap.add_argument('--data',type=Path,required=True);ap.add_argument('--work',type=Path,required=True);ap.add_argument('--discover',action='store_true');a=ap.parse_args() + local,parent,data,work=[p.resolve() for p in [a.local,a.parent_work,a.data,a.work]];assert not work.exists();work.mkdir(parents=True) + assert rd(parent/'RESULT.json')['status']=='PASS_K8_EIGHT_ENDS_T16_COMPLETE_ADMISSION' + for rel,h in rd(P/'PARENT-PINS.json').items():assert sha(parent/rel)==h,rel + plan=rd(data/'PLAN.json');old=rd(PRE/'PLAN.json.gz');spec=rd(data/'SPEC.json');word=rd(local/'CANONICAL-WORD.json.gz') + for key in ('K','T','M','L','live','deficit','order','windows','sides','pairs','replica_lift'):assert plan[key]==old[key],('geometry changed',key) + for oldcall,newcall in zip(old['provider_calls'],plan['provider_calls']): + assert {k:v for k,v in oldcall.items() if k!='local_program_sha256'}=={k:v for k,v in newcall.items() if k!='local_program_sha256'} + assert len(plan['provider_calls'])==len(old['provider_calls'])==144 + assert word['ports']==old['provider_registry']['gauge44']['ports'] and word['centers']==old['provider_registry']['gauge44']['centers'] + runtime=work/'runtime';shutil.copytree(PRE/'vendor/pr1074',runtime,ignore=shutil.ignore_patterns('__pycache__')) + for name in ('PLAN.json','OWNERS.json.gz','SPEC.json'):shutil.copy2(data/name,runtime/'data'/name) + data=runtime/'data' + source=ROOT/'research/complex-k492-owner-repair/vendor/multicold';vendor=source/'vendor/pr558/vendor/pr552/complex-global/vendor531' + for rel,h in rd(runtime/'data/UPSTREAM-PINS.json').items():assert sha(ROOT/rel)==h,rel + for rel,pins in rd(PRE/'UPSTREAM.json')['files'].items():assert sha(runtime/rel)==pins['sha256'] + env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0',MULTICOLD_SOURCE=str(source),GAIN_PR564_SOURCE=str(source)) + for k in ('PYTHONOPTIMIZE','WITNESS_DISCOVER','WITNESS_RECORD','WITNESS_SPEC'):env.pop(k,None) + env['WITNESS_SPEC']=str(data/'SPEC.json') + if a.discover:env.update(WITNESS_DISCOVER='1',WITNESS_RECORD=str(work/'WITNESS-RECORD.jsonl')) + stages=[] + def run(name,script,*args,extra=None): + t=time.monotonic();log=work/(name+'.log') + with log.open('w') as f:r=subprocess.run([sys.executable,'-B',str(source/'code/run_portable.py'),str(script),*map(str,args)],cwd=ROOT,env=dict(env,**(extra or {})),stdout=f,stderr=subprocess.STDOUT) + stages.append(dict(step=name,exit_code=r.returncode,seconds=time.monotonic()-t,log_sha256=sha(log)));dump(work/'STAGES.json',stages);assert r.returncode==0,(name,log.read_text()[-6000:]);print('PASS',name,flush=True) + code=runtime/'code';g=work/'global' + run('bind',code/'bind_providers_portable.py','--baseline',parent/'t16/parent16','--provider','gauge44='+str(local),'--plan',data/'PLAN.json','--out',g) + run('emit',code/'emit_allcold.py','--base',g/'base','--owners',data/'OWNERS.json.gz','--plan',g/'PLAN.json','--out',g/'hosted') + run('audit',code/'audit_allcold.py',g/'base',g/'hosted',g/'audit/ASYNC-AUDIT.json','--mutation-controls') + run('invoice',code/'invoice_allcold.py','--base',g/'base','--hosted',g/'hosted','--audit',g/'audit','--out',g/'audit','--retained-invoice',vendor/'evidence/audit/PREFIX-AND-INVOICE.json') + run('assembly',code/'assemble.py',source,g,work/'ASSEMBLY.json') + if a.discover: + print('NOMINATED',rd(work/'ASSEMBLY.json')['kappa_decimal']);return + for name,script,out in [('admission-controls','assembly_controls.py','ADMISSION-CONTROLS.json'),('bit-supplier-controls','bit_supplier_controls.py','BIT-SUPPLIER-CONTROLS.json')]: + run(name,code/script,'--source-package',source,'--owner',g/'audit/OWNERS-AND-PROFILE.json','--invoice',g/'audit/PREFIX-AND-INVOICE.json','--out',work/out) + run('independent-t16',runtime/'t16/indep16.py','--baseline-parent',parent/'t16/global8/base/split-centres/GLOBAL-TEMPLATE.json.gz','--owners',data/'OWNERS.json.gz','--word',local/'CANONICAL-WORD.json.gz','--out',work/'INDEPENDENT-T16.json',extra={'T16_EXPECTED_IDLE':json.dumps(spec['expected']['idle_remainder_profile']),'T16_EXPECTED_WIDTHS':json.dumps(spec['providers']['gauge44']['inventory'])}) + asm=rd(work/'ASSEMBLY.json');ind=rd(work/'INDEPENDENT-T16.json');inv=rd(g/'audit/PREFIX-AND-INVOICE.json');owner=rd(g/'audit/OWNERS-AND-PROFILE.json');audit=rd(g/'audit/ASYNC-AUDIT.json');ac=rd(work/'ADMISSION-CONTROLS.json');bc=rd(work/'BIT-SUPPLIER-CONTROLS.json') + assert asm['status']=='PASS_GAUGE44_NATIVE_EXACT_GLOBAL_ASSEMBLY' and asm['kappa']==spec['expected']['kappa'] + assert len(ac['rejected_controls'])==69 and not ac['discovery_accepted_controls'] + assert len(bc['rejected_controls'])==12 and bc['derived_deficit']==10272 + assert len(ind['controls_rejected'])==6 and ind['status']=='PASS_INDEPENDENT_T16_LITERAL_WINDOWS_CHARTS_PREFIX_ROW' + assert ind['profile']==asm['complex_profile']==plan['profile'] + assert ind['rank_mass']==owner['rank_mass']==1041408 and ind['deficit']==owner['deficit']==5120 + assert ind['roles']==owner['hosted_residuals']==audit['complex_hosted_residuals']==69120 + assert ind['calls']==audit['complete_invocations']==inv['complete_invocation_sweeps']==144 + assert audit['mutation_controls_run'] and len(audit['mutations_rejected'])==15 + assert ind['actual_73_axis_charts']==owner['actual_73column_sigmas']==audit['actual_orthogonal_73column_maps'] + assert ind['prefix_bits']==inv['global_prefix_bits']0 for v in asm['outer'].values()) + for name in ('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json'): + assert rd(g/'base/providers/gauge44'/name)==rd(local/name),name + assert asm['template_sha256']==owner['template_sha256']==inv['template_sha256'] + assert inv['owner_audit_sha256']==sha(g/'audit/OWNERS-AND-PROFILE.json') and inv['controller_audit_sha256']==sha(g/'audit/ASYNC-AUDIT.json') + assert Q(asm['kappa'])>Q(rd(PRE/'CLAIM.json')['kappa']) + result=dict(status='PASS_CHANGED_LOCAL_INTERFACES_STRICT_T16_ADMISSION',kappa=asm['kappa'],kappa_decimal=asm['kappa_decimal'],complex_lower=asm['complex_lower'],bit_lower=asm['bit_lower'],profile=asm['complex_profile'],idle=ind['idle'],controls=dict(admission=69,bit_supplier=12,independent_t16=6,controller=15),outer_strict_inequalities=47,steps=stages) + dump(work/'REPLAY.json',result);print(result['status'],result['kappa_decimal']) + +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/verify.py b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/verify.py new file mode 100644 index 0000000000..87a797d338 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1148/research/k8-three-demotions/verify.py @@ -0,0 +1,50 @@ +"""Rebuild and admit the frozen three-demotion local-interface witness.""" +import argparse,gzip,hashlib,importlib.util,json,os,shutil,subprocess,sys,time +from fractions import Fraction as Q +from pathlib import Path +P=Path(__file__).resolve().parent;ROOT=P.parents[1];PRE=ROOT/'research/k8-eight-ends-t16';WORDPRE=ROOT/'research/k8-eight-ends' +def rd(p): + p=Path(p);return json.loads(gzip.decompress(p.read_bytes()) if p.suffix=='.gz' else p.read_bytes()) +def sha(p):return hashlib.sha256(Path(p).read_bytes()).hexdigest() +def payload(p):return hashlib.sha256(gzip.decompress(Path(p).read_bytes())).hexdigest() +def dump(p,x):Path(p).write_text(json.dumps(x,indent=2)+'\n') +def main(): + assert __debug__ + ap=argparse.ArgumentParser(description=__doc__);ap.add_argument('--base',type=Path);ap.add_argument('--work',type=Path,required=True);ap.add_argument('--parent-from',type=Path);ap.add_argument('--native-from',type=Path);a=ap.parse_args() + work=a.work.resolve();assert not work.exists() and not work.is_relative_to(ROOT) + for rel,h in rd(P/'MANIFEST.json').items():assert sha(P/rel)==h,rel + for rel,h in rd(P/'SOURCE-PINS.json').items():assert sha(ROOT/rel)==h,rel + env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0') + for k in ('PYTHONOPTIMIZE','WITNESS_DISCOVER','WITNESS_RECORD','WITNESS_SPEC'):env.pop(k,None) + work.mkdir(parents=True);steps=[] + def run(name,script,*args): + t=time.monotonic();log=work/(name+'.log') + with log.open('w') as f:r=subprocess.run([sys.executable,'-B',str(script),*map(str,args)],cwd=ROOT,env=env,stdout=f,stderr=subprocess.STDOUT) + steps.append(dict(step=name,exit_code=r.returncode,seconds=time.monotonic()-t,log_sha256=sha(log)));dump(work/'STEPS.json',steps);assert r.returncode==0,(name,log.read_text()[-6000:]);print('PASS',name,flush=True) + if a.parent_from:parent=a.parent_from.resolve() + else: + assert a.base,'--base is required to rebuild the preceding geometry' + parent=work/'parent';run('parent',PRE/'verify.py','--base',a.base.resolve(),'--work',parent) + assert rd(parent/'RESULT.json')['status']=='PASS_K8_EIGHT_ENDS_T16_COMPLETE_ADMISSION' + for rel,h in rd(P/'PARENT-PINS.json').items():assert sha(parent/rel)==h,rel + raw=work/'FULL-WORD.json.gz';run('build',P/'build_word.py','--out',raw) + assert payload(raw)==payload(P/'FULL-WORD.json.gz')==rd(P/'RECIPE.json')['output_content_sha256'] + run('independent-local',ROOT/'research/gauge44-slots/independent/audit_local.py','--word',raw,'--main',ROOT,'--output',work/'AUDIT-LOCAL.json') + run('demotion-controls',P/'controls.py','--out',work/'DEMOTION-CONTROLS.json');assert len(rd(work/'DEMOTION-CONTROLS.json')['rejected'])==27 + if a.native_from:native=a.native_from.resolve() + else: + native=work/'native';run('native',WORDPRE/'replay_native.py',raw,native) + ns=rd(native/'STEPS.json');assert [x['step'] for x in ns]==['native','ledgers','local-replay','wrappers','phases'] and all(x['exit_code']==0 for x in ns) + local=native/'local';assert payload(local/'FULL-WORD.json.gz')==payload(raw) + spec=importlib.util.spec_from_file_location('identities',PRE/'vendor/pr1074/code/generated_identity.py');ident=importlib.util.module_from_spec(spec);spec.loader.exec_module(ident) + assert ident.artifact_identities(local)==rd(P/'PLAN.json.gz')['provider_registry']['gauge44']['artifact_semantic_sha256'] + data=work/'data';data.mkdir();(data/'PLAN.json').write_bytes(gzip.decompress((P/'PLAN.json.gz').read_bytes())) + for name in ('OWNERS.json.gz','SPEC.json'):shutil.copy2(P/name,data/name) + run('strict-global',P/'run_global.py','--local',local,'--parent-work',parent,'--data',data,'--work',work/'global') + run('all-replica-bound',P/'independent/all_t_bound.py','--out',work/'ALL-T-BOUND.json') + assert rd(work/'ALL-T-BOUND.json')==rd(P/'evidence/ALL-T-BOUND.json') + result=rd(work/'global/REPLAY.json');claim=rd(P/'CLAIM.json');assert result['kappa_decimal']==claim['kappa_decimal'] + assert Q(result['kappa'])>Q(rd(PRE/'evidence/ALL-T-BOUND.json')['kappa_strict_rational_upper']) + receipt=dict(status='PASS_THREE_DEMOTIONS_COMPLETE_ADMISSION',kappa=result['kappa'],kappa_decimal=result['kappa_decimal'],complex_lower=result['complex_lower'],bit_lower=result['bit_lower'],controls=result['controls'],demotion_controls=27,outer_strict_inequalities=47,native_steps=ns,native_semantic_artifacts=ident.artifact_identities(local),native_reuse=bool(a.native_from),parent_reuse=bool(a.parent_from),previous_kappa=claim['previous_kappa'],scope=claim['scope'],steps=steps) + dump(work/'RESULT.json',receipt);print(receipt['status'],receipt['kappa_decimal']) +if __name__=='__main__':main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/CANDIDATE.json b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/CANDIDATE.json new file mode 100644 index 0000000000..62bf49bbce --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/CANDIDATE.json @@ -0,0 +1,11 @@ +{ + "status": "DRAFT_EXACT_PRICE_AND_LITERAL_OWNERS_FULL_ADMISSION_PENDING", + "kappa": "1675129371412064/1000000000000000000", + "kappa_decimal": "0.001675129371412064", + "previous_kappa": "0.001675121647789207", + "gain_percent": "0.00046107832629310757", + "pr1148_head": "98235a9cf4ce355ec5cf3fac2eca7b3b98a20838", + "pr1129_head": "a007dc2e1cc7ae7e8f7ec1343e8883fe43259f21", + "pr1131_head": "fcdc42737b703323d8ed550a528141a482e68e96", + "scope": "Conditional finite candidate. Full T37 provider/controller/invoice admission pending. Native provider separately reproduced from exact PR1148 head. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape, exact recovery, analytic transfer, PR559 recurrence correction and PR589 bit H1-H5 assumptions retained. No unconditional theorem, full Lean certification, or general packing optimality claim." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/GEOMETRY-CHECK.json b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/GEOMETRY-CHECK.json new file mode 100644 index 0000000000..2b1bd1cbcf --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/GEOMETRY-CHECK.json @@ -0,0 +1,10 @@ +{ + "roles": 159840, + "idle": { + "0": 62384, + "1": 834, + "48": 11374 + }, + "owner_content_sha256": "6aac44c27ee80dbcbfcc48ab358c8e79887ea34c5064bc0ba5955dd19df12a6f", + "status": "PASS_LITERAL_WHOLE_HELPER_GEOMETRY" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/MANIFEST.json b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/MANIFEST.json new file mode 100644 index 0000000000..f1ea5b41ca --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/MANIFEST.json @@ -0,0 +1,13 @@ +{ + "CANDIDATE.json": "43cc85370e98160f870484754240cd08a70cbdbc5ee3f75f705b7725693ff6c0", + "GEOMETRY-CHECK.json": "497c71976c01378b84552a245c1359fc53a6b6474b0c46c00546a419710ca826", + "OWNERS.json.gz": "449d230ae8ea9b5adf2f4a06da0dd89473e6e259b986e46ebf7407e169ac1d4b", + "PATTERN-FLOW.json": "d7accd36895a218d0db8e1434ea013c18d924059e4b32f25a21e3529539d7352", + "PLAN.json": "2c5e493cfdc4c424ebf20c91be089408dc04f183c979a9b76efb867b6f357424", + "PRICE.json": "dae64ef8026dd50ffce655f3094ca263e680a25db29669ab70a40fabf5db11d2", + "PROFILE.json": "440912ba08baa19af76194a7bcd8640b73926f5182c97bc6b73c3587b0256858", + "README.md": "b895d31ff6ebfec43b94a37981c9249f922999cbfc1ca1a50b05756e34ec2d3d", + "SEARCH.json": "c42084bbadd361f90dc21ffbd300c03b3739a57e9bf978e4272e0c822bca27bd", + "UPSTREAM-NOTICE.md": "b97fb4731e84aef736c58a9c126334eb5b8d3a057a8d9d45b4ffff24af65c38b", + "construct.py": "eee2edff41871b929e4c85289a2bd80842f5a5ae6130b8c7b0574178d4de9562" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/OWNERS.json.gz new file mode 100644 index 0000000000..a49281b64f Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PATTERN-FLOW.json b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PATTERN-FLOW.json new file mode 100644 index 0000000000..63e8408b05 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PATTERN-FLOW.json @@ -0,0 +1 @@ +{"T":37,"kind":"t37","order":[[0,0],[0,1],[0,2],[0,3],[0,4],[1,0],[0,5],[1,1],[0,6],[1,2],[0,7],[1,3],[0,8],[1,4],[0,9],[2,0],[1,5],[0,10],[2,1],[1,6],[0,11],[2,2],[1,7],[0,12],[2,3],[1,8],[0,13],[2,4],[1,9],[3,0],[0,14],[2,5],[1,10],[3,1],[0,15],[2,6],[1,11],[3,2],[0,16],[2,7],[1,12],[3,3],[0,17],[2,8],[1,13],[3,4],[0,18],[2,9],[4,0],[1,14],[3,5],[0,19],[2,10],[4,1],[1,15],[3,6],[0,20],[2,11],[4,2],[1,16],[3,7],[0,21],[2,12],[4,3],[1,17],[3,8],[0,22],[2,13],[4,4],[1,18],[3,9],[0,23],[5,0],[2,14],[4,5],[1,19],[3,10],[0,24],[5,1],[2,15],[4,6],[1,20],[3,11],[0,25],[5,2],[2,16],[4,7],[1,21],[3,12],[0,26],[5,3],[2,17],[4,8],[1,22],[3,13],[0,27],[5,4],[2,18],[4,9],[1,23],[6,0],[3,14],[0,28],[5,5],[2,19],[4,10],[1,24],[6,1],[3,15],[0,29],[5,6],[2,20],[4,11],[1,25],[6,2],[3,16],[0,30],[5,7],[2,21],[4,12],[1,26],[6,3],[3,17],[0,31],[5,8],[2,22],[4,13],[1,27],[6,4],[3,18],[0,32],[5,9],[2,23],[7,0],[4,14],[1,28],[6,5],[3,19],[0,33],[5,10],[2,24],[7,1],[4,15],[1,29],[6,6],[3,20],[0,34],[5,11],[2,25],[7,2],[4,16],[1,30],[6,7],[3,21],[0,35],[5,12],[2,26],[7,3],[4,17],[1,31],[6,8],[3,22],[0,36],[5,13],[2,27],[7,4],[4,18],[1,32],[6,9],[3,23],[8,0],[5,14],[2,28],[7,5],[4,19],[1,33],[6,10],[3,24],[8,1],[5,15],[2,29],[7,6],[4,20],[1,34],[6,11],[3,25],[8,2],[5,16],[2,30],[7,7],[4,21],[1,35],[6,12],[3,26],[8,3],[5,17],[2,31],[7,8],[4,22],[1,36],[6,13],[3,27],[8,4],[5,18],[2,32],[7,9],[4,23],[6,14],[3,28],[8,5],[5,19],[2,33],[7,10],[4,24],[6,15],[3,29],[8,6],[5,20],[2,34],[7,11],[4,25],[6,16],[3,30],[8,7],[5,21],[2,35],[7,12],[4,26],[6,17],[3,31],[8,8],[5,22],[2,36],[7,13],[4,27],[6,18],[3,32],[8,9],[5,23],[7,14],[4,28],[6,19],[3,33],[8,10],[5,24],[7,15],[4,29],[6,20],[3,34],[8,11],[5,25],[7,16],[4,30],[6,21],[3,35],[8,12],[5,26],[7,17],[4,31],[6,22],[3,36],[8,13],[5,27],[7,18],[4,32],[6,23],[8,14],[5,28],[7,19],[4,33],[6,24],[8,15],[5,29],[7,20],[4,34],[6,25],[8,16],[5,30],[7,21],[4,35],[6,26],[8,17],[5,31],[7,22],[4,36],[6,27],[8,18],[5,32],[7,23],[6,28],[8,19],[5,33],[7,24],[6,29],[8,20],[5,34],[7,25],[6,30],[8,21],[5,35],[7,26],[6,31],[8,22],[5,36],[7,27],[6,32],[8,23],[7,28],[6,33],[8,24],[7,29],[6,34],[8,25],[7,30],[6,35],[8,26],[7,31],[6,36],[8,27],[7,32],[8,28],[7,33],[8,29],[7,34],[8,30],[7,35],[8,31],[7,36],[8,32],[8,33],[8,34],[8,35],[8,36]],"groups":[[0,16,[0,1,2,3,4,5],[0,2]],[1,16,[0,1,2,3,4,5,6,7],[0,2]],[2,16,[0,1,2,3,4,5,6,7,8,9],[0,2]],[3,16,[0,1,2,3,4,5,6,7,8,9,10,11],[0,2]],[4,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13],[0,2]],[0,8,[6,7,8,9,10,11,12,13,14,15],[1,3]],[5,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],[0,2]],[1,8,[8,9,10,11,12,13,14,15,16,17,18],[1,3]],[6,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19],[0,2]],[2,8,[10,11,12,13,14,15,16,17,18,19,20,21],[1,3]],[7,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22],[0,2]],[3,8,[12,13,14,15,16,17,18,19,20,21,22,23,24],[1,3]],[8,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25],[0,2]],[4,8,[14,15,16,17,18,19,20,21,22,23,24,25,26,27],[1,3]],[9,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28],[0,2]],[0,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29],[4,6]],[5,8,[17,18,19,20,21,22,23,24,25,26,27,28,29,30,31],[1,3]],[10,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32],[0,2]],[1,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33],[4,6]],[6,8,[20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35],[1,3]],[11,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36],[0,2]],[2,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],[4,6]],[7,8,[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39],[1,3]],[12,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40],[0,2]],[3,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41],[4,6]],[8,8,[26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],[1,3]],[13,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],[0,2]],[4,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45],[4,6]],[9,8,[29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47],[1,3]],[0,8,[30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],[5,7]],[14,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49],[0,2]],[5,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50],[4,6]],[10,8,[33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52],[1,3]],[1,8,[34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53],[5,7]],[15,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54],[0,2]],[6,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55],[4,6]],[11,8,[37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57],[1,3]],[2,8,[38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58],[5,7]],[16,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59],[0,2]],[7,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60],[4,6]],[12,8,[41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62],[1,3]],[3,8,[42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63],[5,7]],[17,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64],[0,2]],[8,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65],[4,6]],[13,8,[45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67],[1,3]],[4,8,[46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68],[5,7]],[18,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69],[0,2]],[9,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70],[4,6]],[0,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72],[8,10]],[14,8,[50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73],[1,3]],[5,8,[51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74],[5,7]],[19,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75],[0,2]],[10,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76],[4,6]],[1,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78],[8,10]],[15,8,[55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79],[1,3]],[6,8,[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],[5,7]],[20,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[0,2]],[11,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[4,6]],[2,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[8,10]],[16,8,[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],[1,3]],[7,8,[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],[5,7]],[21,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[0,2]],[12,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[4,6]],[3,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[8,10]],[17,8,[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],[1,3]],[8,8,[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],[5,7]],[22,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[0,2]],[13,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[4,6]],[4,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[8,10]],[18,8,[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],[1,3]],[9,8,[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],[5,7]],[23,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[0,2]],[0,8,[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],[9,11]],[14,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[4,6]],[5,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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],[8,10]],[19,8,[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,104],[1,3]],[10,8,[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,104,105],[5,7]],[24,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106],[0,2]],[1,8,[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,104,105,106,107],[9,11]],[15,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108],[4,6]],[6,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110],[8,10]],[20,8,[82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111],[1,3]],[11,8,[83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112],[5,7]],[25,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113],[0,2]],[2,8,[85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114],[9,11]],[16,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115],[4,6]],[7,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117],[8,10]],[21,8,[88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118],[1,3]],[12,8,[89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119],[5,7]],[26,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120],[0,2]],[3,8,[91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121],[9,11]],[17,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122],[4,6]],[8,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124],[8,10]],[22,8,[94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125],[1,3]],[13,8,[95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126],[5,7]],[27,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127],[0,2]],[4,8,[97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128],[9,11]],[18,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129],[4,6]],[9,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131],[8,10]],[23,8,[100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132],[1,3]],[14,8,[102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134],[5,7]],[28,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135],[0,2]],[5,8,[104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136],[9,11]],[19,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137],[4,6]],[10,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139],[8,10]],[24,8,[107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140],[1,3]],[15,8,[109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142],[5,7]],[29,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143],[0,2]],[6,8,[111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144],[9,11]],[20,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145],[4,6]],[11,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147],[8,10]],[25,8,[114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148],[1,3]],[16,8,[116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150],[5,7]],[30,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151],[0,2]],[7,8,[118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152],[9,11]],[21,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153],[4,6]],[12,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155],[8,10]],[26,8,[121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156],[1,3]],[17,8,[123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158],[5,7]],[31,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159],[0,2]],[8,8,[125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160],[9,11]],[22,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161],[4,6]],[13,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163],[8,10]],[27,8,[128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164],[1,3]],[18,8,[130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166],[5,7]],[32,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167],[0,2]],[9,8,[132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168],[9,11]],[23,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[4,6]],[0,48,[16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170],[12,13]],[0,32,[49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170],[14,15]],[0,16,[101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170],[16,17]],[14,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171],[8,10]],[28,8,[136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172],[1,3]],[19,8,[138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174],[5,7]],[33,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175],[0,2]],[10,8,[140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176],[9,11]],[24,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177],[4,6]],[1,48,[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178],[12,13]],[1,32,[54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178],[14,15]],[1,16,[108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178],[16,17]],[15,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179],[8,10]],[29,8,[144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180],[1,3]],[20,8,[146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182],[5,7]],[34,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183],[0,2]],[11,8,[148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184],[9,11]],[25,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185],[4,6]],[2,48,[22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186],[12,13]],[2,32,[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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186],[14,15]],[2,16,[115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186],[16,17]],[16,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187],[8,10]],[30,8,[152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188],[1,3]],[21,8,[154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190],[5,7]],[35,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191],[0,2]],[12,8,[156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192],[9,11]],[26,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193],[4,6]],[3,48,[25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],[12,13]],[3,32,[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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],[14,15]],[3,16,[122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194],[16,17]],[17,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195],[8,10]],[31,8,[160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196],[1,3]],[22,8,[162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198],[5,7]],[36,16,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199],[0,2]],[13,8,[164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200],[9,11]],[27,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201],[4,6]],[4,48,[28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202],[12,13]],[4,32,[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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202],[14,15]],[4,16,[129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202],[16,17]],[18,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203],[8,10]],[32,8,[168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204],[1,3]],[23,8,[170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206],[5,7]],[14,8,[172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207],[9,11]],[28,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208],[4,6]],[5,48,[32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209],[12,13]],[5,32,[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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209],[14,15]],[5,16,[137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209],[16,17]],[19,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210],[8,10]],[33,8,[176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211],[1,3]],[24,8,[178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213],[5,7]],[15,8,[180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214],[9,11]],[29,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215],[4,6]],[6,48,[36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216],[12,13]],[6,32,[81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216],[14,15]],[6,16,[145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216],[16,17]],[20,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217],[8,10]],[34,8,[184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218],[1,3]],[25,8,[186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220],[5,7]],[16,8,[188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221],[9,11]],[30,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222],[4,6]],[7,48,[40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223],[12,13]],[7,32,[87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223],[14,15]],[7,16,[153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223],[16,17]],[21,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224],[8,10]],[35,8,[192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225],[1,3]],[26,8,[194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227],[5,7]],[17,8,[196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228],[9,11]],[31,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229],[4,6]],[8,48,[44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230],[12,13]],[8,32,[93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230],[14,15]],[8,16,[161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230],[16,17]],[22,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231],[8,10]],[36,8,[200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232],[1,3]],[27,8,[202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234],[5,7]],[18,8,[204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235],[9,11]],[32,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236],[4,6]],[9,48,[48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237],[12,13]],[9,32,[99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237],[14,15]],[9,16,[169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237],[16,17]],[23,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238],[8,10]],[28,8,[209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240],[5,7]],[19,8,[211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241],[9,11]],[33,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242],[4,6]],[10,48,[53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243],[12,13]],[10,32,[106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243],[14,15]],[10,16,[177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243],[16,17]],[24,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244],[8,10]],[29,8,[216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246],[5,7]],[20,8,[218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247],[9,11]],[34,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248],[4,6]],[11,48,[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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249],[12,13]],[11,32,[113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249],[14,15]],[11,16,[185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249],[16,17]],[25,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250],[8,10]],[30,8,[223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252],[5,7]],[21,8,[225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253],[9,11]],[35,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254],[4,6]],[12,48,[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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255],[12,13]],[12,32,[120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255],[14,15]],[12,16,[193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255],[16,17]],[26,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256],[8,10]],[31,8,[230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258],[5,7]],[22,8,[232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259],[9,11]],[36,32,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260],[4,6]],[13,48,[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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261],[12,13]],[13,32,[127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261],[14,15]],[13,16,[201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261],[16,17]],[27,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262],[8,10]],[32,8,[237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264],[5,7]],[23,8,[239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265],[9,11]],[14,48,[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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266],[12,13]],[14,32,[135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266],[14,15]],[14,16,[208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266],[16,17]],[28,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267],[8,10]],[33,8,[243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269],[5,7]],[24,8,[245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270],[9,11]],[15,48,[80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271],[12,13]],[15,32,[143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271],[14,15]],[15,16,[215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271],[16,17]],[29,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272],[8,10]],[34,8,[249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274],[5,7]],[25,8,[251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275],[9,11]],[16,48,[86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276],[12,13]],[16,32,[151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276],[14,15]],[16,16,[222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276],[16,17]],[30,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277],[8,10]],[35,8,[255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279],[5,7]],[26,8,[257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280],[9,11]],[17,48,[92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281],[12,13]],[17,32,[159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281],[14,15]],[17,16,[229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281],[16,17]],[31,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282],[8,10]],[36,8,[261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284],[5,7]],[27,8,[263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285],[9,11]],[18,48,[98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286],[12,13]],[18,32,[167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286],[14,15]],[18,16,[236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286],[16,17]],[32,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287],[8,10]],[28,8,[268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289],[9,11]],[19,48,[105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290],[12,13]],[19,32,[175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290],[14,15]],[19,16,[242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290],[16,17]],[33,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291],[8,10]],[29,8,[273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293],[9,11]],[20,48,[112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294],[12,13]],[20,32,[183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294],[14,15]],[20,16,[248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294],[16,17]],[34,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295],[8,10]],[30,8,[278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297],[9,11]],[21,48,[119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298],[12,13]],[21,32,[191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298],[14,15]],[21,16,[254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298],[16,17]],[35,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299],[8,10]],[31,8,[283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301],[9,11]],[22,48,[126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302],[12,13]],[22,32,[199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302],[14,15]],[22,16,[260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302],[16,17]],[36,48,[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,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,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303],[8,10]],[32,8,[288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305],[9,11]],[23,48,[133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306],[12,13]],[23,32,[207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306],[14,15]],[23,16,[266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306],[16,17]],[33,8,[292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308],[9,11]],[24,48,[141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309],[12,13]],[24,32,[214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309],[14,15]],[24,16,[271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309],[16,17]],[34,8,[296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311],[9,11]],[25,48,[149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312],[12,13]],[25,32,[221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312],[14,15]],[25,16,[276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312],[16,17]],[35,8,[300,301,302,303,304,305,306,307,308,309,310,311,312,313,314],[9,11]],[26,48,[157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315],[12,13]],[26,32,[228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315],[14,15]],[26,16,[281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315],[16,17]],[36,8,[304,305,306,307,308,309,310,311,312,313,314,315,316,317],[9,11]],[27,48,[165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318],[12,13]],[27,32,[235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318],[14,15]],[27,16,[286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318],[16,17]],[28,48,[173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320],[12,13]],[28,32,[241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320],[14,15]],[28,16,[290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320],[16,17]],[29,48,[181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322],[12,13]],[29,32,[247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322],[14,15]],[29,16,[294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322],[16,17]],[30,48,[189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324],[12,13]],[30,32,[253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324],[14,15]],[30,16,[298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324],[16,17]],[31,48,[197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326],[12,13]],[31,32,[259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326],[14,15]],[31,16,[302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326],[16,17]],[32,48,[205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328],[12,13]],[32,32,[265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328],[14,15]],[32,16,[306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328],[16,17]],[33,48,[212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[12,13]],[33,32,[270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[14,15]],[33,16,[309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329],[16,17]],[34,48,[219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330],[12,13]],[34,32,[275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330],[14,15]],[34,16,[312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330],[16,17]],[35,48,[226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331],[12,13]],[35,32,[280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331],[14,15]],[35,16,[315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331],[16,17]],[36,48,[233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332],[12,13]],[36,32,[285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332],[14,15]],[36,16,[318,319,320,321,322,323,324,325,326,327,328,329,330,331,332],[16,17]]],"patterns":{"8":[[0,0,0,1,0],[2,0,0,0,0]],"16":[[0,0,0,2,0],[0,0,1,0,1],[2,0,0,1,0],[4,0,0,0,0]],"32":[[0,0,0,4,0],[0,0,1,2,1],[0,0,2,0,2],[0,1,0,0,3],[1,0,0,0,3],[2,0,0,3,0],[2,0,1,1,1],[4,0,0,2,0],[4,0,1,0,1],[6,0,0,1,0],[8,0,0,0,0]],"48":[[0,0,0,0,0],[1,0,0,1,4],[3,0,0,0,4]]},"entries":[[["x",0,1],180],[["y",0,1,0,2],38],[["y",0,1,1,2],38],[["y",0,1,2,4],18],[["y",0,1,3,2],38],[["y",0,1,3,4],142],[["y",0,1,4,2],28],[["y",0,1,5,2],38],[["y",0,1,5,4],20],[["x",0,2],44],[["y",0,2,0,3],44],[["y",0,2,2,0],44],[["y",0,2,4,0],44],[["x",1,0],24],[["y",1,0,5,3],24],[["y",1,0,6,3],24],[["x",1,1],118],[["y",1,1,1,4],1],[["y",1,1,2,2],38],[["y",1,1,3,4],98],[["y",1,1,4,2],4],[["y",1,1,4,4],3],[["y",1,1,6,2],38],[["y",1,1,7,2],38],[["y",1,1,7,4],16],[["x",1,2],82],[["y",1,2,0,0],44],[["y",1,2,0,3],34],[["y",1,2,2,3],48],[["y",1,2,3,0],1],[["y",1,2,5,0],31],[["y",1,2,6,0],44],[["y",1,2,7,0],44],[["x",2,0],114],[["y",2,0,3,3],114],[["y",2,0,5,3],1],[["y",2,0,7,3],113],[["x",2,1],44],[["y",2,1,1,4],15],[["y",2,1,4,2],6],[["y",2,1,5,4],23],[["y",2,1,8,4],6],[["y",2,1,9,2],38],[["x",2,2],66],[["y",2,2,1,0],44],[["y",2,2,2,3],66],[["y",2,2,8,0],44],[["y",2,2,9,0],44],[["x",3,0],171],[["y",3,0,4,3],114],[["y",3,0,8,3],114],[["y",3,0,11,3],114],[["x",3,1],53],[["y",3,1,9,4],53],[["y",3,1,10,2],38],[["y",3,1,11,2],15],[["x",4,0],37],[["y",4,0,6,3],37],[["y",4,0,10,3],37],[["x",4,1],93],[["y",4,1,2,4],93],[["y",4,1,11,2],17],[["y",4,1,12,2],38],[["y",4,1,13,2],38],[["x",4,2],94],[["y",4,2,3,0],43],[["y",4,2,5,0],13],[["y",4,2,5,3],81],[["y",4,2,6,3],9],[["y",4,2,10,0],44],[["y",4,2,12,0],44],[["y",4,2,12,3],4],[["y",4,2,13,0],44],[["x",5,0],224],[["y",5,0,6,3],1],[["y",5,0,12,3],109],[["y",5,0,15,3],114],[["x",6,1],158],[["y",6,1,8,2],38],[["y",6,1,11,2],6],[["y",6,1,12,4],158],[["y",6,1,14,2],38],[["y",6,1,15,2],38],[["y",6,1,16,2],38],[["x",6,2],66],[["y",6,2,0,3],36],[["y",6,2,5,3],7],[["y",6,2,7,3],1],[["y",6,2,11,0],44],[["y",6,2,15,0],44],[["y",6,2,16,0],44],[["y",6,2,16,3],22],[["x",7,0],224],[["y",7,0,9,3],114],[["y",7,0,18,3],110],[["x",8,0],114],[["y",8,0,1,3],114],[["y",8,0,14,3],114],[["x",8,1],66],[["y",8,1,16,4],66],[["y",8,1,17,2],28],[["y",8,1,18,2],38],[["x",8,2],44],[["y",8,2,14,0],44],[["y",8,2,16,3],44],[["y",8,2,18,0],44],[["x",9,0],224],[["y",9,0,13,3],114],[["y",9,0,16,3],48],[["y",9,0,17,3],56],[["y",9,0,18,3],4],[["y",9,0,19,3],2],[["x",10,0],47],[["y",10,0,6,3],43],[["y",10,0,21,3],4],[["y",10,0,22,3],47],[["x",10,1],115],[["y",10,1,2,4],115],[["y",10,1,17,2],10],[["y",10,1,19,2],38],[["y",10,1,20,2],29],[["y",10,1,22,2],38],[["x",10,2],62],[["y",10,2,17,3],36],[["y",10,2,19,0],44],[["y",10,2,20,0],44],[["y",10,2,22,0],36],[["y",10,2,22,3],26],[["x",11,0],224],[["y",11,0,19,3],112],[["y",11,0,20,3],112],[["x",12,1],158],[["y",12,1,19,4],158],[["y",12,1,20,2],9],[["y",12,1,21,2],35],[["y",12,1,23,2],38],[["y",12,1,24,2],38],[["y",12,1,25,2],38],[["x",12,2],66],[["y",12,2,17,0],44],[["y",12,2,17,3],22],[["y",12,2,21,0],44],[["y",12,2,22,3],4],[["y",12,2,23,0],44],[["y",12,2,25,3],40],[["x",13,0],224],[["y",13,0,23,3],114],[["y",13,0,24,3],110],[["x",14,0],114],[["y",14,0,10,3],77],[["y",14,0,22,3],37],[["y",14,0,26,3],114],[["x",14,2],110],[["y",14,2,12,3],1],[["y",14,2,20,3],2],[["y",14,2,22,0],8],[["y",14,2,24,0],44],[["y",14,2,25,0],36],[["y",14,2,25,3],74],[["y",14,2,26,0],44],[["y",14,2,27,0],44],[["y",14,2,28,0],44],[["y",14,2,28,3],33],[["x",15,3],224],[["y",15,3,0,4],12],[["y",15,3,1,4],224],[["y",15,3,3,1],40],[["y",15,3,4,4],224],[["y",15,3,8,1],44],[["y",15,3,14,4],13],[["y",15,3,16,1],20],[["y",15,3,18,1],31],[["y",15,3,22,1],40],[["y",15,3,25,1],25],[["y",15,3,25,4],199],[["y",15,3,27,1],24],[["x",16,0],224],[["y",16,0,21,3],110],[["y",16,0,31,3],114],[["x",17,1],224],[["y",17,1,21,2],3],[["y",17,1,26,2],38],[["y",17,1,27,2],38],[["y",17,1,28,2],38],[["y",17,1,29,2],31],[["y",17,1,30,2],38],[["y",17,1,31,4],224],[["y",17,1,32,2],38],[["x",18,3],224],[["y",18,3,1,1],44],[["y",18,3,6,4],224],[["y",18,3,7,1],44],[["y",18,3,12,1],44],[["y",18,3,13,4],224],[["y",18,3,17,1],41],[["y",18,3,23,4],224],[["y",18,3,26,1],7],[["y",18,3,29,1],44],[["x",19,0],224],[["y",19,0,24,3],4],[["y",19,0,27,3],114],[["y",19,0,28,3],81],[["y",19,0,33,3],25],[["x",20,0],27],[["y",20,0,32,3],27],[["y",20,0,36,3],27],[["x",20,1],197],[["y",20,1,6,4],16],[["y",20,1,11,4],14],[["y",20,1,23,4],16],[["y",20,1,24,4],60],[["y",20,1,25,4],41],[["y",20,1,29,2],7],[["y",20,1,30,4],49],[["y",20,1,31,2],38],[["y",20,1,33,2],38],[["y",20,1,33,4],1],[["y",20,1,34,2],38],[["y",20,1,35,2],38],[["y",20,1,36,2],38],[["x",21,3],224],[["y",21,3,0,1],44],[["y",21,3,6,1],44],[["y",21,3,10,1],44],[["y",21,3,11,1],44],[["y",21,3,13,4],16],[["y",21,3,15,4],224],[["y",21,3,17,4],12],[["y",21,3,19,1],4],[["y",21,3,20,1],13],[["y",21,3,27,4],151],[["y",21,3,34,1],31],[["y",21,3,34,4],29],[["y",21,3,35,4],224],[["y",21,3,37,4],16],[["x",22,0],224],[["y",22,0,35,3],114],[["y",22,0,37,3],110],[["x",23,1],114],[["y",23,1,37,2],38],[["y",23,1,38,4],114],[["y",23,1,39,2],38],[["y",23,1,40,2],38],[["x",23,2],110],[["y",23,2,25,0],3],[["y",23,2,29,0],44],[["y",23,2,29,3],41],[["y",23,2,30,0],44],[["y",23,2,33,0],44],[["y",23,2,34,0],44],[["y",23,2,38,3],3],[["y",23,2,40,0],41],[["y",23,2,40,3],66],[["x",24,3],224],[["y",24,3,3,1],4],[["y",24,3,4,1],44],[["y",24,3,14,4],224],[["y",24,3,15,1],44],[["y",24,3,15,4],16],[["y",24,3,20,4],224],[["y",24,3,29,4],152],[["y",24,3,32,1],44],[["y",24,3,36,1],44],[["y",24,3,37,1],44],[["y",24,3,39,4],56],[["x",25,0],224],[["y",25,0,36,3],66],[["y",25,0,42,3],44],[["y",25,0,43,3],114],[["x",26,1],180],[["y",26,1,33,4],180],[["y",26,1,38,2],38],[["y",26,1,41,2],38],[["y",26,1,42,2],28],[["y",26,1,43,2],38],[["y",26,1,44,2],38],[["x",26,2],44],[["y",26,2,38,3],44],[["y",26,2,42,0],44],[["y",26,2,44,0],44],[["x",27,3],224],[["y",27,3,4,4],13],[["y",27,3,13,1],44],[["y",27,3,14,1],44],[["y",27,3,18,1],13],[["y",27,3,19,1],40],[["y",27,3,21,1],26],[["y",27,3,21,4],198],[["y",27,3,26,4],26],[["y",27,3,34,1],13],[["y",27,3,34,4],211],[["y",27,3,37,4],224],[["y",27,3,45,1],44],[["x",28,0],224],[["y",28,0,38,3],67],[["y",28,0,45,3],112],[["y",28,0,47,3],45],[["x",29,0],224],[["y",29,0,41,3],114],[["y",29,0,44,3],110],[["x",30,1],153],[["y",30,1,42,2],2],[["y",30,1,45,2],38],[["y",30,1,46,2],37],[["y",30,1,47,2],38],[["y",30,1,48,2],38],[["y",30,1,49,4],153],[["x",30,2],71],[["y",30,2,5,3],1],[["y",30,2,37,3],1],[["y",30,2,39,0],43],[["y",30,2,41,0],44],[["y",30,2,43,0],44],[["y",30,2,47,0],2],[["y",30,2,47,3],69],[["y",30,2,49,0],9],[["x",31,3],224],[["y",31,3,9,1],44],[["y",31,3,9,4],180],[["y",31,3,24,1],44],[["y",31,3,24,4],180],[["y",31,3,29,4],88],[["y",31,3,35,1],44],[["y",31,3,41,1],44],[["y",31,3,42,1],44],[["y",31,3,43,4],224],[["y",31,3,46,1],4],[["x",32,0],224],[["y",32,0,33,3],89],[["y",32,0,36,3],21],[["y",32,0,46,3],114],[["x",33,0],224],[["y",33,0,48,3],114],[["y",33,0,53,3],110],[["x",34,1],224],[["y",34,1,18,4],1],[["y",34,1,19,4],82],[["y",34,1,27,4],89],[["y",34,1,40,4],36],[["y",34,1,42,2],8],[["y",34,1,48,4],16],[["y",34,1,49,2],38],[["y",34,1,50,2],37],[["y",34,1,51,2],38],[["y",34,1,52,2],38],[["y",34,1,53,2],38],[["y",34,1,54,2],27],[["x",35,3],224],[["y",35,3,5,1],27],[["y",35,3,5,4],197],[["y",35,3,11,4],224],[["y",35,3,16,4],174],[["y",35,3,18,4],17],[["y",35,3,23,1],2],[["y",35,3,33,1],44],[["y",35,3,38,1],44],[["y",35,3,44,1],44],[["y",35,3,52,1],44],[["y",35,3,54,1],13],[["y",35,3,55,1],6],[["y",35,3,55,4],60],[["x",36,0],224],[["y",36,0,42,3],70],[["y",36,0,44,3],4],[["y",36,0,53,3],4],[["y",36,0,56,3],32],[["y",36,0,57,3],114],[["x",37,0],224],[["y",37,0,39,3],114],[["y",37,0,49,3],110],[["x",38,1],58],[["y",38,1,38,4],11],[["y",38,1,50,2],1],[["y",38,1,54,4],47],[["y",38,1,56,2],1],[["y",38,1,57,2],18],[["y",38,1,59,2],38],[["x",38,2],166],[["y",38,2,25,0],5],[["y",38,2,35,0],28],[["y",38,2,37,0],44],[["y",38,2,45,0],44],[["y",38,2,48,0],44],[["y",38,2,49,0],35],[["y",38,2,51,0],44],[["y",38,2,51,3],114],[["y",38,2,52,0],44],[["y",38,2,54,3],52],[["y",38,2,56,0],44],[["x",39,3],224],[["y",39,3,2,1],44],[["y",39,3,8,4],53],[["y",39,3,11,4],2],[["y",39,3,21,1],18],[["y",39,3,21,4],42],[["y",39,3,26,1],37],[["y",39,3,36,4],142],[["y",39,3,46,1],36],[["y",39,3,47,1],14],[["y",39,3,53,4],224],[["y",39,3,54,1],31],[["y",39,3,54,4],193],[["y",39,3,58,4],16],[["y",39,3,60,1],44],[["x",40,0],224],[["y",40,0,50,3],106],[["y",40,0,60,3],114],[["y",40,0,61,3],4],[["x",41,0],224],[["y",41,0,59,3],114],[["y",41,0,63,3],110],[["x",42,1],158],[["y",42,1,30,4],114],[["y",42,1,46,2],1],[["y",42,1,54,2],11],[["y",42,1,56,2],32],[["y",42,1,60,2],38],[["y",42,1,61,2],38],[["y",42,1,61,4],44],[["y",42,1,64,2],38],[["x",42,2],66],[["y",42,2,32,3],66],[["y",42,2,38,0],44],[["y",42,2,46,0],44],[["y",42,2,62,0],44],[["x",43,4],98],[["y",43,4,17,4],6],[["y",43,4,31,0],26],[["y",43,4,31,4],16],[["y",43,4,32,4],98],[["y",43,4,36,4],98],[["y",43,4,55,0],41],[["y",43,4,62,4],60],[["y",43,4,65,0],31],[["y",43,4,65,4],16],[["x",43,5],126],[["y",43,5,29,3],73],[["y",43,5,30,3],114],[["y",43,5,32,0],1],[["y",43,5,32,3],21],[["y",43,5,35,0],16],[["y",43,5,40,3],48],[["y",43,5,50,0],44],[["y",43,5,50,3],8],[["y",43,5,54,0],44],[["y",43,5,55,0],3],[["y",43,5,59,0],44],[["y",43,5,61,0],44],[["y",43,5,63,0],44],[["y",43,5,65,0],12],[["y",43,5,65,3],114],[["x",44,0],224],[["y",44,0,52,3],114],[["y",44,0,61,3],110],[["x",45,0],224],[["y",45,0,64,3],110],[["y",45,0,66,3],114],[["x",46,1],172],[["y",46,1,22,4],20],[["y",46,1,57,2],20],[["y",46,1,58,2],38],[["y",46,1,59,4],140],[["y",46,1,65,2],38],[["y",46,1,67,2],38],[["y",46,1,68,2],38],[["y",46,1,69,4],12],[["x",46,2],52],[["y",46,2,47,0],17],[["y",46,2,58,0],44],[["y",46,2,62,3],43],[["y",46,2,69,0],43],[["y",46,2,69,3],9],[["x",47,3],224],[["y",47,3,0,4],224],[["y",47,3,27,1],20],[["y",47,3,30,1],44],[["y",47,3,40,1],24],[["y",47,3,46,1],4],[["y",47,3,50,1],44],[["y",47,3,58,4],224],[["y",47,3,65,1],44],[["y",47,3,66,4],106],[["y",47,3,69,1],44],[["y",47,3,70,4],118],[["x",48,0],224],[["x",49,0],224],[["y",49,0,67,3],114],[["y",49,0,72,3],110],[["x",50,0],224],[["y",50,0,54,3],62],[["y",50,0,62,3],71],[["y",50,0,69,3],5],[["y",50,0,70,3],83],[["y",50,0,71,3],3],[["x",51,1],224],[["y",51,1,14,4],1],[["y",51,1,35,4],15],[["y",51,1,45,4],16],[["y",51,1,55,2],38],[["y",51,1,56,2],4],[["y",51,1,62,2],38],[["y",51,1,63,2],38],[["y",51,1,70,2],38],[["y",51,1,72,2],30],[["y",51,1,73,2],38],[["y",51,1,74,4],192],[["x",52,4],223],[["y",52,4,18,4],222],[["y",52,4,36,0],44],[["y",52,4,44,4],223],[["y",52,4,47,0],25],[["y",52,4,53,0],44],[["y",52,4,55,4],2],[["y",52,4,57,0],44],[["y",52,4,64,0],44],[["y",52,4,67,4],2],[["y",52,4,70,0],19],[["y",52,4,76,0],3],[["y",52,4,76,4],220],[["x",52,5],1],[["y",52,5,31,0],1],[["y",52,5,64,3],1],[["y",52,5,66,0],1],[["y",52,5,73,3],1],[["y",52,5,74,3],1],[["x",53,0],213],[["x",53,1],11],[["y",53,1,8,4],11],[["y",53,1,10,4],11],[["y",53,1,12,4],11],[["y",53,1,41,4],11],[["y",53,1,69,3],11],[["y",53,1,74,0],11],[["x",54,0],224],[["y",54,0,64,3],3],[["y",54,0,73,3],5],[["y",54,0,76,3],114],[["y",54,0,79,3],102],[["x",55,0],224],[["y",55,0,71,3],110],[["y",55,0,75,3],114],[["x",56,1],168],[["y",56,1,60,4],8],[["y",56,1,69,2],38],[["y",56,1,72,2],8],[["y",56,1,75,2],8],[["y",56,1,75,4],160],[["y",56,1,76,2],38],[["y",56,1,77,2],38],[["y",56,1,79,2],38],[["x",56,2],56],[["y",56,2,37,3],3],[["y",56,2,68,0],44],[["y",56,2,70,0],25],[["y",56,2,70,3],31],[["y",56,2,72,3],4],[["y",56,2,77,3],18],[["y",56,2,78,0],2],[["y",56,2,79,0],41],[["x",57,3],224],[["y",57,3,16,1],1],[["y",57,3,31,1],44],[["y",57,3,48,4],224],[["y",57,3,62,1],44],[["y",57,3,62,4],180],[["y",57,3,67,1],31],[["y",57,3,67,4],193],[["y",57,3,68,1],44],[["y",57,3,72,1],16],[["y",57,3,75,1],44],[["y",57,3,82,4],75],[["x",58,0],224],[["x",59,0],224],[["y",59,0,68,3],110],[["y",59,0,85,3],114],[["x",60,0],224],[["y",60,0,81,3],110],[["y",60,0,82,3],114],[["x",61,1],142],[["y",61,1,55,4],142],[["y",61,1,56,2],1],[["y",61,1,71,2],38],[["y",61,1,78,2],28],[["y",61,1,80,2],38],[["y",61,1,87,2],37],[["x",61,2],82],[["y",61,2,32,0],43],[["y",61,2,45,3],2],[["y",61,2,65,0],1],[["y",61,2,73,3],80],[["y",61,2,74,0],33],[["y",61,2,76,0],41],[["y",61,2,77,0],44],[["y",61,2,82,0],2],[["x",62,3],224],[["y",62,3,17,1],2],[["y",62,3,17,4],222],[["y",62,3,39,1],44],[["y",62,3,39,4],152],[["y",62,3,46,4],224],[["y",62,3,66,1],44],[["y",62,3,71,1],44],[["y",62,3,74,1],44],[["y",62,3,84,1],25],[["y",62,3,84,4],74],[["y",62,3,88,1],21],[["x",63,0],224],[["x",64,0],224],[["y",64,0,71,3],1],[["y",64,0,74,3],109],[["y",64,0,84,3],114],[["x",65,0],224],[["y",65,0,68,3],3],[["y",65,0,83,3],113],[["y",65,0,88,3],108],[["x",66,1],180],[["y",66,1,50,4],180],[["y",66,1,66,2],38],[["y",66,1,84,2],38],[["y",66,1,85,2],38],[["y",66,1,89,2],38],[["y",66,1,90,2],8],[["y",66,1,91,2],20],[["x",66,2],44],[["y",66,2,39,0],1],[["y",66,2,69,3],42],[["y",66,2,75,0],44],[["y",66,2,78,3],2],[["y",66,2,82,0],42],[["y",66,2,90,0],1],[["x",67,3],224],[["y",67,3,10,4],224],[["y",67,3,17,1],1],[["y",67,3,23,1],42],[["y",67,3,47,1],29],[["y",67,3,47,4],195],[["y",67,3,57,4],224],[["y",67,3,59,1],36],[["y",67,3,60,4],28],[["y",67,3,76,1],44],[["y",67,3,77,1],5],[["y",67,3,78,1],44],[["y",67,3,79,4],1],[["y",67,3,88,1],23],[["x",68,0],224],[["x",69,0],224],[["y",69,0,73,3],28],[["y",69,0,93,3],114],[["y",69,0,95,3],82],[["x",70,0],224],[["y",70,0,74,3],4],[["y",70,0,78,3],6],[["y",70,0,80,3],114],[["y",70,0,81,3],4],[["y",70,0,94,3],96],[["x",71,1],224],[["y",71,1,78,2],10],[["y",71,1,81,4],224],[["y",71,1,86,2],38],[["y",71,1,88,2],38],[["y",71,1,91,2],18],[["y",71,1,92,2],38],[["y",71,1,93,2],38],[["y",71,1,97,2],6],[["y",71,1,99,2],38],[["x",72,0],224],[["y",72,0,86,3],114],[["y",72,0,89,3],110],[["x",73,3],224],[["y",73,3,12,4],70],[["y",73,3,20,1],31],[["y",73,3,22,1],4],[["y",73,3,22,4],220],[["y",73,3,41,4],157],[["y",73,3,48,1],44],[["y",73,3,58,1],44],[["y",73,3,61,1],44],[["y",73,3,67,1],13],[["y",73,3,70,1],44],[["y",73,3,73,4],1],[["y",73,3,97,4],224],[["x",74,0],224],[["x",75,0],224],[["y",75,0,83,3],1],[["y",75,0,91,3],109],[["y",75,0,92,3],114],[["x",76,0],224],[["y",76,0,78,3],106],[["y",76,0,96,3],114],[["y",76,0,98,3],4],[["x",77,1],224],[["y",77,1,47,4],45],[["y",77,1,50,4],60],[["y",77,1,64,4],60],[["y",77,1,67,4],1],[["y",77,1,68,4],27],[["y",77,1,73,4],15],[["y",77,1,74,2],38],[["y",77,1,81,4],16],[["y",77,1,82,2],38],[["y",77,1,90,2],30],[["y",77,1,95,2],38],[["y",77,1,98,2],38],[["y",77,1,101,2],4],[["y",77,1,102,2],38],[["x",78,0],224],[["y",78,0,103,3],110],[["y",78,0,104,3],114],[["x",79,3],224],[["y",79,3,2,4],14],[["y",79,3,28,4],60],[["y",79,3,42,4],121],[["y",79,3,44,4],17],[["y",79,3,53,1],44],[["y",79,3,53,4],16],[["y",79,3,59,4],88],[["y",79,3,64,1],23],[["y",79,3,71,4],16],[["y",79,3,94,4],49],[["y",79,3,96,1],44],[["y",79,3,100,4],95],[["y",79,3,101,1],44],[["y",79,3,103,1],25],[["y",79,3,106,1],44],[["y",79,3,108,4],196],[["x",80,0],224],[["x",81,0],224],[["y",81,0,87,3],114],[["y",81,0,107,3],22],[["y",81,0,109,3],88],[["x",82,0],224],[["y",82,0,90,3],110],[["y",82,0,110,3],114],[["x",83,1],224],[["y",83,1,81,2],38],[["y",83,1,96,2],38],[["y",83,1,101,2],34],[["y",83,1,102,4],224],[["y",83,1,104,2],38],[["y",83,1,106,2],38],[["y",83,1,113,2],38],[["x",84,0],224],[["y",84,0,94,3],18],[["y",84,0,107,3],92],[["y",84,0,113,3],114],[["x",85,3],224],[["y",85,3,56,1],44],[["y",85,3,71,4],224],[["y",85,3,79,1],32],[["y",85,3,86,4],60],[["y",85,3,88,4],224],[["y",85,3,92,4],16],[["y",85,3,98,1],44],[["y",85,3,107,1],16],[["y",85,3,112,1],44],[["y",85,3,114,4],148],[["y",85,3,115,1],44],[["x",86,0],224],[["x",87,0],224],[["y",87,0,98,3],110],[["y",87,0,116,3],114],[["x",88,0],224],[["y",88,0,95,3],32],[["y",88,0,97,3],114],[["y",88,0,100,3],53],[["y",88,0,102,3],5],[["y",88,0,108,3],20],[["x",89,1],162],[["y",89,1,94,2],6],[["y",89,1,97,2],14],[["y",89,1,98,4],162],[["y",89,1,100,2],24],[["y",89,1,103,2],38],[["y",89,1,108,2],38],[["y",89,1,114,2],4],[["y",89,1,120,2],38],[["x",89,2],62],[["y",89,2,40,0],3],[["y",89,2,66,0],35],[["y",89,2,68,3],1],[["y",89,2,89,0],44],[["y",89,2,100,0],1],[["y",89,2,100,3],61],[["y",89,2,111,0],41],[["x",90,0],224],[["y",90,0,114,3],114],[["y",90,0,115,3],11],[["y",90,0,120,3],99],[["x",91,3],224],[["y",91,3,16,1],23],[["y",91,3,40,1],20],[["y",91,3,40,4],204],[["y",91,3,52,4],224],[["y",91,3,55,4],36],[["y",91,3,72,1],28],[["y",91,3,80,1],21],[["y",91,3,83,4],118],[["y",91,3,92,1],44],[["y",91,3,98,4],57],[["y",91,3,106,4],16],[["y",91,3,114,1],44],[["y",91,3,120,1],44],[["y",91,3,120,4],17],[["x",92,0],224],[["x",93,0],224],[["y",93,0,101,3],110],[["y",93,0,117,3],114],[["x",94,0],224],[["y",94,0,105,3],110],[["y",94,0,121,3],114],[["x",95,1],224],[["y",95,1,75,4],80],[["y",95,1,83,2],38],[["y",95,1,87,2],1],[["y",95,1,97,2],17],[["y",95,1,100,4],144],[["y",95,1,111,2],38],[["y",95,1,112,2],16],[["y",95,1,116,2],38],[["y",95,1,117,2],38],[["y",95,1,118,2],38],[["x",96,0],224],[["y",96,0,99,3],114],[["y",96,0,101,3],4],[["y",96,0,103,3],4],[["y",96,0,106,3],76],[["y",96,0,109,3],26],[["x",97,3],224],[["y",97,3,33,4],1],[["y",97,3,47,1],1],[["y",97,3,51,1],43],[["y",97,3,51,4],181],[["y",97,3,93,1],44],[["y",97,3,99,4],26],[["y",97,3,105,1],12],[["y",97,3,113,4],224],[["y",97,3,117,1],44],[["y",97,3,118,4],16],[["y",97,3,119,1],36],[["y",97,3,123,4],224],[["y",97,3,129,1],44],[["x",98,0],224],[["x",99,0],224],[["y",99,0,124,3],110],[["y",99,0,130,3],114],[["x",100,0],224],[["y",100,0,108,3],94],[["y",100,0,128,3],114],[["y",100,0,134,3],16],[["x",101,1],70],[["y",101,1,61,4],38],[["y",101,1,87,4],16],[["y",101,1,94,2],32],[["y",101,1,111,4],16],[["y",101,1,135,2],38],[["x",101,2],154],[["y",101,2,69,3],41],[["y",101,2,90,0],5],[["y",101,2,93,0],44],[["y",101,2,97,0],44],[["y",101,2,102,3],109],[["y",101,2,103,0],44],[["y",101,2,105,3],4],[["y",101,2,115,0],43],[["y",101,2,118,0],44],[["y",101,2,120,0],40],[["y",101,2,131,0],44],[["x",102,0],224],[["y",102,0,106,3],38],[["y",102,0,122,3],72],[["y",102,0,123,3],114],[["x",103,3],224],[["y",103,3,69,4],10],[["y",103,3,77,1],39],[["y",103,3,82,4],53],[["y",103,3,99,1],41],[["y",103,3,108,1],13],[["y",103,3,114,4],92],[["y",103,3,123,1],43],[["y",103,3,130,4],224],[["y",103,3,131,4],224],[["y",103,3,133,4],69],[["y",103,3,135,1],44],[["y",103,3,137,1],44],[["x",104,0],224],[["x",105,0],224],[["y",105,0,131,3],110],[["y",105,0,137,3],114],[["x",106,0],224],[["y",106,0,125,3],110],[["y",106,0,129,3],114],[["x",107,1],224],[["y",107,1,63,4],16],[["y",107,1,75,2],30],[["y",107,1,97,2],1],[["y",107,1,107,2],38],[["y",107,1,109,2],38],[["y",107,1,109,4],41],[["y",107,1,119,4],146],[["y",107,1,121,2],16],[["y",107,1,122,2],21],[["y",107,1,124,2],38],[["y",107,1,125,4],16],[["y",107,1,128,4],5],[["y",107,1,141,2],38],[["y",107,1,142,2],4],[["x",108,0],224],[["y",108,0,111,3],3],[["y",108,0,115,3],103],[["y",108,0,118,3],114],[["y",108,0,124,3],4],[["x",109,3],224],[["y",109,3,8,4],170],[["y",109,3,10,4],5],[["y",109,3,41,4],72],[["y",109,3,45,4],224],[["y",109,3,88,4],16],[["y",109,3,94,1],44],[["y",109,3,94,4],180],[["y",109,3,97,1],4],[["y",109,3,116,1],44],[["y",109,3,126,1],44],[["y",109,3,139,1],44],[["y",109,3,141,4],5],[["y",109,3,143,1],44],[["x",110,0],224],[["x",111,0],224],[["y",111,0,140,3],114],[["y",111,0,147,3],110],[["x",112,0],224],[["y",112,0,119,3],114],[["y",112,0,136,3],110],[["x",113,1],224],[["y",113,1,46,4],4],[["y",113,1,52,4],16],[["y",113,1,66,4],16],[["y",113,1,84,4],80],[["y",113,1,115,2],38],[["y",113,1,116,4],86],[["y",113,1,124,4],22],[["y",113,1,128,2],38],[["y",113,1,143,2],38],[["y",113,1,145,2],34],[["y",113,1,150,2],38],[["y",113,1,151,2],38],[["x",114,0],224],[["y",114,0,126,3],114],[["y",114,0,148,3],110],[["x",115,3],224],[["y",115,3,7,4],224],[["y",115,3,14,4],2],[["y",115,3,39,4],32],[["y",115,3,49,4],87],[["y",115,3,51,1],1],[["y",115,3,51,4],59],[["y",115,3,55,1],38],[["y",115,3,59,4],12],[["y",115,3,78,4],16],[["y",115,3,81,1],44],[["y",115,3,87,1],44],[["y",115,3,128,1],44],[["y",115,3,132,4],25],[["y",115,3,147,1],44],[["y",115,3,151,1],9],[["y",115,3,151,4],215],[["x",116,0],180],[["x",116,1],44],[["y",116,1,61,4],44],[["y",116,1,68,4],44],[["y",116,1,91,3],5],[["y",116,1,91,4],39],[["y",116,1,108,4],44],[["y",116,1,122,0],5],[["y",116,1,122,3],39],[["y",116,1,154,4],5],[["y",116,1,155,0],39],[["x",117,0],224],[["y",117,0,131,3],4],[["y",117,0,150,3],107],[["y",117,0,156,3],113],[["x",118,0],224],[["y",118,0,134,3],98],[["y",118,0,138,3],114],[["y",118,0,154,3],12],[["x",119,1],224],[["y",119,1,78,4],224],[["y",119,1,125,2],38],[["y",119,1,129,2],30],[["y",119,1,130,2],38],[["y",119,1,132,2],38],[["y",119,1,134,2],38],[["y",119,1,146,2],4],[["y",119,1,147,2],38],[["x",120,0],224],[["y",120,0,141,3],106],[["y",120,0,150,3],4],[["y",120,0,159,3],114],[["x",121,3],224],[["y",121,3,49,1],44],[["y",121,3,73,4],224],[["y",121,3,89,1],44],[["y",121,3,96,4],224],[["y",121,3,119,1],8],[["y",121,3,124,1],44],[["y",121,3,152,4],224],[["y",121,3,153,1],44],[["y",121,3,161,1],40],[["x",122,1],224],[["y",122,1,43,4],1],[["y",122,1,80,0],44],[["y",122,1,85,4],224],[["y",122,1,120,0],4],[["y",122,1,129,4],16],[["y",122,1,130,4],5],[["y",122,1,134,4],224],[["y",122,1,137,0],44],[["y",122,1,137,4],126],[["y",122,1,139,4],16],[["y",122,1,142,3],114],[["y",122,1,144,0],44],[["y",122,1,152,0],44],[["y",122,1,152,3],110],[["y",122,1,158,4],60],[["y",122,1,159,0],44],[["y",122,1,163,4],224],[["x",123,0],224],[["y",123,0,133,3],114],[["y",123,0,135,3],110],[["x",124,0],224],[["y",124,0,145,3],114],[["y",124,0,163,3],110],[["x",125,1],114],[["y",125,1,112,2],22],[["y",125,1,123,2],38],[["y",125,1,137,4],114],[["y",125,1,153,2],38],[["y",125,1,162,2],16],[["x",125,2],110],[["y",125,2,63,3],4],[["y",125,2,77,3],95],[["y",125,2,122,3],3],[["y",125,2,123,0],44],[["y",125,2,126,0],44],[["y",125,2,135,3],4],[["y",125,2,136,3],4],[["y",125,2,148,0],44],[["y",125,2,160,0],44],[["y",125,2,166,0],44],[["x",126,0],224],[["y",126,0,132,3],114],[["y",126,0,143,3],110],[["x",127,3],60],[["y",127,3,0,4],4],[["y",127,3,38,4],1],[["y",127,3,80,4],60],[["y",127,3,104,4],16],[["y",127,3,115,4],60],[["y",127,3,126,4],16],[["y",127,3,127,1],25],[["y",127,3,132,1],35],[["y",127,3,145,4],1],[["y",127,3,169,4],22],[["x",127,4],164],[["y",127,4,67,0],44],[["y",127,4,69,0],1],[["y",127,4,99,4],164],[["y",127,4,101,4],164],[["y",127,4,109,0],44],[["y",127,4,114,0],23],[["y",127,4,116,0],44],[["y",127,4,129,0],8],[["y",127,4,148,4],164],[["x",128,0],224],[["x",129,3],223],[["y",129,3,63,1],44],[["y",129,3,103,1],19],[["y",129,3,103,4],16],[["y",129,3,105,1],31],[["y",129,3,105,4],192],[["y",129,3,120,4],219],[["y",129,3,122,1],7],[["y",129,3,145,4],12],[["y",129,3,150,1],44],[["y",129,3,153,4],16],[["y",129,3,156,1],24],[["y",129,3,157,1],10],[["y",129,3,157,4],213],[["y",129,3,161,4],1],[["y",129,3,164,1],44],[["x",129,5],1],[["y",129,5,49,3],1],[["y",129,5,110,0],1],[["y",129,5,115,0],1],[["y",129,5,127,3],1],[["y",129,5,170,3],1],[["x",130,1],224],[["y",130,1,110,2],38],[["y",130,1,114,2],34],[["y",130,1,133,2],38],[["y",130,1,140,2],38],[["y",130,1,152,2],38],[["y",130,1,153,4],224],[["y",130,1,170,2],38],[["x",131,0],224],[["x",132,0],224],[["y",132,0,139,3],105],[["y",132,0,147,3],4],[["y",132,0,165,3],114],[["y",132,0,169,3],1],[["x",133,0],224],[["y",133,0,158,3],114],[["y",133,0,161,3],110],[["x",134,1],224],[["y",134,1,93,4],224],[["y",134,1,119,2],38],[["y",134,1,138,2],38],[["y",134,1,144,2],34],[["y",134,1,155,2],38],[["y",134,1,163,2],38],[["y",134,1,169,2],38],[["x",135,0],224],[["y",135,0,150,3],3],[["y",135,0,151,3],114],[["y",135,0,153,3],42],[["y",135,0,160,3],64],[["y",135,0,163,3],1],[["x",136,3],224],[["y",136,3,76,4],20],[["y",136,3,90,1],44],[["y",136,3,91,4],97],[["y",136,3,102,1],44],[["y",136,3,103,4],224],[["y",136,3,113,1],44],[["y",136,3,133,1],44],[["y",136,3,133,4],107],[["y",136,3,140,4],224],[["y",136,3,161,1],4],[["y",136,3,170,1],44],[["x",137,0],224],[["x",138,3],224],[["y",138,3,85,1],44],[["y",138,3,91,4],3],[["y",138,3,97,1],40],[["y",138,3,99,4],50],[["y",138,3,100,4],1],[["y",138,3,127,1],3],[["y",138,3,130,1],44],[["y",138,3,132,4],215],[["y",138,3,133,4],15],[["y",138,3,157,1],2],[["y",138,3,158,1],44],[["y",138,3,158,4],180],[["y",138,3,159,4],208],[["y",138,3,169,1],27],[["y",138,3,178,1],20],[["x",139,1],224],[["y",139,1,131,2],38],[["y",139,1,137,2],38],[["y",139,1,146,2],34],[["y",139,1,154,2],38],[["y",139,1,164,2],38],[["y",139,1,166,4],224],[["y",139,1,173,2],38],[["x",140,0],224],[["x",141,0],224],[["y",141,0,157,3],65],[["y",141,0,162,3],114],[["y",141,0,164,3],4],[["y",141,0,180,3],41],[["x",142,0],224],[["y",142,0,146,3],114],[["y",142,0,148,3],4],[["y",142,0,154,3],102],[["y",142,0,173,3],4],[["x",143,1],224],[["y",143,1,100,2],14],[["y",143,1,136,2],38],[["y",143,1,156,4],224],[["y",143,1,161,2],8],[["y",143,1,165,2],38],[["y",143,1,176,2],38],[["y",143,1,177,2],12],[["y",143,1,180,2],38],[["y",143,1,181,2],38],[["x",144,0],224],[["y",144,0,167,3],114],[["y",144,0,173,3],110],[["x",145,3],224],[["y",145,3,33,4],58],[["y",145,3,73,1],44],[["y",145,3,89,4],137],[["y",145,3,111,4],224],[["y",145,3,127,1],15],[["y",145,3,132,1],4],[["y",145,3,141,1],44],[["y",145,3,144,4],7],[["y",145,3,149,4],173],[["y",145,3,176,1],29],[["y",145,3,182,1],44],[["y",145,3,183,4],73],[["y",145,3,184,1],44],[["x",146,0],224],[["x",147,3],224],[["y",147,3,60,4],28],[["y",147,3,64,1],12],[["y",147,3,64,4],180],[["y",147,3,65,4],224],[["y",147,3,82,1],44],[["y",147,3,83,1],40],[["y",147,3,104,1],36],[["y",147,3,107,4],224],[["y",147,3,138,4],16],[["y",147,3,173,1],8],[["y",147,3,179,1],40],[["y",147,3,185,1],44],[["x",148,1],224],[["y",148,1,126,4],224],[["y",148,1,127,2],38],[["y",148,1,142,2],24],[["y",148,1,148,2],10],[["y",148,1,156,2],38],[["y",148,1,166,2],38],[["y",148,1,168,2],38],[["y",148,1,172,2],38],[["x",149,0],224],[["x",150,0],224],[["y",150,0,164,3],110],[["y",150,0,179,3],114],[["x",151,0],224],[["y",151,0,160,3],37],[["y",151,0,180,3],73],[["y",151,0,185,3],114],[["x",152,1],224],[["y",152,1,77,4],224],[["y",152,1,105,2],38],[["y",152,1,121,2],22],[["y",152,1,126,2],38],[["y",152,1,129,2],8],[["y",152,1,139,2],38],[["y",152,1,144,2],4],[["y",152,1,149,2],38],[["y",152,1,159,2],38],[["x",153,0],224],[["y",153,0,166,3],114],[["y",153,0,168,3],110],[["x",154,3],224],[["y",154,3,30,4],62],[["y",154,3,64,1],9],[["y",154,3,67,4],44],[["y",154,3,117,4],162],[["y",154,3,131,1],44],[["y",154,3,162,4],224],[["y",154,3,166,1],44],[["y",154,3,173,1],22],[["y",154,3,174,1],44],[["y",154,3,181,1],44],[["y",154,3,181,4],180],[["y",154,3,183,1],5],[["y",154,3,189,1],12],[["x",155,0],224],[["x",156,3],224],[["y",156,3,91,1],44],[["y",156,3,94,4],4],[["y",156,3,105,1],1],[["y",156,3,110,1],44],[["y",156,3,110,4],180],[["y",156,3,135,4],36],[["y",156,3,139,4],224],[["y",156,3,165,1],4],[["y",156,3,169,4],2],[["y",156,3,171,1],19],[["y",156,3,171,4],205],[["y",156,3,178,1],24],[["y",156,3,180,1],44],[["y",156,3,184,4],6],[["y",156,3,188,4],15],[["y",156,3,194,1],44],[["x",157,1],224],[["y",157,1,157,2],38],[["y",157,1,164,4],79],[["y",157,1,170,4],145],[["y",157,1,185,2],34],[["y",157,1,186,2],38],[["y",157,1,188,2],38],[["y",157,1,189,2],38],[["y",157,1,191,2],38],[["x",158,0],152],[["x",158,1],72],[["y",158,1,31,0],17],[["y",158,1,82,4],72],[["y",158,1,101,0],11],[["y",158,1,101,4],61],[["y",158,1,130,0],44],[["y",158,1,130,4],11],[["y",158,1,135,4],72],[["y",158,1,145,4],72],[["y",158,1,153,3],72],[["x",159,0],224],[["y",159,0,168,3],4],[["y",159,0,170,3],106],[["y",159,0,172,3],114],[["x",160,0],224],[["y",160,0,186,3],35],[["y",160,0,187,3],114],[["y",160,0,189,3],75],[["x",161,1],57],[["y",161,1,26,4],13],[["y",161,1,105,4],1],[["y",161,1,121,4],3],[["y",161,1,122,2],17],[["y",161,1,122,4],40],[["y",161,1,185,2],2],[["y",161,1,192,2],38],[["x",161,2],167],[["y",161,2,34,3],114],[["y",161,2,85,0],44],[["y",161,2,88,0],42],[["y",161,2,88,3],6],[["y",161,2,90,0],38],[["y",161,2,112,0],44],[["y",161,2,114,0],9],[["y",161,2,128,0],44],[["y",161,2,141,3],8],[["y",161,2,143,3],4],[["y",161,2,156,0],3],[["y",161,2,163,3],3],[["y",161,2,167,0],44],[["y",161,2,182,3],32],[["y",161,2,193,0],22],[["y",161,2,196,0],44],[["x",162,0],224],[["y",162,0,183,3],114],[["y",162,0,193,3],110],[["x",163,3],224],[["y",163,3,25,1],19],[["y",163,3,28,1],44],[["y",163,3,28,4],180],[["y",163,3,43,1],44],[["y",163,3,60,4],56],[["y",163,3,63,4],224],[["y",163,3,102,4],16],[["y",163,3,109,1],44],[["y",163,3,109,4],180],[["y",163,3,120,4],4],[["y",163,3,134,1],44],[["y",163,3,141,4],1],[["y",163,3,146,1],1],[["y",163,3,173,1],14],[["y",163,3,175,4],11],[["y",163,3,201,1],14],[["x",164,0],224],[["x",165,3],224],[["y",165,3,72,4],42],[["y",165,3,74,4],48],[["y",165,3,79,4],18],[["y",165,3,92,4],224],[["y",165,3,94,4],7],[["y",165,3,95,1],44],[["y",165,3,96,4],16],[["y",165,3,100,1],44],[["y",165,3,104,4],224],[["y",165,3,111,1],44],[["y",165,3,132,1],4],[["y",165,3,134,4],16],[["y",165,3,140,1],44],[["y",165,3,146,4],50],[["y",165,3,172,1],44],[["y",165,3,202,4],27],[["x",166,1],224],[["y",166,1,138,4],224],[["y",166,1,142,2],10],[["y",166,1,162,2],22],[["y",166,1,171,2],38],[["y",166,1,184,2],38],[["y",166,1,193,2],38],[["y",166,1,195,2],38],[["y",166,1,197,2],38],[["y",166,1,200,2],2],[["x",167,0],224],[["x",168,0],224],[["y",168,0,174,3],110],[["y",168,0,199,3],114],[["x",169,0],224],[["y",169,0,178,3],110],[["y",169,0,206,3],114],[["x",170,0],224],[["y",170,0,197,3],114],[["y",170,0,202,3],110],[["x",171,3],224],[["y",171,3,5,1],13],[["y",171,3,60,4],57],[["y",171,3,72,4],162],[["y",171,3,80,1],23],[["y",171,3,98,4],5],[["y",171,3,104,1],8],[["y",171,3,106,4],224],[["y",171,3,108,1],31],[["y",171,3,125,1],44],[["y",171,3,174,4],224],[["y",171,3,199,1],44],[["y",171,3,200,1],44],[["y",171,3,205,1],17],[["x",172,0],224],[["x",173,3],224],[["y",173,3,84,1],19],[["y",173,3,89,4],33],[["y",173,3,90,4],20],[["y",173,3,93,4],16],[["y",173,3,105,4],47],[["y",173,3,112,4],16],[["y",173,3,131,4],16],[["y",173,3,143,4],16],[["y",173,3,168,1],44],[["y",173,3,181,4],60],[["y",173,3,188,1],44],[["y",173,3,189,1],32],[["y",173,3,195,1],41],[["y",173,3,202,1],44],[["y",173,3,204,4],224],[["y",173,3,208,4],224],[["x",174,1],224],[["y",174,1,145,2],4],[["y",174,1,155,4],15],[["y",174,1,160,2],38],[["y",174,1,161,2],30],[["y",174,1,161,4],194],[["y",174,1,166,4],15],[["y",174,1,174,2],38],[["y",174,1,201,2],38],[["y",174,1,202,2],38],[["y",174,1,205,2],38],[["x",175,0],224],[["x",176,0],224],[["y",176,0,177,3],110],[["y",176,0,192,3],114],[["x",177,0],224],[["y",177,0,181,3],108],[["y",177,0,189,3],2],[["y",177,0,212,3],114],[["x",178,0],224],[["y",178,0,207,3],110],[["y",178,0,213,3],114],[["x",179,3],224],[["y",179,3,5,1],4],[["y",179,3,12,4],1],[["y",179,3,35,4],1],[["y",179,3,86,1],44],[["y",179,3,86,4],180],[["y",179,3,115,4],180],[["y",179,3,127,4],16],[["y",179,3,142,4],39],[["y",179,3,149,1],44],[["y",179,3,154,4],224],[["y",179,3,175,1],44],[["y",179,3,197,1],44],[["y",179,3,210,4],15],[["y",179,3,212,1],44],[["y",179,3,212,4],16],[["x",180,1],224],[["y",180,1,79,0],3],[["y",180,1,79,4],221],[["y",180,1,81,0],44],[["y",180,1,83,0],44],[["y",180,1,94,0],1],[["y",180,1,98,0],44],[["y",180,1,111,3],111],[["y",180,1,112,4],224],[["y",180,1,127,3],113],[["y",180,1,139,0],44],[["y",180,1,141,0],44],[["y",180,1,179,4],192],[["y",180,1,196,4],224],[["y",180,1,206,4],35],[["x",181,3],224],[["y",181,3,89,4],70],[["y",181,3,116,4],154],[["y",181,3,121,4],224],[["y",181,3,136,4],224],[["y",181,3,152,1],44],[["y",181,3,156,1],9],[["y",181,3,163,1],44],[["y",181,3,183,1],39],[["y",181,3,198,1],44],[["y",181,3,213,1],44],[["x",182,1],180],[["y",182,1,148,2],28],[["y",182,1,156,4],16],[["y",182,1,158,2],38],[["y",182,1,175,2],38],[["y",182,1,182,2],38],[["y",182,1,199,2],38],[["y",182,1,199,4],43],[["y",182,1,210,4],121],[["x",182,2],44],[["y",182,2,179,0],44],[["y",182,2,194,3],44],[["y",182,2,205,0],44],[["x",183,0],224],[["x",184,0],224],[["y",184,0,184,3],110],[["y",184,0,218,3],114],[["x",185,0],224],[["y",185,0,188,3],83],[["y",185,0,189,3],26],[["y",185,0,195,3],1],[["y",185,0,208,3],114],[["x",186,0],224],[["y",186,0,200,3],114],[["y",186,0,202,3],4],[["y",186,0,211,3],106],[["x",187,3],224],[["y",187,3,83,1],4],[["y",187,3,95,4],224],[["y",187,3,144,1],44],[["y",187,3,145,1],44],[["y",187,3,160,1],44],[["y",187,3,178,4],224],[["y",187,3,211,1],44],[["y",187,3,212,4],224],[["y",187,3,219,1],44],[["x",188,1],224],[["y",188,1,86,0],44],[["y",188,1,87,0],44],[["y",188,1,110,4],60],[["y",188,1,118,4],224],[["y",188,1,129,4],224],[["y",188,1,135,0],44],[["y",188,1,144,3],110],[["y",188,1,145,0],44],[["y",188,1,145,4],136],[["y",188,1,154,4],11],[["y",188,1,162,0],44],[["y",188,1,166,4],1],[["y",188,1,173,4],16],[["y",188,1,185,4],224],[["y",188,1,190,3],114],[["y",188,1,193,0],4],[["x",189,3],224],[["y",189,3,95,4],16],[["y",189,3,117,4],33],[["y",189,3,122,4],200],[["y",189,3,145,4],19],[["y",189,3,155,1],44],[["y",189,3,193,1],44],[["y",189,3,193,4],180],[["y",189,3,197,4],224],[["y",189,3,204,1],4],[["y",189,3,209,1],44],[["y",189,3,221,1],44],[["y",189,3,223,1],44],[["x",190,1],224],[["y",190,1,177,2],26],[["y",190,1,187,2],38],[["y",190,1,190,2],38],[["y",190,1,207,2],38],[["y",190,1,210,2],38],[["y",190,1,211,4],224],[["y",190,1,212,2],38],[["y",190,1,220,2],8],[["x",191,0],224],[["x",192,0],224],[["y",192,0,195,3],106],[["y",192,0,201,3],114],[["y",192,0,216,3],4],[["x",193,0],224],[["y",193,0,223,3],114],[["y",193,0,226,3],110],[["x",194,0],224],[["y",194,0,210,3],114],[["y",194,0,219,3],106],[["y",194,0,224,3],4],[["x",195,3],12],[["y",195,3,46,4],12],[["y",195,3,99,1],3],[["y",195,3,127,1],1],[["y",195,3,144,4],9],[["y",195,3,159,4],11],[["y",195,3,208,1],8],[["y",195,3,208,4],4],[["x",195,5],212],[["y",195,5,56,3],82],[["y",195,5,58,3],114],[["y",195,5,60,0],44],[["y",195,5,84,0],44],[["y",195,5,92,0],44],[["y",195,5,121,0],44],[["y",195,5,139,3],9],[["y",195,5,155,3],114],[["y",195,5,164,0],44],[["y",195,5,172,0],44],[["y",195,5,174,3],4],[["y",195,5,175,3],114],[["y",195,5,182,3],82],[["y",195,5,184,0],44],[["y",195,5,196,3],114],[["y",195,5,202,0],44],[["y",195,5,207,3],3],[["y",195,5,213,0],28],[["y",195,5,222,0],44],[["x",196,1],224],[["y",196,1,56,4],224],[["y",196,1,69,3],6],[["y",196,1,69,4],218],[["y",196,1,73,0],44],[["y",196,1,77,3],1],[["y",196,1,87,4],224],[["y",196,1,94,0],1],[["y",196,1,121,4],13],[["y",196,1,135,4],7],[["y",196,1,157,0],44],[["y",196,1,169,3],103],[["y",196,1,195,4],210],[["y",196,1,198,3],114],[["y",196,1,200,0],44],[["y",196,1,203,0],3],[["y",196,1,218,0],44],[["y",196,1,229,0],44],[["x",197,3],73],[["y",197,3,109,4],19],[["y",197,3,121,1],29],[["y",197,3,141,4],73],[["y",197,3,151,4],22],[["y",197,3,163,4],16],[["y",197,3,174,4],16],[["y",197,3,192,4],73],[["y",197,3,196,1],44],[["x",197,4],16],[["y",197,4,98,4],16],[["y",197,4,119,0],16],[["y",197,4,135,4],16],[["y",197,4,159,4],16],[["x",197,5],135],[["y",197,5,95,0],44],[["y",197,5,102,0],44],[["y",197,5,114,0],12],[["y",197,5,120,3],15],[["y",197,5,125,0],3],[["y",197,5,125,3],4],[["y",197,5,142,0],44],[["y",197,5,161,3],4],[["y",197,5,171,3],114],[["y",197,5,176,3],20],[["y",197,5,193,3],4],[["y",197,5,194,0],38],[["y",197,5,206,0],41],[["y",197,5,208,0],44],[["y",197,5,209,3],114],[["y",197,5,211,3],8],[["y",197,5,222,3],114],[["y",197,5,226,3],4],[["y",197,5,229,3],4],[["x",198,1],224],[["y",198,1,167,2],38],[["y",198,1,178,2],38],[["y",198,1,194,2],38],[["y",198,1,200,2],36],[["y",198,1,202,4],38],[["y",198,1,206,2],38],[["y",198,1,206,4],186],[["y",198,1,211,2],36],[["x",199,0],224],[["x",200,0],224],[["y",200,0,227,3],114],[["y",200,0,229,3],110],[["x",201,0],224],[["y",201,0,205,3],114],[["y",201,0,216,3],110],[["x",202,0],224],[["y",202,0,219,3],3],[["y",202,0,220,3],114],[["y",202,0,233,3],107],[["x",203,4],53],[["y",203,4,9,4],7],[["y",203,4,78,0],23],[["y",203,4,113,4],16],[["y",203,4,123,4],16],[["y",203,4,134,0],28],[["y",203,4,142,4],53],[["y",203,4,195,4],14],[["y",203,4,222,4],2],[["y",203,4,227,0],2],[["y",203,4,227,4],51],[["x",203,5],171],[["y",203,5,55,3],114],[["y",203,5,78,0],19],[["y",203,5,79,3],12],[["y",203,5,89,3],4],[["y",203,5,99,0],44],[["y",203,5,110,0],43],[["y",203,5,112,3],114],[["y",203,5,117,0],44],[["y",203,5,138,0],44],[["y",203,5,144,3],4],[["y",203,5,163,0],44],[["y",203,5,182,0],44],[["y",203,5,195,0],44],[["y",203,5,203,3],114],[["y",203,5,213,0],16],[["y",203,5,225,3],114],[["y",203,5,233,3],4],[["y",203,5,235,3],33],[["x",204,0],224],[["x",205,3],224],[["y",205,3,107,1],28],[["y",205,3,132,1],1],[["y",205,3,133,4],2],[["y",205,3,167,4],224],[["y",205,3,177,1],18],[["y",205,3,178,4],2],[["y",205,3,186,1],44],[["y",205,3,186,4],144],[["y",205,3,195,4],16],[["y",205,3,196,4],16],[["y",205,3,201,1],30],[["y",205,3,207,1],44],[["y",205,3,208,1],36],[["y",205,3,214,4],88],[["y",205,3,227,4],180],[["y",205,3,234,1],23],[["x",206,1],86],[["y",206,1,169,4],9],[["y",206,1,179,2],38],[["y",206,1,179,4],48],[["y",206,1,183,2],38],[["y",206,1,188,4],1],[["y",206,1,198,4],16],[["y",206,1,208,4],12],[["y",206,1,216,2],10],[["x",206,2],138],[["y",206,2,169,3],10],[["y",206,2,173,0],44],[["y",206,2,177,0],44],[["y",206,2,183,0],44],[["y",206,2,184,3],4],[["y",206,2,194,3],70],[["y",206,2,201,0],44],[["y",206,2,204,0],13],[["y",206,2,215,0],31],[["y",206,2,217,3],4],[["y",206,2,223,0],12],[["y",206,2,226,0],44],[["y",206,2,232,3],50],[["x",207,0],224],[["x",208,0],224],[["y",208,0,228,3],114],[["y",208,0,234,3],102],[["y",208,0,240,3],8],[["x",209,0],224],[["y",209,0,217,3],110],[["y",209,0,238,3],114],[["x",210,3],224],[["y",210,3,20,4],16],[["y",210,3,57,1],44],[["y",210,3,59,1],8],[["y",210,3,60,4],63],[["y",210,3,118,1],44],[["y",210,3,125,4],224],[["y",210,3,162,1],44],[["y",210,3,165,1],40],[["y",210,3,200,4],145],[["y",210,3,203,1],44],[["y",210,3,226,4],224],[["x",211,0],224],[["x",212,3],224],[["y",212,3,107,4],16],[["y",212,3,117,4],45],[["y",212,3,138,1],44],[["y",212,3,143,4],224],[["y",212,3,146,1],34],[["y",212,3,146,4],190],[["y",212,3,167,1],44],[["y",212,3,187,1],44],[["y",212,3,195,1],3],[["y",212,3,199,4],197],[["y",212,3,229,1],44],[["y",212,3,234,1],1],[["y",212,3,236,1],10],[["x",213,1],224],[["y",213,1,197,4],16],[["y",213,1,209,4],192],[["y",213,1,211,4],16],[["y",213,1,214,2],38],[["y",213,1,222,2],38],[["y",213,1,224,2],38],[["y",213,1,226,2],32],[["y",213,1,236,2],2],[["y",213,1,239,2],14],[["y",213,1,241,2],24],[["y",213,1,243,2],38],[["x",214,0],224],[["x",215,0],224],[["y",215,0,224,3],110],[["y",215,0,237,3],114],[["x",216,0],224],[["y",216,0,230,3],114],[["y",216,0,232,3],15],[["y",216,0,243,3],95],[["x",217,3],224],[["y",217,3,91,4],101],[["y",217,3,121,1],15],[["y",217,3,122,1],36],[["y",217,3,123,1],1],[["y",217,3,142,1],44],[["y",217,3,144,4],224],[["y",217,3,165,4],1],[["y",217,3,177,1],26],[["y",217,3,177,4],198],[["y",217,3,218,1],44],[["y",217,3,220,4],122],[["y",217,3,222,4],26],[["y",217,3,236,1],18],[["y",217,3,247,1],40],[["x",218,1],224],[["y",218,1,66,0],4],[["y",218,1,108,0],44],[["y",218,1,119,4],94],[["y",218,1,133,0],44],[["y",218,1,135,4],109],[["y",218,1,147,4],153],[["y",218,1,157,3],49],[["y",218,1,158,0],44],[["y",218,1,167,4],16],[["y",218,1,168,4],1],[["y",218,1,171,4],35],[["y",218,1,182,4],52],[["y",218,1,189,3],11],[["y",218,1,189,4],212],[["y",218,1,220,0],44],[["y",218,1,229,4],224],[["y",218,1,231,3],50],[["y",218,1,243,0],44],[["y",218,1,249,3],114],[["x",219,3],224],[["y",219,3,159,1],44],[["y",219,3,169,1],17],[["y",219,3,169,4],207],[["y",219,3,176,4],224],[["y",219,3,187,4],224],[["y",219,3,204,1],40],[["y",219,3,214,1],38],[["y",219,3,216,1],44],[["y",219,3,233,1],13],[["y",219,3,234,4],16],[["y",219,3,237,1],28],[["y",219,3,238,4],1],[["x",220,1],158],[["y",220,1,185,2],2],[["y",220,1,207,4],2],[["y",220,1,213,2],38],[["y",220,1,218,2],24],[["y",220,1,221,2],38],[["y",220,1,232,2],38],[["y",220,1,237,2],18],[["y",220,1,237,4],140],[["y",220,1,243,4],16],[["x",220,2],66],[["y",220,2,188,3],31],[["y",220,2,207,3],1],[["y",220,2,216,0],44],[["y",220,2,221,3],12],[["y",220,2,241,0],44],[["y",220,2,243,3],19],[["y",220,2,247,0],44],[["y",220,2,247,3],3],[["x",221,0],224],[["x",222,0],224],[["y",222,0,240,3],106],[["y",222,0,245,3],4],[["y",222,0,248,3],114],[["x",223,0],224],[["y",223,0,245,3],110],[["y",223,0,251,3],114],[["x",224,3],224],[["y",224,3,57,4],16],[["y",224,3,68,4],169],[["y",224,3,79,1],12],[["y",224,3,85,4],16],[["y",224,3,148,1],44],[["y",224,3,157,1],21],[["y",224,3,176,1],15],[["y",224,3,190,4],44],[["y",224,3,191,1],44],[["y",224,3,206,1],44],[["y",224,3,243,1],44],[["y",224,3,244,4],1],[["y",224,3,247,4],224],[["y",224,3,248,4],202],[["x",225,0],224],[["x",226,3],224],[["y",226,3,142,4],1],[["y",226,3,154,1],44],[["y",226,3,155,4],22],[["y",226,3,156,1],11],[["y",226,3,171,1],25],[["y",226,3,205,1],27],[["y",226,3,205,4],197],[["y",226,3,220,1],38],[["y",226,3,222,1],12],[["y",226,3,222,4],212],[["y",226,3,223,4],224],[["y",226,3,225,1],44],[["y",226,3,226,4],16],[["y",226,3,237,1],16],[["y",226,3,240,1],7],[["x",227,1],224],[["y",227,1,196,2],38],[["y",227,1,198,2],38],[["y",227,1,204,2],38],[["y",227,1,209,2],38],[["y",227,1,217,4],208],[["y",227,1,218,2],14],[["y",227,1,225,2],38],[["y",227,1,227,2],20],[["y",227,1,245,4],16],[["x",228,0],224],[["x",229,0],224],[["y",229,0,236,3],114],[["y",229,0,255,3],110],[["x",230,0],224],[["y",230,0,232,3],49],[["y",230,0,233,3],3],[["y",230,0,252,3],58],[["y",230,0,254,3],114],[["x",231,3],224],[["y",231,3,66,4],118],[["y",231,3,122,1],1],[["y",231,3,133,4],47],[["y",231,3,160,4],16],[["y",231,3,177,4],42],[["y",231,3,190,4],196],[["y",231,3,205,4],43],[["y",231,3,214,1],6],[["y",231,3,227,1],44],[["y",231,3,229,4],16],[["y",231,3,232,1],44],[["y",231,3,232,4],180],[["y",231,3,240,1],37],[["y",231,3,240,4],1],[["y",231,3,241,4],13],[["y",231,3,245,1],44],[["y",231,3,247,1],4],[["y",231,3,248,1],44],[["x",232,0],224],[["x",233,3],224],[["y",233,3,128,4],224],[["y",233,3,136,1],44],[["y",233,3,142,4],147],[["y",233,3,146,1],9],[["y",233,3,221,4],16],[["y",233,3,234,1],11],[["y",233,3,235,1],44],[["y",233,3,239,4],57],[["y",233,3,242,4],32],[["y",233,3,247,4],16],[["y",233,3,252,1],44],[["y",233,3,257,1],44],[["y",233,3,257,4],180],[["y",233,3,259,1],28],[["x",234,1],224],[["y",234,1,203,2],38],[["y",234,1,211,2],2],[["y",234,1,213,4],23],[["y",234,1,216,2],28],[["y",234,1,217,2],38],[["y",234,1,223,2],38],[["y",234,1,233,4],47],[["y",234,1,237,2],4],[["y",234,1,255,2],38],[["y",234,1,255,4],138],[["y",234,1,256,2],38],[["y",234,1,256,4],16],[["x",235,0],110],[["x",235,1],114],[["y",235,1,30,4],15],[["y",235,1,38,4],114],[["y",235,1,61,4],114],[["y",235,1,94,0],42],[["y",235,1,125,0],23],[["y",235,1,136,4],16],[["y",235,1,150,0],44],[["y",235,1,175,4],83],[["y",235,1,203,4],114],[["y",235,1,225,0],5],[["y",235,1,260,3],114],[["x",236,0],224],[["y",236,0,242,3],114],[["y",236,0,257,3],22],[["y",236,0,258,3],88],[["x",237,0],224],[["y",237,0,247,3],110],[["y",237,0,256,3],114],[["x",238,0],224],[["x",239,3],224],[["y",239,3,140,4],16],[["y",239,3,162,4],16],[["y",239,3,173,4],222],[["y",239,3,179,1],4],[["y",239,3,200,4],95],[["y",239,3,201,4],16],[["y",239,3,202,4],175],[["y",239,3,215,1],44],[["y",239,3,228,1],44],[["y",239,3,230,4],16],[["y",239,3,237,4],100],[["y",239,3,241,1],44],[["y",239,3,249,4],16],[["y",239,3,261,1],44],[["y",239,3,262,1],44],[["x",240,1],224],[["y",240,1,208,2],38],[["y",240,1,215,2],38],[["y",240,1,219,2],38],[["y",240,1,220,2],30],[["y",240,1,235,2],4],[["y",240,1,236,2],36],[["y",240,1,237,2],2],[["y",240,1,253,2],38],[["y",240,1,265,4],224],[["x",241,0],102],[["x",241,1],122],[["y",241,1,70,4],122],[["y",241,1,83,4],122],[["y",241,1,105,0],34],[["y",241,1,107,0],44],[["y",241,1,128,4],11],[["y",241,1,165,4],121],[["y",241,1,192,4],33],[["y",241,1,197,0],44],[["y",241,1,252,3],43],[["y",241,1,252,4],79],[["y",241,1,253,3],70],[["y",241,1,264,3],9],[["x",242,0],224],[["y",242,0,265,3],114],[["y",242,0,266,3],4],[["y",242,0,267,3],106],[["x",243,0],224],[["y",243,0,262,3],114],[["y",243,0,266,3],110],[["x",244,1],224],[["y",244,1,82,4],40],[["y",244,1,84,4],46],[["y",244,1,90,3],4],[["y",244,1,90,4],220],[["y",244,1,104,0],44],[["y",244,1,119,0],28],[["y",244,1,146,0],44],[["y",244,1,149,0],44],[["y",244,1,149,3],114],[["y",244,1,149,4],66],[["y",244,1,150,4],224],[["y",244,1,152,3],4],[["y",244,1,178,3],4],[["y",244,1,181,3],6],[["y",244,1,186,3],79],[["y",244,1,211,0],7],[["y",244,1,213,4],5],[["y",244,1,215,0],13],[["y",244,1,215,4],211],[["y",244,1,228,4],4],[["y",244,1,238,0],44],[["y",244,1,241,4],80],[["y",244,1,252,3],13],[["x",245,3],224],[["y",245,3,149,4],1],[["y",245,3,151,1],35],[["y",245,3,157,1],11],[["y",245,3,213,4],212],[["y",245,3,246,1],13],[["y",245,3,246,4],211],[["y",245,3,251,1],44],[["y",245,3,260,1],44],[["y",245,3,266,1],44],[["y",245,3,266,4],57],[["y",245,3,271,1],33],[["y",245,3,271,4],191],[["x",246,1],18],[["y",246,1,227,2],18],[["y",246,1,241,4],18],[["x",246,2],206],[["y",246,2,217,0],44],[["y",246,2,230,0],44],[["y",246,2,235,0],44],[["y",246,2,237,0],44],[["y",246,2,239,0],44],[["y",246,2,244,0],44],[["y",246,2,244,3],114],[["y",246,2,249,0],44],[["y",246,2,256,0],44],[["y",246,2,257,3],92],[["y",246,2,260,0],32],[["y",246,2,265,0],18],[["y",246,2,270,0],10],[["x",247,0],224],[["x",248,0],224],[["y",248,0,250,3],114],[["y",248,0,268,3],110],[["x",249,0],224],[["y",249,0,261,3],110],[["y",249,0,274,3],114],[["x",250,0],63],[["x",250,1],161],[["y",250,1,91,0],44],[["y",250,1,141,4],161],[["y",250,1,151,0],44],[["y",250,1,160,3],13],[["y",250,1,164,4],161],[["y",250,1,170,4],95],[["y",250,1,180,4],53],[["y",250,1,189,0],44],[["y",250,1,203,0],29],[["y",250,1,206,4],19],[["y",250,1,215,3],114],[["y",250,1,251,4],149],[["y",250,1,252,4],6],[["y",250,1,258,3],26],[["y",250,1,268,3],4],[["y",250,1,271,3],4],[["x",251,3],224],[["y",251,3,155,4],203],[["y",251,3,188,4],224],[["y",251,3,220,1],6],[["y",251,3,230,4],224],[["y",251,3,244,1],44],[["y",251,3,246,4],15],[["y",251,3,250,1],42],[["y",251,3,256,1],44],[["y",251,3,264,4],6],[["y",251,3,265,1],44],[["y",251,3,270,1],44],[["x",252,1],224],[["y",252,1,226,2],6],[["y",252,1,228,2],38],[["y",252,1,229,2],38],[["y",252,1,231,2],38],[["y",252,1,233,2],38],[["y",252,1,237,2],14],[["y",252,1,238,4],133],[["y",252,1,241,2],14],[["y",252,1,251,4],91],[["y",252,1,252,2],38],[["x",253,1],224],[["y",253,1,42,4],119],[["y",253,1,56,4],16],[["y",253,1,72,0],44],[["y",253,1,88,0],2],[["y",253,1,124,0],6],[["y",253,1,124,4],218],[["y",253,1,136,0],44],[["y",253,1,151,4],3],[["y",253,1,153,0],44],[["y",253,1,165,0],44],[["y",253,1,172,4],224],[["y",253,1,192,4],92],[["y",253,1,203,0],10],[["y",253,1,221,4],224],[["y",253,1,235,3],81],[["y",253,1,253,0],30],[["y",253,1,272,3],51],[["y",253,1,277,3],92],[["x",254,0],224],[["y",254,0,275,3],114],[["y",254,0,279,3],110],[["x",255,0],224],[["y",255,0,269,3],114],[["y",255,0,272,3],42],[["y",255,0,279,3],4],[["y",255,0,280,3],64],[["x",256,0],224],[["x",257,4],56],[["y",257,4,168,4],15],[["y",257,4,185,0],6],[["y",257,4,206,0],3],[["y",257,4,211,0],37],[["y",257,4,216,4],56],[["y",257,4,266,4],56],[["y",257,4,268,4],41],[["y",257,4,274,0],10],[["x",257,5],168],[["y",257,5,168,0],44],[["y",257,5,170,3],7],[["y",257,5,174,0],44],[["y",257,5,177,3],4],[["y",257,5,180,0],7],[["y",257,5,191,3],114],[["y",257,5,195,3],7],[["y",257,5,219,0],44],[["y",257,5,234,3],12],[["y",257,5,239,3],10],[["y",257,5,240,0],44],[["y",257,5,254,0],21],[["y",257,5,255,0],44],[["y",257,5,255,3],4],[["y",257,5,259,3],114],[["y",257,5,261,3],4],[["y",257,5,262,0],44],[["y",257,5,263,3],114],[["y",257,5,272,0],44],[["y",257,5,273,3],114],[["x",258,1],224],[["y",258,1,230,2],38],[["y",258,1,234,2],38],[["y",258,1,235,2],34],[["y",258,1,238,2],38],[["y",258,1,242,4],208],[["y",258,1,248,2],38],[["y",258,1,254,2],38],[["y",258,1,281,4],16],[["x",259,1],224],[["y",259,1,43,4],15],[["y",259,1,72,4],36],[["y",259,1,97,4],16],[["y",259,1,101,4],15],[["y",259,1,106,0],44],[["y",259,1,111,0],3],[["y",259,1,125,0],8],[["y",259,1,148,4],76],[["y",259,1,180,0],37],[["y",259,1,180,4],187],[["y",259,1,192,0],44],[["y",259,1,199,0],44],[["y",259,1,224,4],60],[["y",259,1,228,4],224],[["y",259,1,243,4],224],[["y",259,1,246,3],114],[["y",259,1,276,4],43],[["y",259,1,278,3],110],[["y",259,1,281,0],44],[["x",260,0],224],[["y",260,0,276,3],114],[["y",260,0,281,3],110],[["x",261,0],224],[["y",261,0,264,3],100],[["y",261,0,272,3],10],[["y",261,0,282,3],114],[["x",262,0],224],[["x",263,4],224],[["y",263,4,175,0],44],[["y",263,4,176,4],16],[["y",263,4,185,0],38],[["y",263,4,201,4],224],[["y",263,4,212,0],44],[["y",263,4,227,0],42],[["y",263,4,228,0],44],[["y",263,4,232,4],22],[["y",263,4,249,4],224],[["y",263,4,260,0],12],[["y",263,4,279,4],186],[["x",264,1],224],[["y",264,1,236,4],224],[["y",264,1,239,2],24],[["y",264,1,240,2],38],[["y",264,1,242,2],38],[["y",264,1,244,2],38],[["y",264,1,245,2],38],[["y",264,1,250,2],38],[["y",264,1,261,2],10],[["x",265,0],224],[["x",266,0],224],[["y",266,0,271,3],110],[["y",266,0,287,3],113],[["y",266,0,289,3],1],[["x",267,1],224],[["y",267,1,105,0],10],[["y",267,1,124,0],38],[["y",267,1,143,0],44],[["y",267,1,147,4],60],[["y",267,1,161,0],44],[["y",267,1,161,4],45],[["y",267,1,168,4],224],[["y",267,1,176,0],44],[["y",267,1,182,4],188],[["y",267,1,185,4],16],[["y",267,1,186,4],96],[["y",267,1,239,3],104],[["y",267,1,262,4],16],[["y",267,1,264,3],5],[["y",267,1,264,4],219],[["y",267,1,267,4],16],[["y",267,1,276,0],44],[["y",267,1,283,4],16],[["y",267,1,287,3],1],[["y",267,1,288,3],114],[["x",268,3],224],[["y",268,3,190,1],44],[["y",268,3,191,4],60],[["y",268,3,207,4],7],[["y",268,3,220,4],118],[["y",268,3,223,4],16],[["y",268,3,233,1],31],[["y",268,3,233,4],193],[["y",268,3,236,1],12],[["y",268,3,263,1],6],[["y",268,3,269,1],43],[["y",268,3,272,4],224],[["y",268,3,281,1],44],[["y",268,3,287,1],44],[["y",268,3,288,4],54],[["x",269,1],90],[["y",269,1,246,2],38],[["y",269,1,247,2],38],[["y",269,1,279,2],14],[["y",269,1,287,4],90],[["x",269,2],134],[["y",269,2,247,3],1],[["y",269,2,264,0],44],[["y",269,2,269,0],44],[["y",269,2,270,0],14],[["y",269,2,272,3],11],[["y",269,2,273,0],44],[["y",269,2,274,0],34],[["y",269,2,278,0],44],[["y",269,2,281,3],4],[["y",269,2,284,3],114],[["y",269,2,285,0],44],[["y",269,2,286,3],4],[["x",270,1],224],[["y",270,1,32,4],142],[["y",270,1,80,4],180],[["y",270,1,100,0],43],[["y",270,1,140,0],44],[["y",270,1,155,0],5],[["y",270,1,171,0],44],[["y",270,1,198,0],44],[["y",270,1,203,4],126],[["y",270,1,214,0],44],[["y",270,1,214,3],114],[["y",270,1,281,4],224],[["y",270,1,283,3],9],[["y",270,1,286,4],224],[["y",270,1,291,3],101],[["x",271,0],224],[["y",271,0,285,3],114],[["y",271,0,286,3],110],[["x",272,0],224],[["x",273,3],224],[["y",273,3,183,4],50],[["y",273,3,192,1],44],[["y",273,3,192,4],42],[["y",273,3,193,4],60],[["y",273,3,207,4],224],[["y",273,3,210,1],44],[["y",273,3,214,4],40],[["y",273,3,226,1],44],[["y",273,3,230,1],44],[["y",273,3,239,1],44],[["y",273,3,239,4],180],[["y",273,3,244,4],76],[["y",273,3,279,1],4],[["x",274,1],180],[["y",274,1,249,2],38],[["y",274,1,251,2],38],[["y",274,1,260,2],28],[["y",274,1,263,4],148],[["y",274,1,264,2],38],[["y",274,1,270,2],38],[["y",274,1,292,4],16],[["y",274,1,293,4],16],[["x",274,2],44],[["y",274,2,251,0],44],[["y",274,2,253,3],44],[["y",274,2,294,0],44],[["x",275,1],224],[["y",275,1,49,3],3],[["y",275,1,96,0],44],[["y",275,1,101,0],33],[["y",275,1,122,0],39],[["y",275,1,129,0],36],[["y",275,1,188,0],44],[["y",275,1,219,3],5],[["y",275,1,219,4],219],[["y",275,1,221,3],102],[["y",275,1,241,4],129],[["y",275,1,246,0],28],[["y",275,1,262,4],224],[["y",275,1,268,4],100],[["y",275,1,270,3],114],[["y",275,1,292,4],224],[["x",276,0],224],[["y",276,0,294,3],110],[["y",276,0,296,3],114],[["x",277,1],224],[["y",277,1,125,0],10],[["y",277,1,127,0],44],[["y",277,1,156,3],1],[["y",277,1,169,0],44],[["y",277,1,221,0],44],[["y",277,1,231,3],64],[["y",277,1,235,4],224],[["y",277,1,253,4],224],[["y",277,1,260,4],224],[["y",277,1,266,0],44],[["y",277,1,277,4],224],[["y",277,1,290,3],114],[["y",277,1,293,0],38],[["y",277,1,297,3],45],[["x",278,3],224],[["y",278,3,210,4],104],[["y",278,3,225,4],224],[["y",278,3,253,1],44],[["y",278,3,259,4],16],[["y",278,3,260,4],16],[["y",278,3,267,1],44],[["y",278,3,268,4],81],[["y",278,3,276,1],4],[["y",278,3,278,1],44],[["y",278,3,285,1],44],[["y",278,3,287,4],7],[["y",278,3,293,4],224],[["y",278,3,294,1],44],[["x",279,1],224],[["y",279,1,257,2],38],[["y",279,1,258,2],38],[["y",279,1,259,2],38],[["y",279,1,260,2],10],[["y",279,1,261,2],28],[["y",279,1,268,2],38],[["y",279,1,273,4],224],[["y",279,1,276,2],34],[["x",280,1],224],[["y",280,1,26,4],201],[["y",280,1,66,0],4],[["y",280,1,71,0],44],[["y",280,1,77,4],16],[["y",280,1,84,4],40],[["y",280,1,113,0],44],[["y",280,1,132,0],44],[["y",280,1,152,4],16],[["y",280,1,157,4],27],[["y",280,1,176,3],94],[["y",280,1,186,0],44],[["y",280,1,194,4],224],[["y",280,1,239,4],3],[["y",280,1,240,4],224],[["y",280,1,241,3],114],[["y",280,1,267,3],8],[["y",280,1,278,3],4],[["y",280,1,278,4],145],[["y",280,1,292,0],44],[["y",280,1,294,3],4],[["x",281,0],224],[["y",281,0,283,3],105],[["y",281,0,293,3],113],[["y",281,0,299,3],2],[["y",281,0,300,3],4],[["x",282,1],224],[["y",282,1,127,4],224],[["y",282,1,134,0],16],[["y",282,1,147,0],44],[["y",282,1,147,4],27],[["y",282,1,154,0],44],[["y",282,1,159,4],5],[["y",282,1,165,4],118],[["y",282,1,170,0],44],[["y",282,1,172,4],16],[["y",282,1,187,4],16],[["y",282,1,189,4],28],[["y",282,1,209,4],48],[["y",282,1,217,4],32],[["y",282,1,218,4],16],[["y",282,1,219,4],20],[["y",282,1,225,0],18],[["y",282,1,225,4],16],[["y",282,1,238,4],106],[["y",282,1,250,4],110],[["y",282,1,254,0],1],[["y",282,1,257,0],44],[["y",282,1,297,3],69],[["y",282,1,299,3],58],[["y",282,1,301,0],13],[["y",282,1,301,3],97],[["y",282,1,301,4],114],[["x",283,3],224],[["y",283,3,207,4],7],[["y",283,3,215,4],29],[["y",283,3,249,1],44],[["y",283,3,250,1],2],[["y",283,3,263,1],38],[["y",283,3,263,4],23],[["y",283,3,264,1],44],[["y",283,3,272,1],8],[["y",283,3,284,4],16],[["y",283,3,285,4],224],[["y",283,3,286,1],44],[["y",283,3,291,4],148],[["y",283,3,295,4],1],[["y",283,3,299,4],224],[["y",283,3,302,1],44],[["x",284,1],224],[["y",284,1,261,4],16],[["y",284,1,262,2],38],[["y",284,1,263,2],38],[["y",284,1,265,2],38],[["y",284,1,267,2],38],[["y",284,1,269,2],34],[["y",284,1,271,4],49],[["y",284,1,285,4],16],[["y",284,1,287,2],38],[["y",284,1,287,4],143],[["x",285,0],224],[["x",286,0],224],[["y",286,0,292,3],114],[["y",286,0,300,3],110],[["x",287,0],224],[["x",288,3],224],[["y",288,3,217,1],44],[["y",288,3,224,1],44],[["y",288,3,234,1],9],[["y",288,3,234,4],215],[["y",288,3,246,1],31],[["y",288,3,256,4],224],[["y",288,3,264,4],9],[["y",288,3,274,4],224],[["y",288,3,277,1],8],[["y",288,3,284,1],44],[["y",288,3,289,1],44],[["x",289,1],158],[["y",289,1,266,2],38],[["y",289,1,269,2],4],[["y",289,1,277,2],38],[["y",289,1,279,2],24],[["y",289,1,284,2],38],[["y",289,1,290,2],6],[["y",289,1,290,4],152],[["y",289,1,304,2],10],[["y",289,1,305,4],6],[["x",289,2],66],[["y",289,2,267,0],44],[["y",289,2,277,0],44],[["y",289,2,277,3],22],[["y",289,2,291,0],44],[["y",289,2,303,3],24],[["y",289,2,305,3],20],[["x",290,0],224],[["y",290,0,298,3],114],[["y",290,0,302,3],110],[["x",291,0],224],[["x",292,3],224],[["y",292,3,216,4],146],[["y",292,3,218,4],224],[["y",292,3,222,1],32],[["y",292,3,236,4],16],[["y",292,3,242,1],44],[["y",292,3,250,4],130],[["y",292,3,257,4],60],[["y",292,3,258,4],16],[["y",292,3,263,4],60],[["y",292,3,265,4],16],[["y",292,3,269,4],3],[["y",292,3,276,1],40],[["y",292,3,289,4],1],[["y",292,3,295,1],44],[["y",292,3,300,1],44],[["y",292,3,309,1],20],[["x",293,1],224],[["y",293,1,271,2],38],[["y",293,1,272,2],38],[["y",293,1,273,2],38],[["y",293,1,274,2],38],[["y",293,1,275,2],38],[["y",293,1,281,2],34],[["y",293,1,288,4],6],[["y",293,1,291,4],10],[["y",293,1,308,4],208],[["x",294,0],224],[["y",294,0,303,3],90],[["y",294,0,308,3],20],[["y",294,0,310,3],114],[["x",295,1],224],[["y",295,1,150,4],16],[["y",295,1,156,0],41],[["y",295,1,160,4],224],[["y",295,1,173,4],2],[["y",295,1,178,0],44],[["y",295,1,184,4],10],[["y",295,1,190,0],44],[["y",295,1,194,0],6],[["y",295,1,209,0],44],[["y",295,1,261,4],224],[["y",295,1,264,4],6],[["y",295,1,269,4],224],[["y",295,1,280,3],50],[["y",295,1,280,4],174],[["y",295,1,301,0],1],[["y",295,1,301,3],17],[["y",295,1,304,3],114],[["y",295,1,307,3],4],[["y",295,1,307,4],16],[["y",295,1,309,3],39],[["y",295,1,311,0],44],[["x",296,3],224],[["y",296,3,231,1],44],[["y",296,3,231,4],15],[["y",296,3,248,4],12],[["y",296,3,255,1],44],[["y",296,3,255,4],102],[["y",296,3,266,4],127],[["y",296,3,267,4],224],[["y",296,3,271,1],11],[["y",296,3,279,1],37],[["y",296,3,286,4],16],[["y",296,3,290,4],88],[["y",296,3,292,1],44],[["y",296,3,294,4],16],[["y",296,3,297,4],34],[["y",296,3,302,4],38],[["y",296,3,304,1],44],[["x",297,1],83],[["y",297,1,276,2],4],[["y",297,1,278,2],38],[["y",297,1,278,4],45],[["y",297,1,280,2],38],[["y",297,1,293,2],3],[["y",297,1,295,4],38],[["x",297,2],141],[["y",297,2,280,0],44],[["y",297,2,283,0],44],[["y",297,2,293,3],1],[["y",297,2,295,3],114],[["y",297,2,296,0],44],[["y",297,2,297,0],44],[["y",297,2,302,3],3],[["y",297,2,305,0],42],[["y",297,2,306,0],18],[["y",297,2,307,0],44],[["y",297,2,308,3],23],[["y",297,2,310,0],2],[["x",298,0],224],[["y",298,0,307,3],110],[["y",298,0,313,3],114],[["x",299,1],224],[["y",299,1,178,4],14],[["y",299,1,181,0],44],[["y",299,1,193,0],18],[["y",299,1,198,4],224],[["y",299,1,204,0],31],[["y",299,1,204,3],114],[["y",299,1,204,4],16],[["y",299,1,210,0],44],[["y",299,1,228,4],12],[["y",299,1,254,0],22],[["y",299,1,254,4],202],[["y",299,1,268,0],44],[["y",299,1,270,0],20],[["y",299,1,270,4],204],[["y",299,1,289,3],29],[["y",299,1,294,4],224],[["y",299,1,295,0],1],[["y",299,1,299,3],53],[["y",299,1,314,3],28],[["x",300,3],224],[["y",300,3,231,4],224],[["y",300,3,235,4],16],[["y",300,3,236,1],4],[["y",300,3,238,1],44],[["y",300,3,246,4],14],[["y",300,3,268,1],44],[["y",300,3,275,4],178],[["y",300,3,289,4],16],[["y",300,3,290,1],44],[["y",300,3,298,1],44],[["y",300,3,301,1],44],[["y",300,3,311,4],224],[["x",301,1],180],[["y",301,1,281,2],4],[["y",301,1,282,2],38],[["y",301,1,283,2],38],[["y",301,1,285,2],38],[["y",301,1,294,2],24],[["y",301,1,297,2],38],[["y",301,1,305,4],10],[["y",301,1,309,4],79],[["y",301,1,315,4],91],[["x",301,2],44],[["y",301,2,282,0],44],[["y",301,2,299,0],39],[["y",301,2,299,3],1],[["y",301,2,308,0],4],[["y",301,2,312,0],1],[["y",301,2,312,3],43],[["x",302,0],224],[["y",302,0,306,3],114],[["y",302,0,308,3],71],[["y",302,0,316,3],39],[["x",303,0],224],[["x",304,3],224],[["y",304,3,259,4],224],[["y",304,3,268,4],18],[["y",304,3,283,1],44],[["y",304,3,297,1],18],[["y",304,3,297,4],206],[["y",304,3,303,1],44],[["y",304,3,305,4],224],[["y",304,3,310,1],44],[["y",304,3,312,1],30],[["y",304,3,314,1],44],[["x",305,1],152],[["y",305,1,286,2],38],[["y",305,1,288,2],38],[["y",305,1,289,2],38],[["y",305,1,293,2],35],[["y",305,1,298,4],3],[["y",305,1,315,2],3],[["y",305,1,315,4],149],[["x",305,2],72],[["y",305,2,286,0],44],[["y",305,2,301,0],30],[["y",305,2,306,0],26],[["y",305,2,310,0],42],[["y",305,2,313,0],2],[["y",305,2,314,3],72],[["x",306,0],78],[["x",306,1],146],[["y",306,1,175,4],146],[["y",306,1,187,0],44],[["y",306,1,203,0],2],[["y",306,1,223,0],32],[["y",306,1,225,0],21],[["y",306,1,232,0],44],[["y",306,1,232,4],38],[["y",306,1,240,4],15],[["y",306,1,244,4],146],[["y",306,1,291,3],13],[["y",306,1,291,4],82],[["y",306,1,293,0],3],[["y",306,1,300,4],16],[["y",306,1,312,3],5],[["y",306,1,312,4],141],[["y",306,1,314,3],14],[["y",306,1,319,3],114],[["x",307,3],224],[["y",307,3,258,1],44],[["y",307,3,259,1],16],[["y",307,3,269,4],13],[["y",307,3,274,1],14],[["y",307,3,275,1],44],[["y",307,3,275,4],62],[["y",307,3,279,4],54],[["y",307,3,289,4],223],[["y",307,3,299,4],16],[["y",307,3,300,4],224],[["y",307,3,304,4],80],[["y",307,3,307,1],44],[["y",307,3,313,1],44],[["y",307,3,320,1],18],[["x",308,1],193],[["y",308,1,290,2],32],[["y",308,1,291,2],38],[["y",308,1,292,2],38],[["y",308,1,295,2],38],[["y",308,1,295,4],38],[["y",308,1,301,2],18],[["y",308,1,310,4],16],[["y",308,1,312,4],99],[["y",308,1,314,2],29],[["y",308,1,318,4],40],[["x",308,2],31],[["y",308,2,295,0],31],[["y",308,2,298,0],31],[["y",308,2,320,3],31],[["x",309,1],224],[["y",309,1,183,4],117],[["y",309,1,184,4],224],[["y",309,1,191,0],44],[["y",309,1,191,4],180],[["y",309,1,194,4],16],[["y",309,1,207,0],44],[["y",309,1,216,4],38],[["y",309,1,231,0],44],[["y",309,1,274,4],16],[["y",309,1,288,0],44],[["y",309,1,288,4],180],[["y",309,1,289,0],44],[["y",309,1,289,3],84],[["y",309,1,299,0],3],[["y",309,1,302,3],1],[["y",309,1,305,3],94],[["y",309,1,308,4],32],[["y",309,1,317,0],1],[["y",309,1,319,4],93],[["y",309,1,320,3],45],[["x",310,3],50],[["y",310,3,278,4],50],[["y",310,3,280,1],24],[["y",310,3,295,4],50],[["y",310,3,297,1],26],[["y",310,3,303,4],50],[["x",310,5],174],[["y",310,5,250,0],44],[["y",310,5,261,0],44],[["y",310,5,265,0],26],[["y",310,5,271,0],44],[["y",310,5,275,0],44],[["y",310,5,284,0],44],[["y",310,5,311,3],114],[["y",310,5,312,0],43],[["y",310,5,312,3],66],[["y",310,5,315,3],1],[["y",310,5,317,3],113],[["y",310,5,318,0],44],[["y",310,5,318,3],114],[["y",310,5,320,0],15],[["y",310,5,322,3],114],[["x",311,1],224],[["y",311,1,294,2],14],[["y",311,1,296,2],38],[["y",311,1,301,2],20],[["y",311,1,302,2],38],[["y",311,1,305,2],38],[["y",311,1,306,2],38],[["y",311,1,308,2],38],[["y",311,1,313,4],192],[["y",311,1,314,4],16],[["y",311,1,322,4],16],[["x",312,0],224],[["x",313,3],224],[["y",313,3,254,1],44],[["y",313,3,263,4],9],[["y",313,3,276,4],197],[["y",313,3,284,4],224],[["y",313,3,293,1],44],[["y",313,3,298,4],13],[["y",313,3,306,4],16],[["y",313,3,308,1],44],[["y",313,3,311,4],16],[["y",313,3,317,1],21],[["y",313,3,318,1],44],[["y",313,3,321,1],27],[["y",313,3,321,4],197],[["x",314,1],180],[["y",314,1,298,2],38],[["y",314,1,299,2],38],[["y",314,1,300,2],38],[["y",314,1,303,2],38],[["y",314,1,303,4],142],[["y",314,1,304,2],28],[["y",314,1,304,4],38],[["x",314,2],44],[["y",314,2,300,0],44],[["y",314,2,304,0],44],[["y",314,2,320,3],38],[["y",314,2,321,3],6],[["x",315,0],224],[["x",316,3],224],[["y",316,3,272,1],36],[["y",316,3,273,1],44],[["y",316,3,274,1],30],[["y",316,3,288,1],44],[["y",316,3,299,1],44],[["y",316,3,306,4],224],[["y",316,3,320,1],26],[["y",316,3,324,4],224],[["y",316,3,326,4],224],[["x",317,1],180],[["y",317,1,302,4],180],[["y",317,1,307,2],22],[["y",317,1,309,2],35],[["y",317,1,312,2],38],[["y",317,1,314,2],9],[["y",317,1,317,2],38],[["y",317,1,320,2],38],[["x",317,2],44],[["y",317,2,302,0],44],[["y",317,2,303,0],44],[["y",317,2,316,3],44],[["x",318,0],224],[["x",319,3],224],[["y",319,3,269,1],1],[["y",319,3,277,4],1],[["y",319,3,279,1],3],[["y",319,3,291,1],44],[["y",319,3,296,1],1],[["y",319,3,296,4],223],[["y",319,3,298,4],224],[["y",319,3,305,1],42],[["y",319,3,306,1],44],[["y",319,3,319,1],44],[["y",319,3,320,4],224],[["y",319,3,321,1],1],[["y",319,3,323,1],44],[["x",320,1],16],[["y",320,1,307,2],16],[["y",320,1,316,4],16],[["x",320,2],208],[["y",320,2,308,0],37],[["y",320,2,313,0],42],[["y",320,2,314,0],44],[["y",320,2,316,0],44],[["y",320,2,321,0],44],[["y",320,2,322,0],44],[["y",320,2,324,0],44],[["y",320,2,325,0],44],[["y",320,2,325,3],94],[["y",320,2,326,0],44],[["y",320,2,327,3],114],[["y",320,2,328,0],29],[["x",321,1],224],[["y",321,1,214,4],112],[["y",321,1,219,4],1],[["y",321,1,224,0],44],[["y",321,1,224,4],180],[["y",321,1,233,0],44],[["y",321,1,242,0],44],[["y",321,1,245,4],224],[["y",321,1,252,0],44],[["y",321,1,252,4],155],[["y",321,1,258,4],224],[["y",321,1,279,0],44],[["y",321,1,308,0],3],[["y",321,1,309,3],47],[["y",321,1,315,3],63],[["y",321,1,329,0],1],[["y",321,1,329,3],114],[["x",322,3],224],[["y",322,3,273,4],16],[["y",322,3,277,4],15],[["y",322,3,280,1],20],[["y",322,3,280,4],66],[["y",322,3,283,4],224],[["y",322,3,303,4],48],[["y",322,3,309,4],63],[["y",322,3,311,1],44],[["y",322,3,314,4],224],[["y",322,3,317,1],23],[["y",322,3,326,1],44],[["y",322,3,327,1],44],[["y",322,3,327,4],16],[["y",322,3,328,1],5],[["y",322,3,329,1],44],[["x",323,1],180],[["y",323,1,309,2],3],[["y",323,1,310,2],38],[["y",323,1,311,2],38],[["y",323,1,313,2],38],[["y",323,1,316,2],21],[["y",323,1,316,4],1],[["y",323,1,319,4],147],[["y",323,1,320,4],16],[["y",323,1,323,2],4],[["y",323,1,325,2],38],[["y",323,1,326,4],16],[["x",323,2],44],[["y",323,2,309,0],44],[["y",323,2,316,3],23],[["y",323,2,317,0],43],[["y",323,2,317,3],1],[["y",323,2,321,3],8],[["y",323,2,328,3],12],[["y",323,2,329,0],1],[["x",324,0],110],[["x",324,1],114],[["y",324,1,231,4],1],[["y",324,1,236,0],40],[["y",324,1,270,4],36],[["y",324,1,293,0],3],[["y",324,1,295,0],1],[["y",324,1,295,4],113],[["y",324,1,317,4],114],[["y",324,1,323,0],36],[["y",324,1,323,4],78],[["y",324,1,324,4],16],[["y",324,1,325,4],98],[["y",324,1,326,3],114],[["y",324,1,329,0],34],[["x",325,3],224],[["y",325,3,277,1],36],[["y",325,3,282,1],44],[["y",325,3,282,4],180],[["y",325,3,296,1],43],[["y",325,3,302,4],22],[["y",325,3,305,1],2],[["y",325,3,310,4],224],[["y",325,3,316,4],61],[["y",325,3,321,1],16],[["y",325,3,324,1],44],[["y",325,3,328,1],39],[["y",325,3,328,4],185],[["x",326,1],216],[["y",326,1,315,2],26],[["y",326,1,321,2],38],[["y",326,1,322,2],38],[["y",326,1,324,2],38],[["y",326,1,326,2],38],[["y",326,1,328,2],38],[["y",326,1,329,4],216],[["x",326,2],8],[["y",326,2,316,3],8],[["y",326,2,323,0],8],[["y",326,2,329,0],8],[["x",327,1],224],[["y",327,1,227,4],9],[["y",327,1,234,0],44],[["y",327,1,236,0],4],[["y",327,1,244,4],17],[["y",327,1,245,0],44],[["y",327,1,253,4],16],[["y",327,1,258,0],44],[["y",327,1,263,0],44],[["y",327,1,272,4],16],[["y",327,1,301,4],126],[["y",327,1,317,4],126],[["y",327,1,321,3],44],[["y",327,1,322,4],224],[["y",327,1,323,3],114],[["y",327,1,329,4],24],[["y",327,1,330,4],224],[["y",327,1,331,0],44],[["y",327,1,331,3],66],[["y",327,1,331,4],114],[["x",328,3],224],[["y",328,3,307,4],224],[["y",328,3,315,1],44],[["y",328,3,316,1],44],[["y",328,3,318,4],98],[["y",328,3,322,1],44],[["y",328,3,325,1],44],[["y",328,3,327,4],224],[["y",328,3,330,1],4],[["y",328,3,331,1],44],[["y",328,3,331,4],126],[["x",329,0],56],[["y",329,0,315,3],8],[["y",329,0,321,3],56],[["y",329,0,331,3],48],[["x",329,1],102],[["y",329,1,315,2],9],[["y",329,1,316,2],17],[["y",329,1,318,4],102],[["y",329,1,327,2],38],[["y",329,1,331,2],38],[["x",329,2],66],[["y",329,2,315,3],42],[["y",329,2,319,0],44],[["y",329,2,320,0],29],[["y",329,2,324,3],12],[["y",329,2,328,0],15],[["y",329,2,330,0],44],[["y",329,2,330,3],12],[["x",330,0],62],[["x",330,1],162],[["y",330,1,234,4],9],[["y",330,1,246,0],16],[["y",330,1,248,0],44],[["y",330,1,248,4],26],[["y",330,1,253,0],14],[["y",330,1,254,4],38],[["y",330,1,259,0],44],[["y",330,1,282,4],60],[["y",330,1,296,4],17],[["y",330,1,309,3],28],[["y",330,1,316,4],162],[["y",330,1,323,4],162],[["y",330,1,325,3],20],[["y",330,1,325,4],142],[["y",330,1,327,0],44],[["y",330,1,330,4],16],[["y",330,1,332,3],114],[["y",330,1,332,4],16],[["x",331,3],122],[["y",331,3,304,4],122],[["y",331,3,309,1],24],[["y",331,3,309,4],98],[["y",331,3,312,1],14],[["y",331,3,313,4],48],[["y",331,3,328,4],55],[["y",331,3,330,1],40],[["y",331,3,332,1],44],[["y",331,3,332,4],43],[["x",331,5],102],[["y",331,5,287,0],44],[["y",331,5,290,0],44],[["y",331,5,295,0],11],[["y",331,5,298,0],13],[["y",331,5,299,0],2],[["y",331,5,305,0],2],[["y",331,5,315,0],44],[["y",331,5,324,3],102],[["y",331,5,328,3],102],[["y",331,5,330,3],102],[["y",331,5,332,0],44],[["x",332,1],224],[["y",332,1,318,2],38],[["y",332,1,319,2],38],[["y",332,1,321,4],43],[["y",332,1,323,2],34],[["y",332,1,329,2],38],[["y",332,1,330,2],38],[["y",332,1,332,2],38],[["y",332,1,332,4],181]]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PLAN.json b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PLAN.json new file mode 100644 index 0000000000..518ea50eae --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PLAN.json @@ -0,0 +1,230829 @@ +{ + "status": "EXPLICIT_T37_THREE_DEMOTIONS_OWNER_NOMINATION", + "mode": "three-demotions-t37", + "K": 4, + "T": 37, + "M": 73, + "L": 9, + "live": 33152, + "deficit": 11840, + "profile": { + "1": 790710, + "2": 164502, + "3": 137196, + "4": 43290, + "5": 27306, + "8": 2664, + "48": 11374 + }, + "order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 0, + 2 + ], + [ + 0, + 3 + ], + [ + 0, + 4 + ], + [ + 1, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 1 + ], + [ + 0, + 6 + ], + [ + 1, + 2 + ], + [ + 0, + 7 + ], + [ + 1, + 3 + ], + [ + 0, + 8 + ], + [ + 1, + 4 + ], + [ + 0, + 9 + ], + [ + 2, + 0 + ], + [ + 1, + 5 + ], + [ + 0, + 10 + ], + [ + 2, + 1 + ], + [ + 1, + 6 + ], + [ + 0, + 11 + ], + [ + 2, + 2 + ], + [ + 1, + 7 + ], + [ + 0, + 12 + ], + [ + 2, + 3 + ], + [ + 1, + 8 + ], + [ + 0, + 13 + ], + [ + 2, + 4 + ], + [ + 1, + 9 + ], + [ + 3, + 0 + ], + [ + 0, + 14 + ], + [ + 2, + 5 + ], + [ + 1, + 10 + ], + [ + 3, + 1 + ], + [ + 0, + 15 + ], + [ + 2, + 6 + ], + [ + 1, + 11 + ], + [ + 3, + 2 + ], + [ + 0, + 16 + ], + [ + 2, + 7 + ], + [ + 1, + 12 + ], + [ + 3, + 3 + ], + [ + 0, + 17 + ], + [ + 2, + 8 + ], + [ + 1, + 13 + ], + [ + 3, + 4 + ], + [ + 0, + 18 + ], + [ + 2, + 9 + ], + [ + 4, + 0 + ], + [ + 1, + 14 + ], + [ + 3, + 5 + ], + [ + 0, + 19 + ], + [ + 2, + 10 + ], + [ + 4, + 1 + ], + [ + 1, + 15 + ], + [ + 3, + 6 + ], + [ + 0, + 20 + ], + [ + 2, + 11 + ], + [ + 4, + 2 + ], + [ + 1, + 16 + ], + [ + 3, + 7 + ], + [ + 0, + 21 + ], + [ + 2, + 12 + ], + [ + 4, + 3 + ], + [ + 1, + 17 + ], + [ + 3, + 8 + ], + [ + 0, + 22 + ], + [ + 2, + 13 + ], + [ + 4, + 4 + ], + [ + 1, + 18 + ], + [ + 3, + 9 + ], + [ + 0, + 23 + ], + [ + 5, + 0 + ], + [ + 2, + 14 + ], + [ + 4, + 5 + ], + [ + 1, + 19 + ], + [ + 3, + 10 + ], + [ + 0, + 24 + ], + [ + 5, + 1 + ], + [ + 2, + 15 + ], + [ + 4, + 6 + ], + [ + 1, + 20 + ], + [ + 3, + 11 + ], + [ + 0, + 25 + ], + [ + 5, + 2 + ], + [ + 2, + 16 + ], + [ + 4, + 7 + ], + [ + 1, + 21 + ], + [ + 3, + 12 + ], + [ + 0, + 26 + ], + [ + 5, + 3 + ], + [ + 2, + 17 + ], + [ + 4, + 8 + ], + [ + 1, + 22 + ], + [ + 3, + 13 + ], + [ + 0, + 27 + ], + [ + 5, + 4 + ], + [ + 2, + 18 + ], + [ + 4, + 9 + ], + [ + 1, + 23 + ], + [ + 6, + 0 + ], + [ + 3, + 14 + ], + [ + 0, + 28 + ], + [ + 5, + 5 + ], + [ + 2, + 19 + ], + [ + 4, + 10 + ], + [ + 1, + 24 + ], + [ + 6, + 1 + ], + [ + 3, + 15 + ], + [ + 0, + 29 + ], + [ + 5, + 6 + ], + [ + 2, + 20 + ], + [ + 4, + 11 + ], + [ + 1, + 25 + ], + [ + 6, + 2 + ], + [ + 3, + 16 + ], + [ + 0, + 30 + ], + [ + 5, + 7 + ], + [ + 2, + 21 + ], + [ + 4, + 12 + ], + [ + 1, + 26 + ], + [ + 6, + 3 + ], + [ + 3, + 17 + ], + [ + 0, + 31 + ], + [ + 5, + 8 + ], + [ + 2, + 22 + ], + [ + 4, + 13 + ], + [ + 1, + 27 + ], + [ + 6, + 4 + ], + [ + 3, + 18 + ], + [ + 0, + 32 + ], + [ + 5, + 9 + ], + [ + 2, + 23 + ], + [ + 7, + 0 + ], + [ + 4, + 14 + ], + [ + 1, + 28 + ], + [ + 6, + 5 + ], + [ + 3, + 19 + ], + [ + 0, + 33 + ], + [ + 5, + 10 + ], + [ + 2, + 24 + ], + [ + 7, + 1 + ], + [ + 4, + 15 + ], + [ + 1, + 29 + ], + [ + 6, + 6 + ], + [ + 3, + 20 + ], + [ + 0, + 34 + ], + [ + 5, + 11 + ], + [ + 2, + 25 + ], + [ + 7, + 2 + ], + [ + 4, + 16 + ], + [ + 1, + 30 + ], + [ + 6, + 7 + ], + [ + 3, + 21 + ], + [ + 0, + 35 + ], + [ + 5, + 12 + ], + [ + 2, + 26 + ], + [ + 7, + 3 + ], + [ + 4, + 17 + ], + [ + 1, + 31 + ], + [ + 6, + 8 + ], + [ + 3, + 22 + ], + [ + 0, + 36 + ], + [ + 5, + 13 + ], + [ + 2, + 27 + ], + [ + 7, + 4 + ], + [ + 4, + 18 + ], + [ + 1, + 32 + ], + [ + 6, + 9 + ], + [ + 3, + 23 + ], + [ + 8, + 0 + ], + [ + 5, + 14 + ], + [ + 2, + 28 + ], + [ + 7, + 5 + ], + [ + 4, + 19 + ], + [ + 1, + 33 + ], + [ + 6, + 10 + ], + [ + 3, + 24 + ], + [ + 8, + 1 + ], + [ + 5, + 15 + ], + [ + 2, + 29 + ], + [ + 7, + 6 + ], + [ + 4, + 20 + ], + [ + 1, + 34 + ], + [ + 6, + 11 + ], + [ + 3, + 25 + ], + [ + 8, + 2 + ], + [ + 5, + 16 + ], + [ + 2, + 30 + ], + [ + 7, + 7 + ], + [ + 4, + 21 + ], + [ + 1, + 35 + ], + [ + 6, + 12 + ], + [ + 3, + 26 + ], + [ + 8, + 3 + ], + [ + 5, + 17 + ], + [ + 2, + 31 + ], + [ + 7, + 8 + ], + [ + 4, + 22 + ], + [ + 1, + 36 + ], + [ + 6, + 13 + ], + [ + 3, + 27 + ], + [ + 8, + 4 + ], + [ + 5, + 18 + ], + [ + 2, + 32 + ], + [ + 7, + 9 + ], + [ + 4, + 23 + ], + [ + 6, + 14 + ], + [ + 3, + 28 + ], + [ + 8, + 5 + ], + [ + 5, + 19 + ], + [ + 2, + 33 + ], + [ + 7, + 10 + ], + [ + 4, + 24 + ], + [ + 6, + 15 + ], + [ + 3, + 29 + ], + [ + 8, + 6 + ], + [ + 5, + 20 + ], + [ + 2, + 34 + ], + [ + 7, + 11 + ], + [ + 4, + 25 + ], + [ + 6, + 16 + ], + [ + 3, + 30 + ], + [ + 8, + 7 + ], + [ + 5, + 21 + ], + [ + 2, + 35 + ], + [ + 7, + 12 + ], + [ + 4, + 26 + ], + [ + 6, + 17 + ], + [ + 3, + 31 + ], + [ + 8, + 8 + ], + [ + 5, + 22 + ], + [ + 2, + 36 + ], + [ + 7, + 13 + ], + [ + 4, + 27 + ], + [ + 6, + 18 + ], + [ + 3, + 32 + ], + [ + 8, + 9 + ], + [ + 5, + 23 + ], + [ + 7, + 14 + ], + [ + 4, + 28 + ], + [ + 6, + 19 + ], + [ + 3, + 33 + ], + [ + 8, + 10 + ], + [ + 5, + 24 + ], + [ + 7, + 15 + ], + [ + 4, + 29 + ], + [ + 6, + 20 + ], + [ + 3, + 34 + ], + [ + 8, + 11 + ], + [ + 5, + 25 + ], + [ + 7, + 16 + ], + [ + 4, + 30 + ], + [ + 6, + 21 + ], + [ + 3, + 35 + ], + [ + 8, + 12 + ], + [ + 5, + 26 + ], + [ + 7, + 17 + ], + [ + 4, + 31 + ], + [ + 6, + 22 + ], + [ + 3, + 36 + ], + [ + 8, + 13 + ], + [ + 5, + 27 + ], + [ + 7, + 18 + ], + [ + 4, + 32 + ], + [ + 6, + 23 + ], + [ + 8, + 14 + ], + [ + 5, + 28 + ], + [ + 7, + 19 + ], + [ + 4, + 33 + ], + [ + 6, + 24 + ], + [ + 8, + 15 + ], + [ + 5, + 29 + ], + [ + 7, + 20 + ], + [ + 4, + 34 + ], + [ + 6, + 25 + ], + [ + 8, + 16 + ], + [ + 5, + 30 + ], + [ + 7, + 21 + ], + [ + 4, + 35 + ], + [ + 6, + 26 + ], + [ + 8, + 17 + ], + [ + 5, + 31 + ], + [ + 7, + 22 + ], + [ + 4, + 36 + ], + [ + 6, + 27 + ], + [ + 8, + 18 + ], + [ + 5, + 32 + ], + [ + 7, + 23 + ], + [ + 6, + 28 + ], + [ + 8, + 19 + ], + [ + 5, + 33 + ], + [ + 7, + 24 + ], + [ + 6, + 29 + ], + [ + 8, + 20 + ], + [ + 5, + 34 + ], + [ + 7, + 25 + ], + [ + 6, + 30 + ], + [ + 8, + 21 + ], + [ + 5, + 35 + ], + [ + 7, + 26 + ], + [ + 6, + 31 + ], + [ + 8, + 22 + ], + [ + 5, + 36 + ], + [ + 7, + 27 + ], + [ + 6, + 32 + ], + [ + 8, + 23 + ], + [ + 7, + 28 + ], + [ + 6, + 33 + ], + [ + 8, + 24 + ], + [ + 7, + 29 + ], + [ + 6, + 34 + ], + [ + 8, + 25 + ], + [ + 7, + 30 + ], + [ + 6, + 35 + ], + [ + 8, + 26 + ], + [ + 7, + 31 + ], + [ + 6, + 36 + ], + [ + 8, + 27 + ], + [ + 7, + 32 + ], + [ + 8, + 28 + ], + [ + 7, + 33 + ], + [ + 8, + 29 + ], + [ + 7, + 34 + ], + [ + 8, + 30 + ], + [ + 7, + 35 + ], + [ + 8, + 31 + ], + [ + 7, + 36 + ], + [ + 8, + 32 + ], + [ + 8, + 33 + ], + [ + 8, + 34 + ], + [ + 8, + 35 + ], + [ + 8, + 36 + ] + ], + "windows": { + "0,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + ], + "0,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5 + ] + ], + "1,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "1,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "2,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "3,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "4,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "4,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "0,1": [ + 8, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ] + ], + "0,3": [ + 8, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15 + ] + ], + "5,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "5,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "1,1": [ + 8, + [ + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "1,3": [ + 8, + [ + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "6,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "6,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "2,1": [ + 8, + [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21 + ] + ], + "2,3": [ + 8, + [ + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21 + ] + ], + "7,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "7,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "3,1": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,3": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "8,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "8,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "4,1": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27 + ] + ], + "4,3": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27 + ] + ], + "9,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "9,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "0,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "5,1": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "5,3": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "10,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "10,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "1,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "1,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "6,1": [ + 8, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "6,3": [ + 8, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "11,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ] + ], + "11,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36 + ] + ], + "2,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "2,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "7,1": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "7,3": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "12,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "12,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "3,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "8,1": [ + 8, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "8,3": [ + 8, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "13,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "13,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "4,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "4,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "9,1": [ + 8, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "9,3": [ + 8, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "0,5": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "0,7": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "14,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ] + ], + "14,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49 + ] + ], + "5,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "5,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "10,1": [ + 8, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "10,3": [ + 8, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "1,5": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "1,7": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "15,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "15,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "6,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ] + ], + "6,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55 + ] + ], + "11,1": [ + 8, + [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "11,3": [ + 8, + [ + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "2,5": [ + 8, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "2,7": [ + 8, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "16,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "16,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "7,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60 + ] + ], + "7,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60 + ] + ], + "12,1": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "12,3": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "3,5": [ + 8, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63 + ] + ], + "3,7": [ + 8, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63 + ] + ], + "17,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64 + ] + ], + "17,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64 + ] + ], + "8,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "8,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "13,1": [ + 8, + [ + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + ], + "13,3": [ + 8, + [ + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67 + ] + ], + "4,5": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "4,7": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "18,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69 + ] + ], + "18,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69 + ] + ], + "9,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "9,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "0,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72 + ] + ], + "0,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72 + ] + ], + "14,1": [ + 8, + [ + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73 + ] + ], + "14,3": [ + 8, + [ + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73 + ] + ], + "5,5": [ + 8, + [ + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74 + ] + ], + "5,7": [ + 8, + [ + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74 + ] + ], + "19,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ] + ], + "19,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75 + ] + ], + "10,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76 + ] + ], + "10,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76 + ] + ], + "1,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78 + ] + ], + "1,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78 + ] + ], + "15,1": [ + 8, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79 + ] + ], + "15,3": [ + 8, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79 + ] + ], + "6,5": [ + 8, + [ + 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 + ] + ], + "6,7": [ + 8, + [ + 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 + ] + ], + "20,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "20,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "11,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "11,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "2,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "2,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "16,1": [ + 8, + [ + 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 + ] + ], + "16,3": [ + 8, + [ + 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 + ] + ], + "7,5": [ + 8, + [ + 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 + ] + ], + "7,7": [ + 8, + [ + 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 + ] + ], + "21,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "21,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "12,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "12,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "3,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "3,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "17,1": [ + 8, + [ + 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 + ] + ], + "17,3": [ + 8, + [ + 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 + ] + ], + "8,5": [ + 8, + [ + 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 + ] + ], + "8,7": [ + 8, + [ + 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 + ] + ], + "22,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "22,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "13,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "13,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "4,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "4,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "18,1": [ + 8, + [ + 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 + ] + ], + "18,3": [ + 8, + [ + 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 + ] + ], + "9,5": [ + 8, + [ + 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 + ] + ], + "9,7": [ + 8, + [ + 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 + ] + ], + "23,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "23,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "0,9": [ + 8, + [ + 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 + ] + ], + "0,11": [ + 8, + [ + 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 + ] + ], + "14,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "14,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "5,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "5,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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 + ] + ], + "19,1": [ + 8, + [ + 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, + 104 + ] + ], + "19,3": [ + 8, + [ + 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, + 104 + ] + ], + "10,5": [ + 8, + [ + 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, + 104, + 105 + ] + ], + "10,7": [ + 8, + [ + 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, + 104, + 105 + ] + ], + "24,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106 + ] + ], + "24,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106 + ] + ], + "1,9": [ + 8, + [ + 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, + 104, + 105, + 106, + 107 + ] + ], + "1,11": [ + 8, + [ + 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, + 104, + 105, + 106, + 107 + ] + ], + "15,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108 + ] + ], + "15,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108 + ] + ], + "6,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110 + ] + ], + "6,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110 + ] + ], + "20,1": [ + 8, + [ + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111 + ] + ], + "20,3": [ + 8, + [ + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111 + ] + ], + "11,5": [ + 8, + [ + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + ], + "11,7": [ + 8, + [ + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112 + ] + ], + "25,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + ], + "25,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113 + ] + ], + "2,9": [ + 8, + [ + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114 + ] + ], + "2,11": [ + 8, + [ + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114 + ] + ], + "16,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115 + ] + ], + "16,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115 + ] + ], + "7,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117 + ] + ], + "7,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117 + ] + ], + "21,1": [ + 8, + [ + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118 + ] + ], + "21,3": [ + 8, + [ + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118 + ] + ], + "12,5": [ + 8, + [ + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119 + ] + ], + "12,7": [ + 8, + [ + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119 + ] + ], + "26,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120 + ] + ], + "26,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120 + ] + ], + "3,9": [ + 8, + [ + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121 + ] + ], + "3,11": [ + 8, + [ + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121 + ] + ], + "17,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + ], + "17,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122 + ] + ], + "8,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124 + ] + ], + "8,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124 + ] + ], + "22,1": [ + 8, + [ + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125 + ] + ], + "22,3": [ + 8, + [ + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125 + ] + ], + "13,5": [ + 8, + [ + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126 + ] + ], + "13,7": [ + 8, + [ + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126 + ] + ], + "27,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127 + ] + ], + "27,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127 + ] + ], + "4,9": [ + 8, + [ + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128 + ] + ], + "4,11": [ + 8, + [ + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128 + ] + ], + "18,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129 + ] + ], + "18,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129 + ] + ], + "9,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + ], + "9,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131 + ] + ], + "23,1": [ + 8, + [ + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132 + ] + ], + "23,3": [ + 8, + [ + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132 + ] + ], + "14,5": [ + 8, + [ + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134 + ] + ], + "14,7": [ + 8, + [ + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134 + ] + ], + "28,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135 + ] + ], + "28,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135 + ] + ], + "5,9": [ + 8, + [ + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + ], + "5,11": [ + 8, + [ + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136 + ] + ], + "19,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137 + ] + ], + "19,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137 + ] + ], + "10,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139 + ] + ], + "10,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139 + ] + ], + "24,1": [ + 8, + [ + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140 + ] + ], + "24,3": [ + 8, + [ + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140 + ] + ], + "15,5": [ + 8, + [ + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + ], + "15,7": [ + 8, + [ + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142 + ] + ], + "29,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + ], + "29,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143 + ] + ], + "6,9": [ + 8, + [ + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144 + ] + ], + "6,11": [ + 8, + [ + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144 + ] + ], + "20,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145 + ] + ], + "20,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145 + ] + ], + "11,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147 + ] + ], + "11,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147 + ] + ], + "25,1": [ + 8, + [ + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148 + ] + ], + "25,3": [ + 8, + [ + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148 + ] + ], + "16,5": [ + 8, + [ + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150 + ] + ], + "16,7": [ + 8, + [ + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150 + ] + ], + "30,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151 + ] + ], + "30,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151 + ] + ], + "7,9": [ + 8, + [ + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152 + ] + ], + "7,11": [ + 8, + [ + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152 + ] + ], + "21,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153 + ] + ], + "21,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153 + ] + ], + "12,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155 + ] + ], + "12,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155 + ] + ], + "26,1": [ + 8, + [ + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156 + ] + ], + "26,3": [ + 8, + [ + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156 + ] + ], + "17,5": [ + 8, + [ + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158 + ] + ], + "17,7": [ + 8, + [ + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158 + ] + ], + "31,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159 + ] + ], + "31,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159 + ] + ], + "8,9": [ + 8, + [ + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160 + ] + ], + "8,11": [ + 8, + [ + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160 + ] + ], + "22,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161 + ] + ], + "22,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161 + ] + ], + "13,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163 + ] + ], + "13,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163 + ] + ], + "27,1": [ + 8, + [ + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164 + ] + ], + "27,3": [ + 8, + [ + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164 + ] + ], + "18,5": [ + 8, + [ + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166 + ] + ], + "18,7": [ + 8, + [ + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166 + ] + ], + "32,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167 + ] + ], + "32,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167 + ] + ], + "9,9": [ + 8, + [ + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168 + ] + ], + "9,11": [ + 8, + [ + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168 + ] + ], + "23,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169 + ] + ], + "23,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169 + ] + ], + "0,12": [ + 48, + [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "0,13": [ + 48, + [ + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "0,14": [ + 32, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "0,15": [ + 32, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "0,16": [ + 16, + [ + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "0,17": [ + 16, + [ + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170 + ] + ], + "14,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171 + ] + ], + "14,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171 + ] + ], + "28,1": [ + 8, + [ + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172 + ] + ], + "28,3": [ + 8, + [ + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172 + ] + ], + "19,5": [ + 8, + [ + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174 + ] + ], + "19,7": [ + 8, + [ + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174 + ] + ], + "33,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175 + ] + ], + "33,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175 + ] + ], + "10,9": [ + 8, + [ + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176 + ] + ], + "10,11": [ + 8, + [ + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176 + ] + ], + "24,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177 + ] + ], + "24,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177 + ] + ], + "1,12": [ + 48, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "1,13": [ + 48, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "1,14": [ + 32, + [ + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "1,15": [ + 32, + [ + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "1,16": [ + 16, + [ + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "1,17": [ + 16, + [ + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178 + ] + ], + "15,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179 + ] + ], + "15,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179 + ] + ], + "29,1": [ + 8, + [ + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180 + ] + ], + "29,3": [ + 8, + [ + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180 + ] + ], + "20,5": [ + 8, + [ + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182 + ] + ], + "20,7": [ + 8, + [ + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182 + ] + ], + "34,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183 + ] + ], + "34,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183 + ] + ], + "11,9": [ + 8, + [ + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184 + ] + ], + "11,11": [ + 8, + [ + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184 + ] + ], + "25,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185 + ] + ], + "25,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185 + ] + ], + "2,12": [ + 48, + [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "2,13": [ + 48, + [ + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "2,14": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "2,15": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "2,16": [ + 16, + [ + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "2,17": [ + 16, + [ + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186 + ] + ], + "16,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187 + ] + ], + "16,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187 + ] + ], + "30,1": [ + 8, + [ + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188 + ] + ], + "30,3": [ + 8, + [ + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188 + ] + ], + "21,5": [ + 8, + [ + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190 + ] + ], + "21,7": [ + 8, + [ + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190 + ] + ], + "35,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191 + ] + ], + "35,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191 + ] + ], + "12,9": [ + 8, + [ + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192 + ] + ], + "12,11": [ + 8, + [ + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192 + ] + ], + "26,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193 + ] + ], + "26,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193 + ] + ], + "3,12": [ + 48, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "3,13": [ + 48, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "3,14": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "3,15": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "3,16": [ + 16, + [ + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "3,17": [ + 16, + [ + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194 + ] + ], + "17,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195 + ] + ], + "17,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195 + ] + ], + "31,1": [ + 8, + [ + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196 + ] + ], + "31,3": [ + 8, + [ + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196 + ] + ], + "22,5": [ + 8, + [ + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198 + ] + ], + "22,7": [ + 8, + [ + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198 + ] + ], + "36,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199 + ] + ], + "36,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199 + ] + ], + "13,9": [ + 8, + [ + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200 + ] + ], + "13,11": [ + 8, + [ + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200 + ] + ], + "27,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201 + ] + ], + "27,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201 + ] + ], + "4,12": [ + 48, + [ + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "4,13": [ + 48, + [ + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "4,14": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "4,15": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "4,16": [ + 16, + [ + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "4,17": [ + 16, + [ + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202 + ] + ], + "18,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203 + ] + ], + "18,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203 + ] + ], + "32,1": [ + 8, + [ + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204 + ] + ], + "32,3": [ + 8, + [ + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204 + ] + ], + "23,5": [ + 8, + [ + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206 + ] + ], + "23,7": [ + 8, + [ + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206 + ] + ], + "14,9": [ + 8, + [ + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207 + ] + ], + "14,11": [ + 8, + [ + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207 + ] + ], + "28,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208 + ] + ], + "28,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208 + ] + ], + "5,12": [ + 48, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "5,13": [ + 48, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "5,14": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "5,15": [ + 32, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "5,16": [ + 16, + [ + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "5,17": [ + 16, + [ + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209 + ] + ], + "19,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210 + ] + ], + "19,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210 + ] + ], + "33,1": [ + 8, + [ + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211 + ] + ], + "33,3": [ + 8, + [ + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211 + ] + ], + "24,5": [ + 8, + [ + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213 + ] + ], + "24,7": [ + 8, + [ + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213 + ] + ], + "15,9": [ + 8, + [ + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214 + ] + ], + "15,11": [ + 8, + [ + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214 + ] + ], + "29,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215 + ] + ], + "29,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215 + ] + ], + "6,12": [ + 48, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "6,13": [ + 48, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "6,14": [ + 32, + [ + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "6,15": [ + 32, + [ + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "6,16": [ + 16, + [ + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "6,17": [ + 16, + [ + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216 + ] + ], + "20,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217 + ] + ], + "20,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217 + ] + ], + "34,1": [ + 8, + [ + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218 + ] + ], + "34,3": [ + 8, + [ + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218 + ] + ], + "25,5": [ + 8, + [ + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220 + ] + ], + "25,7": [ + 8, + [ + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220 + ] + ], + "16,9": [ + 8, + [ + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221 + ] + ], + "16,11": [ + 8, + [ + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221 + ] + ], + "30,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222 + ] + ], + "30,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222 + ] + ], + "7,12": [ + 48, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "7,13": [ + 48, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "7,14": [ + 32, + [ + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "7,15": [ + 32, + [ + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "7,16": [ + 16, + [ + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "7,17": [ + 16, + [ + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223 + ] + ], + "21,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224 + ] + ], + "21,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224 + ] + ], + "35,1": [ + 8, + [ + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225 + ] + ], + "35,3": [ + 8, + [ + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225 + ] + ], + "26,5": [ + 8, + [ + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227 + ] + ], + "26,7": [ + 8, + [ + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227 + ] + ], + "17,9": [ + 8, + [ + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228 + ] + ], + "17,11": [ + 8, + [ + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228 + ] + ], + "31,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229 + ] + ], + "31,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229 + ] + ], + "8,12": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "8,13": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "8,14": [ + 32, + [ + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "8,15": [ + 32, + [ + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "8,16": [ + 16, + [ + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "8,17": [ + 16, + [ + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230 + ] + ], + "22,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231 + ] + ], + "22,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231 + ] + ], + "36,1": [ + 8, + [ + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232 + ] + ], + "36,3": [ + 8, + [ + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232 + ] + ], + "27,5": [ + 8, + [ + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234 + ] + ], + "27,7": [ + 8, + [ + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234 + ] + ], + "18,9": [ + 8, + [ + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235 + ] + ], + "18,11": [ + 8, + [ + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235 + ] + ], + "32,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236 + ] + ], + "32,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236 + ] + ], + "9,12": [ + 48, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "9,13": [ + 48, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "9,14": [ + 32, + [ + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "9,15": [ + 32, + [ + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "9,16": [ + 16, + [ + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "9,17": [ + 16, + [ + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237 + ] + ], + "23,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238 + ] + ], + "23,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238 + ] + ], + "28,5": [ + 8, + [ + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240 + ] + ], + "28,7": [ + 8, + [ + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240 + ] + ], + "19,9": [ + 8, + [ + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241 + ] + ], + "19,11": [ + 8, + [ + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241 + ] + ], + "33,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242 + ] + ], + "33,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242 + ] + ], + "10,12": [ + 48, + [ + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "10,13": [ + 48, + [ + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "10,14": [ + 32, + [ + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "10,15": [ + 32, + [ + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "10,16": [ + 16, + [ + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "10,17": [ + 16, + [ + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243 + ] + ], + "24,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244 + ] + ], + "24,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244 + ] + ], + "29,5": [ + 8, + [ + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246 + ] + ], + "29,7": [ + 8, + [ + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246 + ] + ], + "20,9": [ + 8, + [ + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247 + ] + ], + "20,11": [ + 8, + [ + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247 + ] + ], + "34,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248 + ] + ], + "34,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248 + ] + ], + "11,12": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "11,13": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "11,14": [ + 32, + [ + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "11,15": [ + 32, + [ + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "11,16": [ + 16, + [ + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "11,17": [ + 16, + [ + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249 + ] + ], + "25,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250 + ] + ], + "25,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250 + ] + ], + "30,5": [ + 8, + [ + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252 + ] + ], + "30,7": [ + 8, + [ + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252 + ] + ], + "21,9": [ + 8, + [ + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253 + ] + ], + "21,11": [ + 8, + [ + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253 + ] + ], + "35,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254 + ] + ], + "35,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254 + ] + ], + "12,12": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "12,13": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "12,14": [ + 32, + [ + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "12,15": [ + 32, + [ + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "12,16": [ + 16, + [ + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "12,17": [ + 16, + [ + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255 + ] + ], + "26,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256 + ] + ], + "26,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256 + ] + ], + "31,5": [ + 8, + [ + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258 + ] + ], + "31,7": [ + 8, + [ + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258 + ] + ], + "22,9": [ + 8, + [ + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259 + ] + ], + "22,11": [ + 8, + [ + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259 + ] + ], + "36,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260 + ] + ], + "36,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260 + ] + ], + "13,12": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "13,13": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "13,14": [ + 32, + [ + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "13,15": [ + 32, + [ + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "13,16": [ + 16, + [ + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "13,17": [ + 16, + [ + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261 + ] + ], + "27,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262 + ] + ], + "27,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262 + ] + ], + "32,5": [ + 8, + [ + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264 + ] + ], + "32,7": [ + 8, + [ + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264 + ] + ], + "23,9": [ + 8, + [ + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265 + ] + ], + "23,11": [ + 8, + [ + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265 + ] + ], + "14,12": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "14,13": [ + 48, + [ + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "14,14": [ + 32, + [ + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "14,15": [ + 32, + [ + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "14,16": [ + 16, + [ + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "14,17": [ + 16, + [ + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266 + ] + ], + "28,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267 + ] + ], + "28,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267 + ] + ], + "33,5": [ + 8, + [ + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269 + ] + ], + "33,7": [ + 8, + [ + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269 + ] + ], + "24,9": [ + 8, + [ + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270 + ] + ], + "24,11": [ + 8, + [ + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270 + ] + ], + "15,12": [ + 48, + [ + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "15,13": [ + 48, + [ + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "15,14": [ + 32, + [ + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "15,15": [ + 32, + [ + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "15,16": [ + 16, + [ + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "15,17": [ + 16, + [ + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271 + ] + ], + "29,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272 + ] + ], + "29,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272 + ] + ], + "34,5": [ + 8, + [ + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274 + ] + ], + "34,7": [ + 8, + [ + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274 + ] + ], + "25,9": [ + 8, + [ + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275 + ] + ], + "25,11": [ + 8, + [ + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275 + ] + ], + "16,12": [ + 48, + [ + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "16,13": [ + 48, + [ + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "16,14": [ + 32, + [ + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "16,15": [ + 32, + [ + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "16,16": [ + 16, + [ + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "16,17": [ + 16, + [ + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276 + ] + ], + "30,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277 + ] + ], + "30,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277 + ] + ], + "35,5": [ + 8, + [ + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279 + ] + ], + "35,7": [ + 8, + [ + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279 + ] + ], + "26,9": [ + 8, + [ + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280 + ] + ], + "26,11": [ + 8, + [ + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280 + ] + ], + "17,12": [ + 48, + [ + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "17,13": [ + 48, + [ + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "17,14": [ + 32, + [ + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "17,15": [ + 32, + [ + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "17,16": [ + 16, + [ + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "17,17": [ + 16, + [ + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281 + ] + ], + "31,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282 + ] + ], + "31,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282 + ] + ], + "36,5": [ + 8, + [ + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284 + ] + ], + "36,7": [ + 8, + [ + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284 + ] + ], + "27,9": [ + 8, + [ + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285 + ] + ], + "27,11": [ + 8, + [ + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285 + ] + ], + "18,12": [ + 48, + [ + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "18,13": [ + 48, + [ + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "18,14": [ + 32, + [ + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "18,15": [ + 32, + [ + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "18,16": [ + 16, + [ + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "18,17": [ + 16, + [ + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286 + ] + ], + "32,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287 + ] + ], + "32,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287 + ] + ], + "28,9": [ + 8, + [ + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289 + ] + ], + "28,11": [ + 8, + [ + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289 + ] + ], + "19,12": [ + 48, + [ + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "19,13": [ + 48, + [ + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "19,14": [ + 32, + [ + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "19,15": [ + 32, + [ + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "19,16": [ + 16, + [ + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "19,17": [ + 16, + [ + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290 + ] + ], + "33,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291 + ] + ], + "33,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291 + ] + ], + "29,9": [ + 8, + [ + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293 + ] + ], + "29,11": [ + 8, + [ + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293 + ] + ], + "20,12": [ + 48, + [ + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "20,13": [ + 48, + [ + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "20,14": [ + 32, + [ + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "20,15": [ + 32, + [ + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "20,16": [ + 16, + [ + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "20,17": [ + 16, + [ + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294 + ] + ], + "34,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295 + ] + ], + "34,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295 + ] + ], + "30,9": [ + 8, + [ + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297 + ] + ], + "30,11": [ + 8, + [ + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297 + ] + ], + "21,12": [ + 48, + [ + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "21,13": [ + 48, + [ + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "21,14": [ + 32, + [ + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "21,15": [ + 32, + [ + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "21,16": [ + 16, + [ + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "21,17": [ + 16, + [ + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298 + ] + ], + "35,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299 + ] + ], + "35,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299 + ] + ], + "31,9": [ + 8, + [ + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301 + ] + ], + "31,11": [ + 8, + [ + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301 + ] + ], + "22,12": [ + 48, + [ + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "22,13": [ + 48, + [ + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "22,14": [ + 32, + [ + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "22,15": [ + 32, + [ + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "22,16": [ + 16, + [ + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "22,17": [ + 16, + [ + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302 + ] + ], + "36,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303 + ] + ], + "36,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 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, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303 + ] + ], + "32,9": [ + 8, + [ + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305 + ] + ], + "32,11": [ + 8, + [ + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305 + ] + ], + "23,12": [ + 48, + [ + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "23,13": [ + 48, + [ + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "23,14": [ + 32, + [ + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "23,15": [ + 32, + [ + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "23,16": [ + 16, + [ + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "23,17": [ + 16, + [ + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306 + ] + ], + "33,9": [ + 8, + [ + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308 + ] + ], + "33,11": [ + 8, + [ + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308 + ] + ], + "24,12": [ + 48, + [ + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "24,13": [ + 48, + [ + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "24,14": [ + 32, + [ + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "24,15": [ + 32, + [ + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "24,16": [ + 16, + [ + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "24,17": [ + 16, + [ + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309 + ] + ], + "34,9": [ + 8, + [ + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311 + ] + ], + "34,11": [ + 8, + [ + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311 + ] + ], + "25,12": [ + 48, + [ + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "25,13": [ + 48, + [ + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "25,14": [ + 32, + [ + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "25,15": [ + 32, + [ + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "25,16": [ + 16, + [ + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "25,17": [ + 16, + [ + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312 + ] + ], + "35,9": [ + 8, + [ + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314 + ] + ], + "35,11": [ + 8, + [ + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314 + ] + ], + "26,12": [ + 48, + [ + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "26,13": [ + 48, + [ + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "26,14": [ + 32, + [ + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "26,15": [ + 32, + [ + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "26,16": [ + 16, + [ + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "26,17": [ + 16, + [ + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315 + ] + ], + "36,9": [ + 8, + [ + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317 + ] + ], + "36,11": [ + 8, + [ + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317 + ] + ], + "27,12": [ + 48, + [ + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "27,13": [ + 48, + [ + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "27,14": [ + 32, + [ + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "27,15": [ + 32, + [ + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "27,16": [ + 16, + [ + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "27,17": [ + 16, + [ + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318 + ] + ], + "28,12": [ + 48, + [ + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "28,13": [ + 48, + [ + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "28,14": [ + 32, + [ + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "28,15": [ + 32, + [ + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "28,16": [ + 16, + [ + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "28,17": [ + 16, + [ + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320 + ] + ], + "29,12": [ + 48, + [ + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "29,13": [ + 48, + [ + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "29,14": [ + 32, + [ + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "29,15": [ + 32, + [ + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "29,16": [ + 16, + [ + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "29,17": [ + 16, + [ + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322 + ] + ], + "30,12": [ + 48, + [ + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "30,13": [ + 48, + [ + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "30,14": [ + 32, + [ + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "30,15": [ + 32, + [ + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "30,16": [ + 16, + [ + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "30,17": [ + 16, + [ + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324 + ] + ], + "31,12": [ + 48, + [ + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "31,13": [ + 48, + [ + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "31,14": [ + 32, + [ + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "31,15": [ + 32, + [ + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "31,16": [ + 16, + [ + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "31,17": [ + 16, + [ + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326 + ] + ], + "32,12": [ + 48, + [ + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "32,13": [ + 48, + [ + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "32,14": [ + 32, + [ + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "32,15": [ + 32, + [ + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "32,16": [ + 16, + [ + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "32,17": [ + 16, + [ + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328 + ] + ], + "33,12": [ + 48, + [ + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "33,13": [ + 48, + [ + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "33,14": [ + 32, + [ + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "33,15": [ + 32, + [ + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "33,16": [ + 16, + [ + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "33,17": [ + 16, + [ + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329 + ] + ], + "34,12": [ + 48, + [ + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "34,13": [ + 48, + [ + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "34,14": [ + 32, + [ + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "34,15": [ + 32, + [ + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "34,16": [ + 16, + [ + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "34,17": [ + 16, + [ + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330 + ] + ], + "35,12": [ + 48, + [ + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "35,13": [ + 48, + [ + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "35,14": [ + 32, + [ + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "35,15": [ + 32, + [ + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "35,16": [ + 16, + [ + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "35,17": [ + 16, + [ + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331 + ] + ], + "36,12": [ + 48, + [ + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ], + "36,13": [ + 48, + [ + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263, + 264, + 265, + 266, + 267, + 268, + 269, + 270, + 271, + 272, + 273, + 274, + 275, + 276, + 277, + 278, + 279, + 280, + 281, + 282, + 283, + 284, + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ], + "36,14": [ + 32, + [ + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ], + "36,15": [ + 32, + [ + 285, + 286, + 287, + 288, + 289, + 290, + 291, + 292, + 293, + 294, + 295, + 296, + 297, + 298, + 299, + 300, + 301, + 302, + 303, + 304, + 305, + 306, + 307, + 308, + 309, + 310, + 311, + 312, + 313, + 314, + 315, + 316, + 317, + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ], + "36,16": [ + 16, + [ + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ], + "36,17": [ + 16, + [ + 318, + 319, + 320, + 321, + 322, + 323, + 324, + 325, + 326, + 327, + 328, + 329, + 330, + 331, + 332 + ] + ] + }, + "sides": { + "0": 0, + "2": 1, + "1": 0, + "3": 1, + "4": 0, + "6": 1, + "5": 0, + "7": 1, + "8": 0, + "10": 1, + "9": 0, + "11": 1, + "12": 0, + "13": 1, + "14": 0, + "15": 1, + "16": 0, + "17": 1 + }, + "pairs": { + "0": 1, + "2": 1, + "1": 1, + "3": 1, + "4": 2, + "6": 2, + "5": 2, + "7": 2, + "8": 3, + "10": 3, + "9": 3, + "11": 3, + "12": 0, + "13": 0, + "14": 1, + "15": 1, + "16": 2, + "17": 2 + }, + "solver_status": "exact integer flow and matching", + "gap": null, + "provider_calls": [ + { + "time": 0, + "stage": 0, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 1, + "stage": 0, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 2, + "stage": 0, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 3, + "stage": 0, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 4, + "stage": 0, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 5, + "stage": 1, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 6, + "stage": 0, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 7, + "stage": 1, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 8, + "stage": 0, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 9, + "stage": 1, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 10, + "stage": 0, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 11, + "stage": 1, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 12, + "stage": 0, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 13, + "stage": 1, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 14, + "stage": 0, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 15, + "stage": 2, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 16, + "stage": 1, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 17, + "stage": 0, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 18, + "stage": 2, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 19, + "stage": 1, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 20, + "stage": 0, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 21, + "stage": 2, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 22, + "stage": 1, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 23, + "stage": 0, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 24, + "stage": 2, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 25, + "stage": 1, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 26, + "stage": 0, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 27, + "stage": 2, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 28, + "stage": 1, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 29, + "stage": 3, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 30, + "stage": 0, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 31, + "stage": 2, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 32, + "stage": 1, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 33, + "stage": 3, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 34, + "stage": 0, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 35, + "stage": 2, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 36, + "stage": 1, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 37, + "stage": 3, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 38, + "stage": 0, + "replica": 16, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 39, + "stage": 2, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 40, + "stage": 1, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 41, + "stage": 3, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 42, + "stage": 0, + "replica": 17, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 43, + "stage": 2, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 44, + "stage": 1, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 45, + "stage": 3, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 46, + "stage": 0, + "replica": 18, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 47, + "stage": 2, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 48, + "stage": 4, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 49, + "stage": 1, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 50, + "stage": 3, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 51, + "stage": 0, + "replica": 19, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 52, + "stage": 2, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 53, + "stage": 4, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 54, + "stage": 1, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 55, + "stage": 3, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 56, + "stage": 0, + "replica": 20, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 57, + "stage": 2, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 58, + "stage": 4, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 59, + "stage": 1, + "replica": 16, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 60, + "stage": 3, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 61, + "stage": 0, + "replica": 21, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 62, + "stage": 2, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 63, + "stage": 4, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 64, + "stage": 1, + "replica": 17, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 65, + "stage": 3, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 66, + "stage": 0, + "replica": 22, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 67, + "stage": 2, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 68, + "stage": 4, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 69, + "stage": 1, + "replica": 18, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 70, + "stage": 3, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 71, + "stage": 0, + "replica": 23, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 72, + "stage": 5, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 73, + "stage": 2, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 74, + "stage": 4, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 75, + "stage": 1, + "replica": 19, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 76, + "stage": 3, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 77, + "stage": 0, + "replica": 24, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 78, + "stage": 5, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 79, + "stage": 2, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 80, + "stage": 4, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 81, + "stage": 1, + "replica": 20, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 82, + "stage": 3, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 83, + "stage": 0, + "replica": 25, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 84, + "stage": 5, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 85, + "stage": 2, + "replica": 16, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 86, + "stage": 4, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 87, + "stage": 1, + "replica": 21, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 88, + "stage": 3, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 89, + "stage": 0, + "replica": 26, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 90, + "stage": 5, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 91, + "stage": 2, + "replica": 17, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 92, + "stage": 4, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 93, + "stage": 1, + "replica": 22, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 94, + "stage": 3, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 95, + "stage": 0, + "replica": 27, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 96, + "stage": 5, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 97, + "stage": 2, + "replica": 18, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 98, + "stage": 4, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 99, + "stage": 1, + "replica": 23, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 100, + "stage": 6, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 101, + "stage": 3, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 102, + "stage": 0, + "replica": 28, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 103, + "stage": 5, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 104, + "stage": 2, + "replica": 19, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 105, + "stage": 4, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 106, + "stage": 1, + "replica": 24, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 107, + "stage": 6, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 108, + "stage": 3, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 109, + "stage": 0, + "replica": 29, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 110, + "stage": 5, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 111, + "stage": 2, + "replica": 20, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 112, + "stage": 4, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 113, + "stage": 1, + "replica": 25, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 114, + "stage": 6, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 115, + "stage": 3, + "replica": 16, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 116, + "stage": 0, + "replica": 30, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 117, + "stage": 5, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 118, + "stage": 2, + "replica": 21, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 119, + "stage": 4, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 120, + "stage": 1, + "replica": 26, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 121, + "stage": 6, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 122, + "stage": 3, + "replica": 17, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 123, + "stage": 0, + "replica": 31, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 124, + "stage": 5, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 125, + "stage": 2, + "replica": 22, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 126, + "stage": 4, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 127, + "stage": 1, + "replica": 27, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 128, + "stage": 6, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 129, + "stage": 3, + "replica": 18, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 130, + "stage": 0, + "replica": 32, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 131, + "stage": 5, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 132, + "stage": 2, + "replica": 23, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 133, + "stage": 7, + "replica": 0, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 134, + "stage": 4, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 135, + "stage": 1, + "replica": 28, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 136, + "stage": 6, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 137, + "stage": 3, + "replica": 19, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 138, + "stage": 0, + "replica": 33, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 139, + "stage": 5, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 140, + "stage": 2, + "replica": 24, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 141, + "stage": 7, + "replica": 1, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 142, + "stage": 4, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 143, + "stage": 1, + "replica": 29, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 144, + "stage": 6, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 145, + "stage": 3, + "replica": 20, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 146, + "stage": 0, + "replica": 34, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 147, + "stage": 5, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 148, + "stage": 2, + "replica": 25, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 149, + "stage": 7, + "replica": 2, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 150, + "stage": 4, + "replica": 16, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 151, + "stage": 1, + "replica": 30, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 152, + "stage": 6, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 153, + "stage": 3, + "replica": 21, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 154, + "stage": 0, + "replica": 35, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 155, + "stage": 5, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 156, + "stage": 2, + "replica": 26, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 157, + "stage": 7, + "replica": 3, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 158, + "stage": 4, + "replica": 17, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 159, + "stage": 1, + "replica": 31, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 160, + "stage": 6, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 161, + "stage": 3, + "replica": 22, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 162, + "stage": 0, + "replica": 36, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 163, + "stage": 5, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 164, + "stage": 2, + "replica": 27, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 165, + "stage": 7, + "replica": 4, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 166, + "stage": 4, + "replica": 18, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 167, + "stage": 1, + "replica": 32, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 168, + "stage": 6, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 169, + "stage": 3, + "replica": 23, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 170, + "stage": 8, + "replica": 0, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 171, + "stage": 5, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 172, + "stage": 2, + "replica": 28, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 173, + "stage": 7, + "replica": 5, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 174, + "stage": 4, + "replica": 19, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 175, + "stage": 1, + "replica": 33, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 176, + "stage": 6, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 177, + "stage": 3, + "replica": 24, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 178, + "stage": 8, + "replica": 1, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 179, + "stage": 5, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 180, + "stage": 2, + "replica": 29, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 181, + "stage": 7, + "replica": 6, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 182, + "stage": 4, + "replica": 20, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 183, + "stage": 1, + "replica": 34, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 184, + "stage": 6, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 185, + "stage": 3, + "replica": 25, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 186, + "stage": 8, + "replica": 2, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 187, + "stage": 5, + "replica": 16, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 188, + "stage": 2, + "replica": 30, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 189, + "stage": 7, + "replica": 7, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 190, + "stage": 4, + "replica": 21, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 191, + "stage": 1, + "replica": 35, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 192, + "stage": 6, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 193, + "stage": 3, + "replica": 26, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 194, + "stage": 8, + "replica": 3, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 195, + "stage": 5, + "replica": 17, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 196, + "stage": 2, + "replica": 31, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 197, + "stage": 7, + "replica": 8, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 198, + "stage": 4, + "replica": 22, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 199, + "stage": 1, + "replica": 36, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 200, + "stage": 6, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 201, + "stage": 3, + "replica": 27, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 202, + "stage": 8, + "replica": 4, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 203, + "stage": 5, + "replica": 18, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 204, + "stage": 2, + "replica": 32, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 205, + "stage": 7, + "replica": 9, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 206, + "stage": 4, + "replica": 23, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 207, + "stage": 6, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 208, + "stage": 3, + "replica": 28, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 209, + "stage": 8, + "replica": 5, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 210, + "stage": 5, + "replica": 19, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 211, + "stage": 2, + "replica": 33, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 212, + "stage": 7, + "replica": 10, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 213, + "stage": 4, + "replica": 24, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 214, + "stage": 6, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 215, + "stage": 3, + "replica": 29, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 216, + "stage": 8, + "replica": 6, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 217, + "stage": 5, + "replica": 20, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 218, + "stage": 2, + "replica": 34, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 219, + "stage": 7, + "replica": 11, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 220, + "stage": 4, + "replica": 25, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 221, + "stage": 6, + "replica": 16, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 222, + "stage": 3, + "replica": 30, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 223, + "stage": 8, + "replica": 7, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 224, + "stage": 5, + "replica": 21, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 225, + "stage": 2, + "replica": 35, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 226, + "stage": 7, + "replica": 12, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 227, + "stage": 4, + "replica": 26, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 228, + "stage": 6, + "replica": 17, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 229, + "stage": 3, + "replica": 31, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 230, + "stage": 8, + "replica": 8, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 231, + "stage": 5, + "replica": 22, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 232, + "stage": 2, + "replica": 36, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 233, + "stage": 7, + "replica": 13, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 234, + "stage": 4, + "replica": 27, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 235, + "stage": 6, + "replica": 18, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 236, + "stage": 3, + "replica": 32, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 237, + "stage": 8, + "replica": 9, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 238, + "stage": 5, + "replica": 23, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 239, + "stage": 7, + "replica": 14, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 240, + "stage": 4, + "replica": 28, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 241, + "stage": 6, + "replica": 19, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 242, + "stage": 3, + "replica": 33, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 243, + "stage": 8, + "replica": 10, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 244, + "stage": 5, + "replica": 24, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 245, + "stage": 7, + "replica": 15, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 246, + "stage": 4, + "replica": 29, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 247, + "stage": 6, + "replica": 20, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 248, + "stage": 3, + "replica": 34, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 249, + "stage": 8, + "replica": 11, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 250, + "stage": 5, + "replica": 25, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 251, + "stage": 7, + "replica": 16, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 252, + "stage": 4, + "replica": 30, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 253, + "stage": 6, + "replica": 21, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 254, + "stage": 3, + "replica": 35, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 255, + "stage": 8, + "replica": 12, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 256, + "stage": 5, + "replica": 26, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 257, + "stage": 7, + "replica": 17, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 258, + "stage": 4, + "replica": 31, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 259, + "stage": 6, + "replica": 22, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 260, + "stage": 3, + "replica": 36, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 261, + "stage": 8, + "replica": 13, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 262, + "stage": 5, + "replica": 27, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 263, + "stage": 7, + "replica": 18, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 264, + "stage": 4, + "replica": 32, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 265, + "stage": 6, + "replica": 23, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 266, + "stage": 8, + "replica": 14, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 267, + "stage": 5, + "replica": 28, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 268, + "stage": 7, + "replica": 19, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 269, + "stage": 4, + "replica": 33, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 270, + "stage": 6, + "replica": 24, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 271, + "stage": 8, + "replica": 15, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 272, + "stage": 5, + "replica": 29, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 273, + "stage": 7, + "replica": 20, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 274, + "stage": 4, + "replica": 34, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 275, + "stage": 6, + "replica": 25, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 276, + "stage": 8, + "replica": 16, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 277, + "stage": 5, + "replica": 30, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 278, + "stage": 7, + "replica": 21, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 279, + "stage": 4, + "replica": 35, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 280, + "stage": 6, + "replica": 26, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 281, + "stage": 8, + "replica": 17, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 282, + "stage": 5, + "replica": 31, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 283, + "stage": 7, + "replica": 22, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 284, + "stage": 4, + "replica": 36, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 285, + "stage": 6, + "replica": 27, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 286, + "stage": 8, + "replica": 18, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 287, + "stage": 5, + "replica": 32, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 288, + "stage": 7, + "replica": 23, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 289, + "stage": 6, + "replica": 28, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 290, + "stage": 8, + "replica": 19, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 291, + "stage": 5, + "replica": 33, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 292, + "stage": 7, + "replica": 24, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 293, + "stage": 6, + "replica": 29, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 294, + "stage": 8, + "replica": 20, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 295, + "stage": 5, + "replica": 34, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 296, + "stage": 7, + "replica": 25, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 297, + "stage": 6, + "replica": 30, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 298, + "stage": 8, + "replica": 21, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 299, + "stage": 5, + "replica": 35, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 300, + "stage": 7, + "replica": 26, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 301, + "stage": 6, + "replica": 31, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 302, + "stage": 8, + "replica": 22, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 303, + "stage": 5, + "replica": 36, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 304, + "stage": 7, + "replica": 27, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 305, + "stage": 6, + "replica": 32, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 306, + "stage": 8, + "replica": 23, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 307, + "stage": 7, + "replica": 28, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 308, + "stage": 6, + "replica": 33, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 309, + "stage": 8, + "replica": 24, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 310, + "stage": 7, + "replica": 29, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 311, + "stage": 6, + "replica": 34, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 312, + "stage": 8, + "replica": 25, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 313, + "stage": 7, + "replica": 30, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 314, + "stage": 6, + "replica": 35, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 315, + "stage": 8, + "replica": 26, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 316, + "stage": 7, + "replica": 31, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 317, + "stage": 6, + "replica": 36, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 318, + "stage": 8, + "replica": 27, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 319, + "stage": 7, + "replica": 32, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 320, + "stage": 8, + "replica": 28, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 321, + "stage": 7, + "replica": 33, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 322, + "stage": 8, + "replica": 29, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 323, + "stage": 7, + "replica": 34, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 324, + "stage": 8, + "replica": 30, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 325, + "stage": 7, + "replica": 35, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 326, + "stage": 8, + "replica": 31, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 327, + "stage": 7, + "replica": 36, + "provider": "gauge44", + "orientation": "backward", + "local_program_sha256": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + { + "time": 328, + "stage": 8, + "replica": 32, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 329, + "stage": 8, + "replica": 33, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 330, + "stage": 8, + "replica": 34, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 331, + "stage": 8, + "replica": 35, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + }, + { + "time": 332, + "stage": 8, + "replica": 36, + "provider": "gauge44", + "orientation": "forward", + "local_program_sha256": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405" + } + ], + "per_call_widths": [ + { + "stage": 0, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 8, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 9, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 10, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 11, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 12, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 13, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 14, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 15, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 16, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 17, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 18, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 19, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 20, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 21, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 22, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 23, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 24, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 25, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 26, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 27, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 28, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 29, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 30, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 31, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 32, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 33, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 34, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 35, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 36, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + } + ], + "provider_registry": { + "gauge44": { + "directory": "providers/gauge44", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "023d65ac313372f489d90d8d53a5ca867c9016c154b158860590290042cd1297", + "LOCAL-PROGRAMS.json.gz": "ee8972805779186d2b9722ee40bc3cbde9963d7f312231894fc0ac1176dbda2d", + "LOCAL-CHECKS.json": "b6da3ccbc8a9422c8134b2fe351e783ea01390805afc1df433f9af38fb6f4861", + "INDEPENDENT-LOCAL-REPLAY.json": "15ce27f29ca3d16edb755ab6ff5223e446b1897ba5e47894aa6cb060ca1ca8e8", + "CLIFFORD-RECIPES.json": "803271ac4098ce1bca6d3dcc20dd9e6eb650843ad2c07d98c93e1c78f0873463", + "CLIFFORD-REVIEW.json": "dd5d2476d7dcc0012b6077759099dfc62a61b8603fada956208f4eacfe084b40", + "RESIDUAL-ADAPTERS.json": "cc655002a80209e3935e7d2b9baede9437360e2d23238609712317b7fa26dc56" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 92, + 57, + 81, + 224, + 11, + 240, + 9, + 256 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 8, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 4, + 9, + 4, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 7, + 7, + 8, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 7, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2372, + "2": 494, + "3": 412, + "4": 130, + "5": 82, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "551a1211d208774f826eea0e7f0bf1c71b2a6668fc6d5e663a154baed2b2c405", + "backward": "d8a1b20df928953caf4dbdc5d4ace9e94c8c26db07cc026805bb63300a4e6b22" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "01c5f60fb0cb2ae522ec926168281023f4315d2be76d75b0c5d5b341014a8c9e", + "LOCAL-PROGRAMS.json.gz": "0b74225d802107084e08cff09a658af6cb0399daab495db6e42b6d088730c0c4", + "LOCAL-CHECKS.json": "f5acbca2609d813e77c7de46deb406a0b381cf81d242d6536125a7106b90659d", + "INDEPENDENT-LOCAL-REPLAY.json": "ae1c832371024ab7c42ed2d02f0bea552df52f84f184959a47a236484b7c2dc2", + "CLIFFORD-RECIPES.json": "803271ac4098ce1bca6d3dcc20dd9e6eb650843ad2c07d98c93e1c78f0873463", + "CLIFFORD-REVIEW.json": "046e89ed60e9745cfc27c8d98e269d0bece9271b9f99f9aa00ee916c945ccff3", + "RESIDUAL-ADAPTERS.json": "f96536a306c4202865667b2a213b7dacb0292fe5354dc412c1d6022c8d68b4cd" + } + } + }, + "source_plan_sha256": "c5da66a8061a86ca7d3eab975829488f6c086a59966150b193d614ff0d0c4847", + "assignment_sha256": "449d230ae8ea9b5adf2f4a06da0dd89473e6e259b986e46ebf7407e169ac1d4b", + "source_owners_sha256": "c41fdf51541ecc91af914f264967f3633570500994f8866daf642440a5d843dd", + "assignment_content_sha256": "6aac44c27ee80dbcbfcc48ab358c8e79887ea34c5064bc0ba5955dd19df12a6f", + "replica_lift": { + "groups": [ + 8, + 8, + 8, + 8, + 5 + ], + "source_replicas": 8, + "replicas": 37, + "parent_template_content_sha256": "514e59314c8e2fa3c22d0a48083816f6686211090835e8f8775318c1c3e992d8", + "owners_file_sha256": "449d230ae8ea9b5adf2f4a06da0dd89473e6e259b986e46ebf7407e169ac1d4b", + "schedule_content_sha256": "fb86346be60ae00c88ff41f77906aae3c9d8fc488d63cd4abbfa03c4785c2d2d", + "window_semantics": "Strict physical source-event intervals, including bridges" + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PRICE.json b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PRICE.json new file mode 100644 index 0000000000..38c4a28b5f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PRICE.json @@ -0,0 +1,123 @@ +{ + "status": "PASS_EXACT_ARITHMETIC_ONLY_PENDING_FULL_ADMISSION", + "prices": { + "native": { + "root": { + "lower": "0.001677940138221069351902", + "upper": "0.001677940138221069351903", + "lower_endpoint_residual_upper": "-2.219467388917781341720488603388561940263345730698966853233093397624555E-25", + "upper_endpoint_residual_lower": "2.702681579032767449762188399953727879223826848446522506447128412881375E-24", + "strict_rational_signs": true, + "moment_minus_one_at_current_k_required_rate": [ + "-0.002868813741415620663117559115513815454438327519310983613745378749471557", + "-0.002868813741415620663117559115513815454438327519310983613745378749397373" + ], + "nominal_k_ceiling_interval": [ + "0.001675129371412064020180623220648693264150464440679712853735888668107748", + "0.001675129371412064020181619873196008850989800805481882651702771099159474" + ] + }, + "moments": [ + { + "endpoint": "838970069110534675951/500000000000000000000000", + "accept": true, + "mercator_residual": [ + "-2991836121735173596624439273317349489678723/13479973333575319897333507543509815336818572211270286240551805124608", + "-1495918060867586798312219636658674744839361/6739986666787659948666753771754907668409286105635143120275902562304" + ], + "base_two_residual": [ + "-221947/1000000000000000000000000000000", + "-110973/500000000000000000000000000000" + ] + }, + { + "endpoint": "1677940138221069351903/1000000000000000000000000", + "accept": false, + "mercator_residual": [ + "72864151229013887289118021292465544517640617/26959946667150639794667015087019630673637144422540572481103610249216", + "72864151229013887289118021292465544517640619/26959946667150639794667015087019630673637144422540572481103610249216" + ], + "base_two_residual": [ + "2702681/1000000000000000000000000000000", + "1351341/500000000000000000000000000000" + ] + } + ], + "outer": { + "complex_b": "838970069110534675951/500000000000000000000000", + "bit_c": "1733427039589844234749/1000000000000000000000000", + "kappa": "52347792856627/31250000000000000", + "kappa_decimal": "0.001675129371412064", + "binding": "complex", + "strict_constraints_passed": 47, + "controls_rejected": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ] + } + }, + "conservative": { + "root": { + "lower": "0.001677940135364722601859", + "upper": "0.00167794013536472260186", + "lower_endpoint_residual_upper": "-2.537684038701087314457453203479807752970516421584737526885940585245438E-24", + "upper_endpoint_residual_lower": "3.869442792288328893531898607068556558869356594553008616456167924995620E-25", + "strict_rational_signs": true, + "moment_minus_one_at_current_k_required_rate": [ + "-0.002868813733097014390224864250502200284017811987276035412218507990982309", + "-0.002868813733097014390224864250502200284017811987276035412218507990908125" + ], + "nominal_k_ceiling_interval": [ + "0.001675129368565278755725551683551476317245438813313468183642728441961422", + "0.001675129368565278755726548336098797588117836875179397673233565303574340" + ] + }, + "moments": [ + { + "endpoint": "1677940135364722601859/1000000000000000000000000", + "accept": true, + "mercator_residual": [ + "-8551978292682594269400361220874041671630055/3369993333393829974333376885877453834204643052817571560137951281152", + "-34207913170730377077601444883496166686520219/13479973333575319897333507543509815336818572211270286240551805124608" + ], + "base_two_residual": [ + "-25376843020393068796399/10000000000000000000000000000000000000000000000", + "-25376833020393068796257/10000000000000000000000000000000000000000000000" + ] + }, + { + "endpoint": "83897006768236130093/50000000000000000000000", + "accept": false, + "mercator_residual": [ + "2607999282792094948097029577094036239325135/6739986666787659948666753771754907668409286105635143120275902562304", + "5215998565584189896194059154188072478650271/13479973333575319897333507543509815336818572211270286240551805124608" + ], + "base_two_residual": [ + "386943697996534557033/1000000000000000000000000000000000000000000000", + "3869446979965345570471/10000000000000000000000000000000000000000000000" + ] + } + ], + "outer": { + "complex_b": "1677940135364722601859/1000000000000000000000000", + "bit_c": "1733427039589844234749/1000000000000000000000000", + "kappa": "837564684282639/500000000000000000", + "kappa_decimal": "0.001675129368565278", + "binding": "complex", + "strict_constraints_passed": 47, + "controls_rejected": [ + "next_grid", + "zero_eta", + "zero_beta", + "unit_beta" + ] + } + } + }, + "gain_over_pr1061": "7723622857/1000000000000000000", + "gain_percent": "0.000461078326293107569960974573946156603765550637178292686874000598160875303838", + "profile_sha256": "440912ba08baa19af76194a7bcd8640b73926f5182c97bc6b73c3587b0256858", + "scope": "Conditional PR645 framework and PR589 bit assumptions retained. Owner, native and global admission are separate." +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PROFILE.json b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PROFILE.json new file mode 100644 index 0000000000..7c35d9f51f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/PROFILE.json @@ -0,0 +1,9 @@ +{ + "1": 790710, + "2": 164502, + "3": 137196, + "4": 43290, + "5": 27306, + "8": 2664, + "48": 11374 +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/README.md b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/README.md new file mode 100644 index 0000000000..4d9b74ce13 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/README.md @@ -0,0 +1,17 @@ +# Three-demotion provider with T37 whole-owner packing + +DRAFT: exact arithmetic and literal owner construction pass; full global admission is pending. + +The candidate conditional price is κ = 0.001675129371412064, 0.0004610783% above PR1148 at 0.001675121647789207. It combines PR1148's unchanged local word with a new integer flow on PR1131's T37 wave order. It has 159,840 whole-helper roles in 333 calls and idle profile {1:834,48:11374}. Exact equations and bipartite matching pass. Two independent rational moment engines and 47 strict outer inequalities price the explicit profile. This does not yet assert complete physical admission. + +The 37-replica root equals the fixed-family grid upper value proved in PR1148; that upper bound alone is not a construction. The frozen assignment here supplies the candidate construction; provider, controller, charts and finite invoice must still be replayed before this draft is marked ready. + +Rebuild the owner map using Python 3.11+: + + python -B construct.py --flow PATTERN-FLOW.json --plan PLAN.json --out NEW_OUTPUT + +The resulting OWNERS.json.gz must match the frozen map. Full verification receipts and a standalone replay wrapper will be added after verification. + +Credit: Thomas DiFiore and Codex for PR1148's demotions and endpoints; Ali Romman and Codex for PR1129's pattern-flow/matching construction and T37 audit; PR1131 for the wave order and independent T37 construction; PR1074/1018 and their full local ancestry, Chafik Boukhalfa's PR795 dual prices, PR890/942, Hao Yan's owner/source-event machinery, PR1091, and the unchanged PR589 bit supplier. New composition by Rohan Arun with substantial OpenAI Codex assistance. Derived construction code retains Apache-2.0 licensing and original notices. + +All inherited all-size/compiler, common-label/mutable-source, whole-call hosting, precision/tape, exact-recovery, analytic-transfer and bit H1-H5 obligations remain. PR559 recurrence correction is retained. This is not an unconditional multiplication theorem, full formalization, or runtime benchmark. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/SEARCH.json b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/SEARCH.json new file mode 100644 index 0000000000..0747d3f3a6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/SEARCH.json @@ -0,0 +1,53 @@ +{ + "status": 0, + "message": "Optimization terminated successfully. (HiGHS Status 7: Optimal)", + "seconds": 116.19498995799222, + "variables": 122712, + "constraints": 61441, + "inventory": { + "9": 240, + "4": 44, + "8": 114, + "7": 38, + "5": 44 + }, + "active_patterns": [ + [ + 8, + 0 + ], + [ + 16, + 0 + ], + [ + 16, + 1 + ], + [ + 16, + 2 + ], + [ + 32, + 3 + ], + [ + 32, + 4 + ], + [ + 32, + 5 + ], + [ + 48, + 0 + ], + [ + 48, + 1 + ] + ], + "exact_integer_equations": "PASS" +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/UPSTREAM-NOTICE.md b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/UPSTREAM-NOTICE.md new file mode 100644 index 0000000000..1e3b40de32 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/UPSTREAM-NOTICE.md @@ -0,0 +1,45 @@ +# Attribution and license + +New owner theorem, exact flow construction, checker, and package by +Ali Romman <226877337+aliromman@users.noreply.github.com>, with substantial +OpenAI Codex assistance. New work is under Apache-2.0. + +The fixed local supplier is Jeremy Kothe's seven-slot k8 word in PR1074, +commit `052afc128954f7b6a2b3c409eb4d72248e4020f2`. The seven-slot step comes +from PR1018 and credits Rohan Arun's PR987 search. The earlier local word and +its scalar, frame, phase, and source-access construction retain all notices +in `vendor/pr1074/NOTICE.md` and `vendor/pr1074/UPSTREAM-NOTICE.md`. +This package does not claim authorship of those local changes. + +The signed bin prices come from Chafik Boukhalfa's PR795. The proof method +builds on the PR890/PR942 owner bounds and the prior all-replica T37 theorem. +The new right-hand side, exact attaining flow, and complete R480 owner map +are specific to the changed seven-slot inventory. The old theorem did not +cover this word. + +The T16 source-event routines are by Hao Yan (@FanPUYen). Their source notice +is kept in `vendor/pr1074/t16/NOTICE.md` and their source headers. The derived +independent owner checker comes from `research/complex-t21-owners` at the +exact repository base. `INDEPENDENT-DERIVATION.patch` records its changes. + +The global admission code comes from the exact PR1074 package. Its sources +and notices are retained. `CODE-DERIVATION.patch` records all changes needed +for 37 replicas and the 1024-bit complex prefix allowance. The arithmetic +engines and full PR589 bit supplier are unchanged and source-pinned. + +PR1034 proved a mixed bound for 71 older catalogue entries and excluded +R480. PR1069 independently checked the rank-mass identity for recent claims. +These contributions informed the scope and cost audit. Neither admits the +new physical owner map by itself. + +The concurrent mutable-leaver sprint worker rebuilt the unchanged local k8 +and seven-slot chains, including their scalar and phase checks. This package +retains that source-bound evidence. It does not use the worker's new local +word experiments. No predecessor notice, license, or AI disclosure is replaced +by this notice. + +Josie Elliston's PR1091 independently checked fifteen T16 owner maps and +made the disjoint-pending-axis obligation explicit. The independent T37 +audit includes that check and a targeted negative control. Rohan Arun's +PR1094 gives a later same-word T16 repack. Jeremy Kothe's PR1117 changes +the local word; it is a concurrent comparison outside the proved inventory. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/construct.py b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/construct.py new file mode 100644 index 0000000000..de52d33831 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr1169/research/three-demotions-t37-composition/construct.py @@ -0,0 +1,108 @@ +#!/usr/bin/env python3 +# SPDX-License-Identifier: Apache-2.0 +"""Rebuild literal owners from the exact pattern-flow certificate.""" +import argparse,json,gzip,hashlib +from collections import Counter,defaultdict +from pathlib import Path +HERE=Path(__file__).resolve().parent +parser=argparse.ArgumentParser(description=__doc__) +parser.add_argument('--out',type=Path,required=True) +parser.add_argument('--flow',type=Path,required=True) +parser.add_argument('--plan',type=Path,required=True) +args=parser.parse_args() +if not __debug__:raise ValueError('Construction checks require assertions') +if args.out.exists():raise ValueError('Choose a new construction directory') +D=json.loads(args.flow.read_text()) +assert D['T']==37 and sorted(D['order'])==[[s,r] for s in range(9) for r in range(37)] +P=json.loads(gzip.decompress(args.plan.read_bytes()) if args.plan.suffix=='.gz' else args.plan.read_bytes()) +widths=P['provider_registry']['gauge44']['widths'];ws=(4,5,7,8,9) +xs={};ys=defaultdict(Counter) +for entry,n in D['entries']: + assert type(n) is int and n>0 + if entry[0]=='x':_,g,p=entry;xs[g,p]=n + else:_,g,p,t,w=entry;ys[g,p][t,w]+=n +assign=defaultdict(list);global_count=Counter();idle=Counter();offsets=defaultdict(int) +for gi,(r,cap,ts,children) in enumerate(D['groups']): + port_index=0 + for pi,pat in enumerate(D['patterns'][str(cap)]): + N=xs.get((gi,pi),0) + if not N:continue + v=ys[gi,pi] + assert all(t in ts for t,w in v) + assert Counter({w:sum(n for (t,ww),n in v.items() if w==ww) for w,num in enumerate(pat) if num})==Counter({w:N*num for w,num in enumerate(pat) if num}) + assert all(sum(n for (tt,w),n in v.items() if tt==t)<=N for t in ts) + slot_width=[w for w,n in enumerate(pat) for _ in range(n)] + graph=[Counter() for _ in slot_width] + # Split each width vertex into vertices of degree N. + for w in set(slot_width): + slots=[s for s,ww in enumerate(slot_width) if ww==w];j=0;used=0 + for (t,ww),n in sorted(v.items()): + if ww!=w:continue + while n: + count=min(n,N-used);graph[slots[j]][t]+=count;used+=count;n-=count + if used==N:used=0;j+=1 + assert j==len(slots) and used==0 + assert all(sum(a.values())==N for a in graph) + for remaining in range(N,0,-1): + degree=Counter() + for adj in graph:degree.update(adj) + assert max(degree.values(),default=0)<=remaining + required=sorted(t for t,n in degree.items() if n==remaining) + st={};tt={} + def match_time(t,seen): + for s,adj in enumerate(graph): + if adj[t]==0 or s in seen:continue + seen.add(s) + if s not in st or match_time(st[s],seen): + st[s]=t;tt[t]=s;return True + return False + for t in required:assert match_time(t,set()) + def match_slot(s,seen): + for t,n in sorted(graph[s].items()): + if not n or t in seen:continue + seen.add(t) + if t not in tt or match_slot(tt[t],seen): + tt[t]=s;st[s]=t;return True + return False + for s in range(len(graph)): + if s not in st:assert match_slot(s,set()) + assert len(st)==len(tt)==len(graph) and all(t in tt for t in required) + child=children[port_index//112];port=port_index%112;port_index+=1 + offset=0 + for s,t in sorted(st.items(),key=lambda it:(it[1],it[0])): + w=ws[slot_width[s]];graph[s][t]-=1 + assign[t,w].append((r,child,port,offset)) + offset+=w;global_count[w]+=1 + assert offset<=cap + idle[cap-offset]+=1 + assert all(not any(adj.values()) for adj in graph) + assert port_index==112*len(children) +roles=[] +for t,(stage,replica) in enumerate(D['order']): + for h,w in enumerate(widths): + owner,child,port,offset=assign[t,w].pop() + family=896*owner+112*(2*P['pairs'][str(child)]+P['sides'][str(child)])+port + roles.append(dict(time=t,stage=stage,replica=replica,helper=h,width=w,owner_replica=owner,child=child,port=port,offset=offset,copy=112*owner+port,family=family)) +assert not any(assign.values());assert len(roles)==37*9*480 +print('literal roles',len(roles),'idle',dict(sorted(idle.items()))) +# Separate direct check from the aggregate model. +used=defaultdict(set);seen=defaultdict(set);coverage=defaultdict(set) +windows={(r,ch):(cap,set(ts)) for r,cap,ts,chs in D['groups'] for ch in chs} +for z in roles: + t=z['time'];key=z['owner_replica'],z['child'];cap,ts=windows[key] + assert t in ts and z['family'] not in seen[t];seen[t].add(z['family']) + g=key+(z['port'],);cells=set(range(z['offset'],z['offset']+z['width'])) + assert not cells&used[g] and all(0<=x4 x14, 8->7 x2. LP screen (kscreen, #610 dispatch +jp8x71+ck): v2 0.0016345792 = +0.553% over the like-for-like screen base 0.0016255869 (the #610 literal is +0.0016253652); v3 0.0016347434; free dispatch 0.0016353016. + +## What changes +#604's `cold_end` step allowed exactly one change to section A: a rank-0 premix on cold helpers at the head of A +(`y['A'] == premix + x['A']`, every premix register a helper at its start frame). This package widens that allowlist +(`code/build_cold_end.py::apply`, and independently `verify.py::cold_end`) by two primitives. No audit is weakened; +every downstream check runs unchanged on the resulting word. + +1. **Premix target writes.** `['add', t, k, p, q, []]`, with `t` a target, `k` a cold helper, and frame `[]`. These are + placed in the premix, so they run after the entry adapters and paid wrappers. +2. **Forward absorptions.** `[[i, ['add', q, g, p, s, F]]]`, inserted into A right after input-A gate `i`, with three + conditions: + - **(a)** neither register is a target; + - **(b)** `q` is dead from then on: no later A, cut or B gate touches it; + - **(c)** after gate `i`, both `q` and `g` already sit at frame `F`. + +## Why the forward computation is unchanged +- **Absorption.** The gate changes only `q`'s value, and `q` is never read again in A, cut or B (condition b). So every + register that is ever read afterwards has its old forward value. That covers targets, centres, live helpers and + live ports. Only `q`'s end-of-B value changes, and `q` is a non-target, so the cleanup is responsible for it. + - Condition (c) makes the gate frame equal both registers' current frame, so no climb happens. + - The paid profile and all frame chains are therefore identical to the input's. `chain_profile` recomputes them, + and the transport's `climb` re-asserts monotonicity. +- **Target write.** The gate reads a cold helper and writes a target. The transport assertion "no non-target register + reads a target in A/B" still holds. + - Targets start at level 0, which is frame `[]`, so the gate is rank 0. The transport still asserts at the start + of B that every target sits at its level. + - Its scalar content is the same kind of operation as a zero-frame compensation gate, `target += d·helper`. + - The only difference is placement: it runs after the cold wrappers and the helper premix. So it can cancel, + inside main, the dirt that an ended helper's premix column `c_h` delivers to targets. The carrier `k` has unit + weight on `h` and zero weight on every other ended helper. + - The verifier's own zero-frame compensation, recomputed from main, then contains no term on an ended helper. The + transport asserts this: no precondition or compensation gate touches a cold-ended helper + (`hpe_audit_and_transport.py:157`). + - **That assertion is THE guard for target writes.** A doubled, dropped or retargeted target write leaves the scalar + program exact (the compensation simply absorbs the difference), so exactness alone would accept it. It is rejected + only because the recomputed compensation must then read the ended helper, which :157 forbids. Every target-write + mutant below is rejected by :157 (the entering-helper one by the frame climb). + +## What is re-verified on the resulting word (unchanged code) +- **Scalar replay.** `hpe_audit_and_transport.py` runs the exact arbitrary-dirt endpoint replay of precondition + + compensation + main + tail + refactored cleanup in both orientations. It also checks dyadic primitives, the frame + chains, the end-of-B row/column cone pre-check for every low-frame end, and the paid profile. +- **Local replay.** `hpe_emit_local.py` and `hpe_audit_local.py` run the event-level independent replay and the + wrapper-order check: every scalar on a wrapped helper lies between its pre and post adapters. +- **Wrappers.** `hpe_adapters_local.py` checks Lemma A wrappers for `(0, U)`. +- **Phases.** `phases_full.py` checks all phase edges. +- **Global stages.** Binding, the owner audit, the invoice, both moment engines and the assembly controls all run. + +## Lean coverage +Both primitives are ordinary section-A gates of the native word: frame-`[]` adds and an add at its registers' common +frame. The HPE / cold-end Lean statements (PR593, PR599) are about the helper labels, tails and terminal frames, and +none of those change. The ended helpers end at `U_b` (dim 4) with `(0, U)` wrappers exactly as in #604. No new Lean +rule is needed. The change is to the build-step allowlist only. + +## Negative controls (`code/cold_end_controls.py`; all must be rejected by the transport) +#604's 14 controls, ColdSupply's 6 entering-end controls (E1), plus these 12 (32 in total): +- target writes moved into the zero-frame precondition (before the wrappers); +- one target write dropped; +- a target-write coefficient doubled; +- a target write reading an entering helper; +- a target write reading the same factory slot of another block, which carries none of the ended helper's dirt; + - (Reading another register with the same weight on `h` is a valid variant: it is accepted, which is why this mutant + was chosen instead.) +- absorption dropped; +- absorption coefficient doubled; +- absorption placed before the absorbed register's last kernel write; +- absorption placed while the absorbing register is still live; +- absorption into a centre (a live register read by the cut); +- absorption at a lower frame; +- absorption at a higher frame (FULL). + +In addition, `verify.py::cold_end` independently checks the allowlist conditions: +- target writes are frame-`[]` adds from a cold, non-entering helper; +- each absorption satisfies conditions (a)–(c): unique, in-range insertion indices; frames compared as spans and + seeded from the port / start_extra frame when the register has no earlier A gate; +- `y['A'] == premix + (x['A'] with the absorptions inserted)`. + +## K-triangle provider words (complex-571-cold14-k492) + +The provider words are produced by search-side constructors. None of them is trusted. What is trusted is the exact audits that certify every word. Every intermediate word also has its content hash pinned in `data/SPEC.json`. This note says what each constructor does, and which independent check certifies its output. + +### 1. `k_triangle`: `code/construct_k_triangle.py` + +**Origin.** This is PR531's `code/construct_504.py` (pinned source `direct_delivery`, file hash pinned), extended with AtomScout's leaver-read K-triangle atom. Every assertion of PR531's constructor is kept, with 504 replaced by NH = 504 − 3·|triangles|. + +**The atom.** A coordinate pair p is *full* when the selected partition contains p in all three blocks containing p. Then both triangles (p, ±1) are consumed only by K-coordinates. For a scheduled triangle: +- the three face packets are never formed and never copied; +- each K-coordinate target t first reads the leaver that is its K-basis own token, `own_rows[t]`. The constructor checks this is the same register and coefficient as in the 504 word; +- t then reads the four unformed leavers (butterfly outputs) of the other two faces. Each is read with coefficient `coef·alpha`, from the 504 word's face-packet request. + +The read order (`data/TRI-SCHEDULE.json`) keeps every target frame inside hyper(P_t); the constructor asserts this for each read. + +**Exactness.** The constructor asserts the following, exactly as PR531 does: +- the side identity `rows[v+t] == {s: −G[t][s]/2}` for every target t; +- the clean-column replay `A + cut + B + cleanup = identity` on the 2v + NH columns; +- the rank-mass identity Σ r·H_r = 9·NH + 240·8 + 72. + +**Helper map.** Each allocation advances the 504 numbering. A packet copy that the schedule never forms advances it without allocating. `HELPER-MAP.json` is therefore the 504 → NH register map: registers below 448 keep their ids, and the 12 removed packet copies [448, 458, 460, 470, 472, 482, 580, 590, 592, 602, 604, 614] have no image. + +**Controls in `verify.py`.** +- PR531's unchanged constructor reproduces PR552's `RAW504.json.gz` byte for byte in content. +- This constructor with an empty schedule also reproduces it, and gives the identity map. +- With the package schedule it gives R = 492 = 504 − 3·4 and a 12-entry removed set, and the map's hash is pinned. +- Independently (AtomReviewer), the 492 raw word passes vendor531's and the generalised `audit_and_transport` (exact forward and inverse-transpose replay of every column, native frames), and an independent mod-p replay. + +### 2. `port_stage`: `code/build_port_stage.py` + +**What it replays.** A stage I4 → O4 of a 504-helper chain is one of: +- PR558's reconstruction raw504 → promoted; +- PR571's prefix word; +- PR568 `cold_kernel` / `multicut`; +- PR575 `joint_prefix`; +- PR569 `promote`, PR568 `greedy_kernels`, PR583 `frame_coalesce`, and this lineage's `gate_move_coalesce`. + +Each stage is rebuilt in the same run from pinned sources, with its own constructor, omission controls and content pins (`build.shadows`). + +**How it is replayed.** The stage is replayed onto the K-triangle word I8 at the matching chain point: +- I4 and O4 are renumbered through the helper map, dropping gates on removed registers; +- gates are aligned by scalar operation (gate without frame); +- in O4 order, matched gates come from I8, with O4's frame where the stage changed it; +- stage-introduced gates come from O4; +- the K-triangle reads, which have no 504 counterpart, stay after their I8 predecessor's image; +- start_extra and target_levels changes are replayed; +- the cleanup is rebuilt with the inherited inverse rule. + +**What certifies the output.** The port is a transfer heuristic and claims nothing by itself. `verify.py` certifies every ported word in four ways: +1. It runs the generalised native audit `code/hpe_audit_and_transport.py`: status PASS_CHANGED_WORD_ALL_COLUMNS_AND_NATIVE_FRAMES, exact forward and inverse-transpose replay of all 2v+R columns with arbitrary dirt, native monotone frame chains, and the entrance and paid-profile census. +2. It checks that only A, B, cleanup, start_extra, target_levels and the report changed, and that R is unchanged. +3. It pins input, shadow input, shadow output and output by content hash. +4. Localization later re-derives everything again: native chain, independent local replay with its negative controls, wrappers, and all phase edges. + +So a wrong transfer can only fail closed. + +### 3. `frame_regroup`: `code/build_frame_regroup.py` + +This is PR583's `build_frames.py`, with the required per-change profile delta read from the recipe instead of fixed at {1:−2, 2:+1}. The constructor checks the following: +- scalar operations, every field outside A/B/report, helper widths and all initial helper responses are unchanged; +- entering helper responses are zero; +- the cleanup already follows the inherited inverse rule, which uses only FULL frames; +- every change has the recipe's exact sequential delta, and the profile matches the recipe before and after; +- frame-chain monotonicity holds (gk_word.profile asserts it); +- the controls reject every omission and every FULL over-promotion (48 controls for 24 changes). + +`verify.py` then repeats `frame_coalesce`'s independent comparison: only the recipe gates' frames change. + +The recipe's 24 changes coalesce the K-read gates of the eight K-coordinate targets, each with delta {1:−3, 2:+3, 3:−1}. Port480's `frameopt.py` found them by maximising Σ d·ln d. + +### 4. `hyperplane_end` and `cold_end` + +These steps run the package's unchanged B3 constructors, controls and independent comparisons: +- `build_hpe.py` / `hpe_controls_atc.py`: 34 candidates, all admissible; +- `build_cold_end.py` / `cold_end_controls.py`. + +The cold_end recipes come from ColdBeyond's `construct2` with single-unit blocks (Port480 `construct2b.py`). Each recipe has: +- S b.10 cold ends in all 14 blocks; +- S b.9 second cold ends with dead-port absorption in blocks 3–10 only. In blocks 0–2 and 11–13 the K-triangle words do not admit them; +- the E1 entering pair. + +The allowlist and its proof are B3's `PROOF-NOTE.md`, unchanged. + +### Reproduction +Every intermediate word was rebuilt outside `verify.py` (scratch `Stack492/rebuild.py`) and inside the strict run. Each one equals Port480's search word in content, for every stage of ck, jp8 and atm3. + +## ColdThird (h4a): dim-8 cold ends and the widened forward-absorption allowlist + +This section supersedes the earlier sections wherever they describe the `cold_end` allowlist. On top of the #622/#626 +construction, each provider word (jp8, ck) gains 4 cold ends at the dim-8 frame U8a = [256,128,65,33,17,9,4,2] +(helpers S1.3, S3.3, S5.3, S7.3), each with 2 lifted partners, plus dead-port absorptions. Per word the paid profile +changes by {1:+4, 4:+4, 6:-4} against #622 v3, and 4 helpers go from width 9 to width 8. + +### What soundness rests on +Soundness does **not** rest on the deadness condition of the allowlist. It rests on checks that re-run unchanged on +the spliced word: +- the transport's exact arbitrary-dirt **endpoint replay** in both orientations (`code/hpe_audit_and_transport.py`), + which re-verifies the exact refactored cleanup, so every port and helper is restored exactly; +- the **`:157` guard** in `code/hpe_audit_and_transport.py`: no precondition or compensation gate touches a + cold-ended helper; +- the frame chains / paid-profile pin and the cone pre-check, recomputed from the word. + +The deadness rule ("`q` untouched by every later *input* A, cut or B gate") is an allowlist restriction on recipes, +not a load-bearing hypothesis: the independent review moved a dirt release before its port's last kernel write, the +transport replay still accepted it (the two additions commute), and only the allowlist rejected it. + +### What changes +ColdBeyond allowed forward absorptions `q += a·g` in section A of the `cold_end` step, each inserted right after a distinct +input-A gate `t`. It required: +- (a) neither register is a target; +- (b) `q` is untouched by every later A, cut or B gate; +- (c) `q` and `g` both already sit at the gate frame. + +ColdThird changes the allowlist in exactly two places, `code/build_cold_end.py::apply` and `verify.py::cold_end`: +1. **Several absorptions after the same input gate.** The recipe list is sorted by `t`, and gates that share a `t` run in + recipe order. +2. **Deadness is judged against the input word.** `q` must be untouched by every later *input* A, cut or B gate. A later + absorption may write `q` or read it. + +Section B and the cut are still never modified. + +Old recipes keep their meaning: all three `#622` v3 recipes rebuild to byte-identical words under the widened builder. + +### Why the forward computation is unchanged +**Induction over the spliced A.** Let D be the set of registers that some absorption has already written. +- Every input gate sees exactly the operands it had before. An input gate never touches a register of D after that + register's absorption point, by (b) against input gates. +- An absorption writes only its own `q`, which joins D. +- An absorption may read a register of D. That only changes the value of another register of D. +- Hence every register outside D has its old value at every input gate, and so do targets, centres, live helpers and + live ports. + +**What changes, and who handles it.** Only the end-of-B values of D-registers change. These are non-target ports and +helpers, whose cleanup is part of the exact refactored cleanup. That cleanup is re-verified by the transport's +arbitrary-dirt endpoint replay in both orientations. + +**Frames and profile.** By (c), absorptions are at their registers' current frame. So every frame chain, and therefore +the paid profile, equals the input's. `chain_profile` recomputes the profile, and the transport's climb re-asserts +monotonicity. + +### What the new absorptions do +Two kinds of absorption are new: dirt releases (K side) and L-side gates. Together they let a cold end sit at a dim-8 +frame U8 = [256,128,65,33,17,9,4,2] with only 2 lifted partners per end. + +- **Dirt releases (K side).** For example `p15 += -1/4·S3.3` after `p15`'s last kernel gate. A dead U_b port takes a + live helper's value, so the new end's premix column leaves no dirt on that port. Without this, the port would have to + be lifted to U8. +- **L-side gates.** For example `p12 += -p15; p12 += -S3.3` at one anchor. These make the row of the lifted partner + `p12` data-free on the cold group, so the row fix needs no further partners. + +Each per-word package has these parts: +- 4 new ends: S1.3, S3.3, S5.3 and S7.3, all at U8. +- Lifted partners: the dim-4 port at offset 4 and S.13 of blocks 3, 5, 7 and 9. +- 16 new absorptions: 8 releases and 8 L-side gates. + +The premix is now one rank-0 factorisation over all cold units: the block units at U_b plus the U8 units. It is jointly +biorthogonal: the block rows are re-solved against the U8 columns, using block 3/5/7/9's third row dimension created by +the L-side gates. + +Target writes may now combine several carriers, `t += Σ β_k y_k` with `Σ β_k M[k,·]` = e_h on the ended columns. This +is the same primitive: frame-[] target writes from cold, non-entering helpers. + +### Re-verified downstream (code unchanged) +- `hpe_audit_and_transport.py`: + - exact replay; + - the cone pre-check for all 26 low-frame ends; + - the paid-profile pin; + - the `:157` guard (no precondition or compensation gate touches an ended helper). +- The local emit/replay, wrapper and phase stages, and all global stages. +- No new Lean rule is needed: both primitives are ordinary section-A gates of the native word, and the U8 ends are + `(0, U)` cold ends of the PR599 kind. + +### Negative controls +See `code/cold_end_controls.py`, COLD-THIRD block. Each control must be rejected at a pinned assertion: +- second absorption sharing an anchor dropped; +- shared-anchor coefficient changed; +- dirt-release absorption dropped; +- dirt-release coefficient changed; +- dirt-release absorption moved before the port's last kernel write (port still live); +- dim-8 end at another dim-8 frame; +- dim-8 end lower-frame gate dropped; +- dim-8 end profile pin. + +These come on top of the 38 inherited controls. + +### Inherited control re-pin: `ab_centre` +`code/cold_end_controls.py` changes one inherited control. When the word has dim-8 cold ends +(`any(len(helper_final[h]) == 8 for h in cold)`), the `ab_centre` mutant (the ColdBeyond U_b absorption retargeted +into a centre, a live register read by the cut) is expected to be rejected by COLDPRE ("touches a cold +hyperplane-ended helper") instead of by the arbitrary-dirt ENDPOINT replay: the retargeted absorption first leaks an +ended helper's dirt into the cut's targets, which the `:157` guard catches before the replay runs. The retarget +centre is now also chosen outside the cold set (`c not in cold`), so the mutant always targets a live centre. The +mutant is still rejected; this is a change of the pinned rejection site, not a weakening. With the 8 ColdThird +controls the `cold_end` step pins 46 rejected controls per word. + +## st2: PR627's two factored jp8 ends stacked on h4a (complex-571-cold14-st2) + +This section adds to the ColdThird section above; the code is h4a's reviewed code, unchanged. Only the jp8 `cold_end` +recipe changes (`data/recipes/k492-jp8-cold_end.json.gz`); ck is h4a's. H4aReviewer, Addendum 2: SOUND for the local +stages. + +### What is stacked +PR627 (jeremydiviney, `complex-571-cold14-k492b`, `data/FACTORED-END.json`) ends two jp8 cold helpers, 590 and 581, at +dim-7 frames, using factored lower-frame tails. Their input HPE word is the same as h4a's. On top of h4a's jp8 recipe, +the stacked recipe adds: +- the new cold ends 590 and 581 at dim-7 frames, each with its lower-frame tail (PR627's extra tail); +- 12 rank-0 premix gates on cold, non-ended helpers at frame `[]`; +- 3 forward absorptions: P95 += −H405 and P92 += ¼·H403 after input-A gate 1665, and P87 += ½·H419 after gate 1800. +All of h4a's absorptions and cold ends are kept. Where PR627's absorptions share an anchor with h4a's, they run after +h4a's in recipe order. + +### Premix re-derivation +PR627's premix was derived in PR627's basis, so it is re-derived in h4a's basis (H4aFinish `solve627.py`). The word +used is h4a's premix, followed by input A with h4a's and PR627's absorptions, then the cut, B, h4a's early tail and +PR627's extra tail. On that word the premix is solved exactly: row gates (h += x_l·l) followed by column gates +(k += y_k·h), with l and k cold non-ended helpers at frame `[]`. It is chosen so that, in the total state map, row h is +e_h and column h is e_h on every non-target row, for h = 590 and 581. + +### The q92 absorption +h4a has a dirt release at anchor 1665 (q95 += −¼·S403). Stacked, that release leaks into end 581's accumulator through +port 92, which is read by 88 += 92. H4aFinish `fix581.py` searches the dead-port absorptions at that anchor by an exact +linear solve and finds a single gate, `[1665, ['add', 92, 403, 1, 4, [265, 137, 96, 6]]]`, i.e. q92 += ¼·S403. Port 92 +is dead after gate 1665, and both registers are already at the gate frame, so the gate is admitted by the +ColdThird allowlist. With it the residual is empty and the solve above succeeds for 581. + +### What is re-verified (unchanged code) +- The reviewed `build_cold_end.apply`, applied to the Port480 input word, rebuilds the st2 jp8 word (content 7f4c71dd…). +- The transport's exact endpoint replay is exact in all three orientations, the refactored cleanup is dyadic, and + `:157` holds: the compensation reads no ended helper. +- The (N) wrappers for the new (0, U7) pairs pass in `hpe_adapters_local.py` (17 cold pairs in the reviewed D4 WRAPPER-CHECKS). +- The 46 `cold_end` controls are rejected. +- The paid profile changes against h4a by {1:+2, 2:+2, 5:−2} per jp8 word (rank mass −4). Ends 581 and 590 move from + (6,9) to (6,7), and ports 80 and 88 from (4,9) to (4,7)+(7,9). The recomputed profile equals the reported one. + +### Credits +PR627 (jeremydiviney) for the two factored jp8 ends and their tails. The re-derivation, the q92 fix and the stacking +are H4aFinish's. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/README.md b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/README.md new file mode 100644 index 0000000000..6ee54bcf64 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/README.md @@ -0,0 +1,532 @@ +# complex-571-cold14-st2: conditional κ 0.001636241501576388 + +## Definition + +The witness `cold14` is the PR558 geometry (112 data columns, h = 9, 492 helpers per provider word (the K-triangle helper count R; the width-8 spot helpers are the helper-map images [264, 276, 288, 300] of PR558's 270, 282, 294, 306), 8 centres, 9 stages × 8 replicas = 72 calls) served by 2 provider words, each a pinned base word followed by typed build steps: **jp8** (71 calls) = the K-triangle skeleton word (R = 492 helpers; 4 scheduled triangles, `data/TRI-SCHEDULE.json`) → `port_stage` (raw504 → promoted558 of the 504-helper chain, replayed through the helper map) → `port_stage` (promoted558 → jp8_504:0 of the 504-helper chain, replayed through the helper map) → `port_stage` (jp8_504:0 → jp8_504:1 of the 504-helper chain, replayed through the helper map) → `port_stage` (jp8_504:1 → jp8_504:3 of the 504-helper chain, replayed through the helper map) → `frame_regroup` (24 frame regroupings) → `hyperplane_end` (34 helpers end at a hyperplane U instead of FULL) → `cold_end` (28 cold helpers end at a dim-4/7/8 frame U instead of FULL, after a 1019-gate rank-0 premix at the head of A, 112 lower-frame cleanup gates and an exact refactored cleanup); **ck** (1 calls) = the K-triangle skeleton word (R = 492 helpers; 4 scheduled triangles, `data/TRI-SCHEDULE.json`) → `port_stage` (raw504 → promoted558 of the 504-helper chain, replayed through the helper map) → `port_stage` (promoted558 → ck_504:base of the 504-helper chain, replayed through the helper map) → `port_stage` (ck_504:base → ck_504:0 of the 504-helper chain, replayed through the helper map) → `port_stage` (ck_504:0 → ck_504:1 of the 504-helper chain, replayed through the helper map) → `port_stage` (ck_504:1 → ck_504:2 of the 504-helper chain, replayed through the helper map) → `frame_regroup` (24 frame regroupings) → `hyperplane_end` (34 helpers end at a hyperplane U instead of FULL) → `cold_end` (26 cold helpers end at a dim-4/8 frame U instead of FULL, after a 1007-gate rank-0 premix at the head of A, 106 lower-frame cleanup gates and an exact refactored cleanup). The `port_stage` steps read the words of the 504-helper shadow chains **ck_504** = PR571's `frontier-composition/combined-prefix-word/FULL-WORD.json.gz` → `greedy_kernels` (12 multi-cut cold kernels, PR568's constructor) → `frame_coalesce` (6 frame coalescences, PR583's constructor) → `gate_move_coalesce` (2 coalescences, each after moving an addition past commuting additions; 2 moves); **jp8_504** = the frozen PR558 promoted word → `cold_kernel` (PR568 `data/EIGHT-COLD.json`) → `multicut` (PR568 `data/EIGHT-MULTICOLD.json`) → `frozen558_scalar_audits` (inherited static44 and rank-five audits; word unchanged) → `joint_prefix` (PR575, variant `eightcold`), rebuilt in the same run and pinned like the providers but never dispatched. Each step runs a pinned, unchanged constructor plus its paired omission or negative-control audit; a hyperplane-ended helper starts at its entrance frame E, ends at the hyperplane U, and pays residual width |U| − |E|; a cold-ended helper starts cold (E = ∅) and ends at its low-dimensional frame U, so it pays |U|; every other helper ends at FULL, so its width stays h − |E|. The dispatch (which provider serves each (stage, replica) call), the asynchronous call order and the literal owner map are `data/PLAN.json` (`provider_calls`, `order`) and `data/OWNERS.json.gz`, at the dispatch jp8 ×71, ck ×1 (the aggregate free-dispatch LP selects jp8 at every time; ck is pinned at time 5 because the global controls need two dispatched providers); the owner map is an exact per-time-Hall exact-window MIP solution (RINS around the exact-window LP vertex, 240 s, warm-started from PR627's map; solver status/gap not recorded) (see `data/cand.json`), and PLAN is the window MIP's PLAN with the provider registry re-derived from the admitted provider locals (widths over the word's R helpers) and `profile`/`assignment_sha256` recomputed from the map (Stack492 mkplan.py); the resulting paid profile is {1:181421, 2:29094, 3:32112, 4:11809, 5:4898, 6:288, 8:576, 9:2, 32:1, 39:1, 48:2221} with live 7168, physical 7670 and deficit 2560, giving κ = 409060375394097/250000000000000000 = 0.001636241501576388 (conservative model 0.001636241498709272). + +## Files + +| file | role | +|---|---| +| `data/WITNESS.json` | **inputs only**: geometry, pinned sources, the provider build chains above, dispatch and call order, and PLAN/OWNERS/recipes by SHA-256 | +| `data/EXPECTED.json` | **expected values only**, all derived by recomputation (`spec.py generate`): per-step word hashes and control counts, per-provider artifacts, programs and profiles, global profile and counts, κ. Bound to WITNESS.json by hash | +| `data/PLAN.json`, `data/OWNERS.json.gz` | dispatch, call order and literal owner map (inputs, pinned by WITNESS.json) | +| `data/recipes/` | the package's own step recipes (inputs, pinned by WITNESS.json); `data/recipes/atm3-step0-promote.json`, `data/recipes/atm3-step1-greedy_kernels.json`, `data/recipes/atm3-step2-frame_coalesce.json`, `data/recipes/atm3-step3-gate_move_coalesce.json`, `data/recipes/k492-atm3-cold_end.json.gz`, `data/recipes/k492-atm3-frame_regroup.json`, `data/recipes/k492-atm3-hyperplane_end.json` is not used by the witness (a provider the owner solve did not dispatch; `data/cand.json` lists it) | +| `data/cand.json` | the search candidate (schema candidate/1), an input of the search side: the provider chains (PR622's K-triangle chains with ColdThird's h4a cold_end recipes; the jp8 recipe additionally carries PR627's two factored ends (590, 581) with a re-derived premix and the q92 absorption), the dispatch rule and the PLAN rule, and the owner search (start map `owners.warm_owners`, solver settings, LP pattern inputs, objective and the solve result), with package-relative and `NAME:` source references. The verifiers do not read it | +| `PROOF-COMMUTING-PREFIX.md` | proof note for the construction (documentation; no verifier reads it) | +| `PROOF-NOTE-R.md` | proof note for the construction (documentation; no verifier reads it) | +| `PROOF-NOTE.md` | proof note for the construction (documentation; no verifier reads it) | +| `data/search/WARM-OWNERS.json.gz` | search input named by `data/cand.json` (`owners.warm_owners`): PR627's `data/OWNERS.json.gz` (complex-571-cold14-k492b, jeremydiviney), the warm start of the aggregate LP and the MIP. The shipped `data/OWNERS.json.gz` is the search's result; the verifiers do not read this file | +| `data/search/DISPATCH.json` | search input named by `data/cand.json` (`owners.search_inputs`): the dispatch {time: provider}: jp8 everywhere except ck at time 5; the verifiers do not read this file | +| `data/search/LP-PATTERNS-AGG.json` | search input named by `data/cand.json` (`owners.search_inputs`): aggregate free-dispatch LP relaxation over the st2 words {ck, jp8} (crossover, tight 3), warm-started from PR627's map; the verifiers do not read this file | +| `data/search/LP-PATTERNS-EX.json` | search input named by `data/cand.json` (`owners.search_inputs`): exact-window LP relaxation (crossover) at that dispatch over the base patterns plus aggregate-LP patterns with weight >= 0.01; the verifiers do not read this file | +| `data/search/TEMPLATE-PLAN.json` | search input named by `data/cand.json` (`owners.search_inputs`): the PLAN whose windows/order/registry template the nominator reuses (same as PR622's); the verifiers do not read this file | +| `data/search/WARM-PLAN.json` | search input named by `data/cand.json` (`owners.search_inputs`): PR627's data/PLAN.json, matching WARM-OWNERS.json.gz; the verifiers do not read this file | +| `data/SPEC.json`, `verify.py`, `verify.sh`, `code/` | the combined spec and package verifier (PR604's verifier and code, byte for byte); they verify the same record | + +`data/PLAN.json` carries `"status": "LITERAL_OWNER_NOMINATION_PENDING_ADMISSION"`. That label was written by the owner nominator before admission and is kept unchanged because WITNESS.json pins PLAN by hash; admission is what the verifiers below establish, and the label carries no meaning for them. + +## Verification + +The pinned sources are not merged; fetch their pinned commits first: + +```sh +git fetch origin pull/568/head:pr568 pull/571/head:pr571 pull/569/head:pr569 pull/575/head:pr575 pull/583/head:pr583 pull/531/head:pr531 +git worktree add --detach ../pr568 71c99ac935a33bb7b59a1b4a7af8725a939b0b90 +git worktree add --detach ../pr571 b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3 +git worktree add --detach ../pr569 897213a855b7fb8a1b8b0e552a2f5c42e6c1b326 +git worktree add --detach ../pr575 eac6f7e378ab622dac50a2fd4b7ef6eab014de44 +git worktree add --detach ../pr583 89be768f0157f5a3d8e4db69cf1748768605eac9 +git worktree add --detach ../pr531 e07a8a3f9f79c22113398a0c5dbbc7601f489b3e +``` + +Generic verifier (`research/witness-spec-tools`, PR587 with the `frame_coalesce`, `gate_move_coalesce`, `hyperplane_end`, `cold_end`, `port_stage` and `frame_regroup` step types and the `k_triangle` base; its `code/build_hpe.py`, `code/hpe_controls_atc.py`, `code/build_cold_end.py`, `code/cold_end_controls.py`, `code/hpe_audit_and_transport.py`, `code/hpe_*_local.py`, `code/construct_k_triangle.py`, `code/build_port_stage.py` and `code/build_frame_regroup.py` must be byte-identical to this package's `code/` copies, which define the hyperplane-end and cold-end constructors, their controls and the generalised native chain). It builds everything from `data/WITNESS.json` and only compares against `data/EXPECTED.json`: + +```sh +T=research/witness-spec-tools +python3 $T/spec.py check --package research/complex-571-cold14-st2 \ + --source multicold=../pr568/research/complex-multicold \ + --source structural_gain=../pr571/research/structural-gain \ + --source larger_gain=../pr569/research/larger-gain \ + --source joint_prefix=../pr575/research/complex-joint-prefix \ + --source frame_coalescing=../pr583/research/kernel-frame-coalescing \ + --source direct_delivery=../pr531/research/direct-delivery504-global +python3 $T/verify.py --package research/complex-571-cold14-st2 --work /tmp/complex-571-cold14-st2 \ + --source multicold=../pr568/research/complex-multicold \ + --source structural_gain=../pr571/research/structural-gain \ + --source larger_gain=../pr569/research/larger-gain \ + --source joint_prefix=../pr575/research/complex-joint-prefix \ + --source frame_coalescing=../pr583/research/kernel-frame-coalescing \ + --source direct_delivery=../pr531/research/direct-delivery504-global +# kappa 0.001636241501576388 +``` + +`verify.py` checks the package MANIFEST and every source, PLAN, OWNERS and recipe pin; replays PR558; rebuilds each provider word through its build chain (each step's input and output content hash pinned, 15 steps); localizes each word (hyperplane- and cold-ended words through the generalised native chain, with `0:U` wrappers for cold ends); then runs binding, the physical owner audit with 23 controller mutants, a fresh finite invoice, both exact moment engines, 114 assembly controls, the phase-timing controls and the generated-identity controls. + +The original package verifier gives the same result from `data/SPEC.json`: + +```sh +python3 -B research/complex-571-cold14-st2/verify.py --work /tmp/complex-571-cold14-st2-spec \ + --source multicold=../pr568/research/complex-multicold \ + --source structural_gain=../pr571/research/structural-gain \ + --source larger_gain=../pr569/research/larger-gain \ + --source joint_prefix=../pr575/research/complex-joint-prefix \ + --source frame_coalescing=../pr583/research/kernel-frame-coalescing \ + --source direct_delivery=../pr531/research/direct-delivery504-global +``` + +Both use only the Python standard library and require assertions (no `-O`). The result is conditional on the inherited assumptions listed in NOTICE.md. + +## Construction and history (the package README as committed) + +- **κ = 0.001636241501576388** (conservative model 0.001636241498709272), +0.0223% over PR632 (0.001635877117861902) and +0.0289% over complex-571-cold14-h4a (0.001635768210079684). +- **Construction.** complex-571-cold14-h4a (ColdThird's dim-8 cold ends on PR622's K-triangle words) with **PR627's two factored jp8 cold ends** (jeremydiviney; helpers 590 and 581 at dim-7 frames) stacked on h4a's jp8 `cold_end` recipe. ck is h4a's. Code is h4a's reviewed code; only `data/recipes/k492-jp8-cold_end.json.gz`, the owner map, PLAN and SPEC change. +- **Premix re-derivation.** PR627's rank-0 premix is re-derived exactly in h4a's basis (row then column gates on cold non-ended helpers at frame `[]`, so that row and column 590/581 of the total map are unit vectors off the targets). +- **q92 absorption.** h4a's dirt release at anchor 1665 (q95 += −¼·S403) leaks into end 581 through port 92; one extra dead-port absorption at the same anchor, q92 += ¼·S403, cancels it (exact linear solve; residual empty). It is admitted by the ColdThird allowlist. +- **Review.** H4aReviewer, Addendum 2: SOUND for the local stages (rebuild by the reviewed `apply`, exact endpoint replay in all orientations, `:157`, (N) for the new (0, U7) pairs, 46 controls, profile Δ against h4a {1:+2, 2:+2, 5:−2}). Details in `PROOF-NOTE.md`, section "st2". +- **Line endings.** The reviewed tree had three CRLF files; they are committed as LF only. For each, `crlf_bytes.replace(b'\r\n', b'\n') == lf_bytes` holds and no lone `\r` remains: + - `code/build_cold_end.py`: reviewed (CRLF) 2fdfdadc2e24f5b024092ffcce144e23a2b2d618fa1d4ebfb3a8179e1fba9cbc, committed (LF) 864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668 + - `code/cold_end_controls.py`: reviewed (CRLF) 3082412baf5eeb12241afb0815f82d4b0519a4e903e1f9cf9739109cf524308c, committed (LF) 0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84 + - `verify.py`: reviewed (CRLF) 9db990b50e0a5c8918871dff02404bfcc9a8d143f483a6c310ea36b9d80b8c76, committed (LF) 4c8dea601fe9255bd9fbbf7840d3bfacc3dcf0b1deaf7ffab467e3c10648a3b7 + The other 21 reviewed files are byte-identical to the reviewed tree (H4aFinish `CODE-SHA256-AT-REVIEW.txt`). +- **Dispatch and owner map.** jp8 ×71, ck ×1 (the aggregate LP picks jp8 everywhere; ck is pinned at time 5 because the global controls need two dispatched providers). The owner map is an exact per-time-Hall exact-window MIP solution (RINS, 240 s, warm-started from PR627's map; the solver's status/gap line was not recorded). Global paid profile {1:181421, 2:29094, 3:32112, 4:11809, 5:4898, 6:288, 8:576, 9:2, 32:1, 39:1, 48:2221}. +- `data/SPEC.json` `expected.entering_helper_roles` is corrected from the inherited 16356 to the audited 16714; `verify.py` does not read this key. + +### Predecessor: complex-571-cold14-h4a, conditional κ 0.001635768210079684 + +- **κ = 0.001635768210079684** (conservative model 0.001635768207214129), +0.0147% over PR626 (0.001635527380375392) and +0.0212% over PR622 (0.00163542231500688). +- **Construction.** PR622's K-triangle words with ColdThird's h4a `cold_end` recipes (`data/recipes/k492-{jp8,ck}-cold_end.json.gz`): per word, 4 extra cold ends S1.3, S3.3, S5.3, S7.3 at the dim-8 hyperplane U8a = [256,128,65,33,17,9,4,2], each with 2 lifted partners, plus dead-port absorptions (dirt releases and L-side gates) admitted by a widened forward-absorption allowlist in `code/build_cold_end.py::apply` and independently in `verify.py::cold_end`. Per word the paid profile changes by {1:+4, 4:+4, 6:-4} against PR622 v3 and 4 helpers go from width 9 to width 8. See the ColdThird section of `PROOF-NOTE.md`: soundness rests on the transport's exact arbitrary-dirt endpoint replay plus the `hpe_audit_and_transport.py:157` guard, not on the allowlist's deadness condition. +- **Controls.** The `cold_end` step pins 46 rejected controls per word (38 inherited + 8 ColdThird). The inherited `ab_centre` control is re-pinned from ENDPOINT to COLDPRE when dim-8 cold ends are present, and its centre is chosen outside the cold set (`PROOF-NOTE.md`, "Inherited control re-pin"). +- **Dispatch and owner map.** Free dispatch ck ×1, jp8 ×71 (per-time argmax of the aggregate free-dispatch hosting LP over {ck, jp8}); the owner map is an exact per-time-Hall exact-window MIP solution (RINS around the exact-window LP vertex, warm-started from PR626's owner map). Global paid profile {1:181364, 2:28952, 3:32112, 4:11808, 5:5040, 6:288, 8:576, 39:4, 48:2212}. +- `data/SPEC.json` pins the h4a build (and `expected.entering_helper_roles` = 16572, the audited value; PR622 carried 16356) (cold_end `recipe_sha256`, `negative_controls` = 46, `output_content_sha256`) and every global stage, from a discovery run followed by a strict `verify.py` run. +- **Review and line endings.** H4aReviewer (SOUND-WITH-FIXES) reviewed the code with the hashes in H4aFinish's CODE-SHA256-AT-REVIEW.txt. Three of those files were CRLF in the reviewed tree and are committed with LF line endings only; for each, `crlf_bytes.replace(b'\r\n', b'\n') == lf_bytes` holds and no lone `\r` remains: + - `verify.py`: reviewed (CRLF) 9db990b50e0a5c8918871dff02404bfcc9a8d143f483a6c310ea36b9d80b8c76, committed (LF) 4c8dea601fe9255bd9fbbf7840d3bfacc3dcf0b1deaf7ffab467e3c10648a3b7 + - `code/build_cold_end.py`: reviewed (CRLF) 2fdfdadc2e24f5b024092ffcce144e23a2b2d618fa1d4ebfb3a8179e1fba9cbc, committed (LF) 864b4701dd73afd0c9d99761b7a749f3354c48985730f17054e18c052996a668 + - `code/cold_end_controls.py`: reviewed (CRLF) 3082412baf5eeb12241afb0815f82d4b0519a4e903e1f9cf9739109cf524308c, committed (LF) 0c404f49e90457520f1788ee6741c9ac154a5814c54ad6cb83b59c44552ebc84 + The other 21 reviewed files (the remaining code/ files and verify.sh) are byte-identical to the reviewed tree. + +The rest of this README is PR622's README, unchanged except for the `data/search/` rows. + +### Predecessor: complex-571-cold14-k492 (PR622), conditional κ 0.00163542231500688 + +### Definition + +The witness `cold14` is the PR558 geometry (112 data columns, h = 9, 492 helpers per provider word (the K-triangle helper count R; the width-8 spot helpers are the helper-map images [264, 276, 288, 300] of PR558's 270, 282, 294, 306), 8 centres, 9 stages × 8 replicas = 72 calls) served by 2 provider words, each a pinned base word followed by typed build steps: **jp8** (65 calls) = the K-triangle skeleton word (R = 492 helpers; 4 scheduled triangles, `data/TRI-SCHEDULE.json`) → `port_stage` (raw504 → promoted558 of the 504-helper chain, replayed through the helper map) → `port_stage` (promoted558 → jp8_504:0 of the 504-helper chain, replayed through the helper map) → `port_stage` (jp8_504:0 → jp8_504:1 of the 504-helper chain, replayed through the helper map) → `port_stage` (jp8_504:1 → jp8_504:3 of the 504-helper chain, replayed through the helper map) → `frame_regroup` (24 frame regroupings) → `hyperplane_end` (34 helpers end at a hyperplane U instead of FULL) → `cold_end` (22 cold helpers end at a dim-4 frame U instead of FULL, after a 430-gate rank-0 premix at the head of A, 86 lower-frame cleanup gates and an exact refactored cleanup); **ck** (7 calls) = the K-triangle skeleton word (R = 492 helpers; 4 scheduled triangles, `data/TRI-SCHEDULE.json`) → `port_stage` (raw504 → promoted558 of the 504-helper chain, replayed through the helper map) → `port_stage` (promoted558 → ck_504:base of the 504-helper chain, replayed through the helper map) → `port_stage` (ck_504:base → ck_504:0 of the 504-helper chain, replayed through the helper map) → `port_stage` (ck_504:0 → ck_504:1 of the 504-helper chain, replayed through the helper map) → `port_stage` (ck_504:1 → ck_504:2 of the 504-helper chain, replayed through the helper map) → `frame_regroup` (24 frame regroupings) → `hyperplane_end` (34 helpers end at a hyperplane U instead of FULL) → `cold_end` (22 cold helpers end at a dim-4 frame U instead of FULL, after a 430-gate rank-0 premix at the head of A, 86 lower-frame cleanup gates and an exact refactored cleanup). The `port_stage` steps read the words of the 504-helper shadow chains **ck_504** = PR571's `frontier-composition/combined-prefix-word/FULL-WORD.json.gz` → `greedy_kernels` (12 multi-cut cold kernels, PR568's constructor) → `frame_coalesce` (6 frame coalescences, PR583's constructor) → `gate_move_coalesce` (2 coalescences, each after moving an addition past commuting additions; 2 moves); **jp8_504** = the frozen PR558 promoted word → `cold_kernel` (PR568 `data/EIGHT-COLD.json`) → `multicut` (PR568 `data/EIGHT-MULTICOLD.json`) → `frozen558_scalar_audits` (inherited static44 and rank-five audits; word unchanged) → `joint_prefix` (PR575, variant `eightcold`), rebuilt in the same run and pinned like the providers but never dispatched. Each step runs a pinned, unchanged constructor plus its paired omission or negative-control audit; a hyperplane-ended helper starts at its entrance frame E, ends at the hyperplane U, and pays residual width |U| − |E|; a cold-ended helper starts cold (E = ∅) and ends at its low-dimensional frame U, so it pays |U|; every other helper ends at FULL, so its width stays h − |E|. The dispatch (which provider serves each (stage, replica) call), the asynchronous call order and the literal owner map are `data/PLAN.json` (`provider_calls`, `order`) and `data/OWNERS.json.gz`, at the free dispatch ck ×7, jp8 ×65 (per-time argmax of the aggregate free-dispatch hosting LP over the K-triangle words {ck, atm3, jp8}; atm3 is never selected); the owner map is an exact per-time-Hall exact-window MIP solution (RINS around the exact-window LP vertex; 1800 s time limit, relative gap 1.0e-7) (see `data/cand.json`), and PLAN is the window MIP's PLAN with the provider registry re-derived from the admitted provider locals (widths over the word's R helpers) and `profile`/`assignment_sha256` recomputed from the map (Stack492 mkplan.py); the resulting paid profile is {1:181579, 2:29864, 3:31267, 4:11520, 5:5040, 6:576, 7:1, 8:576, 21:1, 48:2213} with live 7168, physical 7670 and deficit 2560, giving κ = 10221389468793/6250000000000000 = 0.00163542231500688 (conservative model 0.001635422312138865). + +### Files + +| file | role | +|---|---| +| `data/WITNESS.json` | **inputs only**: geometry, pinned sources, the provider build chains above, dispatch and call order, and PLAN/OWNERS/recipes by SHA-256 | +| `data/EXPECTED.json` | **expected values only**, all derived by recomputation (`spec.py generate`): per-step word hashes and control counts, per-provider artifacts, programs and profiles, global profile and counts, κ. Bound to WITNESS.json by hash | +| `data/PLAN.json`, `data/OWNERS.json.gz` | dispatch, call order and literal owner map (inputs, pinned by WITNESS.json) | +| `data/recipes/` | the package's own step recipes (inputs, pinned by WITNESS.json); `data/recipes/atm3-step0-promote.json`, `data/recipes/atm3-step1-greedy_kernels.json`, `data/recipes/atm3-step2-frame_coalesce.json`, `data/recipes/atm3-step3-gate_move_coalesce.json`, `data/recipes/k492-atm3-cold_end.json.gz`, `data/recipes/k492-atm3-frame_regroup.json`, `data/recipes/k492-atm3-hyperplane_end.json` is used only by `data/cand.json` (a menu provider the owner solve did not dispatch), not by the witness | +| `data/cand.json` | the search candidate (schema candidate/1), an input of the search side: the provider chains (the K-triangle skeleton with PR604/B3 chains ported stage by stage (port_stage, frame_regroup) and ColdBeyond v3 cold_end recipes re-derived on the ported words), the dispatch rule and the PLAN rule, and the owner search (start map `owners.warm_owners`, solver settings, LP pattern inputs, objective and the solve result), with package-relative and `NAME:` source references. The verifiers do not read it | +| `PROOF-COMMUTING-PREFIX.md` | proof note for the construction (documentation; no verifier reads it) | +| `PROOF-NOTE-R.md` | proof note for the construction (documentation; no verifier reads it) | +| `PROOF-NOTE.md` | proof note for the construction (documentation; no verifier reads it) | +| `data/search/WARM-OWNERS.json.gz` | search input: PR626's `data/OWNERS.json.gz` (complex-k492-owner-repair), the warm start of the owner solve (calls whose words widened are repaired by the solver). The shipped `data/OWNERS.json.gz` is the search's result; the verifiers do not read this file | +| `data/search/DISPATCH.json` | search input: the dispatch {time: provider} = per-time argmax of the aggregate free-dispatch LP selections over the h4a words {ck, jp8}; the verifiers do not read this file | +| `data/search/LP-PATTERNS-AGG.json` | search input: aggregate free-dispatch LP relaxation over the h4a words {ck, jp8} (crossover, tight 3); the verifiers do not read this file | +| `data/search/LP-PATTERNS-EX.json` | search input: exact-window LP relaxation (crossover) at that dispatch over the base patterns plus aggregate-LP patterns with weight >= 0.01; the verifiers do not read this file | +| `data/search/TEMPLATE-PLAN.json` | search input named by `data/cand.json` (`owners.search_inputs`): the PLAN of ColdBeyond's working package (PR604's dispatch ck ×44, atm3 ×22, jp8 ×6), whose windows/order/registry template the nominator reuses; the verifiers do not read this file | +| `data/search/WARM-PLAN.json` | search input: PR626's `data/PLAN.json`, matching WARM-OWNERS.json.gz; the verifiers do not read this file | +| `data/SPEC.json`, `verify.py`, `verify.sh`, `code/` | the combined spec and package verifier (PR604's verifier and code, byte for byte); they verify the same record | + +`data/PLAN.json` carries `"status": "LITERAL_OWNER_NOMINATION_PENDING_ADMISSION"`. That label was written by the owner nominator before admission and is kept unchanged because WITNESS.json pins PLAN by hash; admission is what the verifiers below establish, and the label carries no meaning for them. + +### Verification + +The pinned sources are not merged; fetch their pinned commits first: + +```sh +git fetch origin pull/568/head:pr568 pull/571/head:pr571 pull/569/head:pr569 pull/575/head:pr575 pull/583/head:pr583 pull/531/head:pr531 +git worktree add --detach ../pr568 71c99ac935a33bb7b59a1b4a7af8725a939b0b90 +git worktree add --detach ../pr571 b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3 +git worktree add --detach ../pr569 897213a855b7fb8a1b8b0e552a2f5c42e6c1b326 +git worktree add --detach ../pr575 eac6f7e378ab622dac50a2fd4b7ef6eab014de44 +git worktree add --detach ../pr583 89be768f0157f5a3d8e4db69cf1748768605eac9 +git worktree add --detach ../pr531 e07a8a3f9f79c22113398a0c5dbbc7601f489b3e +``` + +Generic verifier (`research/witness-spec-tools`, PR587 with the `frame_coalesce`, `gate_move_coalesce`, `hyperplane_end`, `cold_end`, `port_stage` and `frame_regroup` step types and the `k_triangle` base; its `code/build_hpe.py`, `code/hpe_controls_atc.py`, `code/build_cold_end.py`, `code/cold_end_controls.py`, `code/hpe_audit_and_transport.py`, `code/hpe_*_local.py`, `code/construct_k_triangle.py`, `code/build_port_stage.py` and `code/build_frame_regroup.py` must be byte-identical to this package's `code/` copies, which define the hyperplane-end and cold-end constructors, their controls and the generalised native chain). It builds everything from `data/WITNESS.json` and only compares against `data/EXPECTED.json`: + +```sh +T=research/witness-spec-tools +python3 $T/spec.py check --package research/complex-571-cold14-k492 \ + --source multicold=../pr568/research/complex-multicold \ + --source structural_gain=../pr571/research/structural-gain \ + --source larger_gain=../pr569/research/larger-gain \ + --source joint_prefix=../pr575/research/complex-joint-prefix \ + --source frame_coalescing=../pr583/research/kernel-frame-coalescing \ + --source direct_delivery=../pr531/research/direct-delivery504-global +python3 $T/verify.py --package research/complex-571-cold14-k492 --work /tmp/complex-571-cold14-k492 \ + --source multicold=../pr568/research/complex-multicold \ + --source structural_gain=../pr571/research/structural-gain \ + --source larger_gain=../pr569/research/larger-gain \ + --source joint_prefix=../pr575/research/complex-joint-prefix \ + --source frame_coalescing=../pr583/research/kernel-frame-coalescing \ + --source direct_delivery=../pr531/research/direct-delivery504-global +# kappa 0.00163542231500688 +``` + +`verify.py` checks the package MANIFEST and every source, PLAN, OWNERS and recipe pin; replays PR558; rebuilds each provider word through its build chain (each step's input and output content hash pinned, 15 steps); localizes each word (hyperplane- and cold-ended words through the generalised native chain, with `0:U` wrappers for cold ends); then runs binding, the physical owner audit with 23 controller mutants, a fresh finite invoice, both exact moment engines, 114 assembly controls, the phase-timing controls and the generated-identity controls. + +The original package verifier gives the same result from `data/SPEC.json`: + +```sh +python3 -B research/complex-571-cold14-k492/verify.py --work /tmp/complex-571-cold14-k492-spec \ + --source multicold=../pr568/research/complex-multicold \ + --source structural_gain=../pr571/research/structural-gain \ + --source larger_gain=../pr569/research/larger-gain \ + --source joint_prefix=../pr575/research/complex-joint-prefix \ + --source frame_coalescing=../pr583/research/kernel-frame-coalescing \ + --source direct_delivery=../pr531/research/direct-delivery504-global +``` + +Both use only the Python standard library and require assertions (no `-O`). The result is conditional on the inherited assumptions listed in NOTICE.md. + +### Construction and history (the package README as committed) + +### Definition + +The witness `cold14` uses the PR558 geometry: 112 data columns, h = 9, 8 centres, and 9 stages × 8 replicas = 72 calls. Its providers are words with **R = 492 helpers** instead of 504, built on AtomScout's leaver-read K-triangle skeleton. There are 2 provider words, each a K-triangle base word followed by typed build steps: + +- **jp8** (65 calls): + 1. `k_triangle`; + 2. `port_stage`: raw504 → PR558 promoted; + 3. `port_stage` × 3, porting PR568 `cold_kernel` → `multicut` → PR575 `joint_prefix` (eightcold); + 4. `frame_regroup` (24 K-read gate frames); + 5. `hyperplane_end` (34 helpers); + 6. `cold_end` (ColdBeyond v3: S b.10 in all 14 blocks, S b.9 in blocks 3–10, plus the E1 entering pair). +- **ck** (7 calls): + 1. `k_triangle`; + 2. `port_stage`: raw504 → PR558 promoted; + 3. `port_stage`: promoted → PR571 combined-prefix word; + 4. `port_stage` × 3, porting `greedy_kernels` → PR583 `frame_coalesce` → `gate_move_coalesce`; + 5. `frame_regroup`, `hyperplane_end`, `cold_end` as for jp8. + +An exact per-time-Hall exact-window MIP chose the dispatch and the literal owner map from the menu {ck, atm3, jp8}. + +### The K-triangle skeleton (`k_triangle`, `code/construct_k_triangle.py`) + +`code/construct_k_triangle.py` is PR531's `code/construct_504.py` (research/direct-delivery504-global, a pinned source), extended by AtomScout's atom. + +**The atom.** A coordinate pair p is *full* when the selected partition contains p in all three blocks that contain p. Then both of its triangles (p, ±1) are consumed only by K-coordinates. For each scheduled triangle: +- its three faces are never formed and never copied; +- every K-coordinate target reads its own leaver (the K-basis own token); +- it then reads the four unformed leavers of the other two faces, in a fixed legal order (`data/TRI-SCHEDULE.json`: the four (p, −1) triangles of the full pairs (0,1), (2,3), (4,5), (6,7)). + +This saves 3 packet copies per triangle, so R = 504 − 12 = 492. + +**Checks in the constructor.** It keeps every assertion of PR531's constructor (generalised to R): +- the side identity; +- every target frame inside hyper(P_t); +- exact clean cleanup; +- rank mass 9R + 1992. + +It also writes `HELPER-MAP.json`, the 504 → 492 register map. Registers below 448 keep their ids, and the 12 removed packet copies have no image. + +**Controls in `verify.py`, run once:** +- PR531's unchanged `construct_504.py` and this constructor with an empty schedule each reproduce PR552's `RAW504.json.gz` (content); +- the empty-schedule helper map is the identity. + +### Porting the 504-helper chain (`port_stage`, `code/build_port_stage.py`) + +**Shadow chains.** The 504-helper chains of PR604/B3 (`build.shadows`: jp8_504, ck_504) are rebuilt in the same run from pinned sources, with their own constructors, controls and content pins. + +**What each `port_stage` step does.** It replays one shadow stage I4 → O4 onto the K-triangle word I8 through the helper map: +1. gates are matched by scalar operation; +2. the stage's frame changes, introduced gates and entrance (start_extra) changes are applied; +3. the K-triangle reads are kept after their predecessors' images; +4. the cleanup is the inherited inverse rule. + +**Certification.** The constructor is only a transfer. Every ported word is certified by the generalised native audit (`code/hpe_audit_and_transport.py`: exact forward and inverse replay of every column, native frame chains). Every input, shadow input, shadow output and output is pinned by content hash. + +### `frame_regroup` (`code/build_frame_regroup.py`) + +This is PR583's `build_frames.py`, except that the per-change profile delta is pinned in the recipe instead of being fixed to {1:−2, 2:+1}. Its other properties: +- scalar operations, widths and helper responses are unchanged; +- the omission and over-promotion controls are rejected; +- the same independent comparison as `frame_coalesce` follows. + +The 24 changes move the K-read gates of the eight K-coordinate targets to coalesced frames, each with delta {1:−3, 2:+3, 3:−1}. + +### Helper count R in the global code + +The global scripts (bind, emit, audit, invoice, assemble, assembly controls, generated-identity controls) take R from the provider words, and all providers must share it. The parent split-centres envelope keeps its own R0 = 504. + +The width-8 spot check and the cold-helper width-swap controls use `width_spot_helpers`. These are the images of PR558's helpers 270, 282, 294, 306 under the helper map: [264, 276, 288, 300]. `verify.py` checks them against the constructor's `HELPER-MAP.json`. + +`PROOF-NOTE-R.md` lists every 504 → R site, why it is sound, and one revert control per site that must fail on this package's R = 492 fixture. `PROOF-NOTE.md` is B3's note: ColdBeyond's cold_end primitives, including dead-port absorption, unchanged. It is followed by a new section on the soundness of the K-triangle atom, the port transfer and frame regrouping. + +### Result + +κ = **0.00163542231500688** (conservative model 0.001635422312138865). That is +0.0146% over complex-571-cold14-b3 (0.001635183729255778), on dispatch ck ×7, jp8 ×65. + +The global paid profile is {1:181579, 2:29864, 3:31267, 4:11520, 5:5040, 6:576, 7:1, 8:576, 21:1, 48:2213} (live 7168, deficit 2560). + +The value comes from `ASSEMBLY.json` of the strict `verify.py` run on this package's literal owner map. + +`SPEC.expected.owners_per_call` (716 = 2·112 + 492) and `SPEC.expected.entering_helper_roles` (16356) hold the audited values of the strict run. B3 carried 728 and 17712 for them. `verify.py` reads neither key. + +### Verification + +Fetch the pinned sources at their commits, as for complex-571-cold14-b3, plus PR531 (`research/direct-delivery504-global`, on main at `e07a8a3f9f79c22113398a0c5dbbc7601f489b3e`). Then run: + +```sh +python3 -B research/complex-571-cold14-k492/verify.py --work /tmp/complex-571-cold14-k492 \ + --source multicold=../pr568/research/complex-multicold \ + --source structural_gain=../pr571/research/structural-gain \ + --source larger_gain=../pr569/research/larger-gain \ + --source joint_prefix=../pr575/research/complex-joint-prefix \ + --source frame_coalescing=../pr583/research/kernel-frame-coalescing \ + --source direct_delivery=research/direct-delivery504-global +# kappa 0.00163542231500688 +``` + +`verify.py` performs these steps in order: +1. Replays PR558. +2. Runs the K-triangle constructor and its controls. +3. Rebuilds the 504-helper shadow chains. +4. Rebuilds each 492-helper provider word through its typed steps (each step's input and output content hash pinned). +5. Localizes each provider word with the generalised native chain and all phase edges. +6. Runs binding, the physical owner audit with its mutation controls, a fresh finite invoice, both exact moment engines, the assembly controls, the phase-timing controls and the generated-identity controls. + +Standard library only; assertions are required (no `-O`). The result is conditional on the inherited assumptions listed in NOTICE.md. + +### Construction and history + +The README of complex-571-cold14-b3 follows unchanged. + +# complex-571-cold14-b3: conditional κ 0.001635183729255778 + +### Definition + +The witness `cold14` is the PR558 geometry (112 data columns, h = 9, 504 helpers, 8 centres, 9 stages × 8 replicas = 72 calls) served by 2 provider words, each a pinned base word followed by typed build steps: **jp8** (60 calls) = the frozen PR558 promoted word → `cold_kernel` (PR568 `data/EIGHT-COLD.json`) → `multicut` (PR568 `data/EIGHT-MULTICOLD.json`) → `frozen558_scalar_audits` (inherited static44 and rank-five audits; word unchanged) → `joint_prefix` (PR575, variant `eightcold`) → `hyperplane_end` (46 helpers end at a hyperplane U instead of FULL) → `cold_end` (28 cold helpers end at a dim-4 frame U instead of FULL, after a 550-gate rank-0 premix at the head of A, 104 lower-frame cleanup gates and an exact refactored cleanup); **atm3** (12 calls) = PR571's `frontier-composition/combined-prefix-word/FULL-WORD.json.gz` → `promote` (40 entrance promotions, PR569's constructor) → `greedy_kernels` (12 multi-cut cold kernels, PR568's constructor) → `frame_coalesce` (6 frame coalescences, PR583's constructor) → `gate_move_coalesce` (2 coalescences, each after moving an addition past commuting additions; 2 moves) → `hyperplane_end` (46 helpers end at a hyperplane U instead of FULL) → `cold_end` (28 cold helpers end at a dim-4 frame U instead of FULL, after a 550-gate rank-0 premix at the head of A, 104 lower-frame cleanup gates and an exact refactored cleanup). Each step runs a pinned, unchanged constructor plus its paired omission or negative-control audit; a hyperplane-ended helper starts at its entrance frame E, ends at the hyperplane U, and pays residual width |U| − |E|; a cold-ended helper starts cold (E = ∅) and ends at its low-dimensional frame U, so it pays |U|; every other helper ends at FULL, so its width stays h − |E|. The dispatch (which provider serves each (stage, replica) call), the asynchronous call order and the literal owner map are `data/PLAN.json` (`provider_calls`, `order`) and `data/OWNERS.json.gz`, at the free dispatch jp8 ×60, atm3 ×12 (per-time argmax of the aggregate free-dispatch hosting LP over {ck, atm3, jp8}; ck is never selected); the owner map is an exact per-time-Hall exact-window MIP solution (RINS around the exact-window LP vertex; 240 s time limit, relative gap 1.69e-7) (see `data/cand.json`), and PLAN is the window MIP's PLAN with the provider registry re-derived from the admitted provider locals and `profile`/`assignment_sha256` recomputed from the map (ColdOwner mkplan.py); the resulting paid profile is {1:181848, 2:24770, 3:31778, 4:13728, 5:5040, 6:1008, 7:2, 8:576, 48:2150} with live 7168, physical 7682 and deficit 2560, giving κ = 817591864627889/500000000000000000 = 0.001635183729255778 (conservative model 0.001635183726407116). + +### Files + +| file | role | +|---|---| +| `data/WITNESS.json` | **inputs only**: geometry, pinned sources, the provider build chains above, dispatch and call order, and PLAN/OWNERS/recipes by SHA-256 | +| `data/EXPECTED.json` | **expected values only**, all derived by recomputation (`spec.py generate`): per-step word hashes and control counts, per-provider artifacts, programs and profiles, global profile and counts, κ. Bound to WITNESS.json by hash | +| `data/PLAN.json`, `data/OWNERS.json.gz` | dispatch, call order and literal owner map (inputs, pinned by WITNESS.json) | +| `data/recipes/` | the package's own step recipes (inputs, pinned by WITNESS.json); `data/recipes/ck-step0-greedy_kernels.json`, `data/recipes/ck-step1-frame_coalesce.json`, `data/recipes/ck-step2-gate_move_coalesce.json`, `data/recipes/ck-step3-hyperplane_end.json`, `data/recipes/ck-step4-cold_end.json.gz` is used only by `data/cand.json` (a menu provider the owner solve did not dispatch), not by the witness | +| `data/cand.json` | the search candidate (schema candidate/1), an input of the search side: the provider chains (PR604's, with ColdBeyond's second-cold-end cold_end recipes), the dispatch rule and the PLAN rule, and the owner search (start map `owners.warm_owners`, solver settings, LP pattern inputs, objective and the solve result), with package-relative and `NAME:` source references. The verifiers do not read it | +| `PROOF-COMMUTING-PREFIX.md` | proof note for the construction (documentation; no verifier reads it) | +| `PROOF-NOTE.md` | proof note for the construction (documentation; no verifier reads it) | +| `data/search/WARM-OWNERS.json.gz` | search input named by `data/cand.json` (`owners.warm_owners`): the E1free map (`data/OWNERS.json.gz` of research/complex-571-cold14-e1, byte for byte), used only to seed the aggregate LP's patterns. The shipped `data/OWNERS.json.gz` is the search's result; the verifiers do not read this file | +| `data/search/DISPATCH.json` | search input named by `data/cand.json` (`owners.search_inputs`): the dispatch {time: provider} = per-time argmax of the aggregate LP selections; the verifiers do not read this file | +| `data/search/LP-PATTERNS-AGG.json` | search input named by `data/cand.json` (`owners.search_inputs`): aggregate free-dispatch LP relaxation over {ck, atm3, jp8} (crossover, tight 3), pattern-seeded from the E1free map; the verifiers do not read this file | +| `data/search/LP-PATTERNS-EX.json` | search input named by `data/cand.json` (`owners.search_inputs`): exact-window LP relaxation (crossover) at that dispatch over the base patterns plus aggregate-LP patterns with weight >= 0.01; the verifiers do not read this file | +| `data/search/TEMPLATE-PLAN.json` | search input named by `data/cand.json` (`owners.search_inputs`): the PLAN of ColdBeyond's working package (PR604's dispatch ck ×44, atm3 ×22, jp8 ×6), whose windows/order/registry template the nominator reuses; the verifiers do not read this file | +| `data/search/WARM-PLAN.json` | search input named by `data/cand.json` (`owners.search_inputs`): the E1free PLAN matching WARM-OWNERS.json.gz (pattern seeding of the aggregate LP); the verifiers do not read this file | +| `data/SPEC.json`, `verify.py`, `verify.sh`, `code/` | the combined spec and package verifier (PR604's verifier and code, byte for byte); they verify the same record | + +`data/PLAN.json` carries `"status": "LITERAL_OWNER_NOMINATION_PENDING_ADMISSION"`. That label was written by the owner nominator before admission and is kept unchanged because WITNESS.json pins PLAN by hash; admission is what the verifiers below establish, and the label carries no meaning for them. + +`SPEC.expected.entering_helper_roles` corrected from PR604's stale 16344 to the audited 17712 (audit_allcold.py, as pinned in EXPECTED.json); PR604's verify.py does not read this key. + +### Verification + +The pinned sources are not merged; fetch their pinned commits first: + +```sh +git fetch origin pull/568/head:pr568 pull/571/head:pr571 pull/569/head:pr569 pull/575/head:pr575 pull/583/head:pr583 +git worktree add --detach ../pr568 71c99ac935a33bb7b59a1b4a7af8725a939b0b90 +git worktree add --detach ../pr571 b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3 +git worktree add --detach ../pr569 897213a855b7fb8a1b8b0e552a2f5c42e6c1b326 +git worktree add --detach ../pr575 eac6f7e378ab622dac50a2fd4b7ef6eab014de44 +git worktree add --detach ../pr583 89be768f0157f5a3d8e4db69cf1748768605eac9 +``` + +Generic verifier (`research/witness-spec-tools`, PR587 with the `frame_coalesce`, `gate_move_coalesce`, `hyperplane_end` and `cold_end` step types; its `code/build_hpe.py`, `code/hpe_controls_atc.py`, `code/build_cold_end.py`, `code/cold_end_controls.py`, `code/hpe_audit_and_transport.py` and `code/hpe_*_local.py` must be byte-identical to this package's `code/` copies, which define the hyperplane-end and cold-end constructors, their controls and the generalised native chain). It builds everything from `data/WITNESS.json` and only compares against `data/EXPECTED.json`: + +```sh +T=research/witness-spec-tools +python3 $T/spec.py check --package research/complex-571-cold14-b3 \ + --source multicold=../pr568/research/complex-multicold \ + --source structural_gain=../pr571/research/structural-gain \ + --source larger_gain=../pr569/research/larger-gain \ + --source joint_prefix=../pr575/research/complex-joint-prefix \ + --source frame_coalescing=../pr583/research/kernel-frame-coalescing +python3 $T/verify.py --package research/complex-571-cold14-b3 --work /tmp/complex-571-cold14-b3 \ + --source multicold=../pr568/research/complex-multicold \ + --source structural_gain=../pr571/research/structural-gain \ + --source larger_gain=../pr569/research/larger-gain \ + --source joint_prefix=../pr575/research/complex-joint-prefix \ + --source frame_coalescing=../pr583/research/kernel-frame-coalescing +# kappa 0.001635183729255778 +``` + +`verify.py` checks the package MANIFEST and every source, PLAN, OWNERS and recipe pin; replays PR558; rebuilds each provider word through its build chain (each step's input and output content hash pinned, 12 steps); localizes each word (hyperplane- and cold-ended words through the generalised native chain, with `0:U` wrappers for cold ends); then runs binding, the physical owner audit with 23 controller mutants, a fresh finite invoice, both exact moment engines, 114 assembly controls, the phase-timing controls and the generated-identity controls. + +The original package verifier gives the same result from `data/SPEC.json`: + +```sh +python3 -B research/complex-571-cold14-b3/verify.py --work /tmp/complex-571-cold14-b3-spec \ + --source multicold=../pr568/research/complex-multicold \ + --source structural_gain=../pr571/research/structural-gain \ + --source larger_gain=../pr569/research/larger-gain \ + --source joint_prefix=../pr575/research/complex-joint-prefix \ + --source frame_coalescing=../pr583/research/kernel-frame-coalescing +``` + +Both use only the Python standard library and require assertions (no `-O`). The result is conditional on the inherited assumptions listed in NOTICE.md. + +### Construction and history (the package README as committed) + +This package is PR604's `complex-571-cold14` (DreamingOfClouds) extended by ColdBeyond's second cold low-frame end per factory block (S b.9 at U_b, on top of PR604's S b.10 end) and ColdSupply's E1 entering pair (as in PR615), at a free dispatch (jp8 ×60, atm3 ×12; ck is on the menu but not dispatched) with an exact per-time-Hall owner map from an exact-window MIP. The `cold_end` step's allowlist gains two A-gate primitives (frame-[] target writes from cold helpers and forward absorptions of dead ports at their current frame), in `code/build_cold_end.py` and independently in `verify.py`; see `PROOF-NOTE.md`. `code/cold_end_controls.py` and `code/hpe_audit_and_transport.py` carry the E1 review fixes plus the new controls. The rest of this README is PR604's, with paths and Result numbers updated; its construction sections describe PR604's single cold end per block. + +**Build on this at your own risk.** DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. This package awaits independent review. + +### Result + +κ = **0.001635183729255778** (conservative model 0.001635183726407116). That is **+1.300% over PR601** (0.001614202339036103) on dispatch jp8 ×60, atm3 ×12. The value comes from `ASSEMBLY.json` of the strict `verify.py` run on this package's literal owner map. The paid profile is {1:181848, 2:24770, 3:31778, 4:13728, 5:5040, 6:1008, 7:2, 8:576, 48:2150} (live 7168, deficit 2560). + +The complex side binds: + +| quantity | value | +|---|---| +| native complex lower bound | 0.001637861934441745021019 | +| bit supplier value (PR543) | 0.0016538 (`bit_lower` 0.001653826988146798944268) | +| κ with the bit cap | 0.001635183729255778 | +| κ without the bit cap | 0.001635183729255778 | + +The bit value is above the complex bound, so it does not bind, and κ is the same with or without the cap. + +### What changes relative to PR601 + +PR601 (jeremykothe2) dispatches three provider words: **ck**, **atm3** and **jp8**. In each word, 46 entering helpers per call end at a hyperplane. The mechanism comes from PR591, PR592 and PR601. The Lean side is Lemma A with an arbitrary terminal frame (PR593) and multi-gate tails (PR599). + +This package appends one typed build step, `cold_end`, to each of the three chains, after `hyperplane_end`. In every call, 14 **cold** factory-scratch helpers end at a **4-dimensional frame U_b** instead of FULL, so their residual width drops from 9 to 4. These helpers are `S b.10`, one per factory block b: registers 234, 250, …, 442. The step has three parts. + +1. **Premix.** 142 rank-0 gates at frame `[]` sit at the head of section A. For each block b, the premix swaps the dirt of `S b.0` and `S b.10`. It then fans the candidate's initial value out into `S b.1 … S b.7` with ±1 coefficients. The premix runs after the entry adapters and paid wrappers, so every gate on a cold-ended helper follows its pre-wrapper R_{0,U}^-1. The compensation reads no cold-ended helper. +2. **Lower-frame cleanup.** For each candidate h, four multi-gate tail gates run right after B at frame U_b: + - `h += −½·P_a` + - `h += P_b` + - `P_c += h` + - `P_d += h` + + Here P_a … P_d are data ports whose end-of-B frames lie in U_b. After these gates, h's row and column of the state are unit vectors. The 46 inherited hyperplane-end gates follow unchanged. +3. **Exact FULL remainder.** A dyadic Gauss–Jordan refactorisation of the rest of the inverse replaces the literal reversed-inverse cleanup. It touches no helper that ends below FULL. + +**Why the premix makes this possible.** A helper h can end at a frame U only if two things hold at the end of B, under every monotone common-frame cleanup: +- the row of h in the inverse state map is supported on registers whose frames lie in U; +- the column of h (every register carrying h's initial dirt) is supported on registers whose frames lie in U. + +The premix spreads each candidate's initial dirt over `S b.0 … S b.7`. That collapses its dirt column to three low-frame registers, which is what makes the dim-4 frame reachable. + +Effect per call and per provider: +- the paid local profile changes by {1:+28, 5:+14, 6:−28}; +- 14 helpers go from width 9 to width 4. + +The dispatch and the literal owner map are re-solved for the new widths (`data/PLAN.json`, `data/OWNERS.json.gz`). They come from an annealing search started from PR601's map (relocate, swap, ejection-chain, bin-evacuation and provider-flip moves), followed by an exact owner model that is warm-started from the annealed map and restricted to the patterns of that map and of the LP optimum. The exact model holds one helper per port per call, and its solution is expanded literally by bipartite edge colouring (Kőnig). Every inherited window, family and capacity constraint is kept, and the package's verifier re-admits the map independently. + +The approach borrows from the uncomputation literature: Bennett 1989; Gidney 2015 (borrowed dirty ancillas); Häner–Roetteler–Svore 2017. + +### Why the cold ends are legitimate + +**Labels and realisation.** PR599's `hpe_labels_multi` / `hpe_word_multi` (Lean) cover: +- any number of tail gates per helper, as target or partner; +- interleaved helpers; +- any terminal frame; +- an unrestricted entrance, so the cold case E = ⊥ is included. + +`exact_cold` reduces (N) for (⊥, U) to a monomial factorisation of T_U, which is how `canonical_frame` defines T_U. + +**(N) for every (0, U_b) pair.** This is checked exactly here. `hpe_adapters_local.py` verifies L^-1 T_U R^-1 = C_[4] ⊗ I, global phase included, for all 14 dim-4 pairs. It rejects these wrapper mutants: +- identity pre or post wrapper; +- no wrappers; +- FULL decode; +- width 9; +- wrong U; +- wrong phase. + +PR599's `cold_hyperplane_width` lemma is the dim-8 case. Here the width |U| − |E| = 4 − 0 is the |final| − |start| rule that PR591's verifier already applies at every global site. + +**The refactored cleanup is not trusted.** `hpe_audit_and_transport.py` accepts a non-literal cleanup only when the word carries `refactored_cleanup`. Such a cleanup must: +- touch only non-target registers; +- use only dyadic additions and signed binary scales; +- make the arbitrary-dirt endpoint replay of the full reordered program exact in both orientations. + +The transport also checks the row and column cone conditions above for every helper that ends below FULL. + +**Wrapper order.** Two independent checks enforce it: +- The transport rejects any zero-frame precondition or compensation gate that touches a cold-ended helper. +- The event-level replay (`hpe_audit_local.py`) requires every scalar on a wrapped helper to lie between that helper's pre and post residual adapters. A negative control that hoists a premix gate in front of the pre-wrapper must be rejected. + +### Verifier changes (inert for words without cold ends) + +- `code/hpe_audit_and_transport.py`: + - cold helpers may end at a proper subframe U (here dim 4) with `0:U` wrappers; + - the row/column cone pre-check; + - the refactored-cleanup switch; + - the zero-frame wrapper-order assertion. +- `code/hpe_emit_local.py`, `hpe_audit_local.py`, `hpe_adapters_local.py`: + - `0:U` wrappers for cold low-frame ends; + - the event-level wrapper-order check; + - 7 event-level and 7–8 recipe-level cold mutants. +- `code/audit_allcold.py`, `invoice_allcold.py`, `assemble.py`: a cold helper may end below FULL with `0:U` wrappers, and these count as wrappers. +- New step `cold_end`: + - `code/build_cold_end.py` splices the recipe data and recomputes the profile and widths from the frame chains; + - `code/cold_end_controls.py` holds 14 raw-word mutants that must be rejected, including a premix moved into the precondition. +- `code/witness.py` adds `WITNESS_RECORD`, used for discovery bookkeeping only. + +### Future optimization (results and open headroom) + +All LP figures below are first-order bounds. They come from the aggregate hosting LP (the whole-owner model on PR601's windows, objective Σ r·ln(73/r)), calibrated against exact moment-engine prices. On PR601's own dispatch and widths, the LP lies within 0.005% of PR601's literal map. + +| quantity | value | +|---|---| +| LP ceiling, fixed dispatch (PR601's ck 45 / atm3 21 / jp8 6, all cold) | ≈ +0.49% | +| LP ceiling, free dispatch over {ck, atm3, jp8} cold | ≈ +0.71% | +| this package's literal map (dispatch jp8 ×60, atm3 ×12) | +1.300% | +| remaining owner-map headroom on this dispatch (exact model's bound = LP) | ≈ 0.06 pt | + +- **Free dispatch is jp8-heavy.** The LP puts about 70 calls on jp8 and about 2 on atm3. The LP's idle remainder is pure rank-48 idle children, whereas the literal map still leaves some rank-16 and rank-32 idle children. +- **What limits jp8.** Neither the time windows nor time-refinability bind at the LP level: adding per-pattern, one-helper-per-port-per-call constraints leaves the LP optimum unchanged. The gap to the jp8-heavy ceiling is integrality and search. The first integer aggregate optimum was not refinable per port, and the literal maps found so far for jp8-heavy dispatches are worse than this package's dispatch. +- **Closing the gap.** The exact owner model used here (pattern-restricted, edge-colourable) closes about half of the fixed-dispatch gap; its bound equals the LP. The jp8-heavy dispatch needs the same integer model solved on that dispatch. +- **End dimension (first-order).** Raising a unit's end frame from dim 4 to dim d needs the last tail gate at that frame, which lifts one partner. This adds 2ψ(d−4) + ψ(9−d) − ψ(5) to the local cost per unit, where ψ(r) = r·ln(73/r). That is +6.8, +10.6, +13.0 and +14.1 for d = 5…8. The remaining hosting headroom is about 1–2 per unit, so d = 4 is the best end dimension for these units. +- **Necessary condition, for any cleanup factorisation.** A helper h can end at a frame U only if, at the end of B, the supports of its row in the inverse state map and of its dirt column both lie in Q_U, the registers whose end-of-B frames lie in U. The transport checks this condition for every low-frame end. Choosing which units satisfy it, through the premix, is the supply question. This package uses 14 units per word. Their optimality per word is not certified here. + +### Verification + +Fetch the pinned sources exactly as for PR601, then run: + +```sh +research/complex-571-cold14-b3/verify.sh /tmp/complex-571-cold14-b3 .. +# kappa 0.001635183729255778 +``` + +`verify.py` uses only the standard library and requires assertions. It runs these stages: + +1. It checks the MANIFEST and every source, PLAN, OWNERS and recipe pin. +2. It replays PR558. +3. It rebuilds the three provider words through their typed chains. That is 17 steps, each with pinned input and output content hashes and paired controls. +4. It localizes each word through the generalised native chain: + - exact scalar replay and the cone pre-check; + - both reflected ledgers; + - the independent local replay with its mutants; + - exact wrappers; + - all phase edges. +5. It runs binding and the physical owner audit with its controller mutants. +6. It runs a fresh finite invoice and both exact moment engines. +7. It runs the assembly controls, the phase-timing controls and the generated-identity controls. + +The result is conditional on the inherited assumptions listed in NOTICE.md. + +### Credits + +- **jeremykothe2**: + - PR601, PR600, PR596, PR592 and PR591: hyperplane-ended helpers, the HPE verifier, and the packages and owner maps this one starts from; + - PR593: Lean Lemma A with an arbitrary terminal frame. +- **icekylinx**: PR531 and PR535 (entrance and kernel machinery). +- **DreamingOfClouds**: + - PR509 and PR516 (the Lemma A / Lemma G Lean line); + - PR599 (multi-gate and cold hyperplane-end Lean); + - PR484. +- The pinned PR568, PR569, PR571, PR575 and PR583 packages and their authors, as listed in NOTICE.md. + +DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py new file mode 100644 index 0000000000..d1674e657f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/assemble.py @@ -0,0 +1,216 @@ +"""Hardened 63 width-seven (#571 prefix word) and 9 plain eight-cold (#568 E8) provider assembly with the native exact-complex moment. + +Prepared with OpenAI Codex assistance. The rational engines and outer +constraints are retained from PR547/PR548 and their preserved ancestry. +The bit operator is the cited unchanged PR543 supplier. The complex owner +and invoice inputs must be freshly emitted by the packaged physical replay. +All conservative admission guards and conservative moment/outer witnesses run +before the PR559 native-complex correction. The bit surcharge is retained. +""" +from pathlib import Path +from fractions import Fraction as Q +from decimal import Decimal, localcontext +import argparse,json,hashlib,importlib.util,os,sys +from collections import Counter +assert __debug__, 'Assertions required' +P=Path(sys.argv[1] if __name__=='__main__' else os.environ['GAIN_PR564_SOURCE']).resolve() +read=lambda p:json.loads(p.read_text()) +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +hash_ok=lambda x:isinstance(x,str) and len(x)==64 and all(t in '0123456789abcdef'for t in x) +digest=lambda x:hashlib.sha256(json.dumps(x,separators=(',',':')).encode()).hexdigest() +def load(n): + s=importlib.util.spec_from_file_location(n,P/'engines'/(n+'.py'));m=importlib.util.module_from_spec(s);s.loader.exec_module(m);return m +M,B,A=[load(n)for n in ('moment','base_two_moment','outer')] +def dec(x): + with localcontext()as ctx:ctx.prec=70;return str(Decimal(x.numerator)/Decimal(x.denominator)) +from witness import DISPATCH,CALL_ORDER,COUNTS,PIDS,X,DISCOVER,pin,SPOT + + +def assemble(owner,invoice,owner_sha,invoice_sha): + # These are admission receipts, not optional collections of successful rows. + # Require both orientations and every finite check before pricing anything. + assert owner['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert invoice['status']=='PASS_INDEPENDENT_MIXED_ASYNC_SCALAR_PREFIX_AND_FINITE_INVOICE' + assert all(hash_ok(x)for x in (owner_sha,invoice_sha,owner['template_sha256'],owner['controller_audit_sha256'],invoice['parent_template_sha256'])) + checks={'local_primitive_bound','logical','router','literal','mass','precision','tape','row','halving'} + assert set(invoice['strict_checks'])==checks + assert all(invoice['strict_checks'][name] is True for name in checks) + assert set(invoice['providers'])==set(PIDS) + assert invoice['provider_counts']==COUNTS + assert owner['all_live_owners_per_call_distinct'] is True + # R (helpers per provider word) is read from the invoice and must be shared by every provider; n=2v+R. + R=invoice['helpers'];assert type(R) is int and R>0 and all(p['helpers']==R for p in invoice['providers'].values()) + assert owner['owners_per_call']==2*112+R and owner['actual_helper_owner_charts']==owner['hosted_residuals']==72*R==pin('expected.hosted_residuals',owner['hosted_residuals']) + pin('expected.rank_mass',owner['rank_mass']) + pin('expected.actual_73column_sigmas',owner['actual_73column_sigmas']);pin('expected.cross_replica_helper_roles',owner['cross_replica_helper_roles']) + pin('expected.idle_remainders',owner['explicit_idle_remainder_children']) + assert invoice['complete_invocation_sweeps']==invoice['bridge_sweeps']==72 + assert invoice['live']==owner['live'] and invoice['physical']==owner['physical'] + assert invoice['centres']==8 + assert invoice['physical_stock_identity']==dict(data_and_owner_families=7168,local_helpers=R,private_centres=8,coefficient_work=2) + assert sum(invoice['physical_stock_identity'].values())==invoice['physical'] + assert invoice['controller_audit_sha256']==owner['controller_audit_sha256'] + for pid,p in invoice['providers'].items(): + assert set(p['local'])=={'forward','backward'} + assert p['helpers']==R and p['centres']==8 and p['n']==2*112+R and p['v']==112 and p['h']==9 + K='providers.'+pid+'.';pin(K+'entering',p['entering_helpers']);pin(K+'entrance',p['entrance_rank']) + pin(K+'inventory',p['width_inventory']) + assert all(type(w) is int and 0=0 for n in idle.values()) + idle=+idle;assert sum(idle.values())==owner['explicit_idle_remainder_children'] + pin('expected.idle_remainder_profile',{str(r):n for r,n in sorted(idle.items())}) + paid.update(idle) + assert dict(paid)=={int(r):n for r,n in owner['paid_profile'].items()} + assert invoice['compiler']==64*74**3 + assert invoice['local_adapters']==max(p['local_adapters']for p in invoice['providers'].values()) + assert invoice['local_primitive_bound']==max(p['local_primitive_bound']for p in invoice['providers'].values()) + # Recount the retained dedicated-bank envelope independently. Its geometry + # stays fixed, while every local primitive and wrapper comes from the actual + # selected provider/orientation sums above. + parent_live,parent_physical,parent_idle=11704,12218,16128 + parent_banks,rem=divmod(parent_live-2*112*4*8,9);assert rem==0 and parent_physical==parent_live+parent_banks+8+2 # parent R0=504 dedicated helpers per stage bank + assert owner['source_idle_children_charged']==parent_idle + bridges,shifts=2*112*72,4*112*8;moves=2*shifts + nonlocal_items=(4*112*8*9+2*112*8*9+2*72*R+parent_idle+9*parent_banks+bridges+shifts+moves+parent_live+parent_physical+invoice['wrapper_elementary_factors_charged']) + outside=8*nonlocal_items+64*73 + pervertex=(invoice['selected_real_component_primitives']+bridges+shifts+moves+parent_live+(72*invoice['local_adapters']+outside)*invoice['compiler']+64*parent_physical) + rebased=pervertex+65*(invoice['physical']-parent_physical)+(invoice['live']-parent_live) + assert invoice['unhosted_pervertex']==pervertex and invoice['hosted_rebased_pervertex']==rebased + used=max(pervertex,rebased) + prior=invoice['retained_prior_overcharge'] + if prior is not None: + assert hash_ok(prior['sha256']) and type(prior['previous_pervertex_allowance']) is int and prior['previous_pervertex_allowance']>0 + assert prior['added_complete_new_pervertex']==pervertex + assert prior['policy']=='Retain old allowance and add entire fresh mixed recount.' + used=max(used,prior['previous_pervertex_allowance']+pervertex) + assert invoice['conservative_pervertex_used']==used + finite=invoice['finite'] + assert 02*48*48) + assert actual_checks==invoice['strict_checks'] and all(actual_checks.values()) + bit_path=P/'inputs/PR543-EXPECTED.json';bit_data=bit_path.read_bytes() + assert hashlib.sha1(b'blob '+str(len(bit_data)).encode()+b'\0'+bit_data).hexdigest()=='b61d859826246e0c3dabbe096e57ad7015eadfd5' + bit=json.loads(bit_data)['nine'] + c=Q(bit['bit_lower']) + H={int(r):n for r,n in owner['paid_profile'].items()};pin('expected.global_profile',owner['paid_profile']) + # Claimed lower endpoints come from the spec; discovery derives them with the same certified moment engine. + # Either way they are verified below (accepted at b, rejected at b+1e-24). + if DISCOVER:b=Q(M.certify(H,73,owner['live'],False)['lower']);conservative_b=Q(M.certify(H,73,owner['live'],True)['lower']) + else:b=Q(X['complex_lower']);conservative_b=Q(X['conservative_complex_lower']) + assert owner['template_sha256']==invoice['template_sha256'] and owner_sha==invoice['owner_audit_sha256'] + pin('expected.live',owner['live']);pin('expected.physical',owner['physical']);assert owner['deficit']==2560 + assert owner['banked_residuals']==0 + def check_moment(side,h,m,W,lower,deficit,bad): + assert m*W-sum(r*n for r,n in h.items())==deficit and m*m>2*max(h)**2 + rows=[] + for z,accept in [(lower,True),(lower+Q(1,10**24),False)]: + l,u=M.moment(h,m,W,z,bad);ll,uu=B.moment(m,W,list(h.items()),z) + if bad: + fl,fu=B.moment(m,W,[(1,32*m*m*sum(h.values()))],z);ll+=fl/10**16;uu+=fu/10**16 + assert (u<1 and uu<1)if accept else(l>1 and ll>1) + rows.append(dict(side=side,surcharge=bad,endpoint=str(z),accept=accept,mercator=[str(l-1),str(u-1)],base_two=[str(ll-1),str(uu-1)])) + return rows + bitH={int(r):n for r,n in bit['profile'].items()} + bit_moments=check_moment('bit',bitH,64,bit['bit']['live'],c,9984,True) + conservative_moments=check_moment('conservative_complex',H,73,owner['live'],conservative_b,2560,True) + assert bit['bit']['two_level_coefficient_bits']0 + ceil=lambda x:-(-x.numerator//x.denominator);cut=max(ceil(36/gap**2),ceil(2*(4+512)/gap));assert cut*gap**2>=36 and cut*gap>=2*(4+512) + cuts.append(dict(exponent=str(a),gap=str(gap),cutoff_log2=str(cut)));chain.append(a) + q=chain[-1]*(1-2*eta);margin=(1-eta)*q/(1+q);ticks=margin*10**18;k=Q((ticks.numerator-1)//ticks.denominator,10**18) + bridge={'semantic':{'C0':{'base':2,'exponent':210000},'strict_literal_gap':1},'rows':{'degree_gap':Q(10**6)-Q(51*20161,25)}} + outer=A.assembly(chain[-1],bb,bridge,k,eta=eta,beta=beta);assert len(outer['strict_constraints'])==47 and all(v>0 for v in outer['strict_constraints'].values()) + controls=[] + for name,kk,ee,be in [('next_grid',k+Q(1,10**18),eta,beta),('zero_eta',k,Q(0),beta),('zero_beta',k,eta,Q(0)),('unit_beta',k,eta,Q(1))]: + try:A.assembly(chain[-1],bb,bridge,kk,eta=ee,beta=be) + except AssertionError:controls.append(name) + else:raise AssertionError(name) + return k,cuts,outer,controls + conservative_k,conservative_cuts,conservative_outer,conservative_controls=outer_witness(conservative_b) + pin('expected.conservative_kappa_decimal',dec(conservative_k)) + # Only after every conservative supplier/admission/outer check succeeds is + # the reviewed native exact-complex recurrence selected. Bit charge stays. + native_moments=check_moment('complex',H,73,owner['live'],b,2560,False) + k,cuts,outer,controls=outer_witness(b) + pin('expected.kappa_decimal',dec(k)) + assert M.moment(H,73,owner['live'],b,True)[0]>1 + assert M.moment(bitH,64,bit['bit']['live'],c+Q(1,10**24),False)[1]<1 + model_controls=['native_complex_endpoint_rejected_with_old_surcharge','omitting_bit_surcharge_would_fail_next_endpoint_rejection'] + moments=bit_moments+native_moments + input_hashes={'owner_audit':owner_sha,'fresh_invoice':invoice_sha,'inputs/PR543-EXPECTED.json':sha(bit_path)} + input_hashes.update({'engines/'+name+'.py':sha(P/'engines'/(name+'.py'))for name in ('moment','base_two_moment','outer')}) + return dict(status='PASS_FRESH_MIXED_048_ALLCOLD_NATIVE_EXACT_ASSEMBLY',kappa=str(k),kappa_decimal=dec(k),complex_lower=str(b),complex_decimal=dec(b),bit_lower=str(c),bit_decimal=dec(c),binding='complex',gain_over_pinned569_percent=dec(100*(k/Q(X['gain_baseline_kappa'])-1)),complex_profile=H,provider_counts=invoice['provider_counts'],surcharge_model={'complex':False,'bit':True},conservative_complex_lower=str(conservative_b),conservative_complex_decimal=dec(conservative_b),conservative_kappa=str(conservative_k),conservative_kappa_decimal=dec(conservative_k),conservative_moments=conservative_moments,conservative_bootstrap=conservative_cuts,conservative_outer={n:str(v)for n,v in conservative_outer['strict_constraints'].items()},conservative_controls=conservative_controls,model_controls=model_controls,native_correction_gain=dec(k-conservative_k),template_sha256=owner['template_sha256'],input_sha256=input_hashes,bit_supplier=dict(pr=543,repository='eumemic/integer-mult-bounds',commit='2065fe4f72a914d907f1046603f5a36f17018535',path='research/e8-bit-r420/EXPECTED.json',git_blob_sha1='b61d859826246e0c3dabbe096e57ad7015eadfd5',replay_scope='Cited unchanged supplier; this assembly reprices its full profile and does not rebuild its bit circuit.'),moments=moments,bootstrap=cuts,outer={n:str(v)for n,v in outer['strict_constraints'].items()},controls=controls,scope='Conditional native exact-complex witness after complete conservative admission, moment and outer checks; PR559 exact-cover recurrence correction only, bit bad-residue surcharge and H1-H5 retained. The frozen PR582 plain-joint-prefix, added-kernel and entrance-promoted provider dispatch with the new frame coalescences composed with cited unchanged PR543 bit supplier. All-size compiler, common-label/mutable-source realization, whole-call hosting, precision/tape and analytic transfer remain assumptions. No unconditional theorem or full Lean certification.') +if __name__=='__main__': + import sys + package,C,out=map(Path,sys.argv[1:4]);assert package.resolve()==P and not out.exists() + owner_path=C/'audit/OWNERS-AND-PROFILE.json';invoice_path=C/'audit/PREFIX-AND-INVOICE.json' + owner,invoice=read(owner_path),read(invoice_path) + assert owner['template_sha256']==read(C/'hosted/HOSTED.json')['template_sha256'] + r=assemble(owner,invoice,sha(owner_path),sha(invoice_path));out.write_text(json.dumps(r,indent=2)+'\n');print(r['status'],r['kappa_decimal']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py new file mode 100644 index 0000000000..d3f0e8c03e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/assembly_controls.py @@ -0,0 +1,251 @@ +"""Independent admission controls for the N-provider native-complex assembly (per-provider controls). + +Prepared with OpenAI Codex assistance; Apache-2.0. Mutation receipts are +rebound to their new owner digest, so unrelated stale hashes cannot conceal +an incomplete width, provider, orientation, paid-profile or finite check. +The fresh physical replay remains a separate prerequisite. +""" +import argparse +import copy +import itertools +import math +import hashlib +import json +import os +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * + +assert __debug__, 'Assertions required' +P = Path(__file__).resolve().parent +sha = lambda p: hashlib.sha256(p.read_bytes()).hexdigest() +digest = lambda x: hashlib.sha256(json.dumps(x, sort_keys=True, separators=(',', ':')).encode()).hexdigest() + + +def verify(owner_path, invoice_path, source_package): + os.environ['GAIN_PR564_SOURCE'] = str(source_package.resolve()) + from assemble import assemble + owner = json.loads(owner_path.read_text()) + invoice = json.loads(invoice_path.read_text()) + baseline = assemble(owner, invoice, sha(owner_path), sha(invoice_path)) + + def empty_maps(o, i): + i['strict_checks'] = {} + i['providers'] = {} + + def understated_stock(o, i): + o['physical'] -= 1 + i['physical'] -= 1 + i['physical_stock_identity']['coefficient_work'] -= 1 + + def changed_profile(o, i): + o['paid_profile']['1'] += 2 + o['paid_profile']['2'] -= 1 + + def wrong_orientation(o, i): + c = next(c for c in i['selected_calls'] if c['stage'] == 0) + c['orientation'] = 'backward' + p = i['providers'][c['provider_id']] + z = p['local']['backward'] + c['program_sha256'] = p['program_hashes']['backward'] + for name in ('events', 'macros', 'real_component_primitives', + 'coefficient_work_primitive_count', 'pre_wrappers', 'post_wrappers'): + c[name] = z[name] + i['selected_real_component_primitives'] = sum(c['real_component_primitives'] for c in i['selected_calls']) + i['selected_coefficient_work_primitive_count'] = sum(c['coefficient_work_primitive_count'] for c in i['selected_calls']) + + def understated_prefix(o, i): + for p in i['providers'].values(): + for z in p['local'].values(): + z['prefix_bits'], z['prefix_l1'] = 1, '1' + i['global_prefix_bits'] = 1 + 37 + 72 + 72 + 4 + + def reordered_calls(o, i): + i['selected_calls'][0], i['selected_calls'][1] = i['selected_calls'][1], i['selected_calls'][0] + + def no_cold_wrappers(o, i): + for p in i['providers'].values(): + p['entering_helpers'] -= 4 + for z in p['local'].values():z['pre_wrappers'] = z['post_wrappers'] = p['entering_helpers'] + for c in i['selected_calls']: + c['entering_helpers'] = c['pre_wrappers'] = c['post_wrappers'] = i['providers'][c['provider_id']]['entering_helpers'] + i['wrapper_elementary_factors_charged'] = sum(2*c['pre_wrappers'] for c in i['selected_calls'])*i['factors_per_wrapper'] + + controls = [ + ('empty_certification_maps', empty_maps), + ('failed_invoice_status', lambda o, i: i.__setitem__('status', 'FAIL')), + ('nonboolean_precision_check', lambda o, i: i['strict_checks'].__setitem__('precision', 'true')), + ('wrong_owner_role_count', lambda o, i: o.__setitem__('actual_helper_owner_charts', o['actual_helper_owner_charts'] - 1)), + ('understated_physical_stock', understated_stock), + ('changed_profile_same_rank_mass', changed_profile), + ('insufficient_finite_C0', lambda o, i: i['finite'].__setitem__('required_C0_bits', 210001)), + ('missing_finite_check', lambda o, i: i['strict_checks'].pop('halving')), + ('wrong_reflected_orientation_selfconsistent_totals', wrong_orientation), + ('missing_selected_call', lambda o, i: i['selected_calls'].pop()), + ('wrong_selected_primitive_sum', lambda o, i: i.__setitem__('selected_real_component_primitives', i['selected_real_component_primitives'] - 1)), + ('wrong_selected_coefficient_work_sum', lambda o, i: i.__setitem__('selected_coefficient_work_primitive_count', i['selected_coefficient_work_primitive_count'] - 1)), + ('unpaid_wrapper_factors', lambda o, i: i.__setitem__('wrapper_elementary_factors_charged', i['wrapper_elementary_factors_charged'] - 144)), + ('wrong_global_compiler', lambda o, i: i.__setitem__('compiler', 1)), + ('wrong_global_adapter_maximum', lambda o, i: i.__setitem__('local_adapters', 1)), + ('understated_exact_prefix_and_global_sum', understated_prefix), + ('wrong_global_prefix_sum', lambda o, i: i.__setitem__('global_prefix_bits', 224)), + ('wrong_row_prefix_reserve', lambda o, i: i.__setitem__('row_prefix_extra', 0)), + ('wrong_parent_geometry_charge', lambda o, i: i.__setitem__('unhosted_pervertex', 1)), + ('wrong_rebased_geometry_charge', lambda o, i: i.__setitem__('hosted_rebased_pervertex', 1)), + ('wrong_complete_pervertex_envelope', lambda o, i: i.__setitem__('conservative_pervertex_used', 1)), + ('wrong_prior_added_complete_invoice', lambda o, i: i['retained_prior_overcharge'].__setitem__('added_complete_new_pervertex', 1)), + ('wrong_finite_router_bits', lambda o, i: i['finite'].__setitem__('router_bits', 1)), + ('wrong_finite_literal_bits', lambda o, i: i['finite'].__setitem__('literal_bits', 1)), + ('wrong_finite_physical_stock_bits', lambda o, i: i['finite'].__setitem__('physical_stock_bits', 1)), + ('wrong_finite_row_coefficient', lambda o, i: i['finite'].__setitem__('physical_row_coefficient', 1)), + ('reordered_complete_calls', reordered_calls), + ('understated_explicit_idle_remainders', lambda o, i: o.__setitem__('explicit_idle_remainder_children', o['explicit_idle_remainder_children']-1)), + ('understated_actual_chart_types', lambda o, i: o.__setitem__('actual_73column_sigmas', o['actual_73column_sigmas']-1)), + ('wrong_cross_replica_role_count', lambda o, i: o.__setitem__('cross_replica_helper_roles', o['cross_replica_helper_roles']-1)), + ('old_no_cold_wrapper_counts_selfconsistent', no_cold_wrappers), + ] + + def resync(i, c): + p = i['providers'][c['provider_id']] + c['program_sha256'] = p['program_hashes'][c['orientation']] + c['entering_helpers'], c['entrance_rank'] = p['entering_helpers'], p['entrance_rank'] + for name in ('events','macros','real_component_primitives','coefficient_work_primitive_count','pre_wrappers','post_wrappers'): + c[name] = p['local'][c['orientation']][name] + + # Every provider gets the full per-provider control set, substituting a partner provider where needed. + for P in PIDS: + Qp = partner(P) + widths = invoice['providers'][P]['widths'] + + def forged_program_hash(o, i, P=P): + i['providers'][P]['program_hashes']['forward'] = '0' * 64 + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = '0' * 64 + + def wrong_selected_call(o, i, P=P): + c = next(c for c in i['selected_calls'] if c['provider_id'] == P) + d = next(d for d in i['selected_calls'] if d['provider_id'] != P and (d['stage'] - c['stage']) % 2 == 0) + c['stage'], d['stage'], c['replica'], d['replica'] = d['stage'], c['stage'], d['replica'], c['replica'] + + def stale_program(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['program_hashes'] = copy.deepcopy(i['providers'][Qp]['program_hashes']) + for c in i['selected_calls']: + if c['provider_id'] == P: + c['program_sha256'] = p['program_hashes'][c['orientation']] + + def stale_profile(o, i, P=P, Qp=Qp): + p = i['providers'][P] + p['paid_profile'] = copy.deepcopy(i['providers'][Qp]['paid_profile']) + p['children'] = sum(p['paid_profile'].values()) + + def moved(o, i, P=P): + a = next(c for c in i['selected_calls'] if c['provider_id'] == P) + b = next(c for c in i['selected_calls'] if c['provider_id'] != P and c['orientation'] == a['orientation']) + a['provider_id'], b['provider_id'] = b['provider_id'], a['provider_id'] + resync(i, a); resync(i, b) + + def compensating(o, i, P=P, Qp=Qp): + # Two dishonest profiles that cancel exactly in the dispatch-weighted aggregate. + g = math.gcd(COUNTS[P], COUNTS[Qp]); dp, dq = COUNTS[Qp] // g, COUNTS[P] // g + p, q = i['providers'][P], i['providers'][Qp] + p['paid_profile']['1'] += dp; q['paid_profile']['1'] -= dq + p['children'] += dp; q['children'] -= dq + + def forged_recipe(o, i, P=P): + name = 'CLIFFORD-RECIPES.json' + i['providers'][P]['artifacts'][name] = '0'*64 + o['source_artifacts']['providers/'+P+'/'+name] = '0'*64 + + def forged_phase(o, i, P=P): + i['providers'][P]['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] = '0'*64 + o['provider_phase_semantic_sha256'][P] = i['provider_phase_semantic_sha256'][P] = '0'*64 + + controls += [ + (P + ':missing_provider', lambda o, i, P=P: i['providers'].pop(P)), + (P + ':missing_backward_orientation', lambda o, i, P=P: i['providers'][P]['local'].pop('backward')), + (P + ':unpaid_scalar_primitive', lambda o, i, P=P: i['providers'][P]['local']['forward'].__setitem__('real_component_primitives', i['providers'][P]['local']['forward']['real_component_primitives'] - 1)), + (P + ':wrong_local_artifact_binding', lambda o, i, P=P: i['providers'][P]['artifacts'].__setitem__('LOCAL-PROGRAMS.json.gz', '0' * 64)), + (P + ':false_dirty_restoration', lambda o, i, P=P: i['providers'][P]['local']['backward'].__setitem__('all_dirty_helper_columns_restored', False)), + (P + ':wrong_declared_provider_count', lambda o, i, P=P: i['provider_counts'].__setitem__(P, i['provider_counts'][P] + 1)), + (P + ':wrong_local_compiler', lambda o, i, P=P: i['providers'][P].__setitem__('compiler', 1)), + (P + ':wrong_local_adapter_charge', lambda o, i, P=P: i['providers'][P].__setitem__('local_adapters', 1)), + (P + ':wrong_local_primitive_bound', lambda o, i, P=P: i['providers'][P].__setitem__('local_primitive_bound', 1)), + (P + ':forged_provider_and_call_program_hash', forged_program_hash), + (P + ':provider_at_wrong_call', wrong_selected_call), + (P + ':stale_partner_program_consistent_call_hashes', stale_program), + (P + ':stale_partner_profile_consistent_child_total', stale_profile), + (P + ':relocated_against_partner_same_counts', moved), + (P + ':compensating_false_profiles_with_' + Qp, compensating), + (P + ':synchronized_forged_source_recipe_hash', forged_recipe), + (P + ':synchronized_forged_phase_review_semantics', forged_phase), + ] + # Width order and inventory: swap the first helper of every pair of distinct widths (same inventory), + # and shift one unit between them (same total). + first = {} + for h, w in enumerate(widths): + first.setdefault(w, h) + for wa, wb in itertools.combinations(sorted(first), 2): + def swap(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a], w[b] = w[b], w[a] + def shift(o, i, P=P, a=first[wa], b=first[wb]): + w = i['providers'][P]['widths']; w[a] += 1; w[b] -= 1 + controls.append((P + ':width_order_swap_%d_%d' % (wa, wb), swap)) + controls.append((P + ':width_inventory_shift_%d_%d' % (wa, wb), shift)) + for h in SPOT: + def cold_swap(o, i, P=P, h=h): + w = i['providers'][P]['widths']; j = w.index(9); w[h], w[j] = w[j], w[h] + controls.append((P + ':cold_helper_width_swap_%d' % h, cold_swap)) + rejected = [] + accepted = [] + for name, mutate in controls: + o, i = copy.deepcopy(owner), copy.deepcopy(invoice) + mutate(o, i) + oh = digest(o) + i['owner_audit_sha256'] = oh + try: + assemble(o, i, oh, digest(i)) + except (AssertionError, KeyError): + rejected.append(name) + else: + # Discovery has no pinned values to reject spec-only mutations; the strict run must reject every control. + if not DISCOVER: + raise AssertionError('Invalid admission receipt accepted: ' + name) + accepted.append(name) + try: + assemble(owner, invoice, '0' * 64, sha(invoice_path)) + except AssertionError: + rejected.append('wrong_owner_receipt_hash') + else: + raise AssertionError('Wrong owner digest accepted') + pin('expected.assembly_controls_rejected', len(rejected)) + assert baseline['controls'] == ['next_grid', 'zero_eta', 'zero_beta', 'unit_beta'] + assert baseline['conservative_controls'] == baseline['controls'] + assert baseline['surcharge_model'] == {'complex': False, 'bit': True} + assert len(baseline['model_controls']) == 2 + return dict( + status='PASS_EXACT_MIXED_048_ALLCOLD_NATIVE_ASSEMBLY_ADMISSION_NEGATIVE_CONTROLS', + valid_receipt_kappa=baseline['kappa'], + input_sha256=baseline['input_sha256'], + assembler_sha256=sha(Path(__file__).resolve().parent / 'assemble.py'), + rejected_controls=rejected, + discovery_accepted_controls=accepted, + exact_outer_controls=baseline['controls'], + conservative_outer_controls=baseline['conservative_controls'], + recurrence_model_controls=baseline['model_controls'], + scope='Complete receipt schema; ordered widths and both reflected providers; exact program, work and paid-profile binding; independently recounted compiler, conservative envelope and finite inequalities. Does not replace fresh physical replay.', + ) + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(description=__doc__) + ap.add_argument('--source-package', type=Path, required=True) + ap.add_argument('--owner', type=Path, required=True) + ap.add_argument('--invoice', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + assert not a.out.exists() + result = verify(a.owner, a.invoice, a.source_package) + a.out.write_text(json.dumps(result, indent=2) + '\n') + print(result['status'], len(result['rejected_controls'])) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py new file mode 100644 index 0000000000..e29d90e89a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/audit_allcold.py @@ -0,0 +1,232 @@ +"""OpenAI Codex independent serialized ASYNCHRONOUS controller/spectator audit. +Imports no emitter, optimizer, expander, edge-coloring, or source hosting code. +CLI: BASE HOSTED REPORT [--mutation-controls] +Each provider is independently read from BASE/providers, never from a baseline width histogram. +OpenAI Codex two-provider width-seven extension; retains all inherited independent controller checks. +The exact 63 width-seven and 9 plain calls are frozen below. +""" +import sys,json,gzip,hashlib,copy +assert __debug__, 'Assertions must remain enabled' +from pathlib import Path +from collections import Counter,defaultdict +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +BASE,OUT,REPORT=map(lambda p:Path(p).resolve(),sys.argv[1:4]);read=lambda p:json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +parent=read(BASE/'split-centres/GLOBAL-TEMPLATE.json.gz') +ph=read(BASE/'work/complex-nine-native/DATA-PHASES.json') +ct=read(OUT/'GLOBAL-TEMPLATE.json.gz');summary=read(OUT/'HOSTED.json') +sha=lambda p:hashlib.sha256(p.read_bytes()).hexdigest() +provider_ids=PIDS +providers={};registry={};phase_semantic_hashes={};artifact_semantic_hashes={} +required_artifacts={'work/complex-nine-native/DATA-PHASES.json'} +provider_files=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json') +for pid in provider_ids: + p=BASE/'providers'/pid + c=read(p/'CANONICAL-WORD.json.gz');checks=read(p/'LOCAL-CHECKS.json') + programs=read(p/'LOCAL-PROGRAMS.json.gz');replay=read(p/'INDEPENDENT-LOCAL-REPLAY.json') + phase=read(p/'CLIFFORD-REVIEW.json');adapters=read(p/'RESIDUAL-ADAPTERS.json')['recipes'] + widths=[len(c['frames'][c['final'][2*c['v']+h]])-len(c['frames'][c['start'][2*c['v']+h]])for h in range(c['R'])] # HPE: residual width |final|-|start| + assert all(widths[h]==8 for h in SPOT);pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + canonical_sha=sha(p/'CANONICAL-WORD.json.gz');programs_sha=sha(p/'LOCAL-PROGRAMS.json.gz') + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==canonical_sha and replay['local_programs_sha256']==programs_sha + assert replay['v']==c['v'] and replay['helpers']==c['R'] + assert set(programs)==set(checks)==set(replay['local'])==set(replay['paid_profiles'])=={'forward','backward'} + for orientation,events in programs.items(): + ck=checks[orientation];rr=replay['local'][orientation] + assert hashlib.sha256(json.dumps(events,sort_keys=True,separators=(',',':')).encode()).hexdigest()==ck['sha256'] + assert ck['events']==len(events) and ck['all_columns']==2*c['v']+c['R'] + assert ck['private_centers_cleared'] and ck['private_coefficient_stream_cleared_after_each_macro'] + assert rr['all_exact_columns']==2*c['v']+c['R'] and rr['private_work_erased'] + literal=Counter(e[-1]for e in events if e[0]in('climb','center')) + assert dict(literal)=={int(r):n for r,n in ck['paid_profile'].items()}=={int(r):n for r,n in c['local_profile'].items()} + assert ck['paid_profile']==replay['paid_profiles'][orientation] + assert phase['canonical_word_sha256']==canonical_sha and phase['recipe_sha256']==sha(p/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] + artifact_semantic_hashes[pid]=artifact_identities(p) + pin('providers.%s.artifact_semantic_sha256'%pid,artifact_semantic_hashes[pid]) + phase_semantic_hashes[pid]=artifact_semantic_hashes[pid]['CLIFFORD-REVIEW.json'] + for h,w in enumerate(widths): + assert 0>i)&1==0);a=q^(1<>i&1 else 0)for i in order]+[1<2*max(paid)**2 + return dict(profile=dict(sorted(paid.items())),mass=mass,hosted=HOSTED,entering=entering,cross_replica=cross,sigma_digest=digest.hexdigest(),sigmas=sigmas,idle_remainders=len(wanted),busy_family_checks=len(roles),invocations=72) + +r=audit(ct);raw=gzip.decompress((OUT/'GLOBAL-TEMPLATE.json.gz').read_bytes());assert hashlib.sha256(raw).hexdigest()==summary['template_sha256'];assert r['profile']=={int(k):v for k,v in summary['global_profile'].items()};assert r['sigmas']==read(OUT/'ACTUAL-SIGMAS.json.gz');assert r['sigma_digest']==summary['sigma_stream_sha256'] +assert all(hashlib.sha256((BASE/name).read_bytes()).hexdigest()==value for name,value in summary['source_artifacts'].items()) +controls=[] +def reject(name,mut): + if '--mutation-controls' not in sys.argv[4:]:return + q=copy.deepcopy(ct);mut(q) + try:audit(q) + except(AssertionError,KeyError,IndexError,ValueError,TypeError):controls.append(name) + else:raise AssertionError('ACCEPTED '+name) +enter=lambda q:next(o for c in q['calls']for o in c['owners'][(2*V):]if o[1][0]==4) +reject('alias two whole owners',lambda q:q['calls'][0]['owners'].__setitem__((2*V+1),q['calls'][0]['owners'][(2*V)])) +reject('helper on active data family',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,q['calls'][0]['owners'][0][0])) +reject('owner in private namespace',lambda q:q['calls'][0]['owners'][(2*V)].__setitem__(0,DATA)) +reject('wrong residual width',lambda q:enter(q)[1].__setitem__(3,enter(q)[1][3]-1)) +reject('wrong spectator coordinate',lambda q:enter(q)[1][4].__setitem__(0,72)) +reject('omit idle remainder',lambda q:q['idle_children'].pop()) +reject('understate physical reserve',lambda q:q.__setitem__('physical',PHYSICAL-1)) +# Per-provider substitution controls: every provider is swapped against a partner provider. +for P in provider_ids: + Qp=partner(P) + at_p=lambda q,P=P:next(c for c in q['calls']if c['provider_id']==P) + diff=[h for h in range(R)if providers[P]['widths'][h]!=providers[Qp]['widths'][h]] + narrow=next(h for h in range(R)if providers[P]['widths'][h]<9) + reject(P+': wrong provider at its invocation',lambda q,P=P,Qp=Qp,at_p=at_p:at_p(q).__setitem__('provider_id',Qp)) + reject(P+': stale per-call local program hash',lambda q,Qp=Qp,at_p=at_p:at_p(q).__setitem__('local_program_sha256',registry[Qp]['local_program_checks'][at_p(q)['orientation']]['sha256'])) + reject(P+': stale serialized provider program',lambda q,P=P,Qp=Qp:q['local_providers'][P].__setitem__('local_programs',registry[Qp]['local_programs'])) + reject(P+': unbound residual adapter hash',lambda q,P=P:q['local_providers'][P].__setitem__('residual_adapter_sha256','0'*64)) + if diff:reject(P+': partner width in provider width registry',lambda q,P=P,Qp=Qp,h=diff[0]:q['local_providers'][P]['widths'].__setitem__(h,providers[Qp]['widths'][h])) + reject(P+': wrong per-call residual width',lambda q,at_p=at_p,h=narrow:at_p(q)['owners'][2*V+h][1].__setitem__(3,at_p(q)['owners'][2*V+h][1][3]-1)) + reject(P+': wrong sweep provider',lambda q,P=P,Qp=Qp:next(e for e in q['execution_schedule']if e['kind']=='local_cover_sweep'and DISPATCH[e['stage'],e['replica']]==P).__setitem__('provider_id',Qp)) + reject(P+': entering helper width silently restored to nine',lambda q,P=P,h=narrow:q['local_providers'][P]['widths'].__setitem__(h,9)) +report=dict(status='PASS_INDEPENDENT_ASYNC_WHOLE_OWNER_CONTROLLER_PHASES_AND_SPECTATORS',template_sha256=summary['template_sha256'],complex_template_sha256=summary['template_sha256'],complex_live=DATA,complex_profile=r['profile'],complex_hosted_residuals=HOSTED,physical=PHYSICAL,rank_mass=r['mass'],deficit=2560,entering_helper_roles=r['entering'],cross_replica_helper_roles=r['cross_replica'],one_owner_per_complete_invocation=True,helper_busy_family_window_checks=r['busy_family_checks'],complete_invocations=r['invocations'],actual_orthogonal_73column_maps=len(r['sigmas']),actual_sigma_stream_sha256=r['sigma_digest'],all_actual_residual_and_spectator_charts=True,idle_remainders=r['idle_remainders'],mutations_rejected=controls,mutation_controls_run='--mutation-controls' in sys.argv[4:],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,widths_by_provider={pid:dict(sorted(Counter(providers[pid]['widths']).items()))for pid in provider_ids},provider_counts=dict(Counter(c['provider_id']for c in ct['calls'])),all_provider_program_phase_and_wrapper_bindings=True,scope='Independent exact asynchronous chronology, per-replica phase projection, owner/chart/paid-profile audit. Uses per-invocation local providers bound by exact scalar, phase and residual-wrapper receipts; all-size compilation and complete coefficient invoice are separate inherited obligations.') +REPORT.parent.mkdir(parents=True,exist_ok=True) +REPORT.write_text(json.dumps(report,indent=2)+'\n');print(json.dumps(report,indent=2)) + +owners=dict(status='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE',template_sha256=summary['template_sha256'],paid_profile=r['profile'],live=DATA,physical=PHYSICAL,rank_mass=r['mass'],deficit=2560,hosted_residuals=HOSTED,banked_residuals=0,all_live_owners_per_call_distinct=True,owners_per_call=N,actual_helper_owner_charts=HOSTED,actual_73column_sigmas=len(r['sigmas']),cross_replica_helper_roles=r['cross_replica'],explicit_idle_remainder_children=r['idle_remainders'],source_idle_children_charged=sum(x['replicas']for x in parent['idle_children']),source_artifacts=summary['source_artifacts'],provider_phase_semantic_sha256=phase_semantic_hashes,provider_artifact_semantic_sha256=artifact_semantic_hashes,controller_audit_sha256=hashlib.sha256(REPORT.read_bytes()).hexdigest()) +(REPORT.parent/'OWNERS-AND-PROFILE.json').write_text(json.dumps(owners,indent=2)+'\n') + +# Literal residual frames are a compact export of the already checked offsets, +# not another global replay. Every row names its actual inherited axes. +frames=[] +for z in ct['idle_children']: + axes=list(map(int,ph['recipes'][z['port']]['idle_children'][z['child']]['orthogonal_axes'])) + tail=axes[z['pending_offset']:] + assert len(tail)==z['rank'] + frames.append(dict(z,orthogonal_axes=tail)) +frame_raw=json.dumps(frames,sort_keys=True,separators=(',',':')).encode() +portable=bytearray(gzip.compress(frame_raw,mtime=0));portable[9]=255 +(OUT/'IDLE-REMAINDER-FRAMES.json.gz').write_bytes(bytes(portable)) +frame_receipt=dict(status='PASS_LITERAL_IDLE_REMAINDER_FRAMES',template_sha256=summary['template_sha256'], + uncompressed_frames_sha256=hashlib.sha256(frame_raw).hexdigest(),children=len(frames), + rank_profile=dict(sorted(Counter(z['rank']for z in frames).items())), + source_data_phase_sha256=hashlib.sha256((BASE/'work/complex-nine-native/DATA-PHASES.json').read_bytes()).hexdigest(), + scope='Actual orthogonal axes after the independently checked whole-owner prefix in each inherited pending child.') +(REPORT.parent/'IDLE-REMAINDER-FRAMES.json').write_text(json.dumps(frame_receipt,indent=2)+'\n') + diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py new file mode 100644 index 0000000000..e758a0679a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/bind_providers_portable.py @@ -0,0 +1,67 @@ +"""Bind freshly verified plain and width-seven four-cold providers to the frozen literal owner plan. +Prepared with OpenAI Codex assistance; Apache-2.0. All byte-stable native +files are pinned to the plan. Only validated phase-receipt timing/serialization +and directory fields are rebound; no dispatch, width or owner choice changes. +""" +import argparse,copy,gzip,hashlib,json,shutil +from collections import Counter +from pathlib import Path +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +assert __debug__, 'Assertions required' +ap=argparse.ArgumentParser(description=__doc__) +for name in ('baseline','plan','out'):ap.add_argument('--'+name,type=Path,required=True) +ap.add_argument('--provider',action='append',required=True,help='PID=DIR');a=ap.parse_args();assert not a.out.exists();a.out.mkdir(parents=True) +def read(p):return json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +base=a.out/'base';shutil.copytree(a.baseline/'complex-global/base',base) +ap2=dict(x.split('=',1)for x in a.provider);dirs={k:Path(v)for k,v in ap2.items()};assert set(dirs)==set(PIDS) +for pid,src in dirs.items():shutil.copytree(src,base/'providers'/pid) +pin('data.plan_sha256',sha(a.plan)) +plan=read(a.plan);original=copy.deepcopy(plan);sources={};helpers=set() # R: helper count per provider word; all providers must agree +assert set(plan['provider_registry'])==set(dirs) +assert {(c['stage'],c['replica']):c['provider']for c in plan['provider_calls']}==DISPATCH,'PLAN dispatch differs from spec dispatch' +stable=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json') +for pid,desc in plan['provider_registry'].items(): + d=base/'providers'/pid + word,program,checks,native,phase=[read(d/name)for name in('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-REVIEW.json')] + assert (word['v'],word['h'],len(word['centers']))==(112,9,8) and type(word['R']) is int and word['R']>0;helpers.add(word['R']) + assert word['ports']==desc['ports'] and word['centers']==desc['centers'] + widths=[len(word['frames'][word['final'][r]])-len(word['frames'][word['start'][r]])for r in range(2*112,2*112+word['R'])] # HPE: residual width |final|-|start| + assert all(widths[h]==8 for h in SPOT) + assert widths==desc['widths'];pin('providers.%s.inventory'%pid,{str(k):v for k,v in sorted(Counter(widths).items())}) + assert native['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + pin('providers.%s.native_negative_controls'%pid,len(native['negative_controls_rejected'])) + assert native['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and native['local_programs_sha256']==sha(d/'LOCAL-PROGRAMS.json.gz') + assert phase['status']=='PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES' + assert phase['canonical_word_sha256']==sha(d/'CANONICAL-WORD.json.gz') and phase['recipe_sha256']==sha(d/'CLIFFORD-RECIPES.json') + assert phase['all_child_equalities_include_global_phase'] is True and phase['endpoint_adapters']==224 + pin('providers.%s.phase_edges'%pid,phase['directed_edges']) + assert set(program)==set(checks)=={'forward','backward'} + expected={int(r):n for r,n in checks['forward']['paid_profile'].items()};pin('providers.%s.expected_profile'%pid,checks['forward']['paid_profile']) + for orientation,events in program.items(): + profile=Counter() + for e in events: + if e[0]=='climb':profile[e[5]]+=1 + elif e[0]=='center':profile[e[4]]+=1 + assert dict(profile)==expected=={int(r):n for r,n in checks[orientation]['paid_profile'].items()}=={int(r):n for r,n in native['paid_profiles'][orientation].items()} + assert hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest()==checks[orientation]['sha256'] + identities=artifact_identities(d) + pin('providers.%s.artifact_semantic_sha256'%pid,identities) + assert identities==desc['artifact_semantic_sha256'] + for name in ('LOCAL-CHECKS.json','CLIFFORD-RECIPES.json','RESIDUAL-ADAPTERS.json'): + assert sha(d/name)==desc['artifact_sha256'][name],(pid,name,'changed non-reference artifact') + for c in plan['provider_calls']: + if c['provider']==pid: + assert c['orientation']==('forward'if c['stage']%2==0 else'backward') + assert c['local_program_sha256']==checks[c['orientation']]['sha256'] + desc['directory']='providers/'+pid + desc['artifact_sha256']={name:sha(d/name)for name in desc['artifact_sha256']} + sources[pid]=dict(artifact_sha256=desc['artifact_sha256'],canonical_content_sha256=hashlib.sha256(json.dumps(word,sort_keys=True,separators=(',',':')).encode()).hexdigest(),all_phase_edges=phase['directed_edges']) +assert len(helpers)==1,'providers disagree on helper count R: %s'%sorted(helpers) +plan['runtime_source_plan_sha256']=sha(a.plan) +(a.out/'PLAN.json').write_text(json.dumps(plan,indent=2)+'\n') +receipt=dict(status='PASS_FROZEN_048_ALLCOLD_DISPATCH_FRESH_PROVIDER_BINDING',source_plan_sha256=sha(a.plan),runtime_plan_sha256=sha(a.out/'PLAN.json'),providers=sources,only_rebound_fields=['provider_registry.directory','provider_registry.artifact_sha256','runtime_source_plan_sha256']) +(a.out/'BINDING.json').write_text(json.dumps(receipt,indent=2)+'\n') +print(receipt['status']) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py new file mode 100644 index 0000000000..b39d7a6771 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_cold_end.py @@ -0,0 +1,160 @@ +"""Cold low-frame-ended helpers with a refactored exact cleanup: constructor. Apache-2.0. +DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. + +usage: build_cold_end.py --input FULL-WORD.json.gz --recipe RECIPE.json.gz --out DIR + +The input is a hyperplane-ended (HPE) provider word. RECIPE (all data, no code): + premix rank-0 gates on helpers at their start frame (frame [] for cold helpers, E for entering ones); they become the + head of section A, i.e. they run after the entry + adapters and paid wrappers, so every gate on a cold-ended helper follows its wrapper R_{0,U}^-1; + cleanup the complete new cleanup gate list (an exact refactorisation of the inverse, not the literal one); + early_cleanup [[cleanup index, frame], ...]: gates run right after B at the given frame (the multi-gate tail); + cold_ends {helper: frame}: cold helpers (no entrance) that end at that frame instead of FULL; + entering_ends optional {helper: frame}: further entering helpers ending below FULL under the same refactored cleanup; + refactored_cleanup descriptive metadata copied into the word (it also switches the transport audit from the literal + cleanup assertion to exact replay of the refactored one); + output_content_sha256. +The constructor only splices. It checks the recipe's shape (premix on cold helpers at frame [], cold ends on cold +helpers, every inherited hyperplane-end gate and terminal frame kept) and recomputes the paid local profile and the +descriptive width inventory from the actual frame chains. Exactness of the scalar program, all frame chains, the cone +pre-check, the wrapper order and the profile are re-checked independently by hpe_audit_and_transport.py; the paired +raw-word mutation audit is cold_end_controls.py.""" +import argparse, gzip, hashlib, json +from collections import Counter +from pathlib import Path + + +def span(vs): + p = {} + for x in vs: + for k in sorted(p, reverse=True): + if x >> k & 1: x ^= p[k] + if x: + k = x.bit_length() - 1 + for j in p: + if p[j] >> k & 1: p[j] ^= x + p[k] = x + return tuple(p[k] for k in sorted(p, reverse=True)) + + +def regs(e): return [e[1]] + ([e[2]] if e[0] == 'add' else []) + + +def chain_profile(w): + """Paid climbs of the A, B, tail and final chains (centre descents are unchanged by this step and not counted).""" + v, R = w['report']['v'], w['report']['R']; n = 2*v + R + cur = [() for _ in range(n)] + for i, p in enumerate(w['ports']): cur[i] = span([p]) + for r, f in w.get('start_extra', {}).items(): cur[int(r)] = span(f) + prof = Counter() + + def climb(r, F): + assert span(list(cur[r]) + list(F)) == F, ('nonmonotone', r) + if len(F) > len(cur[r]): prof[len(F) - len(cur[r])] += 1 + cur[r] = F + for part in ('A', 'B'): + for e in w[part]: + for r in regs(e): climb(r, span(e[-1])) + for i, f in w.get('early_cleanup', []): + for r in regs(w['cleanup'][i]): climb(r, span(f)) + full = span([1 << i for i in range(9)]) + final = {int(r): span(f) for r, f in w.get('helper_final', {}).items()} + for r in range(n): + if v <= r < 2*v: continue # targets end at their port level; unchanged by this step (same A/B chains) + climb(r, final.get(r, full)) + return prof, cur + + +def apply(w, r): + assert 'helper_final' in w and 'early_cleanup' in w and 'refactored_cleanup' not in w, 'input must be an HPE word' + v, R = w['report']['v'], w['report']['R']; n = 2*v + R + entering = set(map(int, w['start_extra'])) + cold = {x for x in range(2*v, n) if x not in entering} + start = lambda x: span(w['start_extra'].get(str(x), [])) + for e in r['premix']: # rank 0: every register is a helper still at its start frame (cold: [], entering: E) = the gate frame + if e[0] == 'add' and v <= e[1] < 2*v: + # TARGET WRITE (explicit post-wrapper compensation): target += q * cold helper, both at frame [] (targets start at + # level 0 = frame []); it only writes the target, so no non-target register ever reads a target. + assert 2*v <= e[2] < n and e[2] in cold and span(e[-1]) == (), ('premix target write not rank-0 from a cold helper', e) + continue + assert e[0] in ('add', 'scale') and all(2*v <= x < n and start(x) == span(e[-1]) for x in regs(e)), ('premix gate not rank-0 on helpers at their start frame', e) + # FORWARD ABSORPTIONS (optional): [[t, gate], ...] = 'add' q += a*g inserted into A right after input-A gate t; gates + # sharing t run in recipe order. q must be DEAD from then on (no later INPUT forward gate + # touches it; later absorptions may write or read it, which only feeds other dead registers), so every input gate + # sees exactly its old operands and every live register's forward value is unchanged; both q and g must already sit + # at the gate frame (no climb: the frame chains and the paid profile of the input are unchanged). + absorb = [(int(t), list(e)) for t, e in r.get('forward_insertions', [])] + A = [list(e) for e in w['A']] + if absorb: + nA, nC, nB = len(w['A']), len(w['cut']), len(w['B']) + assert all(0 <= t < nA for t, _ in absorb), 'absorption point' + assert [t for t, _ in absorb] == sorted(t for t, _ in absorb), 'absorptions not in forward order' + after = {} + for t, e in absorb: + assert e[0] == 'add' and e[1] != e[2] and not (v <= e[1] < 2*v) and not (v <= e[2] < 2*v), ('absorption shape', e) + after.setdefault(t, []).append(e) + inp = [('A', e) for e in w['A']] + [('C', e) for e in w['cut']] + [('B', e) for e in w['B']] + cur = [() for _ in range(n)] + for i, p in enumerate(w['ports']): cur[i] = span([p]) + for x, f in w.get('start_extra', {}).items(): cur[int(x)] = span(f) + touched_later = [set() for _ in range(len(inp) + 1)] # registers touched by input gates after index t + for t in range(len(inp) - 1, -1, -1): + touched_later[t] = touched_later[t + 1] | set(regs(inp[t][1])) + for t, (sec, f) in enumerate(inp): + if sec != 'C': + for x in regs(f): cur[x] = span(f[-1]) + for e in after.get(t, []): + assert e[1] not in touched_later[t + 1], ('absorption into a live register', e) + assert cur[e[1]] == span(e[-1]) and cur[e[2]] == span(e[-1]), ('absorption frame is not both registers\' frame', e) + A = [] + for t, e in enumerate(w['A']): A.append(list(e)); A += after.get(t, []) + ends = {int(h): f for h, f in r['cold_ends'].items()} + assert ends and all(h in cold and str(h) not in w['helper_final'] for h in ends), 'cold ends must be new cold helpers' + eends = {int(h): f for h, f in r.get('entering_ends', {}).items()} # optional: further ENTERING helpers ending below FULL + assert all(h in entering and str(h) not in w['helper_final'] for h in eends), 'entering ends must be new entering helpers' + assert all(len(span(f)) < 9 for f in list(ends.values()) + list(eends.values())) + new_early = [(i, f) for i, f in r['early_cleanup']] + kept = {(json.dumps(r['cleanup'][i][:-1]), json.dumps(f)) for i, f in new_early} + for i, f in w['early_cleanup']: # every inherited hyperplane-end gate stays in the tail at its frame + assert (json.dumps(w['cleanup'][i][:-1]), json.dumps(f)) in kept, ('inherited HPE gate missing', i) + old_prof, _ = chain_profile(w) + out = dict(w) + out['A'] = [list(e) for e in r['premix']] + A + out['cleanup'] = r['cleanup'] + out['early_cleanup'] = [[i, f] for i, f in new_early] + out['helper_final'] = dict(w['helper_final'], **{str(h): f for h, f in sorted({**ends, **eends}.items())}) + out['refactored_cleanup'] = r['refactored_cleanup'] + new_prof, cur = chain_profile(out) + assert all(cur[h] == span(f) for h, f in {**ends, **eends}.items()), 'end frame is not the last frame of the helper' + lp = Counter({int(k): c for k, c in w['report']['local_profile'].items()}) + lp.subtract(old_prof); lp.update(new_prof) + assert min(lp.values()) >= 0 + rep = dict(w['report']) + rep['local_profile'] = {str(k): c for k, c in sorted(lp.items()) if c} + rep['local_rank_mass'] = sum(k*c for k, c in lp.items()) + inv = Counter({int(k): c for k, c in w['report']['width_inventory'].items()}) + for h, f in ends.items(): inv[9] -= 1; inv[len(span(f))] += 1 # cold: width = |U| - 0 + for h, f in eends.items(): # entering: width = |U| - |E| + e = len(span(w['start_extra'][str(h)])); inv[9 - e] -= 1; inv[len(span(f)) - e] += 1 + assert min(inv.values()) >= 0 + rep['width_inventory'] = {str(k): c for k, c in sorted(inv.items()) if c} + out['report'] = rep + return out + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(); ap.add_argument('--input', type=Path, required=True); ap.add_argument('--recipe', type=Path, required=True) + ap.add_argument('--out', type=Path, required=True) + a = ap.parse_args() + rd = lambda p: json.loads(gzip.decompress(p.read_bytes()) if p.suffix == '.gz' else p.read_bytes()) + w, r = rd(a.input), rd(a.recipe) + w = apply(w, r) + raw = json.dumps(w, sort_keys=True, separators=(',', ':')).encode(); h = hashlib.sha256(raw).hexdigest() + assert h == r['output_content_sha256'], h + a.out.mkdir(parents=True, exist_ok=False) + (a.out/'FULL-WORD.json.gz').write_bytes(gzip.compress(raw, mtime=0)) + (a.out/'COLD-END-CONSTRUCTION.json').write_text(json.dumps(dict(status='PASS_COLD_LOW_FRAME_ENDS_SPLICED', + cold_ended_helpers=sorted(int(x) for x in r['cold_ends']), terminal_dims=sorted(Counter(len(span(f)) for f in r['cold_ends'].values()).items()), + premix_gates=len(r['premix']), early_cleanup_gates=len(r['early_cleanup']), cleanup_gates=len(r['cleanup']), + local_profile=w['report']['local_profile'], width_inventory=w['report']['width_inventory']), indent=1) + '\n', newline='\n') + print('PASS', len(r['cold_ends']), 'cold low-frame-ended helpers;', len(r['premix']), 'premix gates;', len(r['cleanup']), 'cleanup gates') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py new file mode 100644 index 0000000000..c5321f5671 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_frame_regroup.py @@ -0,0 +1,53 @@ +"""Apply recipe-bound gate frame changes; the scalar operations stay identical. Apache-2.0. +Extends PR583's build_frames.py (chafreaky, OpenAI Codex assisted) with changes of any profile delta, prepared with +Claude Code assistance. + +Recipe: input_content_sha256, before/after profiles, and changes [{section, index, before, after, delta}]. Each change +keeps the gate's scalar operation and replaces only its frame. Its exact sequential profile delta must equal the +recipe's `delta`, and the frame chains must stay monotone (gk_word.profile asserts this). The cleanup must already +follow the inherited inverse rule, which only uses FULL frames, so frame changes on A and B leave it unchanged. +Helper widths and all initial helper responses must be unchanged. + +Negative controls: +* each omitted change must lose the recipe profile; +* each change replaced by the FULL frame must violate a chain or cut bound.""" +from pathlib import Path +from collections import Counter +import argparse, copy, gzip, hashlib, json, sys +assert __debug__, 'Assertions required' +ap = argparse.ArgumentParser() +for k in ('--input', '--recipe', '--gk-dir', '--out'): ap.add_argument(k, type=Path, required=True) +a = ap.parse_args(); assert not a.out.exists() +sys.path.insert(0, str(a.gk_dir)); import gk_word as G, gk_common as C +G.V = C.V = 112; G.DATA = C.DATA = 7168 +raw = json.loads(gzip.decompress(a.input.read_bytes())); recipe = json.loads(a.recipe.read_text()) +enc = lambda x: json.dumps(x, sort_keys=True, separators=(',', ':')).encode(); sha = lambda x: hashlib.sha256(x).hexdigest() +assert sha(enc(raw)) == recipe['input_content_sha256']; before = G.profile(raw); assert dict(before) == {int(r): n for r, n in recipe['before'].items()} +assert raw['cleanup'] == [G.inverse(e, G.FULL) for e in reversed(raw['A'] + raw['B']) if not 112 <= e[1] < 224], 'input cleanup is not the inherited inverse rule' +assert len({(c['section'], c['index']) for c in recipe['changes']}) == len(recipe['changes']) and recipe['changes'] +w = copy.deepcopy(raw); trace = [] +for c in recipe['changes']: + part, i = c['section'], c['index']; assert part in ('A', 'B') and w[part][i] == c['before'] and c['before'][:-1] == c['after'][:-1] and c['before'][-1] != c['after'][-1] + w[part][i] = c['after']; after = G.profile(w) + delta = {r: after[r] - before[r] for r in set(after) | set(before) if after[r] != before[r]} + assert delta == {int(r): n for r, n in c['delta'].items()}, ('delta', part, i, delta); trace.append(dict(section=part, index=i, delta=delta)); before = after +assert dict(G.profile(w)) == {int(r): n for r, n in recipe['after'].items()} +for k in raw: + if k not in ('A', 'B', 'report'): assert w[k] == raw[k] +for part in ('A', 'B'): assert [e[:-1] for e in w[part]] == [e[:-1] for e in raw[part]] +assert G.widths_of(w) == G.widths_of(raw); responses = G.responses(w); assert responses == G.responses(raw) +assert all(not responses[int(r) - 224] for r in w['start_extra']) +rejected = [] +for c in recipe['changes']: + z = copy.deepcopy(w); z[c['section']][c['index']] = c['before']; assert G.profile(z) != G.profile(w); rejected.append('omission-%s-%d' % (c['section'], c['index'])) + z = copy.deepcopy(w); z[c['section']][c['index']][-1] = list(G.FULL) + try: G.profile(z) + except AssertionError: rejected.append('overpromotion-%s-%d' % (c['section'], c['index'])) + else: raise AssertionError('Invalid frame accepted') +H = G.profile(w); w['report'].update(local_profile={str(k): v for k, v in sorted(H.items())}, local_rank_mass=sum(r * n for r, n in H.items())) +a.out.mkdir(parents=True); (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(enc(w), mtime=0)) +receipt = dict(status='PASS_EXACT_FRAME_REGROUPING', input_content_sha256=sha(enc(raw)), output_content_sha256=sha(enc(w)), profile_before=recipe['before'], + profile_after=recipe['after'], changes=trace, negative_controls_rejected=rejected, all_scalar_operations_unchanged=True, + all_initial_helper_responses_equal=True, all_entering_helper_responses_zero=True, helper_widths_unchanged=True, + scope='Construction, frame/profile and scalar response checks only; native, phase and global admission are separate.') +(a.out / 'FRAME-CONSTRUCTION.json').write_text(json.dumps(receipt, indent=2, sort_keys=True) + '\n', newline='\n'); print(json.dumps(receipt, indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py new file mode 100644 index 0000000000..03114099c6 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_gate_moves.py @@ -0,0 +1,61 @@ +"""Move commuting gates, then apply source-bound frame coalescences; the scalar map stays identical. +Extends PR583's build_frames.py (chafreaky, OpenAI Codex assisted, Apache-2.0) with commuting gate moves found by +Claude Code research agents. Apache-2.0. + +Recipe: input_content_sha256, before/after profiles, moves [{section, from, to}] (applied in order; every gate the +moved gate passes must commute with it), and changes [{section, index, before, after}] (indices after the moves; +each change only raises the gate frame and must save exactly {1:-2, 2:+1}). The cleanup section is rebuilt with the +inherited rule (the input word must already satisfy it), and the helper responses must be unchanged. +""" +from pathlib import Path +import argparse,copy,gzip,hashlib,json,sys +from collections import Counter +assert __debug__,'Assertions required' +ap=argparse.ArgumentParser();ap.add_argument('--input',type=Path,required=True);ap.add_argument('--recipe',type=Path,required=True);ap.add_argument('--gk-dir',type=Path,required=True);ap.add_argument('--out',type=Path,required=True);a=ap.parse_args();assert not a.out.exists() +sys.path.insert(0,str(a.gk_dir));import gk_word as G,gk_common as C +G.V=C.V=112;G.DATA=C.DATA=7168 +raw=json.loads(gzip.decompress(a.input.read_bytes()));recipe=json.loads(a.recipe.read_text());enc=lambda x:json.dumps(x,sort_keys=True,separators=(',',':')).encode();sha=lambda x:hashlib.sha256(x).hexdigest() +assert sha(enc(raw))==recipe['input_content_sha256'];before=G.profile(raw);assert dict(before)=={int(r):n for r,n in recipe['before'].items()} +def regs(e):return(e[1],e[2])if e[0]=='add'else(e[1],) +def commute(x,y): + """Two additions commute unless one writes the other's source; any other pair must touch disjoint registers.""" + if x[0]=='add'and y[0]=='add':return x[1]!=y[2]and y[1]!=x[2] + return not set(regs(x))&set(regs(y)) +cleanup=lambda w:[G.inverse(e,G.FULL)for e in reversed(w['A']+w['B'])if not 112<=e[1]<224] +assert raw['cleanup']==cleanup(raw),'input cleanup is not the inherited inverse rule' +w=copy.deepcopy(raw);moved=[] +for m in recipe['moves']: + L=w[m['section']];i,j=m['from'],m['to'];assert i!=j and 0<=ii else range(j,i);assert all(commute(L[i],L[k])for k in passed),'noncommuting move %s'%m + L.insert(j,L.pop(i));moved.append(dict(m,passed=len(passed))) +w['cleanup']=cleanup(w);responses=G.responses(w);assert responses==G.responses(raw),'scalar responses changed by the moves' +assert G.profile(w)==before,'moves alone changed the profile';trace=[] +for change in recipe['changes']: + part,i=change['section'],change['index'];assert w[part][i]==change['before'];assert change['before'][:-1]==change['after'][:-1] + w[part][i]=change['after'];after=G.profile(w);delta={r:after[r]-before[r]for r in set(after)|set(before)if after[r]!=before[r]};assert delta=={1:-2,2:1};trace.append(dict(section=part,index=i,delta=delta));before=after +w['cleanup']=cleanup(w) +assert dict(G.profile(w))=={int(r):n for r,n in recipe['after'].items()} +for key in raw: + if key not in ('A','B','cleanup','report'):assert w[key]==raw[key] +for part in ('A','B'):assert sorted(map(enc,(e[:-1]for e in w[part])))==sorted(map(enc,(e[:-1]for e in raw[part]))) +assert G.widths_of(w)==G.widths_of(raw);responses=G.responses(w);assert responses==G.responses(raw) +assert all(not responses[int(r)-224]for r in w['start_extra']) +# Fresh negative controls: every omitted coalescence loses the new profile, every full-space frame replacement violates +# a chain/cut bound, and every move reverted before its coalescence is rejected. +rejected=[] +for c in recipe['changes']: + z=copy.deepcopy(w);z[c['section']][c['index']]=c['before'];assert G.profile(z)!=G.profile(w);rejected.append('omission-%s-%d'%(c['section'],c['index'])) + z=copy.deepcopy(w);z[c['section']][c['index']][-1]=list(G.FULL) + try:G.profile(z) + except AssertionError:rejected.append('overpromotion-%s-%d'%(c['section'],c['index'])) + else:raise AssertionError('Invalid frame accepted') +for m in reversed(recipe['moves']): + z=copy.deepcopy(w);L=z[m['section']];L.insert(m['from'],L.pop(m['to'])) + try:ok=G.profile(z)==G.profile(w) + except AssertionError:ok=False + assert not ok,'unmoved coalescence accepted';rejected.append('unmoved-%s-%d'%(m['section'],m['from'])) +w['report'].update(local_profile=dict(G.profile(w)),local_rank_mass=sum(r*n for r,n in G.profile(w).items()),status='GATE_MOVE_FRAME_COALESCENCES_PENDING_NATIVE_PHASE_ADMISSION', + # descriptive inventory fields recomputed from the actual widths (as PR586's adapted PR583 constructor does) + width_inventory={str(k):v for k,v in sorted(Counter(G.widths_of(w)).items())},entering_helpers=sum(v<9 for v in G.widths_of(w)),entrance_rank=sum(9-v for v in G.widths_of(w))) +a.out.mkdir(parents=True);(a.out/'FULL-WORD.json.gz').write_bytes(G.dump(w));receipt=dict(status='PASS_EXACT_GATE_MOVE_FRAME_COALESCENCES',input_content_sha256=sha(enc(raw)),output_content_sha256=sha(enc(w)),profile_before=recipe['before'],profile_after=recipe['after'],moves=moved,changes=trace,negative_controls_rejected=rejected,all_scalar_responses_unchanged=True,all_entering_helper_responses_zero=True,helper_widths_unchanged=True,cleanup_rebuilt_by_inherited_rule=True,scope='Construction, commutation, frame/profile and scalar response checks only; native, phase and global admission are separate.') +(a.out/'FRAME-CONSTRUCTION.json').write_text(json.dumps(receipt,indent=2,sort_keys=True)+'\n');print(json.dumps(receipt,indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py new file mode 100644 index 0000000000..830906acf2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_hpe.py @@ -0,0 +1,123 @@ +"""Hyperplane-ended helpers (HPE) constructor. Apache-2.0. Prepared with Claude Code assistance. + +usage: build_hpe.py --input FULL-WORD.json.gz --recipe RECIPE.json --out DIR + +RECIPE: {"changes": [{"helper": h, "cleanup_index": i, "frame": [raw vectors]}, ...], "output_content_sha256": hex}. +Each change must be an admissible early-cleanup move: + * h is an entering helper (start_extra) touched by exactly one cleanup gate, cleanup[i]; + * cleanup[i] commutes with every earlier cleanup gate on its registers (commute(): neither writes a register the + other touches, or both add into one target without reading each other's target), so it commutes with the whole + skipped cleanup prefix; in practice the skipped gates only read the partner (x -= p); + * frame == join of the registers' last A/B frames and has dimension < 9. +The output word gets early_cleanup [[i, U]], helper_final {h: U} and the exact paid profile (only the two registers' +final chains change: h ends at U instead of FULL; the partner climbs through U). Exactness of the reordered program, +the frame chains and the profile are re-checked independently by hpe_audit_and_transport.py; the paired control audit +is controls_hpe_atc.py.""" +import argparse, gzip, hashlib, json +from collections import Counter +from pathlib import Path + + +def span(vs): + p = {} + for x in vs: + for k in sorted(p, reverse=True): + if x >> k & 1: x ^= p[k] + if x: + k = x.bit_length() - 1 + for j in p: + if p[j] >> k & 1: p[j] ^= x + p[k] = x + return [p[k] for k in sorted(p, reverse=True)] + + +def regs(e): return [e[1]] + ([e[2]] if e[0] == 'add' else []) + + +def commute(a, b): + """Sufficient syntactic commutation of two scalar gates (t += q*s, t *= q): neither writes a register the other + touches, or both are additions into the same target with neither reading the other's target.""" + ra, rb = set(regs(a)), set(regs(b)) + if a[1] not in rb and b[1] not in ra: return True + return a[0] == 'add' and b[0] == 'add' and a[1] == b[1] and a[2] != b[1] and b[2] != a[1] + + +def last_frames(w): + v, R = w['report']['v'], w['report']['R']; n = 2*v + R + cur = [[] for _ in range(n)] + for i, p in enumerate(w['ports']): cur[i] = [p] + for r, f in w.get('start_extra', {}).items(): cur[int(r)] = list(f) + for part in ('A', 'B'): + for e in w[part]: + for r in regs(e): cur[r] = list(e[-1]) + return cur + + +def apply(w, changes): + assert 'early_cleanup' not in w and 'helper_final' not in w, 'input already has hyperplane-ended helpers' + v, R = w['report']['v'], w['report']['R']; n = 2*v + R + cur = last_frames(w); count = Counter(); first = {}; on = {} + for i, e in enumerate(w['cleanup']): + for r in regs(e): count[r] += 1; first.setdefault(r, i); on.setdefault(r, []).append(i) + lp = Counter({int(r): c for r, c in w['report']['local_profile'].items()}) + seen = set() + for z in changes: + h, i, U = z['helper'], z['cleanup_index'], z['frame'] + assert 2*v <= h < n and str(h) in w['start_extra'], ('not an entering helper', h) + assert count[h] == 1 and first[h] == i, ('helper must have exactly this one cleanup gate', h) + e = w['cleanup'][i]; rs = regs(e) + assert all(commute(w['cleanup'][j], e) for r in rs for j in on[r] if j < i), ('cleanup gate does not commute with the skipped cleanup gates on its registers', i) + assert not seen & set(rs), 'registers shared between changes'; seen |= set(rs) + assert span([x for r in rs for x in cur[r]]) == U and len(U) < 9, ('frame is not the join of the last frames', h) + for r in rs: # old: last -> FULL; new: last -> U (-> FULL for the partner) + d0 = 9 - len(span(cur[r])) + if d0: lp[d0] -= 1 + d1 = len(U) - len(span(cur[r])) + if d1: lp[d1] += 1 + if r != h and len(U) < 9: lp[9 - len(U)] += 1 + w['early_cleanup'] = [[z['cleanup_index'], z['frame']] for z in changes] + w['helper_final'] = {str(z['helper']): z['frame'] for z in changes} + w['report']['local_profile'] = {str(r): c for r, c in sorted(lp.items()) if c} + w['report']['local_rank_mass'] = sum(r*c for r, c in lp.items()) + if 'width_inventory' in w['report']: # descriptive metadata: one width-w helper becomes width w-(9-dim U) + inv = Counter({int(k): c for k, c in w['report']['width_inventory'].items()}) + for z in changes: + e = len(w['start_extra'][str(z['helper'])]); inv[9 - e] -= 1; inv[len(z['frame']) - e] += 1 + assert min(inv.values()) >= 0 + w['report']['width_inventory'] = {str(k): c for k, c in sorted(inv.items()) if c} + assert min(lp.values()) >= 0 + return w + + +def candidates(w): + v, R = w['report']['v'], w['report']['R']; n = 2*v + R + cur = last_frames(w); count = Counter(); first = {}; on = {} + for i, e in enumerate(w['cleanup']): + for r in regs(e): count[r] += 1; first.setdefault(r, i); on.setdefault(r, []).append(i) + out = [] + for h in range(2*v, n): + if count[h] != 1 or str(h) not in w.get('start_extra', {}): continue + i = first[h]; rs = regs(w['cleanup'][i]) + if not all(commute(w['cleanup'][j], w['cleanup'][i]) for r in rs for j in on[r] if j < i): continue + U = span([x for r in rs for x in cur[r]]) + if len(U) < 9: out.append(dict(helper=h, cleanup_index=i, frame=U)) + return out + + +if __name__ == '__main__': + ap = argparse.ArgumentParser(); ap.add_argument('--input', type=Path, required=True); ap.add_argument('--recipe', type=Path) + ap.add_argument('--out', type=Path); ap.add_argument('--nominate', type=Path, help='write a recipe with every candidate') + a = ap.parse_args() + w = json.loads(gzip.decompress(a.input.read_bytes())) + if a.nominate: + a.nominate.write_text(json.dumps(dict(changes=candidates(w), output_content_sha256=''), indent=1) + '\n', newline='\n') + raise SystemExit(0) + r = json.loads(a.recipe.read_bytes()) + w = apply(w, r['changes']) + raw = json.dumps(w, sort_keys=True, separators=(',', ':')).encode(); h = hashlib.sha256(raw).hexdigest() + assert h == r['output_content_sha256'], h + a.out.mkdir(parents=True, exist_ok=False) + (a.out/'FULL-WORD.json.gz').write_bytes(gzip.compress(raw, mtime=0)) + (a.out/'HPE-CONSTRUCTION.json').write_text(json.dumps(dict(status='PASS_HYPERPLANE_ENDED_HELPERS', helpers=[z['helper'] for z in r['changes']], + local_profile=w['report']['local_profile']), indent=1) + '\n', newline='\n') + print('PASS', len(r['changes']), 'hyperplane-ended helpers') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py new file mode 100644 index 0000000000..259fd26feb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/build_port_stage.py @@ -0,0 +1,125 @@ +"""Port one 504-helper construction stage onto the K-triangle word. Apache-2.0. Prepared with Claude Code assistance. + +usage: build_port_stage.py --shadow-input I4 --shadow-output O4 --input I8 --map HELPER-MAP.json --gk-dir GK --out DIR + +The shadow pair (I4 -> O4) is one stage of a 504-helper chain, rebuilt in the same run from pinned sources. I8 is the +K-triangle word at the matching point of its own chain, and HELPER-MAP.json is the 504 -> R register map written by +construct_k_triangle.py. Registers below 448 keep their ids; the removed packet copies have no image. + +The port does the following: +* It renumbers I4 and O4 through the map and drops their gates that touch a removed register. +* It matches gates by scalar operation (the gate without its frame), aligning I4 with O4 and I4 with I8 separately. +* It builds O8 in O4 gate order: + * each matched gate is taken from I8, with O4's frame wherever the stage changed that frame; + * each gate the stage introduced is taken from O4; + * each I8-only gate (the K-triangle reads) stays after the O4 image of its I8 predecessor. +* It replays the stage's entrance (start_extra) and target_levels changes. +* It rebuilds the cleanup with the inherited inverse rule. + +The constructor is a search transfer only. The verifier certifies the output independently: the generalised native +audit (exact forward and inverse replay of every column, native frame chains) runs on every ported word, and every +input and output is pinned by content hash.""" +import argparse, copy, difflib, gzip, hashlib, json, sys +from collections import Counter +from pathlib import Path + +assert __debug__, 'Assertions required' +FULL = [256, 128, 64, 32, 16, 8, 4, 2, 1] + + +def regs(g): return (g[1], g[2]) if g[0] == 'add' else (g[1],) + + +def key(g): return json.dumps(g[:-1]) + + +def inverse(e): + e = copy.deepcopy(e) + if e[0] == 'add': e[3] *= -1 + else: e[2], e[3] = e[3], e[2] + e[-1] = list(FULL); return e + + +def align(xs, ys): + """index map xs -> ys over runs of equal scalar operations""" + sm = difflib.SequenceMatcher(None, [key(g) for g in xs], [key(g) for g in ys], autojunk=False) + return {i1 + k: j1 + k for tag, i1, i2, j1, j2 in sm.get_opcodes() if tag == 'equal' for k in range(i2 - i1)} + + +def transfer_section(I4, O4, I8, stats): + a, b = align(I4, O4), align(I4, I8) + o2i = {j: i for i, j in a.items()}; i8from4 = {j: i for i, j in b.items()} + anchor = {j8: a[i4] for j8, i4 in i8from4.items() if i4 in a} + pending, last = {}, -1 + for j8, g in enumerate(I8): + if j8 in anchor: last = anchor[j8] + elif j8 not in i8from4: pending.setdefault(last, []).append(copy.deepcopy(g)); stats['kept_own'] += 1 + else: stats['dropped_by_stage'] += 1 + out = list(pending.get(-1, [])) + for k, g in enumerate(O4): + if k in o2i: + i4 = o2i[k] + if i4 in b: + g8 = copy.deepcopy(I8[b[i4]]) + if I4[i4][-1] != g[-1]: g8[-1] = copy.deepcopy(g[-1]); stats['frames_changed'] += 1 + out.append(g8) + else: + out.append(copy.deepcopy(g)); stats['introduced'] += 1 + out.extend(pending.get(k, [])) + return out + + +def main(): + ap = argparse.ArgumentParser() + for k in ('--shadow-input', '--shadow-output', '--input', '--map', '--gk-dir', '--out'): ap.add_argument(k, type=Path, required=True) + a = ap.parse_args(); assert not a.out.exists() + sys.path.insert(0, str(a.gk_dir)); import gk_word as G, gk_common as C + G.V = C.V = 112 + rd = lambda p: json.loads(gzip.decompress(p.read_bytes())) + enc = lambda x: json.dumps(x, sort_keys=True, separators=(',', ':')).encode(); sha = lambda x: hashlib.sha256(x).hexdigest() + I4, O4, I8 = rd(a.shadow_input), rd(a.shadow_output), rd(a.input) + fm = {int(k): int(v) for k, v in json.loads(a.map.read_text())['map'].items()} + assert all(fm[k] == k for k in fm if k < 448), 'only ids >= 448 may move' + R = I8['report']['R']; assert sorted(fm.values()) == list(range(224 + R)), 'map is not onto the K-triangle registers' + assert I4['report'].get('R', 504) == 504 and len(fm) + len(set(range(728)) - set(fm)) == 728 + rem = set(range(728)) - set(fm) + rn = lambda r: fm[r] + touches = lambda g: any(r in rem for r in regs(g)) + def rg(g): + g = copy.deepcopy(g); g[1] = rn(g[1]) + if g[0] == 'add': g[2] = rn(g[2]) + return g + def rn_word(w): + w = copy.deepcopy(w) + for s in ('A', 'B', 'cut', 'precondition', 'cleanup'): + if s in w: w[s] = [rg(g) for g in w[s] if not touches(g)] + for k in ('start_extra', 'helper_final'): + if k in w: w[k] = {str(rn(int(r))): f for r, f in w[k].items() if int(r) not in rem} + return w + I4r, O4r = rn_word(I4), rn_word(O4) + O8 = copy.deepcopy(I8); stats = {s: Counter() for s in ('A', 'B')} + for s in ('A', 'B'): O8[s] = transfer_section(I4r[s], O4r[s], I8[s], stats[s]) + for k in ('start_extra', 'target_levels'): + x, y = I4r.get(k, {}), O4r.get(k, {}); d = dict(I8.get(k, {})) + for r in set(x) | set(y): + if x.get(r) != y.get(r): + if r in y: d[r] = y[r] + else: d.pop(r, None) + if k in O4 or k in I8: O8[k] = dict(sorted(d.items(), key=lambda kv: int(kv[0]))) + for k in O4: + if k not in ('A', 'B', 'cleanup', 'report', 'start_extra', 'target_levels', 'cut', 'precondition'): + assert O4r[k] == I4r[k], 'stage changed an unported field: ' + k + O8['cleanup'] = [inverse(e) for e in reversed(O8['A'] + O8['B']) if not 112 <= e[1] < 224] + H = G.profile(O8) + ws = [9 - len(G.basis(O8['start_extra'].get(str(224 + h), []))) for h in range(R)] + O8['report'] = dict(I8['report'], local_profile={str(k): v for k, v in sorted(H.items())}, local_rank_mass=sum(k * v for k, v in H.items()), + width_inventory={str(k): v for k, v in sorted(Counter(ws).items())}) + a.out.mkdir(parents=True); (a.out / 'FULL-WORD.json.gz').write_bytes(gzip.compress(enc(O8), mtime=0)) + receipt = dict(status='PORTED_STAGE_PENDING_NATIVE_AUDIT', R=R, removed_504_helpers=sorted(rem), + shadow_input_content_sha256=sha(enc(I4)), shadow_output_content_sha256=sha(enc(O4)), input_content_sha256=sha(enc(I8)), + output_content_sha256=sha(enc(O8)), sections={s: dict(v) for s, v in stats.items()}, local_profile=O8['report']['local_profile'], + scope='Transfer construction only; exactness, frame chains and profile are certified by the native audit run on the output.') + (a.out / 'PORT-STAGE.json').write_text(json.dumps(receipt, indent=2, sort_keys=True) + '\n', newline='\n'); print(json.dumps(receipt, indent=2)) + + +main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py new file mode 100644 index 0000000000..cf843b5f48 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/cold_end_controls.py @@ -0,0 +1,178 @@ +"""cold_end_controls.py COLD-END-WORD.json.gz ROUTING OUTDIR : raw-word negative controls for the cold low-frame ends and the +refactored cleanup accepted by hpe_audit_and_transport.py. Every mutation MUST be rejected (AssertionError); the +unmutated word MUST pass. Apache-2.0. DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code.""" +import copy, gzip, json, shutil, sys, tempfile +from pathlib import Path +sys.path.insert(0, str(Path(__file__).resolve().parent)) +import hpe_audit_and_transport as atc + +src, routing, outdir = Path(sys.argv[1]), Path(sys.argv[2]), Path(sys.argv[3]) +word = json.load(gzip.open(src)) +v, R = word['report']['v'], word['report']['R']; n = 2*v + R +regs = lambda e: [e[1]] + ([e[2]] if e[0] == 'add' else []) +meta = word['refactored_cleanup'] +cold = [int(h) for h in meta['cold_low_frame_ended_helpers']] +npre = meta['premix_gates']; nlow = meta['lower_frame_gates'] +early = word['early_cleanup']; eidx = {i for i, _ in early} +rest = [i for i in range(len(word['cleanup'])) if i not in eidx] + + +def trial(w): + """None if the transport audit accepts w, else the AssertionError message.""" + tmp = Path(tempfile.mkdtemp()) + p = tmp/'w.json.gz'; p.write_bytes(gzip.compress(json.dumps(w).encode(), mtime=0)) + try: + atc.run(p, routing, tmp/'out') + return None + except AssertionError as e: + return repr(e.args[0]) if e.args else 'AssertionError' + finally: + shutil.rmtree(tmp, ignore_errors=True) + + +# Pinned rejection reasons: each mutant must fail at this assertion of hpe_audit_and_transport.py (message substring). +ENDPOINT, COLDPRE, CONE = "'arbitrary-dirt endpoint'", 'touches a cold hyperplane-ended helper', 'hpe cone pre-check (row / column)' +WHY = dict(premix_to_precondition=COLDPRE, premix_dropped=COLDPRE, e_premix_dropped=ENDPOINT, lower_dropped=ENDPOINT, + remainder_dropped=ENDPOINT, coefficient=ENDPOINT, into_full=ENDPOINT, dyadic=ENDPOINT, frame_below="'nonmonotone'", + nonmonotone="'nonmonotone'", other_frame=CONE, cone=CONE, extra_end=COLDPRE, marker='cleanup is not the literal reversed inverse', + target='refactored cleanup touches a target', profile_pin='paid local profile differs from the reported local_profile', + entering_precondition='zero-frame precondition/compensation touches an entering helper') +assert trial(word) is None, 'unmutated cold-end word must pass' +results = [] + + +def reject(name, mut, why): + """the mutation must be rejected, and for the pinned reason (a substring of the audit's assertion message).""" + w = copy.deepcopy(word); mut(w) + msg = trial(w) + assert msg is not None, 'cold-end mutation accepted: ' + name + assert why in msg, 'cold-end mutation %r rejected for the wrong reason: %s' % (name, msg[:300]) + results.append(name); print('rejected', name, '|', why, flush=True) + + +h0 = cold[0] +i0, U0 = next((i, f) for i, f in early if h0 in regs(word['cleanup'][i])) +r0 = rest[len(rest)//2] + + +def premix_to_precondition(w): # premix before the wrappers; compensation then reads the cold ends + w['precondition'] = w['precondition'] + w['A'][:npre]; w['A'] = w['A'][npre:] + + +def lower_gate_into_full(w): # a lower-frame gate on a cold-ended helper executed in the FULL remainder instead + w['early_cleanup'] = [x for x in w['early_cleanup'] if x[0] != i0] + + +def drop_cleanup_gate(w, i): # remove the gate AND its early_cleanup entry: a structurally valid word missing one gate + w['cleanup'].pop(i) + w['early_cleanup'] = [[j - (j > i), f] for j, f in w['early_cleanup'] if j != i] + + +def other_frame(w): # a different frame of the same dimension as the cold end (another cold helper's) + f = next(w['helper_final'][str(h)] for h in cold if w['helper_final'][str(h)] != w['helper_final'][str(h0)]) + w['helper_final'][str(h0)] = f + + +def extra_cold_end(w): # declare a premixed partner of h0 cold-ended at h0's frame: fails the row/column cone + p = next(r for e in w['A'][:npre] for r in regs(e) if r != h0 and h0 in regs(e)) + w['helper_final'][str(p)] = w['helper_final'][str(h0)] + + +reject('premix placed in the zero-frame precondition (before the cold wrappers)', premix_to_precondition, WHY['premix_to_precondition']) +reject('one premix gate dropped (the compensation then reads a cold-ended helper)', lambda w: w['A'].pop(npre - 1), WHY['premix_dropped']) +reject('one lower-frame cleanup gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, i0), WHY['lower_dropped']) +reject('one FULL-remainder gate dropped', lambda w: drop_cleanup_gate(w, r0), WHY['remainder_dropped']) +reject('lower-frame gate coefficient changed', lambda w: w['cleanup'][i0].__setitem__(3, w['cleanup'][i0][3] * 2), WHY['coefficient']) +reject('lower-frame gate moved into the FULL remainder (touches a cold-ended helper at FULL)', lower_gate_into_full, WHY['into_full']) +reject('lower-frame gate frame below its registers\' frames', lambda w: next(x for x in w['early_cleanup'] if x[0] == i0).__setitem__(1, U0[:-1]), WHY['frame_below']) +reject('cold end at another dim-4 frame', other_frame, WHY['other_frame']) +# PROFILE-PIN control: without its helper_final entry the cold-ended helper is a valid FULL-ended helper; the word is +# rejected because its reported paid profile (which counts the low end) no longer matches the frame chains. +reject('profile pin: cold end dropped (valid FULL end, but the reported profile counts the low end)', lambda w: w['helper_final'].pop(str(h0)), WHY['profile_pin']) +reject('extra cold end on a premixed partner (the compensation reads it before its wrapper)', extra_cold_end, WHY['extra_end']) +reject('refactored-cleanup marker removed (literal-inverse rule applies)', lambda w: w.pop('refactored_cleanup'), WHY['marker']) +reject('remainder gate retargeted to a target register', lambda w: w['cleanup'][r0].__setitem__(1, v + 3), WHY['target']) +reject('non-dyadic remainder coefficient', lambda w: w['cleanup'][r0].__setitem__(4 if w['cleanup'][r0][0] == 'add' else 3, 3 * w['cleanup'][r0][4 if w['cleanup'][r0][0] == 'add' else 3]), WHY['dyadic']) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('5', w['report']['local_profile']['5'] - 1), WHY['profile_pin']) +ent = [int(h) for h in meta.get('entering_low_frame_ended_helpers', [])] +for e0 in ent: # ENTERING LOW-FRAME ENDS (ColdSupply extension; every entering end; absent for words without them) + j0 = next(i for i, e in enumerate(word['A'][:npre]) if e0 in regs(e)) + k0, Ue = next((i, f) for i, f in early if e0 in regs(word['cleanup'][i])) + def to_pre(w, j0=j0): w['precondition'].append(w['A'][j0]); w['A'].pop(j0) + def other_hp(w, e0=e0, Ue=Ue): w['helper_final'][str(e0)] = next(f for h, f in w['helper_final'].items() if len(f) == len(Ue) and sorted(f) != sorted(Ue)) + reject('entering end %d: premix gate dropped' % e0, lambda w, j0=j0: w['A'].pop(j0), WHY['e_premix_dropped']) + reject('entering end %d: premix gate at frame [] instead of its entrance E' % e0, lambda w, j0=j0: w['A'][j0].__setitem__(-1, []), WHY['nonmonotone']) + reject('entering end %d: premix gate moved into the zero-frame precondition' % e0, to_pre, WHY['entering_precondition']) + reject('entering end %d: lower-frame gate dropped (gate and its early_cleanup entry)' % e0, lambda w, k0=k0: drop_cleanup_gate(w, k0), WHY['lower_dropped']) + reject('entering end %d: profile pin: end dropped (valid FULL end, but the reported profile counts the low end)' % e0, lambda w, e0=e0: w['helper_final'].pop(str(e0)), WHY['profile_pin']) + reject('entering end %d: end at another hyperplane' % e0, other_hp, WHY['cone']) +# Pinned rejection reasons of the COLD-BEYOND mutants (substrings of hpe_audit_and_transport.py assertion messages). +MYWHY = dict(tw_precondition=COLDPRE, tw_dropped=COLDPRE, tw_coefficient=COLDPRE, tw_other_block=COLDPRE, + tw_entering='zero-frame compensation reads an entering helper', + ab_dropped=ENDPOINT, ab_coefficient=ENDPOINT, ab_early=ENDPOINT, ab_live=ENDPOINT, ab_centre=ENDPOINT, + ab_lower="'nonmonotone'", ab_higher="'nonmonotone'", + sh_dropped=ENDPOINT, sh_coefficient=ENDPOINT, rel_dropped=ENDPOINT, rel_coefficient=ENDPOINT, rel_live=ENDPOINT, + h8_other=CONE, h8_lower=ENDPOINT) +# COLD-BEYOND primitives (present only when the word carries them): frame-[] target writes in the premix (explicit +# post-wrapper compensation of an ended helper's dirt) and forward absorptions into dead registers. +nw = meta.get('premix_target_writes', 0) +if nw: + wi = [i for i in range(npre) if v <= word['A'][i][1] < 2*v] + assert len(wi) == nw + + def writes_to_precondition(w): # the target writes run before the cold wrappers (inside the zero-frame precondition) + g = [w['A'][i] for i in wi]; w['precondition'] = w['precondition'] + g + w['A'] = [e for i, e in enumerate(w['A']) if i not in set(wi)] + reject('premix target writes placed in the zero-frame precondition (before the cold wrappers)', writes_to_precondition, MYWHY['tw_precondition']) + reject('one premix target write dropped (compensation must read an ended helper)', lambda w: w['A'].pop(wi[0]), MYWHY['tw_dropped']) + reject('premix target write coefficient changed', lambda w: w['A'][wi[0]].__setitem__(3, w['A'][wi[0]][3] * 2), MYWHY['tw_coefficient']) + # (reading another register that carries the SAME weight of the ended helper's dirt is a valid variant, so the mutant reads + # the same factory slot of the next block, which carries none of it) + entering_regs = sorted(int(r) for r in word.get('start_extra', {})) + reject('premix target write reads an entering helper', lambda w: w['A'][wi[0]].__setitem__(2, entering_regs[0]), MYWHY['tw_entering']) + reject('premix target write reads a cold helper of another block', lambda w: w['A'][wi[0]].__setitem__(2, 2*v + (w['A'][wi[0]][2] - 2*v + 16) % 224), MYWHY['tw_other_block']) +ab = meta.get('forward_absorption_A_indices', []) +if any(len(word['helper_final'][str(h)]) == 8 for h in cold): + # with dim-8 cold ends, the centre-retargeted absorption first leaks an ended helper's dirt into the cut's targets + MYWHY['ab_centre'] = COLDPRE +if ab: + # the ColdBeyond U_b absorption (q += -1/2 g); ColdThird's extra absorptions have their own controls below + a0 = next(a for a in ab if word['A'][a][3] * 2 == -word['A'][a][4]); g0 = word['A'][a0] + + def absorption_moved_early(w): # absorbed before the absorbed register's last kernel write + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[2] == w['A'][i][1] and w['A'][i][-1] == g0[-1]) + w['A'].insert(j, e) + + def absorption_into_live(w): # q += a g moved right after g's previous frame-mate gate, while q is still live + e = w['A'].pop(a0); j = max(i for i in range(npre, a0) if g0[1] in regs(w['A'][i])) + w['A'].insert(j, e) + reject('forward absorption dropped', lambda w: w['A'].pop(a0), MYWHY['ab_dropped']) + reject('forward absorption into a centre (a live register read by the cut)', lambda w: w['A'][a0].__setitem__(1, next(c for c in word['centers'] if c not in g0[1:3] and c not in cold)), MYWHY['ab_centre']) + reject('forward absorption coefficient changed', lambda w: w['A'][a0].__setitem__(3, w['A'][a0][3] * 2), MYWHY['ab_coefficient']) + reject('forward absorption placed before the absorbed register\'s last kernel write', absorption_moved_early, MYWHY['ab_early']) + reject('forward absorption placed while the absorbing register is still live', absorption_into_live, MYWHY['ab_live']) + reject('forward absorption at a lower frame than its registers', lambda w: w['A'][a0].__setitem__(-1, w['A'][a0][-1][:-1]), MYWHY['ab_lower']) + reject('forward absorption at a higher frame (FULL) than its registers', lambda w: w['A'][a0].__setitem__(-1, [256, 128, 64, 32, 16, 8, 4, 2, 1]), MYWHY['ab_higher']) +# COLD-THIRD primitives (present only when the word carries them): several absorptions after one input gate, dirt-release +# absorptions (a dead port takes a live helper's value so that a hyperplane unit's column has no dirt on it), and cold ends at +# a dim-8 frame with lifted partners. +hyper = [h for h in cold if len(word['helper_final'][str(h)]) == 8] +if hyper and ab: + sh = next(a for a, b in zip(ab, ab[1:]) if b == a + 1) # two absorptions sharing one input anchor + rel = next(a for a in ab if a - 1 not in ab and a + 1 not in ab and word['A'][a][2] in hyper and word['A'][a][3] * 2 != -word['A'][a][4]) + hh = hyper[0]; ih = next(i for i, f in early if hh in regs(word['cleanup'][i])) + reject('second absorption sharing an input anchor dropped', lambda w: w['A'].pop(sh + 1), MYWHY['sh_dropped']) + reject('shared-anchor absorption coefficient changed', lambda w: w['A'][sh + 1].__setitem__(3, w['A'][sh + 1][3] * 2), MYWHY['sh_coefficient']) + reject('dirt-release absorption dropped', lambda w: w['A'].pop(rel), MYWHY['rel_dropped']) + reject('dirt-release absorption coefficient changed', lambda w: w['A'][rel].__setitem__(3, w['A'][rel][3] * 2), MYWHY['rel_coefficient']) + jr = max(i for i in range(npre, rel) if word['A'][i][0] == 'add' and word['A'][i][2] == word['A'][rel][1]) + + def release_while_read(w): # the release runs before a kernel gate that still READS the port (port live) + e = w['A'].pop(rel); w['A'].insert(jr, e) + reject('dirt-release absorption moved before a kernel gate that still reads the port', release_while_read, MYWHY['rel_live']) + reject('dim-8 cold end at another dim-8 frame', lambda w: w['helper_final'].__setitem__(str(hh), next(f for h, f in w['helper_final'].items() if len(f) == 8 and sorted(f) != sorted(w['helper_final'][str(hh)]))), MYWHY['h8_other']) + reject('dim-8 cold end: one lower-frame gate dropped (gate and its early_cleanup entry)', lambda w: drop_cleanup_gate(w, ih), MYWHY['h8_lower']) + reject('dim-8 cold end: profile pin (end dropped)', lambda w: w['helper_final'].pop(str(hh)), WHY['profile_pin']) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'COLD-END-CONTROLS.json').write_text(json.dumps(dict(status='PASS_COLD_END_RAW_WORD_CONTROLS', word=str(src), rejected=results), indent=1) + '\n') +print('PASS', len(results), 'cold-end raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py new file mode 100644 index 0000000000..763a2b3f5f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/construct_k_triangle.py @@ -0,0 +1,374 @@ +# Round20 early-coordinate-center / own-Y variant, prepared for icekylinx +# with OpenAI Codex assistance. Apache-2.0. Scalar elementary-operation +# helpers below are retained from the attributed PR514 construct_partial.py. +# Adapted by OpenAI Codex for isolated structural research. +# Modified from PR425 by icekylinx with Codex assistance. +"""Full discovery word for Hamming packets with borrowed X and Y registers. + +This changes the scalar architecture. It is not accepted by the old restricted +gx interface: source bases may change until full-frame cleanup, and targets use +an explicitly inverted output basis. No supplier admission is asserted. +""" +import copy,gzip,json,math,time +import itertools as it +from collections import Counter,defaultdict +from fractions import Fraction as Q +from pathlib import Path + +import sys +INPUT=Path(sys.argv[1]);OUT=Path(sys.argv[2]);OUT.mkdir(parents=True,exist_ok=False);D=json.loads((INPUT/'PROTOTYPE.json').read_text()) +P=D['binary_ports'];R=D['root_lines'];v=120;h=9 +modules=json.load(gzip.open(INPUT/'PACKET-PROGRAMS.json.gz')) +# AtomScout: leaver-read K-triangles (schedule from atom1.py / rog.py CP-SAT) +TRI=json.loads(Path(sys.argv[3]).read_text()) +FULLT={(tuple(tr['p']),tr['e']) for tr in TRI['triangles']} +TRI_COORDS={t+8 for tr in TRI['triangles'] for t,_,_ in tr['reads']} +COPYL=[] +NH=504-3*len(FULLT)+len(COPYL) + +def basis(vectors): + b={} + for x in vectors: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def inside(a,b):return basis(a+b)==b +def hyper(p):return basis([x for x in range(1,512) if (x&p).bit_count()%2==0]) +FULL=basis([1<len(M):M.append(rr) + if len(M)==8:break + assert len(M)==8 + linear(regs,M,F) + for i,r in zip(c,regs): + assert rows[r]=={s:Q(R[s][i]) for s in ids} + block_totals[c,i]=r + +# All centers are complete while Y is still at zero. This is the crucial +# difference from an illegal early-own-Y prefix using the old center order. +centers=[] +for i in range(8): + regs=[block_totals[c,i] for c in sorted(blocks) if i in c] + F=hyper(P[frame[i]]);a=regs[0] + for b in regs[1:]:add(a,b,1,F) + centers.append(a) +centers += [frame[i] for i in range(8)] +center_frames=[cur[r] for r in centers] +assert list(map(len,center_frames))==[8]*8+[1]*8 +assert all(cur[v+t]==() for t in range(v)) + +phase=B +for t,(r,coef,F) in sorted(own_rows.items()): + if t in TRI_COORDS:continue + assert cur[r]==F + add(v+t,r,coef,F) +# requests are needed for TRI coefficients +requests=defaultdict(list) +for pid,pair in enumerate(pairs): + if not pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + requests[key1].append((t,-Q(mat[0][0],2))) + requests[key2].append((u,-Q(mat[0][1],2))) +reqcoef={t:(key,coef) for key,reqs in requests.items() for t,coef in reqs} +def face_info(c,p,eps): + z=blocks[c];keys=[(pp,ee) for pp in it.combinations(c,2) for ee in (-1,1)] + r_local,alpha=z['outputs'][keys.index((p,eps))] + j=[j for j in range(40,len(z['events'])) if z['events'][j][0]==r_local];assert len(j)==1 + return j[0],Q(alpha) +tri_join_counts=Counter() +lcopy={} +for s8 in COPYL: + r=s8+8;c=alloc();add(c,r,1,cur[r]);lcopy[r]=c +for tr in TRI['triangles']: + p,eps=tuple(tr['p']),tr['e'] + for t8,blk,loc in tr['reads']: + t=t8+8;blk=tuple(blk);r=maps[blk][loc];r0=r;r=lcopy.get(r,r) + key,coef=reqcoef[t];assert key[1]==p and key[2]==eps,(key,p,eps) + if blk==key[0]: + rr,c0,F0=own_rows[t];assert rr==r0;q=c0 + else: + j,alpha=face_info(blk,p,eps);ev=blocks[blk]['events'][j];assert loc in ev[:2] + q=coef*alpha + F=basis(cur[v+t]+cur[r]);assert inside(F,hyper(P[t])),('TRI frame',t) + tri_join_counts[len(F)]+=1;add(v+t,r,q,F) + +packets={} +for c,z in sorted(blocks.items()): + mp=maps[c] + keys=[(p,eps) for p in it.combinations(c,2) for eps in (-1,1)] + skipev={face_info(c,p,eps)[0] for p,eps in keys if (p,eps) in FULLT} + for j,(e,F) in enumerate(list(zip(z['events'],z['event_frames']))[40:]): + if j not in early[c] and 40+j not in skipev: + t,s,a,b=e;add(mp[t],mp[s],Q(a,b),tuple(F)) + for key,(r,alpha) in zip(keys,z['outputs']): + if tuple(key) in FULLT:skip();continue + a=mp[r];b=alloc();add(b,a,1,cur[a]) + consumers=sorted(d for d in blocks if d!=c and set(key[0])<=set(d)) + assert len(consumers)==2 + for target,r in zip(consumers,(a,b)):packets[c,key[0],key[1],target]=(r,Q(alpha)) + +# Both tetrahedra use the same partition. A selected key has exactly two +# selected Y loads and no ordinary M consumer. Supply its two raw halves in +# opposite orders and never form that M. Other keys retain the old M path. +second=[];first_join_counts=Counter() +for key,reqs in sorted(requests.items()): + assert len(reqs)==2 + c,p,eps=key + if (p,eps) in FULLT:continue + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d));a,b=ds + for j,(target,coef) in enumerate(sorted(reqs)): + first_source,second_source=(a,b) if j==0 else (b,a) + r,alpha=packets[first_source,p,eps,second_source] + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + first_join_counts[len(F)]+=1;add(v+target,r,coef*alpha,F) + r,alpha=packets[second_source,p,eps,c] + second.append((target,r,coef*alpha)) + +Ms={} +for c in sorted(blocks): + for p in it.combinations(c,2): + ds=sorted(d for d in blocks if d!=c and set(p)<=set(d)) + for eps in (-1,1): + if (c,p,eps) in requests:continue + (a,alpha),(b,beta)=[packets[d,p,eps,c] for d in ds] + F=basis(cur[a]+cur[b]);add(a,b,beta/alpha,F) + Ms[c,p,eps]=(a,alpha) + +consumers=defaultdict(list) +for pid,pair in enumerate(pairs): + for key in pair['keys']:consumers[key].append(pid) +slots={} +for key,uses in sorted(consumers.items()): + assert len(uses)==2 + if key in requests: + assert all(pairs[i]['selected'] for i in uses) + continue + assert all(not pairs[i]['selected'] for i in uses) + a,alpha=Ms[key] + for j,pid in enumerate(uses): + if j==0:r=a + else:r=alloc();add(r,a,1,cur[a]) + slots[pid,key]=(r,alpha) +assert len(cur)-240==NH,len(cur)-240 + +selected_join_counts=Counter() +for target,r,coef in second: + F=basis(cur[v+target]+cur[r]);assert inside(F,hyper(P[target])) + selected_join_counts[len(F)]+=1;add(v+target,r,coef,F) +output_basis=[] +for pair in pairs: + if not pair['selected']:continue + (t,u),mat=pair['targets'],pair['matrix'] + F=basis(cur[v+t]+cur[v+u]);assert inside(F,hyper(P[t])) and inside(F,hyper(P[u])) + add(v+t,v+u,1,F);add(v+u,v+t,-Q(1,2),F) + z=-Q(2*mat[1][0],mat[0][0]);scale(v+u,z,F);output_basis.append((t,u,z)) + +for pid,pair in enumerate(pairs): + if pair['selected']:continue + (t,u),(key1,key2),mat=pair['targets'],pair['keys'],pair['matrix'] + (a,alpha),(b,beta)=slots[pid,key1],slots[pid,key2] + F=basis(cur[a]+cur[b]);aa,ab=Q(mat[0][0])*alpha,Q(mat[0][1])*beta + ba,bb=Q(mat[1][0])*alpha,Q(mat[1][1])*beta + add(a,b,ab/aa,F);q=ba/(bb-ba*ab/aa);add(b,a,q,F) + add(v+t,a,-aa/2,hyper(P[t]));add(v+u,b,-(bb-ba*ab/aa)/2,hyper(P[u])) + +for t in range(v): + expected={s:-Q(G[t][s],2) for s in range(v) if s!=t and G[t][s] and s not in frame.values()} if t not in frame.values() else {} + assert rows[v+t]==expected,('side identity',t) + +scatter=[[Q(r[i],4) if t not in frame.values() else Q(0) for i in range(8)]+[Q(t==frame[i]) for i in range(8)] for t,r in enumerate(R)] +precondition=[] +for t,u,z in output_basis: + a,b=scatter[t].copy(),scatter[u].copy() + scatter[t]=[x/2-y/z for x,y in zip(a,b)] + scatter[u]=[x/2+y/z for x,y in zip(a,b)] + precondition.extend([['scale',v+u,(1/z).numerator,(1/z).denominator,[]], + ['add',v+u,v+t,1,2,[]],['add',v+t,v+u,-1,1,[]]]) +for r in range(len(cur)):climb(r,hyper(P[r-v]) if v<=r<2*v else FULL) +H[8]+=8;H[1]+=8 +assert sum(r*z for r,z in H.items())==9*NH+240*8+72,sum(r*z for r,z in H.items()) + +def apply(e,matrix): + if e[0]=='add': + _,t,s,a,b,*_=e;q=Q(a,b) + for j,x in list(matrix[s].items()): + z=matrix[t].get(j,Q(0))+q*x + if z:matrix[t][j]=z + else:matrix[t].pop(j,None) + else: + _,t,a,b,*_=e;q=Q(a,b);matrix[t]={j:q*x for j,x in matrix[t].items()} +def inverse(e): + e=copy.deepcopy(e) + if e[0]=='add':e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + e[-1]=list(FULL);return e +cut=[['add',v+t,centers[i],q.numerator,q.denominator,None] for t,row in enumerate(scatter) for i,q in enumerate(row) if q] +cleanup=[inverse(e) for e in reversed(A+B) if not v<=e[1]<2*v] +matrix=[{r:Q(1)} if r>i)&1);u=q^(1<>i&1 else 0)for i in order]+[1<0 and all(x['R']==R for x in registry.values()),'providers disagree on helper count R' + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz')and replay['local_programs_sha256']==sha(directory/'LOCAL-PROGRAMS.json.gz') + widths=[len(pc['frames'][pc['final'][2*V+h]])-len(pc['frames'][pc['start'][2*V+h]])for h in range(R)] # HPE: residual width |final|-|start| + assert widths==plan['provider_registry'][provider_id]['widths'] + for name in provider_files: + value=sha(directory/name);assert value==plan['provider_registry'][provider_id]['artifact_sha256'][name] + source_artifacts[f'providers/{provider_id}/{name}']=value + registry[provider_id]=dict(local_programs=programs,canonical_word_sha256=sha(directory/'CANONICAL-WORD.json.gz'),local_programs_sha256=sha(directory/'LOCAL-PROGRAMS.json.gz'),local_program_checks=checks,exact_local_clifford_recipe_sha256=sha(directory/'CLIFFORD-RECIPES.json'),residual_adapter_sha256=sha(directory/'RESIDUAL-ADAPTERS.json'),v=V,h=9,R=R,ports=pc['ports'],centers=pc['centers'],widths=widths) +assert len(roles)==72*R # one whole-owner role per (call, provider helper) +selected={(c['stage'],c['replica']):c for c in plan['provider_calls']} +assert len(selected)==72 and set(selected)==set(call_order) +assert Counter(c['provider']for c in selected.values())==COUNTS +per_call_widths={(c['stage'],c['replica']):c['widths']for c in plan['per_call_widths']} +for key,c in selected.items(): + assert c['time']==at[key] and c['provider']in registry + assert per_call_widths[key]==registry[c['provider']]['widths'] +for key in('local_programs','exact_local_clifford_recipe_sha256','residual_adapter_sha256'):t.pop(key) +t['local_providers']=registry +rank={z['child']:z['rank']for z in parent['idle_children']};side={};pairs={} +for e in parent['execution_schedule']: + if e['kind']=='idle_cover_sweep': + for sd,ch in enumerate(e['child_indices']):side[ch]=sd;pairs[ch]=e['pair'] +bycall=defaultdict(dict);used=defaultdict(set);sigmas={};digest=hashlib.sha256();entering=0 +for z in roles: + s,rep,h=z['stage'],z['replica'],z['helper'];i,cp,off,w,f=z['child'],z['copy'],z['offset'],z['width'],z['family'];orp,port=divmod(cp,V) + assert 0<=s<9 and 0<=rep=0 and off+w<=rank[i] + assert z['time']==at[s,rep] and z['time'] in plan['windows'][f'{orp},{i}'][1] + B=OH.idle_basis(canon['ports'][port]);pending=list(map(int,ph['recipes'][port]['idle_children'][i]['orthogonal_axes']));assert len(pending)==rank[i] + occ=[B.index(v)for v in pending[off:off+w]];sp=OH.spectators(canon['ports'][port],pending,off,w)if w<9 else[] + order=occ+sp+[j for j in range(M)if j not in occ and j not in sp];assert len(order)==len(set(order))==M + sigma=[B[j]for j in order];sigmahash=hashlib.sha256(json.dumps(sigma,separators=(',',':')).encode()).hexdigest();sigmas[sigmahash]=sigma + route=[4,i,off,w,sp]if w<9 else[3,i,off];bycall[s,rep][h]=[f,route];entering+=w<9 + cells=set(range(off,off+w));assert not used[i,orp,port]&cells;used[i,orp,port]|=cells + digest.update(json.dumps([s,rep,h,f,sigmahash],separators=(',',':')).encode()+b'\n') +for c in t['calls']: + k=(c['stage'],c['replica']);assert set(bycall[k])==set(range(R)) + c['owners']=c['owners'][:(2*V)]+[bycall[k][h]for h in range(R)];assert len({f for f,r in c['owners']})==2*V+R and all(f2*max(paid)**2 + +assert all(c['local_program_sha256']==registry[c['provider_id']]['local_program_checks'][c['orientation']]['sha256']for c in t['calls']) +t['provider_dispatch']='For each indivisible local_cover_sweep, execute local_providers[call.provider_id].local_programs[call.orientation] with that provider residual adapters and Clifford recipes. The sweep provider_id must equal its call provider_id.' +raw=json.dumps(t,sort_keys=True,separators=(',',':')).encode();(OUT/'GLOBAL-TEMPLATE.json.gz').write_bytes(gzip.compress(raw,mtime=0)) +res=dict(status='EMITTED_MIXED_PROVIDER_ASYNCHRONOUS_WHOLE_OWNER_COMPLEX_TEMPLATE', + template_sha256=hashlib.sha256(raw).hexdigest(), + parent_template_sha256=hashlib.sha256(gzip.decompress((BASE/'split-centres/GLOBAL-TEMPLATE.json.gz').read_bytes())).hexdigest(), + live=DATA,physical=physical,global_profile=dict(sorted(paid.items())), + rank_mass=sum(r*n for r,n in paid.items()),deficit=2560,maxchild=max(paid), + hosted_residuals=len(roles),banks_per_stage=[0]*9,entering_helper_roles=entering, + unique_actual_73column_sigmas=len(sigmas),sigma_stream_sha256=digest.hexdigest(), + cross_replica_helper_roles=sum(z['replica']!=z['owner_replica']for z in roles), + asynchronous_order_sha256=hashlib.sha256(json.dumps(call_order,separators=(',',':')).encode()).hexdigest(), + source_artifacts=source_artifacts,provider_counts=dict(Counter(c['provider_id']for c in t['calls'])), + scope='Two actual verified plain/width-seven providers dispatched per complete invocation; independent controller/spectator/normalization and complete finite invoice admission required.') +(OUT/'HOSTED.json').write_text(json.dumps(res,indent=2)+'\n');(OUT/'ACTUAL-SIGMAS.json.gz').write_bytes(gzip.compress(json.dumps(sigmas,separators=(',',':')).encode(),mtime=0));print(json.dumps(res,indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py new file mode 100644 index 0000000000..74a9b60479 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity.py @@ -0,0 +1,62 @@ +"""Proof-relevant identities for generated artifacts, independent of gzip streams. + +Immutable source archives retain their exact byte hashes. For freshly emitted +artifacts, gzip identity is the exact decompressed payload and JSON identity +retains every field. Only CLIFFORD-REVIEW's root timing field is excluded. +Literal receipt references are checked against actual files before replacing +the three gzip references (and the phase recipe reference) with content hashes. +Prepared with OpenAI Codex assistance; Apache-2.0. +""" +from pathlib import Path +import copy +import gzip +import hashlib +import json +import math + +if not __debug__: + raise RuntimeError('Assertions must remain enabled') + +FILES=('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json') + +def sha(path): + return hashlib.sha256(Path(path).read_bytes()).hexdigest() + +def json_identity(value): + return hashlib.sha256(json.dumps(value,sort_keys=True,separators=(',',':'),allow_nan=False).encode('utf-8')).hexdigest() + +def payload_identity(path): + return hashlib.sha256(gzip.decompress(Path(path).read_bytes())).hexdigest() + +def phase_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'CLIFFORD-REVIEW.json').read_bytes())if value is None else value) + assert value['canonical_word_sha256']==sha(directory/'CANONICAL-WORD.json.gz'),'stale phase canonical word reference' + assert value['recipe_sha256']==sha(directory/'CLIFFORD-RECIPES.json'),'stale phase recipe reference' + seconds=value.pop('seconds') + assert type(seconds)in(int,float) and math.isfinite(seconds) and seconds>=0,'invalid phase timing metadata' + value['canonical_word_sha256']=payload_identity(directory/'CANONICAL-WORD.json.gz') + value['recipe_sha256']=json_identity(json.loads((directory/'CLIFFORD-RECIPES.json').read_bytes())) + return value + +def native_value(directory,value=None): + directory=Path(directory) + value=copy.deepcopy(json.loads((directory/'INDEPENDENT-LOCAL-REPLAY.json').read_bytes())if value is None else value) + for field,name in [('canonical_word_sha256','CANONICAL-WORD.json.gz'),('local_programs_sha256','LOCAL-PROGRAMS.json.gz')]: + assert value[field]==sha(directory/name),'stale native artifact reference: '+field + value[field]=payload_identity(directory/name) + return value + +def artifact_identities(directory): + directory=Path(directory) + result={} + for name in FILES: + path=directory/name + if name.endswith('.gz'): + result[name]=payload_identity(path) + else: + value=phase_value(directory)if name=='CLIFFORD-REVIEW.json'else native_value(directory)if name=='INDEPENDENT-LOCAL-REPLAY.json'else json.loads(path.read_bytes()) + result[name]=json_identity(value) + return result diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py new file mode 100644 index 0000000000..b4c133c107 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/generated_identity_controls.py @@ -0,0 +1,228 @@ +"""Actual gzip/receipt portability and consistently rebound semantic controls. + +Only scratch copies of generated provider files are changed. Each assembly +control recomputes raw artifact links, all seven portable identities and the +owner/invoice digests. This tests identity admission, not a replacement for the +full physical replay. Prepared with OpenAI Codex assistance; Apache-2.0. +""" +import argparse +import copy +import gzip +import hashlib +import json +import math +import shutil +import tempfile +from pathlib import Path + +import os +assert os.environ.get('GAIN_PR564_SOURCE'), 'Explicit engine source required' +from assemble import assemble +from witness import PROVIDERS,SPOT +from generated_identity import FILES, artifact_identities, json_identity, sha + +if not __debug__: + raise RuntimeError('Assertions required; refusing optimized verification') + + +def read(path): + raw = path.read_bytes() + return json.loads(gzip.decompress(raw) if path.suffix == '.gz' else raw) + + +def write_json(path, value): + # Nonfinite numbers are emitted only by deliberate invalid-timing controls. + path.write_text(json.dumps(value, indent=2)+'\n', encoding='utf-8', newline='\n') + + +def write_gzip(path, value): + payload = json.dumps(value, sort_keys=True, separators=(',', ':')).encode() + path.write_bytes(gzip.compress(payload, compresslevel=1, mtime=123456789)) + + +def refresh_links(directory): + """Rebind only the three actual gzip references and the phase recipe link.""" + native = read(directory/'INDEPENDENT-LOCAL-REPLAY.json') + native['canonical_word_sha256'] = sha(directory/'CANONICAL-WORD.json.gz') + native['local_programs_sha256'] = sha(directory/'LOCAL-PROGRAMS.json.gz') + write_json(directory/'INDEPENDENT-LOCAL-REPLAY.json', native) + phase = read(directory/'CLIFFORD-REVIEW.json') + phase['canonical_word_sha256'] = sha(directory/'CANONICAL-WORD.json.gz') + phase['recipe_sha256'] = sha(directory/'CLIFFORD-RECIPES.json') + write_json(directory/'CLIFFORD-REVIEW.json', phase) + + +def rebound(owner, invoice, pid, directory): + """Return complete consistent receipt links to the changed actual files.""" + identities = artifact_identities(directory) + o, i = copy.deepcopy(owner), copy.deepcopy(invoice) + p = i['providers'][pid] + for name in FILES: + raw = sha(directory/name) + p['artifacts'][name] = raw + o['source_artifacts']['providers/'+pid+'/'+name] = raw + p['semantic_artifact_sha256'] = identities + o['provider_artifact_semantic_sha256'][pid] = identities + phase = identities['CLIFFORD-REVIEW.json'] + o['provider_phase_semantic_sha256'][pid] = phase + i['provider_phase_semantic_sha256'][pid] = phase + owner_hash = json_identity(o) + i['owner_audit_sha256'] = owner_hash + return o, i, owner_hash, json_identity(i), identities + + +def run(base, audit, out, provider_root=None): + assert not out.exists() + out.parent.mkdir(parents=True, exist_ok=True) + source = provider_root or base/'providers' + owner_path, invoice_path = audit/'OWNERS-AND-PROFILE.json', audit/'PREFIX-AND-INVOICE.json' + owner, invoice = read(owner_path), read(invoice_path) + baseline = assemble(owner, invoice, sha(owner_path), sha(invoice_path)) + accepted, rejected, references, source_identities = [], [], [], {} + raw_changed = {} + with tempfile.TemporaryDirectory(prefix='generated-identity-controls-', dir=out.parent) as td: + scratch = Path(td) + for pid in sorted(PROVIDERS): + original = source/pid + ids = artifact_identities(original) + assert ids == PROVIDERS[pid]['artifact_semantic_sha256'] + source_identities[pid] = dict(raw={name:sha(original/name) for name in FILES}, semantic=ids) + # The optional provider-root can use another Python/zlib environment. + o, i, oh, ih, _ = rebound(owner, invoice, pid, original) + assert assemble(o, i, oh, ih)['kappa'] == baseline['kappa'] + + def fresh(tag): + directory = scratch/(pid+'-'+tag) + directory.mkdir() + for name in FILES: + shutil.copyfile(original/name, directory/name) + return directory + + def reject_semantics(tag, mutate, changed_file): + directory = fresh(tag) + mutate(directory) + refresh_links(directory) + o, i, oh, ih, new_ids = rebound(owner, invoice, pid, directory) + assert new_ids[changed_file] != ids[changed_file], (tag, 'mutation disappeared from identity') + try: + assemble(o, i, oh, ih) + except AssertionError: + rejected.append(dict(provider=pid, case=tag, changed_identity=changed_file, + all_raw_and_semantic_links_rebound=True)) + else: + raise AssertionError('semantic mutation accepted: '+tag) + + def json_mutation(name, change): + def mutate(directory): + value = read(directory/name) + change(value) + write_json(directory/name, value) + return mutate + + directory = fresh('recompression') + changed = [] + for name in ('CANONICAL-WORD.json.gz', 'LOCAL-PROGRAMS.json.gz'): + before = (directory/name).read_bytes() + payload = gzip.decompress(before) + after = gzip.compress(payload, compresslevel=1, mtime=123456789) + assert after != before and gzip.decompress(after) == payload + (directory/name).write_bytes(after) + changed.append(name) + refresh_links(directory) + o, i, oh, ih, new_ids = rebound(owner, invoice, pid, directory) + assert new_ids == ids + assert assemble(o, i, oh, ih)['kappa'] == baseline['kappa'] + accepted.append(dict(provider=pid, case='recompressed_same_payloads', changed_raw_artifacts=changed, + all_seven_identities_unchanged=True, all_raw_links_rebound=True)) + raw_changed[pid] = {name:[sha(original/name),sha(directory/name)] for name in changed} + + # A stale literal link must fail before any normalization can hide it. + for tag, name, receipt, field in ( + ('stale_native_word_link','CANONICAL-WORD.json.gz','INDEPENDENT-LOCAL-REPLAY.json','canonical_word_sha256'), + ('stale_native_program_link','LOCAL-PROGRAMS.json.gz','INDEPENDENT-LOCAL-REPLAY.json','local_programs_sha256'), + ('stale_phase_word_link','CANONICAL-WORD.json.gz','CLIFFORD-REVIEW.json','canonical_word_sha256'), + ('stale_phase_recipe_link','CLIFFORD-RECIPES.json','CLIFFORD-REVIEW.json','recipe_sha256')): + directory = fresh(tag) + value = read(directory/receipt) + value[field] = '0'*64 + write_json(directory/receipt, value) + try: + artifact_identities(directory) + except AssertionError: + references.append(dict(provider=pid, case=tag, rejected_before_projection=True)) + else: + raise AssertionError('stale literal reference normalized away: '+tag) + + def change_scalar(directory): + programs = read(directory/'LOCAL-PROGRAMS.json.gz') + event = next(e for e in programs['forward'] if e[0]=='scalar' and e[1][0]=='add') + event[1][3] = -event[1][3] + write_gzip(directory/'LOCAL-PROGRAMS.json.gz', programs) + reject_semantics('changed_actual_scalar', change_scalar, 'LOCAL-PROGRAMS.json.gz') + + def change_frame(directory): + word = read(directory/'CANONICAL-WORD.json.gz') + r = 2*112 + SPOT[2] # PR558 helper 294 (register 518) or its helper-map image: an entering helper + old = word['start'][r] + replacement = next(j for j,f in enumerate(word['frames']) + if j != old and len(f) == len(word['frames'][old])) + word['start'][r] = replacement + write_gzip(directory/'CANONICAL-WORD.json.gz', word) + reject_semantics('changed_actual_start_frame_same_rank', change_frame, 'CANONICAL-WORD.json.gz') + reject_semantics('native_false_restoration', json_mutation('INDEPENDENT-LOCAL-REPLAY.json', + lambda x:x['local']['forward'].__setitem__('private_work_erased',False)), + 'INDEPENDENT-LOCAL-REPLAY.json') + reject_semantics('native_wrong_column_count', json_mutation('INDEPENDENT-LOCAL-REPLAY.json', + lambda x:x['local']['backward'].__setitem__('all_exact_columns',x['local']['backward']['all_exact_columns']-1)), + 'INDEPENDENT-LOCAL-REPLAY.json') + reject_semantics('native_changed_profile', json_mutation('INDEPENDENT-LOCAL-REPLAY.json', + lambda x:x['paid_profiles']['forward'].__setitem__('1',x['paid_profiles']['forward']['1']+1)), + 'INDEPENDENT-LOCAL-REPLAY.json') + reject_semantics('phase_false_global_equality', json_mutation('CLIFFORD-REVIEW.json', + lambda x:x.__setitem__('all_child_equalities_include_global_phase',False)), + 'CLIFFORD-REVIEW.json') + + # This event hash is proof data, even when its value equals a gzip hash. + def change_event_hash(directory): + value = read(directory/'LOCAL-CHECKS.json') + value['forward']['sha256'] = sha(directory/'CANONICAL-WORD.json.gz') + write_json(directory/'LOCAL-CHECKS.json', value) + assert artifact_identities(directory)['LOCAL-CHECKS.json'] == json_identity(value) + reject_semantics('local_event_hash_is_not_a_container_reference', change_event_hash, 'LOCAL-CHECKS.json') + reject_semantics('unrelated_native_root_seconds_retained', json_mutation('INDEPENDENT-LOCAL-REPLAY.json', + lambda x:x.__setitem__('seconds',7)), 'INDEPENDENT-LOCAL-REPLAY.json') + reject_semantics('nested_phase_seconds_retained', json_mutation('CLIFFORD-REVIEW.json', + lambda x:x.__setitem__('additional_evidence',{'seconds':7})), 'CLIFFORD-REVIEW.json') + + for tag,value in [('negative',-1),('boolean',True),('string','1'),('nan',float('nan')), + ('infinity',float('inf'))]: + directory = fresh('invalid-timing-'+tag) + phase = read(directory/'CLIFFORD-REVIEW.json');phase['seconds'] = value + write_json(directory/'CLIFFORD-REVIEW.json', phase) + try: + artifact_identities(directory) + except AssertionError: + references.append(dict(provider=pid,case='invalid_phase_seconds_'+tag, + rejected_before_projection=True)) + else: + raise AssertionError('invalid timing silently erased: '+tag) + n=len(PROVIDERS) + assert len(accepted)==n and len(rejected)==9*n and len(references)==9*n + assert {x['provider']for x in accepted}=={x['provider']for x in rejected}=={x['provider']for x in references}==set(PROVIDERS) + report=dict(status='PASS_GENERATED_ARTIFACT_RECOMPRESSION_AND_REBOUND_MUTATIONS', + kappa=baseline['kappa'], source_owner_sha256=sha(owner_path),source_invoice_sha256=sha(invoice_path), + source_providers=source_identities,recompression_changed_raw_hashes=raw_changed, + accepted=accepted,semantic_mutations_rejected=rejected,invalid_references_or_metadata_rejected=references, + counts=dict(recompression_accepted=n,semantic_rejected=9*n,reference_or_metadata_rejected=9*n), + scope='Actual copied gzip streams and receipt JSON are changed. All seven content identities, raw source links and owner/invoice digests are recomputed consistently before assembly. Only identical decompressed payloads are accepted; scalar, same-rank frame, native proof fields, global phase, event hashes and unrelated seconds remain pinned. Literal references and invalid phase timing are rejected before normalization. Full physical replay remains a separate prerequisite.') + write_json(out,report) + print(report['status'],report['counts']) + + +if __name__=='__main__': + parser=argparse.ArgumentParser(description=__doc__) + for name in ('base','audit','out'): + parser.add_argument('--'+name,type=Path,required=True) + parser.add_argument('--provider-root',type=Path) + args=parser.parse_args() + run(args.base,args.audit,args.out,args.provider_root) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py new file mode 100644 index 0000000000..8f77ccf02d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_adapters_local.py @@ -0,0 +1,116 @@ +"""Paid residual wrappers for entering helpers (Lemma A): generation and independent decoding. Apache-2.0. +Prepared by DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. The wrapper construction follows PR #458 +(chafreaky): a helper that starts at frame E and ends at FULL has the physical residual S_E = T_FULL T_E^-1 (apply T_E^-1 first); +S_E = L_E (C_[w] x I) R_E with R_E applied first; the wrappers R_E^-1 before the whole local invocation and L_E^-1 after its +full-frame cleanup turn the residual into the coordinate factor C_[w] x I and restore the other 9 - w coordinates identically. +usage: adapters_gk.py CANONICAL-WORD.json.gz RESIDUAL-ADAPTERS.json OUT-LEMMA-A.json +Writes the recipes (generation uses clifford_exact.lower_child) and then DECODES the serialized monomials with the primitive +constructors of clifford_exact (not lower_child) and checks, for every entrance frame, that L_E^-1 S_E R_E^-1 has exactly the +tableau and zero-state vector (global phase included) of fourier(9, range(w)); mutated recipes (wrong phase, swapped sides, wrong +translation, wrong width) must be rejected.""" +import copy, gzip, json, sys +from pathlib import Path +# Package-path adaptation only; the exact wrapper mathematics is unchanged. +import os +R = Path(os.environ['MULTICOLD_SOURCE']) / 'vendor/pr558/vendor/pr552/complex-global/vendor531' # HPE: the pinned vendor531 clifford_exact +sys.path.insert(0, str(R / 'vendor/clifford')) +from clifford_exact import canonical_frame, lower_child, fourier, diag, perm, xgate, Op, identity +n = 9; FULL = tuple(1 << i for i in range(n)) +def monomial_op(rec): + """decode a serialized monomial (matrix rows, quadratic rows, Z4 linear part, translation, phase)""" + out = diag(n, tuple(rec['quadratic_rows']), tuple(rec['linear_Z4'])).then(perm(n, tuple(rec['matrix_rows']))).then(xgate(n, rec['offset'])) + return out.then(Op(n, identity(n), [('phase', rec['phase'])])) +def S_of(U, END=FULL): + # HPE: a helper that starts at E=U and ends at END has residual T_END T_E^-1 (END = FULL is the inherited case) + return canonical_frame(n, tuple(U)).adjoint().then(canonical_frame(n, tuple(END))) +def wrapped_ok(U, rec, END=FULL): + """exactly: L^-1 S R^-1 = C_[w] x I (apply order: R^-1, S, L^-1), w = dim END - dim E""" + w = len(END) - len(U); S = S_of(U, END); Rm = monomial_op(rec['right']); Lm = monomial_op(rec['left']) + net = Rm.adjoint().then(S).then(Lm.adjoint()); target = fourier(n, range(w)) + return rec['rank'] == w and net.tab == target.tab and net.zero_state() == target.zero_state() +def _contains(a, b): + a = list(a) + for x in b: + for y in sorted(a, reverse=True): + if x >> (y.bit_length() - 1) & 1: x ^= y + if x: return False + return True +def main(): + c = json.load(gzip.open(sys.argv[1])); frames = c['frames']; v = c['v'] + starts = sorted({c['start'][r] for r in range(2 * v, len(c['start'])) if c['start'][r] != 0 and c['final'][r] == 1}) + # HPE: (entrance, terminal) pairs of helpers ending at a proper subspace; key 'E:U'. Inherited words have none. + ends = sorted({(c['start'][r], c['final'][r]) for r in range(2 * v, len(c['start'])) if c['final'][r] != 1}) + # COLD-HPE: e == 0 (a cold helper, entrance = bottom, T_0 = I) is allowed: the (0, U) recipe is keyed '0:U' + assert all(len(frames[u]) < n and _contains(frames[u], frames[e]) for e, u in ends) + cold_ends = [(e, u) for e, u in ends if e == 0] + recipes = {} + for f in starts: + U = frames[f]; rec, compiled = lower_child(S_of(U)) + recipes[str(f)] = dict(frame=f, vectors=list(U), entrance_rank=len(U), rank=rec['rank'], left=rec['left'], right=rec['right']) + for e, u in ends: + E, U = frames[e], frames[u]; rec, compiled = lower_child(S_of(E, U)) + recipes['%d:%d' % (e, u)] = dict(frame=e, terminal=u, vectors=list(E), terminal_vectors=list(U), entrance_rank=len(E), + terminal_rank=len(U), rank=rec['rank'], left=rec['left'], right=rec['right']) + Path(sys.argv[2]).write_text(json.dumps(dict(status='RESIDUAL_ADAPTER_RECIPES', recipes=recipes), sort_keys=True, separators=(',', ':')) + '\n') + # ---- independent decode of the serialized file + data = json.loads(Path(sys.argv[2]).read_text())['recipes'] + dot = lambda a, b: bin(a & b).count('1') & 1 + detail = [] + for f in starts: + rec = data[str(f)]; U = frames[f] + assert wrapped_ok(U, rec), ('wrapper product is not C_[w] x I', f) + detail.append(dict(frame=f, entrance_rank=len(U), residual_width=n - len(U), vectors=list(U), all_even_weight=all(bin(x).count('1') % 2 == 0 for x in U), + totally_isotropic=all(dot(a, b) == 0 for a in U for b in U))) + hdetail = [] + for e, u in ends: # HPE: independent decode, residual width = dim U - dim E + rec = data['%d:%d' % (e, u)]; E, U = frames[e], frames[u] + assert wrapped_ok(E, rec, U), ('HPE wrapper product is not C_[w] x I', e, u) + hdetail.append(dict(frame=e, terminal=u, entrance_rank=len(E), terminal_rank=len(U), residual_width=len(U) - len(E))) + controls = [] + def reject(name, fn): + f = starts[0]; rec = copy.deepcopy(data[str(f)]); fn(rec) + if wrapped_ok(frames[f], rec): raise AssertionError('mutated wrapper accepted: ' + name) + controls.append(name) + reject('wrong global phase', lambda r: r['right'].__setitem__('phase', (r['right']['phase'] + 1) % 4)) + reject('wrong translation', lambda r: r['left'].__setitem__('offset', r['left']['offset'] ^ 1)) + reject('wrong quadratic form', lambda r: r['right'].__setitem__('quadratic_rows', [x ^ 2 if i == 0 else x for i, x in enumerate(r['right']['quadratic_rows'])]) if False else r['right']['linear_Z4'].__setitem__(0, (r['right']['linear_Z4'][0] + 2) % 4)) + reject('sides swapped', lambda r: (r.__setitem__('left', r['right']), r.__setitem__('right', r['left']))) + reject('wrong width', lambda r: r.__setitem__('rank', r['rank'] + 1)) + if ends: # HPE controls on the first (E, U) pair + e, u = next((p for p in ends if p[0] != 0), ends[0]); rec0 = data['%d:%d' % (e, u)] # COLD-HPE: an entering pair if any (= ends[0] without cold ends) + def hreject(name, ok): + if ok: raise AssertionError('HPE mutation accepted: ' + name) + controls.append(name) + hreject('hpe: U-wrapper decoded against a FULL ending', wrapped_ok(frames[e], rec0)) + hreject('hpe: width misreported as 9 - dim E', wrapped_ok(frames[e], dict(rec0, rank=n - len(frames[e])), frames[u])) + other = next(f for f in range(len(frames)) if f != u and len(frames[f]) == len(frames[u]) and _contains(frames[f], frames[e])) + hreject('hpe: wrong terminal hyperplane', wrapped_ok(frames[e], rec0, frames[other])) + fe = next(((e2, u2) for e2, u2 in ends if str(e2) in data), None) + if fe: # an entrance shared with FULL-ended helpers: R_{E,FULL} must not serve as R_{E,U} + r2 = data['%d:%d' % fe] + hreject('hpe: pre wrapper resolved to the FULL recipe R_{E,FULL}', wrapped_ok(frames[fe[0]], dict(r2, right=data[str(fe[0])]['right']), frames[fe[1]])) + hreject('hpe: wrong global phase', wrapped_ok(frames[e], dict(rec0, left=dict(rec0['left'], phase=(rec0['left']['phase'] + 1) % 4)), frames[u])) + if cold_ends: # COLD-HPE controls on the first cold pair (0, U): factor_iff_pre says only R_{0,U} itself may precede + e, u = cold_ends[0]; recc = data['%d:%d' % (e, u)]; E, U = frames[e], frames[u] + ID = dict(matrix_rows=[1 << i for i in range(n)], offset=0, quadratic_rows=[0] * n, linear_Z4=[0] * n, phase=0) + assert monomial_op(ID).tab == identity(n) # the control's wrapper really is the identity + def creject(name, ok): + if ok: raise AssertionError('cold HPE mutation accepted: ' + name) + controls.append(name) + creject('cold hpe: identity pre wrapper instead of R_{0,U}', wrapped_ok(E, dict(recc, right=ID), U)) + creject('cold hpe: identity post wrapper instead of L_{0,U}', wrapped_ok(E, dict(recc, left=ID), U)) + creject('cold hpe: no wrappers (cold FULL convention L = R = I)', wrapped_ok(E, dict(recc, left=ID, right=ID), U)) + creject('cold hpe: U-wrapper decoded against a FULL ending', wrapped_ok(E, recc)) + creject('cold hpe: width misreported as 9', wrapped_ok(E, dict(recc, rank=n), U)) + other = next(f for f in range(len(frames)) if f != u and len(frames[f]) == len(frames[u])) + creject('cold hpe: wrong terminal hyperplane', wrapped_ok(E, recc, frames[other])) + creject('cold hpe: wrong global phase', wrapped_ok(E, dict(recc, right=dict(recc['right'], phase=(recc['right']['phase'] + 1) % 4)), U)) + ent = next((p for p in ends if p[0] != 0 and p[1] == u), None) + same = lambda x, y: monomial_op(x).tab == monomial_op(y).tab and monomial_op(x).zero_state() == monomial_op(y).zero_state() + if ent and not same(data['%d:%d' % ent]['right'], recc['right']): # an entering helper ending at the same U: its R_{E,U} must not serve as R_{0,U} + creject('cold hpe: pre wrapper resolved to an entering recipe R_{E,U}', wrapped_ok(E, dict(recc, right=data['%d:%d' % ent]['right']), U)) + res = dict(status='PASS_RESIDUAL_WRAPPERS_ARE_EXACT', frames=len(detail), **({'hyperplane_end_pairs': hdetail} if ends else {}), **({'cold_hyperplane_end_pairs': len(cold_ends)} if cold_ends else {}), wrappers_reject=controls, all_even_weight=all(d['all_even_weight'] for d in detail), + all_totally_isotropic=all(d['totally_isotropic'] for d in detail), detail=detail) + Path(sys.argv[3]).write_text(json.dumps(res, indent=1) + '\n') + print('Lemma A (exact): L^-1 S_E R^-1 = C_[w] x I for', len(detail), 'entrance frames, global phase included;', len(controls), 'wrapper mutations rejected; all-even-weight:', res['all_even_weight']) +if __name__ == '__main__': main() diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py new file mode 100644 index 0000000000..d5d3509d90 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_and_transport.py @@ -0,0 +1,304 @@ +"""Rebuild arbitrary-dirt compensation and transport a changed local word. + +Prepared for icekylinx with GPT-6 Astra assistance. Apache-2.0. +Adapted from PR425/433 (icekylinx), PR484's audit_gk.py +(DreamingOfClouds), and Round19's 112-port transport. This auditor does not +import a constructor, a nominated compensation table, or a global price. +Only the changed scalar word and its actual frame chains are checked here. +""" +import argparse +import copy +import gzip +import hashlib +import json +import time +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path + + +def read(path): + data = path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix == '.gz' else data) + + +def content_hash(path): + data = path.read_bytes() + return hashlib.sha256(gzip.decompress(data) if path.suffix == '.gz' else data).hexdigest() + + +def basis(vs): + pivots = {} + for x in vs: + for k in sorted(pivots, reverse=True): + if x >> k & 1: + x ^= pivots[k] + if x: + k = x.bit_length() - 1 + for j in pivots: + if pivots[j] >> k & 1: + pivots[j] ^= x + pivots[k] = x + return tuple(pivots[k] for k in sorted(pivots, reverse=True)) + + +def apply(e, rows): + if e[0] == 'scale': + _, target, a, b, *_ = e + q = Q(a, b) + assert q + rows[target] = {j: q*x for j, x in rows[target].items()} + else: + _, target, source, a, b, *_ = e + assert target != source + q = Q(a, b) + for j, x in list(rows[source].items()): + value = rows[target].get(j, Q(0)) + q*x + if value: + rows[target][j] = value + else: + rows[target].pop(j, None) + + +def inverse(e): + e = copy.deepcopy(e) + if e[0] == 'add': + e[3] *= -1 + else: + e[2], e[3] = e[3], e[2] + return e + + +def dual(e): + e = inverse(e) + if e[0] == 'add': + e[1], e[2] = e[2], e[1] + return e + + +def state_maps(prefix, n): + """P = exact state map of the prefix (precondition + compensation + A + cut + B), and P^-1 (rows as sparse dicts).""" + P = [{r: Q(1)} for r in range(n)] + for e in prefix: + apply(e, P) + Pinv = [{r: Q(1)} for r in range(n)] + for e in reversed(prefix): + apply(inverse(e), Pinv) + return P, Pinv + + +def cone_violations(P, Pinv, hpe, mapping, endB, final, frames): + """COLD-HPE / CONE PRE-CHECK. Necessary conditions for helper h (raw index) to end at U = final[h] under ANY + monotone common-frame cleanup of the end-of-B state P (frames only climb, every gate at a common frame): + row (J26-H dependency bound): every g in supp(row h of P^-1) has end-of-B frame <= U -- h is rebuilt from them; + column (dirt-column lemma): every g != h with P[g][h] != 0 has end-of-B frame <= U -- the column of P at h, + restricted to rows whose frame is not <= U, changes only by invertible row operations unless h is read at a + frame not <= U, so it can reach e_h only if it is already zero there. + Both are implied by the exact endpoint replay plus the frame checks below; here they fail FAST, with the reason.""" + inside = lambda a, b: basis(frames[a] + frames[b]) == frames[b] + viol = [] + for h in hpe: + U = final[mapping[h]] + viol += [('row', h, g) for g, x in sorted(Pinv[h].items()) if x and not inside(endB[mapping[g]], U)] + viol += [('column', h, g) for g in range(len(P)) if g != h and P[g].get(h) and not inside(endB[mapping[g]], U)] + return viol + + +def run(raw_path, routing_path, out): + start_time = time.monotonic() + word, routing = read(raw_path), read(routing_path) + v, h, helpers = word['report']['v'], word['report']['h'], word['report']['R'] + assert h == 9 and v == 112 and routing['v'] == v + n = 2*v + helpers + ident = lambda: [{r: Q(1)} for r in range(n)] + main = word['A'] + word['cut'] + word['B'] + assert all(not v <= e[2] < 2*v for e in word['A'] + word['B'] + if e[0] == 'add' and not v <= e[1] < 2*v) + matrix = ident() + for e in main: + apply(e, matrix) + dirty = [{} for _ in range(n)] + for r in range(v, 2*v): + dirty[r] = {j: x for j, x in matrix[r].items() if j >= 2*v} + for e in word['precondition']: + apply(e, dirty) + compensation = [['add', r, j, -q.numerator, q.denominator, []] + for r in range(v, 2*v) for j, q in sorted(dirty[r].items())] + entering = set(map(int, word.get('start_extra', {}))) + assert all(e[2] not in entering for e in compensation), 'zero-frame compensation reads an entering helper' + cleanup = [inverse(e) for e in reversed(word['A'] + word['B']) + if not v <= e[1] < 2*v] + if 'refactored_cleanup' in word: + # REFACTORED CLEANUP (cold low-frame ends): the cleanup is not the literal reversed inverse of A+B but another exact + # factorisation of the same inverse. Nothing about it is trusted: it may only touch non-target registers (T rows + # stay the compensated data accumulators), every gate is dyadic (checked below), and the arbitrary-dirt endpoint + # replay below must be exact in BOTH orientations for the full reordered program. Inherited words keep the literal + # assertion (the else branch), so their outputs are unchanged. + assert all(not v <= r < 2*v for e in word['cleanup'] for r in ([e[1]] + ([e[2]] if e[0] == 'add' else []))), 'refactored cleanup touches a target' + assert all(e[0] in ('add', 'scale') for e in word['cleanup']) + cleanup = word['cleanup'] + else: + assert [e[:-1] for e in cleanup] == [e[:-1] for e in word['cleanup']], 'cleanup is not the literal reversed inverse of A+B' + # HPE: hyperplane-ended helpers. 'early_cleanup' = [[cleanup index, frame vectors], ...] are cleanup gates executed + # right after B (before the final climbs) at the given frame; 'helper_final' = {helper: frame vectors} replaces FULL as + # that helper's terminal frame. The scalar program is the reordered one and is replayed exactly below, so a move that + # does not commute with the skipped cleanup prefix is rejected by the arbitrary-dirt endpoint assertion. + early = [(int(i), f) for i, f in word.get('early_cleanup', [])] + helper_final = {int(r): f for r, f in word.get('helper_final', {}).items()} + early_idx = [i for i, _ in early] + assert len(set(early_idx)) == len(early_idx) and all(0 <= i < len(cleanup) for i in early_idx) + assert all(2*v <= r < n for r in helper_final) + # COLD-HPE: a COLD helper (not in start_extra, entrance frame 0 = bottom) may also end at a proper subspace U. + # It is the E = bottom instance of #593's theorems: its wrappers are the (0, U) recipes R_{0,U}, L_{0,U} (checked + # exactly by hpe_adapters_local), emitted as residual_adapter events like an entering helper's. + cold_hpe = sorted(r for r in helper_final if r not in entering) + # COLD-HPE wrapper order: R_{0,U}^-1 is emitted with the entry adapters, after the zero-frame precondition and + # compensation, so (exactly as for an entering helper, asserted above) nothing before it may touch a cold-ended helper. + assert all(r not in set(cold_hpe) for e in word['precondition'] + compensation for r in ([e[1]] + ([e[2]] if e[0] == 'add' else []))), 'zero-frame precondition/compensation touches a cold hyperplane-ended helper before its wrapper' + # ENTERING helpers (start frame E != 0): their wrapper R_E^-1 precedes every gate on them, so the zero-frame precondition + # and compensation may not touch them either (mirrors hpe_emit_local's start-frame-0 rule here, at the scalar audit). + assert all(r not in entering for e in word['precondition'] + compensation for r in ([e[1]] + ([e[2]] if e[0] == 'add' else []))), 'zero-frame precondition/compensation touches an entering helper' + tail =[word['cleanup'][i][:-1] + [f] for i, f in early] + rest = [e for i, e in enumerate(word['cleanup']) if i not in set(early_idx)] + program = word['precondition'] + compensation + main + tail + rest + for backward in (False, True): + actual = ident() + for e in program: + apply(dual(e) if backward else e, actual) + expected = ident() + for t in range(v): + expected[t if backward else v+t][v+t if backward else t] = Q(-1 if backward else 1) + assert actual == expected, ('arbitrary-dirt endpoint', backward) + # The native scalar compiler allows dyadic additions and signed binary scales. + for e in program: + q = Q(e[3], e[4]) if e[0] == 'add' else Q(e[2], e[3]) + assert q.denominator & (q.denominator-1) == 0 + if e[0] == 'scale': + a = abs(q.numerator) + assert a and a & (a-1) == 0 + + tau = lambda x: x ^ (43 if (x & 43).bit_count() % 2 else 0) + ports = routing['ports'] + assert len(set(ports)) == v and set(map(tau, word['ports'])) == set(ports) + mapping = {i: ports.index(tau(p)) for i, p in enumerate(word['ports'])} + mapping.update({v+i: v+mapping[i] for i in range(v)}) + mapping.update({r: r for r in range(2*v, n)}) + full = tuple(1 << i for i in range(h-1, -1, -1)) + frames, frame_ids = [(), full], {(): 0, full: 1} + + def fid(vectors): + frame = basis(vectors) + if frame not in frame_ids: + frame_ids[frame] = len(frames) + frames.append(frame) + return frame_ids[frame] + + def transform(e): + e = copy.deepcopy(e) + e[1] = mapping[e[1]] + if e[0] == 'add': + e[2] = mapping[e[2]] + if e[-1] is not None: + e[-1] = fid([tau(x) for x in e[-1]]) + return e + + canonical = {key: [transform(e) for e in word[key]] + for key in ('A', 'B', 'cut', 'cleanup', 'precondition')} + canonical['compensation'] = [transform(e) for e in compensation] + if tail: + canonical['tail'] = [transform(e) for e in tail] # HPE (absent for inherited words: identical output) + canonical['cleanup'] = [transform(e) for e in rest] # HPE (full cleanup minus the early gates) + canonical['start'] = [fid([p]) for p in ports] + [0]*(v+helpers) + for r, frame in word.get('start_extra', {}).items(): + assert 2*v <= int(r) < n + canonical['start'][int(r)] = fid([tau(x) for x in frame]) + canonical['final'] = ([1]*v + + [fid(x for x in range(1, 1 << h) if (x & p).bit_count() % 2 == 0) for p in ports] + + [1]*helpers) + for r, frame in helper_final.items(): # HPE + canonical['final'][r] = fid([tau(x) for x in frame]) + canonical.update(h=h, v=v, R=helpers, ports=ports, frames=frames, + centers=[mapping[r] for r in word['centers']], + center_frames=[fid(tau(x) for x in frame) for frame in word['center_frames']]) + levels = {mapping[v+int(t)]-v: fid(tau(x) for x in frame) + for t, frame in word.get('target_levels', {}).items()} + canonical['target_levels'] = {str(t): f for t, f in levels.items()} + current, paid, edges = canonical['start'].copy(), Counter(), set() + + def climb(r, f): + old = current[r] + assert basis(frames[old] + frames[f]) == frames[f], ('nonmonotone', r, old, f) + if old != f: + degree = len(frames[f]) - len(frames[old]) + assert degree > 0 + paid[degree] += 1 + edges.add((old, f)) + current[r] = f + + for part in ('A', 'B'): + if part == 'B': + assert all(current[r] == f for r, f in zip(canonical['centers'], canonical['center_frames'])) + assert all(current[v+t] == levels.get(t, 0) for t in range(v)) + for r, frame in zip(canonical['centers'], canonical['center_frames']): + served = {levels.get(e[1]-v, 0) for e in canonical['cut'] if e[2] == r} + old = frame + for f in sorted(served, key=lambda f: -len(frames[f])): + assert basis(frames[old] + frames[f]) == frames[old] + if old != f: + paid[len(frames[old])-len(frames[f])] += 1 + edges.add((old, f)) + edges.add((f, old)) + old = f + for e in canonical[part]: + for r in [e[1]] + ([e[2]] if e[0] == 'add' else []): + climb(r, e[-1]) + if helper_final: # COLD-HPE / CONE PRE-CHECK at the end-of-B frames + P, Pinv = state_maps(word['precondition'] + compensation + main, n) + cone = cone_violations(P, Pinv, sorted(helper_final), mapping, current.copy(), canonical['final'], frames) + assert not cone, ('hpe cone pre-check (row / column)', cone[:8]) + for e in canonical.get('tail', []): # HPE: early cleanup gates at their common frame + for r in [e[1]] + ([e[2]] if e[0] == 'add' else []): + climb(r, e[-1]) + for r, f in enumerate(canonical['final']): + climb(r, f) + # HPE: the remaining cleanup runs at FULL, so it may touch only registers whose terminal frame is FULL; a + # hyperplane-ended helper is touched by nothing after its tail gates. + for e in canonical['cleanup']: + assert all(canonical['final'][r] == 1 for r in [e[1]] + ([e[2]] if e[0] == 'add' else [])), ('cleanup on non-FULL end', e) + assert all(len(frames[canonical['final'][r]]) < h for r in helper_final) + assert dict(paid) == {int(r): count for r, count in word['report']['local_profile'].items()}, 'paid local profile differs from the reported local_profile' + canonical['local_profile'] = dict(sorted(paid.items())) + canonical['edges'] = sorted(edges) + out.mkdir(parents=True, exist_ok=False) + payload = json.dumps(canonical, sort_keys=True, separators=(',', ':')).encode() + (out/'CANONICAL-WORD.json.gz').write_bytes(gzip.compress(payload, mtime=0)) + (out/'FULL-WORD.json.gz').write_bytes(gzip.compress(json.dumps(word, sort_keys=True, separators=(',', ':')).encode(), mtime=0)) + receipt = dict(status='PASS_CHANGED_WORD_ALL_COLUMNS_AND_NATIVE_FRAMES', + input_content_sha256=content_hash(raw_path), routing_content_sha256=content_hash(routing_path), + canonical_content_sha256=hashlib.sha256(payload).hexdigest(), + live_columns_each_orientation=n, helpers=helpers, + compensation_additions=len(compensation), scalar_operations=len(program), + center_rank_sum=sum(map(len, word['center_frames'])), + local_profile=dict(sorted(paid.items())), local_rank_mass=sum(r*z for r, z in paid.items()), + widths=[len(frames[canonical['final'][r]])-len(frames[canonical['start'][r]]) for r in range(2*v, n)], + frames=len(frames), directed_edges=len(edges), + tau=43, target_port_order_matches_baseline=True, + seconds=time.monotonic()-start_time, + scope='Fresh exact forward and inverse-transpose scalar replay on every arbitrary input; all native frame chains and dyadic primitives. Phase lowering, wrappers, global owners and global assembly are separate.') + if tail or helper_final: + receipt.update(hyperplane_ended_helpers=sorted(helper_final), early_cleanup_gates=len(tail)) + if cold_hpe: # COLD-HPE (absent for words without cold ends) + receipt.update(cold_hyperplane_ended_helpers=cold_hpe) + if 'refactored_cleanup' in word: # REFACTORED CLEANUP (absent for inherited words) + receipt.update(refactored_cleanup_gates=len(word['cleanup']), refactored_cleanup=word['refactored_cleanup']) + (out/'SCALAR-FRAME-AUDIT.json').write_text(json.dumps(receipt, indent=2)+'\n') + print(json.dumps({k: value for k, value in receipt.items() if k != 'widths'}, indent=2), flush=True) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument('--raw', type=Path, required=True) + parser.add_argument('--routing', type=Path, required=True) + parser.add_argument('--out', type=Path, required=True) + args = parser.parse_args() + run(args.raw, args.routing, args.out) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py new file mode 100644 index 0000000000..17bccb64fd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_audit_local.py @@ -0,0 +1,171 @@ +# Local-only extraction of the attributed PR514 / PR433 independent replay. +# Prepared for icekylinx with OpenAI Codex assistance. Apache-2.0. +# The complete local checker and its negative controls are retained verbatim. +# Global hosting is verified separately for the changed 112-port geometry. +import copy,gzip,hashlib,json,sys +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path +OUT=Path(sys.argv[1]) +c=json.load(gzip.open(OUT/'CANONICAL-WORD.json.gz')) +ir={'local_programs':json.load(gzip.open(OUT/'LOCAL-PROGRAMS.json.gz'))} +v,R,h=c['v'],c['R'],c['h'];n=2*v+R;frames=c['frames'] +levels={int(t):f for t,f in c.get('target_levels',{}).items()} +entering=[r for r,f in enumerate(c['start']) if r>=2*v and f!=0] +plain={r for r in range(n) if r not in set(entering)} + +def contains(a,b): + for x in a: + for y in b: + if x>>(y.bit_length()-1)&1:x^=y + if x:return False + return True +hpe={r for r in range(2*v,n) if c['final'][r]!=1} # HPE: helpers whose terminal frame is a proper subspace U of FULL +assert all(len(frames[c['final'][r]])0 + hist[rank]+=1;cur[r]=b + elif tag=='center': + _,k,a,b,rank=event + assert phases[-1]=='centers' and private=={('C',k):a} + cf=c['center_frames'][k];cr=len(frames[cf]) + # GK: stepwise descent cf -> served levels -> lowest (forward), reversed ascent (backward); each step is a nested child + assert contains(frames[a],frames[b]) if back else contains(frames[b],frames[a]) + assert rank==abs(len(frames[a])-len(frames[b]))>0 + chain.setdefault(k,[]).append((a,b)) + private['C',k]=b;hist[rank]+=1;centers.append(k) + elif tag=='scalar': + _,e,f=event;op=e[0];target=tuple(e[1]);source=tuple(e[2]) if op in ('copy','add') else None + if target[0]=='C' and op=='clear': + assert private.get(target,f)==f + private.pop(target,None) + else: + for r in (target,source): + if r is None:continue + if r[0]=='L':assert cur[r[1]]==f and (r[1] not in wset or (r[1] in pre_seen and r[1] not in post_seen)),('common frame / wrapper order',r,cur[r[1]],f) + else: + if r==target and r not in private:private[r]=f + assert private[r]==f + if op=='clear':rows[target]={};norm[target]=Q(0) + elif op=='copy':rows[target]=dict(rows[source]);norm[target]=norm[source] + elif op=='scale': + q=Q(e[2],e[3]);a,b=abs(q.numerator),q.denominator + assert a&(a-1)==0 and b&(b-1)==0 + rows[target]={j:q*x for j,x in rows[target].items()};norm[target]*=abs(q) + else: + q=Q(e[3],e[4]);a,b=abs(q.numerator),q.denominator + assert source!=target and b&(b-1)==0 + # Independent symbolic replay of the cleared coefficient work. + w=0 + for bit in bin(a)[2:]:w=2*w+int(bit) + assert Q(w,b)*(1 if q>0 else -1)==q + prefix=max(prefix,Q(a)*norm[source]) + norm[target]=norm.get(target,Q(0))+abs(q)*norm[source] + row=rows.setdefault(target,{}) + for j,x in list(rows[source].items()): + z=row.get(j,Q(0))+q*x + if z:row[j]=z + else:row.pop(j,None) + prefix=max(prefix,norm[target]) + else:raise AssertionError(tag) + assert phases==allowed and set(centers)==set(range(len(c['centers']))) and not private + assert sorted(r for k,r,_ in wrappers if k=='pre')==wrapped and sorted(r for k,r,_ in wrappers if k=='post')==wrapped # GK + for k,st in chain.items(): # GK: the steps of each centre chain link up and end at the centre frame + cf=c['center_frames'][k] + if back:assert st[-1][1]==cf and all(st[i][1]==st[i+1][0] for i in range(len(st)-1)) + else:assert st[0][0]==cf and all(st[i][1]==st[i+1][0] for i in range(len(st)-1)) + assert all(not row for reg,row in rows.items() if reg[0]=='C') + for r in range(n): + expected={r:Q(1)} + if back and r i0])) +reject('early gate frame below its registers\' frames', lambda w: w['early_cleanup'][0].__setitem__(1, U0[:-1])) +reject('hyperplane end on a non-entering helper', lambda w: (w['start_extra'].pop(h0))) +reject('profile not updated (paid climbs misreported)', lambda w: w['report']['local_profile'].__setitem__('1', w['report']['local_profile']['1']-3)) +reject('profile without 8 partner U->FULL climb charges', lambda w: w['report']['local_profile'].__setitem__('1', w['report']['local_profile']['1']-8)) +reject('duplicate early gate', lambda w: w['early_cleanup'].append(list(w['early_cleanup'][0]))) + +# Constructor controls for build_hpe's commutation rule (an early gate h -= p may skip earlier cleanup gates on p only +# when they commute with it, i.e. only read p). base = the word without its hyperplane ends; a skipped gate that WRITES +# the partner (an addition into p or a scale of p) or touches h must make build_hpe.apply refuse the recipe, while a +# skipped gate that only reads p is accepted. +import build_hpe +base = copy.deepcopy(word); base.pop('early_cleanup'); base.pop('helper_final') +hf = {int(h) for h in word['helper_final']} +changes = [] +for i, U in word['early_cleanup']: # pair each early gate with its helper via the gate's target + h = cl[i][1] + assert h in hf and word['helper_final'][str(h)] == U + changes.append(dict(helper=h, cleanup_index=i, frame=U)) +z0 = changes[0]; g0 = cl[z0['cleanup_index']]; p0 = g0[2] +x0 = next(r for r in range(2*v, n) if r not in {z['helper'] for z in changes} | {cl[z['cleanup_index']][2] for z in changes}) +NONCOMMUTE = 'cleanup gate does not commute with the skipped cleanup gates on its registers' +ONEGATE = 'helper must have exactly this one cleanup gate' + + +def build_with(w): + return build_hpe.apply(w, changes) + + +def inserted(pre): + """base with gate `pre` inserted at cleanup position 0; the changes' indices shift by one""" + w = copy.deepcopy(base); w['cleanup'].insert(0, pre) + return w, [dict(z, cleanup_index=z['cleanup_index'] + 1) for z in changes] + + +def cfail(name, w, ch, expect): + """the constructor must refuse with the pinned message `expect`""" + try: + build_hpe.apply(w, ch) + except AssertionError as e: + assert expect in str(e), ('constructor control %r failed with the wrong message: %s' % (name, e)) + results.append('constructor: ' + name); print('rejected constructor:', name, '--', expect, flush=True); return + raise AssertionError('HPE constructor mutation accepted: ' + name) + + +build_hpe.apply(*inserted(['add', x0, p0, -1, 1, FULL])) # positive: a skipped gate that only reads the partner commutes +cfail('skipped cleanup gate adds into the partner', *inserted(['add', p0, x0, -1, 1, FULL]), NONCOMMUTE) +cfail('skipped cleanup gate scales the partner', *inserted(['scale', p0, -1, 1, FULL]), NONCOMMUTE) +cfail('extra cleanup gate reading the helper (one-gate rule)', *inserted(['add', x0, z0['helper'], -1, 1, FULL]), ONEGATE) +cfail('extra cleanup gate adding into the helper (one-gate rule)', *inserted(['add', z0['helper'], x0, -1, 1, FULL]), ONEGATE) +# Real helpers admitted only by the commutation rule: their partner has an earlier cleanup gate x -= p (reads p). +# Flipping that gate in place to p -= x (writes p) must be refused by the commutation assert. +first = {} +for i, e in enumerate(cl): + for r in regs(e): first.setdefault(r, i) +relaxed = [z for z in changes if any(first[r] < z['cleanup_index'] for r in regs(cl[z['cleanup_index']]))] +for z in relaxed: + i = z['cleanup_index']; p = cl[i][2] + j = next(j for j in range(i) if p in regs(cl[j])) + e = cl[j]; assert e[0] == 'add' and e[2] == p and e[1] != p, ('skipped gate on a relaxed helper is not a reader', j, e) + build_hpe.apply(copy.deepcopy(base), changes) # positive: the real word's own changes + w = copy.deepcopy(base); w['cleanup'][j] = ['add', p, e[1]] + e[3:] + cfail('real helper %d: skipped gate %d flipped from %d -= %d to %d -= %d' % (z['helper'], j, e[1], p, p, e[1]), w, changes, NONCOMMUTE) +print('relaxed helpers', [z['helper'] for z in relaxed], flush=True) +outdir.mkdir(parents=True, exist_ok=True) +(outdir/'HPE-ATC-CONTROLS.json').write_text(json.dumps(dict(status='PASS_HPE_RAW_WORD_CONTROLS', word=str(src), rejected=results), indent=1) + '\n') +print('PASS', len(results), 'HPE raw-word mutations rejected') diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py new file mode 100644 index 0000000000..534fdc71f7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/code/hpe_emit_local.py @@ -0,0 +1,163 @@ +# GK: modified copy of PR #433's complex_emit.py (icekylinx with Codex assistance; PR #425) by DreamingOfClouds with Claude Opus 5.5 +# (Anthropic), via Claude Code. Every change is marked "GK:". On a word without start_extra / target_levels the behaviour +# and every written file equal PR #433's (regression anchor in verify.py). +import sys as _sys, os as _os; _sys.path.insert(0, _os.path.dirname(_os.path.abspath(__file__))) +# Adapted from PR425 by icekylinx with Codex assistance. +"""Emit both local programs, integrate the fixed nine-stage geometry, and bill. + +The expanded scalar interface is justified in PROOF.txt. This script does not +claim a Lean proof or discharge the inherited all-size/analytic interfaces. +""" +import copy,gzip,hashlib,importlib.util,json,math +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path + +OUT=Path(_sys.argv[1]);cp=OUT/'CANONICAL-WORD.json.gz' +c=json.load(gzip.open(cp)) +frames=c['frames'];v,R,h=c['v'],c['R'],c['h'];n=2*v+R +def digest(x):return hashlib.sha256(json.dumps(x,sort_keys=True,separators=(',',':')).encode()).hexdigest() +def basis(vs): + b={} + for x in vs: + for p in sorted(b,reverse=True): + if x>>p&1:x^=b[p] + if x: + p=x.bit_length()-1 + for q in b: + if b[q]>>p&1:b[q]^=x + b[p]=x + return tuple(b[p] for p in sorted(b,reverse=True)) +def dual(e): + e=list(e) + if e[0]=='add':e[1],e[2]=e[2],e[1];e[3]*=-1 + else:e[2],e[3]=e[3],e[2] + return e +def scalar(e,back): + e=dual(e) if back else list(e) + if e[0]=='add':return ['add',['L',e[1]],['L',e[2]],e[3],e[4]] + return ['scale',['L',e[1]],e[2],e[3]] +def primitive_bound(e): + if e[0] in ('clear','copy'):return 1 + q=Q(e[3],e[4]) if e[0]=='add' else Q(e[2],e[3]) + a,b=abs(q.numerator),q.denominator + assert b&(b-1)==0 + if e[0]=='scale': + assert a&(a-1)==0 + return abs(a.bit_length()-b.bit_length())+int(q<0) + # Exact binary Horner multiplication on a cleared private stream, repeated + # halving, signed accumulation into the target, then clear the private stream. + return 3+(a.bit_length()-1)+a.bit_count()+(b.bit_length()-1) + +def emit(back): + out=[];cur=c['start'].copy() + def event(e):out.append(e) + def scal(e,f):event(['scalar',e,f]) + event(['phase','zero_frame_precondition']) + for e in c['precondition']+c['compensation']: + regs=[e[1]]+([e[2]] if e[0]=='add' else []) + assert all(c['start'][r]==0 for r in regs) + scal(scalar(e,back),0) + event(['phase','entry_adapters']) + # GK: a helper that starts at a nonzero entrance frame has NO entry adapter; its paid wrapper R_E^-1 (Lemma A) precedes every gate + # that touches it and L_E^-1 follows the full-frame cleanup. Words without entrances emit PR #433's events. + entering=[r for r,f in enumerate(c['start']) if r>=2*v and f!=0] + hpe={r for r in range(2*v,n) if c['final'][r]!=1} # HPE: hyperplane-ended helpers (terminal frame != FULL) + # COLD-HPE: a cold helper (start frame 0) ending at U also carries the paid wrappers R_{0,U}^-1 / L_{0,U}^-1 (the + # E = bottom instance of #593); without cold ends wrapped == entering and the event stream is the inherited one. + wrapped=sorted(set(entering)|hpe) + for r,f in enumerate(c['start']): + if r in wrapped:event(['residual_adapter','pre',r,f]+([c['final'][r]] if c['final'][r]!=1 else [])) # HPE: R_{E,U}^-1 names U + else:event(['adapter','old_to_new',r,f]) + def climb(r,f,part): + old=cur[r] + if old==f:return + assert basis(frames[old]+frames[f])==tuple(frames[f]) + rank=len(frames[f])-len(frames[old]);assert rank>0 + event(['climb',part,r,old,f,rank]);cur[r]=f + # HPE: 'cleanup_tail' = early cleanup gates at their own frames; emitted only when the word has them, so a word + # without hyperplane-ended helpers yields exactly the inherited event stream. + for part in ('A','centers','B')+(('cleanup_tail',) if c.get('tail') else ())+('final',): + event(['phase',part]) + if part in ('A','B','cleanup_tail'): + for e in (c['tail'] if part=='cleanup_tail' else c[part]): + regs=[e[1]]+([e[2]] if e[0]=='add' else []) + for r in regs:climb(r,e[-1],part) + scal(scalar(e,back),e[-1]) + elif part=='centers': + # GK: targets sit at their nonzero-frame-compensation level (0 at the defaults); a centre copy descends + # cf -> served levels (descending chain) -> lowest served level and scatters into each target at its level + lv=lambda r:c.get('target_levels',{}).get(str(r-v),0) + assert all(cur[r]==lv(r) for r in range(v,2*v)) + for k,r in enumerate(c['centers']): + cf=c['center_frames'][k];assert cur[r]==cf + terms=[e for e in c['cut'] if e[2]==r] + path=[cf]+sorted({lv(e[1]) for e in terms}-{cf},key=lambda x:-len(frames[x])) + C=['C',k] + if not back: + scal(['clear',C],cf);scal(['copy',C,['L',r]],cf) + for a in range(len(path)): + if a>0:event(['center',k,path[a-1],path[a],len(frames[path[a-1]])-len(frames[path[a]])]) + for e in terms: + if lv(e[1])==path[a]:scal(['add',['L',e[1]],C,e[3],e[4]],path[a]) + scal(['clear',C],path[-1]) + else: + scal(['clear',C],path[-1]) + for a in range(len(path)-1,-1,-1): + for e in terms: + if lv(e[1])==path[a]:scal(['add',C,['L',e[1]],e[3],e[4]],path[a]) + if a>0:event(['center',k,path[a],path[a-1],len(frames[path[a-1]])-len(frames[path[a]])]) + scal(['add',['L',r],C,-1,1],cf);scal(['clear',C],cf) + else: + for r,f in enumerate(c['final']):climb(r,f,part) + event(['phase','exit_adapters']) + for r,f in enumerate(c['final']): + if r not in hpe:event(['adapter','new_to_old',r,f]) # HPE: no old-convention exit for a helper that ends at U; its post wrapper is L_{E,U}^-1 + event(['phase','full_frame_cleanup']) + for e in c['cleanup']: + regs=[e[1]]+([e[2]] if e[0]=='add' else []) + assert all(c['final'][r]==1 for r in regs) + scal(scalar(e,back),1) + for r in wrapped:event(['residual_adapter','post',r,c['start'][r]]+([c['final'][r]] if r in hpe else [])) # HPE: 5th field = terminal frame U # GK: L_E^-1 after the full-frame cleanup + event(['phase','done']) + return out + +def check_local(events,back): + # Literal scalar replay of the emitted stream, including center lifetimes. + state={('L',r):{r:Q(1)} for r in range(n)};live=[];paid=Counter();prims=0;macros=0 + for e in events: + if e[0]=='climb':assert not live;paid[e[5]]+=1 + elif e[0]=='center':assert live==[e[1]];paid[e[4]]+=1 + elif e[0]=='scalar': + op=e[1];tag=op[0];t=tuple(op[1]);macros+=1;prims+=2*primitive_bound(op) + if tag=='clear': + state[t]={} + if t[0]=='C' and t[1] in live:live.remove(t[1]) + elif tag=='copy':state[t]=dict(state.get(tuple(op[2]),{}));live.append(t[1]) + elif tag=='scale':state[t]={j:Q(op[2],op[3])*x for j,x in state[t].items()} + else: + s=tuple(op[2]);q=Q(op[3],op[4]);row=state.setdefault(t,{}) + if t[0]=='C' and t[1] not in live:live.append(t[1]) + for j,x in list(state.get(s,{}).items()): + z=row.get(j,Q(0))+q*x + if z:row[j]=z + else:row.pop(j,None) + assert not live and all(not row for r,row in state.items() if r[0]=='C') + for r in range(n): + expected={r:Q(1)} + if back and r PR552 -> +PR531 invoice_final.py, whose notices and sources are preserved in the package. +Every call selects a hash-bound provider. Shared compiler reserves use maxima; +primitive work, coefficient work, local children and wrappers are also summed +from actual selected provider/orientation records. +""" +import argparse, gzip, hashlib, json +import sys as _s,pathlib as _p;_s.path.insert(0,str(_p.Path(__file__).resolve().parent)) +from witness import * +from generated_identity import artifact_identities +from collections import Counter +from fractions import Fraction as Q +from pathlib import Path +assert __debug__, 'Assertions required' + +def read(path): + data=path.read_bytes() + return json.loads(gzip.decompress(data) if path.suffix=='.gz' else data) +def filehash(path): return hashlib.sha256(path.read_bytes()).hexdigest() +def contenthash(path): + data=path.read_bytes() + return hashlib.sha256(gzip.decompress(data) if path.suffix=='.gz' else data).hexdigest() +def programhash(events): + return hashlib.sha256(json.dumps(events,separators=(',',':')).encode()).hexdigest() + +def recount_provider(local_dir, registry): + cp=local_dir/'CANONICAL-WORD.json.gz'; pp=local_dir/'LOCAL-PROGRAMS.json.gz' + rp=local_dir/'INDEPENDENT-LOCAL-REPLAY.json' + w,programs,replay=read(cp),read(pp),read(rp) + checks=read(local_dir/'LOCAL-CHECKS.json') + assert set(programs)=={'forward','backward'} + assert replay['status']=='PASS_INDEPENDENT_LOCAL_SCALAR_FRAME_AND_WRAPPER_REPLAY' + assert replay['canonical_word_sha256']==filehash(cp)==registry['canonical_word_sha256'] + assert replay['local_programs_sha256']==filehash(pp)==registry['local_programs_sha256'] + assert programs==registry['local_programs'] + assert checks==registry['local_program_checks'] + assert filehash(local_dir/'CLIFFORD-RECIPES.json')==registry['exact_local_clifford_recipe_sha256'] + assert filehash(local_dir/'RESIDUAL-ADAPTERS.json')==registry['residual_adapter_sha256'] + v,helpers,h,m=w['v'],w['R'],w['h'],73 + assert (v,h)==(112,9) and type(helpers) is int and helpers>0 + assert registry['v']==v and registry['R']==helpers and registry['h']==h + assert registry['ports']==w['ports'] and registry['centers']==w['centers'] + assert replay['v']==v and replay['helpers']==helpers + n=2*v+helpers + widths = [len(w['frames'][w['final'][r]])-len(w['frames'][w['start'][r]]) for r in range(2*v, 2*v+helpers)] # HPE: |final|-|start| + terminal_codim = sum(h-len(w['frames'][w['final'][r]]) for r in range(2*v, 2*v+helpers)) # HPE: 0 for FULL-ended helpers + ends = {r: f for r, f in enumerate(w['final']) if r >= 2*v and f != 1} + assert len(widths) == helpers + entrances = {r: f for r, f in enumerate(w['start']) if r >= 2*v and f != 0} + entering = len(entrances) + wrapped = {**entrances, **{r: 0 for r in ends if r not in entrances}} # COLD-HPE: cold hyperplane-ended helpers carry wrappers too + cold_ends = len(wrapped) - len(entrances) + assert entering == replay['entering_helpers'] + local = {} + for orientation, events in programs.items(): + # Endpoint equality and native frames were already independently + # replayed on all n columns in the hash-bound receipt above. + env = {('L', r): Q(1) for r in range(n)} + peak = Q(1) + real = macros = workops = 0 + paid = Counter() + wrappers = {'pre': set(), 'post': set()} + for event in events: + tag = event[0] + if tag == 'climb': + paid[event[5]] += 1 + elif tag == 'center': + paid[event[4]] += 1 + elif tag == 'residual_adapter': + _, kind, register, frame, *end = event + assert kind in wrappers and wrapped.get(register) == frame + assert end == ([ends[register]] if register in ends else []) # HPE: R_{E,U}^-1 and L_{E,U}^-1 name U + assert register not in wrappers[kind] + wrappers[kind].add(register) + elif tag == 'scalar': + macros += 1 + scalar = event[1] + op, target = scalar[0], tuple(scalar[1]) + if op == 'clear': + env[target] = Q(0) + count = 1 + elif op == 'copy': + env[target] = env[tuple(scalar[2])] + count = 1 + elif op == 'scale': + q = Q(scalar[2], scalar[3]) + numerator, denominator = abs(q.numerator), q.denominator + assert numerator and numerator & (numerator-1) == 0 + assert denominator & (denominator-1) == 0 + env[target] *= abs(q) + count = abs(numerator.bit_length()-denominator.bit_length()) + int(q < 0) + elif op == 'add': + source = tuple(scalar[2]) + q = Q(scalar[3], scalar[4]) + numerator, denominator = abs(q.numerator), q.denominator + assert source != target and numerator > 0 + assert denominator & (denominator-1) == 0 + acc, count = 0, 1 # clear coefficient work + for i, bit in enumerate(bin(numerator)[2:]): + if i: + acc *= 2 + count += 1 + peak = max(peak, acc*env[source]) + if bit == '1': + acc += 1 + count += 1 + peak = max(peak, acc*env[source]) + value = Q(acc) + for _ in range(denominator.bit_length()-1): + value /= 2 + count += 1 + peak = max(peak, value*env[source]) + assert value == abs(q) + count += 2 # signed accumulation and work clear + env[target] = env.get(target, Q(0)) + abs(q)*env[source] + workops += count + else: + raise AssertionError(op) + real += 2*count + peak = max(peak, env[target]) + else: + assert tag in ('adapter', 'phase') + assert wrappers['pre'] == wrappers['post'] == set(wrapped) + assert all(value == 0 for register, value in env.items() if register[0] == 'C') + prior = replay['local'][orientation] + assert prior['all_exact_columns'] == n and prior['private_work_erased'] + assert peak == Q(prior['prefix_l1_upper']) and peak < 2**prior['charged_payload_bits'] + bits = peak.numerator.bit_length()-peak.denominator.bit_length()+1 + assert bits == prior['prefix_bits_upper'] + assert real == checks[orientation]['real_component_primitive_bound'] + assert macros == checks[orientation]['scalar_macros'] + assert dict(paid) == {int(r): count for r, count in checks[orientation]['paid_profile'].items()} + assert dict(paid) == {int(r): count for r, count in replay['paid_profiles'][orientation].items()} + local[orientation] = dict( + events=len(events), macros=macros, real_component_primitives=real, + prefix_l1=str(peak), prefix_bits=bits, + coefficient_work_primitive_count=workops, all_exact_columns=n, + dirty_helper_columns=helpers, all_dirty_helper_columns_restored=True, + private_centres_and_coefficient_work_cleared=True, + pre_wrappers=len(wrappers['pre']), post_wrappers=len(wrappers['post']), + endpoint_evidence='Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json') + + centres = len(w['centers']) + children = sum(checks['forward']['paid_profile'].values()) + assert checks['forward']['paid_profile'] == checks['backward']['paid_profile'] + macro_bound = max(row['macros'] for row in local.values()) + compiler = 64*(m+1)**3 + adapters = 16*(macro_bound+children+n+centres)+64*m + primitive_bound = max(row['real_component_primitives'] for row in local.values())+adapters*compiler + + assert widths==registry['widths'] + artifacts={f.name:filehash(f) for f in local_dir.iterdir() if f.is_file()} + phase_review=read(local_dir/'CLIFFORD-REVIEW.json') + return dict(local=local,helpers=helpers,centres=centres,v=v,h=h,n=n, + entering_helpers=entering,entrance_rank=sum(len(w['frames'][f]) for f in w['start'][2*v:]), + terminal_codimension=terminal_codim, hyperplane_ended_helpers=len(ends), # HPE: always reported (0 for FULL-ended words) + **({'cold_hyperplane_ended_helpers': cold_ends} if cold_ends else {}), # COLD-HPE: absent without cold ends + width_inventory=dict(sorted(Counter(widths).items())),widths=widths, + local_adapters=adapters,local_primitive_bound=primitive_bound, + compiler=compiler,children=children,artifacts=artifacts, + paid_profile=checks['forward']['paid_profile'], + program_hashes={o:programhash(events) for o,events in programs.items()},semantic_artifact_sha256=artifact_identities(local_dir)) + + +def run(base, hosted, audit, out, retained_invoice=None): + local_dir=base/'split-centres' + parent=read(local_dir/'GLOBAL-TEMPLATE.json.gz') + template_path=hosted/'GLOBAL-TEMPLATE.json.gz' + template=read(template_path); summary=read(hosted/'HOSTED.json') + owners=read(audit/'OWNERS-AND-PROFILE.json'); control=read(audit/'ASYNC-AUDIT.json') + template_hash=contenthash(template_path) + assert template_hash==control['complex_template_sha256']==owners['template_sha256']==summary['template_sha256'] + assert owners['status']=='PASS_INDEPENDENT_ASYNC_OWNERS_AND_PROFILE' + assert template['recipe']==parent['recipe'] + assert 'local_programs' not in template + assert set(template['local_providers'])==set(PIDS) + providers={pid:recount_provider(base/'providers'/pid,registry) + for pid,registry in template['local_providers'].items()} + for pid,p in providers.items(): + assert owners['provider_phase_semantic_sha256'][pid]==control['provider_phase_semantic_sha256'][pid]==p['semantic_artifact_sha256']['CLIFFORD-REVIEW.json'] + # The fresh controller admission must cite precisely these provider bytes. + for name in ('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json', + 'INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-RECIPES.json', + 'CLIFFORD-REVIEW.json','RESIDUAL-ADAPTERS.json'): + path='providers/'+pid+'/'+name + assert summary['source_artifacts'][path]==p['artifacts'][name] + assert owners['source_artifacts'][path]==p['artifacts'][name] + # R is read from the provider words (all must agree); the parent dedicated-bank + # envelope keeps its own helper count R0 from the parent split-centres word. + assert len({p['helpers'] for p in providers.values()})==1,'providers disagree on helper count R' + v,h,m,centres=112,9,73,8 + helpers=next(iter(providers.values()))['helpers']; n=2*v+helpers + assert all((p['v'],p['h'],p['centres'],p['n'])==(v,h,centres,n) for p in providers.values()) + parent_helpers=read(local_dir/'CANONICAL-WORD.json.gz')['R'] + stages,replicas,blocks_per_stream=9,8,4 + call_count=len(template['calls']) + assert call_count==stages*replicas==control['complete_invocations'] + assert control['one_owner_per_complete_invocation'] + assert len({(c['stage'],c['replica']) for c in template['calls']})==call_count + parent_calls={(c['stage'],c['replica']):c for c in parent['calls']} + sweeps=[e for e in template['execution_schedule'] if e['kind']=='local_cover_sweep'] + assert len(sweeps)==call_count + selected=[]; selected_paid=Counter(); provider_counts=Counter(); orientation_counts=Counter() + scalar=coefficient_work=macros=0; wrapper_factors=0 + factors_per_wrapper=2*(m-1) + for c in template['calls']: + pid,orientation=c['provider_id'],c['orientation']; p=providers[pid] + old=parent_calls[(c['stage'],c['replica'])] + assert orientation==old['orientation'] and c['owners'][:2*v]==old['owners'][:2*v] + assert c['local_program_sha256']==p['program_hashes'][orientation] + r=p['local'][orientation] + scalar+=r['real_component_primitives']; coefficient_work+=r['coefficient_work_primitive_count']; macros+=r['macros'] + wrapper_factors+=(r['pre_wrappers']+r['post_wrappers'])*factors_per_wrapper + provider_counts[pid]+=1; orientation_counts[(pid,orientation)]+=1 + selected_paid.update({int(k):v for k,v in p['paid_profile'].items()}) + selected.append(dict(stage=c['stage'],replica=c['replica'],provider_id=pid,orientation=orientation, + program_sha256=c['local_program_sha256'],events=r['events'],macros=r['macros'], + real_component_primitives=r['real_component_primitives'], + coefficient_work_primitive_count=r['coefficient_work_primitive_count'], + entering_helpers=p['entering_helpers'],entrance_rank=p['entrance_rank'], + pre_wrappers=r['pre_wrappers'],post_wrappers=r['post_wrappers'])) + assert provider_counts==COUNTS + # The sweep registry is executable: no hidden use of the historical supplier. + by_call={(c['stage'],c['replica']):c for c in template['calls']} + for e in sweeps: + c=by_call[(e['stage'],e['replica'])] + assert e['provider_id']==c['provider_id'] + assert set(p['compiler'] for p in providers.values())=={64*(m+1)**3} + compiler=64*(m+1)**3 + adapters=max(p['local_adapters'] for p in providers.values()) + primitive_bound=max(p['local_primitive_bound'] for p in providers.values()) + bridge_steps=sum(event['kind']=='bridge' for event in parent['recipe']) + bridge_sweeps=sum(event['kind']=='bridge' for event in template['execution_schedule']) + assert bridge_sweeps==replicas*bridge_steps + bridge_additions=2*v*bridge_sweeps + shifts=blocks_per_stream*v*replicas; moves=2*shifts + parent_live,parent_physical=parent['live'],parent['physical'] + data_stock=2*v*blocks_per_stream*replicas + assert (parent_live-data_stock)%stages==0 + parent_banks=(parent_live-data_stock)//stages + assert parent_banks>=0 and parent_physical==parent_live+parent_helpers+centres+2 + nonlocal_items=(4*v*replicas*stages+2*v*replicas*stages+2*call_count*helpers + +sum(child['replicas'] for child in parent['idle_children'])+stages*parent_banks + +bridge_additions+shifts+moves+parent_live+parent_physical+wrapper_factors) + outside=8*nonlocal_items+64*m + parent_pervertex=(scalar+bridge_additions+shifts+moves+parent_live + +(call_count*adapters+outside)*compiler+64*parent_physical) + live,physical=template['live'],template['physical'] + mass,profile=owners['rank_mass'],owners['paid_profile'] + assert m*live-mass==owners['deficit']==2560 + assert mass==sum(int(r)*count for r,count in profile.items()) + assert physical==live+helpers+centres+2 + assert live==owners['live'] and physical==owners['physical'] + assert live<=parent_live and physical<=parent_physical + assert not template['bank_padding']['families'] + assert owners['explicit_idle_remainder_children']<=owners['source_idle_children_charged'] + # The old dedicated-bank geometry is only a conservative reserve envelope. + # Its singular program is never used as evidence for a mixed invocation. + rebased=parent_pervertex+65*(physical-parent_physical)+(live-parent_live) + used=max(rebased,parent_pervertex); retained=None; payload=512 + if retained_invoice is not None: + previous=read(retained_invoice) + assert previous['compiler']==compiler and previous['charged_prefix_bits']==payload + previous_bound=previous['conservative_pervertex_used'] + used=max(used,previous_bound+parent_pervertex) + retained=dict(sha256=filehash(retained_invoice),previous_pervertex_allowance=previous_bound, + added_complete_new_pervertex=parent_pervertex,policy='Retain old allowance and add entire fresh mixed recount.') + half=m//2; group=2**(half*half) + for i in range(1,half+1): group*=2**(2*i)-1 + stock,streamed_mass=group*physical,group*mass + logical=group*used+64; router=compiler*(logical+1)*(stock+1)**2 + g_bound,e_bound,c0=2**30000,2**100000,2**210000 + total_mass=streamed_mass+e_bound + literal=2*g_bound*stock**2+8*streamed_mass+4*stock+4+32*m + row=2*stock.bit_length()+9909+252+2*payload + maxchild=max(map(int,profile)) + inequalities=dict(local_primitive_bound=primitive_bound<2**48, + logical=logical<2**6050,router=router2*maxchild*maxchild) + assert all(inequalities.values()) + localbits=max(r['prefix_bits'] for p in providers.values() for r in p['local'].values()) + input_l2_bits=(m+1)//2 + required_prefix=localbits+input_l2_bits+call_count+bridge_sweeps+4 + assert required_prefix R helper map +# (verify.py checks the spec value against the constructor's HELPER-MAP.json) +SPOT=tuple(SPEC.get('width_spot_helpers',(270,282,294,306))) +PIDS=tuple(sorted(set(DISPATCH.values()))) +COUNTS=dict(Counter(DISPATCH.values())) +assert DISCOVER or set(PROVIDERS)==set(PIDS),'spec providers differ from dispatch providers' +def lookup(key): + """Dotted spec path; a segment may itself contain dots when it names a file (split at most once per known file suffix).""" + v=SPEC;parts=key.split('.') + while parts: + for n in range(len(parts),0,-1): + k='.'.join(parts[:n]) + if isinstance(v,dict) and k in v:v=v[k];parts=parts[n:];break + else:raise KeyError('spec has no key %s'%key) + return v +def pin(key,got): + """Strict mode: got must equal the spec value at dotted key; the failure names the key.""" + if DISCOVER: + if os.environ.get('WITNESS_RECORD'): # discovery bookkeeping only: append (key, value) for the spec writer + with open(os.environ['WITNESS_RECORD'],'a')as f:f.write(json.dumps([key,got],default=str)+chr(10)) + return got + want=lookup(key) + assert got==want,'SPEC MISMATCH %s: expected %s got %s'%(key,json.dumps(want)[:400],json.dumps(got,default=str)[:400]) + return got +def partner(pid): + """A different provider for substitution controls (next in sorted order).""" + assert len(PIDS)>1 + return PIDS[(PIDS.index(pid)+1)%len(PIDS)] diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/EXPECTED.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/EXPECTED.json new file mode 100644 index 0000000000..3e11cb431e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/EXPECTED.json @@ -0,0 +1,1455 @@ +{ + "schema": "witness-expected/1", + "witness_sha256": "05f7127910a846210d8c75d67c58185b7cd15b9861d71d0cfea955ae62414436", + "build": { + "ck_504": { + "steps": [ + { + "input_content_sha256": "500f005d9cec374f15e086d374578cc8f2c252f9c30444a62d46f2969370a2c6", + "omission_controls": 48, + "output_content_sha256": "11afa6986e37fd10adda3453d6e55a7353302c9597b93807916a2e5f808e259b" + }, + { + "input_content_sha256": "11afa6986e37fd10adda3453d6e55a7353302c9597b93807916a2e5f808e259b", + "negative_controls": 12, + "output_content_sha256": "fac4ead822d8d18e441820f9ca87efeb1866414bb0b82817c6cce4655dc59269" + }, + { + "input_content_sha256": "fac4ead822d8d18e441820f9ca87efeb1866414bb0b82817c6cce4655dc59269", + "negative_controls": 6, + "output_content_sha256": "efddf09daea03240f09f4b820704b07f53782a153e7dff154dbe7406e69cfb0b" + } + ], + "base_content_sha256": "500f005d9cec374f15e086d374578cc8f2c252f9c30444a62d46f2969370a2c6", + "word_content_sha256": "efddf09daea03240f09f4b820704b07f53782a153e7dff154dbe7406e69cfb0b" + }, + "jp8_504": { + "steps": [ + { + "input_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "omission_controls": 6, + "output_content_sha256": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d" + }, + { + "input_content_sha256": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d", + "omission_controls": 32, + "output_content_sha256": "055c0fb41d8b0d506674f62d0227833a74eabd19a022a1dfeb72c3952b7a030f" + }, + {}, + { + "input_content_sha256": "055c0fb41d8b0d506674f62d0227833a74eabd19a022a1dfeb72c3952b7a030f", + "omission_controls": 135, + "rank5_controls": 8, + "joint_negative_controls": 15, + "output_content_sha256": "6c361b33967bb62d878b3acef44a4ac2c70970e99f36a11906b03811495de533" + } + ], + "base_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "word_content_sha256": "6c361b33967bb62d878b3acef44a4ac2c70970e99f36a11906b03811495de533" + }, + "ck": { + "steps": [ + { + "input_content_sha256": "a78f4e2114212d2f4b567cc9ef4e3b31ace0c19983009cec562a642831a84c34", + "shadow_input_content_sha256": "aad9b01b30bb8a2c5ce8d9415afafc88b0ab288986eb3d068a2bbba8e45bef51", + "shadow_output_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "output_content_sha256": "2f15196f7f6589749676d5b3a3e193997567b996621b6166f081739ecbd5b9bf" + }, + { + "input_content_sha256": "2f15196f7f6589749676d5b3a3e193997567b996621b6166f081739ecbd5b9bf", + "shadow_input_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "shadow_output_content_sha256": "500f005d9cec374f15e086d374578cc8f2c252f9c30444a62d46f2969370a2c6", + "output_content_sha256": "b184d491bdc7d42af32649b71cf46663a1dfdfc46046bac8cd6bdef6060afdd6" + }, + { + "input_content_sha256": "b184d491bdc7d42af32649b71cf46663a1dfdfc46046bac8cd6bdef6060afdd6", + "shadow_input_content_sha256": "500f005d9cec374f15e086d374578cc8f2c252f9c30444a62d46f2969370a2c6", + "shadow_output_content_sha256": "11afa6986e37fd10adda3453d6e55a7353302c9597b93807916a2e5f808e259b", + "output_content_sha256": "83479d878efe213b6433ddee10281b1b52fbfb56494fb0424da6cc7e7460278e" + }, + { + "input_content_sha256": "83479d878efe213b6433ddee10281b1b52fbfb56494fb0424da6cc7e7460278e", + "shadow_input_content_sha256": "11afa6986e37fd10adda3453d6e55a7353302c9597b93807916a2e5f808e259b", + "shadow_output_content_sha256": "fac4ead822d8d18e441820f9ca87efeb1866414bb0b82817c6cce4655dc59269", + "output_content_sha256": "7ddfa2bca87c1bdca6b573800b646f3c2d9ff75b0dde144fcaa6f714b96c5a5c" + }, + { + "input_content_sha256": "7ddfa2bca87c1bdca6b573800b646f3c2d9ff75b0dde144fcaa6f714b96c5a5c", + "shadow_input_content_sha256": "fac4ead822d8d18e441820f9ca87efeb1866414bb0b82817c6cce4655dc59269", + "shadow_output_content_sha256": "efddf09daea03240f09f4b820704b07f53782a153e7dff154dbe7406e69cfb0b", + "output_content_sha256": "5532de57a57084dfbb0d0a245d76cb401124d05fc01e2f20361acb4a45a5fd33" + }, + { + "input_content_sha256": "5532de57a57084dfbb0d0a245d76cb401124d05fc01e2f20361acb4a45a5fd33", + "negative_controls": 48, + "output_content_sha256": "b19c9c7cf895e31cd0afd12e5226cd0c917fac387bf7b12533437141790845c8" + }, + { + "input_content_sha256": "b19c9c7cf895e31cd0afd12e5226cd0c917fac387bf7b12533437141790845c8", + "negative_controls": 21, + "output_content_sha256": "93228917343883327493cf8e8af68be06251be4db719039ae3ca8d54595f2be6" + }, + { + "input_content_sha256": "93228917343883327493cf8e8af68be06251be4db719039ae3ca8d54595f2be6", + "negative_controls": 46, + "output_content_sha256": "9f94857de91021970cbf35099abafb3161568a723aa80e43d862606c8006485d" + } + ], + "helper_map_sha256": "688d5115b221be68c96970822cc04ff698e2a84432fa7db9cb59057f6fe55def", + "base_content_sha256": "a78f4e2114212d2f4b567cc9ef4e3b31ace0c19983009cec562a642831a84c34", + "word_content_sha256": "9f94857de91021970cbf35099abafb3161568a723aa80e43d862606c8006485d" + }, + "jp8": { + "steps": [ + { + "input_content_sha256": "a78f4e2114212d2f4b567cc9ef4e3b31ace0c19983009cec562a642831a84c34", + "shadow_input_content_sha256": "aad9b01b30bb8a2c5ce8d9415afafc88b0ab288986eb3d068a2bbba8e45bef51", + "shadow_output_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "output_content_sha256": "2f15196f7f6589749676d5b3a3e193997567b996621b6166f081739ecbd5b9bf" + }, + { + "input_content_sha256": "2f15196f7f6589749676d5b3a3e193997567b996621b6166f081739ecbd5b9bf", + "shadow_input_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "shadow_output_content_sha256": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d", + "output_content_sha256": "d1e6e83d61009650261c17ee59f44cdce1528b8908d4dc5b5437a789847ae5ba" + }, + { + "input_content_sha256": "d1e6e83d61009650261c17ee59f44cdce1528b8908d4dc5b5437a789847ae5ba", + "shadow_input_content_sha256": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d", + "shadow_output_content_sha256": "055c0fb41d8b0d506674f62d0227833a74eabd19a022a1dfeb72c3952b7a030f", + "output_content_sha256": "c5280629e7b9fc03ddd6be63fb9218935c21c015a5e5052ad14dfa34ae68466f" + }, + { + "input_content_sha256": "c5280629e7b9fc03ddd6be63fb9218935c21c015a5e5052ad14dfa34ae68466f", + "shadow_input_content_sha256": "055c0fb41d8b0d506674f62d0227833a74eabd19a022a1dfeb72c3952b7a030f", + "shadow_output_content_sha256": "6c361b33967bb62d878b3acef44a4ac2c70970e99f36a11906b03811495de533", + "output_content_sha256": "8aa907460a478d49c67dac4b96ce842a2811f0283cfa7723288ba9b82f07d80f" + }, + { + "input_content_sha256": "8aa907460a478d49c67dac4b96ce842a2811f0283cfa7723288ba9b82f07d80f", + "negative_controls": 48, + "output_content_sha256": "b7a36c11d0f49a027bbbcb6185a4484a65c176ac9597afd3fa28eaad58a8a0ce" + }, + { + "input_content_sha256": "b7a36c11d0f49a027bbbcb6185a4484a65c176ac9597afd3fa28eaad58a8a0ce", + "negative_controls": 21, + "output_content_sha256": "a51b37b5bd5e9e66ea14e9759f88cb6181bab041cb09aecd08e7a11956100016" + }, + { + "input_content_sha256": "a51b37b5bd5e9e66ea14e9759f88cb6181bab041cb09aecd08e7a11956100016", + "negative_controls": 46, + "output_content_sha256": "7f4c71dd12c7c2fbfbb4602aba6089f0633a73464ae24facba05054be8930774" + } + ], + "helper_map_sha256": "688d5115b221be68c96970822cc04ff698e2a84432fa7db9cb59057f6fe55def", + "base_content_sha256": "a78f4e2114212d2f4b567cc9ef4e3b31ace0c19983009cec562a642831a84c34", + "word_content_sha256": "7f4c71dd12c7c2fbfbb4602aba6089f0633a73464ae24facba05054be8930774" + } + }, + "providers": { + "ck": { + "semantic_phase_sha256": "ee29f6fe5177d67721ce3657b4d69f0579181d43e4b6b78f8718eae01e4ff605", + "width_digest": "5ab4a580a6a48bb8a4a7c3a674b35e5a2c188bacf48ce3f1d1a5ae0a78673c2f", + "program_hashes": { + "backward": "0e4c86ba38791593f297d75fb6d6e56d81b7e38adbd03fc464dfb430b3517462", + "forward": "b10b9bf8b133d1c1b2faa5f88efdb605e5e9427930ee3181ce635cacf5aa7f2d" + }, + "artifacts": { + "LOCAL-CHECKS.json": "89d8a58f4ef62d146aa09fcbbeb0f62118327131b9397b13e891e7c7d2b30012", + "CLIFFORD-RECIPES.json": "92cfd31f18e7e1e1755afbb4b2861ab2a7d466c41f89384f3c7c25623564230f", + "RESIDUAL-ADAPTERS.json": "f3b8d603a93cefacc5185efce7202a6babf6239954f0a1930b0806aaa8d7a164" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "904f8bbb3dc235b199e9b95ff95d1b91be5147008f37968ef488da822348a4d5", + "LOCAL-PROGRAMS.json.gz": "613f50250d3ac33564d83d9640268cbe6cd5b5f9fc0c9e923d0a6adb67ff37c7", + "LOCAL-CHECKS.json": "74c2ae4a30422c1bc51fed998e9a56827e798cb946fc7049ec8bd7d14b9f19e3", + "INDEPENDENT-LOCAL-REPLAY.json": "52e31d07a8bccd6b46adca2539f838a63a54e94d0928b3d6518b959164a570ea", + "CLIFFORD-RECIPES.json": "92cfd31f18e7e1e1755afbb4b2861ab2a7d466c41f89384f3c7c25623564230f", + "CLIFFORD-REVIEW.json": "ee29f6fe5177d67721ce3657b4d69f0579181d43e4b6b78f8718eae01e4ff605", + "RESIDUAL-ADAPTERS.json": "c2f7d958e1e4b45c3806d333faf8463305b299927c2c1d861df3bd43e91d2e3f" + }, + "complete_contract": { + "local": { + "backward": { + "events": 34657, + "macros": 29333, + "real_component_primitives": 413924, + "prefix_l1": "5537251444449428109158812401759663510181646155932443772517567125/137438953472", + "prefix_bits": 175, + "coefficient_work_primitive_count": 206266, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 242, + "post_wrappers": 242, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 34657, + "macros": 29333, + "real_component_primitives": 413876, + "prefix_l1": "8079815275983325690332778612919/1024", + "prefix_bits": 93, + "coefficient_work_primitive_count": 206234, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 242, + "post_wrappers": 242, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 492, + "centres": 8, + "v": 112, + "h": 9, + "n": 716, + "entering_helpers": 216, + "entrance_rank": 424, + "terminal_codimension": 150, + "hyperplane_ended_helpers": 62, + "cold_hyperplane_ended_helpers": 26, + "width_inventory": { + "4": 30, + "5": 48, + "7": 68, + "8": 96, + "9": 250 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 544816, + "local_primitive_bound": 14129441616100, + "compiler": 25934336, + "children": 3702, + "paid_profile": { + "1": 2600, + "2": 552, + "3": 304, + "4": 164, + "5": 70, + "6": 4, + "8": 8 + }, + "program_hashes": { + "backward": "0e4c86ba38791593f297d75fb6d6e56d81b7e38adbd03fc464dfb430b3517462", + "forward": "b10b9bf8b133d1c1b2faa5f88efdb605e5e9427930ee3181ce635cacf5aa7f2d" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "904f8bbb3dc235b199e9b95ff95d1b91be5147008f37968ef488da822348a4d5", + "LOCAL-PROGRAMS.json.gz": "613f50250d3ac33564d83d9640268cbe6cd5b5f9fc0c9e923d0a6adb67ff37c7", + "LOCAL-CHECKS.json": "74c2ae4a30422c1bc51fed998e9a56827e798cb946fc7049ec8bd7d14b9f19e3", + "INDEPENDENT-LOCAL-REPLAY.json": "52e31d07a8bccd6b46adca2539f838a63a54e94d0928b3d6518b959164a570ea", + "CLIFFORD-RECIPES.json": "92cfd31f18e7e1e1755afbb4b2861ab2a7d466c41f89384f3c7c25623564230f", + "CLIFFORD-REVIEW.json": "ee29f6fe5177d67721ce3657b4d69f0579181d43e4b6b78f8718eae01e4ff605", + "RESIDUAL-ADAPTERS.json": "c2f7d958e1e4b45c3806d333faf8463305b299927c2c1d861df3bd43e91d2e3f" + } + }, + "expected_profile": { + "1": 2600, + "2": 552, + "3": 304, + "4": 164, + "5": 70, + "6": 4, + "8": 8 + }, + "expected_local": { + "backward": { + "events": 34657, + "macros": 29333, + "real_component_primitives": 413924, + "prefix_l1": "5537251444449428109158812401759663510181646155932443772517567125/137438953472", + "coefficient_work_primitive_count": 206266 + }, + "forward": { + "events": 34657, + "macros": 29333, + "real_component_primitives": 413876, + "prefix_l1": "8079815275983325690332778612919/1024", + "coefficient_work_primitive_count": 206234 + } + }, + "entering": 216, + "entrance": 424, + "inventory": { + "4": 30, + "5": 48, + "7": 68, + "8": 96, + "9": 250 + }, + "wrappers": 242, + "phase_edges": 3104, + "native_negative_controls": 25 + }, + "jp8": { + "semantic_phase_sha256": "50f8bf3ac3d3dd3284d0b85daced4a197ec53809f9af00be2e122647f8e0318e", + "width_digest": "05a0a9237bdfe9cd7b1d6b0be9ca822689659a952c7edc7a446266fe20aa5f62", + "program_hashes": { + "backward": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da", + "forward": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + "artifacts": { + "LOCAL-CHECKS.json": "324f317e75644d9462b624a0abd033a5865d45b4da1aae54e9b457aa8c8f3efd", + "CLIFFORD-RECIPES.json": "8b64736db6837fcdae9c9501ec64772c892164df8d0734a4a8235fb9abb40de4", + "RESIDUAL-ADAPTERS.json": "61ea5e3a396442afbdddd567ccc605c025d51bae09fc26de134d3b84a86e5be4" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "32e23ebba95fd83ef3c70410e8a174699b548ad8e7a3de13de797f224243fdf5", + "LOCAL-PROGRAMS.json.gz": "23b08636b2d527d0d4e4d47ca2a565a7136c845d7af9cc175834e2bdd9b0ba01", + "LOCAL-CHECKS.json": "a6659a709c49a12022b61681c3399f7bfa4036a1655f72266fab236087e124f6", + "INDEPENDENT-LOCAL-REPLAY.json": "6ca8799fb9c9ace6b511c71b0da5793a87dde71e5568de87dfc88b62dd5119a4", + "CLIFFORD-RECIPES.json": "8b64736db6837fcdae9c9501ec64772c892164df8d0734a4a8235fb9abb40de4", + "CLIFFORD-REVIEW.json": "50f8bf3ac3d3dd3284d0b85daced4a197ec53809f9af00be2e122647f8e0318e", + "RESIDUAL-ADAPTERS.json": "9f86b06655f3a6b1832409df27eda5f107d2f861d17a73552516b5df5ed4fee5" + }, + "complete_contract": { + "local": { + "backward": { + "events": 65898, + "macros": 60676, + "real_component_primitives": 653180, + "prefix_l1": "1660138454672421673571617630945328034836793/128", + "prefix_bits": 134, + "coefficient_work_primitive_count": 325524, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 232, + "post_wrappers": 232, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 65898, + "macros": 60676, + "real_component_primitives": 653132, + "prefix_l1": "182080195045095355893400588767650199711660227278157759417/4096", + "prefix_bits": 175, + "coefficient_work_primitive_count": 325492, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 232, + "post_wrappers": 232, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 492, + "centres": 8, + "v": 112, + "h": 9, + "n": 716, + "entering_helpers": 204, + "entrance_rank": 380, + "terminal_codimension": 154, + "hyperplane_ended_helpers": 64, + "cold_hyperplane_ended_helpers": 28, + "width_inventory": { + "4": 30, + "5": 48, + "7": 38, + "8": 116, + "9": 260 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 1044864, + "local_primitive_bound": 27097854703484, + "compiler": 25934336, + "children": 3612, + "paid_profile": { + "1": 2518, + "2": 402, + "3": 448, + "4": 164, + "5": 68, + "6": 4, + "8": 8 + }, + "program_hashes": { + "backward": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da", + "forward": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "32e23ebba95fd83ef3c70410e8a174699b548ad8e7a3de13de797f224243fdf5", + "LOCAL-PROGRAMS.json.gz": "23b08636b2d527d0d4e4d47ca2a565a7136c845d7af9cc175834e2bdd9b0ba01", + "LOCAL-CHECKS.json": "a6659a709c49a12022b61681c3399f7bfa4036a1655f72266fab236087e124f6", + "INDEPENDENT-LOCAL-REPLAY.json": "6ca8799fb9c9ace6b511c71b0da5793a87dde71e5568de87dfc88b62dd5119a4", + "CLIFFORD-RECIPES.json": "8b64736db6837fcdae9c9501ec64772c892164df8d0734a4a8235fb9abb40de4", + "CLIFFORD-REVIEW.json": "50f8bf3ac3d3dd3284d0b85daced4a197ec53809f9af00be2e122647f8e0318e", + "RESIDUAL-ADAPTERS.json": "9f86b06655f3a6b1832409df27eda5f107d2f861d17a73552516b5df5ed4fee5" + } + }, + "expected_profile": { + "1": 2518, + "2": 402, + "3": 448, + "4": 164, + "5": 68, + "6": 4, + "8": 8 + }, + "expected_local": { + "backward": { + "events": 65898, + "macros": 60676, + "real_component_primitives": 653180, + "prefix_l1": "1660138454672421673571617630945328034836793/128", + "coefficient_work_primitive_count": 325524 + }, + "forward": { + "events": 65898, + "macros": 60676, + "real_component_primitives": 653132, + "prefix_l1": "182080195045095355893400588767650199711660227278157759417/4096", + "coefficient_work_primitive_count": 325492 + } + }, + "entering": 204, + "entrance": 380, + "inventory": { + "4": 30, + "5": 48, + "7": 38, + "8": 116, + "9": 260 + }, + "wrappers": 232, + "phase_edges": 3019, + "native_negative_controls": 25 + } + }, + "global": { + "provider_counts": { + "jp8": 71, + "ck": 1 + }, + "global_profile": { + "1": 181421, + "2": 29094, + "3": 32112, + "4": 11809, + "5": 4898, + "6": 288, + "8": 576, + "9": 2, + "32": 1, + "39": 1, + "48": 2221 + }, + "owners_per_call": 716, + "hosted_residuals": 35424, + "rank_mass": 520704, + "actual_73column_sigmas": 6638, + "cross_replica_helper_roles": 25784, + "idle_remainders": 2269, + "live": 7168, + "physical": 7670, + "deficit": 2560, + "entering_helper_roles": 16714, + "idle_remainder_profile": { + "1": 43, + "4": 1, + "9": 2, + "32": 1, + "39": 1, + "48": 2221 + }, + "complex_lower": "327784635138871019137/200000000000000000000000", + "conservative_complex_lower": "819461586408916479413/500000000000000000000000", + "kappa": "409060375394097/250000000000000000", + "kappa_decimal": "0.001636241501576388", + "conservative_kappa_decimal": "0.001636241498709272", + "mutations_rejected": 23, + "assembly_controls_rejected": 114 + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/OWNERS.json.gz new file mode 100644 index 0000000000..a5996341b3 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/PLAN.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/PLAN.json new file mode 100644 index 0000000000..d7794713dd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/PLAN.json @@ -0,0 +1,41780 @@ +{ + "status": "LITERAL_OWNER_NOMINATION_PENDING_ADMISSION", + "mode": "frozen-saturation-pattern-time-matching", + "K": 4, + "T": 8, + "M": 73, + "L": 9, + "live": 7168, + "deficit": 2560, + "profile": { + "1": 181421, + "2": 29094, + "3": 32112, + "4": 11809, + "5": 4898, + "6": 288, + "8": 576, + "9": 2, + "32": 1, + "39": 1, + "48": 2221 + }, + "order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "windows": { + "0,0": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,2": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,1": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,3": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,5": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,7": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,9": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,11": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,12": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,13": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,14": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,15": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,16": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,17": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "1,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,1": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,3": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,5": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,7": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,9": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,11": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,12": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,13": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,14": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,15": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,16": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,17": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "2,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,1": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,3": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,5": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,7": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,9": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,11": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,12": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,13": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,14": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,15": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,16": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,17": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "3,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,1": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,3": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,5": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,7": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,9": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,11": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,12": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,13": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,14": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,15": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,16": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,17": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "4,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,1": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,3": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,5": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,7": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,9": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,11": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,12": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,13": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,14": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,15": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,16": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,17": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "5,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,1": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,3": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,5": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,7": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,9": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,11": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,12": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,13": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,14": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,15": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,16": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,17": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "6,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,1": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,3": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,5": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,7": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,9": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,11": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,12": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,13": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,14": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,15": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,16": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,17": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "7,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,1": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,3": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,5": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,7": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,9": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,11": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,12": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,13": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,14": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,15": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,16": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,17": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ] + }, + "sides": { + "0": 0, + "2": 1, + "1": 0, + "3": 1, + "4": 0, + "6": 1, + "5": 0, + "7": 1, + "8": 0, + "10": 1, + "9": 0, + "11": 1, + "12": 0, + "13": 1, + "14": 0, + "15": 1, + "16": 0, + "17": 1 + }, + "pairs": { + "0": 1, + "2": 1, + "1": 1, + "3": 1, + "4": 2, + "6": 2, + "5": 2, + "7": 2, + "8": 3, + "10": 3, + "9": 3, + "11": 3, + "12": 0, + "13": 0, + "14": 1, + "15": 1, + "16": 2, + "17": 2 + }, + "solver_status": "relocate_swap_chain_flip_annealing_of_pr601_literal_map", + "gap": null, + "provider_calls": [ + { + "time": 0, + "stage": 0, + "replica": 0, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 1, + "stage": 0, + "replica": 1, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 2, + "stage": 1, + "replica": 0, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 3, + "stage": 0, + "replica": 2, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 4, + "stage": 1, + "replica": 1, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 5, + "stage": 2, + "replica": 0, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "b10b9bf8b133d1c1b2faa5f88efdb605e5e9427930ee3181ce635cacf5aa7f2d" + }, + { + "time": 6, + "stage": 0, + "replica": 3, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 7, + "stage": 1, + "replica": 2, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 8, + "stage": 2, + "replica": 1, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 9, + "stage": 3, + "replica": 0, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 10, + "stage": 0, + "replica": 4, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 11, + "stage": 1, + "replica": 3, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 12, + "stage": 2, + "replica": 2, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 13, + "stage": 3, + "replica": 1, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 14, + "stage": 4, + "replica": 0, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 15, + "stage": 0, + "replica": 5, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 16, + "stage": 1, + "replica": 4, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 17, + "stage": 2, + "replica": 3, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 18, + "stage": 3, + "replica": 2, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 19, + "stage": 4, + "replica": 1, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 20, + "stage": 5, + "replica": 0, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 21, + "stage": 0, + "replica": 6, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 22, + "stage": 1, + "replica": 5, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 23, + "stage": 2, + "replica": 4, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 24, + "stage": 3, + "replica": 3, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 25, + "stage": 4, + "replica": 2, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 26, + "stage": 5, + "replica": 1, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 27, + "stage": 0, + "replica": 7, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 28, + "stage": 6, + "replica": 0, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 29, + "stage": 1, + "replica": 6, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 30, + "stage": 2, + "replica": 5, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 31, + "stage": 3, + "replica": 4, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 32, + "stage": 4, + "replica": 3, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 33, + "stage": 5, + "replica": 2, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 34, + "stage": 6, + "replica": 1, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 35, + "stage": 1, + "replica": 7, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 36, + "stage": 7, + "replica": 0, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 37, + "stage": 2, + "replica": 6, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 38, + "stage": 3, + "replica": 5, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 39, + "stage": 4, + "replica": 4, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 40, + "stage": 5, + "replica": 3, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 41, + "stage": 6, + "replica": 2, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 42, + "stage": 7, + "replica": 1, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 43, + "stage": 2, + "replica": 7, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 44, + "stage": 8, + "replica": 0, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 45, + "stage": 3, + "replica": 6, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 46, + "stage": 4, + "replica": 5, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 47, + "stage": 5, + "replica": 4, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 48, + "stage": 6, + "replica": 3, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 49, + "stage": 7, + "replica": 2, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 50, + "stage": 8, + "replica": 1, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 51, + "stage": 3, + "replica": 7, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 52, + "stage": 4, + "replica": 6, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 53, + "stage": 5, + "replica": 5, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 54, + "stage": 6, + "replica": 4, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 55, + "stage": 7, + "replica": 3, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 56, + "stage": 8, + "replica": 2, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 57, + "stage": 4, + "replica": 7, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 58, + "stage": 5, + "replica": 6, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 59, + "stage": 6, + "replica": 5, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 60, + "stage": 7, + "replica": 4, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 61, + "stage": 8, + "replica": 3, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 62, + "stage": 5, + "replica": 7, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 63, + "stage": 6, + "replica": 6, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 64, + "stage": 7, + "replica": 5, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 65, + "stage": 8, + "replica": 4, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 66, + "stage": 6, + "replica": 7, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 67, + "stage": 7, + "replica": 6, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 68, + "stage": 8, + "replica": 5, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 69, + "stage": 7, + "replica": 7, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + { + "time": 70, + "stage": 8, + "replica": 6, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + { + "time": 71, + "stage": 8, + "replica": 7, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + } + ], + "per_call_widths": [ + { + "stage": 0, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + } + ], + "provider_registry": { + "ck": { + "directory": "providers/ck", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "bc5f6af3f3af66c83d3c274b5cfe7ce311a14b1591e933137b53dc6f837be950", + "LOCAL-PROGRAMS.json.gz": "a7d91d60097dc57c9f8b274ac5ee9a24c43dbf63a56116c66551d06104be4eb0", + "LOCAL-CHECKS.json": "89d8a58f4ef62d146aa09fcbbeb0f62118327131b9397b13e891e7c7d2b30012", + "INDEPENDENT-LOCAL-REPLAY.json": "5e124dbe83cc81925db5d1a97f2473ee5215e0f092193838dead850144961756", + "CLIFFORD-RECIPES.json": "92cfd31f18e7e1e1755afbb4b2861ab2a7d466c41f89384f3c7c25623564230f", + "CLIFFORD-REVIEW.json": "f964e9345e966b3dd0ba21f560ecf2fe01217bc2ab1ed24da9515466568f86d2", + "RESIDUAL-ADAPTERS.json": "f3b8d603a93cefacc5185efce7202a6babf6239954f0a1930b0806aaa8d7a164" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 229, + 224, + 227, + 225, + 243, + 241, + 259, + 257 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2600, + "2": 552, + "3": 304, + "4": 164, + "5": 70, + "6": 4, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "b10b9bf8b133d1c1b2faa5f88efdb605e5e9427930ee3181ce635cacf5aa7f2d", + "backward": "0e4c86ba38791593f297d75fb6d6e56d81b7e38adbd03fc464dfb430b3517462" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "904f8bbb3dc235b199e9b95ff95d1b91be5147008f37968ef488da822348a4d5", + "LOCAL-PROGRAMS.json.gz": "613f50250d3ac33564d83d9640268cbe6cd5b5f9fc0c9e923d0a6adb67ff37c7", + "LOCAL-CHECKS.json": "74c2ae4a30422c1bc51fed998e9a56827e798cb946fc7049ec8bd7d14b9f19e3", + "INDEPENDENT-LOCAL-REPLAY.json": "52e31d07a8bccd6b46adca2539f838a63a54e94d0928b3d6518b959164a570ea", + "CLIFFORD-RECIPES.json": "92cfd31f18e7e1e1755afbb4b2861ab2a7d466c41f89384f3c7c25623564230f", + "CLIFFORD-REVIEW.json": "ee29f6fe5177d67721ce3657b4d69f0579181d43e4b6b78f8718eae01e4ff605", + "RESIDUAL-ADAPTERS.json": "c2f7d958e1e4b45c3806d333faf8463305b299927c2c1d861df3bd43e91d2e3f" + } + }, + "jp8": { + "directory": "providers/jp8", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "9e916dce8c066125a3120f73ed4d8799d8ac7e9eb24d8f5b32b6bbf5dfef675e", + "LOCAL-PROGRAMS.json.gz": "11c17c342f766604c15971b479726b9124be5e2bd461a21541b5b7790174986e", + "LOCAL-CHECKS.json": "324f317e75644d9462b624a0abd033a5865d45b4da1aae54e9b457aa8c8f3efd", + "INDEPENDENT-LOCAL-REPLAY.json": "37357ad2598784f143d59d923ee9d93b4ccda320e0737cadd2c651ef8d43930f", + "CLIFFORD-RECIPES.json": "8b64736db6837fcdae9c9501ec64772c892164df8d0734a4a8235fb9abb40de4", + "CLIFFORD-REVIEW.json": "133fb5351c06b72860f666a9099c67b8d9dc8006414e3c073803f38d055b81ec", + "RESIDUAL-ADAPTERS.json": "61ea5e3a396442afbdddd567ccc605c025d51bae09fc26de134d3b84a86e5be4" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 229, + 224, + 227, + 225, + 243, + 241, + 259, + 257 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2518, + "2": 402, + "3": 448, + "4": 164, + "5": 68, + "6": 4, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384", + "backward": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "32e23ebba95fd83ef3c70410e8a174699b548ad8e7a3de13de797f224243fdf5", + "LOCAL-PROGRAMS.json.gz": "23b08636b2d527d0d4e4d47ca2a565a7136c845d7af9cc175834e2bdd9b0ba01", + "LOCAL-CHECKS.json": "a6659a709c49a12022b61681c3399f7bfa4036a1655f72266fab236087e124f6", + "INDEPENDENT-LOCAL-REPLAY.json": "6ca8799fb9c9ace6b511c71b0da5793a87dde71e5568de87dfc88b62dd5119a4", + "CLIFFORD-RECIPES.json": "8b64736db6837fcdae9c9501ec64772c892164df8d0734a4a8235fb9abb40de4", + "CLIFFORD-REVIEW.json": "50f8bf3ac3d3dd3284d0b85daced4a197ec53809f9af00be2e122647f8e0318e", + "RESIDUAL-ADAPTERS.json": "9f86b06655f3a6b1832409df27eda5f107d2f861d17a73552516b5df5ed4fee5" + } + } + }, + "source_plan_sha256": "1879679a44b373006907cbca8261a9cd187c7b868472afab04e002bf95331d9e", + "assignment_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add", + "source_owners_sha256": "56aac182713cba7627b7ebfbb497975b5a7c76b9da9f835a1cb63192fc6134a4" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/SPEC.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/SPEC.json new file mode 100644 index 0000000000..9832064f28 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/SPEC.json @@ -0,0 +1,2271 @@ +{ + "schema": "witness-spec/1", + "name": "cold14", + "data": { + "plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add" + }, + "providers": { + "ck": { + "inventory": { + "4": 30, + "5": 48, + "7": 68, + "8": 96, + "9": 250 + }, + "native_negative_controls": 25, + "phase_edges": 3104, + "expected_profile": { + "1": 2600, + "2": 552, + "3": 304, + "4": 164, + "5": 70, + "6": 4, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "904f8bbb3dc235b199e9b95ff95d1b91be5147008f37968ef488da822348a4d5", + "LOCAL-PROGRAMS.json.gz": "613f50250d3ac33564d83d9640268cbe6cd5b5f9fc0c9e923d0a6adb67ff37c7", + "LOCAL-CHECKS.json": "74c2ae4a30422c1bc51fed998e9a56827e798cb946fc7049ec8bd7d14b9f19e3", + "INDEPENDENT-LOCAL-REPLAY.json": "52e31d07a8bccd6b46adca2539f838a63a54e94d0928b3d6518b959164a570ea", + "CLIFFORD-RECIPES.json": "92cfd31f18e7e1e1755afbb4b2861ab2a7d466c41f89384f3c7c25623564230f", + "CLIFFORD-REVIEW.json": "ee29f6fe5177d67721ce3657b4d69f0579181d43e4b6b78f8718eae01e4ff605", + "RESIDUAL-ADAPTERS.json": "c2f7d958e1e4b45c3806d333faf8463305b299927c2c1d861df3bd43e91d2e3f" + }, + "entering": 216, + "entrance": 424, + "width_digest": "5ab4a580a6a48bb8a4a7c3a674b35e5a2c188bacf48ce3f1d1a5ae0a78673c2f", + "program_hashes": { + "backward": "0e4c86ba38791593f297d75fb6d6e56d81b7e38adbd03fc464dfb430b3517462", + "forward": "b10b9bf8b133d1c1b2faa5f88efdb605e5e9427930ee3181ce635cacf5aa7f2d" + }, + "artifacts.LOCAL-CHECKS.json": "89d8a58f4ef62d146aa09fcbbeb0f62118327131b9397b13e891e7c7d2b30012", + "artifacts.CLIFFORD-RECIPES.json": "92cfd31f18e7e1e1755afbb4b2861ab2a7d466c41f89384f3c7c25623564230f", + "artifacts.RESIDUAL-ADAPTERS.json": "f3b8d603a93cefacc5185efce7202a6babf6239954f0a1930b0806aaa8d7a164", + "complete_contract": { + "local": { + "backward": { + "events": 34657, + "macros": 29333, + "real_component_primitives": 413924, + "prefix_l1": "5537251444449428109158812401759663510181646155932443772517567125/137438953472", + "prefix_bits": 175, + "coefficient_work_primitive_count": 206266, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 242, + "post_wrappers": 242, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 34657, + "macros": 29333, + "real_component_primitives": 413876, + "prefix_l1": "8079815275983325690332778612919/1024", + "prefix_bits": 93, + "coefficient_work_primitive_count": 206234, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 242, + "post_wrappers": 242, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 492, + "centres": 8, + "v": 112, + "h": 9, + "n": 716, + "entering_helpers": 216, + "entrance_rank": 424, + "terminal_codimension": 150, + "hyperplane_ended_helpers": 62, + "cold_hyperplane_ended_helpers": 26, + "width_inventory": { + "4": 30, + "5": 48, + "7": 68, + "8": 96, + "9": 250 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 544816, + "local_primitive_bound": 14129441616100, + "compiler": 25934336, + "children": 3702, + "paid_profile": { + "1": 2600, + "2": 552, + "3": 304, + "4": 164, + "5": 70, + "6": 4, + "8": 8 + }, + "program_hashes": { + "backward": "0e4c86ba38791593f297d75fb6d6e56d81b7e38adbd03fc464dfb430b3517462", + "forward": "b10b9bf8b133d1c1b2faa5f88efdb605e5e9427930ee3181ce635cacf5aa7f2d" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "904f8bbb3dc235b199e9b95ff95d1b91be5147008f37968ef488da822348a4d5", + "LOCAL-PROGRAMS.json.gz": "613f50250d3ac33564d83d9640268cbe6cd5b5f9fc0c9e923d0a6adb67ff37c7", + "LOCAL-CHECKS.json": "74c2ae4a30422c1bc51fed998e9a56827e798cb946fc7049ec8bd7d14b9f19e3", + "INDEPENDENT-LOCAL-REPLAY.json": "52e31d07a8bccd6b46adca2539f838a63a54e94d0928b3d6518b959164a570ea", + "CLIFFORD-RECIPES.json": "92cfd31f18e7e1e1755afbb4b2861ab2a7d466c41f89384f3c7c25623564230f", + "CLIFFORD-REVIEW.json": "ee29f6fe5177d67721ce3657b4d69f0579181d43e4b6b78f8718eae01e4ff605", + "RESIDUAL-ADAPTERS.json": "c2f7d958e1e4b45c3806d333faf8463305b299927c2c1d861df3bd43e91d2e3f" + } + }, + "semantic_phase_sha256": "ee29f6fe5177d67721ce3657b4d69f0579181d43e4b6b78f8718eae01e4ff605", + "expected_local.forward": { + "events": 34657, + "macros": 29333, + "real_component_primitives": 413876, + "prefix_l1": "8079815275983325690332778612919/1024", + "coefficient_work_primitive_count": 206234 + }, + "wrappers": 242, + "expected_local.backward": { + "events": 34657, + "macros": 29333, + "real_component_primitives": 413924, + "prefix_l1": "5537251444449428109158812401759663510181646155932443772517567125/137438953472", + "coefficient_work_primitive_count": 206266 + } + }, + "jp8": { + "inventory": { + "4": 30, + "5": 48, + "7": 38, + "8": 116, + "9": 260 + }, + "native_negative_controls": 25, + "phase_edges": 3019, + "expected_profile": { + "1": 2518, + "2": 402, + "3": 448, + "4": 164, + "5": 68, + "6": 4, + "8": 8 + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "32e23ebba95fd83ef3c70410e8a174699b548ad8e7a3de13de797f224243fdf5", + "LOCAL-PROGRAMS.json.gz": "23b08636b2d527d0d4e4d47ca2a565a7136c845d7af9cc175834e2bdd9b0ba01", + "LOCAL-CHECKS.json": "a6659a709c49a12022b61681c3399f7bfa4036a1655f72266fab236087e124f6", + "INDEPENDENT-LOCAL-REPLAY.json": "6ca8799fb9c9ace6b511c71b0da5793a87dde71e5568de87dfc88b62dd5119a4", + "CLIFFORD-RECIPES.json": "8b64736db6837fcdae9c9501ec64772c892164df8d0734a4a8235fb9abb40de4", + "CLIFFORD-REVIEW.json": "50f8bf3ac3d3dd3284d0b85daced4a197ec53809f9af00be2e122647f8e0318e", + "RESIDUAL-ADAPTERS.json": "9f86b06655f3a6b1832409df27eda5f107d2f861d17a73552516b5df5ed4fee5" + }, + "entering": 204, + "entrance": 380, + "width_digest": "05a0a9237bdfe9cd7b1d6b0be9ca822689659a952c7edc7a446266fe20aa5f62", + "program_hashes": { + "backward": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da", + "forward": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + "artifacts.LOCAL-CHECKS.json": "324f317e75644d9462b624a0abd033a5865d45b4da1aae54e9b457aa8c8f3efd", + "artifacts.CLIFFORD-RECIPES.json": "8b64736db6837fcdae9c9501ec64772c892164df8d0734a4a8235fb9abb40de4", + "artifacts.RESIDUAL-ADAPTERS.json": "61ea5e3a396442afbdddd567ccc605c025d51bae09fc26de134d3b84a86e5be4", + "complete_contract": { + "local": { + "backward": { + "events": 65898, + "macros": 60676, + "real_component_primitives": 653180, + "prefix_l1": "1660138454672421673571617630945328034836793/128", + "prefix_bits": 134, + "coefficient_work_primitive_count": 325524, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 232, + "post_wrappers": 232, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + }, + "forward": { + "events": 65898, + "macros": 60676, + "real_component_primitives": 653132, + "prefix_l1": "182080195045095355893400588767650199711660227278157759417/4096", + "prefix_bits": 175, + "coefficient_work_primitive_count": 325492, + "all_exact_columns": 716, + "dirty_helper_columns": 492, + "all_dirty_helper_columns_restored": true, + "private_centres_and_coefficient_work_cleared": true, + "pre_wrappers": 232, + "post_wrappers": 232, + "endpoint_evidence": "Hash-bound fresh INDEPENDENT-LOCAL-REPLAY.json" + } + }, + "helpers": 492, + "centres": 8, + "v": 112, + "h": 9, + "n": 716, + "entering_helpers": 204, + "entrance_rank": 380, + "terminal_codimension": 154, + "hyperplane_ended_helpers": 64, + "cold_hyperplane_ended_helpers": 28, + "width_inventory": { + "4": 30, + "5": 48, + "7": 38, + "8": 116, + "9": 260 + }, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "local_adapters": 1044864, + "local_primitive_bound": 27097854703484, + "compiler": 25934336, + "children": 3612, + "paid_profile": { + "1": 2518, + "2": 402, + "3": 448, + "4": 164, + "5": 68, + "6": 4, + "8": 8 + }, + "program_hashes": { + "backward": "da0379b4244d185bb79a22cdd7d788d4d43b180644319f38bd69a0f7c9f030da", + "forward": "2acaf41909b2bd35995ed1069ab9f6bbcab662dd411d14cb42b88bebc1685384" + }, + "semantic_artifact_sha256": { + "CANONICAL-WORD.json.gz": "32e23ebba95fd83ef3c70410e8a174699b548ad8e7a3de13de797f224243fdf5", + "LOCAL-PROGRAMS.json.gz": "23b08636b2d527d0d4e4d47ca2a565a7136c845d7af9cc175834e2bdd9b0ba01", + "LOCAL-CHECKS.json": "a6659a709c49a12022b61681c3399f7bfa4036a1655f72266fab236087e124f6", + "INDEPENDENT-LOCAL-REPLAY.json": "6ca8799fb9c9ace6b511c71b0da5793a87dde71e5568de87dfc88b62dd5119a4", + "CLIFFORD-RECIPES.json": "8b64736db6837fcdae9c9501ec64772c892164df8d0734a4a8235fb9abb40de4", + "CLIFFORD-REVIEW.json": "50f8bf3ac3d3dd3284d0b85daced4a197ec53809f9af00be2e122647f8e0318e", + "RESIDUAL-ADAPTERS.json": "9f86b06655f3a6b1832409df27eda5f107d2f861d17a73552516b5df5ed4fee5" + } + }, + "semantic_phase_sha256": "50f8bf3ac3d3dd3284d0b85daced4a197ec53809f9af00be2e122647f8e0318e", + "expected_local.forward": { + "events": 65898, + "macros": 60676, + "real_component_primitives": 653132, + "prefix_l1": "182080195045095355893400588767650199711660227278157759417/4096", + "coefficient_work_primitive_count": 325492 + }, + "wrappers": 232, + "expected_local.backward": { + "events": 65898, + "macros": 60676, + "real_component_primitives": 653180, + "prefix_l1": "1660138454672421673571617630945328034836793/128", + "coefficient_work_primitive_count": 325524 + } + } + }, + "dispatch": [ + [ + 0, + 0, + "jp8" + ], + [ + 0, + 1, + "jp8" + ], + [ + 0, + 2, + "jp8" + ], + [ + 0, + 3, + "jp8" + ], + [ + 0, + 4, + "jp8" + ], + [ + 0, + 5, + "jp8" + ], + [ + 0, + 6, + "jp8" + ], + [ + 0, + 7, + "jp8" + ], + [ + 1, + 0, + "jp8" + ], + [ + 1, + 1, + "jp8" + ], + [ + 1, + 2, + "jp8" + ], + [ + 1, + 3, + "jp8" + ], + [ + 1, + 4, + "jp8" + ], + [ + 1, + 5, + "jp8" + ], + [ + 1, + 6, + "jp8" + ], + [ + 1, + 7, + "jp8" + ], + [ + 2, + 0, + "ck" + ], + [ + 2, + 1, + "jp8" + ], + [ + 2, + 2, + "jp8" + ], + [ + 2, + 3, + "jp8" + ], + [ + 2, + 4, + "jp8" + ], + [ + 2, + 5, + "jp8" + ], + [ + 2, + 6, + "jp8" + ], + [ + 2, + 7, + "jp8" + ], + [ + 3, + 0, + "jp8" + ], + [ + 3, + 1, + "jp8" + ], + [ + 3, + 2, + "jp8" + ], + [ + 3, + 3, + "jp8" + ], + [ + 3, + 4, + "jp8" + ], + [ + 3, + 5, + "jp8" + ], + [ + 3, + 6, + "jp8" + ], + [ + 3, + 7, + "jp8" + ], + [ + 4, + 0, + "jp8" + ], + [ + 4, + 1, + "jp8" + ], + [ + 4, + 2, + "jp8" + ], + [ + 4, + 3, + "jp8" + ], + [ + 4, + 4, + "jp8" + ], + [ + 4, + 5, + "jp8" + ], + [ + 4, + 6, + "jp8" + ], + [ + 4, + 7, + "jp8" + ], + [ + 5, + 0, + "jp8" + ], + [ + 5, + 1, + "jp8" + ], + [ + 5, + 2, + "jp8" + ], + [ + 5, + 3, + "jp8" + ], + [ + 5, + 4, + "jp8" + ], + [ + 5, + 5, + "jp8" + ], + [ + 5, + 6, + "jp8" + ], + [ + 5, + 7, + "jp8" + ], + [ + 6, + 0, + "jp8" + ], + [ + 6, + 1, + "jp8" + ], + [ + 6, + 2, + "jp8" + ], + [ + 6, + 3, + "jp8" + ], + [ + 6, + 4, + "jp8" + ], + [ + 6, + 5, + "jp8" + ], + [ + 6, + 6, + "jp8" + ], + [ + 6, + 7, + "jp8" + ], + [ + 7, + 0, + "jp8" + ], + [ + 7, + 1, + "jp8" + ], + [ + 7, + 2, + "jp8" + ], + [ + 7, + 3, + "jp8" + ], + [ + 7, + 4, + "jp8" + ], + [ + 7, + 5, + "jp8" + ], + [ + 7, + 6, + "jp8" + ], + [ + 7, + 7, + "jp8" + ], + [ + 8, + 0, + "jp8" + ], + [ + 8, + 1, + "jp8" + ], + [ + 8, + 2, + "jp8" + ], + [ + 8, + 3, + "jp8" + ], + [ + 8, + 4, + "jp8" + ], + [ + 8, + 5, + "jp8" + ], + [ + 8, + 6, + "jp8" + ], + [ + 8, + 7, + "jp8" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "expected": { + "provider_counts": { + "jp8": 71, + "ck": 1 + }, + "global_profile": { + "1": 181421, + "2": 29094, + "3": 32112, + "4": 11809, + "5": 4898, + "6": 288, + "8": 576, + "9": 2, + "32": 1, + "39": 1, + "48": 2221 + }, + "owners_per_call": 716, + "hosted_residuals": 35424, + "rank_mass": 520704, + "actual_73column_sigmas": 6638, + "cross_replica_helper_roles": 25784, + "idle_remainders": 2269, + "live": 7168, + "physical": 7670, + "deficit": 2560, + "entering_helper_roles": 16714, + "idle_remainder_profile": { + "1": 43, + "4": 1, + "9": 2, + "32": 1, + "39": 1, + "48": 2221 + }, + "complex_lower": "327784635138871019137/200000000000000000000000", + "conservative_complex_lower": "819461586408916479413/500000000000000000000000", + "kappa": "409060375394097/250000000000000000", + "kappa_decimal": "0.001636241501576388", + "conservative_kappa_decimal": "0.001636241498709272", + "gain_baseline_kappa": "0.001601260169988325", + "mutations_rejected": 23, + "assembly_controls_rejected": 114 + }, + "build": { + "status": "PASS_COLD14_NATIVE_COMPLEX_AND_CITED_BIT", + "sources": { + "multicold": { + "dir": "complex-multicold", + "pr": 568, + "commit": "71c99ac935a33bb7b59a1b4a7af8725a939b0b90", + "manifest_sha256": "328ce8023d33deb308b0f1ae2320424050f836d791cf60a613ae8408e7d6f3ab", + "full_tree": true, + "files": { + "data/EIGHT-COLD.json": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160", + "data/EIGHT-MULTICOLD.json": "d18ea59995d384833c95a7a55d8167f83439b6881a524ab03df972ede3e0d7b9" + } + }, + "structural_gain": { + "dir": "structural-gain", + "pr": 571, + "commit": "b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3", + "manifest_sha256": "eb0499a927665a48a25355075dcb7dc76d0fc43c67ea6d311d9e0242b6d4a25d", + "full_tree": false, + "files": { + "frontier-composition/combined-prefix-word/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42" + } + }, + "larger_gain": { + "dir": "larger-gain", + "pr": 569, + "commit": "897213a855b7fb8a1b8b0e552a2f5c42e6c1b326", + "manifest_sha256": "54d67f45ad520f4a134e069336bd0ff639aaeada28d13539298e4f2655c9692d", + "full_tree": false, + "files": { + "providers/build_entrance_promotions.py": "50737e20553b5d44381c58e5b35b5031a6797dfdda1c67a1656069f1f6203cd2", + "providers/coupled_frames_base.py": "b6033cd2959297a624b557f3d04665c8fbb680a4c0987daf0704ef93711700bd", + "providers/search_suffix_kernels.py": "0523c90f036ff01cac9299fe4e47dc40dd04f264f09415985d2c98b4da43371c" + } + }, + "joint_prefix": { + "dir": "complex-joint-prefix", + "pr": 575, + "commit": "eac6f7e378ab622dac50a2fd4b7ef6eab014de44", + "manifest_sha256": "fd30701bd9bd652985db18fa95bee08a34615ef417a2feb2f55efd60a0b5d665", + "full_tree": false, + "files": { + "code/audit_joint_prefix.py": "c01836709f3650a39c46418ac1771980b4b96288e60b51032b5d31419e484c37", + "code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "code/build_joint_prefix.py": "d7804669e528b6fd8d80195a4a2e76efac9bc67440b82c73973f4bc9fe273783", + "data/EIGHTCOLD-JOINT-KERNELS.json": "0381935d8d162eb48044bdf7e36a42af761f6d4032509b9b397ca02d3134f585", + "data/JOINT-PREFIX.json": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2" + } + }, + "frame_coalescing": { + "dir": "kernel-frame-coalescing", + "pr": 583, + "commit": "89be768f0157f5a3d8e4db69cf1748768605eac9", + "manifest_sha256": "f336fd702c54422d79c1b9ba7d8699ae6c99518f66a5b5bbc5f3be331fa1fadd", + "full_tree": false, + "files": { + "code/build_frames.py": "59f486c52293c76f1f6140c5f12f7a555a956b455e853c79136fc227deefbc3d" + } + }, + "direct_delivery": { + "dir": "direct-delivery504-global", + "pr": 531, + "commit": "e07a8a3f9f79c22113398a0c5dbbc7601f489b3e", + "manifest_sha256": "c1997405c5c0ccd9bdb0a30b0eb9a5a2dc7dc7ce7b59c6a83a2152b80f6410d1", + "full_tree": false, + "files": { + "code/construct_504.py": "a0d96ede40b957c38dcb64296d5f4a76c23dfb8c8875e01a80b5f1bdf6e8360e", + "inputs/hamming/PROTOTYPE.json": "327d2a868043e846381aa58a33053c24425e8cad522ff401b10ec8af1d649a3f", + "inputs/hamming/PACKET-PROGRAMS.json.gz": "d833ae0390d165d7da0c639a3c7aeb77156c2ddb52447087cb49b9d03b19e9b9" + } + } + }, + "providers": { + "ck": { + "base": { + "kind": "k_triangle", + "schedule": "pkg:data/TRI-SCHEDULE.json", + "content_sha256": "a78f4e2114212d2f4b567cc9ef4e3b31ace0c19983009cec562a642831a84c34", + "schedule_sha256": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e", + "helper_map_sha256": "688d5115b221be68c96970822cc04ff698e2a84432fa7db9cb59057f6fe55def" + }, + "steps": [ + { + "type": "port_stage", + "shadow_input": "raw504", + "shadow_output": "promoted558", + "input_content_sha256": "a78f4e2114212d2f4b567cc9ef4e3b31ace0c19983009cec562a642831a84c34", + "shadow_input_content_sha256": "aad9b01b30bb8a2c5ce8d9415afafc88b0ab288986eb3d068a2bbba8e45bef51", + "shadow_output_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "output_content_sha256": "2f15196f7f6589749676d5b3a3e193997567b996621b6166f081739ecbd5b9bf" + }, + { + "type": "port_stage", + "shadow_input": "promoted558", + "shadow_output": "ck_504:base", + "input_content_sha256": "2f15196f7f6589749676d5b3a3e193997567b996621b6166f081739ecbd5b9bf", + "shadow_input_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "shadow_output_content_sha256": "500f005d9cec374f15e086d374578cc8f2c252f9c30444a62d46f2969370a2c6", + "output_content_sha256": "b184d491bdc7d42af32649b71cf46663a1dfdfc46046bac8cd6bdef6060afdd6" + }, + { + "type": "port_stage", + "shadow_input": "ck_504:base", + "shadow_output": "ck_504:0", + "input_content_sha256": "b184d491bdc7d42af32649b71cf46663a1dfdfc46046bac8cd6bdef6060afdd6", + "shadow_input_content_sha256": "500f005d9cec374f15e086d374578cc8f2c252f9c30444a62d46f2969370a2c6", + "shadow_output_content_sha256": "11afa6986e37fd10adda3453d6e55a7353302c9597b93807916a2e5f808e259b", + "output_content_sha256": "83479d878efe213b6433ddee10281b1b52fbfb56494fb0424da6cc7e7460278e" + }, + { + "type": "port_stage", + "shadow_input": "ck_504:0", + "shadow_output": "ck_504:1", + "input_content_sha256": "83479d878efe213b6433ddee10281b1b52fbfb56494fb0424da6cc7e7460278e", + "shadow_input_content_sha256": "11afa6986e37fd10adda3453d6e55a7353302c9597b93807916a2e5f808e259b", + "shadow_output_content_sha256": "fac4ead822d8d18e441820f9ca87efeb1866414bb0b82817c6cce4655dc59269", + "output_content_sha256": "7ddfa2bca87c1bdca6b573800b646f3c2d9ff75b0dde144fcaa6f714b96c5a5c" + }, + { + "type": "port_stage", + "shadow_input": "ck_504:1", + "shadow_output": "ck_504:2", + "input_content_sha256": "7ddfa2bca87c1bdca6b573800b646f3c2d9ff75b0dde144fcaa6f714b96c5a5c", + "shadow_input_content_sha256": "fac4ead822d8d18e441820f9ca87efeb1866414bb0b82817c6cce4655dc59269", + "shadow_output_content_sha256": "efddf09daea03240f09f4b820704b07f53782a153e7dff154dbe7406e69cfb0b", + "output_content_sha256": "5532de57a57084dfbb0d0a245d76cb401124d05fc01e2f20361acb4a45a5fd33" + }, + { + "type": "frame_regroup", + "recipe": "pkg:data/recipes/k492-ck-frame_regroup.json", + "input_content_sha256": "5532de57a57084dfbb0d0a245d76cb401124d05fc01e2f20361acb4a45a5fd33", + "recipe_sha256": "9894f9c93e931b61cf34b337c4b257a72bb1d06fbdc4e8b02368e6e29ab2b644", + "negative_controls": 48, + "output_content_sha256": "b19c9c7cf895e31cd0afd12e5226cd0c917fac387bf7b12533437141790845c8" + }, + { + "type": "hyperplane_end", + "recipe": "pkg:data/recipes/k492-ck-hyperplane_end.json", + "input_content_sha256": "b19c9c7cf895e31cd0afd12e5226cd0c917fac387bf7b12533437141790845c8", + "recipe_sha256": "c71c2b05550544c29ebb4696e63cffc44d6daa76f1bc25e9c7c97e994b2c7657", + "negative_controls": 21, + "output_content_sha256": "93228917343883327493cf8e8af68be06251be4db719039ae3ca8d54595f2be6" + }, + { + "type": "cold_end", + "recipe": "pkg:data/recipes/k492-ck-cold_end.json.gz", + "input_content_sha256": "93228917343883327493cf8e8af68be06251be4db719039ae3ca8d54595f2be6", + "recipe_sha256": "9f487a0c6e89f6f3aec38726c3a4e514ffe1248ce6cda3704676f2c86ad0866c", + "negative_controls": 46, + "output_content_sha256": "9f94857de91021970cbf35099abafb3161568a723aa80e43d862606c8006485d" + } + ], + "word_content_sha256": "9f94857de91021970cbf35099abafb3161568a723aa80e43d862606c8006485d" + }, + "jp8": { + "base": { + "kind": "k_triangle", + "schedule": "pkg:data/TRI-SCHEDULE.json", + "content_sha256": "a78f4e2114212d2f4b567cc9ef4e3b31ace0c19983009cec562a642831a84c34", + "schedule_sha256": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e", + "helper_map_sha256": "688d5115b221be68c96970822cc04ff698e2a84432fa7db9cb59057f6fe55def" + }, + "steps": [ + { + "type": "port_stage", + "shadow_input": "raw504", + "shadow_output": "promoted558", + "input_content_sha256": "a78f4e2114212d2f4b567cc9ef4e3b31ace0c19983009cec562a642831a84c34", + "shadow_input_content_sha256": "aad9b01b30bb8a2c5ce8d9415afafc88b0ab288986eb3d068a2bbba8e45bef51", + "shadow_output_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "output_content_sha256": "2f15196f7f6589749676d5b3a3e193997567b996621b6166f081739ecbd5b9bf" + }, + { + "type": "port_stage", + "shadow_input": "promoted558", + "shadow_output": "jp8_504:0", + "input_content_sha256": "2f15196f7f6589749676d5b3a3e193997567b996621b6166f081739ecbd5b9bf", + "shadow_input_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "shadow_output_content_sha256": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d", + "output_content_sha256": "d1e6e83d61009650261c17ee59f44cdce1528b8908d4dc5b5437a789847ae5ba" + }, + { + "type": "port_stage", + "shadow_input": "jp8_504:0", + "shadow_output": "jp8_504:1", + "input_content_sha256": "d1e6e83d61009650261c17ee59f44cdce1528b8908d4dc5b5437a789847ae5ba", + "shadow_input_content_sha256": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d", + "shadow_output_content_sha256": "055c0fb41d8b0d506674f62d0227833a74eabd19a022a1dfeb72c3952b7a030f", + "output_content_sha256": "c5280629e7b9fc03ddd6be63fb9218935c21c015a5e5052ad14dfa34ae68466f" + }, + { + "type": "port_stage", + "shadow_input": "jp8_504:1", + "shadow_output": "jp8_504:3", + "input_content_sha256": "c5280629e7b9fc03ddd6be63fb9218935c21c015a5e5052ad14dfa34ae68466f", + "shadow_input_content_sha256": "055c0fb41d8b0d506674f62d0227833a74eabd19a022a1dfeb72c3952b7a030f", + "shadow_output_content_sha256": "6c361b33967bb62d878b3acef44a4ac2c70970e99f36a11906b03811495de533", + "output_content_sha256": "8aa907460a478d49c67dac4b96ce842a2811f0283cfa7723288ba9b82f07d80f" + }, + { + "type": "frame_regroup", + "recipe": "pkg:data/recipes/k492-jp8-frame_regroup.json", + "input_content_sha256": "8aa907460a478d49c67dac4b96ce842a2811f0283cfa7723288ba9b82f07d80f", + "recipe_sha256": "9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a", + "negative_controls": 48, + "output_content_sha256": "b7a36c11d0f49a027bbbcb6185a4484a65c176ac9597afd3fa28eaad58a8a0ce" + }, + { + "type": "hyperplane_end", + "recipe": "pkg:data/recipes/k492-jp8-hyperplane_end.json", + "input_content_sha256": "b7a36c11d0f49a027bbbcb6185a4484a65c176ac9597afd3fa28eaad58a8a0ce", + "recipe_sha256": "e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1", + "negative_controls": 21, + "output_content_sha256": "a51b37b5bd5e9e66ea14e9759f88cb6181bab041cb09aecd08e7a11956100016" + }, + { + "type": "cold_end", + "recipe": "pkg:data/recipes/k492-jp8-cold_end.json.gz", + "input_content_sha256": "a51b37b5bd5e9e66ea14e9759f88cb6181bab041cb09aecd08e7a11956100016", + "recipe_sha256": "90952fde4666724f783191d92f132e9f6aa84cdc6163a42974774e9957cd6f35", + "negative_controls": 46, + "output_content_sha256": "7f4c71dd12c7c2fbfbb4602aba6089f0633a73464ae24facba05054be8930774" + } + ], + "word_content_sha256": "7f4c71dd12c7c2fbfbb4602aba6089f0633a73464ae24facba05054be8930774" + } + }, + "shadows": { + "ck_504": { + "base": { + "kind": "source_file", + "file": "structural_gain:frontier-composition/combined-prefix-word/FULL-WORD.json.gz", + "content_sha256": "500f005d9cec374f15e086d374578cc8f2c252f9c30444a62d46f2969370a2c6" + }, + "steps": [ + { + "type": "greedy_kernels", + "recipe": "pkg:data/recipes/ck-step0-greedy_kernels.json", + "input_content_sha256": "500f005d9cec374f15e086d374578cc8f2c252f9c30444a62d46f2969370a2c6", + "recipe_sha256": "c839199d0e6f8e976978fe97bc0c5579a65ba69dfb6864585b448cccc1113056", + "omission_controls": 48, + "output_content_sha256": "11afa6986e37fd10adda3453d6e55a7353302c9597b93807916a2e5f808e259b" + }, + { + "type": "frame_coalesce", + "recipe": "pkg:data/recipes/ck-step1-frame_coalesce.json", + "input_content_sha256": "11afa6986e37fd10adda3453d6e55a7353302c9597b93807916a2e5f808e259b", + "recipe_sha256": "0c8e5991e1338f03b837814dd060d4dd598c324e3538ee510913e0444a384ee3", + "negative_controls": 12, + "output_content_sha256": "fac4ead822d8d18e441820f9ca87efeb1866414bb0b82817c6cce4655dc59269" + }, + { + "type": "gate_move_coalesce", + "recipe": "pkg:data/recipes/ck-step2-gate_move_coalesce.json", + "input_content_sha256": "fac4ead822d8d18e441820f9ca87efeb1866414bb0b82817c6cce4655dc59269", + "recipe_sha256": "1f5b62c76915b1b8bbcf63b42dcbd87a536c34d3721c4a9b68e651404717bf00", + "negative_controls": 6, + "output_content_sha256": "efddf09daea03240f09f4b820704b07f53782a153e7dff154dbe7406e69cfb0b" + } + ], + "word_content_sha256": "efddf09daea03240f09f4b820704b07f53782a153e7dff154dbe7406e69cfb0b" + }, + "jp8_504": { + "base": { + "kind": "frozen558_promoted", + "content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d" + }, + "steps": [ + { + "type": "cold_kernel", + "recipe": "multicold:data/EIGHT-COLD.json", + "input_content_sha256": "2b67fd69853dfc28f30ab5bb928f573077ae9d2bfa12cc36254d018d56133a5d", + "recipe_sha256": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160", + "omission_controls": 6, + "output_content_sha256": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d" + }, + { + "type": "multicut", + "recipe": "multicold:data/EIGHT-MULTICOLD.json", + "input_content_sha256": "edb55811a9d38802c311c74bdd2d4d1b2f3eaf37d06e4178eef0785c2fa4b57d", + "recipe_sha256": "d18ea59995d384833c95a7a55d8167f83439b6881a524ab03df972ede3e0d7b9", + "omission_controls": 32, + "output_content_sha256": "055c0fb41d8b0d506674f62d0227833a74eabd19a022a1dfeb72c3952b7a030f" + }, + { + "type": "frozen558_scalar_audits" + }, + { + "type": "joint_prefix", + "variant": "eightcold", + "kernel_recipes": "joint_prefix:data/EIGHTCOLD-JOINT-KERNELS.json", + "recipe": "joint_prefix:data/JOINT-PREFIX.json", + "input_content_sha256": "055c0fb41d8b0d506674f62d0227833a74eabd19a022a1dfeb72c3952b7a030f", + "recipe_sha256": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2", + "kernel_recipes_sha256": "0381935d8d162eb48044bdf7e36a42af761f6d4032509b9b397ca02d3134f585", + "omission_controls": 135, + "rank5_controls": 8, + "joint_negative_controls": 15, + "output_content_sha256": "6c361b33967bb62d878b3acef44a4ac2c70970e99f36a11906b03811495de533" + } + ], + "word_content_sha256": "6c361b33967bb62d878b3acef44a4ac2c70970e99f36a11906b03811495de533" + } + } + }, + "width_spot_helpers": [ + 264, + 276, + 288, + 300 + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/TRI-SCHEDULE.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/TRI-SCHEDULE.json new file mode 100644 index 0000000000..53c8a99444 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/TRI-SCHEDULE.json @@ -0,0 +1 @@ +{"full_pairs": [[0, 1], [2, 3], [4, 5], [6, 7]], "triangles": [{"p": [0, 1], "e": -1, "reads": [[21, [0, 1, 4, 5], 17], [61, [0, 1, 2, 3], 17], [60, [0, 1, 6, 7], 19], [29, [0, 1, 6, 7], 17], [20, [0, 1, 2, 3], 19], [29, [0, 1, 2, 3], 19], [60, [0, 1, 4, 5], 17], [28, [0, 1, 4, 5], 19], [28, [0, 1, 6, 7], 17], [61, [0, 1, 6, 7], 19], [21, [0, 1, 4, 5], 19], [60, [0, 1, 4, 5], 19], [20, [0, 1, 2, 3], 17], [29, [0, 1, 2, 3], 17], [61, [0, 1, 4, 5], 17], [28, [0, 1, 2, 3], 19], [21, [0, 1, 6, 7], 17], [60, [0, 1, 6, 7], 17], [20, [0, 1, 6, 7], 19], [20, [0, 1, 4, 5], 17], [28, [0, 1, 2, 3], 17], [29, [0, 1, 6, 7], 19], [61, [0, 1, 4, 5], 19], [21, [0, 1, 2, 3], 19], [60, [0, 1, 2, 3], 19], [21, [0, 1, 2, 3], 17], [29, [0, 1, 4, 5], 17], [61, [0, 1, 6, 7], 17], [28, [0, 1, 6, 7], 19], [20, [0, 1, 4, 5], 19]]}, {"p": [2, 3], "e": -1, "reads": [[85, [2, 3, 4, 5], 17], [84, [2, 3, 6, 7], 19], [92, [2, 3, 4, 5], 19], [93, [0, 1, 2, 3], 21], [84, [2, 3, 4, 5], 17], [85, [2, 3, 4, 5], 19], [62, [0, 1, 2, 3], 2], [84, [2, 3, 4, 5], 19], [58, [2, 3, 6, 7], 17], [58, [2, 3, 6, 7], 19], [93, [0, 1, 2, 3], 2], [92, [0, 1, 2, 3], 21], [85, [0, 1, 2, 3], 21], [92, [0, 1, 2, 3], 2], [62, [2, 3, 6, 7], 17], [62, [2, 3, 6, 7], 19], [93, [2, 3, 6, 7], 17], [58, [2, 3, 4, 5], 17], [62, [2, 3, 4, 5], 17], [85, [0, 1, 2, 3], 2], [92, [2, 3, 6, 7], 17], [84, [0, 1, 2, 3], 21], [84, [0, 1, 2, 3], 2], [93, [2, 3, 6, 7], 19], [58, [2, 3, 4, 5], 19], [85, [2, 3, 6, 7], 17], [93, [2, 3, 4, 5], 17], [58, [0, 1, 2, 3], 21], [92, [2, 3, 6, 7], 19], [62, [2, 3, 4, 5], 19]]}, {"p": [4, 5], "e": -1, "reads": [[53, [2, 3, 4, 5], 21], [26, [4, 5, 6, 7], 19], [26, [2, 3, 4, 5], 21], [30, [2, 3, 4, 5], 2], [90, [4, 5, 6, 7], 17], [52, [0, 1, 4, 5], 2], [30, [4, 5, 6, 7], 17], [90, [0, 1, 4, 5], 2], [94, [0, 1, 4, 5], 21], [94, [2, 3, 4, 5], 2], [53, [0, 1, 4, 5], 21], [52, [4, 5, 6, 7], 19], [52, [2, 3, 4, 5], 21], [26, [0, 1, 4, 5], 21], [52, [0, 1, 4, 5], 21], [94, [4, 5, 6, 7], 17], [30, [0, 1, 4, 5], 2], [53, [2, 3, 4, 5], 2], [26, [2, 3, 4, 5], 2], [52, [2, 3, 4, 5], 2], [53, [4, 5, 6, 7], 17], [26, [4, 5, 6, 7], 17], [94, [0, 1, 4, 5], 2], [90, [4, 5, 6, 7], 19], [90, [2, 3, 4, 5], 21], [90, [0, 1, 4, 5], 21], [30, [4, 5, 6, 7], 19], [94, [4, 5, 6, 7], 19], [53, [0, 1, 4, 5], 2], [30, [2, 3, 4, 5], 21]]}, {"p": [6, 7], "e": -1, "reads": [[54, [2, 3, 6, 7], 21], [82, [0, 1, 6, 7], 21], [86, [2, 3, 6, 7], 2], [22, [0, 1, 6, 7], 2], [50, [4, 5, 6, 7], 21], [50, [2, 3, 6, 7], 21], [54, [2, 3, 6, 7], 2], [50, [2, 3, 6, 7], 2], [18, [4, 5, 6, 7], 2], [82, [0, 1, 6, 7], 2], [18, [4, 5, 6, 7], 21], [86, [0, 1, 6, 7], 21], [22, [4, 5, 6, 7], 2], [82, [4, 5, 6, 7], 2], [86, [0, 1, 6, 7], 2], [86, [4, 5, 6, 7], 2], [22, [4, 5, 6, 7], 21], [82, [4, 5, 6, 7], 21], [18, [2, 3, 6, 7], 21], [22, [2, 3, 6, 7], 21], [82, [2, 3, 6, 7], 21], [86, [4, 5, 6, 7], 21], [18, [2, 3, 6, 7], 2], [22, [2, 3, 6, 7], 2], [54, [0, 1, 6, 7], 21], [54, [0, 1, 6, 7], 2], [54, [4, 5, 6, 7], 2], [50, [0, 1, 6, 7], 21], [50, [0, 1, 6, 7], 2], [18, [0, 1, 6, 7], 21]]}]} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/WITNESS.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/WITNESS.json new file mode 100644 index 0000000000..46ed52dab8 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/WITNESS.json @@ -0,0 +1,897 @@ +{ + "schema": "witness/1", + "name": "cold14", + "geometry": { + "v": 112, + "h": 9, + "helpers": 492, + "centres": 8, + "stages": 9, + "replicas": 8, + "cold_helpers": [ + 264, + 276, + 288, + 300 + ] + }, + "gain_baseline_kappa": "0.001601260169988325", + "data": { + "plan_sha256": "258a8b9baa245fa4096828671e2f1d1462b5af08d56890629622ef6125eaddda", + "owners_sha256": "935ff1a6823c6625daba3349b28d74acf9a3d70a5947ae155aa66c7821804add" + }, + "dispatch": [ + [ + 0, + 0, + "jp8" + ], + [ + 0, + 1, + "jp8" + ], + [ + 1, + 0, + "jp8" + ], + [ + 0, + 2, + "jp8" + ], + [ + 1, + 1, + "jp8" + ], + [ + 2, + 0, + "ck" + ], + [ + 0, + 3, + "jp8" + ], + [ + 1, + 2, + "jp8" + ], + [ + 2, + 1, + "jp8" + ], + [ + 3, + 0, + "jp8" + ], + [ + 0, + 4, + "jp8" + ], + [ + 1, + 3, + "jp8" + ], + [ + 2, + 2, + "jp8" + ], + [ + 3, + 1, + "jp8" + ], + [ + 4, + 0, + "jp8" + ], + [ + 0, + 5, + "jp8" + ], + [ + 1, + 4, + "jp8" + ], + [ + 2, + 3, + "jp8" + ], + [ + 3, + 2, + "jp8" + ], + [ + 4, + 1, + "jp8" + ], + [ + 5, + 0, + "jp8" + ], + [ + 0, + 6, + "jp8" + ], + [ + 1, + 5, + "jp8" + ], + [ + 2, + 4, + "jp8" + ], + [ + 3, + 3, + "jp8" + ], + [ + 4, + 2, + "jp8" + ], + [ + 5, + 1, + "jp8" + ], + [ + 0, + 7, + "jp8" + ], + [ + 6, + 0, + "jp8" + ], + [ + 1, + 6, + "jp8" + ], + [ + 2, + 5, + "jp8" + ], + [ + 3, + 4, + "jp8" + ], + [ + 4, + 3, + "jp8" + ], + [ + 5, + 2, + "jp8" + ], + [ + 6, + 1, + "jp8" + ], + [ + 1, + 7, + "jp8" + ], + [ + 7, + 0, + "jp8" + ], + [ + 2, + 6, + "jp8" + ], + [ + 3, + 5, + "jp8" + ], + [ + 4, + 4, + "jp8" + ], + [ + 5, + 3, + "jp8" + ], + [ + 6, + 2, + "jp8" + ], + [ + 7, + 1, + "jp8" + ], + [ + 2, + 7, + "jp8" + ], + [ + 8, + 0, + "jp8" + ], + [ + 3, + 6, + "jp8" + ], + [ + 4, + 5, + "jp8" + ], + [ + 5, + 4, + "jp8" + ], + [ + 6, + 3, + "jp8" + ], + [ + 7, + 2, + "jp8" + ], + [ + 8, + 1, + "jp8" + ], + [ + 3, + 7, + "jp8" + ], + [ + 4, + 6, + "jp8" + ], + [ + 5, + 5, + "jp8" + ], + [ + 6, + 4, + "jp8" + ], + [ + 7, + 3, + "jp8" + ], + [ + 8, + 2, + "jp8" + ], + [ + 4, + 7, + "jp8" + ], + [ + 5, + 6, + "jp8" + ], + [ + 6, + 5, + "jp8" + ], + [ + 7, + 4, + "jp8" + ], + [ + 8, + 3, + "jp8" + ], + [ + 5, + 7, + "jp8" + ], + [ + 6, + 6, + "jp8" + ], + [ + 7, + 5, + "jp8" + ], + [ + 8, + 4, + "jp8" + ], + [ + 6, + 7, + "jp8" + ], + [ + 7, + 6, + "jp8" + ], + [ + 8, + 5, + "jp8" + ], + [ + 7, + 7, + "jp8" + ], + [ + 8, + 6, + "jp8" + ], + [ + 8, + 7, + "jp8" + ] + ], + "call_order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "build": { + "status": "PASS_COLD14_NATIVE_COMPLEX_AND_CITED_BIT", + "sources": { + "multicold": { + "dir": "complex-multicold", + "pr": 568, + "commit": "71c99ac935a33bb7b59a1b4a7af8725a939b0b90", + "manifest_sha256": "328ce8023d33deb308b0f1ae2320424050f836d791cf60a613ae8408e7d6f3ab", + "full_tree": true, + "files": { + "data/EIGHT-COLD.json": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160", + "data/EIGHT-MULTICOLD.json": "d18ea59995d384833c95a7a55d8167f83439b6881a524ab03df972ede3e0d7b9" + } + }, + "structural_gain": { + "dir": "structural-gain", + "pr": 571, + "commit": "b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3", + "manifest_sha256": "eb0499a927665a48a25355075dcb7dc76d0fc43c67ea6d311d9e0242b6d4a25d", + "full_tree": false, + "files": { + "frontier-composition/combined-prefix-word/FULL-WORD.json.gz": "a6cd88224427bad6d00b6fbe1d201a2c09e496c90e2cecdc04d7f2ff11a4ba42" + } + }, + "larger_gain": { + "dir": "larger-gain", + "pr": 569, + "commit": "897213a855b7fb8a1b8b0e552a2f5c42e6c1b326", + "manifest_sha256": "54d67f45ad520f4a134e069336bd0ff639aaeada28d13539298e4f2655c9692d", + "full_tree": false, + "files": { + "providers/build_entrance_promotions.py": "50737e20553b5d44381c58e5b35b5031a6797dfdda1c67a1656069f1f6203cd2", + "providers/coupled_frames_base.py": "b6033cd2959297a624b557f3d04665c8fbb680a4c0987daf0704ef93711700bd", + "providers/search_suffix_kernels.py": "0523c90f036ff01cac9299fe4e47dc40dd04f264f09415985d2c98b4da43371c" + } + }, + "joint_prefix": { + "dir": "complex-joint-prefix", + "pr": 575, + "commit": "eac6f7e378ab622dac50a2fd4b7ef6eab014de44", + "manifest_sha256": "fd30701bd9bd652985db18fa95bee08a34615ef417a2feb2f55efd60a0b5d665", + "full_tree": false, + "files": { + "code/audit_joint_prefix.py": "c01836709f3650a39c46418ac1771980b4b96288e60b51032b5d31419e484c37", + "code/audit_multicold_controls.py": "3ff631f0bdc7e707d4296ff441802cc26da9c6556650469f09ab7253558b4017", + "code/build_joint_prefix.py": "d7804669e528b6fd8d80195a4a2e76efac9bc67440b82c73973f4bc9fe273783", + "data/EIGHTCOLD-JOINT-KERNELS.json": "0381935d8d162eb48044bdf7e36a42af761f6d4032509b9b397ca02d3134f585", + "data/JOINT-PREFIX.json": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2" + } + }, + "frame_coalescing": { + "dir": "kernel-frame-coalescing", + "pr": 583, + "commit": "89be768f0157f5a3d8e4db69cf1748768605eac9", + "manifest_sha256": "f336fd702c54422d79c1b9ba7d8699ae6c99518f66a5b5bbc5f3be331fa1fadd", + "full_tree": false, + "files": { + "code/build_frames.py": "59f486c52293c76f1f6140c5f12f7a555a956b455e853c79136fc227deefbc3d" + } + }, + "direct_delivery": { + "dir": "direct-delivery504-global", + "pr": 531, + "commit": "e07a8a3f9f79c22113398a0c5dbbc7601f489b3e", + "manifest_sha256": "c1997405c5c0ccd9bdb0a30b0eb9a5a2dc7dc7ce7b59c6a83a2152b80f6410d1", + "full_tree": false, + "files": { + "code/construct_504.py": "a0d96ede40b957c38dcb64296d5f4a76c23dfb8c8875e01a80b5f1bdf6e8360e", + "inputs/hamming/PROTOTYPE.json": "327d2a868043e846381aa58a33053c24425e8cad522ff401b10ec8af1d649a3f", + "inputs/hamming/PACKET-PROGRAMS.json.gz": "d833ae0390d165d7da0c639a3c7aeb77156c2ddb52447087cb49b9d03b19e9b9" + } + } + }, + "providers": { + "ck": { + "base": { + "kind": "k_triangle", + "schedule": "pkg:data/TRI-SCHEDULE.json", + "schedule_sha256": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e" + }, + "steps": [ + { + "type": "port_stage", + "shadow_input": "raw504", + "shadow_output": "promoted558" + }, + { + "type": "port_stage", + "shadow_input": "promoted558", + "shadow_output": "ck_504:base" + }, + { + "type": "port_stage", + "shadow_input": "ck_504:base", + "shadow_output": "ck_504:0" + }, + { + "type": "port_stage", + "shadow_input": "ck_504:0", + "shadow_output": "ck_504:1" + }, + { + "type": "port_stage", + "shadow_input": "ck_504:1", + "shadow_output": "ck_504:2" + }, + { + "type": "frame_regroup", + "recipe": "pkg:data/recipes/k492-ck-frame_regroup.json", + "recipe_sha256": "9894f9c93e931b61cf34b337c4b257a72bb1d06fbdc4e8b02368e6e29ab2b644" + }, + { + "type": "hyperplane_end", + "recipe": "pkg:data/recipes/k492-ck-hyperplane_end.json", + "recipe_sha256": "c71c2b05550544c29ebb4696e63cffc44d6daa76f1bc25e9c7c97e994b2c7657" + }, + { + "type": "cold_end", + "recipe": "pkg:data/recipes/k492-ck-cold_end.json.gz", + "recipe_sha256": "9f487a0c6e89f6f3aec38726c3a4e514ffe1248ce6cda3704676f2c86ad0866c" + } + ] + }, + "jp8": { + "base": { + "kind": "k_triangle", + "schedule": "pkg:data/TRI-SCHEDULE.json", + "schedule_sha256": "94da9d5575f5b237097a77ac7dd09aff594322dd9c35138bfd34ffc5e1a7a51e" + }, + "steps": [ + { + "type": "port_stage", + "shadow_input": "raw504", + "shadow_output": "promoted558" + }, + { + "type": "port_stage", + "shadow_input": "promoted558", + "shadow_output": "jp8_504:0" + }, + { + "type": "port_stage", + "shadow_input": "jp8_504:0", + "shadow_output": "jp8_504:1" + }, + { + "type": "port_stage", + "shadow_input": "jp8_504:1", + "shadow_output": "jp8_504:3" + }, + { + "type": "frame_regroup", + "recipe": "pkg:data/recipes/k492-jp8-frame_regroup.json", + "recipe_sha256": "9bd347334de643f29865290be1ed37289f9cae6cd339547ac89b45fa7aaee65a" + }, + { + "type": "hyperplane_end", + "recipe": "pkg:data/recipes/k492-jp8-hyperplane_end.json", + "recipe_sha256": "e4d4dfd83d0c64cb0a8ee8c8bbd95d0510ee68699859e568fe201cd6f8d250c1" + }, + { + "type": "cold_end", + "recipe": "pkg:data/recipes/k492-jp8-cold_end.json.gz", + "recipe_sha256": "90952fde4666724f783191d92f132e9f6aa84cdc6163a42974774e9957cd6f35" + } + ] + } + }, + "shadows": { + "ck_504": { + "base": { + "kind": "source_file", + "file": "structural_gain:frontier-composition/combined-prefix-word/FULL-WORD.json.gz" + }, + "steps": [ + { + "type": "greedy_kernels", + "recipe": "pkg:data/recipes/ck-step0-greedy_kernels.json", + "recipe_sha256": "c839199d0e6f8e976978fe97bc0c5579a65ba69dfb6864585b448cccc1113056" + }, + { + "type": "frame_coalesce", + "recipe": "pkg:data/recipes/ck-step1-frame_coalesce.json", + "recipe_sha256": "0c8e5991e1338f03b837814dd060d4dd598c324e3538ee510913e0444a384ee3" + }, + { + "type": "gate_move_coalesce", + "recipe": "pkg:data/recipes/ck-step2-gate_move_coalesce.json", + "recipe_sha256": "1f5b62c76915b1b8bbcf63b42dcbd87a536c34d3721c4a9b68e651404717bf00" + } + ] + }, + "jp8_504": { + "base": { + "kind": "frozen558_promoted" + }, + "steps": [ + { + "type": "cold_kernel", + "recipe": "multicold:data/EIGHT-COLD.json", + "recipe_sha256": "089617bdc33fd9f27b7fc8e9ae9e01c8e65a86a57c4b6f180f4f378f3f0e6160" + }, + { + "type": "multicut", + "recipe": "multicold:data/EIGHT-MULTICOLD.json", + "recipe_sha256": "d18ea59995d384833c95a7a55d8167f83439b6881a524ab03df972ede3e0d7b9" + }, + { + "type": "frozen558_scalar_audits" + }, + { + "type": "joint_prefix", + "recipe": "joint_prefix:data/JOINT-PREFIX.json", + "variant": "eightcold", + "kernel_recipes": "joint_prefix:data/EIGHTCOLD-JOINT-KERNELS.json", + "recipe_sha256": "0fddbd3f482b72a5197eacd75abe192e1d92f83aa2cde33a76dbc7be1682bcf2", + "kernel_recipes_sha256": "0381935d8d162eb48044bdf7e36a42af761f6d4032509b9b397ca02d3134f585" + } + ] + } + } + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/cand.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/cand.json new file mode 100644 index 0000000000..b0e7db15fd --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/cand.json @@ -0,0 +1,304 @@ +{ + "schema": "candidate/1", + "name": "cold14-st2", + "package_dir": "complex-571-cold14-st2", + "title": "h4a with PR627's two factored jp8 cold ends stacked, at dispatch jp8 x71, ck x1 with an exact per-time-Hall owner map (exact-window MIP with RINS, warm-started from PR627's map)", + "summary": "Provider menu {ck, jp8}: h4a words; the jp8 cold_end recipe stacks PR627's factored ends 590 and 581 (premix re-derived in h4a's basis by solve627.py; q92 += 1/4 S403 at anchor 1665 found by fix581.py; recipe built by stack.py with the reviewed build_cold_end.apply). Owner search with Stack492's solve_h.py (helper ranges from the word R; objective sum F(r) = r*(73/r)^b, b = 0.001635) on the st2 provider locals (ColdThird runs/D4): (1) aggregate free-dispatch LP over {ck, jp8} (crossover, tight 3) warm-started from PR627's map -> LP-PATTERNS-AGG.json, which selects jp8 at every time; (2) dispatch: the LP argmax with ck pinned at time 5 (stage 2), because the global controls' partner() needs two dispatched providers -> DISPATCH.json (jp8 x71, ck x1); (3) exact-window LP (crossover) at that dispatch over base + AGG patterns with weight >= 0.01 -> LP-PATTERNS-EX.json, bound 523257.7591528998; (4) exact-window MIP, RINS around the EX vertex (slack 2/1), gap 1e-9, 2 threads, 240 s, warm-started from PR627's map; it exited normally within the time limit, but its status/gap line was not recorded (child stdout lost); (5) mkplan.py --locals (st2 locals) reproduces data/PLAN.json byte for byte. The map is admitted by the package's verifier chain, not by the search.", + "sources": { + "multicold": { + "path": "../complex-multicold", + "dir": "complex-multicold", + "pr": 568, + "commit": "71c99ac935a33bb7b59a1b4a7af8725a939b0b90", + "manifest_sha256": "328ce8023d33deb308b0f1ae2320424050f836d791cf60a613ae8408e7d6f3ab", + "full_tree": true + }, + "structural_gain": { + "path": "../structural-gain", + "dir": "structural-gain", + "pr": 571, + "commit": "b7bdc5a8de18fcf418cfb9c7d83a2b1097a5e4a3", + "manifest_sha256": "eb0499a927665a48a25355075dcb7dc76d0fc43c67ea6d311d9e0242b6d4a25d" + }, + "larger_gain": { + "path": "../larger-gain", + "dir": "larger-gain", + "pr": 569, + "commit": "897213a855b7fb8a1b8b0e552a2f5c42e6c1b326", + "manifest_sha256": "54d67f45ad520f4a134e069336bd0ff639aaeada28d13539298e4f2655c9692d" + }, + "joint_prefix": { + "path": "../complex-joint-prefix", + "dir": "complex-joint-prefix", + "pr": 575, + "commit": "eac6f7e378ab622dac50a2fd4b7ef6eab014de44", + "manifest_sha256": "fd30701bd9bd652985db18fa95bee08a34615ef417a2feb2f55efd60a0b5d665" + }, + "frame_coalescing": { + "path": "../kernel-frame-coalescing", + "dir": "kernel-frame-coalescing", + "pr": 583, + "commit": "89be768f0157f5a3d8e4db69cf1748768605eac9", + "manifest_sha256": "f336fd702c54422d79c1b9ba7d8699ae6c99518f66a5b5bbc5f3be331fa1fadd" + } + }, + "providers": { + "ck": { + "base": { + "kind": "k_triangle", + "schedule": "pkg:data/TRI-SCHEDULE.json" + }, + "steps": [ + { + "type": "port_stage", + "shadow_input": "raw504", + "shadow_output": "promoted558" + }, + { + "type": "port_stage", + "shadow_input": "promoted558", + "shadow_output": "ck_504:base" + }, + { + "type": "port_stage", + "shadow_input": "ck_504:base", + "shadow_output": "ck_504:0" + }, + { + "type": "port_stage", + "shadow_input": "ck_504:0", + "shadow_output": "ck_504:1" + }, + { + "type": "port_stage", + "shadow_input": "ck_504:1", + "shadow_output": "ck_504:2" + }, + { + "type": "frame_regroup", + "recipe": "pkg:data/recipes/k492-ck-frame_regroup.json" + }, + { + "type": "hyperplane_end", + "recipe": "pkg:data/recipes/k492-ck-hyperplane_end.json" + }, + { + "type": "cold_end", + "recipe": "pkg:data/recipes/k492-ck-cold_end.json.gz" + } + ] + }, + "jp8": { + "base": { + "kind": "k_triangle", + "schedule": "pkg:data/TRI-SCHEDULE.json" + }, + "steps": [ + { + "type": "port_stage", + "shadow_input": "raw504", + "shadow_output": "promoted558" + }, + { + "type": "port_stage", + "shadow_input": "promoted558", + "shadow_output": "jp8_504:0" + }, + { + "type": "port_stage", + "shadow_input": "jp8_504:0", + "shadow_output": "jp8_504:1" + }, + { + "type": "port_stage", + "shadow_input": "jp8_504:1", + "shadow_output": "jp8_504:3" + }, + { + "type": "frame_regroup", + "recipe": "pkg:data/recipes/k492-jp8-frame_regroup.json" + }, + { + "type": "hyperplane_end", + "recipe": "pkg:data/recipes/k492-jp8-hyperplane_end.json" + }, + { + "type": "cold_end", + "recipe": "pkg:data/recipes/k492-jp8-cold_end.json.gz" + } + ] + } + }, + "dispatch": { + "mode": "fixed", + "menu": [ + "ck", + "jp8" + ], + "plan": "pkg:data/PLAN.json", + "origin": "at the dispatch jp8 ×71, ck ×1 (the aggregate free-dispatch LP selects jp8 at every time; ck is pinned at time 5 because the global controls need two dispatched providers)", + "plan_rule": "the window MIP's PLAN with the provider registry re-derived from the admitted provider locals (widths over the word's R helpers) and `profile`/`assignment_sha256` recomputed from the map (Stack492 mkplan.py)" + }, + "owners": { + "warm_owners": "pkg:data/search/WARM-OWNERS.json.gz", + "exact_windows": true, + "origin": "an exact per-time-Hall exact-window MIP solution (RINS around the exact-window LP vertex, 240 s, warm-started from PR627's map; solver status/gap not recorded)", + "warm_owners_origin": "PR627's `data/OWNERS.json.gz` (complex-571-cold14-k492b, jeremydiviney), the warm start of the aggregate LP and the MIP", + "search": { + "method": "aggregate_lp_dispatch_then_exact_window_milp_rins", + "tool": "solve_h.py (Stack492's copy: helper ranges from the word R)", + "b": 0.001635, + "threads": 2, + "aggregate_lp": { + "seconds": 3000, + "crossover": true, + "tight": 3, + "dispatch": "free", + "warm": "WARM-OWNERS.json.gz + WARM-PLAN.json" + }, + "dispatch_rule": "per-time argmax of LP-PATTERNS-AGG selections (jp8 everywhere), then ck pinned at time 5", + "exact_lp": { + "seconds": 3000, + "crossover": true, + "exact_windows": true, + "pattern_file": "LP-PATTERNS-AGG.json", + "pmin": 0.01, + "bound": 523257.7591528998 + }, + "mip": { + "seconds": 240, + "gap": 1e-09, + "threads": 2, + "exact_windows": true, + "pattern_file": "LP-PATTERNS-AGG.json", + "pmin": 0.01, + "rins": "LP-PATTERNS-EX.json", + "rins_slack": 2, + "rins_fslack": 1, + "warm": "WARM-OWNERS.json.gz + WARM-PLAN.json" + }, + "template_plan": "TEMPLATE-PLAN.json", + "lp_inputs": { + "LP-PATTERNS-AGG.json": "aggregate free-dispatch LP relaxation over the st2 words {ck, jp8} (crossover, tight 3), warm-started from PR627's map", + "DISPATCH.json": "the dispatch {time: provider}: jp8 everywhere except ck at time 5", + "LP-PATTERNS-EX.json": "exact-window LP relaxation (crossover) at that dispatch over the base patterns plus aggregate-LP patterns with weight >= 0.01", + "WARM-PLAN.json": "PR627's data/PLAN.json, matching WARM-OWNERS.json.gz", + "TEMPLATE-PLAN.json": "the PLAN whose windows/order/registry template the nominator reuses (same as PR622's)" + }, + "result": { + "status": "not recorded (exit 0 within the 240 s limit; nomination PASS_EXACT_LITERAL_OWNER_NOMINATION)", + "provider_counts": { + "jp8": 71, + "ck": 1 + }, + "profile": { + "1": 181421, + "2": 29094, + "3": 32112, + "4": 11809, + "5": 4898, + "6": 288, + "8": 576, + "9": 2, + "32": 1, + "39": 1, + "48": 2221 + }, + "idle_remainders": { + "1": 43, + "4": 1, + "9": 2, + "32": 1, + "39": 1, + "48": 2221 + } + }, + "commands": { + "rins": "rec2.py S2b locs2 S2b-disp.json S2-agg/LP-PATTERNS.json w627 240 -> solve_h.py --template-plan TEMPLATE-PLAN.json --b 0.001635 --threads 2 --provider ck=/ck-local --provider jp8=/jp8-local --dispatch DISPATCH.json --pattern-file LP-PATTERNS-AGG.json --pmin 0.01 --warm-owners WARM-OWNERS.json.gz --warm-plan WARM-PLAN.json --exact-windows --seconds 240 --gap 1e-9 --rins LP-PATTERNS-EX.json --rins-slack 2 --rins-fslack 1", + "exact_lp": "same with --exact-windows --seconds 3000 --lp-only --crossover", + "agg_lp": "recipe.py S2 locs2 free w627 (--tight 3 --crossover)", + "mkplan": "mkplan.py S2b-rins/PLAN.json S2b-rins/OWNERS.json.gz S2b-PLAN.json --locals locs2" + } + }, + "search_inputs": { + "LP-PATTERNS-AGG.json": "pkg:data/search/LP-PATTERNS-AGG.json", + "DISPATCH.json": "pkg:data/search/DISPATCH.json", + "LP-PATTERNS-EX.json": "pkg:data/search/LP-PATTERNS-EX.json", + "WARM-PLAN.json": "pkg:data/search/WARM-PLAN.json", + "TEMPLATE-PLAN.json": "pkg:data/search/TEMPLATE-PLAN.json" + } + }, + "bar": "0.001635877117861902", + "gain_baseline_kappa": "0.001601260169988325", + "credits": [ + "**jeremydiviney**: PR627 (the two factored jp8 cold ends 590/581 and their tails; the warm-start owner map).", + "**ColdThird (research agent)**: the h4a cold ends and the widened forward-absorption allowlist (PROOF-NOTE.md).", + "**This package**: porting the PR604/B3 chains onto the K-triangle skeleton (port_stage, frame_regroup), the R-generalised global code (GlobalR) and the owner solve.", + "**AtomScout (research agent)**: the leaver-read K-triangle atom and TRI-SCHEDULE.", + "**icekylinx**: PR531 (construct_504.py, the direct-delivery source the K-triangle constructor extends).", + "**This package**: the second cold end per block and the two cold_end primitives (PROOF-NOTE.md).", + "**DreamingOfClouds**: PR604 (the cold_end construction, its verifier changes and controls), PR599, PR516, PR509, PR484.", + "**jeremykothe2**: PR601, PR600, PR596, PR593, PR592 and PR591 (hyperplane-ended helpers and the HPE verifier).", + "**DominikScholz**: PR571 and PR569 (including PR569's window-MILP nominator nominate_width7.py, which the owner search adapts).", + "**eumemic**: PR564, PR561, PR562, PR558, PR550, PR543, PR507.", + "**chafreaky**: PR583, PR572, PR551.", + "**icekylinx**: PR535 and PR531.", + "**Dugongue**: PR552 and PR514.", + "**Douglas Colkitt / CrocSwap**: maintenance.", + "**The original OpenAI #109 framework.**" + ], + "chains_origin": "PR622's K-triangle chains with ColdThird's h4a cold_end recipes; the jp8 recipe additionally carries PR627's two factored ends (590, 581) with a re-derived premix and the q92 absorption", + "shadows": { + "ck_504": { + "base": "structural_gain:frontier-composition/combined-prefix-word/FULL-WORD.json.gz", + "steps": [ + { + "type": "greedy_kernels", + "recipe": "pkg:data/recipes/ck-step0-greedy_kernels.json" + }, + { + "type": "frame_coalesce", + "recipe": "pkg:data/recipes/ck-step1-frame_coalesce.json" + }, + { + "type": "gate_move_coalesce", + "recipe": "pkg:data/recipes/ck-step2-gate_move_coalesce.json" + } + ] + }, + "jp8_504": { + "base": "frozen558_promoted", + "steps": [ + { + "type": "cold_kernel", + "recipe": "multicold:data/EIGHT-COLD.json" + }, + { + "type": "multicut", + "recipe": "multicold:data/EIGHT-MULTICOLD.json" + }, + { + "type": "frozen558_scalar_audits" + }, + { + "type": "joint_prefix", + "recipe": "joint_prefix:data/JOINT-PREFIX.json", + "variant": "eightcold", + "kernel_recipes": "joint_prefix:data/EIGHTCOLD-JOINT-KERNELS.json" + } + ] + } + }, + "inherited_unused_recipes": { + "note": "recipes inherited from PR622's package for its atm3 menu provider (atm3 and its atm3_504 shadow chain); atm3 is not on this search's menu and not in the witness", + "files": [ + "pkg:data/recipes/atm3-step0-promote.json", + "pkg:data/recipes/atm3-step1-greedy_kernels.json", + "pkg:data/recipes/atm3-step2-frame_coalesce.json", + "pkg:data/recipes/atm3-step3-gate_move_coalesce.json", + "pkg:data/recipes/k492-atm3-cold_end.json.gz", + "pkg:data/recipes/k492-atm3-frame_regroup.json", + "pkg:data/recipes/k492-atm3-hyperplane_end.json" + ] + } +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step0-promote.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step0-promote.json new file mode 100644 index 0000000000..1f078bea4f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step0-promote.json @@ -0,0 +1 @@ +[{"pivot": 627, "old_frame": [408, 80, 40, 6], "new_frame": [408, 80, 40, 6, 1], "width_before": 5, "width_after": 4, "changed_gates": 12, "profile_delta": {"1": 11, "2": -8, "3": -4, "4": 4}, "local_entropy_delta": -2.0929925750581937, "optimistic_entropy_gain": 2.7782084358496975}, {"pivot": 629, "old_frame": [408, 80, 40, 6], "new_frame": [408, 80, 40, 6, 1], "width_before": 5, "width_after": 4, "changed_gates": 9, "profile_delta": {"1": 12, "2": -7, "3": -1, "4": 1}, "local_entropy_delta": -7.454719949364001, "optimistic_entropy_gain": -2.5835189384561095}, {"pivot": 630, "old_frame": [408, 80, 40, 6], "new_frame": [408, 80, 40, 6, 1], "width_before": 5, "width_after": 4, "changed_gates": 5, "profile_delta": {"1": 9, "2": -5}, "local_entropy_delta": -6.931471805599453, "optimistic_entropy_gain": -2.060270794691562}, {"pivot": 631, "old_frame": [408, 80, 40, 6], "new_frame": [408, 80, 40, 6, 1], "width_before": 5, "width_after": 4, "changed_gates": 3, "profile_delta": {"1": 7, "2": -4}, "local_entropy_delta": -5.545177444479562, "optimistic_entropy_gain": -0.6739764335716711}, {"pivot": 635, "old_frame": [272, 144, 96, 6], "new_frame": [272, 144, 96, 6, 1], "width_before": 5, "width_after": 4, "changed_gates": 12, "profile_delta": {"1": 11, "2": -8, "3": -4, "4": 4}, "local_entropy_delta": -2.0929925750581937, "optimistic_entropy_gain": 2.7782084358496975}, {"pivot": 637, "old_frame": [272, 144, 96, 6], "new_frame": [272, 144, 96, 6, 1], "width_before": 5, "width_after": 4, "changed_gates": 9, "profile_delta": {"1": 12, "2": -7, "3": -1, "4": 1}, "local_entropy_delta": -7.454719949364001, "optimistic_entropy_gain": -2.5835189384561095}, {"pivot": 638, "old_frame": [272, 144, 96, 6], "new_frame": [272, 144, 96, 6, 1], "width_before": 5, "width_after": 4, "changed_gates": 5, "profile_delta": {"1": 9, "2": -5}, "local_entropy_delta": -6.931471805599453, "optimistic_entropy_gain": -2.060270794691562}, {"pivot": 639, "old_frame": [272, 144, 96, 6], "new_frame": [272, 144, 96, 6, 1], "width_before": 5, "width_after": 4, "changed_gates": 3, "profile_delta": {"1": 7, "2": -4}, "local_entropy_delta": -5.545177444479562, "optimistic_entropy_gain": -0.6739764335716711}, {"pivot": 651, "old_frame": [390, 68, 34, 24], "new_frame": [390, 68, 34, 24, 1], "width_before": 5, "width_after": 4, "changed_gates": 12, "profile_delta": {"1": 11, "2": -8, "3": -4, "4": 4}, "local_entropy_delta": -2.0929925750581937, "optimistic_entropy_gain": 2.7782084358496975}, {"pivot": 653, "old_frame": [390, 68, 34, 24], "new_frame": [390, 68, 34, 24, 1], "width_before": 5, "width_after": 4, "changed_gates": 9, "profile_delta": {"1": 12, "2": -7, "3": -1, "4": 1}, "local_entropy_delta": -7.454719949364001, "optimistic_entropy_gain": -2.5835189384561095}, {"pivot": 654, "old_frame": [390, 68, 34, 24], "new_frame": [390, 68, 34, 24, 1], "width_before": 5, "width_after": 4, "changed_gates": 5, "profile_delta": {"1": 9, "2": -5}, "local_entropy_delta": -6.931471805599453, "optimistic_entropy_gain": -2.060270794691562}, {"pivot": 655, "old_frame": [390, 68, 34, 24], "new_frame": [390, 68, 34, 24, 1], "width_before": 5, "width_after": 4, "changed_gates": 3, "profile_delta": {"1": 7, "2": -4}, "local_entropy_delta": -5.545177444479562, "optimistic_entropy_gain": -0.6739764335716711}, {"pivot": 659, "old_frame": [298, 170, 102, 30], "new_frame": [298, 170, 102, 30, 1], "width_before": 5, "width_after": 4, "changed_gates": 12, "profile_delta": {"1": 11, "2": -8, "3": -4, "4": 4}, "local_entropy_delta": -2.0929925750581937, "optimistic_entropy_gain": 2.7782084358496975}, {"pivot": 661, "old_frame": [298, 170, 102, 30], "new_frame": [298, 170, 102, 30, 1], "width_before": 5, "width_after": 4, "changed_gates": 9, "profile_delta": {"1": 12, "2": -7, "3": -1, "4": 1}, "local_entropy_delta": -7.454719949364001, "optimistic_entropy_gain": -2.5835189384561095}, {"pivot": 662, "old_frame": [298, 170, 102, 30], "new_frame": [298, 170, 102, 30, 1], "width_before": 5, "width_after": 4, "changed_gates": 5, "profile_delta": {"1": 9, "2": -5}, "local_entropy_delta": -6.931471805599453, "optimistic_entropy_gain": -2.060270794691562}, {"pivot": 663, "old_frame": [298, 170, 102, 30], "new_frame": [298, 170, 102, 30, 1], "width_before": 5, "width_after": 4, "changed_gates": 3, "profile_delta": {"1": 7, "2": -4}, "local_entropy_delta": -5.545177444479562, "optimistic_entropy_gain": -0.6739764335716711}, {"pivot": 667, "old_frame": [390, 96, 20, 10], "new_frame": [390, 96, 20, 10, 1], "width_before": 5, "width_after": 4, "changed_gates": 12, "profile_delta": {"1": 11, "2": -8, "3": -4, "4": 4}, "local_entropy_delta": -2.0929925750581937, "optimistic_entropy_gain": 2.7782084358496975}, {"pivot": 669, "old_frame": [390, 96, 20, 10], "new_frame": [390, 96, 20, 10, 1], "width_before": 5, "width_after": 4, "changed_gates": 9, "profile_delta": {"1": 12, "2": -7, "3": -1, "4": 1}, "local_entropy_delta": -7.454719949364001, "optimistic_entropy_gain": -2.5835189384561095}, {"pivot": 670, "old_frame": [390, 96, 20, 10], "new_frame": [390, 96, 20, 10, 1], "width_before": 5, "width_after": 4, "changed_gates": 5, "profile_delta": {"1": 9, "2": -5}, "local_entropy_delta": -6.931471805599453, "optimistic_entropy_gain": -2.060270794691562}, {"pivot": 671, "old_frame": [390, 96, 20, 10], "new_frame": [390, 96, 20, 10, 1], "width_before": 5, "width_after": 4, "changed_gates": 3, "profile_delta": {"1": 7, "2": -4}, "local_entropy_delta": -5.545177444479562, "optimistic_entropy_gain": -0.6739764335716711}, {"pivot": 683, "old_frame": [390, 75, 45, 30], "new_frame": [385, 75, 42, 25, 7], "width_before": 5, "width_after": 4, "changed_gates": 12, "profile_delta": {"1": 11, "2": -8, "3": -4, "4": 4}, "local_entropy_delta": -2.0929925750581937, "optimistic_entropy_gain": 2.7782084358496975}, {"pivot": 685, "old_frame": [390, 75, 45, 30], "new_frame": [385, 75, 42, 25, 7], "width_before": 5, "width_after": 4, "changed_gates": 9, "profile_delta": {"1": 12, "2": -7, "3": -1, "4": 1}, "local_entropy_delta": -7.454719949364001, "optimistic_entropy_gain": -2.5835189384561095}, {"pivot": 686, "old_frame": [390, 75, 45, 30], "new_frame": [385, 75, 42, 25, 7], "width_before": 5, "width_after": 4, "changed_gates": 5, "profile_delta": {"1": 9, "2": -5}, "local_entropy_delta": -6.931471805599453, "optimistic_entropy_gain": -2.060270794691562}, {"pivot": 687, "old_frame": [390, 75, 45, 30], "new_frame": [385, 75, 42, 25, 7], "width_before": 5, "width_after": 4, "changed_gates": 3, "profile_delta": {"1": 7, "2": -4}, "local_entropy_delta": -5.545177444479562, "optimistic_entropy_gain": -0.6739764335716711}, {"pivot": 691, "old_frame": [291, 163, 102, 24], "new_frame": [291, 163, 97, 24, 7], "width_before": 5, "width_after": 4, "changed_gates": 12, "profile_delta": {"1": 11, "2": -8, "3": -4, "4": 4}, "local_entropy_delta": -2.0929925750581937, "optimistic_entropy_gain": 2.7782084358496975}, {"pivot": 693, "old_frame": [291, 163, 102, 24], "new_frame": [291, 163, 97, 24, 7], "width_before": 5, "width_after": 4, "changed_gates": 9, "profile_delta": {"1": 12, "2": -7, "3": -1, "4": 1}, "local_entropy_delta": -7.454719949364001, "optimistic_entropy_gain": -2.5835189384561095}, {"pivot": 694, "old_frame": [291, 163, 102, 24], "new_frame": [291, 163, 97, 24, 7], "width_before": 5, "width_after": 4, "changed_gates": 5, "profile_delta": {"1": 9, "2": -5}, "local_entropy_delta": -6.931471805599453, "optimistic_entropy_gain": -2.060270794691562}, {"pivot": 695, "old_frame": [291, 163, 102, 24], "new_frame": [291, 163, 97, 24, 7], "width_before": 5, "width_after": 4, "changed_gates": 3, "profile_delta": {"1": 7, "2": -4}, "local_entropy_delta": -5.545177444479562, "optimistic_entropy_gain": -0.6739764335716711}, {"pivot": 699, "old_frame": [389, 96, 24, 3], "new_frame": [385, 96, 24, 4, 3], "width_before": 5, "width_after": 4, "changed_gates": 12, "profile_delta": {"1": 11, "2": -8, "3": -4, "4": 4}, "local_entropy_delta": -2.0929925750581937, "optimistic_entropy_gain": 2.7782084358496975}, {"pivot": 701, "old_frame": [389, 96, 24, 3], "new_frame": [385, 96, 24, 4, 3], "width_before": 5, "width_after": 4, "changed_gates": 9, "profile_delta": {"1": 12, "2": -7, "3": -1, "4": 1}, "local_entropy_delta": -7.454719949364001, "optimistic_entropy_gain": -2.5835189384561095}, {"pivot": 702, "old_frame": [389, 96, 24, 3], "new_frame": [385, 96, 24, 4, 3], "width_before": 5, "width_after": 4, "changed_gates": 5, "profile_delta": {"1": 9, "2": -5}, "local_entropy_delta": -6.931471805599453, "optimistic_entropy_gain": -2.060270794691562}, {"pivot": 703, "old_frame": [389, 96, 24, 3], "new_frame": [385, 96, 24, 4, 3], "width_before": 5, "width_after": 4, "changed_gates": 3, "profile_delta": {"1": 7, "2": -4}, "local_entropy_delta": -5.545177444479562, "optimistic_entropy_gain": -0.6739764335716711}, {"pivot": 707, "old_frame": [401, 96, 9, 6], "new_frame": [385, 96, 16, 9, 6], "width_before": 5, "width_after": 4, "changed_gates": 12, "profile_delta": {"1": 11, "2": -8, "3": -4, "4": 4}, "local_entropy_delta": -2.0929925750581937, "optimistic_entropy_gain": 2.7782084358496975}, {"pivot": 709, "old_frame": [401, 96, 9, 6], "new_frame": [385, 96, 16, 9, 6], "width_before": 5, "width_after": 4, "changed_gates": 9, "profile_delta": {"1": 12, "2": -7, "3": -1, "4": 1}, "local_entropy_delta": -7.454719949364001, "optimistic_entropy_gain": -2.5835189384561095}, {"pivot": 710, "old_frame": [401, 96, 9, 6], "new_frame": [385, 96, 16, 9, 6], "width_before": 5, "width_after": 4, "changed_gates": 5, "profile_delta": {"1": 9, "2": -5}, "local_entropy_delta": -6.931471805599453, "optimistic_entropy_gain": -2.060270794691562}, {"pivot": 711, "old_frame": [401, 96, 9, 6], "new_frame": [385, 96, 16, 9, 6], "width_before": 5, "width_after": 4, "changed_gates": 3, "profile_delta": {"1": 7, "2": -4}, "local_entropy_delta": -5.545177444479562, "optimistic_entropy_gain": -0.6739764335716711}, {"pivot": 715, "old_frame": [297, 169, 120, 6], "new_frame": [297, 169, 97, 25, 6], "width_before": 5, "width_after": 4, "changed_gates": 12, "profile_delta": {"1": 11, "2": -8, "3": -4, "4": 4}, "local_entropy_delta": -2.0929925750581937, "optimistic_entropy_gain": 2.7782084358496975}, {"pivot": 717, "old_frame": [297, 169, 120, 6], "new_frame": [297, 169, 97, 25, 6], "width_before": 5, "width_after": 4, "changed_gates": 9, "profile_delta": {"1": 12, "2": -7, "3": -1, "4": 1}, "local_entropy_delta": -7.454719949364001, "optimistic_entropy_gain": -2.5835189384561095}, {"pivot": 718, "old_frame": [297, 169, 120, 6], "new_frame": [297, 169, 97, 25, 6], "width_before": 5, "width_after": 4, "changed_gates": 5, "profile_delta": {"1": 9, "2": -5}, "local_entropy_delta": -6.931471805599453, "optimistic_entropy_gain": -2.060270794691562}, {"pivot": 719, "old_frame": [297, 169, 120, 6], "new_frame": [297, 169, 97, 25, 6], "width_before": 5, "width_after": 4, "changed_gates": 3, "profile_delta": {"1": 7, "2": -4}, "local_entropy_delta": -5.545177444479562, "optimistic_entropy_gain": -0.6739764335716711}] \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step1-greedy_kernels.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step1-greedy_kernels.json new file mode 100644 index 0000000000..db3a406ee2 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step1-greedy_kernels.json @@ -0,0 +1,561 @@ +{ + "input_content_sha256": "b672a8f4151a23fd420c7622fc127fb6c7f14564bb6cf93edfbd7aecbc38e1f9", + "output_content_sha256": "8de156284cde6d475f9ef679d43ef52e9aa57a62fc3a2f554655131396c64236", + "kernels": [ + { + "pivot": 462, + "frame": [ + 1 + ], + "gates": [ + { + "part": "A", + "index": 39, + "donor": 476, + "coefficient": "1", + "donor_state": [ + 476, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 40, + "donor": 477, + "coefficient": "1", + "donor_state": [ + 477, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 49, + "donor": 463, + "coefficient": "-1", + "donor_state": [ + 463, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 464, + "frame": [ + 1 + ], + "gates": [ + { + "part": "A", + "index": 25, + "donor": 474, + "coefficient": "1", + "donor_state": [ + 474, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 26, + "donor": 475, + "coefficient": "1", + "donor_state": [ + 475, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 58, + "donor": 465, + "coefficient": "-1", + "donor_state": [ + 465, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 466, + "frame": [ + 7 + ], + "gates": [ + { + "part": "A", + "index": 35, + "donor": 478, + "coefficient": "1", + "donor_state": [ + 478, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 36, + "donor": 479, + "coefficient": "1", + "donor_state": [ + 479, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 58, + "donor": 467, + "coefficient": "-1", + "donor_state": [ + 467, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 468, + "frame": [ + 7 + ], + "gates": [ + { + "part": "A", + "index": 29, + "donor": 480, + "coefficient": "1", + "donor_state": [ + 480, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 30, + "donor": 481, + "coefficient": "1", + "donor_state": [ + 481, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 58, + "donor": 469, + "coefficient": "-1", + "donor_state": [ + 469, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 490, + "frame": [ + 25 + ], + "gates": [ + { + "part": "A", + "index": 33, + "donor": 491, + "coefficient": "-1", + "donor_state": [ + 491, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 33, + "donor": 502, + "coefficient": "1", + "donor_state": [ + 502, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 33, + "donor": 503, + "coefficient": "1", + "donor_state": [ + 503, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 492, + "frame": [ + 25 + ], + "gates": [ + { + "part": "A", + "index": 44, + "donor": 493, + "coefficient": "-1", + "donor_state": [ + 493, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 44, + "donor": 504, + "coefficient": "1", + "donor_state": [ + 504, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 44, + "donor": 505, + "coefficient": "1", + "donor_state": [ + 505, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 514, + "frame": [ + 31 + ], + "gates": [ + { + "part": "A", + "index": 38, + "donor": 526, + "coefficient": "1", + "donor_state": [ + 526, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 39, + "donor": 527, + "coefficient": "1", + "donor_state": [ + 527, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 57, + "donor": 515, + "coefficient": "-1", + "donor_state": [ + 515, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 516, + "frame": [ + 31 + ], + "gates": [ + { + "part": "A", + "index": 51, + "donor": 528, + "coefficient": "1", + "donor_state": [ + 528, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 52, + "donor": 529, + "coefficient": "1", + "donor_state": [ + 529, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 64, + "donor": 517, + "coefficient": "-1", + "donor_state": [ + 517, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 510, + "frame": [ + 480 + ], + "gates": [ + { + "part": "B", + "index": 712, + "donor": 511, + "coefficient": "-1", + "donor_state": [ + 511, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 712, + "donor": 524, + "coefficient": "1", + "donor_state": [ + 524, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 712, + "donor": 525, + "coefficient": "1", + "donor_state": [ + 525, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 3, + "2": 4, + "3": -4 + } + }, + { + "pivot": 512, + "frame": [ + 480 + ], + "gates": [ + { + "part": "B", + "index": 717, + "donor": 513, + "coefficient": "-1", + "donor_state": [ + 513, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 717, + "donor": 522, + "coefficient": "1", + "donor_state": [ + 522, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 717, + "donor": 523, + "coefficient": "1", + "donor_state": [ + 523, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 3, + "2": 4, + "3": -4 + } + }, + { + "pivot": 586, + "frame": [ + 486 + ], + "gates": [ + { + "part": "B", + "index": 822, + "donor": 587, + "coefficient": "-1", + "donor_state": [ + 587, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 822, + "donor": 598, + "coefficient": "1", + "donor_state": [ + 598, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 822, + "donor": 599, + "coefficient": "1", + "donor_state": [ + 599, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 3, + "2": 4, + "3": -4 + } + }, + { + "pivot": 588, + "frame": [ + 486 + ], + "gates": [ + { + "part": "B", + "index": 827, + "donor": 589, + "coefficient": "-1", + "donor_state": [ + 589, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 827, + "donor": 600, + "coefficient": "1", + "donor_state": [ + 600, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 827, + "donor": 601, + "coefficient": "1", + "donor_state": [ + 601, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 3, + "2": 4, + "3": -4 + } + } + ], + "source": "coldk greedy (multi-cut, cand all, ranks [1, 2, 3], targets false, kmax 6) on w/A_t_m3/FULL-WORD.json.gz", + "final_local_profile": { + "1": 2500, + "2": 484, + "3": 280, + "4": 232, + "5": 56, + "6": 56, + "8": 8 + }, + "seconds": 0.5898449 +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step2-frame_coalesce.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step2-frame_coalesce.json new file mode 100644 index 0000000000..fb5e59269a --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step2-frame_coalesce.json @@ -0,0 +1,173 @@ +{ + "after": { + "1": 2488, + "2": 490, + "3": 280, + "4": 232, + "5": 56, + "6": 56, + "8": 8 + }, + "before": { + "1": 2500, + "2": 484, + "3": 280, + "4": 232, + "5": 56, + "6": 56, + "8": 8 + }, + "changes": [ + { + "after": [ + "add", + 465, + 464, + 1, + 1, + [ + 126, + 1 + ] + ], + "before": [ + "add", + 465, + 464, + 1, + 1, + [ + 1 + ] + ], + "index": 78, + "section": "A" + }, + { + "after": [ + "add", + 467, + 466, + 1, + 1, + [ + 121, + 7 + ] + ], + "before": [ + "add", + 467, + 466, + 1, + 1, + [ + 7 + ] + ], + "index": 75, + "section": "A" + }, + { + "after": [ + "add", + 469, + 468, + 1, + 1, + [ + 120, + 7 + ] + ], + "before": [ + "add", + 469, + 468, + 1, + 1, + [ + 7 + ] + ], + "index": 72, + "section": "A" + }, + { + "after": [ + "add", + 463, + 462, + 1, + 1, + [ + 120, + 1 + ] + ], + "before": [ + "add", + 463, + 462, + 1, + 1, + [ + 1 + ] + ], + "index": 69, + "section": "A" + }, + { + "after": [ + "add", + 517, + 516, + 1, + 1, + [ + 103, + 31 + ] + ], + "before": [ + "add", + 517, + 516, + 1, + 1, + [ + 31 + ] + ], + "index": 66, + "section": "A" + }, + { + "after": [ + "add", + 515, + 514, + 1, + 1, + [ + 102, + 31 + ] + ], + "before": [ + "add", + 515, + 514, + 1, + 1, + [ + 31 + ] + ], + "index": 61, + "section": "A" + } + ], + "input_content_sha256": "8de156284cde6d475f9ef679d43ef52e9aa57a62fc3a2f554655131396c64236" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step3-gate_move_coalesce.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step3-gate_move_coalesce.json new file mode 100644 index 0000000000..ac941259cb --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/atm3-step3-gate_move_coalesce.json @@ -0,0 +1,85 @@ +{ + "after": { + "1": 2484, + "2": 492, + "3": 280, + "4": 232, + "5": 56, + "6": 56, + "8": 8 + }, + "before": { + "1": 2488, + "2": 490, + "3": 280, + "4": 232, + "5": 56, + "6": 56, + "8": 8 + }, + "changes": [ + { + "after": [ + "add", + 491, + 490, + 1, + 1, + [ + 96, + 25 + ] + ], + "before": [ + "add", + 491, + 490, + 1, + 1, + [ + 25 + ] + ], + "index": 35, + "section": "A" + }, + { + "after": [ + "add", + 493, + 492, + 1, + 1, + [ + 97, + 25 + ] + ], + "before": [ + "add", + 493, + 492, + 1, + 1, + [ + 25 + ] + ], + "index": 48, + "section": "A" + } + ], + "input_content_sha256": "dffa3c643b522b524a79220c71aa15be9ee10134b3d597c293c643f6a543d472", + "moves": [ + { + "from": 33, + "section": "A", + "to": 35 + }, + { + "from": 46, + "section": "A", + "to": 48 + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step0-greedy_kernels.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step0-greedy_kernels.json new file mode 100644 index 0000000000..89a4677766 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step0-greedy_kernels.json @@ -0,0 +1,550 @@ +{ + "input_content_sha256": "500f005d9cec374f15e086d374578cc8f2c252f9c30444a62d46f2969370a2c6", + "output_content_sha256": "11afa6986e37fd10adda3453d6e55a7353302c9597b93807916a2e5f808e259b", + "kernels": [ + { + "pivot": 462, + "frame": [ + 1 + ], + "gates": [ + { + "part": "A", + "index": 39, + "donor": 476, + "coefficient": "1", + "donor_state": [ + 476, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 40, + "donor": 477, + "coefficient": "1", + "donor_state": [ + 477, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 49, + "donor": 463, + "coefficient": "-1", + "donor_state": [ + 463, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 464, + "frame": [ + 1 + ], + "gates": [ + { + "part": "A", + "index": 25, + "donor": 474, + "coefficient": "1", + "donor_state": [ + 474, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 26, + "donor": 475, + "coefficient": "1", + "donor_state": [ + 475, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 58, + "donor": 465, + "coefficient": "-1", + "donor_state": [ + 465, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 466, + "frame": [ + 7 + ], + "gates": [ + { + "part": "A", + "index": 35, + "donor": 478, + "coefficient": "1", + "donor_state": [ + 478, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 36, + "donor": 479, + "coefficient": "1", + "donor_state": [ + 479, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 58, + "donor": 467, + "coefficient": "-1", + "donor_state": [ + 467, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 468, + "frame": [ + 7 + ], + "gates": [ + { + "part": "A", + "index": 29, + "donor": 480, + "coefficient": "1", + "donor_state": [ + 480, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 30, + "donor": 481, + "coefficient": "1", + "donor_state": [ + 481, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 58, + "donor": 469, + "coefficient": "-1", + "donor_state": [ + 469, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 490, + "frame": [ + 25 + ], + "gates": [ + { + "part": "A", + "index": 33, + "donor": 491, + "coefficient": "-1", + "donor_state": [ + 491, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 33, + "donor": 502, + "coefficient": "1", + "donor_state": [ + 502, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 33, + "donor": 503, + "coefficient": "1", + "donor_state": [ + 503, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 492, + "frame": [ + 25 + ], + "gates": [ + { + "part": "A", + "index": 44, + "donor": 493, + "coefficient": "-1", + "donor_state": [ + 493, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 44, + "donor": 504, + "coefficient": "1", + "donor_state": [ + 504, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 44, + "donor": 505, + "coefficient": "1", + "donor_state": [ + 505, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 514, + "frame": [ + 31 + ], + "gates": [ + { + "part": "A", + "index": 38, + "donor": 526, + "coefficient": "1", + "donor_state": [ + 526, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 39, + "donor": 527, + "coefficient": "1", + "donor_state": [ + 527, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 57, + "donor": 515, + "coefficient": "-1", + "donor_state": [ + 515, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 516, + "frame": [ + 31 + ], + "gates": [ + { + "part": "A", + "index": 51, + "donor": 528, + "coefficient": "1", + "donor_state": [ + 528, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 52, + "donor": 529, + "coefficient": "1", + "donor_state": [ + 529, + 0 + ], + "split_donor": true + }, + { + "part": "A", + "index": 64, + "donor": 517, + "coefficient": "-1", + "donor_state": [ + 517, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 7, + "2": -4 + } + }, + { + "pivot": 510, + "frame": [ + 480 + ], + "gates": [ + { + "part": "B", + "index": 712, + "donor": 511, + "coefficient": "-1", + "donor_state": [ + 511, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 712, + "donor": 524, + "coefficient": "1", + "donor_state": [ + 524, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 712, + "donor": 525, + "coefficient": "1", + "donor_state": [ + 525, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 3, + "2": 4, + "3": -4 + } + }, + { + "pivot": 512, + "frame": [ + 480 + ], + "gates": [ + { + "part": "B", + "index": 717, + "donor": 513, + "coefficient": "-1", + "donor_state": [ + 513, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 717, + "donor": 522, + "coefficient": "1", + "donor_state": [ + 522, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 717, + "donor": 523, + "coefficient": "1", + "donor_state": [ + 523, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 3, + "2": 4, + "3": -4 + } + }, + { + "pivot": 586, + "frame": [ + 486 + ], + "gates": [ + { + "part": "B", + "index": 822, + "donor": 587, + "coefficient": "-1", + "donor_state": [ + 587, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 822, + "donor": 598, + "coefficient": "1", + "donor_state": [ + 598, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 822, + "donor": 599, + "coefficient": "1", + "donor_state": [ + 599, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 3, + "2": 4, + "3": -4 + } + }, + { + "pivot": 588, + "frame": [ + 486 + ], + "gates": [ + { + "part": "B", + "index": 827, + "donor": 589, + "coefficient": "-1", + "donor_state": [ + 589, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 827, + "donor": 600, + "coefficient": "1", + "donor_state": [ + 600, + 0 + ], + "split_donor": true + }, + { + "part": "B", + "index": 827, + "donor": 601, + "coefficient": "1", + "donor_state": [ + 601, + 0 + ], + "split_donor": true + } + ], + "profile_delta": { + "1": 3, + "2": 4, + "3": -4 + } + } + ] +} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step1-frame_coalesce.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step1-frame_coalesce.json new file mode 100644 index 0000000000..fa80dd680d --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step1-frame_coalesce.json @@ -0,0 +1,173 @@ +{ + "after": { + "1": 2408, + "2": 570, + "3": 320, + "4": 192, + "5": 56, + "6": 56, + "8": 8 + }, + "before": { + "1": 2420, + "2": 564, + "3": 320, + "4": 192, + "5": 56, + "6": 56, + "8": 8 + }, + "changes": [ + { + "after": [ + "add", + 465, + 464, + 1, + 1, + [ + 126, + 1 + ] + ], + "before": [ + "add", + 465, + 464, + 1, + 1, + [ + 1 + ] + ], + "index": 78, + "section": "A" + }, + { + "after": [ + "add", + 467, + 466, + 1, + 1, + [ + 121, + 7 + ] + ], + "before": [ + "add", + 467, + 466, + 1, + 1, + [ + 7 + ] + ], + "index": 75, + "section": "A" + }, + { + "after": [ + "add", + 469, + 468, + 1, + 1, + [ + 120, + 7 + ] + ], + "before": [ + "add", + 469, + 468, + 1, + 1, + [ + 7 + ] + ], + "index": 72, + "section": "A" + }, + { + "after": [ + "add", + 463, + 462, + 1, + 1, + [ + 120, + 1 + ] + ], + "before": [ + "add", + 463, + 462, + 1, + 1, + [ + 1 + ] + ], + "index": 69, + "section": "A" + }, + { + "after": [ + "add", + 517, + 516, + 1, + 1, + [ + 103, + 31 + ] + ], + "before": [ + "add", + 517, + 516, + 1, + 1, + [ + 31 + ] + ], + "index": 66, + "section": "A" + }, + { + "after": [ + "add", + 515, + 514, + 1, + 1, + [ + 102, + 31 + ] + ], + "before": [ + "add", + 515, + 514, + 1, + 1, + [ + 31 + ] + ], + "index": 61, + "section": "A" + } + ], + "input_content_sha256": "11afa6986e37fd10adda3453d6e55a7353302c9597b93807916a2e5f808e259b" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step2-gate_move_coalesce.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step2-gate_move_coalesce.json new file mode 100644 index 0000000000..c718de4430 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/ck-step2-gate_move_coalesce.json @@ -0,0 +1,85 @@ +{ + "after": { + "1": 2404, + "2": 572, + "3": 320, + "4": 192, + "5": 56, + "6": 56, + "8": 8 + }, + "before": { + "1": 2408, + "2": 570, + "3": 320, + "4": 192, + "5": 56, + "6": 56, + "8": 8 + }, + "changes": [ + { + "after": [ + "add", + 491, + 490, + 1, + 1, + [ + 96, + 25 + ] + ], + "before": [ + "add", + 491, + 490, + 1, + 1, + [ + 25 + ] + ], + "index": 35, + "section": "A" + }, + { + "after": [ + "add", + 493, + 492, + 1, + 1, + [ + 97, + 25 + ] + ], + "before": [ + "add", + 493, + 492, + 1, + 1, + [ + 25 + ] + ], + "index": 48, + "section": "A" + } + ], + "input_content_sha256": "fac4ead822d8d18e441820f9ca87efeb1866414bb0b82817c6cce4655dc59269", + "moves": [ + { + "from": 33, + "section": "A", + "to": 35 + }, + { + "from": 46, + "section": "A", + "to": 48 + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-cold_end.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-cold_end.json.gz new file mode 100644 index 0000000000..7dec818017 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-cold_end.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-frame_regroup.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-frame_regroup.json new file mode 100644 index 0000000000..909fdcbfef --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-frame_regroup.json @@ -0,0 +1,983 @@ +{ + "input_content_sha256": "deb98b743eadccd7e244accd26b74519e98ffca60e7cfdddb826db16b3048918", + "before": { + "1": 2612, + "2": 464, + "3": 280, + "4": 208, + "5": 56, + "6": 44, + "8": 8 + }, + "after": { + "1": 2540, + "2": 536, + "3": 256, + "4": 208, + "5": 56, + "6": 44, + "8": 8 + }, + "changes": [ + { + "section": "B", + "index": 599, + "before": [ + "add", + 172, + 235, + -1, + 2, + [ + 264, + 136, + 72, + 32, + 24, + 6 + ] + ], + "after": [ + "add", + 172, + 235, + -1, + 2, + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 600, + "before": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6 + ] + ], + "after": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 601, + "before": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 602, + "before": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6 + ] + ], + "after": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 603, + "before": [ + "add", + 140, + 267, + -1, + 2, + [ + 264, + 128, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 140, + 267, + -1, + 2, + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 604, + "before": [ + "add", + 132, + 251, + -1, + 2, + [ + 256, + 128, + 72, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 132, + 251, + -1, + 2, + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 627, + "before": [ + "add", + 196, + 58, + 1, + 1, + [ + 273, + 145, + 64, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 196, + 58, + 1, + 1, + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 630, + "before": [ + "add", + 197, + 425, + -1, + 2, + [ + 256, + 128, + 64, + 41, + 17, + 6 + ] + ], + "after": [ + "add", + 197, + 425, + -1, + 2, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 631, + "before": [ + "add", + 205, + 409, + -1, + 2, + [ + 273, + 128, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 205, + 409, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 632, + "before": [ + "add", + 170, + 237, + 1, + 1, + [ + 320, + 192, + 32, + 17, + 9, + 6 + ] + ], + "after": [ + "add", + 170, + 237, + 1, + 1, + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 633, + "before": [ + "add", + 204, + 427, + -1, + 2, + [ + 256, + 145, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 204, + 427, + -1, + 2, + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 634, + "before": [ + "add", + 174, + 411, + -1, + 2, + [ + 256, + 128, + 64, + 41, + 24, + 6 + ] + ], + "after": [ + "add", + 174, + 411, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 654, + "before": [ + "add", + 164, + 90, + 1, + 1, + [ + 321, + 128, + 33, + 17, + 9, + 6 + ] + ], + "after": [ + "add", + 164, + 90, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 656, + "before": [ + "add", + 138, + 441, + -1, + 2, + [ + 273, + 128, + 80, + 33, + 9, + 6 + ] + ], + "after": [ + "add", + 138, + 441, + -1, + 2, + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 660, + "before": [ + "add", + 202, + 253, + 1, + 1, + [ + 256, + 145, + 80, + 48, + 9, + 6 + ] + ], + "after": [ + "add", + 202, + 253, + 1, + 1, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 662, + "before": [ + "add", + 206, + 443, + -1, + 2, + [ + 273, + 128, + 65, + 33, + 9, + 6 + ] + ], + "after": [ + "add", + 206, + 443, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 663, + "before": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 137, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 664, + "before": [ + "add", + 142, + 413, + 1, + 1, + [ + 256, + 137, + 65, + 40, + 17, + 6 + ] + ], + "after": [ + "add", + 142, + 413, + 1, + 1, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 685, + "before": [ + "add", + 194, + 429, + 1, + 1, + [ + 272, + 144, + 65, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 194, + 429, + 1, + 1, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 686, + "before": [ + "add", + 198, + 445, + 1, + 1, + [ + 256, + 128, + 81, + 33, + 8, + 6 + ] + ], + "after": [ + "add", + 198, + 445, + 1, + 1, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 688, + "before": [ + "add", + 134, + 82, + 1, + 1, + [ + 272, + 144, + 81, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 134, + 82, + 1, + 1, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 691, + "before": [ + "add", + 166, + 50, + 1, + 1, + [ + 256, + 193, + 33, + 16, + 8, + 6 + ] + ], + "after": [ + "add", + 166, + 50, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 693, + "before": [ + "add", + 162, + 18, + 1, + 1, + [ + 321, + 128, + 33, + 16, + 8, + 6 + ] + ], + "after": [ + "add", + 162, + 18, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 694, + "before": [ + "add", + 130, + 269, + 1, + 1, + [ + 256, + 128, + 65, + 33, + 16, + 6 + ] + ], + "after": [ + "add", + 130, + 269, + 1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-hyperplane_end.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-hyperplane_end.json new file mode 100644 index 0000000000..069d4be65e --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-atm3-hyperplane_end.json @@ -0,0 +1,481 @@ +{ + "changes": [ + { + "helper": 448, + "cleanup_index": 664, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 449, + "cleanup_index": 663, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 450, + "cleanup_index": 662, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 451, + "cleanup_index": 661, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 452, + "cleanup_index": 660, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 453, + "cleanup_index": 659, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 454, + "cleanup_index": 658, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 455, + "cleanup_index": 657, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 456, + "cleanup_index": 656, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 457, + "cleanup_index": 655, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 458, + "cleanup_index": 652, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 467, + "cleanup_index": 643, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 468, + "cleanup_index": 640, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 477, + "cleanup_index": 631, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 490, + "cleanup_index": 609, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 491, + "cleanup_index": 608, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 514, + "cleanup_index": 567, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 515, + "cleanup_index": 566, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 538, + "cleanup_index": 533, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 539, + "cleanup_index": 532, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 562, + "cleanup_index": 501, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 563, + "cleanup_index": 500, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 574, + "cleanup_index": 487, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 583, + "cleanup_index": 472, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 584, + "cleanup_index": 469, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 593, + "cleanup_index": 460, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 594, + "cleanup_index": 457, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 595, + "cleanup_index": 456, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 596, + "cleanup_index": 455, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 598, + "cleanup_index": 453, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 600, + "cleanup_index": 451, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 601, + "cleanup_index": 450, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 602, + "cleanup_index": 449, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 603, + "cleanup_index": 448, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + } + ], + "output_content_sha256": "16f831b9c6a79bbb68af50612621fb101edaa78a5496c740f82a0e886b9c969a" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-cold_end.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-cold_end.json.gz new file mode 100644 index 0000000000..cbfc5e267b Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-cold_end.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-frame_regroup.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-frame_regroup.json new file mode 100644 index 0000000000..c17c1dc06f --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-frame_regroup.json @@ -0,0 +1,983 @@ +{ + "input_content_sha256": "5532de57a57084dfbb0d0a245d76cb401124d05fc01e2f20361acb4a45a5fd33", + "before": { + "1": 2532, + "2": 544, + "3": 320, + "4": 168, + "5": 56, + "6": 44, + "8": 8 + }, + "after": { + "1": 2460, + "2": 616, + "3": 296, + "4": 168, + "5": 56, + "6": 44, + "8": 8 + }, + "changes": [ + { + "section": "B", + "index": 599, + "before": [ + "add", + 172, + 235, + -1, + 2, + [ + 264, + 136, + 72, + 32, + 24, + 6 + ] + ], + "after": [ + "add", + 172, + 235, + -1, + 2, + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 600, + "before": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6 + ] + ], + "after": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 601, + "before": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 602, + "before": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6 + ] + ], + "after": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 603, + "before": [ + "add", + 140, + 267, + -1, + 2, + [ + 264, + 128, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 140, + 267, + -1, + 2, + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 604, + "before": [ + "add", + 132, + 251, + -1, + 2, + [ + 256, + 128, + 72, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 132, + 251, + -1, + 2, + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 627, + "before": [ + "add", + 196, + 58, + 1, + 1, + [ + 273, + 145, + 64, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 196, + 58, + 1, + 1, + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 630, + "before": [ + "add", + 197, + 425, + -1, + 2, + [ + 256, + 128, + 64, + 41, + 17, + 6 + ] + ], + "after": [ + "add", + 197, + 425, + -1, + 2, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 631, + "before": [ + "add", + 205, + 409, + -1, + 2, + [ + 273, + 128, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 205, + 409, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 632, + "before": [ + "add", + 170, + 237, + 1, + 1, + [ + 320, + 192, + 32, + 17, + 9, + 6 + ] + ], + "after": [ + "add", + 170, + 237, + 1, + 1, + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 633, + "before": [ + "add", + 204, + 427, + -1, + 2, + [ + 256, + 145, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 204, + 427, + -1, + 2, + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 634, + "before": [ + "add", + 174, + 411, + -1, + 2, + [ + 256, + 128, + 64, + 41, + 24, + 6 + ] + ], + "after": [ + "add", + 174, + 411, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 654, + "before": [ + "add", + 164, + 90, + 1, + 1, + [ + 321, + 128, + 33, + 17, + 9, + 6 + ] + ], + "after": [ + "add", + 164, + 90, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 656, + "before": [ + "add", + 138, + 441, + -1, + 2, + [ + 273, + 128, + 80, + 33, + 9, + 6 + ] + ], + "after": [ + "add", + 138, + 441, + -1, + 2, + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 660, + "before": [ + "add", + 202, + 253, + 1, + 1, + [ + 256, + 145, + 80, + 48, + 9, + 6 + ] + ], + "after": [ + "add", + 202, + 253, + 1, + 1, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 662, + "before": [ + "add", + 206, + 443, + -1, + 2, + [ + 273, + 128, + 65, + 33, + 9, + 6 + ] + ], + "after": [ + "add", + 206, + 443, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 663, + "before": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 137, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 664, + "before": [ + "add", + 142, + 413, + 1, + 1, + [ + 256, + 137, + 65, + 40, + 17, + 6 + ] + ], + "after": [ + "add", + 142, + 413, + 1, + 1, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 685, + "before": [ + "add", + 194, + 429, + 1, + 1, + [ + 272, + 144, + 65, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 194, + 429, + 1, + 1, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 686, + "before": [ + "add", + 198, + 445, + 1, + 1, + [ + 256, + 128, + 81, + 33, + 8, + 6 + ] + ], + "after": [ + "add", + 198, + 445, + 1, + 1, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 688, + "before": [ + "add", + 134, + 82, + 1, + 1, + [ + 272, + 144, + 81, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 134, + 82, + 1, + 1, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 691, + "before": [ + "add", + 166, + 50, + 1, + 1, + [ + 256, + 193, + 33, + 16, + 8, + 6 + ] + ], + "after": [ + "add", + 166, + 50, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 693, + "before": [ + "add", + 162, + 18, + 1, + 1, + [ + 321, + 128, + 33, + 16, + 8, + 6 + ] + ], + "after": [ + "add", + 162, + 18, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 694, + "before": [ + "add", + 130, + 269, + 1, + 1, + [ + 256, + 128, + 65, + 33, + 16, + 6 + ] + ], + "after": [ + "add", + 130, + 269, + 1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-hyperplane_end.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-hyperplane_end.json new file mode 100644 index 0000000000..337c5f3f92 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-ck-hyperplane_end.json @@ -0,0 +1,481 @@ +{ + "changes": [ + { + "helper": 448, + "cleanup_index": 664, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 449, + "cleanup_index": 663, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 450, + "cleanup_index": 662, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 451, + "cleanup_index": 661, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 452, + "cleanup_index": 660, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 453, + "cleanup_index": 659, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 454, + "cleanup_index": 658, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 455, + "cleanup_index": 657, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 456, + "cleanup_index": 656, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 457, + "cleanup_index": 655, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 458, + "cleanup_index": 652, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 467, + "cleanup_index": 643, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 468, + "cleanup_index": 640, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 477, + "cleanup_index": 631, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 490, + "cleanup_index": 609, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 491, + "cleanup_index": 608, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 514, + "cleanup_index": 567, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 515, + "cleanup_index": 566, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 538, + "cleanup_index": 533, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 539, + "cleanup_index": 532, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 562, + "cleanup_index": 501, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 563, + "cleanup_index": 500, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 574, + "cleanup_index": 487, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 583, + "cleanup_index": 472, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 584, + "cleanup_index": 469, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 593, + "cleanup_index": 460, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 594, + "cleanup_index": 457, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 595, + "cleanup_index": 456, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 596, + "cleanup_index": 455, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 598, + "cleanup_index": 453, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 600, + "cleanup_index": 451, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 601, + "cleanup_index": 450, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 602, + "cleanup_index": 449, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 603, + "cleanup_index": 448, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + } + ], + "output_content_sha256": "93228917343883327493cf8e8af68be06251be4db719039ae3ca8d54595f2be6" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-cold_end.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-cold_end.json.gz new file mode 100644 index 0000000000..19d1d85688 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-cold_end.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json new file mode 100644 index 0000000000..4c7dc2c310 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-frame_regroup.json @@ -0,0 +1,983 @@ +{ + "input_content_sha256": "8aa907460a478d49c67dac4b96ce842a2811f0283cfa7723288ba9b82f07d80f", + "before": { + "1": 2448, + "2": 392, + "3": 464, + "4": 168, + "5": 56, + "6": 44, + "8": 8 + }, + "after": { + "1": 2376, + "2": 464, + "3": 440, + "4": 168, + "5": 56, + "6": 44, + "8": 8 + }, + "changes": [ + { + "section": "B", + "index": 599, + "before": [ + "add", + 172, + 235, + -1, + 2, + [ + 264, + 136, + 72, + 32, + 24, + 6 + ] + ], + "after": [ + "add", + 172, + 235, + -1, + 2, + [ + 264, + 136, + 72, + 32, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 600, + "before": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6 + ] + ], + "after": [ + "add", + 133, + 233, + -1, + 2, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 601, + "before": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 141, + 249, + -1, + 2, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 602, + "before": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6 + ] + ], + "after": [ + "add", + 173, + 265, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 603, + "before": [ + "add", + 140, + 267, + -1, + 2, + [ + 264, + 128, + 64, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 140, + 267, + -1, + 2, + [ + 264, + 128, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 604, + "before": [ + "add", + 132, + 251, + -1, + 2, + [ + 256, + 128, + 72, + 40, + 16, + 6 + ] + ], + "after": [ + "add", + 132, + 251, + -1, + 2, + [ + 256, + 128, + 72, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 627, + "before": [ + "add", + 196, + 58, + 1, + 1, + [ + 273, + 145, + 64, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 196, + 58, + 1, + 1, + [ + 257, + 129, + 64, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 630, + "before": [ + "add", + 197, + 425, + -1, + 2, + [ + 256, + 128, + 64, + 41, + 17, + 6 + ] + ], + "after": [ + "add", + 197, + 425, + -1, + 2, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 631, + "before": [ + "add", + 205, + 409, + -1, + 2, + [ + 273, + 128, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 205, + 409, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 632, + "before": [ + "add", + 170, + 237, + 1, + 1, + [ + 320, + 192, + 32, + 17, + 9, + 6 + ] + ], + "after": [ + "add", + 170, + 237, + 1, + 1, + [ + 320, + 192, + 32, + 16, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 633, + "before": [ + "add", + 204, + 427, + -1, + 2, + [ + 256, + 145, + 81, + 49, + 9, + 6 + ] + ], + "after": [ + "add", + 204, + 427, + -1, + 2, + [ + 256, + 129, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 634, + "before": [ + "add", + 174, + 411, + -1, + 2, + [ + 256, + 128, + 64, + 41, + 24, + 6 + ] + ], + "after": [ + "add", + 174, + 411, + -1, + 2, + [ + 256, + 128, + 64, + 40, + 24, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 654, + "before": [ + "add", + 164, + 90, + 1, + 1, + [ + 321, + 128, + 33, + 17, + 9, + 6 + ] + ], + "after": [ + "add", + 164, + 90, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 17, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 656, + "before": [ + "add", + 138, + 441, + -1, + 2, + [ + 273, + 128, + 80, + 33, + 9, + 6 + ] + ], + "after": [ + "add", + 138, + 441, + -1, + 2, + [ + 272, + 128, + 80, + 32, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 660, + "before": [ + "add", + 202, + 253, + 1, + 1, + [ + 256, + 145, + 80, + 48, + 9, + 6 + ] + ], + "after": [ + "add", + 202, + 253, + 1, + 1, + [ + 256, + 129, + 64, + 32, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 662, + "before": [ + "add", + 206, + 443, + -1, + 2, + [ + 273, + 128, + 65, + 33, + 9, + 6 + ] + ], + "after": [ + "add", + 206, + 443, + -1, + 2, + [ + 257, + 128, + 65, + 33, + 16, + 9, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 663, + "before": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 137, + 72, + 33, + 24, + 6 + ] + ], + "after": [ + "add", + 165, + 26, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 664, + "before": [ + "add", + 142, + 413, + 1, + 1, + [ + 256, + 137, + 65, + 40, + 17, + 6 + ] + ], + "after": [ + "add", + 142, + 413, + 1, + 1, + [ + 256, + 136, + 64, + 40, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 685, + "before": [ + "add", + 194, + 429, + 1, + 1, + [ + 272, + 144, + 65, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 194, + 429, + 1, + 1, + [ + 257, + 129, + 65, + 32, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 686, + "before": [ + "add", + 198, + 445, + 1, + 1, + [ + 256, + 128, + 81, + 33, + 8, + 6 + ] + ], + "after": [ + "add", + 198, + 445, + 1, + 1, + [ + 256, + 128, + 64, + 33, + 17, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 688, + "before": [ + "add", + 134, + 82, + 1, + 1, + [ + 272, + 144, + 81, + 49, + 8, + 6 + ] + ], + "after": [ + "add", + 134, + 82, + 1, + 1, + [ + 272, + 144, + 80, + 48, + 8, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 691, + "before": [ + "add", + 166, + 50, + 1, + 1, + [ + 256, + 193, + 33, + 16, + 8, + 6 + ] + ], + "after": [ + "add", + 166, + 50, + 1, + 1, + [ + 256, + 129, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 693, + "before": [ + "add", + 162, + 18, + 1, + 1, + [ + 321, + 128, + 33, + 16, + 8, + 6 + ] + ], + "after": [ + "add", + 162, + 18, + 1, + 1, + [ + 257, + 128, + 64, + 33, + 16, + 8, + 6 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + }, + { + "section": "B", + "index": 694, + "before": [ + "add", + 130, + 269, + 1, + 1, + [ + 256, + 128, + 65, + 33, + 16, + 6 + ] + ], + "after": [ + "add", + 130, + 269, + 1, + 1, + [ + 256, + 128, + 64, + 32, + 16, + 6, + 1 + ] + ], + "delta": { + "1": -3, + "2": 3, + "3": -1 + } + } + ] +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json new file mode 100644 index 0000000000..a80f662396 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/recipes/k492-jp8-hyperplane_end.json @@ -0,0 +1,481 @@ +{ + "changes": [ + { + "helper": 448, + "cleanup_index": 652, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 449, + "cleanup_index": 651, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 450, + "cleanup_index": 650, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 451, + "cleanup_index": 649, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 452, + "cleanup_index": 648, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 453, + "cleanup_index": 647, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 454, + "cleanup_index": 646, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 455, + "cleanup_index": 645, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 456, + "cleanup_index": 644, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 457, + "cleanup_index": 643, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 458, + "cleanup_index": 640, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 467, + "cleanup_index": 631, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 468, + "cleanup_index": 628, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 477, + "cleanup_index": 619, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 490, + "cleanup_index": 597, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 491, + "cleanup_index": 596, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 514, + "cleanup_index": 561, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 515, + "cleanup_index": 560, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 538, + "cleanup_index": 527, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 539, + "cleanup_index": 526, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 562, + "cleanup_index": 495, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 563, + "cleanup_index": 494, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 574, + "cleanup_index": 481, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 583, + "cleanup_index": 472, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 584, + "cleanup_index": 469, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 593, + "cleanup_index": 460, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 594, + "cleanup_index": 457, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + }, + { + "helper": 595, + "cleanup_index": 456, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 596, + "cleanup_index": 455, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 598, + "cleanup_index": 453, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 600, + "cleanup_index": 451, + "frame": [ + 256, + 128, + 64, + 32, + 18, + 10, + 6, + 1 + ] + }, + { + "helper": 601, + "cleanup_index": 450, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 602, + "cleanup_index": 449, + "frame": [ + 256, + 128, + 64, + 32, + 24, + 4, + 2, + 1 + ] + }, + { + "helper": 603, + "cleanup_index": 448, + "frame": [ + 256, + 128, + 64, + 32, + 16, + 8, + 6, + 1 + ] + } + ], + "output_content_sha256": "a51b37b5bd5e9e66ea14e9759f88cb6181bab041cb09aecd08e7a11956100016" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/DISPATCH.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/DISPATCH.json new file mode 100644 index 0000000000..e525ddc844 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/DISPATCH.json @@ -0,0 +1 @@ +{"0": "jp8", "1": "jp8", "2": "jp8", "3": "jp8", "4": "jp8", "5": "ck", "6": "jp8", "7": "jp8", "8": "jp8", "9": "jp8", "10": "jp8", "11": "jp8", "12": "jp8", "13": "jp8", "14": "jp8", "15": "jp8", "16": "jp8", "17": "jp8", "18": "jp8", "19": "jp8", "20": "jp8", "21": "jp8", "22": "jp8", "23": "jp8", "24": "jp8", "25": "jp8", "26": "jp8", "27": "jp8", "28": "jp8", "29": "jp8", "30": "jp8", "31": "jp8", "32": "jp8", "33": "jp8", "34": "jp8", "35": "jp8", "36": "jp8", "37": "jp8", "38": "jp8", "39": "jp8", "40": "jp8", "41": "jp8", "42": "jp8", "43": "jp8", "44": "jp8", "45": "jp8", "46": "jp8", "47": "jp8", "48": "jp8", "49": "jp8", "50": "jp8", "51": "jp8", "52": "jp8", "53": "jp8", "54": "jp8", "55": "jp8", "56": "jp8", "57": "jp8", "58": "jp8", "59": "jp8", "60": "jp8", "61": "jp8", "62": "jp8", "63": "jp8", "64": "jp8", "65": "jp8", "66": "jp8", "67": "jp8", "68": "jp8", "69": "jp8", "70": "jp8", "71": "jp8"} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-AGG.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-AGG.json new file mode 100644 index 0000000000..73d5296bff --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-AGG.json @@ -0,0 +1 @@ +{"objective": 523257.68708153133, "windows": {"0,0": [[[8, 8], 74.0], [[7, 9], 38.0]], "0,2": [[[8, 8], 55.75], [[7, 9], 38.0], [[4, 4, 8], 18.25]], "0,1": [[[8], 112.0]], "0,3": [[[8], 82.0], [[4, 4], 30.0]], "0,4": [[[5, 9, 9, 9], 92.14583333333333], [[7, 7, 9, 9], 19.854166666666668]], "0,6": [[[5, 9, 9, 9], 112.0]], "0,5": [[[8], 84.14583333333333], [[4, 4], 27.854166666666668]], "0,7": [[[8], 112.0]], "0,8": [[[], 68.4], [[4, 8, 9, 9, 9, 9], 43.599999999999994]], "0,10": [[[], 82.0], [[4, 8, 9, 9, 9, 9], 30.0]], "0,9": [[[8], 97.0], [[4, 4], 15.0]], "0,11": [[[8], 112.0]], "0,12": [[[], 82.0], [[4, 8, 9, 9, 9, 9], 30.0]], "0,13": [[[], 50.34166666666667], [[4, 8, 9, 9, 9, 9], 61.65833333333333]], "0,14": [[[5, 9, 9, 9], 96.0], [[4, 4, 7, 8, 9], 16.0]], "0,15": [[[5, 9, 9, 9], 112.0]], "0,16": [[[8, 8], 17.166666666666657], [[7, 9], 94.83333333333334]], "0,17": [[[7, 9], 112.0]], "1,0": [[[8, 8], 44.0], [[7, 9], 38.0], [[4, 4, 8], 30.0]], "1,2": [[[8, 8], 32.25], [[7, 9], 79.75]], "1,1": [[[8], 83.75], [[4, 4], 28.25]], "1,3": [[[8], 97.0], [[4, 4], 15.0]], "1,4": [[[5, 9, 9, 9], 112.0]], "1,6": [[[5, 9, 9, 9], 112.0]], "1,5": [[[8], 112.0]], "1,7": [[[8], 112.0]], "1,8": [[[], 44.0], [[4, 8, 9, 9, 9, 9], 68.0]], "1,10": [[[], 96.8], [[4, 8, 9, 9, 9, 9], 15.2]], "1,9": [[[8], 112.0]], "1,11": [[[8], 112.0]], "1,12": [[[], 79.70833333333333], [[4, 8, 9, 9, 9, 9], 32.29166666666667]], "1,13": [[[], 52.0], [[4, 8, 9, 9, 9, 9], 60.0]], "1,14": [[[5, 9, 9, 9], 112.0]], "1,15": [[[5, 9, 9, 9], 101.5], [[4, 4, 7, 8, 9], 10.5]], "1,16": [[[7, 9], 112.0]], "1,17": [[[7, 9], 112.0]], "2,0": [[[8, 8], 62.25], [[7, 9], 38.0], [[4, 4, 8], 11.75]], "2,2": [[[8, 8], 34.25], [[7, 9], 76.0], [[4, 4, 8], 1.75]], "2,1": [[[8], 112.0]], "2,3": [[[8], 112.0]], "2,4": [[[5, 9, 9, 9], 112.0]], "2,6": [[[5, 9, 9, 9], 112.0]], "2,5": [[[8], 82.0], [[4, 4], 29.999999999999996]], "2,7": [[[8], 112.0]], "2,8": [[[], 26.29166666666667], [[4, 8, 9, 9, 9, 9], 85.70833333333333]], "2,10": [[[], 57.108333333333356], [[4, 8, 9, 9, 9, 9], 54.891666666666644]], "2,9": [[[8], 112.0]], "2,11": [[[8], 112.0]], "2,12": [[[], 33.858333333333334], [[4, 8, 9, 9, 9, 9], 78.14166666666667]], "2,13": [[[], 60.0], [[4, 8, 9, 9, 9, 9], 52.0]], "2,14": [[[5, 9, 9, 9], 82.0], [[4, 9, 9, 9], 30.0]], "2,15": [[[5, 9, 9, 9], 112.0]], "2,16": [[[7, 9], 99.0], [[4, 4, 8], 13.0]], "2,17": [[[7, 9], 112.0]], "3,0": [[[8, 8], 55.854166666666664], [[7, 9], 56.145833333333336]], "3,2": [[[8, 8], 55.854166666666664], [[7, 9], 56.145833333333336]], "3,1": [[[8], 112.0]], "3,3": [[[8], 105.2], [[4, 4], 6.800000000000001]], "3,4": [[[5, 9, 9, 9], 112.0]], "3,6": [[[5, 9, 9, 9], 112.0]], "3,5": [[[8], 112.0]], "3,7": [[[8], 112.0]], "3,8": [[[], 102.0], [[4, 8, 9, 9, 9, 9], 10.0]], "3,10": [[[], 82.0], [[4, 8, 9, 9, 9, 9], 30.0]], "3,9": [[[8], 112.0]], "3,11": [[[8], 112.0]], "3,12": [[[], 71.13603603603599], [[4, 8, 9, 9, 9, 9], 40.86396396396401]], "3,13": [[[], 112.0]], "3,14": [[[5, 9, 9, 9], 112.0]], "3,15": [[[5, 9, 9, 9], 110.0], [[4, 4, 7, 8, 9], 1.9999999999999947]], "3,16": [[[8, 8], 32.0], [[7, 9], 80.0]], "3,17": [[[7, 9], 112.0]], "4,0": [[[8, 8], 36.0], [[7, 9], 76.0]], "4,2": [[[7, 9], 112.0]], "4,1": [[[8], 94.4], [[4, 4], 17.6]], "4,3": [[[8], 112.0]], "4,4": [[[5, 9, 9, 9], 96.0], [[4, 9, 9, 9], 16.0]], "4,6": [[[5, 9, 9, 9], 112.0]], "4,5": [[[8], 112.0]], "4,7": [[[8], 112.0]], "4,8": [[[], 86.0], [[4, 8, 9, 9, 9, 9], 26.0]], "4,10": [[[], 98.0], [[4, 8, 9, 9, 9, 9], 14.0]], "4,9": [[[8], 112.0]], "4,11": [[[8], 112.0]], "4,12": [[[], 76.0], [[4, 8, 9, 9, 9, 9], 36.0]], "4,13": [[[], 60.01505255255255], [[4, 8, 9, 9, 9, 9], 51.98494744744745]], "4,14": [[[5, 9, 9, 9], 112.0]], "4,15": [[[5, 9, 9, 9], 95.0], [[4, 4, 7, 8, 9], 17.0]], "4,16": [[[8, 8], 36.0], [[7, 9], 76.0]], "4,17": [[[7, 9], 112.0]], "5,0": [[[8, 8], 19.599999999999994], [[7, 9], 88.4], [[4, 4, 8], 4.0]], "5,2": [[[7, 9], 101.2], [[4, 4, 8], 10.8]], "5,1": [[[8], 112.0]], "5,3": [[[8], 112.0]], "5,4": [[[5, 9, 9, 9], 112.0]], "5,6": [[[5, 9, 9, 9], 112.0]], "5,5": [[[8], 105.5], [[4, 4], 6.5]], "5,7": [[[8], 112.0]], "5,8": [[[], 32.0], [[4, 8, 9, 9, 9, 9], 80.0]], "5,10": [[[], 36.96666666666667], [[4, 8, 9, 9, 9, 9], 75.03333333333333]], "5,9": [[[8], 112.0]], "5,11": [[[8], 112.0]], "5,12": [[[], 82.0], [[4, 8, 9, 9, 9, 9], 30.0]], "5,13": [[[], 82.0], [[4, 8, 9, 9, 9, 9], 30.0]], "5,14": [[[5, 9, 9, 9], 112.0]], "5,15": [[[5, 9, 9, 9], 112.0]], "5,16": [[[8, 8], 36.88186936936937], [[7, 9], 75.11813063063063]], "5,17": [[[8, 8], 47.43021771771785], [[7, 9], 64.56978228228215]], "6,0": [[[7, 9], 112.0]], "6,2": [[[7, 9], 86.29166666666667], [[4, 4, 8], 25.708333333333336]], "6,1": [[[8], 112.0]], "6,3": [[[8], 112.0]], "6,4": [[[5, 9, 9, 9], 112.0]], "6,6": [[[5, 9, 9, 9], 112.0]], "6,5": [[[8], 112.0]], "6,7": [[[8], 103.41141141141145], [[4, 4], 8.58858858858855]], "6,8": [[[], 58.141666666666644], [[4, 8, 9, 9, 9, 9], 53.858333333333356]], "6,10": [[[], 85.70833333333333], [[4, 8, 9, 9, 9, 9], 26.29166666666667]], "6,9": [[[8], 95.5], [[4, 4], 16.5]], "6,11": [[[8], 112.0]], "6,12": [[[], 87.15994744744744], [[4, 8, 9, 9, 9, 9], 24.840052552552564]], "6,13": [[[], 82.79729729729729], [[4, 8, 9, 9, 9, 9], 29.2027027027027]], "6,14": [[[5, 9, 9, 9], 104.5], [[4, 9, 9, 9], 7.5]], "6,15": [[[5, 9, 9, 9], 112.0]], "6,16": [[[8, 8], 36.0], [[7, 9], 76.0]], "6,17": [[[7, 9], 112.0]], "7,0": [[[7, 9], 107.6], [[4, 4, 8], 4.4]], "7,2": [[[8, 8], 4.0], [[7, 9], 103.70833333333333], [[4, 4, 8], 4.291666666666666]], "7,1": [[[8], 112.0]], "7,3": [[[8], 112.0]], "7,4": [[[5, 9, 9, 9], 112.0]], "7,6": [[[5, 9, 9, 9], 104.53333333333333], [[7, 8, 8, 9], 7.466666666666669]], "7,5": [[[8], 112.0]], "7,7": [[[8], 112.0]], "7,8": [[[], 38.037499999999994], [[4, 8, 9, 9, 9, 9], 73.9625]], "7,10": [[[], 62.0719219219219], [[4, 8, 9, 9, 9, 9], 49.9280780780781]], "7,9": [[[8], 112.0]], "7,11": [[[8], 112.0]], "7,12": [[[], 76.0], [[4, 8, 9, 9, 9, 9], 36.0]], "7,13": [[[], 79.43021771771785], [[4, 8, 9, 9, 9, 9], 32.56978228228215]], "7,14": [[[5, 9, 9, 9], 112.0]], "7,15": [[[5, 9, 9, 9], 110.32083333333334], [[7, 8, 8, 9], 0.8818693693693689], [[4, 9, 9, 9], 0.7972972972972983]], "7,16": [[[8, 8], 67.65112612612597], [[7, 9], 44.34887387387403]], "7,17": [[[8, 8], 66.62357357357354], [[7, 9], 45.081343843843825], [[4, 4, 8], 0.2950825825826442]]}, "selections": {"0": {"jp8": 1.0}, "1": {"ck": 0.125, "jp8": 0.875}, "2": {"jp8": 1.0}, "3": {"jp8": 1.0}, "4": {"jp8": 1.0}, "5": {"jp8": 1.0}, "6": {"jp8": 1.0}, "7": {"jp8": 1.0}, "8": {"jp8": 1.0}, "9": {"jp8": 1.0}, "10": {"jp8": 1.0}, "11": {"jp8": 1.0}, "12": {"jp8": 1.0}, "13": {"jp8": 1.0}, "14": {"jp8": 1.0}, "15": {"jp8": 1.0}, "16": {"jp8": 1.0}, "17": {"jp8": 1.0}, "18": {"jp8": 1.0}, "19": {"jp8": 1.0}, "20": {"jp8": 1.0}, "21": {"jp8": 1.0}, "22": {"jp8": 1.0}, "23": {"jp8": 1.0}, "24": {"jp8": 1.0}, "25": {"jp8": 1.0}, "26": {"jp8": 1.0}, "27": {"jp8": 1.0}, "28": {"jp8": 1.0}, "29": {"jp8": 1.0}, "30": {"jp8": 1.0}, "31": {"jp8": 1.0}, "32": {"jp8": 1.0}, "33": {"jp8": 1.0}, "34": {"jp8": 1.0}, "35": {"jp8": 1.0}, "36": {"jp8": 1.0}, "37": {"jp8": 1.0}, "38": {"jp8": 1.0}, "39": {"jp8": 1.0}, "40": {"jp8": 1.0}, "41": {"jp8": 1.0}, "42": {"jp8": 1.0}, "43": {"jp8": 1.0}, "44": {"jp8": 1.0}, "45": {"jp8": 1.0}, "46": {"jp8": 1.0}, "47": {"jp8": 1.0}, "48": {"jp8": 1.0}, "49": {"jp8": 1.0}, "50": {"jp8": 1.0}, "51": {"jp8": 1.0}, "52": {"jp8": 1.0}, "53": {"jp8": 1.0}, "54": {"jp8": 1.0}, "55": {"jp8": 1.0}, "56": {"jp8": 1.0}, "57": {"jp8": 1.0}, "58": {"jp8": 1.0}, "59": {"jp8": 1.0}, "60": {"jp8": 1.0}, "61": {"jp8": 1.0}, "62": {"jp8": 1.0}, "63": {"jp8": 1.0}, "64": {"jp8": 1.0}, "65": {"jp8": 1.0}, "66": {"jp8": 1.0}, "67": {"jp8": 1.0}, "68": {"jp8": 1.0}, "69": {"jp8": 1.0}, "70": {"jp8": 1.0}, "71": {"jp8": 1.0}}, "flows": {"0,0": {"0,7": 38.0, "0,8": 74.0, "1,8": 13.75, "2,8": 60.25, "2,9": 38.0}, "0,2": {"0,8": 18.25, "1,4": 18.25, "1,8": 55.75, "1,9": 38.0, "2,4": 18.25, "2,7": 38.0, "2,8": 55.75}, "0,1": {"4,8": 9.75, "5,8": 102.25}, "0,3": {"3,4": 11.75, "3,8": 82.0, "4,4": 30.0, "5,4": 18.25}, "0,4": {"0,9": 112.0, "1,9": 112.0, "5,5": 44.14583333333333, "5,9": 67.85416666666667, "7,5": 48.0, "8,7": 19.854166666666668, "8,9": 24.291666666666657, "9,7": 19.854166666666668}, "0,6": {"2,5": 48.0, "4,9": 112.0, "6,9": 112.0, "7,9": 32.0, "8,5": 32.0, "9,5": 32.0, "9,9": 80.0}, "0,5": {"10,4": 27.854166666666668, "11,4": 27.854166666666668, "13,8": 84.14583333333333}, "0,7": {"14,8": 112.0}, "0,8": {"3,9": 43.599999999999994, "9,9": 43.599999999999994, "11,8": 8.0, "13,4": 30.0, "14,9": 43.599999999999994, "17,4": 5.599999999999998, "19,4": 8.0, "19,9": 35.599999999999994, "20,8": 35.599999999999994, "20,9": 8.0}, "0,10": {"2,9": 30.0, "7,9": 30.0, "11,9": 30.0, "12,4": 30.0, "16,9": 30.0, "20,8": 30.0}, "0,9": {"21,4": 15.0, "24,4": 15.0, "24,8": 19.0, "26,8": 78.0}, "0,11": {"25,8": 76.59999999999998, "28,8": 35.40000000000002}, "0,12": {"10,9": 30.0, "14,9": 30.0, "29,9": 30.0, "36,9": 30.0, "41,4": 30.0, "44,8": 30.0}, "0,13": {"20,9": 61.65833333333333, "26,9": 61.65833333333333, "30,9": 44.96666666666664, "34,4": 14.966666666666669, "34,9": 46.69166666666666, "38,8": 16.691666666666677, "43,4": 30.0, "43,9": 31.65833333333333, "44,4": 16.691666666666677, "44,8": 44.966666666666654}, "0,14": {"23,7": 16.0, "23,9": 96.0, "24,8": 16.0, "29,5": 48.0, "32,4": 16.0, "36,9": 112.0, "42,4": 16.0, "43,9": 96.0, "44,5": 48.0}, "0,15": {"19,5": 48.0, "32,5": 16.0, "34,9": 112.0, "39,9": 112.0, "40,5": 48.0, "42,9": 112.0}, "0,16": {"30,8": 17.166666666666657, "31,9": 94.83333333333334, "33,7": 38.0, "38,8": 17.166666666666657, "39,7": 18.833333333333343, "40,7": 38.0}, "0,17": {"29,7": 2.0, "30,7": 34.0, "36,7": 38.0, "38,7": 38.0, "41,9": 112.0}, "1,0": {"0,4": 30.0, "1,8": 44.0, "2,4": 11.75, "2,9": 38.0, "3,4": 18.25, "3,7": 38.0, "4,8": 74.0}, "1,2": {"1,7": 41.75, "3,8": 32.25, "3,9": 79.75, "4,7": 38.0, "4,8": 32.25}, "1,1": {"5,8": 13.75, "6,4": 13.25, "7,4": 28.25, "8,4": 15.0, "8,8": 70.0}, "1,3": {"6,4": 15.0, "6,8": 43.25, "7,8": 7.75, "8,4": 15.0, "8,8": 46.0}, "1,4": {"2,9": 16.0, "4,5": 48.0, "8,9": 112.0, "10,5": 48.0, "11,5": 16.0, "11,9": 96.0, "13,9": 112.0}, "1,6": {"1,5": 48.0, "6,5": 16.0, "7,9": 112.0, "10,9": 112.0, "12,9": 112.0, "13,5": 48.0}, "1,5": {"16,8": 84.0, "19,8": 28.0}, "1,7": {"18,8": 38.0, "19,8": 74.0}, "1,8": {"0,9": 68.0, "8,9": 12.400000000000006, "15,4": 12.399999999999999, "15,9": 55.6, "18,9": 68.0, "21,9": 68.0, "23,4": 25.6, "25,8": 30.0, "26,4": 30.0, "26,8": 38.0}, "1,10": {"12,9": 15.2, "18,8": 15.2, "19,9": 15.2, "22,4": 15.199999999999996, "24,9": 15.2, "25,9": 15.2}, "1,9": {"31,8": 84.96666666666665, "34,8": 27.033333333333346}, "1,11": {"27,8": 112.0}, "1,12": {"17,9": 32.29166666666667, "27,9": 32.29166666666667, "29,4": 4.291666666666664, "32,9": 32.29166666666667, "38,8": 32.29166666666667, "46,9": 32.29166666666667, "47,4": 28.000000000000007}, "1,13": {"21,9": 60.0, "26,9": 60.0, "35,4": 30.0, "41,9": 60.0, "48,9": 60.0, "49,8": 60.0, "50,4": 30.0}, "1,14": {"30,9": 112.0, "35,5": 48.0, "38,9": 112.0, "41,5": 16.0, "42,5": 48.0, "49,9": 112.0}, "1,15": {"20,7": 10.5, "30,5": 5.5, "33,5": 48.0, "35,9": 112.0, "37,9": 112.0, "45,4": 10.5, "46,8": 10.5, "46,9": 91.0, "48,4": 10.5, "48,5": 48.0}, "1,16": {"37,7": 38.0, "45,9": 112.0, "48,7": 38.0, "49,7": 36.0}, "1,17": {"35,7": 24.30000000000001, "39,7": 11.699999999999989, "41,7": 38.0, "46,7": 38.0, "50,9": 112.0}, "2,0": {"0,8": 23.75, "1,4": 11.75, "4,9": 38.0, "5,4": 11.75, "6,7": 38.0, "6,8": 38.5, "7,8": 74.0}, "2,2": {"3,8": 1.75, "3,9": 38.0, "5,7": 38.0, "5,9": 38.0, "6,4": 1.75, "6,8": 34.25, "7,4": 1.75, "7,7": 38.0, "7,8": 34.25}, "2,1": {"12,8": 112.0}, "2,3": {"11,8": 108.0, "12,8": 4.0}, "2,4": {"9,9": 48.0, "12,5": 48.0, "13,9": 112.0, "15,5": 16.0, "16,5": 48.0, "16,9": 64.0, "18,9": 112.0}, "2,6": {"5,9": 112.0, "9,5": 16.0, "12,9": 48.0, "15,9": 112.0, "17,5": 48.0, "17,9": 64.0, "18,5": 48.0}, "2,5": {"20,8": 30.80000000000001, "21,4": 15.0, "21,8": 51.19999999999999, "24,4": 14.999999999999996, "25,4": 29.999999999999996}, "2,7": {"21,8": 64.80000000000001, "22,8": 47.19999999999999}, "2,8": {"2,9": 85.70833333333333, "4,9": 85.70833333333336, "9,4": 25.70833333333333, "16,4": 30.0, "20,9": 85.70833333333333, "31,4": 30.0, "32,9": 85.70833333333333, "33,8": 85.70833333333333}, "2,10": {"1,9": 54.891666666666644, "14,4": 24.891666666666644, "24,9": 54.891666666666644, "25,9": 54.891666666666644, "28,8": 54.891666666666644, "31,9": 29.999999999999986, "33,4": 30.0, "33,9": 24.891666666666644}, "2,9": {"34,8": 88.96666666666665, "41,8": 23.033333333333346}, "2,11": {"40,8": 19.033333333333346, "41,8": 92.96666666666665}, "2,12": {"17,9": 78.14166666666667, "25,9": 78.14166666666667, "33,8": 30.29166666666667, "36,4": 30.0, "36,8": 47.849999999999994, "40,9": 78.14166666666667, "48,9": 28.000000000000036, "55,4": 20.14166666666666, "56,4": 28.000000000000007, "56,9": 50.14166666666666}, "2,13": {"21,9": 52.0, "26,9": 52.0, "34,9": 52.0, "40,4": 30.0, "53,9": 52.0, "54,4": 22.0, "56,8": 52.0}, "2,14": {"31,9": 34.0, "32,9": 112.0, "39,4": 30.0, "47,5": 34.0, "47,9": 78.0, "52,9": 112.0, "56,5": 48.0}, "2,15": {"26,5": 8.5, "33,9": 93.10833333333335, "38,5": 16.0, "42,9": 18.89166666666665, "44,9": 112.0, "52,5": 48.0, "53,5": 39.5, "55,9": 112.0}, "2,16": {"42,7": 38.0, "45,4": 13.0, "47,7": 38.0, "48,9": 99.0, "50,8": 13.0, "53,4": 13.0, "56,7": 23.0}, "2,17": {"43,7": 38.0, "44,7": 38.0, "45,7": 36.0, "51,9": 112.0}, "3,0": {"7,9": 38.0, "8,7": 18.145833333333336, "9,8": 55.854166666666664, "10,7": 38.0, "10,8": 55.854166666666664, "10,9": 18.145833333333336}, "3,2": {"6,9": 56.145833333333336, "9,7": 18.145833333333336, "9,8": 55.854166666666664, "10,8": 55.854166666666664, "11,7": 38.0}, "3,1": {"15,8": 80.0, "16,8": 32.0}, "3,3": {"15,4": 6.800000000000001, "17,4": 6.800000000000001, "17,8": 105.2}, "3,4": {"6,5": 16.0, "6,9": 17.89166666666666, "8,9": 111.30833333333334, "21,5": 48.0, "21,9": 64.0, "22,9": 78.8, "23,5": 48.0, "23,9": 64.0}, "3,6": {"3,5": 48.0, "3,9": 64.0, "18,9": 80.0, "20,5": 32.0, "22,5": 32.0, "22,9": 80.0, "24,9": 112.0}, "3,5": {"29,8": 80.96666666666665, "31,8": 31.033333333333346}, "3,7": {"32,8": 112.0}, "3,8": {"20,4": 10.0, "28,9": 10.0, "29,9": 10.0, "30,8": 10.0, "36,9": 10.0, "39,9": 10.0}, "3,10": {"10,9": 30.0, "25,9": 30.0, "32,9": 30.0, "35,9": 30.0, "38,4": 30.0, "40,8": 30.0}, "3,9": {"43,8": 22.0, "47,8": 90.0}, "3,11": {"45,8": 112.0}, "3,12": {"43,9": 40.86396396396401, "48,4": 19.5, "50,9": 40.86396396396401, "54,9": 40.86396396396401, "56,9": 40.86396396396401, "59,4": 21.36396396396401, "61,8": 40.86396396396401}, "3,13": {}, "3,14": {"46,5": 45.32083333333334, "54,9": 112.0, "58,5": 48.0, "59,9": 112.0, "60,9": 112.0, "61,5": 18.67916666666666}, "3,15": {"36,5": 48.0, "45,7": 1.9999999999999947, "45,9": 32.0, "47,4": 1.9999999999999947, "49,5": 30.0, "53,9": 112.0, "56,4": 1.9999999999999947, "56,9": 110.0, "57,5": 32.0, "57,8": 2.0, "57,9": 78.0}, "3,16": {"51,7": 38.0, "53,7": 4.0, "54,7": 38.0, "56,8": 32.0, "58,9": 80.0, "60,8": 32.0}, "3,17": {"49,7": 2.0, "50,7": 38.0, "52,7": 38.0, "53,7": 34.0, "61,9": 112.0}, "4,0": {"9,8": 4.145833333333329, "13,7": 38.0, "13,8": 31.85416666666667, "14,9": 76.0, "15,7": 38.0, "15,8": 36.0}, "4,2": {"11,9": 38.0, "12,7": 38.0, "14,7": 36.0, "16,7": 38.0, "16,9": 74.0}, "4,1": {"17,4": 17.6, "19,4": 17.6, "23,8": 94.4}, "4,3": {"18,8": 62.79999999999998, "22,8": 49.20000000000002}, "4,4": {"14,5": 48.0, "14,9": 64.0, "20,4": 16.0, "20,9": 48.0, "27,9": 112.0, "28,9": 112.0, "31,5": 48.0}, "4,6": {"12,9": 84.80000000000001, "19,9": 112.0, "20,5": 16.0, "24,5": 48.0, "25,9": 36.16666666666663, "28,5": 48.0, "30,9": 103.03333333333336}, "4,5": {"35,8": 4.0, "39,8": 108.0}, "4,7": {"37,8": 62.150000000000006, "38,8": 49.849999999999994}, "4,8": {"2,9": 26.0, "13,9": 26.0, "28,9": 26.0, "39,9": 26.0, "46,4": 26.0, "47,8": 26.0}, "4,10": {"4,9": 14.0, "19,8": 14.0, "27,9": 14.0, "36,9": 14.0, "38,9": 14.0, "42,4": 14.0}, "4,9": {"48,8": 112.0}, "4,11": {"51,8": 26.0, "54,8": 86.0}, "4,12": {"37,9": 36.0, "39,9": 22.5, "49,9": 36.0, "54,9": 36.0, "60,4": 13.5, "63,4": 22.5, "63,9": 13.5, "65,8": 36.0}, "4,13": {"29,9": 51.98494744744745, "40,9": 51.98494744744745, "41,9": 51.98494744744747, "50,8": 51.98494744744745, "52,4": 8.984947447447453, "63,9": 51.98494744744745, "64,4": 30.0, "65,4": 13.0}, "4,14": {"43,5": 48.0, "50,5": 48.0, "50,9": 64.0, "52,9": 112.0, "58,9": 112.0, "62,9": 48.0, "64,5": 16.0}, "4,15": {"44,9": 46.888175675675775, "48,9": 72.99999999999997, "53,4": 17.0, "54,5": 48.0, "58,7": 17.0, "60,9": 70.11182432432426, "62,5": 47.0, "63,8": 17.0, "64,9": 112.0, "65,4": 17.0}, "4,16": {"57,7": 38.0, "59,7": 38.0, "63,8": 36.0, "65,8": 36.0, "65,9": 76.0}, "4,17": {"55,7": 38.0, "56,7": 15.0, "57,9": 112.0, "58,7": 21.0, "63,7": 38.0}, "5,0": {"9,9": 88.4, "14,8": 4.0, "18,7": 38.0, "20,4": 4.0, "20,8": 19.599999999999994, "21,7": 12.400000000000006, "22,4": 4.0, "22,7": 38.0, "22,8": 19.599999999999994}, "5,2": {"15,4": 10.8, "17,7": 35.7, "17,8": 10.799999999999997, "19,7": 38.0, "20,7": 27.5, "22,4": 10.8, "22,9": 101.2}, "5,1": {"23,8": 21.599999999999994, "24,8": 80.99999999999999, "25,8": 9.40000000000002}, "5,3": {"29,8": 23.166666666666657, "30,8": 88.83333333333334}, "5,4": {"0,5": 48.0, "16,9": 92.0, "23,9": 100.0, "25,5": 16.0, "27,9": 32.0, "33,9": 112.0, "37,5": 48.0}, "5,6": {"10,9": 42.83333333333334, "11,5": 32.0, "28,9": 112.0, "31,9": 101.16666666666666, "34,5": 48.0, "38,5": 32.0, "38,9": 80.0}, "5,5": {"44,4": 6.5, "45,4": 6.5, "46,8": 105.5}, "5,7": {"40,8": 66.96666666666665, "42,8": 4.0, "44,8": 41.033333333333346}, "5,8": {"0,9": 80.0, "28,4": 30.0, "30,4": 30.0, "35,9": 80.0, "47,9": 80.0, "49,8": 39.03333333333333, "49,9": 40.96666666666667, "51,4": 20.0, "53,8": 40.96666666666667, "53,9": 39.03333333333333}, "5,10": {"3,9": 34.650000000000006, "18,4": 30.0, "26,9": 75.03333333333333, "34,4": 15.033333333333331, "37,4": 30.0, "39,9": 40.383333333333326, "40,9": 75.03333333333333, "46,9": 75.03333333333333, "53,8": 75.03333333333333}, "5,9": {"55,8": 42.15000000000003, "59,8": 69.84999999999997}, "5,11": {"58,8": 65.84999999999997, "59,8": 46.150000000000034}, "5,12": {"33,9": 30.0, "40,9": 30.0, "54,8": 30.0, "55,9": 30.0, "65,9": 30.0, "67,4": 30.0}, "5,13": {"45,9": 30.0, "59,9": 30.0, "60,9": 30.0, "63,9": 30.0, "66,4": 30.0, "67,8": 30.0}, "5,14": {"55,5": 48.0, "62,9": 16.0, "63,9": 112.0, "64,9": 112.0, "65,5": 48.0, "66,5": 16.0, "66,9": 96.0}, "5,15": {"51,5": 48.0, "55,9": 19.19744744744743, "57,5": 16.0, "59,9": 92.80255255255257, "60,5": 48.0, "65,9": 112.0, "67,9": 112.0}, "5,16": {"60,7": 38.0, "62,7": 37.11813063063063, "64,8": 36.88186936936937, "68,8": 36.88186936936937, "68,9": 75.11813063063063}, "5,17": {"61,7": 38.0, "62,9": 26.569782282282148, "67,7": 26.569782282282148, "67,8": 47.43021771771785, "67,9": 38.0, "68,8": 47.43021771771785}, "6,0": {"11,9": 96.0, "21,9": 16.0, "25,7": 38.0, "28,7": 38.0, "29,7": 36.0}, "6,2": {"14,7": 2.0, "24,7": 38.0, "26,7": 8.291666666666671, "27,4": 25.708333333333336, "27,7": 38.0, "28,8": 25.708333333333336, "29,4": 25.708333333333336, "29,9": 86.29166666666667}, "6,1": {"35,8": 112.0}, "6,3": {"36,8": 58.150000000000006, "37,8": 53.849999999999994}, "6,4": {"15,5": 21.5, "24,9": 77.90833333333336, "30,5": 42.5, "36,9": 44.0719219219219, "38,9": 54.0, "39,5": 48.0, "43,9": 91.47770270270266, "44,9": 68.54204204204208}, "6,6": {"19,9": 88.85416666666666, "27,5": 48.0, "37,9": 112.0, "41,5": 32.0, "42,9": 55.14583333333334, "45,5": 32.0, "45,9": 80.0}, "6,5": {"49,8": 16.96666666666667, "51,8": 43.04635885885894, "52,8": 51.986974474474394}, "6,7": {"50,8": 43.54838588588588, "51,4": 8.58858858858855, "52,4": 8.58858858858855, "52,8": 59.86302552552557}, "6,8": {"1,9": 53.858333333333356, "29,9": 53.858333333333356, "32,4": 14.0, "45,8": 4.0, "47,9": 53.858333333333356, "48,8": 4.0, "51,8": 22.0, "54,9": 29.207957957957888, "55,4": 9.858333333333356, "56,9": 24.650375375375482, "58,4": 30.0, "58,8": 23.858333333333356}, "6,10": {"2,9": 26.29166666666667, "14,9": 26.29166666666667, "46,9": 26.29166666666667, "51,9": 26.29166666666667, "57,4": 26.29166666666667, "58,8": 26.29166666666667}, "6,9": {"60,4": 16.5, "61,4": 16.5, "61,8": 74.25416666666662, "62,8": 21.24583333333338}, "6,11": {"60,8": 54.0, "63,8": 58.0}, "6,12": {"40,9": 24.840052552552564, "51,9": 24.840052552552564, "55,9": 24.840052552552564, "67,8": 11.27304804804804, "68,9": 24.840052552552564, "69,4": 11.27304804804804, "69,8": 13.567004504504524, "70,4": 13.567004504504524}, "6,13": {"47,9": 29.202702702702695, "61,9": 29.2027027027027, "63,9": 29.2027027027027, "68,4": 29.2027027027027, "69,8": 29.2027027027027, "70,9": 29.2027027027027}, "6,14": {"53,5": 8.5, "57,9": 48.0, "62,9": 112.0, "63,4": 7.5, "67,5": 48.0, "68,9": 112.0, "70,5": 48.0, "70,9": 64.0}, "6,15": {"61,9": 112.0, "64,5": 32.0, "66,9": 68.22586336336323, "67,9": 75.77413663663677, "68,5": 48.0, "69,5": 32.0, "69,9": 80.0}, "6,16": {"65,7": 38.0, "66,7": 38.0, "67,8": 26.41486486486474, "68,8": 9.58513513513526, "69,9": 76.0, "70,8": 36.0}, "6,17": {"64,7": 38.0, "65,9": 38.0, "68,7": 36.0, "70,7": 38.0, "70,9": 74.0}, "7,0": {"4,9": 10.291666666666629, "7,9": 48.00000000000003, "19,4": 4.399999999999999, "23,4": 4.4, "23,7": 22.0, "26,7": 29.70833333333333, "29,8": 4.4, "32,7": 4.191666666666666, "34,7": 38.0, "34,9": 49.30833333333334, "35,7": 13.699999999999989}, "7,2": {"10,4": 2.145833333333332, "10,8": 4.291666666666666, "11,4": 2.145833333333334, "14,9": 20.10833333333332, "17,7": 2.299999999999997, "21,7": 25.599999999999994, "25,9": 45.60000000000008, "27,4": 4.291666666666666, "27,8": 4.0, "30,7": 4.0, "31,7": 38.0, "32,7": 33.80833333333334, "32,8": 4.0, "35,9": 37.99999999999993}, "7,1": {"36,8": 10.0, "39,8": 8.0, "43,8": 94.0}, "7,3": {"42,8": 112.0}, "7,4": {"5,9": 28.971396396396337, "6,5": 16.0, "13,9": 10.0, "15,5": 10.5, "17,9": 85.56666666666668, "20,9": 56.633333333333354, "25,5": 32.0, "26,5": 39.5, "29,9": 27.865052552552534, "39,9": 49.116666666666674, "46,9": 6.813551051051192, "47,5": 14.0, "49,9": 71.03333333333333}, "7,6": {"5,5": 3.8541666666666714, "8,5": 16.0, "15,9": 92.4, "22,5": 16.0, "27,9": 69.70833333333333, "29,8": 7.466666666666669, "32,5": 32.0, "39,7": 7.466666666666669, "41,9": 36.01505255255253, "45,5": 16.0, "46,5": 2.67916666666666, "47,9": 18.938963963963943, "49,5": 18.0, "50,8": 7.466666666666669, "50,9": 43.13603603603599, "51,9": 60.868280780780765}, "7,5": {"52,8": 4.150000000000034, "55,8": 73.84999999999997, "57,8": 34.0}, "7,7": {"56,8": 32.0, "57,8": 80.0}, "7,8": {"6,9": 73.9625, "9,4": 4.291666666666671, "10,9": 27.020833333333314, "14,4": 5.108333333333356, "42,9": 73.9625, "52,4": 12.426463963963997, "55,9": 73.9625, "58,9": 46.94166666666669, "59,4": 8.63603603603599, "60,8": 30.0, "61,4": 13.5, "62,4": 30.0, "62,8": 43.962500000000006}, "7,10": {"5,9": 13.174436936936985, "9,8": 0.1458333333333428, "19,9": 8.34583333333336, "26,9": 11.308333333333337, "36,9": 49.9280780780781, "44,4": 6.808333333333323, "49,4": 30.0, "51,4": 1.41141141141145, "51,8": 24.95364114114106, "53,9": 49.9280780780781, "54,4": 8.0, "54,9": 41.9280780780781, "57,4": 3.7083333333333286, "62,8": 24.8286036036037, "62,9": 25.099474474474402}, "7,9": {"64,8": 59.0, "66,8": 53.0}, "7,11": {"63,8": 5.0, "65,8": 44.0, "66,8": 63.0}, "7,12": {"45,9": 6.0, "51,9": 36.0, "52,9": 36.0, "56,9": 34.34399399399385, "64,8": 20.11813063063063, "64,9": 15.881869369369369, "66,9": 15.774136636636769, "70,4": 6.295082582582644, "70,8": 9.586786786786725, "71,4": 29.704917417417356, "71,8": 6.295082582582644}, "7,13": {"44,9": 32.56978228228215, "46,4": 4.0, "46,9": 28.569782282282148, "53,9": 7.038588588588567, "57,9": 22.0, "62,8": 25.96306306306292, "69,4": 18.431869369369316, "69,8": 6.6067192192192294, "69,9": 7.531193693693588, "70,4": 10.137912912912832, "71,9": 32.56978228228215}, "7,14": {"59,5": 48.0, "59,9": 25.19744744744743, "60,9": 47.88817567567574, "63,5": 48.0, "65,9": 4.0, "69,5": 16.0, "69,9": 61.19842342342335, "70,9": 85.71595345345347, "71,9": 112.0}, "7,15": {"58,9": 21.05833333333331, "61,5": 29.32083333333334, "61,8": 0.8818693693693689, "61,9": 6.797297297297291, "62,5": 1.0, "62,7": 0.8818693693693689, "62,9": 32.33074324324346, "63,9": 23.312349849849845, "64,9": 20.118130630630617, "66,5": 32.0, "66,9": 80.0, "67,8": 0.8818693693693689, "67,9": 3.307207207207057, "68,4": 0.7972972972972983, "68,9": 48.041816816816834, "69,9": 35.27038288288307, "71,5": 48.0, "71,9": 64.0}, "7,16": {"67,7": 11.430217717717852, "67,9": 30.918656156156175, "68,7": 2.0, "70,8": 67.65112612612597, "71,7": 30.918656156156175, "71,8": 67.65112612612597, "71,9": 13.430217717717852}, "7,17": {"68,8": 22.10277777777752, "69,4": 0.2950825825826442, "69,7": 38.0, "69,8": 66.62357357357354, "70,8": 2.762087087087302, "70,9": 7.081343843843825, "71,4": 0.2950825825826442, "71,7": 7.081343843843825, "71,8": 42.05379129129135, "71,9": 38.0}}} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-EX.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-EX.json new file mode 100644 index 0000000000..d4ad442b43 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/LP-PATTERNS-EX.json @@ -0,0 +1 @@ +{"objective": 523257.7591528998, "windows": {"0,0": [[[8, 8], 36.0], [[7, 9], 76.0]], "0,2": [[[8, 8], 58.0], [[7, 9], 24.0], [[4, 4, 8], 30.0]], "0,1": [[[8], 112.0]], "0,3": [[[8], 82.0], [[4, 4], 30.0]], "0,4": [[[5, 9, 9, 9], 112.0]], "0,6": [[[5, 9, 9, 9], 112.0]], "0,5": [[[8], 94.75], [[4, 4], 17.25]], "0,7": [[[8], 112.0]], "0,8": [[[], 82.0], [[4, 8, 9, 9, 9, 9], 30.0]], "0,10": [[[], 87.5], [[4, 8, 9, 9, 9, 9], 24.5]], "0,9": [[[8], 112.0]], "0,11": [[[8], 112.0]], "0,12": [[[], 28.5], [[4, 8, 9, 9, 9, 9], 83.5]], "0,13": [[[], 112.0]], "0,14": [[[5, 9, 9, 9], 98.0], [[7, 8, 8, 9], 14.0]], "0,15": [[[5, 9, 9, 9], 112.0]], "0,16": [[[7, 9], 112.0]], "0,17": [[[8, 8], 20.75], [[7, 9], 91.25]], "1,0": [[[8, 8], 45.5], [[7, 9], 38.0], [[4, 4, 8], 28.5]], "1,2": [[[8, 8], 60.0], [[7, 9], 52.0]], "1,1": [[[8], 82.0], [[4, 4], 30.0]], "1,3": [[[8], 97.0], [[4, 4], 15.0]], "1,4": [[[5, 9, 9, 9], 105.0], [[8, 8, 8, 8], 7.0]], "1,6": [[[5, 9, 9, 9], 112.0]], "1,5": [[[8], 112.0]], "1,7": [[[8], 112.0]], "1,8": [[[], 112.0]], "1,10": [[[], 112.0]], "1,9": [[[8], 112.0]], "1,11": [[[8], 112.0]], "1,12": [[[], 10.5], [[4, 8, 9, 9, 9, 9], 101.5]], "1,13": [[[], 52.0], [[4, 8, 9, 9, 9, 9], 60.0]], "1,14": [[[5, 9, 9, 9], 96.0], [[4, 9, 9, 9], 16.0]], "1,15": [[[5, 9, 9, 9], 112.0]], "1,16": [[[8, 8], 24.0], [[7, 9], 88.0]], "1,17": [[[7, 9], 112.0]], "2,0": [[[8, 8], 74.0], [[7, 9], 38.0]], "2,2": [[[8, 8], 7.0], [[7, 9], 105.0]], "2,1": [[[8], 112.0]], "2,3": [[[8], 112.0]], "2,4": [[[5, 9, 9, 9], 112.0]], "2,6": [[[5, 9, 9, 9], 112.0]], "2,5": [[[8], 112.0]], "2,7": [[[8], 112.0]], "2,8": [[[], 112.0]], "2,10": [[[], 64.5], [[4, 8, 9, 9, 9, 9], 47.5]], "2,9": [[[8], 112.0]], "2,11": [[[8], 112.0]], "2,12": [[[], 22.0], [[4, 8, 9, 9, 9, 9], 90.0]], "2,13": [[[], 112.0]], "2,14": [[[5, 9, 9, 9], 112.0]], "2,15": [[[5, 9, 9, 9], 112.0]], "2,16": [[[7, 9], 98.0], [[4, 4, 8], 14.0]], "2,17": [[[7, 9], 112.0]], "3,0": [[[8, 8], 36.0], [[7, 9], 76.0]], "3,2": [[[8, 8], 36.0], [[7, 9], 76.0]], "3,1": [[[8], 112.0]], "3,3": [[[8], 112.0]], "3,4": [[[5, 9, 9, 9], 112.0]], "3,6": [[[5, 9, 9, 9], 112.0]], "3,5": [[[8], 112.0]], "3,7": [[[8], 112.0]], "3,8": [[[], 57.5], [[4, 8, 9, 9, 9, 9], 54.5]], "3,10": [[[], 26.5], [[4, 8, 9, 9, 9, 9], 85.5]], "3,9": [[[8], 112.0]], "3,11": [[[8], 112.0]], "3,12": [[[], 33.5], [[4, 8, 9, 9, 9, 9], 78.5]], "3,13": [[[], 112.0]], "3,14": [[[5, 9, 9, 9], 112.0]], "3,15": [[[5, 9, 9, 9], 90.44144144144144], [[7, 8, 8, 9], 21.558558558558556]], "3,16": [[[8, 8], 30.0], [[7, 9], 82.0]], "3,17": [[[7, 9], 112.0]], "4,0": [[[8, 8], 36.0], [[7, 9], 76.0]], "4,2": [[[8, 8], 15.0], [[7, 9], 97.0]], "4,1": [[[8], 86.0], [[4, 4], 26.0]], "4,3": [[[8], 112.0]], "4,4": [[[5, 9, 9, 9], 112.0]], "4,6": [[[5, 9, 9, 9], 112.0]], "4,5": [[[8], 112.0]], "4,7": [[[8], 112.0]], "4,8": [[[], 56.0], [[4, 8, 9, 9, 9, 9], 56.0]], "4,10": [[[], 45.75], [[4, 8, 9, 9, 9, 9], 66.25]], "4,9": [[[8], 112.0]], "4,11": [[[8], 112.0]], "4,12": [[[], 22.0], [[4, 8, 9, 9, 9, 9], 90.0]], "4,13": [[[], 62.0], [[4, 8, 9, 9, 9, 9], 50.0]], "4,14": [[[5, 9, 9, 9], 112.0]], "4,15": [[[5, 9, 9, 9], 86.80855855855856], [[7, 8, 8, 9], 25.191441441441444]], "4,16": [[[8, 8], 34.58333333333335], [[7, 9], 77.41666666666666]], "4,17": [[[7, 9], 112.0]], "5,0": [[[7, 9], 106.5], [[4, 4, 8], 5.5]], "5,2": [[[7, 9], 82.0], [[4, 4, 8], 30.0]], "5,1": [[[8], 112.0]], "5,3": [[[8], 112.0]], "5,4": [[[5, 9, 9, 9], 112.0]], "5,6": [[[5, 9, 9, 9], 112.0]], "5,5": [[[8], 93.08333333333333], [[4, 4], 18.91666666666667]], "5,7": [[[8], 112.0]], "5,8": [[[], 35.41666666666666], [[4, 8, 9, 9, 9, 9], 76.58333333333334]], "5,10": [[[], 82.0], [[4, 8, 9, 9, 9, 9], 30.0]], "5,9": [[[8], 112.0]], "5,11": [[[8], 112.0]], "5,12": [[[], 95.67905405405406], [[4, 8, 9, 9, 9, 9], 16.320945945945944]], "5,13": [[[], 97.5], [[4, 8, 9, 9, 9, 9], 14.5]], "5,14": [[[5, 9, 9, 9], 112.0]], "5,15": [[[5, 9, 9, 9], 112.0]], "5,16": [[[8, 8], 15.533783783783747], [[7, 9], 96.46621621621625]], "5,17": [[[8, 8], 36.0], [[7, 9], 76.0]], "6,0": [[[8, 8], 4.0], [[7, 9], 108.0]], "6,2": [[[7, 9], 108.0], [[4, 4, 8], 4.0]], "6,1": [[[8], 112.0]], "6,3": [[[8], 112.0]], "6,4": [[[5, 9, 9, 9], 92.41666666666667], [[7, 8, 8, 9], 4.0], [[4, 9, 9, 9], 15.583333333333329]], "6,6": [[[5, 9, 9, 9], 112.0]], "6,5": [[[8], 112.0]], "6,7": [[[8], 82.0], [[4, 4], 30.0]], "6,8": [[[], 87.75], [[4, 8, 9, 9, 9, 9], 24.25]], "6,10": [[[], 76.5], [[4, 8, 9, 9, 9, 9], 35.5]], "6,9": [[[8], 82.0], [[4, 4], 30.0]], "6,11": [[[8], 112.0]], "6,12": [[[], 62.80855855855856], [[4, 8, 9, 9, 9, 9], 49.19144144144144]], "6,13": [[[], 94.94144144144144], [[4, 8, 9, 9, 9, 9], 17.058558558558556]], "6,14": [[[5, 9, 9, 9], 104.22522522522524], [[7, 8, 8, 9], 7.774774774774749]], "6,15": [[[5, 9, 9, 9], 101.19144144144144], [[4, 9, 9, 9], 10.808558558558556]], "6,16": [[[8, 8], 25.445382882882896], [[7, 9], 86.5546171171171]], "6,17": [[[8, 8], 36.0], [[7, 9], 76.0]], "7,0": [[[7, 9], 86.0], [[4, 4, 8], 26.0]], "7,2": [[[7, 9], 95.5], [[4, 4, 8], 16.5]], "7,1": [[[8], 112.0]], "7,3": [[[8], 112.0]], "7,4": [[[5, 9, 9, 9], 108.0], [[7, 8, 8, 9], 4.0]], "7,6": [[[5, 9, 9, 9], 110.5], [[4, 9, 9, 9], 1.5]], "7,5": [[[8], 112.0]], "7,7": [[[8], 112.0]], "7,8": [[[], 78.5], [[4, 8, 9, 9, 9, 9], 33.5]], "7,10": [[[], 50.80855855855856], [[4, 8, 9, 9, 9, 9], 61.19144144144144]], "7,9": [[[8], 112.0]], "7,11": [[[8], 112.0]], "7,12": [[[], 61.385698198198185], [[4, 8, 9, 9, 9, 9], 50.614301801801815]], "7,13": [[[], 77.37894144144147], [[4, 8, 9, 9, 9, 9], 34.62105855855854]], "7,14": [[[5, 9, 9, 9], 112.0]], "7,15": [[[5, 9, 9, 9], 111.41666666666666], [[7, 8, 8, 9], 0.5833333333333475]], "7,16": [[[8, 8], 32.76463963963967], [[7, 9], 79.23536036036035]], "7,17": [[[8, 8], 52.184121621621614], [[7, 9], 33.969031531531556], [[4, 4, 8], 25.84684684684683]]}, "selections": {"0": {"jp8": 1.0}, "1": {"jp8": 1.0}, "2": {"jp8": 1.0}, "3": {"jp8": 1.0}, "4": {"jp8": 1.0}, "5": {"ck": 1.0}, "6": {"jp8": 1.0}, "7": {"jp8": 1.0}, "8": {"jp8": 1.0}, "9": {"jp8": 1.0}, "10": {"jp8": 1.0}, "11": {"jp8": 1.0}, "12": {"jp8": 1.0}, "13": {"jp8": 1.0}, "14": {"jp8": 1.0}, "15": {"jp8": 1.0}, "16": {"jp8": 1.0}, "17": {"jp8": 1.0}, "18": {"jp8": 1.0}, "19": {"jp8": 1.0}, "20": {"jp8": 1.0}, "21": {"jp8": 1.0}, "22": {"jp8": 1.0}, "23": {"jp8": 1.0}, "24": {"jp8": 1.0}, "25": {"jp8": 1.0}, "26": {"jp8": 1.0}, "27": {"jp8": 1.0}, "28": {"jp8": 1.0}, "29": {"jp8": 1.0}, "30": {"jp8": 1.0}, "31": {"jp8": 1.0}, "32": {"jp8": 1.0}, "33": {"jp8": 1.0}, "34": {"jp8": 1.0}, "35": {"jp8": 1.0}, "36": {"jp8": 1.0}, "37": {"jp8": 1.0}, "38": {"jp8": 1.0}, "39": {"jp8": 1.0}, "40": {"jp8": 1.0}, "41": {"jp8": 1.0}, "42": {"jp8": 1.0}, "43": {"jp8": 1.0}, "44": {"jp8": 1.0}, "45": {"jp8": 1.0}, "46": {"jp8": 1.0}, "47": {"jp8": 1.0}, "48": {"jp8": 1.0}, "49": {"jp8": 1.0}, "50": {"jp8": 1.0}, "51": {"jp8": 1.0}, "52": {"jp8": 1.0}, "53": {"jp8": 1.0}, "54": {"jp8": 1.0}, "55": {"jp8": 1.0}, "56": {"jp8": 1.0}, "57": {"jp8": 1.0}, "58": {"jp8": 1.0}, "59": {"jp8": 1.0}, "60": {"jp8": 1.0}, "61": {"jp8": 1.0}, "62": {"jp8": 1.0}, "63": {"jp8": 1.0}, "64": {"jp8": 1.0}, "65": {"jp8": 1.0}, "66": {"jp8": 1.0}, "67": {"jp8": 1.0}, "68": {"jp8": 1.0}, "69": {"jp8": 1.0}, "70": {"jp8": 1.0}, "71": {"jp8": 1.0}}, "flows": {"0,0": {"0,7": 38.0, "0,8": 36.0, "0,9": 38.0, "2,7": 38.0, "2,8": 36.0, "2,9": 38.0}, "0,2": {"0,8": 30.0, "0,9": 24.0, "1,4": 30.0, "1,7": 24.0, "1,8": 58.0, "2,4": 30.0, "2,8": 58.0}, "0,1": {"3,8": 70.5, "5,8": 41.5}, "0,3": {"4,4": 30.0, "4,8": 27.5, "5,4": 30.0, "5,8": 54.5}, "0,4": {"1,9": 64.0, "3,5": 20.0, "3,9": 92.0, "4,5": 48.0, "5,9": 112.0, "8,5": 44.0, "8,9": 68.0}, "0,6": {"0,9": 96.0, "1,5": 16.0, "6,5": 48.0, "6,9": 64.0, "7,5": 48.0, "7,9": 64.0, "9,9": 112.0}, "0,5": {"13,4": 17.25, "14,4": 17.25, "14,8": 94.75}, "0,7": {"10,8": 41.0, "13,8": 71.0}, "0,8": {"0,9": 30.0, "10,4": 30.0, "12,9": 30.0, "13,8": 30.0, "16,9": 30.0, "20,9": 30.0}, "0,10": {"1,8": 24.5, "7,9": 24.5, "11,9": 24.5, "15,9": 24.5, "16,9": 24.5, "20,4": 24.5}, "0,9": {"24,8": 49.75, "28,8": 62.25}, "0,11": {"26,8": 112.0}, "0,12": {"9,4": 30.0, "14,9": 83.5, "25,9": 83.5, "29,9": 83.5, "35,9": 83.5, "36,4": 30.0, "39,8": 83.5, "40,4": 23.5}, "0,13": {}, "0,14": {"16,7": 14.0, "19,5": 48.0, "28,9": 98.0, "29,5": 38.0, "29,8": 14.0, "33,9": 98.0, "38,9": 14.0, "39,5": 12.0, "40,9": 98.0, "44,8": 14.0}, "0,15": {"29,9": 16.0, "35,5": 48.0, "38,9": 112.0, "39,9": 112.0, "40,5": 48.0, "42,5": 16.0, "42,9": 96.0}, "0,16": {"30,7": 23.19144144144144, "33,7": 38.0, "40,7": 12.808558558558556, "41,9": 112.0, "42,7": 38.0}, "0,17": {"31,7": 15.25, "32,7": 38.0, "36,9": 91.25, "37,7": 38.0, "41,8": 20.75, "43,8": 20.75}, "1,0": {"0,4": 28.5, "0,8": 12.0, "1,8": 33.5, "1,9": 38.0, "3,4": 28.5, "3,7": 38.0, "3,8": 45.5, "4,8": 28.5}, "1,2": {"0,8": 38.0, "1,7": 14.0, "1,9": 38.0, "2,8": 22.0, "4,7": 38.0, "4,8": 60.0, "4,9": 14.0}, "1,1": {"6,4": 30.0, "6,8": 35.0, "7,4": 15.0, "7,8": 28.0, "8,4": 15.0, "8,8": 19.0}, "1,3": {"7,4": 15.0, "8,4": 15.0, "8,8": 97.0}, "1,4": {"4,9": 105.0, "7,8": 7.0, "9,5": 41.25, "9,8": 7.0, "10,9": 48.0, "11,5": 15.75, "11,8": 7.0, "12,5": 48.0, "12,8": 7.0, "12,9": 57.0, "13,9": 105.0}, "1,6": {"0,5": 32.0, "3,9": 112.0, "5,5": 48.0, "8,9": 112.0, "11,9": 112.0, "13,5": 32.0}, "1,5": {"16,8": 33.0, "18,8": 79.0}, "1,7": {"18,8": 37.0, "19,8": 75.0}, "1,8": {}, "1,10": {}, "1,9": {"28,8": 53.75, "33,8": 58.25}, "1,11": {"34,8": 112.0}, "1,12": {"10,9": 101.5, "11,4": 28.0, "21,9": 101.5, "22,8": 101.5, "31,4": 13.5, "34,9": 101.5, "39,4": 30.0, "46,4": 30.0, "49,9": 101.5}, "1,13": {"19,4": 30.0, "21,9": 60.0, "23,9": 60.0, "26,9": 60.0, "42,4": 30.0, "47,9": 60.0, "50,8": 60.0}, "1,14": {"20,9": 96.0, "25,5": 48.0, "28,9": 16.0, "32,9": 96.0, "38,9": 16.0, "44,9": 112.0, "45,5": 48.0, "50,4": 16.0}, "1,15": {"25,9": 112.0, "36,5": 16.0, "43,9": 112.0, "46,5": 48.0, "48,9": 112.0, "49,5": 48.0}, "1,16": {"35,8": 24.0, "36,7": 38.0, "41,7": 38.0, "43,7": 12.0, "45,9": 88.0, "50,8": 24.0}, "1,17": {"35,9": 112.0, "38,7": 38.0, "39,7": 38.0, "44,7": 2.0, "50,7": 34.0}, "2,0": {"5,9": 38.0, "6,7": 38.0, "6,8": 74.0, "7,8": 74.0}, "2,2": {"2,9": 37.0, "5,7": 68.0, "6,8": 7.0, "7,7": 37.0, "7,8": 7.0, "7,9": 68.0}, "2,1": {"9,8": 7.0, "11,8": 105.0}, "2,3": {"10,8": 3.0, "12,8": 109.0}, "2,4": {"2,5": 48.0, "10,9": 48.0, "13,9": 112.0, "14,5": 48.0, "14,9": 64.0, "17,5": 16.0, "18,9": 112.0}, "2,6": {"2,9": 48.0, "3,5": 16.0, "10,5": 48.0, "15,5": 48.0, "15,9": 64.0, "16,9": 112.0, "17,9": 112.0}, "2,5": {"21,8": 112.0}, "2,7": {"25,8": 112.0}, "2,8": {}, "2,10": {"4,9": 47.5, "14,9": 47.5, "22,9": 47.5, "27,4": 17.5, "29,4": 30.0, "31,9": 47.5, "33,8": 47.5}, "2,9": {"37,8": 67.25, "40,8": 44.75}, "2,11": {"40,8": 16.75, "41,8": 95.25}, "2,12": {"22,9": 90.0, "26,9": 90.0, "29,8": 30.0, "29,9": 60.0, "41,4": 30.0, "49,9": 30.0, "51,9": 90.0, "54,4": 30.0, "56,4": 30.0, "56,8": 60.0}, "2,13": {}, "2,14": {"27,9": 112.0, "32,5": 33.66666666666666, "37,5": 30.333333333333343, "37,9": 81.66666666666666, "51,5": 48.0, "52,9": 30.33333333333337, "54,9": 112.0}, "2,15": {"33,5": 48.0, "42,9": 112.0, "46,9": 112.0, "48,5": 16.0, "53,9": 112.0, "56,5": 48.0}, "2,16": {"43,7": 26.0, "45,7": 34.0, "45,8": 14.0, "46,7": 38.0, "50,4": 14.0, "52,4": 14.0, "55,9": 98.0}, "2,17": {"44,7": 36.0, "47,7": 38.0, "48,7": 38.0, "50,9": 112.0}, "3,0": {"2,9": 38.0, "8,7": 38.0, "9,8": 36.0, "10,7": 38.0, "10,8": 36.0, "10,9": 38.0}, "3,2": {"1,9": 38.0, "9,7": 38.0, "9,8": 36.0, "10,8": 36.0, "11,7": 38.0, "11,9": 38.0}, "3,1": {"15,8": 65.0, "16,8": 47.0}, "3,3": {"17,8": 112.0}, "3,4": {"9,9": 112.0, "16,5": 48.0, "18,5": 16.0, "20,5": 48.0, "23,9": 112.0, "24,9": 112.0}, "3,6": {"5,9": 76.0, "9,9": 36.0, "18,5": 32.0, "19,9": 112.0, "21,5": 32.0, "22,5": 48.0, "24,9": 112.0}, "3,5": {"31,8": 112.0}, "3,7": {"32,8": 112.0}, "3,8": {"12,9": 54.5, "16,4": 24.5, "23,9": 54.5, "30,9": 54.5, "36,9": 54.5, "38,4": 30.0, "40,8": 54.5}, "3,10": {"11,9": 85.5, "12,9": 85.5, "13,4": 12.75, "14,4": 12.75, "15,4": 30.0, "20,8": 85.5, "26,4": 30.0, "27,9": 85.5, "34,9": 85.5}, "3,9": {"48,8": 112.0}, "3,11": {"45,8": 52.0, "47,8": 60.0}, "3,12": {"25,4": 30.0, "36,9": 78.5, "44,9": 69.91666666666666, "45,9": 78.5, "50,8": 8.583333333333343, "56,9": 78.5, "57,4": 18.5, "60,4": 30.0, "61,8": 69.91666666666666, "61,9": 8.583333333333348}, "3,13": {}, "3,14": {"41,5": 16.0, "43,5": 48.0, "43,9": 64.0, "56,9": 112.0, "58,9": 48.0, "59,5": 48.0, "60,9": 112.0}, "3,15": {"34,9": 21.558558558558556, "35,7": 21.558558558558556, "49,9": 90.44144144144144, "53,5": 48.0, "53,8": 21.558558558558556, "57,9": 90.44144144144144, "59,9": 90.44144144144144, "60,5": 42.44144144144144, "60,8": 21.558558558558556}, "3,16": {"50,7": 4.0, "51,7": 2.0, "52,7": 38.0, "54,7": 38.0, "55,8": 30.0, "55,9": 82.0, "58,8": 30.0}, "3,17": {"49,7": 38.0, "51,7": 36.0, "53,7": 38.0, "61,9": 112.0}, "4,0": {"4,9": 38.0, "13,7": 38.0, "15,7": 38.0, "15,8": 36.0, "15,9": 38.0, "16,8": 36.0}, "4,2": {"6,9": 41.5, "12,7": 38.0, "13,8": 15.0, "14,7": 38.0, "15,8": 15.0, "16,7": 21.0, "16,9": 55.5}, "4,1": {"19,8": 41.0, "20,8": 26.5, "21,4": 26.0, "23,4": 26.0, "23,8": 18.5}, "4,3": {"22,8": 14.5, "23,8": 97.5}, "4,4": {"1,5": 16.0, "19,9": 112.0, "20,9": 112.0, "23,5": 48.0, "28,5": 48.0, "31,9": 112.0}, "4,6": {"11,5": 32.25, "18,9": 112.0, "24,9": 36.0, "26,9": 43.75, "30,5": 48.0, "30,9": 64.0, "31,5": 31.75, "31,9": 80.25}, "4,5": {"38,8": 112.0}, "4,7": {"35,8": 79.5, "39,8": 32.5}, "4,8": {"2,9": 56.0, "3,9": 56.0, "12,4": 26.0, "17,9": 56.0, "34,4": 30.0, "39,9": 56.0, "47,8": 56.0}, "4,10": {"24,8": 66.25, "26,9": 66.25, "28,4": 6.25, "32,4": 30.0, "37,4": 30.0, "38,9": 66.25, "46,9": 66.25, "47,9": 66.25}, "4,9": {"51,8": 112.0}, "4,11": {"53,8": 13.75, "54,8": 98.25}, "4,12": {"30,4": 30.0, "38,9": 36.16666666666667, "41,9": 90.0, "47,9": 90.0, "52,8": 53.83333333333333, "57,9": 90.0, "63,4": 30.0, "64,4": 30.0, "65,8": 36.16666666666667, "65,9": 53.83333333333333}, "4,13": {"28,9": 38.083333333333314, "30,9": 50.0, "33,9": 50.0, "52,4": 16.0, "52,9": 34.0, "59,4": 11.9166666666667, "62,8": 22.083333333333304, "62,9": 27.916666666666696, "65,4": 22.083333333333304, "65,8": 27.916666666666696}, "4,14": {"40,9": 96.64189189189187, "41,5": 18.333333333333343, "41,9": 58.0, "58,9": 112.0, "62,5": 18.657657657657666, "64,5": 42.64189189189187, "64,9": 69.35810810810813, "65,5": 32.36711711711712}, "4,15": {"40,7": 25.191441441441444, "42,9": 25.191441441441444, "48,9": 86.80855855855856, "52,5": 11.75, "53,8": 25.191441441441444, "54,5": 27.05855855855856, "55,5": 48.0, "55,9": 38.80855855855856, "59,9": 48.0, "63,9": 86.80855855855856, "65,8": 25.191441441441444}, "4,16": {"56,7": 38.0, "58,7": 2.0, "59,7": 37.41666666666665, "60,8": 34.58333333333335, "61,8": 34.58333333333335, "64,9": 77.41666666666666}, "4,17": {"55,7": 38.0, "57,7": 38.0, "58,7": 36.0, "62,9": 112.0}, "5,0": {"0,4": 1.5, "1,9": 38.0, "14,8": 5.5, "16,4": 5.5, "18,4": 4.0, "18,7": 30.5, "20,7": 38.0, "21,7": 38.0, "21,9": 68.5}, "5,2": {"9,8": 30.0, "16,9": 38.0, "17,4": 30.0, "17,7": 6.0, "19,7": 38.0, "22,4": 30.0, "22,7": 38.0, "22,9": 44.0}, "5,1": {"27,8": 112.0}, "5,3": {"29,8": 72.0, "30,8": 40.0}, "5,4": {"8,9": 34.08333333333333, "17,5": 32.0, "24,5": 32.0, "27,5": 48.0, "27,9": 29.0, "33,9": 112.0, "35,9": 48.91666666666667, "37,9": 112.0}, "5,6": {"0,9": 72.0, "7,9": 32.583333333333314, "13,5": 16.0, "15,9": 112.0, "26,5": 48.0, "28,9": 83.66666666666669, "36,9": 35.75, "38,5": 48.0}, "5,5": {"43,4": 4.5, "44,4": 18.91666666666667, "45,4": 14.416666666666671, "45,8": 20.0, "46,8": 73.08333333333333}, "5,7": {"44,8": 102.0, "46,8": 10.0}, "5,8": {"1,9": 44.0, "24,4": 30.0, "39,9": 76.58333333333334, "43,4": 25.5, "44,9": 76.58333333333334, "47,9": 32.58333333333334, "49,8": 21.083333333333343, "52,9": 76.58333333333334, "53,4": 21.083333333333343, "53,8": 55.5}, "5,10": {"30,9": 30.0, "32,9": 30.0, "40,9": 30.0, "45,8": 30.0, "48,4": 30.0, "51,9": 30.0}, "5,9": {"56,8": 46.25, "58,8": 65.75}, "5,11": {"59,8": 112.0}, "5,12": {"46,9": 16.320945945945944, "49,9": 16.320945945945944, "52,9": 16.320945945945944, "63,9": 16.320945945945944, "67,8": 16.320945945945944, "68,4": 16.320945945945944}, "5,13": {"55,4": 14.5, "57,9": 14.5, "60,9": 14.5, "65,9": 14.5, "66,9": 14.5, "68,8": 14.5}, "5,14": {"47,5": 27.75, "50,9": 112.0, "52,5": 36.25, "52,9": 75.75, "54,9": 36.25, "61,5": 48.0, "66,9": 112.0}, "5,15": {"48,5": 32.0, "53,9": 112.0, "58,9": 48.0, "63,9": 112.0, "66,5": 32.0, "67,5": 48.0, "67,9": 64.0}, "5,16": {"61,7": 30.225225225225252, "63,7": 38.0, "64,8": 15.533783783783747, "64,9": 21.987049549549482, "67,7": 28.24099099099101, "67,8": 15.533783783783747, "68,9": 74.47916666666677}, "5,17": {"60,7": 38.0, "62,7": 38.0, "67,8": 36.0, "68,8": 36.0, "68,9": 76.0}, "6,0": {"2,9": 43.0, "14,9": 65.0, "20,8": 4.0, "24,7": 32.0, "26,8": 4.0, "27,7": 38.0, "28,7": 38.0}, "6,2": {"10,9": 24.5, "12,4": 4.0, "17,8": 4.0, "18,7": 7.5, "23,7": 38.0, "26,7": 38.0, "28,4": 4.0, "29,7": 24.5, "29,9": 83.5}, "6,1": {"36,8": 112.0}, "6,3": {"30,8": 72.0, "37,8": 40.0}, "6,4": {"6,9": 92.41666666666667, "8,5": 4.0, "9,5": 6.75, "11,8": 4.0, "12,9": 4.0, "18,9": 36.0, "21,5": 16.0, "32,8": 4.0, "34,5": 48.0, "35,9": 15.583333333333329, "37,5": 17.666666666666657, "37,9": 64.83333333333334, "38,9": 15.583333333333329, "42,9": 15.583333333333329, "43,9": 84.0, "45,4": 15.583333333333329, "45,7": 4.0}, "6,6": {"3,5": 12.0, "22,9": 66.0, "24,5": 16.0, "25,9": 64.5, "32,9": 112.0, "39,5": 36.0, "44,5": 48.0, "45,9": 93.5}, "6,5": {"48,8": 4.0, "49,8": 45.83333333333333, "52,8": 62.16666666666667}, "6,7": {"46,8": 32.91666666666667, "47,4": 30.0, "49,8": 49.08333333333333, "51,4": 30.0}, "6,8": {"21,8": 4.0, "23,9": 24.25, "28,9": 24.25, "31,9": 20.25, "33,4": 24.25, "50,9": 24.25, "58,8": 20.25, "58,9": 4.0}, "6,10": {"20,4": 5.5, "25,8": 4.0, "31,8": 4.0, "34,8": 4.0, "46,9": 35.5, "50,8": 18.0, "51,9": 35.5, "55,8": 5.5, "55,9": 30.0, "56,9": 35.5, "58,4": 30.0, "58,9": 5.5}, "6,9": {"61,4": 30.0, "62,4": 30.0, "63,8": 82.0}, "6,11": {"60,8": 59.85810810810809, "62,8": 18.72522522522526, "63,8": 33.41666666666665}, "6,12": {"51,9": 49.19144144144144, "59,9": 49.19144144144144, "62,9": 30.0, "64,8": 19.19144144144144, "65,9": 49.19144144144144, "66,4": 30.0, "66,9": 19.19144144144144, "70,4": 19.191441441441444, "70,8": 30.0}, "6,13": {"54,9": 17.058558558558556, "56,9": 17.058558558558556, "59,9": 17.058558558558556, "60,9": 17.058558558558556, "67,4": 17.058558558558556, "68,8": 17.058558558558556}, "6,14": {"53,9": 7.774774774774749, "54,5": 20.94144144144144, "57,5": 48.0, "60,9": 55.25, "61,7": 7.774774774774749, "62,9": 48.975225225225245, "65,9": 104.22522522522524, "67,9": 104.22522522522524, "68,5": 35.283783783783804, "69,8": 7.774774774774749, "70,8": 7.774774774774749}, "6,15": {"57,9": 8.437500000000028, "58,5": 37.55855855855856, "58,9": 10.808558558558556, "61,9": 101.19144144144144, "62,9": 10.808558558558556, "65,5": 15.632882882882882, "66,9": 10.808558558558556, "68,9": 92.75394144144141, "69,9": 101.19144144144144, "70,4": 10.808558558558556, "70,5": 48.0}, "6,16": {"65,7": 38.0, "67,9": 38.0, "68,7": 4.030968468468444, "69,7": 6.52364864864866, "69,8": 25.445382882882896, "70,7": 38.0, "70,8": 25.445382882882896, "70,9": 48.554617117117104}, "6,17": {"64,7": 38.0, "66,7": 38.0, "67,8": 36.0, "69,8": 36.0, "70,9": 76.0}, "7,0": {"14,8": 15.75, "17,7": 32.0, "18,4": 26.0, "19,9": 36.0, "20,9": 22.0, "30,7": 14.808558558558559, "30,9": 28.0, "31,7": 22.75, "33,8": 10.25, "35,4": 26.0, "35,7": 16.441441441441444}, "7,2": {"5,9": 24.0, "12,9": 29.0, "21,9": 30.0, "22,9": 12.5, "24,7": 6.0, "25,7": 38.0, "27,4": 12.5, "27,8": 4.0, "29,7": 13.5, "31,4": 16.5, "34,7": 38.0, "35,4": 4.0, "35,8": 12.5}, "7,1": {"37,8": 8.75, "42,8": 103.25}, "7,3": {"36,8": 4.0, "42,8": 12.75, "43,8": 95.25}, "7,4": {"0,5": 16.0, "6,9": 62.083333333333314, "7,7": 1.0, "7,9": 70.91666666666669, "8,9": 45.916666666666686, "13,9": 43.0, "16,7": 3.0, "30,8": 4.0, "32,5": 14.333333333333343, "36,5": 32.0, "39,9": 15.416666666666657, "40,9": 35.35810810810813, "41,5": 13.666666666666657, "42,5": 32.0, "51,8": 4.0, "51,9": 55.30855855855856}, "7,6": {"1,5": 16.0, "3,4": 1.5, "4,9": 55.5, "17,9": 92.0, "23,9": 9.25, "29,5": 10.0, "29,9": 17.0, "31,5": 16.25, "32,9": 22.0, "34,9": 51.44144144144144, "37,9": 1.5, "42,9": 11.225225225225245, "44,9": 1.5, "46,9": 29.929054054054063, "47,5": 20.25, "47,9": 11.166666666666657, "49,9": 21.737612612612622, "50,5": 48.0, "50,9": 11.75}, "7,5": {"54,8": 17.75, "55,8": 80.5, "57,8": 13.75}, "7,7": {"56,8": 9.75, "57,8": 102.25}, "7,8": {"27,9": 33.5, "30,9": 33.5, "40,4": 6.5, "54,9": 33.5, "55,4": 15.5, "57,4": 11.5, "57,9": 22.0, "61,8": 11.5, "62,8": 22.0, "62,9": 11.5}, "7,10": {"11,4": 2.0, "15,9": 21.5, "21,4": 4.0, "23,4": 4.0, "28,4": 19.75, "33,4": 5.75, "38,8": 4.0, "48,9": 61.19144144144144, "49,4": 25.691441441441437, "54,9": 61.19144144144144, "58,9": 31.69144144144144, "59,8": 4.0, "60,9": 61.19144144144144, "62,8": 53.19144144144144, "62,9": 8.0}, "7,9": {"64,8": 81.27477477477481, "66,8": 30.725225225225188}, "7,11": {"65,8": 26.725225225225188, "66,8": 85.27477477477481}, "7,12": {"44,4": 11.083333333333329, "50,8": 5.416666666666657, "53,4": 8.916666666666657, "53,9": 28.225225225225245, "55,9": 11.191441441441441, "56,9": 16.94144144144144, "59,4": 18.0833333333333, "63,9": 44.870495495495504, "66,9": 50.614301801801815, "69,4": 12.53096846846855, "70,8": 45.19763513513516, "71,9": 50.614301801801815}, "7,13": {"49,4": 4.308558558558563, "52,9": 27.01238738738735, "57,9": 34.62105855855854, "61,9": 34.62105855855854, "65,4": 7.916666666666696, "66,9": 17.063063063063026, "67,4": 12.941441441441444, "69,8": 9.454391891891841, "69,9": 25.166666666666696, "71,4": 9.454391891891841, "71,8": 25.166666666666696}, "7,14": {"58,5": 10.441441441441441, "59,9": 55.30855855855856, "60,5": 5.558558558558559, "63,5": 48.0, "65,9": 37.66666666666664, "66,9": 35.82263513513519, "69,5": 48.0, "69,9": 22.225225225225202, "70,9": 72.97691441441438, "71,9": 112.0}, "7,15": {"59,7": 0.5833333333333475, "61,9": 3.6041666666666696, "62,5": 29.342342342342334, "62,9": 10.799549549549496, "63,8": 0.5833333333333475, "64,5": 5.3581081081081265, "64,9": 91.23817567567573, "65,9": 0.5833333333333475, "66,5": 16.0, "67,9": 53.77477477477475, "68,5": 12.716216216216196, "69,9": 111.41666666666669, "71,5": 48.0, "71,8": 0.5833333333333475, "71,9": 63.41666666666665}, "7,16": {"67,7": 9.759009009008992, "68,9": 16.766891891891824, "69,7": 31.47635135135134, "69,8": 28.947635135135123, "70,8": 3.8170045045045455, "70,9": 62.468468468468515, "71,7": 38.0, "71,8": 32.76463963963967}, "7,17": {"67,8": 12.14527027027031, "68,4": 13.679054054054056, "68,7": 33.969031531531556, "68,8": 48.44144144144144, "69,4": 17.46903153153145, "69,8": 8.377815315315381, "70,8": 3.7652027027026307, "71,4": 20.54560810810816, "71,8": 57.48536036036029, "71,9": 33.969031531531556}}} \ No newline at end of file diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/TEMPLATE-PLAN.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/TEMPLATE-PLAN.json new file mode 100644 index 0000000000..12e2f187d9 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/TEMPLATE-PLAN.json @@ -0,0 +1,43330 @@ +{ + "status": "LITERAL_OWNER_NOMINATION_PENDING_ADMISSION", + "mode": "frozen-saturation-pattern-time-matching", + "K": 4, + "T": 8, + "M": 73, + "L": 9, + "live": 7168, + "deficit": 2560, + "profile": { + "1": 185792, + "2": 32576, + "3": 23600, + "4": 14128, + "5": 5040, + "6": 2016, + "8": 576, + "32": 1, + "48": 2094 + }, + "order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "windows": { + "0,0": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,2": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,1": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,3": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,5": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,7": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,9": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,11": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,12": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,13": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,14": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,15": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,16": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,17": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "1,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,1": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,3": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,5": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,7": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,9": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,11": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,12": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,13": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,14": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,15": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,16": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,17": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "2,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,1": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,3": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,5": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,7": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,9": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,11": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,12": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,13": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,14": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,15": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,16": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,17": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "3,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,1": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,3": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,5": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,7": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,9": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,11": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,12": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,13": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,14": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,15": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,16": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,17": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "4,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,1": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,3": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,5": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,7": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,9": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,11": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,12": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,13": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,14": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,15": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,16": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,17": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "5,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,1": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,3": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,5": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,7": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,9": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,11": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,12": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,13": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,14": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,15": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,16": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,17": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "6,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,1": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,3": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,5": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,7": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,9": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,11": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,12": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,13": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,14": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,15": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,16": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,17": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "7,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,1": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,3": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,5": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,7": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,9": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,11": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,12": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,13": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,14": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,15": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,16": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,17": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ] + }, + "sides": { + "0": 0, + "2": 1, + "1": 0, + "3": 1, + "4": 0, + "6": 1, + "5": 0, + "7": 1, + "8": 0, + "10": 1, + "9": 0, + "11": 1, + "12": 0, + "13": 1, + "14": 0, + "15": 1, + "16": 0, + "17": 1 + }, + "pairs": { + "0": 1, + "2": 1, + "1": 1, + "3": 1, + "4": 2, + "6": 2, + "5": 2, + "7": 2, + "8": 3, + "10": 3, + "9": 3, + "11": 3, + "12": 0, + "13": 0, + "14": 1, + "15": 1, + "16": 2, + "17": 2 + }, + "solver_status": "relocate_swap_chain_flip_annealing_of_pr601_literal_map", + "gap": null, + "provider_calls": [ + { + "time": 0, + "stage": 0, + "replica": 0, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 1, + "stage": 0, + "replica": 1, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 2, + "stage": 1, + "replica": 0, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 3, + "stage": 0, + "replica": 2, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 4, + "stage": 1, + "replica": 1, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 5, + "stage": 2, + "replica": 0, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 6, + "stage": 0, + "replica": 3, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 7, + "stage": 1, + "replica": 2, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 8, + "stage": 2, + "replica": 1, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 9, + "stage": 3, + "replica": 0, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "20fc773535473124584bca715b7c8be70085b700300af2a839a768729dffc892" + }, + { + "time": 10, + "stage": 0, + "replica": 4, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 11, + "stage": 1, + "replica": 3, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 12, + "stage": 2, + "replica": 2, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 13, + "stage": 3, + "replica": 1, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 14, + "stage": 4, + "replica": 0, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 15, + "stage": 0, + "replica": 5, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 16, + "stage": 1, + "replica": 4, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 17, + "stage": 2, + "replica": 3, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 18, + "stage": 3, + "replica": 2, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 19, + "stage": 4, + "replica": 1, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 20, + "stage": 5, + "replica": 0, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 21, + "stage": 0, + "replica": 6, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 22, + "stage": 1, + "replica": 5, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 23, + "stage": 2, + "replica": 4, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 24, + "stage": 3, + "replica": 3, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 25, + "stage": 4, + "replica": 2, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 26, + "stage": 5, + "replica": 1, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 27, + "stage": 0, + "replica": 7, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 28, + "stage": 6, + "replica": 0, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 29, + "stage": 1, + "replica": 6, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 30, + "stage": 2, + "replica": 5, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 31, + "stage": 3, + "replica": 4, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 32, + "stage": 4, + "replica": 3, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "e50db0ccfd5028f2c871c54bb20f1ae25615de3610d7fcf340052dc040c62d24" + }, + { + "time": 33, + "stage": 5, + "replica": 2, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 34, + "stage": 6, + "replica": 1, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "e50db0ccfd5028f2c871c54bb20f1ae25615de3610d7fcf340052dc040c62d24" + }, + { + "time": 35, + "stage": 1, + "replica": 7, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "20fc773535473124584bca715b7c8be70085b700300af2a839a768729dffc892" + }, + { + "time": 36, + "stage": 7, + "replica": 0, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 37, + "stage": 2, + "replica": 6, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 38, + "stage": 3, + "replica": 5, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 39, + "stage": 4, + "replica": 4, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 40, + "stage": 5, + "replica": 3, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 41, + "stage": 6, + "replica": 2, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 42, + "stage": 7, + "replica": 1, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "20fc773535473124584bca715b7c8be70085b700300af2a839a768729dffc892" + }, + { + "time": 43, + "stage": 2, + "replica": 7, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 44, + "stage": 8, + "replica": 0, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 45, + "stage": 3, + "replica": 6, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 46, + "stage": 4, + "replica": 5, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 47, + "stage": 5, + "replica": 4, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 48, + "stage": 6, + "replica": 3, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 49, + "stage": 7, + "replica": 2, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 50, + "stage": 8, + "replica": 1, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 51, + "stage": 3, + "replica": 7, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 52, + "stage": 4, + "replica": 6, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 53, + "stage": 5, + "replica": 5, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "20fc773535473124584bca715b7c8be70085b700300af2a839a768729dffc892" + }, + { + "time": 54, + "stage": 6, + "replica": 4, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 55, + "stage": 7, + "replica": 3, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 56, + "stage": 8, + "replica": 2, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 57, + "stage": 4, + "replica": 7, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 58, + "stage": 5, + "replica": 6, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 59, + "stage": 6, + "replica": 5, + "provider": "atm3", + "orientation": "forward", + "local_program_sha256": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f" + }, + { + "time": 60, + "stage": 7, + "replica": 4, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 61, + "stage": 8, + "replica": 3, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 62, + "stage": 5, + "replica": 7, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 63, + "stage": 6, + "replica": 6, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 64, + "stage": 7, + "replica": 5, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 65, + "stage": 8, + "replica": 4, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 66, + "stage": 6, + "replica": 7, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 67, + "stage": 7, + "replica": 6, + "provider": "atm3", + "orientation": "backward", + "local_program_sha256": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + { + "time": 68, + "stage": 8, + "replica": 5, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 69, + "stage": 7, + "replica": 7, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + { + "time": 70, + "stage": 8, + "replica": 6, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + }, + { + "time": 71, + "stage": 8, + "replica": 7, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab" + } + ], + "per_call_widths": [ + { + "stage": 0, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + } + ], + "provider_registry": { + "atm3": { + "directory": "providers/atm3", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "3162da180b7da8bd9d9fcded2d3618ad19110be8dab68a25099dc3565ad7b10b", + "LOCAL-PROGRAMS.json.gz": "3a21c1f45cbba24e0e2666ddfe6e9c3a2c99db9828b2080bf48c6b3b16ea88e2", + "LOCAL-CHECKS.json": "8a8ac44c79691aed3008e1bd4211cd6479ee7e6bca27c822591aee49a3c9d4a2", + "INDEPENDENT-LOCAL-REPLAY.json": "00e67d2100f8e80a1c4bb45f586e9d560b03584987c2714ef728bfe94087747d", + "CLIFFORD-RECIPES.json": "fdba9216d5956c84b77ab87cc2ef0a4470404122b698ead4691edb163ef49849", + "CLIFFORD-REVIEW.json": "dbf6926b1ee518e94148aca0e0f632d2f52a76124d54216f11903f2c45fbf397", + "RESIDUAL-ADAPTERS.json": "6c0dc81ae31583c9c099bf74eaa5d607bc6fa108c10edb4a1cf8dfa26dfeee9e" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 229, + 224, + 227, + 225, + 243, + 241, + 259, + 257 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2642, + "2": 408, + "3": 288, + "4": 224, + "5": 70, + "6": 28, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "67770bfcf864a49a40271216592c3f749811deb187425a17dd4995422830cc7f", + "backward": "23644276741be78fd8f01cca29aef971cd9302b65783adb2c78778c4db7631f9" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "4cf4d53d45d1fde82bdf85406792520763bd9b99b0633476246f02ae3b6f9ae6", + "LOCAL-PROGRAMS.json.gz": "c655828c0a8d9ee3a14dfdb19242c8c6ad72d607fcf0525a722fa32c86151415", + "LOCAL-CHECKS.json": "07f579b92abc50137b8fc16a82282e0a028f27c0568a9ea040117b90424d9285", + "INDEPENDENT-LOCAL-REPLAY.json": "88231119cad46ad52cee9abf4267d8234b300f6b6945d401f61efe899e3c4f82", + "CLIFFORD-RECIPES.json": "fdba9216d5956c84b77ab87cc2ef0a4470404122b698ead4691edb163ef49849", + "CLIFFORD-REVIEW.json": "028e83334c34e8c4d01cefca50ea535147fa946cdc90df22c4b798d25982772b", + "RESIDUAL-ADAPTERS.json": "deefee1fae99a31c49bd55b37a3452e6c3a95b804fec7b1e7e8d82064954777a" + } + }, + "ck": { + "directory": "providers/ck", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "905455c055b9cb621ab484145a70ebba9aff39c01804ed4e9c3bdd21ad2ff102", + "LOCAL-PROGRAMS.json.gz": "5985ef4cb25adce746d4c74c5c0858bc8311091abf5b85802ccba9d92602a4a2", + "LOCAL-CHECKS.json": "5d3ab8bbe152d1e8e1c6ccaacdb37a74308b3ae6ebf9ec3c86dbc233bcc92dad", + "INDEPENDENT-LOCAL-REPLAY.json": "9e57dd6d3a8eed601f497e858275014f03e31aa6ac06226df75dd9f00f28655a", + "CLIFFORD-RECIPES.json": "c413fcae2e9c22e0b020ac0073686bad9cfc22e61c82840f8d85ef4fd801bb90", + "CLIFFORD-REVIEW.json": "fc1cd2ccf0b55fe100611149bd785a68eeee690e1d74c9082497ab154f2cac2e", + "RESIDUAL-ADAPTERS.json": "fd34bb086ed7078bbc420c167459bf7bc8b48c8497dcb4280d65eb3df2e62e2b" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 229, + 224, + 227, + 225, + 243, + 241, + 259, + 257 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2562, + "2": 488, + "3": 328, + "4": 184, + "5": 70, + "6": 28, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "f5886cc3fec7015a8b6d25477f13d1b6a051419c1b6a34a735cae29b3b9529ab", + "backward": "80739c8b308e55f4ae228c946be0a720d6f207a2d5c1ed27f2dadb70d428e254" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "4a0564ada402b56cb545e49ca00e201c1c72deec3bf6c0d15dd77b1bfca67b2a", + "LOCAL-PROGRAMS.json.gz": "8123ef30bd535262f7516fb0c31ff31b7b160e704c63cd4736d00e007883e6eb", + "LOCAL-CHECKS.json": "314b2a2b089f83b7405a60a4643256f93759e0af3fcfb7ae3ce9eaa5abe4e828", + "INDEPENDENT-LOCAL-REPLAY.json": "9f35b65222f0ec49326a12323a5cabc85709203aecf8eb7132249443b0e76f3b", + "CLIFFORD-RECIPES.json": "c413fcae2e9c22e0b020ac0073686bad9cfc22e61c82840f8d85ef4fd801bb90", + "CLIFFORD-REVIEW.json": "a0613c6639752dbf92246b9e3f3062b0f32af4ed6c7d76d42bd5081c23f3a450", + "RESIDUAL-ADAPTERS.json": "4ed5789e4f9e971ee42c5ee3a7a23281145d9fe94c320d32d6ece907a66969ce" + } + }, + "jp8": { + "directory": "providers/jp8", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "137c7b29a3088e2722c60d5df1f6d352d619eba3057a91cd8e1b8d0a2e4327aa", + "LOCAL-PROGRAMS.json.gz": "7f3ccd0d058e817b1bb12f9dc7c1b9c719f2e78e4f12f257dcfbb688fcb96261", + "LOCAL-CHECKS.json": "62f7d8218432f27af220a4ca3b22a90a9ddb5d637b3880b4d7cf55042ee07b62", + "INDEPENDENT-LOCAL-REPLAY.json": "40c6da4caa854459d1d0354a983aabdea0804740281deed06d01d7d2249fffcb", + "CLIFFORD-RECIPES.json": "61351efb268dbb94b2218f3a1eac811008feaa8146102b7eafc084d288b9a73a", + "CLIFFORD-REVIEW.json": "424238ad34892eff68e60a456d563e0f65db83b5761cacac8a09467c362b82b4", + "RESIDUAL-ADAPTERS.json": "daf5f638a222d5b48e60a60e9f8badf8c4f46da1f7e472e91f350881b808be6f" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 229, + 224, + 227, + 225, + 243, + 241, + 259, + 257 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 7, + 8, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2478, + "2": 336, + "3": 472, + "4": 184, + "5": 70, + "6": 28, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "e50db0ccfd5028f2c871c54bb20f1ae25615de3610d7fcf340052dc040c62d24", + "backward": "20fc773535473124584bca715b7c8be70085b700300af2a839a768729dffc892" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "aa40dab2bf62a54c21786f15fecb83b8d3b95ae4e3a6df3a1bd5ffddb2fa2ecc", + "LOCAL-PROGRAMS.json.gz": "ef68197756a140f50eb857ad55cbfb3da8495220e4c301395bb5007de1dadcbf", + "LOCAL-CHECKS.json": "d1e4e9cadfe9a07e1ee3449f8f60deaad8bc9c5f9644708148c63d48aaed28d2", + "INDEPENDENT-LOCAL-REPLAY.json": "1187b00a321c7465c487dee38a1c5e535dc8e1873cc019545621655b4c500e6e", + "CLIFFORD-RECIPES.json": "61351efb268dbb94b2218f3a1eac811008feaa8146102b7eafc084d288b9a73a", + "CLIFFORD-REVIEW.json": "2db782ae902b3e16d550cfac58e1d49429684d83e41cfcdf3d4436daa99d3c7a", + "RESIDUAL-ADAPTERS.json": "46366cf705b0f2555be526a8def0cab0ccdf3c4ef75fcb24b06e3f15520a6e1b" + } + } + }, + "source_plan_sha256": "329750b57d80ee60893ca1be6bba38f39a2264dd63bf2158ca0ac68f406326cd", + "assignment_sha256": "944695b855d3224809d71f43b33fa2290f7fde4934eaf3a6ea87ac1631f59688", + "source_owners_sha256": "944695b855d3224809d71f43b33fa2290f7fde4934eaf3a6ea87ac1631f59688" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-OWNERS.json.gz b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-OWNERS.json.gz new file mode 100644 index 0000000000..70613ab9c4 Binary files /dev/null and b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-OWNERS.json.gz differ diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-PLAN.json b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-PLAN.json new file mode 100644 index 0000000000..eb7333e5b7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/data/search/WARM-PLAN.json @@ -0,0 +1,41781 @@ +{ + "status": "LITERAL_OWNER_NOMINATION_PENDING_ADMISSION", + "mode": "literal-owner-width-swap-search", + "K": 4, + "T": 8, + "M": 73, + "L": 9, + "live": 7168, + "deficit": 2560, + "profile": { + "1": 181713, + "2": 30144, + "3": 31105, + "4": 11520, + "5": 4912, + "6": 576, + "8": 576, + "12": 1, + "16": 6, + "24": 5, + "40": 1, + "48": 2217 + }, + "order": [ + [ + 0, + 0 + ], + [ + 0, + 1 + ], + [ + 1, + 0 + ], + [ + 0, + 2 + ], + [ + 1, + 1 + ], + [ + 2, + 0 + ], + [ + 0, + 3 + ], + [ + 1, + 2 + ], + [ + 2, + 1 + ], + [ + 3, + 0 + ], + [ + 0, + 4 + ], + [ + 1, + 3 + ], + [ + 2, + 2 + ], + [ + 3, + 1 + ], + [ + 4, + 0 + ], + [ + 0, + 5 + ], + [ + 1, + 4 + ], + [ + 2, + 3 + ], + [ + 3, + 2 + ], + [ + 4, + 1 + ], + [ + 5, + 0 + ], + [ + 0, + 6 + ], + [ + 1, + 5 + ], + [ + 2, + 4 + ], + [ + 3, + 3 + ], + [ + 4, + 2 + ], + [ + 5, + 1 + ], + [ + 0, + 7 + ], + [ + 6, + 0 + ], + [ + 1, + 6 + ], + [ + 2, + 5 + ], + [ + 3, + 4 + ], + [ + 4, + 3 + ], + [ + 5, + 2 + ], + [ + 6, + 1 + ], + [ + 1, + 7 + ], + [ + 7, + 0 + ], + [ + 2, + 6 + ], + [ + 3, + 5 + ], + [ + 4, + 4 + ], + [ + 5, + 3 + ], + [ + 6, + 2 + ], + [ + 7, + 1 + ], + [ + 2, + 7 + ], + [ + 8, + 0 + ], + [ + 3, + 6 + ], + [ + 4, + 5 + ], + [ + 5, + 4 + ], + [ + 6, + 3 + ], + [ + 7, + 2 + ], + [ + 8, + 1 + ], + [ + 3, + 7 + ], + [ + 4, + 6 + ], + [ + 5, + 5 + ], + [ + 6, + 4 + ], + [ + 7, + 3 + ], + [ + 8, + 2 + ], + [ + 4, + 7 + ], + [ + 5, + 6 + ], + [ + 6, + 5 + ], + [ + 7, + 4 + ], + [ + 8, + 3 + ], + [ + 5, + 7 + ], + [ + 6, + 6 + ], + [ + 7, + 5 + ], + [ + 8, + 4 + ], + [ + 6, + 7 + ], + [ + 7, + 6 + ], + [ + 8, + 5 + ], + [ + 7, + 7 + ], + [ + 8, + 6 + ], + [ + 8, + 7 + ] + ], + "windows": { + "0,0": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,2": [ + 16, + [ + 0, + 1, + 2 + ] + ], + "0,1": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,3": [ + 8, + [ + 3, + 4, + 5 + ] + ], + "0,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9 + ] + ], + "0,5": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,7": [ + 8, + [ + 10, + 11, + 12, + 13, + 14 + ] + ], + "0,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20 + ] + ], + "0,9": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,11": [ + 8, + [ + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28 + ] + ], + "0,12": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,13": [ + 48, + [ + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,14": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,15": [ + 32, + [ + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,16": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "0,17": [ + 16, + [ + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44 + ] + ], + "1,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4 + ] + ], + "1,1": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,3": [ + 8, + [ + 5, + 6, + 7, + 8 + ] + ], + "1,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13 + ] + ], + "1,5": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,7": [ + 8, + [ + 14, + 15, + 16, + 17, + 18, + 19 + ] + ], + "1,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26 + ] + ], + "1,9": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,11": [ + 8, + [ + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34 + ] + ], + "1,12": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,13": [ + 48, + [ + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,14": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,15": [ + 32, + [ + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,16": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "1,17": [ + 16, + [ + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50 + ] + ], + "2,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7 + ] + ], + "2,1": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,3": [ + 8, + [ + 8, + 9, + 10, + 11, + 12 + ] + ], + "2,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18 + ] + ], + "2,5": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,7": [ + 8, + [ + 19, + 20, + 21, + 22, + 23, + 24, + 25 + ] + ], + "2,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33 + ] + ], + "2,9": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,11": [ + 8, + [ + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41 + ] + ], + "2,12": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,13": [ + 48, + [ + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,14": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,15": [ + 32, + [ + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,16": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "2,17": [ + 16, + [ + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56 + ] + ], + "3,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11 + ] + ], + "3,1": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,3": [ + 8, + [ + 12, + 13, + 14, + 15, + 16, + 17 + ] + ], + "3,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24 + ] + ], + "3,5": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,7": [ + 8, + [ + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32 + ] + ], + "3,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40 + ] + ], + "3,9": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,11": [ + 8, + [ + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48 + ] + ], + "3,12": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,13": [ + 48, + [ + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,14": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,15": [ + 32, + [ + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,16": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "3,17": [ + 16, + [ + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61 + ] + ], + "4,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16 + ] + ], + "4,1": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,3": [ + 8, + [ + 17, + 18, + 19, + 20, + 21, + 22, + 23 + ] + ], + "4,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31 + ] + ], + "4,5": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,7": [ + 8, + [ + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39 + ] + ], + "4,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47 + ] + ], + "4,9": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,11": [ + 8, + [ + 48, + 49, + 50, + 51, + 52, + 53, + 54 + ] + ], + "4,12": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,13": [ + 48, + [ + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,14": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,15": [ + 32, + [ + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,16": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "4,17": [ + 16, + [ + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65 + ] + ], + "5,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22 + ] + ], + "5,1": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,3": [ + 8, + [ + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30 + ] + ], + "5,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38 + ] + ], + "5,5": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,7": [ + 8, + [ + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46 + ] + ], + "5,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53 + ] + ], + "5,9": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,11": [ + 8, + [ + 54, + 55, + 56, + 57, + 58, + 59 + ] + ], + "5,12": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,13": [ + 48, + [ + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,14": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,15": [ + 32, + [ + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,16": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "5,17": [ + 16, + [ + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68 + ] + ], + "6,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29 + ] + ], + "6,1": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,3": [ + 8, + [ + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37 + ] + ], + "6,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45 + ] + ], + "6,5": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,7": [ + 8, + [ + 46, + 47, + 48, + 49, + 50, + 51, + 52 + ] + ], + "6,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58 + ] + ], + "6,9": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,11": [ + 8, + [ + 59, + 60, + 61, + 62, + 63 + ] + ], + "6,12": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,13": [ + 48, + [ + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,14": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,15": [ + 32, + [ + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,16": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "6,17": [ + 16, + [ + 64, + 65, + 66, + 67, + 68, + 69, + 70 + ] + ], + "7,0": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,2": [ + 16, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35 + ] + ], + "7,1": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,3": [ + 8, + [ + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43 + ] + ], + "7,4": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,6": [ + 32, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51 + ] + ], + "7,5": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,7": [ + 8, + [ + 52, + 53, + 54, + 55, + 56, + 57 + ] + ], + "7,8": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,10": [ + 48, + [ + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62 + ] + ], + "7,9": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,11": [ + 8, + [ + 63, + 64, + 65, + 66 + ] + ], + "7,12": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,13": [ + 48, + [ + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,14": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,15": [ + 32, + [ + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,16": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ], + "7,17": [ + 16, + [ + 67, + 68, + 69, + 70, + 71 + ] + ] + }, + "sides": { + "0": 0, + "2": 1, + "1": 0, + "3": 1, + "4": 0, + "6": 1, + "5": 0, + "7": 1, + "8": 0, + "10": 1, + "9": 0, + "11": 1, + "12": 0, + "13": 1, + "14": 0, + "15": 1, + "16": 0, + "17": 1 + }, + "pairs": { + "0": 1, + "2": 1, + "1": 1, + "3": 1, + "4": 2, + "6": 2, + "5": 2, + "7": 2, + "8": 3, + "10": 3, + "9": 3, + "11": 3, + "12": 0, + "13": 0, + "14": 1, + "15": 1, + "16": 2, + "17": 2 + }, + "solver_status": "FEASIBLE_NOT_OPTIMAL", + "gap": null, + "provider_calls": [ + { + "time": 0, + "stage": 0, + "replica": 0, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "24d4fdd9641278242add4c3ed9843e138e04f6a54d067cf6b755f6bcba84978f" + }, + { + "time": 1, + "stage": 0, + "replica": 1, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "24d4fdd9641278242add4c3ed9843e138e04f6a54d067cf6b755f6bcba84978f" + }, + { + "time": 2, + "stage": 1, + "replica": 0, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "314b814a33d1339c7862112a4c927c19af0aee03dead0f841c983814a9f24d58" + }, + { + "time": 3, + "stage": 0, + "replica": 2, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "24d4fdd9641278242add4c3ed9843e138e04f6a54d067cf6b755f6bcba84978f" + }, + { + "time": 4, + "stage": 1, + "replica": 1, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "314b814a33d1339c7862112a4c927c19af0aee03dead0f841c983814a9f24d58" + }, + { + "time": 5, + "stage": 2, + "replica": 0, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 6, + "stage": 0, + "replica": 3, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "24d4fdd9641278242add4c3ed9843e138e04f6a54d067cf6b755f6bcba84978f" + }, + { + "time": 7, + "stage": 1, + "replica": 2, + "provider": "ck", + "orientation": "backward", + "local_program_sha256": "314b814a33d1339c7862112a4c927c19af0aee03dead0f841c983814a9f24d58" + }, + { + "time": 8, + "stage": 2, + "replica": 1, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 9, + "stage": 3, + "replica": 0, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 10, + "stage": 0, + "replica": 4, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 11, + "stage": 1, + "replica": 3, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 12, + "stage": 2, + "replica": 2, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 13, + "stage": 3, + "replica": 1, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 14, + "stage": 4, + "replica": 0, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 15, + "stage": 0, + "replica": 5, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 16, + "stage": 1, + "replica": 4, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 17, + "stage": 2, + "replica": 3, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 18, + "stage": 3, + "replica": 2, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 19, + "stage": 4, + "replica": 1, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 20, + "stage": 5, + "replica": 0, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 21, + "stage": 0, + "replica": 6, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 22, + "stage": 1, + "replica": 5, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 23, + "stage": 2, + "replica": 4, + "provider": "ck", + "orientation": "forward", + "local_program_sha256": "24d4fdd9641278242add4c3ed9843e138e04f6a54d067cf6b755f6bcba84978f" + }, + { + "time": 24, + "stage": 3, + "replica": 3, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 25, + "stage": 4, + "replica": 2, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 26, + "stage": 5, + "replica": 1, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 27, + "stage": 0, + "replica": 7, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 28, + "stage": 6, + "replica": 0, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 29, + "stage": 1, + "replica": 6, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 30, + "stage": 2, + "replica": 5, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 31, + "stage": 3, + "replica": 4, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 32, + "stage": 4, + "replica": 3, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 33, + "stage": 5, + "replica": 2, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 34, + "stage": 6, + "replica": 1, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 35, + "stage": 1, + "replica": 7, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 36, + "stage": 7, + "replica": 0, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 37, + "stage": 2, + "replica": 6, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 38, + "stage": 3, + "replica": 5, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 39, + "stage": 4, + "replica": 4, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 40, + "stage": 5, + "replica": 3, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 41, + "stage": 6, + "replica": 2, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 42, + "stage": 7, + "replica": 1, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 43, + "stage": 2, + "replica": 7, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 44, + "stage": 8, + "replica": 0, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 45, + "stage": 3, + "replica": 6, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 46, + "stage": 4, + "replica": 5, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 47, + "stage": 5, + "replica": 4, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 48, + "stage": 6, + "replica": 3, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 49, + "stage": 7, + "replica": 2, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 50, + "stage": 8, + "replica": 1, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 51, + "stage": 3, + "replica": 7, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 52, + "stage": 4, + "replica": 6, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 53, + "stage": 5, + "replica": 5, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 54, + "stage": 6, + "replica": 4, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 55, + "stage": 7, + "replica": 3, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 56, + "stage": 8, + "replica": 2, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 57, + "stage": 4, + "replica": 7, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 58, + "stage": 5, + "replica": 6, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 59, + "stage": 6, + "replica": 5, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 60, + "stage": 7, + "replica": 4, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 61, + "stage": 8, + "replica": 3, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 62, + "stage": 5, + "replica": 7, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 63, + "stage": 6, + "replica": 6, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 64, + "stage": 7, + "replica": 5, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 65, + "stage": 8, + "replica": 4, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 66, + "stage": 6, + "replica": 7, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 67, + "stage": 7, + "replica": 6, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 68, + "stage": 8, + "replica": 5, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 69, + "stage": 7, + "replica": 7, + "provider": "jp8", + "orientation": "backward", + "local_program_sha256": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + { + "time": 70, + "stage": 8, + "replica": 6, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + }, + { + "time": 71, + "stage": 8, + "replica": 7, + "provider": "jp8", + "orientation": "forward", + "local_program_sha256": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f" + } + ], + "per_call_widths": [ + { + "stage": 0, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 0, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 1, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 2, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 0, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 1, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 3, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 2, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 4, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 3, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 5, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 4, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 6, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 5, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 7, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 6, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + }, + { + "stage": 8, + "replica": 7, + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ] + } + ], + "provider_registry": { + "ck": { + "directory": "providers/ck", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "ae3018c0646be06f47d345bb8baf0e6ea9220096a949fa30a8f7656aa4ad6f45", + "LOCAL-PROGRAMS.json.gz": "b5da54e049cc127a1065190a647cb71cac0c6ba03d9ccdb71719f4fcbfa886f3", + "LOCAL-CHECKS.json": "059c4e59142bdf5c19dc7c0afebcddfec28e6e60cbc7299b8bdcc624afbc0cbe", + "INDEPENDENT-LOCAL-REPLAY.json": "ecefb9e661301d8081522be68bbe6640e175c011eb1177f643383d193c6fb2f0", + "CLIFFORD-RECIPES.json": "dfb64e71409a395f9375d9cc2258365d462bab2d28b707dcfba38994dd5aa0b9", + "CLIFFORD-REVIEW.json": "e9eb877f03421bee58630612b13a9dd134ffcdef070b6df8f6b28b3c9c65cde3", + "RESIDUAL-ADAPTERS.json": "4697965c1b466fd3eaf37fa1fbbd45bb06c78cb0fe0b3a253744efb4013581b9" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 229, + 224, + 227, + 225, + 243, + 241, + 259, + 257 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 7, + 7, + 7, + 7, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 7, + 7, + 7, + 7, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 8, + 9, + 8, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2596, + "2": 552, + "3": 304, + "4": 160, + "5": 70, + "6": 8, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "24d4fdd9641278242add4c3ed9843e138e04f6a54d067cf6b755f6bcba84978f", + "backward": "314b814a33d1339c7862112a4c927c19af0aee03dead0f841c983814a9f24d58" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "9bbc75dede090cfd7a0a0252424ea9d9f6211e2350d2a801d4e4f2f0784167c7", + "LOCAL-PROGRAMS.json.gz": "854f17274092263dc25e60367f4cd0d29f60a8446becd17cc1883ebed7a97900", + "LOCAL-CHECKS.json": "9e7be4f5eb567ffe886871b3fa434cc71f352e91cc9da07cb4e72c5742f24db4", + "INDEPENDENT-LOCAL-REPLAY.json": "ad854d9d15515cbcf7a2bee221d9c3cf0c7215770521866b12ce98aa777e310b", + "CLIFFORD-RECIPES.json": "dfb64e71409a395f9375d9cc2258365d462bab2d28b707dcfba38994dd5aa0b9", + "CLIFFORD-REVIEW.json": "dceebd0983fdfe94922323ae6499fc2d9bfbb7886c6843af5673b0266ec5b609", + "RESIDUAL-ADAPTERS.json": "8283dfa442fc7e7626f3356385bda8607b8d15eecfdc9515a6271c29da6caa7a" + } + }, + "jp8": { + "directory": "providers/jp8", + "artifact_sha256": { + "CANONICAL-WORD.json.gz": "01b16580b4fe8443df01374806ef0c6c3ff1aed050a437e48db01348c53653ef", + "LOCAL-PROGRAMS.json.gz": "8f0ac3474448175f2ea93a70ff46619f421499f4de9502bea99c8139b80c6e6a", + "LOCAL-CHECKS.json": "ab2e905dd21c0672e4f8c6eb94e8e9ab98053100dd7566d33ddf85fd9d7d2a27", + "INDEPENDENT-LOCAL-REPLAY.json": "bbcd33395cd21a5e2dd6854660daafd831888135d45e640c6e817a43fe6095af", + "CLIFFORD-RECIPES.json": "efc3b59067b861446b9d307eb66856a62dd6691f194b8a5110eb86f09889418f", + "CLIFFORD-REVIEW.json": "c085c35fae73da38303a7ee9fcd1355f9cc046cd5ee16d6d05d1709cce752c46", + "RESIDUAL-ADAPTERS.json": "1ce155ca22554c80b3d40dbde3f7c723826775dcf043ac54e50c719cdef1cf0f" + }, + "ports": [ + 11, + 19, + 35, + 67, + 131, + 259, + 13, + 21, + 37, + 69, + 133, + 261, + 41, + 73, + 137, + 265, + 49, + 81, + 145, + 273, + 161, + 289, + 193, + 321, + 385, + 14, + 22, + 38, + 70, + 134, + 262, + 26, + 74, + 138, + 266, + 50, + 146, + 274, + 98, + 162, + 290, + 194, + 322, + 386, + 28, + 44, + 140, + 268, + 84, + 148, + 276, + 100, + 164, + 292, + 196, + 324, + 388, + 56, + 88, + 152, + 280, + 104, + 168, + 296, + 200, + 328, + 392, + 112, + 176, + 304, + 208, + 336, + 400, + 224, + 352, + 416, + 448, + 508, + 506, + 502, + 494, + 478, + 446, + 382, + 254, + 505, + 501, + 493, + 477, + 445, + 381, + 253, + 499, + 491, + 475, + 443, + 379, + 251, + 487, + 471, + 439, + 375, + 247, + 463, + 431, + 367, + 239, + 415, + 351, + 223, + 319, + 191 + ], + "centers": [ + 229, + 224, + 227, + 225, + 243, + 241, + 259, + 257 + ], + "widths": [ + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 4, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 7, + 7, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 8, + 8, + 9, + 9, + 9, + 9, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 7, + 9, + 8, + 9, + 8, + 8, + 8, + 8, + 8, + 9, + 9, + 7, + 9, + 8, + 9, + 8, + 9, + 9, + 7, + 9, + 7, + 7, + 8, + 8, + 8, + 8, + 9, + 7, + 9, + 9, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 7, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 4, + 8, + 4, + 4, + 4, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5, + 8, + 8, + 8, + 5, + 8, + 5, + 5, + 5 + ], + "actual_paid_profile": { + "1": 2514, + "2": 402, + "3": 448, + "4": 160, + "5": 68, + "6": 8, + "8": 8 + }, + "orientation_program_sha256": { + "forward": "5d9189175af3e0a96a484fb48e64719a835af2a0921505d7bad6f6ccb283cc0f", + "backward": "a86273dec3ce33478254799a2f68c5f061eb22546cfa64b4e518220548e91aae" + }, + "artifact_semantic_sha256": { + "CANONICAL-WORD.json.gz": "e5e3448a3253e4334b7176ac5fcb1921c60f6f82b38454b74997bd06f11fc75b", + "LOCAL-PROGRAMS.json.gz": "56fe3733bab71312e8a2622af8c884e0969494eff0a5b8a312ad7843d8dbc567", + "LOCAL-CHECKS.json": "42b73df519597e5f6b2b8c939c0c1d4b7e4b1030587a027df8e338794b41faed", + "INDEPENDENT-LOCAL-REPLAY.json": "02a9801843b1e7aaef52c0464f453ba3a8cdc23d1513839cc7bbac2bc1cfa51b", + "CLIFFORD-RECIPES.json": "efc3b59067b861446b9d307eb66856a62dd6691f194b8a5110eb86f09889418f", + "CLIFFORD-REVIEW.json": "2986e75973eadde5ba2ffece18383b814f3b03793fa5b65b28845f8bb36a2c2a", + "RESIDUAL-ADAPTERS.json": "92ec07366a3a7e362502a79dbf424ee5e4c0cdebbe393419c2b99d5f5b6d7987" + } + } + }, + "source_plan_sha256": "3fa663e8fa1a85c2e4a21ccf8cb769ee9c37000384f3c2ee45c750fe6541562b", + "assignment_sha256": "56aac182713cba7627b7ebfbb497975b5a7c76b9da9f835a1cb63192fc6134a4", + "source_owners_sha256": "243856f536d0e1825f8fc1c458e10941d528bceb1943813622356898c3eb3361" +} diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/verify.py b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/verify.py new file mode 100644 index 0000000000..1be6686ac9 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/verify.py @@ -0,0 +1,389 @@ +"""Spec-driven official replay: rebuild every provider word from pinned sources through typed construction steps, +localize each word with the unchanged vendor pipeline, then run the spec-driven global admission and assembly. +Prepared with Claude Code assistance. Apache-2.0; see NOTICE.md. Pinned external sources are unchanged packages. +Everything this script runs is named in data/SPEC.json "build" and must be one of the allowlisted step types below; +the spec contains no scripts or commands, only step types, pinned source files, recipes and expected hashes. +""" +import argparse,gzip,hashlib,json,os,subprocess,sys,time,shutil,threading +from concurrent.futures import ThreadPoolExecutor +from pathlib import Path +from fractions import Fraction as Q +from collections import Counter +assert __debug__, 'Assertions required' +P=Path(__file__).resolve().parent +ap=argparse.ArgumentParser();ap.add_argument('--work',type=Path,required=True) +ap.add_argument('--spec',type=Path,default=P/'data/SPEC.json',help=argparse.SUPPRESS) +ap.add_argument('--jobs',type=int,default=min(8,os.cpu_count() or 4),help='parallel provider chains') +ap.add_argument('--source',action='append',default=[],help='NAME=DIR pinned source package (default: sibling directory named in the spec)') +ap.add_argument('--check-pins',action='store_true',help='check package and source pins, then stop') +ap.add_argument('--until',choices=('locals','all'),default='all',help=argparse.SUPPRESS) +ap.add_argument('--reuse-baseline',type=Path,help=argparse.SUPPRESS) +ap.add_argument('--reuse-local',action='append',default=[],help=argparse.SUPPRESS) +a=ap.parse_args();O=a.work.resolve();SPECFILE=a.spec.resolve();SPEC=json.loads(SPECFILE.read_bytes());BUILD=SPEC['build'] +DISCOVER=os.environ.get('WITNESS_DISCOVER')=='1';discovered={} +given=dict(x.split('=',1)for x in a.source) +SRC={name:Path(given.get(name,P.parent/src['dir'])).resolve()for name,src in BUILD['sources'].items()};S=SRC['multicold'] +def read(p):return json.loads(gzip.decompress(p.read_bytes())if p.suffix=='.gz'else p.read_bytes()) +def sha(p):return hashlib.sha256(p.read_bytes()).hexdigest() +def content(p):return hashlib.sha256(gzip.decompress(p.read_bytes())).hexdigest() +def dump(p,x):p.write_text(json.dumps(x,indent=2)+'\n',newline='\n') +def tree(root,skip):return{f.relative_to(root).as_posix():sha(f)for f in root.rglob('*')if f.is_file()and f!=root/skip and'__pycache__'not in f.parts} +def pinned(where,key,got,label): + """Compare against the spec value; a discovery build (propose.py) records values the spec does not yet hold.""" + if key in where:assert got==where[key],'BUILD PIN MISMATCH %s.%s: expected %s got %s'%(label,key,where[key],got) + else:assert DISCOVER,'BUILD PIN MISSING %s.%s'%(label,key);discovered[label+'.'+key]=got + return got +if SPECFILE==P/'data/SPEC.json':assert tree(P,'MANIFEST.json')==read(P/'MANIFEST.json'),'package MANIFEST' +for name,src in BUILD['sources'].items(): + root=SRC[name];manifest=read(root/'MANIFEST.json') + assert sha(root/'MANIFEST.json')==src['manifest_sha256'],name+' manifest pin' + if src.get('full_tree'):assert tree(root,'MANIFEST.json')==manifest,name+' tree' + files=manifest['sha256']if manifest.get('algorithm')=='sha256'else manifest.get('files',manifest) # PR531 manifests: {algorithm, sha256} + for rel,value in src['files'].items():assert sha(root/rel)==value==files[rel],(name,rel) +def ref(r,pin=True): + """'pkg:rel' (this package) or 'NAME:rel' (a pinned file of source NAME).""" + kind,rel=r.split(':',1) + if kind=='pkg':return P/rel + assert rel in BUILD['sources'][kind]['files'],'unpinned source file '+r + return SRC[kind]/rel +if a.check_pins:print('PINS OK',SPEC['name'],sha(SPECFILE));raise SystemExit(0) +assert not O.exists() and not any(O.is_relative_to(x)for x in (P,*SRC.values())) +O.mkdir(parents=True);steps=[];lock=threading.Lock();start=time.monotonic() +env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0',MULTICOLD_SOURCE=str(S),GAIN_PR564_SOURCE=str(S),WITNESS_SPEC=str(SPECFILE));env.pop('PYTHONOPTIMIZE',None);env.pop('WITNESS_DISCOVER',None) +def run(name,script,*args): + log=O/(name+'.log');t=time.monotonic();print('RUN',name,flush=True) + with log.open('w')as f:code=subprocess.call([sys.executable,'-B',str(S/'code/run_portable.py'),str(script),*map(str,args)],stdout=f,stderr=subprocess.STDOUT,env=env) + with lock:steps.append(dict(name=name,exit_code=code,seconds=round(time.monotonic()-t,3),log_sha256=sha(log)));dump(O/'STAGES.json',steps) + if code:raise RuntimeError(name+' failed\n'+log.read_text()[-6000:]) + print('PASS',name,flush=True) +B=S/'vendor/pr558';F=B/'vendor/pr552';V=F/'complex-global/vendor531';GK=F/'complex-local/static44/gk' +if a.reuse_baseline:baseline=a.reuse_baseline.resolve() +else:baseline=O/'baseline558';run('frozen558-full-replay',B/'verify.py','--work',baseline) +SEL=baseline/'reconstruction/static44/SELECTION.json';RAW=baseline/'reconstruction/promoted/FULL-WORD.json.gz' +def omissions(path,s,label):pinned(s,'omission_controls',len(read(path)['controls']),label) +# Allowlisted step types: (constructor, paired omission audit), all scripts from the pinned multicold source. +def cold_kernel(word,s,out,tag): + recipe=ref(s['recipe']);pinned(s,'recipe_sha256',sha(recipe),tag) + run(tag+'-construction',S/'code/build_cold_kernel.py','--input',word,'--recipe',recipe,'--gk-dir',GK,'--out',out) + run(tag+'-omissions',S/'code/audit_kernel_controls.py','--word',out/'FULL-WORD.json.gz','--recipe',recipe,'--out',out/'KERNEL-OMISSION-CONTROLS.json') + omissions(out/'KERNEL-OMISSION-CONTROLS.json',s,tag) +def finalize(word,recipe,tag): + """Discovery only: a new recipe whose output hash is still open is pinned by a first build that must fail exactly at + the final output-hash assertion (every kernel check passed); the printed hash is written into a final recipe.""" + r=read(recipe);h=r.get('output_content_sha256','') + if len(h)==64 and all(c in '0123456789abcdef'for c in h):return recipe + assert DISCOVER,'recipe output hash not pinned: '+tag + r['output_content_sha256']='0'*64;probe=O/(tag+'-probe');probe.mkdir();dump(probe/'RECIPE.json',r) + p=subprocess.run([sys.executable,'-B',str(S/'code/run_portable.py'),str(S/'code/build_multicut_kernels.py'),'--input',str(word),'--recipe',str(probe/'RECIPE.json'),'--gk-dir',str(GK),'--out',str(probe/'out')],capture_output=True,text=True,env=env) + last=(p.stderr.strip().splitlines()or[''])[-1];assert p.returncode and last.startswith('AssertionError: ')and len(last)==16+64,'probe build failed before the output hash:\n'+p.stderr[-3000:] + r['output_content_sha256']=last[16:];final=O/(tag+'-RECIPE.json');final.write_text(json.dumps(r,indent=1)+'\n',newline='\n') + discovered[tag+'.final_recipe']=str(final);return final +def multicut(word,s,out,tag): + recipe=finalize(word,ref(s['recipe']),tag);pinned(s,'recipe_sha256',sha(recipe),tag) + run(tag+'-construction',S/'code/build_multicut_kernels.py','--input',word,'--recipe',recipe,'--gk-dir',GK,'--out',out) + run(tag+'-omissions',S/'code/audit_multicold_controls.py','--word',out/'FULL-WORD.json.gz','--recipe',recipe,'--out',out/'MULTICOLD-OMISSION-CONTROLS.json') + omissions(out/'MULTICOLD-OMISSION-CONTROLS.json',s,tag) +PROMOTER=('larger_gain','providers/build_entrance_promotions.py',('providers/coupled_frames_base.py','providers/search_suffix_kernels.py')) +def frame_only(source,word,recipes): + """Independent check that a promotion changed only entrance frames: identical scalar operations, start_extra changed + exactly at the recipe pivots (old -> new frame), frame fields only on scalar events, report changes limited.""" + assert source.keys()==word.keys() + for section in source: + if section in ('A','cut','B','cleanup','precondition'): + assert len(source[section])==len(word[section]) + assert all(x[:-1]==y[:-1]for x,y in zip(source[section],word[section])),'scalar operation changed' + elif section not in ('start_extra','report'):assert source[section]==word[section],'fixed field changed: '+section + entrances=dict(source['start_extra']) + for r in recipes: + k=str(r['pivot']);assert sorted(entrances[k])==sorted(r['old_frame']) and len(r['new_frame'])==len(r['old_frame'])+1,'wrong old entrance '+k + entrances[k]=word['start_extra'][k];assert sorted(entrances[k])==sorted(r['new_frame']),'wrong new entrance '+k + assert word['start_extra']==entrances,'entrance changed outside the recipe' + allowed={'local_profile','local_rank_mass','entrance_rank','entering_helpers','width_inventory'} + assert source['report'].keys()==word['report'].keys() and all(source['report'][k]==word['report'][k]for k in source['report']if k not in allowed) +def promote(word,s,out,tag): + src,builder,deps=PROMOTER;recipe=ref(s['recipe']);pinned(s,'recipe_sha256',sha(recipe),tag) + for f in deps:ref(src+':'+f) + run(tag+'-construction',ref(src+':'+builder),'--word',word,'--recipes',recipe,'--gk-dir',GK,'--out',out) + a,b,r=read(word),read(out/'FULL-WORD.json.gz'),read(recipe);frame_only(a,b,r) + import copy + rejected=[] + for name,mut in (('reverted_promotion',lambda w:w['start_extra'].__setitem__(str(r[0]['pivot']),list(r[0]['old_frame']))), + ('scalar_operation_changed',lambda w:w['B'][0].insert(0,'mutated')),('extra_entrance_changed',lambda w:w['start_extra'].__setitem__(next(k for k in w['start_extra']if k not in{str(x['pivot'])for x in r}),[])), + ('fixed_field_changed',lambda w:w.__setitem__('cut',w['cut'][:-1]))): + w=copy.deepcopy(b);mut(w) + try:frame_only(a,w,r) + except(AssertionError,KeyError,IndexError,TypeError):rejected.append(name) + else:raise AssertionError('frame-only control accepted: '+name) + dump(out/'FRAME-ONLY-CONTROLS.json',dict(status='PASS_FRAME_ONLY_PROMOTION_TRANSFER',promotions=len(r),controls=rejected)) + omissions(out/'FRAME-ONLY-CONTROLS.json',s,tag) +JOINT=('joint_prefix',('code/build_joint_prefix.py','code/audit_joint_prefix.py','code/audit_multicold_controls.py')) +def joint_prefix(word,s,out,tag): + """PR575's unchanged joint-prefix constructor with its paired audits: all-kernel omissions, rank-five omissions and + the independent literal-prefix/coverage audit (variant and kernel recipe named in the step).""" + src,(builder,audit,omit)=JOINT;recipe=ref(s['recipe']);kern=ref(s['kernel_recipes']);pinned(s,'recipe_sha256',sha(recipe),tag);pinned(s,'kernel_recipes_sha256',sha(kern),tag) + assert s['variant'] in ('eightcold','width7') + run(tag+'-construction',ref(src+':'+builder),'--input',word,'--recipe',recipe,'--variant',s['variant'],'--gk-dir',GK,'--out',out) + shutil.copyfile(RAW.parent/'PROMOTION.json',out/'PROMOTION.json') + run(tag+'-all-kernel-omissions',ref(src+':'+omit),'--word',out/'FULL-WORD.json.gz','--recipe',kern,'--out',out/'ALL-KERNEL-CONTROLS.json') + run(tag+'-rank5-omissions',B/'code/audit_promoted_scalar.py',out/'FULL-WORD.json.gz',SEL,out/'RANK5-CONTROLS.json') + run(tag+'-independent-joint-prefix-and-coverage',ref(src+':'+audit),'--source',word,'--word',out/'FULL-WORD.json.gz','--recipe',recipe,'--variant',s['variant'],'--kernel-recipes',kern,'--controls',out/'ALL-KERNEL-CONTROLS.json','--rank5-controls',out/'RANK5-CONTROLS.json','--promotion',out/'PROMOTION.json','--selection',SEL,'--out',out/'JOINT-PREFIX-AUDIT.json') + j=read(out/'JOINT-PREFIX-AUDIT.json');assert j['status']=='PASS_INDEPENDENT_LITERAL_PREFIX_AND_FINAL_KERNEL_COVERAGE' + c=read(out/'ALL-KERNEL-CONTROLS.json');assert all(x['forward_rejected'] and x['reflected_rejected'] for x in c['controls']) + omissions(out/'ALL-KERNEL-CONTROLS.json',s,tag);pinned(s,'rank5_controls',len(read(out/'RANK5-CONTROLS.json')['controls']),tag) + pinned(s,'joint_negative_controls',len(j['negative_controls_rejected']),tag) +COAL=('frame_coalescing','code/build_frames.py') +def frame_coalesce(word,s,out,tag): + """PR583's unchanged frame-coalescence constructor (it re-checks profiles, scalar operations, widths and helper + responses and rejects every omission/over-promotion control), plus an independent check that only the recipe's + gate frames changed (old -> new) and every other field of the word is identical.""" + src,builder=COAL;recipe=ref(s['recipe']);pinned(s,'recipe_sha256',sha(recipe),tag) + run(tag+'-construction',ref(src+':'+builder),'--input',word,'--recipe',recipe,'--gk-dir',GK,'--out',out) + r=read(recipe);c=read(out/'FRAME-CONSTRUCTION.json');assert c['status']=='PASS_SIX_EXACT_FRAME_COALESCENCES' + assert len(c['negative_controls_rejected'])==2*len(r['changes']);pinned(s,'negative_controls',len(c['negative_controls_rejected']),tag) + x,y=read(word),read(out/'FULL-WORD.json.gz');ch={(z['section'],z['index']):z for z in r['changes']};assert len(ch)==len(r['changes']) + assert x.keys()==y.keys() and all(x[k]==y[k]for k in x if k not in('A','B','report')) + for part in ('A','B'): + assert len(x[part])==len(y[part]) + for i,(u,v) in enumerate(zip(x[part],y[part])): + z=ch.pop((part,i),None) + if z is None:assert u==v,'frame changed outside the recipe %s %d'%(part,i) + else:assert u==z['before'] and v==z['after'] and u[:-1]==v[:-1],'wrong coalescence %s %d'%(part,i) + assert not ch,'recipe change outside A/B' + assert all(x['report'][k]==y['report'][k]for k in x['report']if k not in('local_profile','local_rank_mass','status')) +def gate_move_coalesce(word,s,out,tag): + """This package's code/build_gate_moves.py (PR583's constructor extended by commuting gate moves): every passed gate + must commute, helper responses and widths are unchanged, cleanup follows the inherited inverse rule, and every + omission/over-promotion/unmoved control is rejected; then the same independent comparison as frame_coalesce.""" + recipe=ref(s['recipe']);pinned(s,'recipe_sha256',sha(recipe),tag) + run(tag+'-construction',P/'code/build_gate_moves.py','--input',word,'--recipe',recipe,'--gk-dir',GK,'--out',out) + r=read(recipe);c=read(out/'FRAME-CONSTRUCTION.json');assert c['status']=='PASS_EXACT_GATE_MOVE_FRAME_COALESCENCES' + assert len(c['negative_controls_rejected'])==2*len(r['changes'])+len(r['moves']);pinned(s,'negative_controls',len(c['negative_controls_rejected']),tag) + x,y=read(word),read(out/'FULL-WORD.json.gz') + for m in r['moves']:L=x[m['section']];L.insert(m['to'],L.pop(m['from'])) + ch={(z['section'],z['index']):z for z in r['changes']};assert len(ch)==len(r['changes']) + assert x.keys()==y.keys() and all(x[k]==y[k]for k in x if k not in('A','B','cleanup','report')) + for part in ('A','B'): + assert len(x[part])==len(y[part]) + for i,(u,v) in enumerate(zip(x[part],y[part])): + z=ch.pop((part,i),None) + if z is None:assert u==v,'gate changed outside the recipe %s %d'%(part,i) + else:assert u==z['before'] and v==z['after'] and u[:-1]==v[:-1],'wrong coalescence %s %d'%(part,i) + assert not ch,'recipe change outside A/B' + meta=('width_inventory','entering_helpers','entrance_rank');assert all(x['report'][k]==y['report'][k]for k in x['report']if k not in('local_profile','local_rank_mass','status')+meta) + sys.path.insert(0,str(GK));import gk_common as GC;GC.V=112;ws=GC.widths_of(y) + assert y['report']['width_inventory']=={str(k):v for k,v in sorted(Counter(ws).items())} and y['report']['entering_helpers']==sum(v<9 for v in ws) and y['report']['entrance_rank']==sum(9-v for v in ws),'descriptive width metadata not normalized' +def hyperplane_end(word,s,out,tag): + """This package's code/build_hpe.py: cleanup gates that commute with the whole skipped cleanup prefix run right after B + at the join frame U of their registers, and the helper ends at U (residual T_U T_E^-1, width |U|-|E|; Lemma C, nested + children, Lemma A). Paired audit: code/hpe_controls_atc.py (exact replay of the reordered program plus HPE raw-word + mutations). Then an independent comparison: only early_cleanup, helper_final and the paid profile change.""" + recipe=ref(s['recipe']);pinned(s,'recipe_sha256',sha(recipe),tag) + run(tag+'-construction',P/'code/build_hpe.py','--input',word,'--recipe',recipe,'--out',out) + run(tag+'-controls',P/'code/hpe_controls_atc.py',out/'FULL-WORD.json.gz',F/'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz',out) + c=read(out/'HPE-ATC-CONTROLS.json');assert c['status']=='PASS_HPE_RAW_WORD_CONTROLS';pinned(s,'negative_controls',len(c['rejected']),tag) + r=read(recipe);x,y=read(word),read(out/'FULL-WORD.json.gz') + assert set(y)==set(x)|{'early_cleanup','helper_final'} and 'early_cleanup' not in x and all(x[k]==y[k]for k in x if k!='report') + assert y['early_cleanup']==[[z['cleanup_index'],z['frame']]for z in r['changes']] and y['helper_final']=={str(z['helper']):z['frame']for z in r['changes']} + assert x['report'].keys()==y['report'].keys() and all(x['report'][k]==y['report'][k]for k in x['report']if k not in('local_profile','local_rank_mass','width_inventory')) + inv=Counter({int(k):n for k,n in x['report']['width_inventory'].items()}) + for z in r['changes']:e=len(x['start_extra'][str(z['helper'])]);inv[9-e]-=1;inv[len(z['frame'])-e]+=1 + assert y['report']['width_inventory']=={str(k):n for k,n in sorted(inv.items())if n},'descriptive width metadata not |final|-|start|' +def cold_end(word,s,out,tag): + """This package's code/build_cold_end.py: cold helpers end at a low-dimensional frame U (width |U|) under a refactored + exact cleanup: a rank-0 premix at the head of A, multi-gate lower-frame cleanup gates in the early tail and an exact + dyadic FULL remainder that touches no helper ending below FULL. Paired audit: code/cold_end_controls.py (raw-word + mutations of premix placement, lower-frame gates, remainder, cold ends and marker, each rejected by the extended + transport audit). Then an independent comparison: only A's head, the cleanup, early_cleanup, helper_final, the + refactored_cleanup marker and the paid profile / width metadata change, and every inherited HPE end is kept.""" + recipe=ref(s['recipe']);pinned(s,'recipe_sha256',sha(recipe),tag) + run(tag+'-construction',P/'code/build_cold_end.py','--input',word,'--recipe',recipe,'--out',out) + run(tag+'-controls',P/'code/cold_end_controls.py',out/'FULL-WORD.json.gz',F/'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz',out) + c=read(out/'COLD-END-CONTROLS.json');assert c['status']=='PASS_COLD_END_RAW_WORD_CONTROLS';pinned(s,'negative_controls',len(c['rejected']),tag) + r=read(recipe);x,y=read(word),read(out/'FULL-WORD.json.gz') + assert set(y)==set(x)|{'refactored_cleanup'} and 'refactored_cleanup' not in x + assert all(x[k]==y[k]for k in x if k not in('A','cleanup','early_cleanup','helper_final','report')) + st=lambda h:sorted(x['start_extra'].get(str(h),[]));vv=x['report']['v'];nn=2*vv+x['report']['R'] + # premix: rank-0 helper gates at their start frames, or frame-[] target writes (target += q * cold helper; ColdBeyond) + tw=lambda e:e[0]=='add' and vv<=e[1]<2*vv + assert all(e[-1]==[] and 2*vv<=e[2]>k&1:z^=p[k] + if z: + k=z.bit_length()-1 + for j in p: + if p[j]>>k&1:p[j]^=z + p[k]=z + return tuple(p[k] for k in sorted(p,reverse=True)) + nA,nC=len(x['A']),len(x['cut']);inp=[('A',e) for e in x['A']]+[('C',e) for e in x['cut']]+[('B',e) for e in x['B']] + ins=r.get('forward_insertions',[]);ts=[t for t,_ in ins] + assert ts==sorted(ts) and all(0<=t R register map of the + removed packet copies. Controls, run once: PR531's unchanged constructor and this constructor with an empty schedule + each reproduce PR552's RAW504 (content), and the empty-schedule map is the identity.""" + sched=ref(base['schedule']);pinned(base,'schedule_sha256',sha(sched),tag) + with KT_LOCK: + if base['schedule'] in KT:pinned(base,'helper_map_sha256',sha(KT[base['schedule']][1]),tag);return KT[base['schedule']] + ham=[ref('direct_delivery:inputs/hamming/'+f)for f in('PROTOTYPE.json','PACKET-PROGRAMS.json.gz')][0].parent + raw504=F/'complex-local/static44/inputs/RAW504.json.gz' + if not KT: + K=O/'k-triangle-controls';K.mkdir();empty=K/'EMPTY-SCHEDULE.json';empty.write_text('{"full_pairs":[],"triangles":[]}\n',newline='\n') + run('k-triangle-control-pr531-construct504',ref('direct_delivery:code/construct_504.py'),ham,K/'pr531') + run('k-triangle-control-empty-schedule',P/'code/construct_k_triangle.py',ham,K/'empty',empty) + assert content(K/'pr531/FULL-WORD.json.gz')==content(K/'empty/FULL-WORD.json.gz')==content(raw504),'constructors do not reproduce RAW504' + assert all(int(k)==v for k,v in read(K/'empty/HELPER-MAP.json')['map'].items()) and len(read(K/'empty/HELPER-MAP.json')['map'])==728 + out=O/(tag+'-construction');run(tag+'-construction',P/'code/construct_k_triangle.py',ham,out,sched) + w=read(out/'FULL-WORD.json.gz');m=read(out/'HELPER-MAP.json');R=w['report']['R'] + assert R==504-3*len(read(sched)['triangles'])==len(m['map'])-224 and len(m['removed_504_helpers'])==504-R + pinned(base,'helper_map_sha256',sha(out/'HELPER-MAP.json'),tag) + KT[base['schedule']]=(out/'FULL-WORD.json.gz',out/'HELPER-MAP.json');return KT[base['schedule']] +def stage_word(r): + """'raw504' (PR552's RAW504), 'promoted558' (the frozen PR558 promoted word) or 'NAME:base' / 'NAME:i' (a word of + the shadow 504-helper chain NAME, built in this run).""" + if r=='raw504':return F/'complex-local/static44/inputs/RAW504.json.gz' + if r=='promoted558':return RAW + name,i=r.split(':');return STAGEWORDS[name][i] +def port_stage(word,s,out,tag): + """code/build_port_stage.py: one stage (I4 -> O4) of a 504-helper chain, rebuilt in this run from pinned sources, is + replayed onto the K-triangle word through the constructor's helper map. Gates are matched by scalar operation; the + stage's frame changes, introduced gates and entrance changes are applied; the K-triangle reads are kept; the cleanup is + the inherited inverse rule. The construction is a transfer only: every ported word is certified by the generalised + native audit (exact forward and inverse replay of all columns, native frame chains).""" + i4,o4=stage_word(s['shadow_input']),stage_word(s['shadow_output']) + pinned(s,'shadow_input_content_sha256',content(i4),tag);pinned(s,'shadow_output_content_sha256',content(o4),tag) + run(tag+'-construction',P/'code/build_port_stage.py','--shadow-input',i4,'--shadow-output',o4,'--input',word,'--map',KMAP[0],'--gk-dir',GK,'--out',out) + run(tag+'-native-audit',P/'code/hpe_audit_and_transport.py','--raw',out/'FULL-WORD.json.gz','--routing',F/'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz','--out',out/'native-audit') + assert read(out/'native-audit/SCALAR-FRAME-AUDIT.json')['status']=='PASS_CHANGED_WORD_ALL_COLUMNS_AND_NATIVE_FRAMES' + x,y=read(word),read(out/'FULL-WORD.json.gz');assert x['report']['R']==y['report']['R'] and all(x[k]==y[k]for k in x if k not in('A','B','cleanup','start_extra','target_levels','report')) + shutil.rmtree(out/'native-audit') +def frame_regroup(word,s,out,tag): + """code/build_frame_regroup.py (PR583's build_frames.py with recipe-pinned profile deltas): gate frames change, scalar + operations, widths and helper responses do not; omission and over-promotion controls are rejected. Then the same + independent comparison as frame_coalesce.""" + recipe=ref(s['recipe']);pinned(s,'recipe_sha256',sha(recipe),tag) + run(tag+'-construction',P/'code/build_frame_regroup.py','--input',word,'--recipe',recipe,'--gk-dir',GK,'--out',out) + r=read(recipe);c=read(out/'FRAME-CONSTRUCTION.json');assert c['status']=='PASS_EXACT_FRAME_REGROUPING' + assert len(c['negative_controls_rejected'])==2*len(r['changes']);pinned(s,'negative_controls',len(c['negative_controls_rejected']),tag) + x,y=read(word),read(out/'FULL-WORD.json.gz');ch={(z['section'],z['index']):z for z in r['changes']};assert len(ch)==len(r['changes']) + assert x.keys()==y.keys() and all(x[k]==y[k]for k in x if k not in('A','B','report')) + for part in ('A','B'): + assert len(x[part])==len(y[part]) + for i,(u,v) in enumerate(zip(x[part],y[part])): + z=ch.pop((part,i),None) + if z is None:assert u==v,'frame changed outside the recipe %s %d'%(part,i) + else:assert u==z['before'] and v==z['after'] and u[:-1]==v[:-1],'wrong regrouping %s %d'%(part,i) + assert not ch,'recipe change outside A/B' + assert all(x['report'][k]==y['report'][k]for k in x['report']if k not in('local_profile','local_rank_mass')) +KMAP=[None] +STEPS={'cold_end':cold_end,'hyperplane_end':hyperplane_end,'cold_kernel':cold_kernel,'multicut':multicut,'greedy_kernels':multicut,'promote':promote,'joint_prefix':joint_prefix,'frame_coalesce':frame_coalesce,'gate_move_coalesce':gate_move_coalesce,'port_stage':port_stage,'frame_regroup':frame_regroup} +def build_word(pid,d): + base=d['base'];assert base['kind']in('frozen558_promoted','source_file','k_triangle'),base['kind'] + if base['kind']=='k_triangle': + word,hmap=k_triangle(base,pid+'-base-k_triangle') + with KT_LOCK:assert KMAP[0] in(None,hmap);KMAP[0]=hmap + else:word=RAW if base['kind']=='frozen558_promoted' else ref(base['file']) + pinned(base,'content_sha256',content(word),pid+'.base');STAGEWORDS[pid]={'base':word} + for i,s in enumerate(d['steps']): + tag='%s-step%d-%s'%(pid,i,s['type']);out=O/tag + if s['type']=='frozen558_scalar_audits': + # inherited static44 and rank-five omission audits on a frozen558-descended word + out.mkdir();run(tag+'-static44',F/'complex-local/static44/audit_scalar.py',word,SEL,out/'STATIC44-SCALAR-AUDIT.json') + shutil.copyfile(RAW.parent/'PROMOTION.json',word.parent/'PROMOTION.json') + run(tag+'-rank5',B/'code/audit_promoted_scalar.py',word,SEL,out/'PROMOTED-SCALAR-AUDIT.json');STAGEWORDS[pid][str(i)]=word;continue + assert s['type'] in STEPS,'step type not allowlisted: '+s['type'] + pinned(s,'input_content_sha256',content(word),tag) + STEPS[s['type']](word,s,out,tag);word=out/'FULL-WORD.json.gz' + pinned(s,'output_content_sha256',content(word),tag);STAGEWORDS[pid][str(i)]=word + pinned(d,'word_content_sha256',content(word),pid) + return word +def localize(pid,word): + local=O/(pid+'-local') + # HPE words (helper_final present) use this package's generalised native chain; every other word the unchanged vendor531 one + hp='helper_final' in read(word);NC=(lambda f:P/'code'/('hpe_'+f))if hp else(lambda f:V/'code'/f) + run(pid+'-all-columns-native-frames',NC('audit_and_transport.py'),'--raw',word,'--routing',F/'complex-local/inputs/phase-baseline/CANONICAL-WORD.json.gz','--out',local) + run(pid+'-both-reflected-ledgers',NC('emit_local.py'),local) + run(pid+'-independent-local-controls',NC('audit_local.py'),local) + run(pid+'-normalized-wrappers',NC('adapters_local.py'),local/'CANONICAL-WORD.json.gz',local/'RESIDUAL-ADAPTERS.json',local/'WRAPPER-CHECKS.json') + run(pid+'-all-phase-edges',B/'code/phases_full.py',local,V/'vendor/clifford') + r=BUILD['providers'][pid].get('retained_local') + if r: # a pinned retained local must be reproduced byte for byte (phase review up to timing) + for name in ('CANONICAL-WORD.json.gz','LOCAL-PROGRAMS.json.gz','LOCAL-CHECKS.json','INDEPENDENT-LOCAL-REPLAY.json','RESIDUAL-ADAPTERS.json','WRAPPER-CHECKS.json','CLIFFORD-RECIPES.json'): + assert sha(local/name)==sha(ref(r+'/'+name)),(pid,name) + fresh,old=read(local/'CLIFFORD-REVIEW.json'),read(ref(r+'/CLIFFORD-REVIEW.json')) + assert {k:v for k,v in fresh.items()if k!='seconds'}=={k:v for k,v in old.items()if k!='seconds'} + return local +reuse=dict(x.split('=',1)for x in a.reuse_local) +words={} +def provider(pid): + word=words[pid]=build_word(pid,BUILD['providers'][pid]) + return Path(reuse[pid]).resolve()if pid in reuse else localize(pid,word) +SHADOWS=BUILD.get('shadows',{});assert not set(SHADOWS)&set(BUILD['providers']) +with ThreadPoolExecutor(max(1,min(a.jobs,len(SHADOWS)or 1)))as pool: # the 504-helper chains whose stages the providers port + for f in [pool.submit(build_word,name,SHADOWS[name])for name in sorted(SHADOWS)]:f.result() +with ThreadPoolExecutor(max(1,min(a.jobs,len(BUILD['providers']))))as pool: + futures={pid:pool.submit(provider,pid)for pid in sorted(BUILD['providers'])};locals_={pid:f.result()for pid,f in futures.items()} +SPOT504=[270,282,294,306] # PR558's width-8 spot helpers; a K-triangle package names their images under its helper map +if KMAP[0]:m=read(KMAP[0])['map'];assert SPEC['width_spot_helpers']==[m[str(224+h)]-224 for h in SPOT504],'width spot helpers are not the helper-map images' +else:assert SPEC.get('width_spot_helpers',SPOT504)==SPOT504 +dump(O/'LOCALS.json',dict(locals={pid:str(l)for pid,l in locals_.items()},words={pid:str(w)for pid,w in words.items()},baseline=str(baseline),discovered=discovered)) +if a.until=='locals':print('LOCALS READY');raise SystemExit(0) +assert not DISCOVER +G=O/'mixed-global' +run('bind-providers',P/'code/bind_providers_portable.py','--baseline',baseline,*[x for pid,l in sorted(locals_.items())for x in('--provider','%s=%s'%(pid,l))],'--plan',P/'data/PLAN.json','--out',G) +run('emit-controller',P/'code/emit_allcold.py','--base',G/'base','--owners',P/'data/OWNERS.json.gz','--plan',G/'PLAN.json','--out',G/'hosted') +(G/'audit').mkdir() +run('independent-controller-and-controls',P/'code/audit_allcold.py',G/'base',G/'hosted',G/'audit/ASYNC-AUDIT.json','--mutation-controls') +run('fresh-invoice',P/'code/invoice_allcold.py','--base',G/'base','--hosted',G/'hosted','--audit',G/'audit','--out',G/'audit','--retained-invoice',V/'evidence/audit/PREFIX-AND-INVOICE.json') +run('conservative-and-native-exact-assembly',P/'code/assemble.py',S,G,O/'ASSEMBLY.json') +run('admission-controls',P/'code/assembly_controls.py','--source-package',S,'--owner',G/'audit/OWNERS-AND-PROFILE.json','--invoice',G/'audit/PREFIX-AND-INVOICE.json','--out',O/'ASSEMBLY-CONTROLS.json') +run('phase-timing-portability-controls',P/'code/phase_timing_controls.py',S,G/'base',G/'audit',O/'PHASE-TIMING-CONTROLS.json') +run('actual-recompression-and-rebound-controls',P/'code/generated_identity_controls.py','--base',G/'base','--audit',G/'audit','--out',O/'GENERATED-IDENTITY-CONTROLS.json') +X=SPEC['expected'] +for pid,local in locals_.items(): + r=read(local/'INDEPENDENT-LOCAL-REPLAY.json');ph=read(local/'CLIFFORD-REVIEW.json') + assert len(r['negative_controls_rejected'])==SPEC['providers'][pid]['native_negative_controls'] and r['paid_profiles']['forward']==r['paid_profiles']['backward'] + assert ph['status']=='PASS_NEW_WORD_EXACT_LOCAL_PHASE_RECIPES' and ph['all_child_equalities_include_global_phase']is True and ph['directed_edges']==SPEC['providers'][pid]['phase_edges'] and ph['endpoint_adapters']==224 +assert len(read(G/'audit/ASYNC-AUDIT.json')['mutations_rejected'])==X['mutations_rejected'] +assert len(read(O/'ASSEMBLY-CONTROLS.json')['rejected_controls'])==X['assembly_controls_rejected'] +z=read(O/'ASSEMBLY.json');assert Q(z['kappa_decimal'])==Q(X['kappa_decimal']) and Q(z['conservative_kappa_decimal'])==Q(X['conservative_kappa_decimal']) +assert {str(k):v for k,v in z['complex_profile'].items()}==X['global_profile'] and z['provider_counts']==X['provider_counts'] +r=dict(status=SPEC['build']['status'],kappa=z['kappa'],kappa_decimal=z['kappa_decimal'],complex_lower=z['complex_lower'],bit_lower=z['bit_lower'],conservative_kappa_decimal=z['conservative_kappa_decimal'],conservative_complex_lower=z['conservative_complex_lower'],global_profile=z['complex_profile'],provider_counts=z['provider_counts'],surcharge_model=z['surcharge_model'],seconds=time.monotonic()-start,reused=dict(baseline=bool(a.reuse_baseline),locals=sorted(reuse)),scope=z['scope']);dump(O/'RESULT.json',r) +paths=['PHASE-TIMING-CONTROLS.json','GENERATED-IDENTITY-CONTROLS.json','mixed-global/audit/IDLE-REMAINDER-FRAMES.json','RESULT.json','ASSEMBLY.json','ASSEMBLY-CONTROLS.json','mixed-global/BINDING.json','mixed-global/audit/ASYNC-AUDIT.json','mixed-global/audit/OWNERS-AND-PROFILE.json','mixed-global/audit/PREFIX-AND-INVOICE.json'] +paths+=sorted(f.relative_to(O).as_posix()for f in O.glob('*-step*/*.json')) +for pid in sorted(set(locals_)-set(reuse)): + for fn in ('INDEPENDENT-LOCAL-REPLAY.json','CLIFFORD-REVIEW.json','WRAPPER-CHECKS.json'):paths.append(pid+'-local/'+fn) +dump(O/'RECEIPT.json',dict(status=r['status'],steps=steps,artifacts={name:sha(O/name)for name in paths},manifest_sha256=sha(P/'MANIFEST.json'),spec_sha256=sha(SPECFILE),source_manifest_sha256={n:sha(SRC[n]/'MANIFEST.json')for n in SRC})) +print(json.dumps(r,indent=2)) diff --git a/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/verify.sh b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/verify.sh new file mode 100644 index 0000000000..a36218d768 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/vendor/pr635/research/complex-571-cold14-st2/verify.sh @@ -0,0 +1,14 @@ +#!/bin/sh +# Official replay of complex-571-cold14-b3 from data/SPEC.json (standard library only, assertions on). +# usage: research/complex-571-cold14-b3/verify.sh WORKDIR [SOURCE_ROOT] +# SOURCE_ROOT holds worktrees pr568 pr569 pr571 pr575 pr583 at the pinned commits (default: ..). +set -eu +WORK=${1:?usage: verify.sh WORKDIR [SOURCE_ROOT]} +SRC=${2:-..} +HERE=$(cd "$(dirname "$0")" && pwd) +exec python3 -B "$HERE/verify.py" --work "$WORK" \ + --source multicold="$SRC/pr568/research/complex-multicold" \ + --source structural_gain="$SRC/pr571/research/structural-gain" \ + --source larger_gain="$SRC/pr569/research/larger-gain" \ + --source joint_prefix="$SRC/pr575/research/complex-joint-prefix" \ + --source frame_coalescing="$SRC/pr583/research/kernel-frame-coalescing" diff --git a/research/complex-t37-joint-x54-owners/verify.py b/research/complex-t37-joint-x54-owners/verify.py new file mode 100644 index 0000000000..86384f9fd7 --- /dev/null +++ b/research/complex-t37-joint-x54-owners/verify.py @@ -0,0 +1,96 @@ +"""Fresh supplier construction, frozen owner reconstruction and strict T37 admission. + +Python 3.11+ and the retained cold-baseline build dependencies. No search, +owner optimizer runs; the new constructor uses only the standard library. +The retained bit replay includes its unchanged exact move-rediscovery controls. +Use a new output directory outside the source checkout. Every supplier stage +is rebuilt; retained repository dependencies are checked before and after. +""" +import argparse,os,shutil,subprocess,sys,time +from pathlib import Path +from common import P,ROOT,read,dump,sha,identity +import package + +def tree_pins(root): + return {str(p.relative_to(root)):sha(p)for p in sorted(root.rglob('*'))if p.is_file() and '__pycache__'not in p.parts} + +def main(): + ap=argparse.ArgumentParser(description=__doc__);ap.add_argument('--work',type=Path,required=True);a=ap.parse_args() + pins=package.validate();work=a.work.resolve();assert not work.exists() and not work.is_relative_to(ROOT);work.mkdir(parents=True) + view=work/'source';view.mkdir() + for relative in package.COPY_TREES: + shutil.copytree(ROOT/relative,view/relative,ignore=shutil.ignore_patterns('__pycache__','*.pyc')) + for relative in package.COPY_FILES: + (view/relative).parent.mkdir(parents=True,exist_ok=True) + shutil.copyfile(ROOT/relative,view/relative) + for name in ('gauge44-leaver8','gauge44-slots'): + shutil.copytree(P/'vendor/pr1022/research'/name,view/'research'/name) + for name in ('k8-coordinated-owners','k8-eight-ends','k8-eight-ends-t16','k8-three-demotions','k8-joint-entrances'): + shutil.copytree(P/'vendor/pr1148/research'/name,view/'research'/name) + # Legacy builders copy source permissions into outputs they then extend. + # The frozen input stays read-only; only run-owned staging is writable. + for path in view.rglob('*'): + path.chmod(0o755 if path.is_dir() else 0o644) + source_pins=tree_pins(view);dump(work/'STAGED-SOURCE-PINS.json',source_pins) + env=dict(os.environ,PYTHONDONTWRITEBYTECODE='1',PYTHONUTF8='1',PYTHONINTMAXSTRDIGITS='0') + for key in ('PYTHONOPTIMIZE','WITNESS_DISCOVER','WITNESS_RECORD','WITNESS_SPEC'):env.pop(key,None) + temp=work/'temp';temp.mkdir();env.update(TMPDIR=str(temp),TMP=str(temp),TEMP=str(temp)) + stages=[] + def run(name,script,*args): + log=work/(name+'.log');start=time.monotonic() + dump(work/'STATUS.json',dict(status='RUNNING',stage=name,pid=os.getpid(),stages=stages)) + with log.open('w')as f:r=subprocess.run([sys.executable,'-B',str(script),*map(str,args)],env=env,cwd=ROOT,stdout=f,stderr=subprocess.STDOUT) + stages.append(dict(name=name,exit_code=r.returncode,seconds=round(time.monotonic()-start,3),log_sha256=sha(log))) + dump(work/'STAGES.json',stages) + if r.returncode: + dump(work/'STATUS.json',dict(status='FAILED',stage=name,stages=stages)) + raise RuntimeError(name+'\n'+log.read_text()[-6000:]) + print('PASS',name,stages[-1]['seconds'],flush=True) + leaver=view/'research/gauge44-leaver8';slots=view/'research/gauge44-slots';pr635=P/'vendor/pr635' + run('retained-cold-ancestry',view/'scripts/verify_frontier799.py','--work',work/'ancestry799') + run('ancestry-coverage',ROOT/'research/complex-t21-owners/vendor/pr858/baseline_coverage.py','--ancestor',work/'ancestry799/ancestor','--out',work/'ANCESTRY-COVERAGE.json') + run('leaver-manifest',leaver/'verify_manifest.py') + run('slots-manifest',slots/'verify_manifest.py') + run('base-word',leaver/'construction/reproduce.py','--main',view,'--pr635',pr635,'--out',work/'base','--until','word') + run('leaver-cells',leaver/'construction/leaver/reproduce_leaver.py','--main',view,'--pr635',pr635,'--word-dir',work/'base','--id','k8','--out',work/'cells','--word-only') + run('leaver-chain',leaver/'construction/leaver/reproduce_leaver_chain.py','--main',view,'--pr635',pr635,'--leaver-dir',work/'cells','--hamming',work/'base/hamming','--id','k8','--out',work/'chain') + run('chain-independent-audit',leaver/'independent/audit_local.py','--main',view,'--word',work/'chain/frames/FULL-WORD.json.gz','--output',work/'CHAIN-AUDIT.json') + run('k8-global',leaver/'verify_global.py','--main',view,'--local',work/'chain/local','--work',work/'k8-global') + run('seven-slots',slots/'construction/slots/verify_slots.py','--main',view,'--pr635',pr635,'--baseline',work/'chain','--work',work/'slots') + run('joint-entrance-supplier',view/'research/k8-joint-entrances/verify.py','--base',work/'slots/slots/FULL-WORD.json.gz','--work',work/'joint') + run('x54-manifest',P/'vendor/pr1130/research/gauge44-ends7-x54-t16/verify_manifest.py') + run('x54-local',P/'native_x54.py','--main',view,'--pr635',pr635,'--baseline',work/'joint','--work',work/'x54') + run('flow-normalization',P/'normalize_flow.py','--out',work/'FLOW-NORMALIZATION.json') + local=work/'x54/local';baseline=work/'slots/global';base=baseline/'global/base' + retained=work/'ancestry799/global/global/base' + for relative in ('split-centres/GLOBAL-TEMPLATE.json.gz','split-centres/CANONICAL-WORD.json.gz','work/complex-nine-native/DATA-PHASES.json'): + assert read(base/relative)==read(retained/relative),'Cold ancestral parent binding: '+relative + run('frozen-flow-construction',P/'construct.py','--parent',base/'split-centres/GLOBAL-TEMPLATE.json.gz','--word',local/'CANONICAL-WORD.json.gz','--out',work/'constructed') + assert read(work/'constructed/OWNERS.json.gz')==read(P/'data/OWNERS.json.gz'),'Reconstructed owners differ' + assert sha(work/'constructed/OWNERS.json.gz')==sha(P/'data/OWNERS.json.gz'),'Portable owner bytes differ' + import controls + controls.check(read(base/'split-centres/GLOBAL-TEMPLATE.json.gz'),read(local/'CANONICAL-WORD.json.gz'),work/'FLOW-CONTROLS.json') + run('independent-owners',P/'audit.py','--base',base,'--local',local,'--owners',work/'constructed/OWNERS.json.gz','--out',work/'INDEPENDENT-OWNERS.json') + import prepare,controller,price + global_work=work/'t37';global_work.mkdir();prepare.prepare(global_work,baseline) + run('independent-parent',global_work/'adapted/check_parent.py','--source',base/'split-centres/GLOBAL-TEMPLATE.json.gz','--parent',global_work/'lift/GLOBAL-TEMPLATE.json.gz','--out',work/'PARENT-CHECK.json') + result=controller.replay(global_work,local) + independent=read(work/'INDEPENDENT-OWNERS.json') + owner=read(global_work/'strict/global/audit/OWNERS-AND-PROFILE.json') + assert independent['actual_73_axis_charts']==owner['actual_73column_sigmas'] + prices=price.price(work/'PRICE.json') + assert prices['kappa']==result['kappa'] + assert tree_pins(view)==source_pins,'Staged supplier source changed during verification' + final_pins=package.validate();assert final_pins==pins,'Package changed during verification' + result.update(status='PASS_FRESH_T37_JOINT_X54_CONSTRUCTION_AND_STRICT_ADMISSION',pins=pins, + source_view_sha256=identity(source_pins),independent_owners_sha256=sha(work/'INDEPENDENT-OWNERS.json'), + construction_sha256=sha(work/'constructed/CONSTRUCTION.json'),price_sha256=sha(work/'PRICE.json'), + supplier_stages=stages,flow_controls=8,independent_owner_controls=6,joint_entrance_controls=27,eight_end_controls=32,x54_negative_controls=8) + dump(work/'RESULT.json',result) + math=dict(status=result['status'],claim=read(P/'CLAIM.json'),price=prices, + constructed_owner_sha256=sha(work/'constructed/OWNERS.json.gz'),flow_sha256=sha(P/'data/FLOW.json.gz'), + package_manifest_sha256=pins['manifest_sha256'],controls=dict(flow=8,owner=6,controller=15,admission=69,bit_supplier=12,joint_entrances=27,eight_ends=32,x54_negative=8)) + dump(work/'MATH.json',math) + dump(work/'STATUS.json',dict(status='COMPLETE',kappa=result['kappa'],result_sha256=sha(work/'RESULT.json'))) + print(result['status'],result['kappa_decimal'],flush=True) +if __name__=='__main__':main()